.admin-login-container{height:100vh;width:100vw}.admin-login-card{width:400px}.admin-login-card h1{margin-bottom:30px;text-align:center}.admin-login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.admin-login-box{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:400px;padding:40px;width:100%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.admin-login-title{color:#333;font-size:28px;font-weight:600;margin:0 0 8px;text-align:center}.admin-login-subtitle{color:#666;font-size:14px;margin:0 0 30px;text-align:center}.admin-login-form{display:flex;flex-direction:column;gap:20px}.admin-login-form-group{display:flex;flex-direction:column;gap:8px}.admin-login-label{color:#333;font-size:14px;font-weight:500}.admin-login-input{border:2px solid #e0e0e0;border-radius:8px;font-size:16px;outline:none;padding:12px 16px;transition:border-color .2s}.admin-login-input:focus{border-color:#667eea}.admin-login-input:disabled{background-color:#f5f5f5;cursor:not-allowed}.admin-login-error{background-color:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:14px;padding:12px;text-align:center}.admin-login-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:14px 24px;transition:transform .2s,box-shadow .2s}.admin-login-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.admin-login-button:active:not(:disabled){transform:translateY(0)}.admin-login-button:disabled{cursor:not-allowed;opacity:.6}.ui-editor{background:#1a1a1a;color:#fff;display:flex;font-family:Microsoft YaHei,sans-serif;height:100vh}.ui-editor-sidebar{background:#2a2a2a;border-right:2px solid #444;display:flex;flex-direction:column;overflow:hidden;width:350px}.ui-editor-header{background:#333;border-bottom:2px solid #444;padding:16px}.ui-editor-header h2{align-items:center;color:#fff;display:flex;font-size:18px;gap:8px;margin:0 0 12px}.unsaved-indicator{color:#ff6b6b;font-size:20px;font-weight:700}.ui-editor-page-selector{align-items:center;display:flex;gap:8px;margin-bottom:12px}.ui-editor-page-selector label{color:#ccc;font-size:12px}.ui-editor-page-selector select{background:#222;border:1px solid #555;border-radius:4px;color:#fff;cursor:pointer;flex:1 1;font-size:12px;padding:6px 8px}.ui-editor-page-selector select:focus{border-color:#0f0;box-shadow:0 0 4px #00ff004d;outline:none}.ui-editor-actions{display:flex;flex-wrap:wrap;gap:8px}.ui-editor-actions button{border:none;border-radius:4px;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s}.btn-reset{background:#ff6b6b;color:#fff}.btn-reset:hover{background:#ff5252}.btn-export{background:#4ecdc4;color:#fff}.btn-export:hover{background:#45b7aa}.btn-copy{background:#95e1d3;color:#333}.btn-copy:hover{background:#7dd3c4}.btn-redo,.btn-undo{background:#6c757d;color:#fff}.btn-redo:hover:not(:disabled),.btn-undo:hover:not(:disabled){background:#5a6268}.btn-redo:disabled,.btn-undo:disabled{cursor:not-allowed;opacity:.4}.btn-save{background:#28a745;color:#fff}.btn-save:hover{background:#218838}.ui-editor-list{flex:1 1;overflow-y:auto;padding:8px}.ui-editor-item{background:#333;border:2px solid #0000;border-radius:4px;cursor:pointer;margin-bottom:6px;padding:10px;transition:all .2s}.ui-editor-item:hover{background:#3a3a3a;border-color:#555}.ui-editor-item.selected{background:#4a4a4a;border-color:#0f0;box-shadow:0 0 8px #00ff004d}.ui-editor-item-name{color:#fff;font-weight:700;margin-bottom:4px}.ui-editor-item-info{color:#aaa;display:flex;font-size:11px;gap:8px}.ui-editor-item-info span{background:#222;border-radius:2px;padding:2px 6px}.ui-editor-controls{background:#333;border-top:2px solid #444;max-height:300px;overflow-y:auto;padding:16px}.ui-editor-controls h3{color:#fff;font-size:14px;margin:0 0 12px}.ui-editor-input-group{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.ui-editor-input-group label{align-items:center;color:#ccc;display:flex;font-size:12px;gap:8px}.ui-editor-input-group input{background:#222;border:1px solid #555;border-radius:4px;color:#fff;flex:1 1;font-size:12px;padding:6px 8px}.ui-editor-input-group input:focus{border-color:#0f0;box-shadow:0 0 4px #00ff004d;outline:none}.btn-reset-element{background:#ff6b6b;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:8px;transition:all .2s;width:100%}.btn-reset-element:hover{background:#ff5252}.ui-editor-preview{background:#1a1a1a;display:flex;flex:1 1;flex-direction:column;overflow:auto;padding:20px}.ui-editor-preview-header{align-items:center;border-bottom:2px solid #444;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.ui-editor-preview-header h3{color:#fff;font-size:16px;margin:0}.ui-editor-preview-header label{align-items:center;color:#ccc;cursor:pointer;display:flex;font-size:12px;gap:8px}.ui-editor-preview-header input[type=checkbox]{cursor:pointer}.ui-editor-preview-container{border:2px solid #333;box-shadow:0 4px 20px #00000080;margin:0 auto}.ui-editor-preview-element{cursor:move;transition:outline .2s;-webkit-user-select:none;user-select:none}.ui-editor-preview-element.selected{outline:2px dashed #0f0!important;outline-offset:-2px;z-index:1000}.ui-editor-preview-label{background:#0f0c;color:#000;font-size:10px;left:0;padding:2px 6px;pointer-events:none;position:absolute;top:-20px;white-space:nowrap;z-index:1001}.ui-editor-tips{background:#2a2a2a;border:1px solid #444;border-radius:4px;margin-top:20px;padding:16px}.ui-editor-tips p{color:#fff;font-size:14px;margin:0 0 8px}.ui-editor-tips ul{color:#aaa;font-size:12px;margin:0;padding-left:20px}.ui-editor-tips li{margin-bottom:4px}.ui-editor-preview-container{background:#000;height:600px;overflow:hidden;position:relative;width:800px}.ui-editor-preview-element.actorsel-btn-enter,.ui-editor-preview-element.actorsel-info-panel,.ui-editor-preview-element.actorsel-infolabel,.ui-editor-preview-element.actorsel-list-bg,.ui-editor-preview-element.actorsel-title{background-repeat:no-repeat!important;background-size:100% 100%!important}.ui-editor-preview-element.actorsel-info-row{align-items:center;display:flex;font-size:12px;text-shadow:1px 1px 2px #000}.ui-editor-preview-element.actorsel-char-preview{align-items:center;background:#0006;border:1px solid #fff3;color:#fff;display:flex;justify-content:center}.ui-editor-preview-element.actorsel-list{display:flex;flex-direction:column;gap:26px;overflow:hidden}.ui-editor-controls::-webkit-scrollbar,.ui-editor-list::-webkit-scrollbar,.ui-editor-preview::-webkit-scrollbar{width:8px}.ui-editor-controls::-webkit-scrollbar-track,.ui-editor-list::-webkit-scrollbar-track,.ui-editor-preview::-webkit-scrollbar-track{background:#1a1a1a}.ui-editor-controls::-webkit-scrollbar-thumb,.ui-editor-list::-webkit-scrollbar-thumb,.ui-editor-preview::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.ui-editor-controls::-webkit-scrollbar-thumb:hover,.ui-editor-list::-webkit-scrollbar-thumb:hover,.ui-editor-preview::-webkit-scrollbar-thumb:hover{background:#666}.app{min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}
/*# sourceMappingURL=main.d54b44a1.css.map*/