:root{--night:#111d34;--nav2:#1b2b49;--text:#2b3950;--muted:#7d8a9b;--line:#e0e6ef;--accent:#6879cc;--light:#f4f6fa;--white:#fff}*{box-sizing:border-box}body,html{margin:0;height:100%;width:100%;overflow:hidden;font-family:system-ui,-apple-system,'Malgun Gothic',sans-serif;color:var(--text);background:var(--light);font-size:13px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}.hidden{display:none!important}#admin-app{display:flex;height:100dvh;overflow:hidden}#sidebar{width:205px;min-width:205px;background:var(--night);color:#e9edfc;display:flex;flex-direction:column}.brand{height:75px;border-bottom:1px solid #374765;display:flex;align-items:center;padding:15px;gap:10px;font-size:15px;font-weight:950;letter-spacing:.4px;line-height:1.2}.brand b{color:#e6c9e7}.brand small{font-size:9px;display:block;margin-top:7px;color:#90a3c2;letter-spacing:1.8px}.brand-gem{width:33px;height:33px;border-radius:9px;background:linear-gradient(130deg,#f3cddb,#9baff9);color:#263455;display:grid;place-items:center;font-size:23px;font-weight:900;flex:none}#side-menu{padding:15px 10px;flex:1;overflow:auto}.side-button{display:flex;align-items:center;gap:10px;color:#adbdd7;border:0;background:transparent;width:100%;border-radius:9px;padding:12px 11px;text-align:left;margin-bottom:3px;font-size:12px;font-weight:750}.side-button .nav-icon{font-size:19px;width:22px;display:inline-block;text-align:center}.side-button:hover{background:#2a3b5c;color:white}.side-button.active{background:#324a7b;color:white;box-shadow:inset 3px 0 #c7b3ed}.aside-footer{padding:14px;border-top:1px solid #374765;display:flex;gap:10px;align-items:center;font-size:11px;color:#d8e3f4}.aside-footer span{font-size:20px}.aside-footer small{display:block;color:#8094b6;margin-top:4px;font-size:10px}
.content{flex:1;min-width:0;display:flex;flex-direction:column}.toolbar{height:75px;flex:none;background:white;display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--line);gap:12px}.top-title span{font-size:10px;color:#8c99b0}.top-title h1{font-size:20px;letter-spacing:-.5px;margin:2px 0 0}.toolbar-actions{display:flex;align-items:center;gap:7px}.version-chip{background:#eaf0ff;border-radius:8px;padding:8px;color:#6178bd;font-size:10px;font-weight:850}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #d9e2ef;color:#5a6b84;text-decoration:none;background:white;border-radius:8px;padding:9px 11px;font-weight:850;white-space:nowrap;font-size:11px;gap:5px}.btn:hover{background:#eef2ff;border-color:#aab9e0}.btn.primary{background:#576ecc;border-color:#576ecc;color:white}.btn.primary:hover{background:#455fbe}.btn.red{color:#bd4c5f}.btn.small{padding:6px 8px;font-size:10px}.alert-line{flex:none;background:#edf2ff;margin:10px 15px 0;border:1px solid #d7e2ff;color:#6377ad;font-size:11px;border-radius:7px;padding:8px 12px}.alert-line.warn{background:#fff4df;color:#956d2c;border-color:#eed8aa}.workspace{min-height:0;flex:1;padding:12px 15px 15px;display:grid;grid-template-columns:minmax(192px,.75fr) minmax(325px,1.5fr) minmax(230px,.9fr);gap:11px}.subnav,.editor,.preview{display:flex;flex-direction:column;min-height:0;min-width:0;border-radius:11px;border:1px solid var(--line);background:white;overflow:hidden}.subnav{padding:10px}.subnav-title{font-size:10px;font-weight:900;color:#9aa5b5;letter-spacing:1px;margin:6px 7px 10px}.subnav-button{width:100%;background:transparent;border:0;border-radius:7px;padding:11px 9px;font-size:12px;font-weight:750;color:#69778f;text-align:left;display:flex;justify-content:space-between;align-items:center}.subnav-button:hover{background:#f3f5fa}.subnav-button.active{background:#eaf0ff;color:#526bb4}.subnav-button .num{font-size:10px;color:#9fa9bc}.subnav-divider{border:0;border-top:1px solid #e8eefa;margin:11px 1px}.subnav-search{width:100%;border:1px solid #dfe6ef;background:#f9fbff;border-radius:7px;padding:9px;color:#3a4a63;outline:none;margin:3px 0 8px;font-size:11px}.subnav-items{overflow:auto;max-height:min(60vh,540px);scrollbar-width:thin;flex:1;min-height:0}.subnav-item{display:flex;align-items:center;gap:8px;padding:10px 7px;font-size:11px;border:1px solid transparent;border-radius:7px;width:100%;text-align:left;background:white;color:#576780;margin-bottom:2px}.subnav-item:hover{background:#f4f6fc}.subnav-item.active{background:#eef2fd;border-color:#c5d3fa;color:#445da6;font-weight:850}.subnav-item .item-ico{background:#e9edf5;width:29px;height:29px;border-radius:6px;display:grid;place-items:center;font-size:15px;flex:none}.subnav-item small{display:block;color:#99a4b2;font-size:10px}.subnav-bottom{padding-top:9px;margin-top:auto;display:flex;gap:6px;flex-wrap:wrap}.edit-heading{flex:none;border-bottom:1px solid var(--line);padding:15px 17px}.edit-heading .eyebrow{font-size:10px;letter-spacing:1.2px;color:#837dbd;font-weight:950}.edit-heading h2{font-size:18px;letter-spacing:-.4px;margin:5px 0}.edit-heading p{font-size:11px;color:#9aa6b5;margin:0}.edit-fields{padding:16px 17px;flex:1;min-height:0;overflow:auto;scrollbar-width:thin}.edit-footer{border-top:1px solid var(--line);padding:11px 15px;background:#fbfcff;display:flex;gap:6px;flex-wrap:wrap;flex:none}.field{margin-bottom:16px}.field>label,.field>strong{display:block;font-size:11px;font-weight:850;color:#4f6076;margin:0 0 6px}.field small{display:block;color:#8c99ab;margin-top:5px;font-size:10px}.field input[type=text],.field input[type=number],.field input[type=color],.field select,.field textarea,.field input[type=password]{width:100%;border:1px solid #dbe3ee;border-radius:7px;background:white;color:#27364f;padding:9px 10px;outline:none;font-size:12px;min-height:37px}.field textarea{min-height:83px;resize:vertical;line-height:1.5}.field input:focus,.field textarea:focus,.field select:focus{border-color:#6983d5;box-shadow:0 0 0 2px #e7edff}.field input[type=checkbox]{width:17px;height:17px;accent-color:#617ace}.switchrow{display:flex;align-items:center;gap:10px;min-height:35px}.multiselect{display:flex;flex-wrap:wrap;gap:5px;border:1px solid #e0e6ef;padding:9px;border-radius:8px;max-height:188px;overflow:auto}.multi-option{display:flex;align-items:center;gap:5px;background:#f0f3fa;border:1px solid #e2e8f0;border-radius:6px;padding:7px;color:#61738c;font-size:11px}.multi-option input{accent-color:#6377c7}.section-title{font-size:11px;color:#64769a;letter-spacing:1px;font-weight:950;text-transform:uppercase;margin:10px 0 15px}.hint{background:#f4f7ff;border:1px dashed #cbd7f4;border-radius:8px;color:#6578a7;padding:11px;font-size:11px;line-height:1.6;margin:0 0 13px}.two-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.three-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.editor select{cursor:pointer}.json-area{width:100%;min-height:320px;resize:vertical;background:#1a273e!important;color:#e3edff!important;font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;line-height:1.65}.template-row{border:1px solid #e1e6f0;background:#fbfcff;border-radius:9px;padding:11px;margin-bottom:8px;display:flex;align-items:center;gap:8px;min-width:0}.template-row .row-fields{flex:1;min-width:0}.template-row button{flex:none}.template-row .field{margin:4px 0}.template-steps{font-size:10px;color:#91a0b7;flex:none}.palette{display:grid;grid-template-columns:repeat(8,1fr);gap:5px}.palette button{aspect-ratio:1;border:2px solid #f6f7fa;border-radius:5px;padding:0}.palette button.active{border-color:#1f3356;box-shadow:0 0 0 2px #869adc}.fx-preview{height:105px;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#2b3858,#111d34);border-radius:10px;position:relative;overflow:hidden;margin:10px 0}.fx-orbit{height:53px;width:53px;border:4px solid var(--fxcolor,#b7a1f3);border-radius:50%;box-shadow:0 0 17px var(--fxcolor,#b7a1f3);animation:fx-orbit 1s ease-in-out infinite alternate}.fx-preview img{max-height:93px;max-width:130px;object-fit:contain;image-rendering:pixelated}@keyframes fx-orbit{from{transform:scale(.55);opacity:.2}to{transform:scale(1.22);opacity:1}}.json-list{display:flex;flex-direction:column;gap:8px}.json-line{display:flex;align-items:center;gap:6px}.json-line input{flex:1;min-width:0}.preview-top{flex:none;padding:15px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.preview-top h3{font-size:13px;margin:0}.preview-top span{font-size:9px;background:#e9f7ee;color:#508868;font-weight:850;border-radius:5px;padding:4px 6px}.preview-content{padding:16px;overflow:auto;min-height:0;flex:1}.preview-panel{border:1px solid #e2e6ef;background:linear-gradient(#fff,#fafbff);padding:14px;border-radius:10px;margin-bottom:11px}.preview-panel h3{margin:5px 0 9px;font-size:16px}.preview-panel p{font-size:11px;color:#69788d;line-height:1.8}.data-kv{border-bottom:1px solid #edf0f5;padding:9px 0;display:flex;align-items:start;justify-content:space-between;gap:10px;font-size:11px}.data-kv:last-child{border:0}.data-kv strong{text-align:right;max-width:55%;overflow-wrap:anywhere}.preview-card{height:154px;border:4px ridge #a58bbd;border-radius:8px;background:#eee6ce;display:flex;align-items:center;flex-direction:column;justify-content:space-around;padding:9px;color:#5b4f67;max-width:134px;margin:10px auto}.preview-card.R{border-color:#c6cdd8;background:#fff9e9}.preview-card.SR{border-color:#e9c464;background:#f9ecc2}.preview-card.SSR{border-image:linear-gradient(135deg,#aee6ff,#efc0dc,#fff0b6) 1;background:#f0e9ff}.preview-card b{font-size:14px}.preview-card p{font-size:10px;text-align:center}.login-overlay{position:fixed;inset:0;background:#121d33ef;z-index:99;display:grid;place-items:center}.login-dialog{width:min(420px,93vw);background:white;border-radius:16px;padding:30px;box-shadow:0 15px 60px #0006;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.login-dialog h2{margin:0;font-size:22px}.login-dialog p{font-size:12px;color:#8590a1;line-height:1.8}.login-dialog input{width:100%;padding:10px;border-radius:7px;border:1px solid #cfd8e7}.login-dialog a{font-size:11px;color:#6b83b9}.notification{position:fixed;bottom:20px;right:22px;z-index:80;background:#233657;color:white;border-radius:9px;padding:11px 15px;font-size:12px;box-shadow:0 12px 25px #20324d45;max-width:390px}.sim-output{height:250px;overflow:auto;white-space:pre-wrap;background:#1d2a40;color:#e2f2ff;padding:12px;font-family:monospace;font-size:11px;border-radius:8px;line-height:1.8}.sim-picks{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.sim-picks button{border:1px solid #c8d2e2;background:#f4f6fb;padding:7px 10px;border-radius:6px}.sim-picks button.active{background:#dce5ff;border-color:#687fd0}.subnav-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:11px}.subnav-tabs button{border:1px solid #e0e7ef;border-radius:6px;background:#fff;padding:5px 8px;font-size:10px}.subnav-tabs button.active{background:#e8ecff;color:#5269af;border-color:#9eaee5}
@media(max-width:1150px){#sidebar{width:175px;min-width:175px}.workspace{grid-template-columns:minmax(173px,.7fr) minmax(305px,1.5fr)}.preview{display:none}.toolbar{padding:12px}.toolbar h1{font-size:17px}.version-chip{display:none}}
@media(max-width:750px){#sidebar{width:64px;min-width:64px}.side-button{font-size:0;justify-content:center}.side-button .nav-icon{font-size:23px}.brand{font-size:0;justify-content:center;padding:8px}.brand small,.brand b,.aside-footer div{display:none}.aside-footer{justify-content:center}.workspace{grid-template-columns:155px minmax(210px,1fr);padding:7px;gap:7px}.toolbar-actions .btn:not(.primary){display:none}.toolbar{height:65px}.alert-line{margin:7px;font-size:10px}.edit-heading{padding:10px}.edit-fields{padding:10px}}
.toolbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px}.toolbar{height:auto;min-height:76px;gap:16px}.toolbar-actions .btn{white-space:nowrap}.field textarea{min-height:80px}.fx-preview img[src='']{display:none}
@media(max-width:1100px){.preview{display:none}.workspace{grid-template-columns:215px minmax(0,1fr)}.toolbar-actions .btn{padding:7px 9px}.toolbar{align-items:flex-start}.top-title{min-width:145px}}
@media(max-width:760px){#sidebar{width:64px;flex-basis:64px}.brand div,.aside-footer div{display:none}.side-button{font-size:0;padding:12px 8px}.side-button .nav-icon{font-size:20px}.workspace{grid-template-columns:145px minmax(0,1fr)}.toolbar{flex-direction:column;gap:9px}.toolbar-actions{justify-content:flex-start}.edit-fields{padding:15px}.row-fields{grid-template-columns:1fr}.subnav{width:auto}}
body:not(.admin-unlocked) #sidebar,body:not(.admin-unlocked) main.content{visibility:hidden}#save-state{font-size:11px;color:#647388;max-width:190px}#admin-password{margin-bottom:12px;width:100%;padding:11px;border:1px solid #b8c2d0;border-radius:6px}
.file-card{display:flex;gap:15px;padding:15px;border:1px solid #d2dae4;border-radius:8px;margin:10px 0;background:#fff}.file-card>div{min-width:0}.file-card small{display:block;font-size:11px;color:#627189;margin-top:5px;overflow-wrap:anywhere}.file-card p{font-size:12px;line-height:1.6;overflow-wrap:anywhere}.file-thumb{width:86px;height:100px;object-fit:contain;image-rendering:pixelated;background:#eef0f5;flex:none}.file-audio{font-size:45px;padding:15px;color:#85729a}.asset-picker{border:1px solid #bcc7d7;border-radius:14px;max-width:800px;width:90%;max-height:85vh;padding:24px}.asset-picker::backdrop{background:#18243dbc}.asset-picker-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:15px 0}.asset-pick{background:#f4f5f8;border:1px solid #c9d2e0;border-radius:8px;padding:12px;cursor:pointer;display:flex;align-items:center;flex-direction:column;gap:8px}.asset-pick span{overflow-wrap:anywhere;font-size:12px}
#password-confirm{margin-bottom:12px;width:100%;padding:11px;border:1px solid #b8c2d0;border-radius:6px}
