:root{--ui-bg:#141311;--ui-panel:#1e1c19;--ui-panel-raised:#262421;--ui-panel-sunken:#191714;--ui-border:#35322c;--ui-border-strong:#4c473d;--ui-text:#e9e4d8;--ui-text-muted:#9a937f;--ui-text-faint:#928b78;--ui-accent:#f2a33c;--ui-accent-dim:#b97b2a;--ui-accent-text:#211605;--ui-accent-soft:#f2a33c24;--ui-danger:#e66a55;--ui-danger-text:#2b0f08;--ui-ok:#8fc858;--ui-info:#7fb4e8;--ui-selection:#f2a33c;--ui-focus:#7fb4e8;--ui-grid-major:#e9e4d829;--ui-grid-minor:#e9e4d80f;--ui-radius:2px;--ui-shadow-hard:3px 3px 0 #00000073;--ui-shadow-pop:4px 4px 0 #0000008c;--ui-font:ui-monospace, "SF Mono", "Cascadia Mono", "JetBrains Mono", Menlo, Consolas, monospace;--ui-font-size:13px;--ui-font-size-small:11px;--ui-topbar-h:42px;--ui-toolrail-w:46px;--ui-rightpanel-w:288px;--ui-statusbar-h:26px;accent-color:var(--ui-accent)}[data-theme=beige]{--ui-bg:#d8d2c4;--ui-panel:#e7e1d3;--ui-panel-raised:#f2ecdf;--ui-panel-sunken:#cfc8b8;--ui-border:#a89f8c;--ui-border-strong:#7c745f;--ui-text:#2a2620;--ui-text-muted:#514936;--ui-text-faint:#59513f;--ui-accent:#8c3a13;--ui-accent-dim:#d9814f;--ui-accent-text:#fdf6ea;--ui-accent-soft:#8c3a1324;--ui-danger:#92291f;--ui-danger-text:#fdf0ec;--ui-ok:#365d19;--ui-info:#284f7d;--ui-selection:#8c3a13;--ui-focus:#284f7d;--ui-grid-major:#2a262038;--ui-grid-minor:#2a262014;--ui-shadow-hard:3px 3px 0 #4a403059;--ui-shadow-pop:4px 4px 0 #4a403073}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}body{background:var(--ui-bg);color:var(--ui-text);font-family:var(--ui-font);font-size:var(--ui-font-size);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;line-height:1.45}::selection{background:var(--ui-accent);color:var(--ui-accent-text)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--ui-panel-sunken)}::-webkit-scrollbar-thumb{background:var(--ui-border-strong);border:2px solid var(--ui-panel-sunken)}::-webkit-scrollbar-thumb:hover{background:var(--ui-text-faint)}:focus{outline:none}:focus-visible{outline:2px solid var(--ui-focus);outline-offset:1px;z-index:1}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{min-width:24px;min-height:24px}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select,textarea{min-height:24px}.btn{background:var(--ui-panel-raised);min-width:24px;height:28px;min-height:24px;color:var(--ui-text);border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.btn:hover{border-color:var(--ui-text-faint);background:color-mix(in srgb, var(--ui-panel-raised) 88%, var(--ui-text) 12%)}.btn:active{transform:translate(1px,1px)}.btn[disabled]{opacity:.45;cursor:default;transform:none}.btn-primary{background:var(--ui-accent);color:var(--ui-accent-text);border-color:var(--ui-accent);box-shadow:var(--ui-shadow-hard);font-weight:700}.btn-primary:hover{background:color-mix(in srgb, var(--ui-accent) 88%, white 12%);border-color:var(--ui-accent)}.btn-primary:active{transform:translate(2px,2px);box-shadow:1px 1px #00000073}.btn-danger{background:var(--ui-danger);border-color:var(--ui-danger);color:var(--ui-danger-text)}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--ui-accent-soft);border-color:#0000}.btn.is-active,.btn-ghost.is-active{background:var(--ui-accent);color:var(--ui-accent-text);border-color:var(--ui-accent)}.input,input.input,select.input{background:var(--ui-panel-sunken);border:1px solid var(--ui-border);border-radius:var(--ui-radius);height:26px;color:var(--ui-text);-webkit-user-select:text;user-select:text;padding:0 7px}.input:hover{border-color:var(--ui-border-strong)}.input:focus{border-color:var(--ui-accent)}.numfield{background:var(--ui-panel-sunken);border:1px solid var(--ui-border);border-radius:var(--ui-radius);align-items:center;height:24px;display:inline-flex}.numfield label{color:var(--ui-text-faint);font-size:var(--ui-font-size-small);cursor:ew-resize;padding:0 5px}.numfield input{width:52px;height:100%;color:var(--ui-text);text-align:right;-webkit-user-select:text;user-select:text;background:0 0;border:0;padding:0 5px}.numfield input:focus{background:var(--ui-panel)}.segmented{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius);background:var(--ui-panel-sunken);display:inline-flex;overflow:hidden}.segmented>button{height:26px;color:var(--ui-text-muted);cursor:pointer;border:0;border-right:1px solid var(--ui-border);background:0 0;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.segmented>button:last-child{border-right:0}.segmented>button:hover{color:var(--ui-text)}.segmented>button.is-active{background:var(--ui-accent);color:var(--ui-accent-text);font-weight:700}.kbd{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius);background:var(--ui-panel-raised);min-width:16px;color:var(--ui-text-muted);text-align:center;border-bottom-width:2px;padding:1px 4px;font-size:10px;line-height:13px;display:inline-block}.panel-title{color:var(--ui-text-muted);font-size:var(--ui-font-size-small);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;padding:7px 9px 5px;display:flex}.hr{background:var(--ui-border);border:0;height:1px;margin:4px 0}.menu{background:var(--ui-panel-raised);border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius);min-width:190px;box-shadow:var(--ui-shadow-pop);z-index:1000;padding:3px}.menu-item{width:100%;color:var(--ui-text);cursor:pointer;text-align:left;border-radius:var(--ui-radius);background:0 0;border:0;align-items:center;gap:8px;padding:5px 8px;display:flex}.menu-item:hover:not([disabled]),.menu-item.is-highlighted{background:var(--ui-accent);color:var(--ui-accent-text)}.menu-item:hover:not([disabled]) .kbd,.menu-item.is-highlighted .kbd{color:var(--ui-accent-text);border-color:color-mix(in srgb, var(--ui-accent-text) 40%, transparent);background:0 0}.menu-item[disabled]{color:var(--ui-text-faint);cursor:default}.menu-item .menu-label{flex:1}.menu-sep{background:var(--ui-border);height:1px;margin:3px 5px}.menu-heading{letter-spacing:.1em;text-transform:uppercase;color:var(--ui-text-faint);padding:4px 8px 2px;font-size:10px}.dialog-backdrop{z-index:2000;background:#0a090799;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:var(--ui-panel);border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius);box-shadow:var(--ui-shadow-pop);flex-direction:column;min-width:min(380px,100vw - 24px);max-width:min(640px,100vw - 24px);max-height:84vh;display:flex}.dialog-title{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.dialog-body{padding:12px;overflow:auto}.dialog-actions{border-top:1px solid var(--ui-border);justify-content:flex-end;gap:8px;padding:10px 12px;display:flex}.tooltip{z-index:3000;background:var(--ui-panel-raised);border:1px solid var(--ui-border-strong);box-shadow:var(--ui-shadow-hard);border-radius:var(--ui-radius);pointer-events:none;max-width:260px;font-size:var(--ui-font-size-small);padding:6px 8px;position:fixed}.tooltip .tooltip-title{color:var(--ui-text);align-items:center;gap:8px;display:flex}.tooltip .tooltip-desc{color:var(--ui-text-muted);margin-top:3px}.row{align-items:center;gap:8px;display:flex}.col{flex-direction:column;gap:8px;display:flex}.grow{flex:1;min-width:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--ui-text-muted)}.faint{color:var(--ui-text-faint)}.small{font-size:var(--ui-font-size-small)}.asset-shelf-layout{grid-template-columns:minmax(220px,.9fr) minmax(280px,1.1fr);gap:12px;min-height:260px;display:grid}@media (max-width:680px){.asset-shelf-layout{grid-template-columns:1fr}.asset-shelf-list{max-height:180px!important}.asset-shelf-save{flex-direction:column;align-items:stretch}.dashboard-content{padding:24px 16px 56px!important}.dashboard-content>header{flex-wrap:wrap;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
