:root{--bg: #0f1115;--panel: #171a21;--panel-2: #1e222b;--line: #2a2f3a;--text: #e6e9ef;--muted: #9aa2b2;--accent: #5b8def;--glass-fill: rgba(23, 26, 33, .5);--glass-border: rgba(255, 255, 255, .16);--glass-blur: 28px;--glass-radius: 20px;--card-fill: rgba(255, 255, 255, .045);--card-border: rgba(255, 255, 255, .08);--card-radius: 14px;--ctrl-fill: rgba(255, 255, 255, .06);--ctrl-fill-strong: rgba(255, 255, 255, .09);--ctrl-border: rgba(255, 255, 255, .12)}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}body{background:radial-gradient(1200px 820px at 14% 8%,rgba(91,141,239,.22),transparent 60%),radial-gradient(1050px 720px at 88% 18%,rgba(139,92,246,.2),transparent 60%),radial-gradient(1200px 950px at 62% 104%,rgba(34,197,181,.16),transparent 55%),#0b0d12;background-attachment:fixed}.shell{display:flex;flex-direction:column;height:100vh}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:16px;letter-spacing:.2px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.12)}.brand-mark{height:26px;width:auto;flex:none}.brand-text{min-width:0}.view-toggle{background:var(--ctrl-fill);color:var(--muted);border:1px solid var(--ctrl-border);border-radius:10px;padding:9px 12px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .12s ease,color .12s ease,border-color .12s ease}.view-toggle:hover{color:var(--text);border-color:#ffffff3d;background:var(--ctrl-fill-strong)}.view-toggle.active{background:linear-gradient(180deg,#5b8deff2,#5b8defcc);color:#fff;border-color:#ffffff59;box-shadow:0 4px 14px #5b8def59,inset 0 1px #fff6}.sidebar-view-toggle{display:block;width:100%;text-align:center}.segmented{display:flex;gap:6px}.seg-btn{flex:1;background:var(--ctrl-fill);color:var(--muted);border:1px solid var(--ctrl-border);border-radius:10px;padding:9px 8px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .12s ease,color .12s ease,border-color .12s ease}.seg-btn:hover{color:var(--text);border-color:#ffffff3d;background:var(--ctrl-fill-strong)}.seg-btn.active{background:linear-gradient(180deg,#5b8deff2,#5b8defcc);color:#fff;border-color:#ffffff59;box-shadow:0 4px 14px #5b8def59,inset 0 1px #fff6}.word-input{background:var(--ctrl-fill);border:1px solid var(--ctrl-border);color:var(--text);padding:9px 12px;border-radius:10px;font-size:16px;letter-spacing:1px;width:100%;text-transform:uppercase;transition:border-color .12s ease,background .12s ease}.word-input:focus{outline:none;border-color:#5b8defb3;background:var(--ctrl-fill-strong);box-shadow:0 0 0 3px #5b8def2e}.status{color:var(--muted);font-size:13px}.status.error{color:#ff8a80}.main{flex:1;position:relative;min-height:0}.viewport{position:absolute;top:0;right:0;bottom:0;left:0}.sidebar{position:absolute;top:16px;right:16px;bottom:16px;width:304px;z-index:10;border-radius:var(--glass-radius);padding:18px;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:14px;background:var(--glass-fill);backdrop-filter:blur(var(--glass-blur)) saturate(180%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(180%);border:1px solid var(--glass-border);box-shadow:inset 0 1px #ffffff2e,inset 0 0 0 1px #ffffff08,0 18px 44px #00000080,0 2px 8px #00000059}.card{background:var(--card-fill);border:1px solid var(--card-border);border-radius:var(--card-radius);padding:14px;box-shadow:inset 0 1px #ffffff0f}.sidebar h3{margin:0 0 10px;font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted)}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.card-head h3{margin:0}.icon-toggle{display:inline-flex;align-items:center;justify-content:center;width:30px;height:24px;border-radius:8px;background:var(--ctrl-fill);border:1px solid var(--ctrl-border);color:var(--muted);cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.icon-toggle:hover{color:var(--text);border-color:#ffffff3d}.icon-toggle.active{background:linear-gradient(180deg,#5b8deff2,#5b8defcc);color:#fff;border-color:#ffffff59;box-shadow:0 3px 10px #5b8def4d,inset 0 1px #fff6}.slot-list{display:flex;flex-direction:column;gap:6px}.slot-row{display:flex;align-items:center;gap:8px;background:var(--ctrl-fill);border:1px solid var(--ctrl-border);border-radius:10px;padding:6px 8px}.slot-row .glyph{width:24px;text-align:center;font-weight:600}.slot-row select{flex:1;min-width:0;background:var(--ctrl-fill-strong);color:var(--text);border:1px solid var(--ctrl-border);border-radius:7px;padding:4px}.slot-row select option{color:#000;background:#fff}.slot-row input[type=color],.base-color-input{width:28px;height:28px;padding:0;border:1px solid var(--ctrl-border);border-radius:7px;background:none;cursor:pointer}.base-color-input{width:100%;height:34px}.font-select{width:100%;background:var(--ctrl-fill);color:var(--text);border:1px solid var(--ctrl-border);border-radius:10px;padding:9px 10px;font-size:14px;cursor:pointer;transition:border-color .12s ease,background .12s ease}.font-select:hover{background:var(--ctrl-fill-strong);border-color:#ffffff3d}.font-select:focus{outline:none;border-color:#5b8defb3;box-shadow:0 0 0 3px #5b8def2e}.font-select:disabled{opacity:.6;cursor:progress}.font-select option{color:#000;background:#fff}.font-actions{display:flex;gap:6px;margin-top:8px}.font-upload,.font-reset{display:inline-flex;align-items:center;justify-content:center;background:var(--ctrl-fill);color:var(--muted);border:1px solid var(--ctrl-border);border-radius:10px;padding:9px 10px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .12s ease,color .12s ease,border-color .12s ease}.font-upload{flex:1}.font-upload:hover,.font-reset:hover{color:var(--text);border-color:#ffffff3d;background:var(--ctrl-fill-strong)}.font-upload.disabled{opacity:.5;pointer-events:none}.font-reset:disabled{opacity:.5;cursor:not-allowed}.export-btn{width:100%;padding:11px;background:linear-gradient(180deg,#5b8deff2,#5b8defd1);color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:11px;font-weight:600;cursor:pointer;box-shadow:0 6px 18px #5b8def52,inset 0 1px #fff6;transition:filter .12s ease}.export-btn:hover{filter:brightness(1.08)}.export-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.export-btn.secondary{margin-top:8px;background:var(--ctrl-fill);border:1px solid var(--ctrl-border);color:var(--text);box-shadow:inset 0 1px #ffffff0f}.export-btn.secondary:hover{filter:none;background:var(--ctrl-fill-strong)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:10px;background:#0f1115d9;color:var(--muted)}@media (prefers-reduced-transparency: reduce){.sidebar{background:#14161c;backdrop-filter:none;-webkit-backdrop-filter:none}.card{background:#191c24}.view-toggle,.word-input,.slot-row,.slot-row select,.export-btn.secondary,.seg-btn,.font-select,.font-upload,.font-reset{background:#1e222b}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.sidebar{background:#14161c}}
