/* ARVO interface tokens: composition canvas is deliberately excluded. */
@media(min-width:601px) and (max-width:1000px) and (max-height:550px){body #app,body.left-closed #app,body.right-closed #app,body.left-closed.right-closed #app{grid-template-rows:96px minmax(140px,42dvh) minmax(0,1fr)}}
.inspector-detail>summary input[type=checkbox]{margin-left:auto;margin-right:8px}.inspector-detail>summary:has(input)::after{margin-left:0}.layer-grip{display:flex;align-items:center;cursor:grab;width:12px;flex:none;color:var(--ui-muted)}.layer-grip .ui-icon{width:12px;height:15px}
body[data-theme=dark]{color-scheme:dark;--ui-bg:#0a101b;--ui-panel:#101a2a;--ui-surface:#18263b;--ui-border:#2c3e56;--ui-text:#ecf2fa;--ui-muted:#a1b1c8;--ui-accent:#acd3ff;--ui-accent-text:#101e32;--ui-focus:#b4d7ff;--ui-shadow:0 8px 24px #02071166;--ui-inset:inset 0 1px 0 #c6e1ff09;--ui-selected:#233c59;--ui-danger:#ffb3b3}
body[data-theme=light]{color-scheme:light;--ui-bg:#e7eaee;--ui-panel:#f5f6f8;--ui-surface:#e9ecf0;--ui-border:#cbd0d8;--ui-text:#252a33;--ui-muted:#5d6674;--ui-accent:#3c4655;--ui-accent-text:#fff;--ui-focus:#4c657e;--ui-shadow:0 8px 24px #25324715;--ui-inset:inset 0 1px 0 #fff;--ui-selected:#dce1e8;--ui-danger:#a52e3d}
body{background:var(--ui-bg);color:var(--ui-text);font-family:Inter,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}
.editor-header{background:var(--ui-panel);box-shadow:var(--ui-inset)}
.topbar{height:54px;padding:0 18px;gap:10px}.brand{flex:none;display:flex;align-items:center;width:166px;line-height:0;cursor:default}.brand .arvo-art{width:166px;height:40px;object-fit:contain}
.arvo-art{user-select:none;-webkit-user-select:none;-webkit-user-drag:none;pointer-events:none;object-fit:contain;max-width:100%;height:auto;cursor:default}
#app{grid-template-rows:96px minmax(0,1fr)}
.tabs{height:42px;padding-left:18px}.tabs button{border-radius:7px 7px 0 0}.tabs button.active{background:var(--ui-selected)}
.editor-sidebar,.inspector{margin:12px 0 12px 12px;border:1px solid var(--ui-border);border-radius:14px;box-shadow:var(--ui-shadow),var(--ui-inset);background:var(--ui-panel)}
.inspector{margin:12px 12px 12px 0}.pane-resize{background:transparent}.pane-resize:hover{background:var(--ui-accent)}
.workspace{background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--ui-surface) 55%,var(--ui-bg)),var(--ui-bg));padding:20px;gap:14px}
#stage,#visual{border-radius:9px}#stage{box-shadow:0 12px 36px #0005;outline:1px solid color-mix(in srgb,var(--ui-border),transparent 35%)}
.transport{background:var(--ui-panel);border:1px solid var(--ui-border);border-radius:12px;box-shadow:var(--ui-shadow),var(--ui-inset);padding:8px 10px;height:58px;min-height:58px;gap:10px}
.panel{padding:18px 16px 28px}.panel h2{font-size:16px;letter-spacing:-.02em}.panel label,.inspector-field{color:var(--ui-muted)}
button,input,select{border-radius:8px;box-shadow:var(--ui-inset)}button{font-weight:550}button.primary{box-shadow:0 2px 8px #0002}
.icon-button{background:transparent;border-color:transparent;box-shadow:none}.icon-button:hover{background:var(--ui-surface);border-color:var(--ui-border)}
.project-name{font-size:0}.project-name input{background:transparent;border-color:transparent;font-size:13px}.project-name input:hover,.project-name input:focus{border-color:var(--ui-border);background:var(--ui-surface)}
.settings-section>summary,.layer-section>summary,.inspector-detail>summary{padding:12px 2px;min-height:46px}.settings-section[open]>summary,.inspector-detail[open]>summary{color:var(--ui-text)}
.project-commands{display:grid;grid-template-columns:1fr 1fr;gap:8px}.project-commands button,.project-commands .file{min-height:58px;display:flex;flex-direction:column;gap:5px;justify-content:center;align-items:center;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:10px;line-height:1.3}
.project-commands .ui-icon{width:20px;height:20px;color:var(--ui-muted)}
.project-commands>.hint{grid-column:1/-1;margin:6px 0 0}.project-commands>*{min-width:0}.panel .project-commands button{font-size:12px;padding:10px 6px;white-space:normal}
.project-commands>.project-new{grid-column:1/-1;flex-direction:row;min-height:36px}.arvo-tagline{font-size:9px!important;letter-spacing:.2em!important;color:var(--ui-muted);white-space:nowrap;margin-left:12px!important}.brand{width:270px}.brand .arvo-art{width:154px;flex:none}.arvo-question{width:min(420px,calc(100vw - 32px))}.arvo-question h2{font-size:16px;line-height:1.5;margin:0 0 20px}.arvo-question label{font-size:12px;color:var(--ui-muted);display:block}.arvo-question input{display:block;width:100%;margin-top:7px}.arvo-question .dialog-actions{position:static;display:flex;justify-content:flex-end}.intro-emblem{filter:none}
.arvo-number{display:flex;align-items:center;gap:3px;min-width:0;width:100%;margin-top:6px}.arvo-number .number-slider{flex:1;min-width:20px;width:20px;margin:0}.arvo-number .number-value{width:62px!important;min-width:0;flex:none;text-align:right;font-size:12px;font-variant-numeric:tabular-nums;padding:5px 6px;margin:0!important;color:var(--ui-text)}.number-scrub{cursor:ew-resize;touch-action:none;display:flex;align-items:center;justify-content:center;width:18px;min-width:18px;min-height:30px;padding:0;background:transparent;border:0;box-shadow:none;color:var(--ui-muted)}.number-scrub .ui-icon{width:13px;height:16px}.number-value[aria-invalid=true]{border-color:var(--ui-danger);outline-color:var(--ui-danger)}.panel label:has(>.arvo-number)>output{display:none}.inspector-field:has(.arvo-number){display:block}.inspector-grid .arvo-number{flex-wrap:wrap}.inspector-grid .number-slider{flex-basis:100%;order:3}.inspector-grid .number-value{flex:1;width:60px!important}.inspector-grid .number-scrub{margin-left:auto}
.arvo-select{display:flex;align-items:center;text-align:left;width:100%;position:relative;padding-right:28px;min-height:36px;white-space:normal}.arvo-select::after{content:'⌄';position:absolute;right:10px;color:var(--ui-muted)}.panel label>.arvo-select{margin-top:6px}.arvo-options{position:fixed;z-index:150;padding:5px;background:var(--ui-panel);border:1px solid var(--ui-border);border-radius:10px;box-shadow:var(--ui-shadow);max-height:min(280px,70dvh);overflow:auto}.arvo-options button{display:block;width:100%;text-align:left;background:transparent;border-color:transparent;box-shadow:none;min-height:34px;padding:7px 10px}.arvo-options [aria-selected=true]{background:var(--ui-selected);color:var(--ui-text)}.arvo-options button:hover,.arvo-options button:focus-visible{background:var(--ui-surface)}
.file{position:relative;isolation:isolate;overflow:hidden;cursor:pointer}.file input[type=file]{position:absolute;inset:0!important;width:100%!important;height:100%!important;opacity:0;cursor:pointer;max-width:100%}.file:focus-within{outline:2px solid var(--ui-focus);outline-offset:2px}
input[type=range]{appearance:none;-webkit-appearance:none;height:24px;background:transparent;box-shadow:none;cursor:pointer;border:0}
input[type=range]::-webkit-slider-runnable-track{height:4px;background:var(--ui-border);border-radius:4px}input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--ui-accent);border:2px solid var(--ui-panel);box-shadow:0 0 0 1px var(--ui-border);margin-top:-4px}
input[type=range]::-moz-range-track{height:4px;background:var(--ui-border);border-radius:4px}input[type=range]::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:var(--ui-accent);border:2px solid var(--ui-panel)}
input[type=checkbox]{appearance:none;-webkit-appearance:none;width:17px;height:17px;min-height:17px;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:5px;position:relative;cursor:pointer;flex:none}input[type=checkbox]:checked{background:var(--ui-accent);border-color:var(--ui-accent)}input[type=checkbox]:checked::after{content:'';position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid var(--ui-accent-text);border-width:0 2px 2px 0;transform:rotate(45deg)}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ui-muted) 50%),linear-gradient(135deg,var(--ui-muted) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 10px) 50%;background-size:4px 4px;background-repeat:no-repeat;padding-right:26px!important}select option{background:var(--ui-panel);color:var(--ui-text)}
input[type=color]{padding:3px;height:34px;width:48px}input[type=color]::-webkit-color-swatch-wrapper{padding:2px}input[type=color]::-webkit-color-swatch{border:0;border-radius:4px}
input:disabled,select:disabled{opacity:.45;cursor:not-allowed}.layer-row.chosen{background:var(--ui-selected)}
dialog,.layer-menu,.toast,.volume-popover{box-shadow:var(--ui-shadow);background:var(--ui-panel);color:var(--ui-text);border-color:var(--ui-border)}dialog::backdrop{background:#0408128a;backdrop-filter:blur(5px)}.toast-error{border-color:var(--ui-danger)}
*{scrollbar-width:thin;scrollbar-color:var(--ui-border) transparent}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-thumb{background:var(--ui-border);border-radius:8px}::-webkit-scrollbar-track{background:transparent}
.intro{background:var(--ui-bg)}.intro-emblem{width:146px;height:146px;margin:auto}.intro-emblem .arvo-art{width:100%;height:100%;opacity:1;filter:none}.intro-title{font-size:30px;letter-spacing:.24em}.intro-by{letter-spacing:.22em}.intro::before{display:none}
@media(min-width:601px) and (max-width:1000px){#app,body.left-closed #app,body.right-closed #app,body.left-closed.right-closed #app{grid-template-rows:96px minmax(190px,48dvh) minmax(0,1fr)}.editor-sidebar,.inspector{margin-top:0}.brand,.brand .arvo-art{width:140px}}
@media(max-width:600px){#app,body.left-closed #app,body.right-closed #app,body.left-closed.right-closed #app{grid-template-rows:56px clamp(180px,36dvh,360px) minmax(0,1fr)}.topbar,.editor-header{height:56px}.topbar{padding:0 8px;gap:2px}.brand,.brand .arvo-art{width:75px;height:32px}.project-name input{font-size:11px;padding:4px}.top-actions{gap:0}.top-actions #theme-toggle,.top-actions #app-settings-open,.top-actions #project-menu{width:38px;min-width:38px;min-height:44px;padding:8px}.top-actions #export-open{padding:5px;min-width:48px}.editor-sidebar,.inspector{margin:0;border-radius:12px 12px 0 0;border-left:0;border-right:0;border-bottom:0}.workspace{padding:12px;gap:10px}.transport{height:52px;min-height:52px;padding:4px;gap:3px}.transport button,#play,.transport #fullscreen{width:36px;min-width:36px}.transport #time{font-size:9px}.inspector input[type=checkbox]{min-height:17px}.panel input[type=range]{min-height:28px}}

.brand .arvo-mobile-mark{display:none}
@media(max-width:600px){.brand{width:36px}.brand>.arvo-art{display:none}.brand>.arvo-mobile-mark{display:block;width:32px;height:32px}.top-actions #theme-toggle,.top-actions #app-settings-open,.top-actions #project-menu{width:44px;min-width:44px}.panel-scroll,.inspector #inspector-scroll{padding-bottom:calc(28px + env(safe-area-inset-bottom))}}
@media(min-width:601px) and (max-width:1000px) and (max-height:550px){html body #app,html body.left-closed #app,html body.right-closed #app,html body.left-closed.right-closed #app{grid-template-rows:96px minmax(140px,42dvh) minmax(0,1fr)}}

.arvo-initial-light{display:none}html[data-arvo-theme=light] .arvo-initial-dark{display:none}html[data-arvo-theme=light] .arvo-initial-light{display:block}

/* Reference finish: cold blue depth in Dark, pearl/graphite depth in Light. */
body[data-theme=dark]{--ui-bg:#08121c;--ui-panel:#0c1a27;--ui-surface:#132738;--ui-border:#2b465b;--ui-selected:#173c59;--ui-accent:#badcff;--ui-muted:#9cb4c9;--ui-shadow:0 12px 32px #02081277,0 1px 3px #0005;--ui-inset:inset 0 1px 0 #cbe7ff0e;--arvo-surface-top:#142a3b;--arvo-surface-bottom:#0d1e2b;--arvo-panel-top:#102333;--arvo-panel-bottom:#09151f;--arvo-rim:#80bfff24;--arvo-glow:#3f9cff22}
body[data-theme=light]{--arvo-surface-top:#f8f9fb;--arvo-surface-bottom:#e5e9ee;--arvo-panel-top:#fafbfd;--arvo-panel-bottom:#f0f2f5;--arvo-rim:#fff;--arvo-glow:#46546612;--ui-shadow:0 10px 26px #263d5515,0 1px 3px #2532440a;--ui-inset:inset 0 1px 0 #fff}
.editor-header{background:linear-gradient(180deg,var(--arvo-panel-top),var(--arvo-panel-bottom));border-top:1px solid var(--arvo-rim);box-shadow:0 2px 16px var(--arvo-glow),var(--ui-inset)}
.editor-sidebar,.inspector{background:linear-gradient(145deg,var(--arvo-panel-top),var(--arvo-panel-bottom) 65%);box-shadow:var(--ui-shadow),var(--ui-inset),inset 0 0 18px var(--arvo-glow)}
.panel h2,.inspector>header h2{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:650}.panel h2{padding-bottom:16px;border-bottom:1px solid var(--ui-border);margin-bottom:14px}
.project-commands button,.project-commands .file{background:linear-gradient(145deg,var(--arvo-surface-top),var(--arvo-surface-bottom));box-shadow:var(--ui-inset),0 2px 6px #0000000c;transition:background .16s,border-color .16s,box-shadow .16s}
.project-commands button:hover,.project-commands .file:hover{border-color:var(--ui-focus);box-shadow:var(--ui-inset),0 0 12px var(--arvo-glow)}
body[data-theme=dark] .tabs button.active{background:linear-gradient(180deg,#153854aa,#12354e);border:1px solid #346c9955;border-bottom:0;box-shadow:inset 0 -4px 12px #248bdf22,0 2px 12px #148df218}
body[data-theme=dark] .tabs button.active::after{background:#71c6ff;box-shadow:0 0 9px #51b4ff88;left:0;right:0}
body[data-theme=light] .tabs button.active{background:linear-gradient(#f6f7f9,#dce1e7);box-shadow:var(--ui-inset)}
input:not([type=range]):not([type=checkbox]):not([type=color]):not([type=file]),.arvo-select{box-shadow:inset 0 1px 3px #00000012,var(--ui-inset)}
.transport{height:64px;min-height:64px;background:linear-gradient(165deg,var(--arvo-panel-top),var(--arvo-panel-bottom));border-color:var(--ui-border);box-shadow:var(--ui-shadow),var(--ui-inset),inset 0 0 16px var(--arvo-glow)}
.transport #play.icon-button{width:44px;min-width:44px;height:44px;background:linear-gradient(150deg,var(--ui-accent),color-mix(in srgb,var(--ui-accent),var(--ui-panel) 22%));color:var(--ui-accent-text);border:1px solid var(--ui-accent);border-radius:10px;box-shadow:var(--ui-inset),0 0 14px var(--arvo-glow)}
.transport #play:hover{box-shadow:var(--ui-inset),0 0 20px var(--arvo-glow);border-color:var(--ui-focus)}
.transport .waveform{opacity:.48}.transport .timeline:hover .waveform{opacity:.85}
#stage{box-shadow:0 0 0 6px var(--ui-panel),0 0 0 7px var(--ui-border),0 14px 34px #00000030}
body[data-theme] .panel[data-panel=project] .settings-section-body>button,body[data-theme] .panel[data-panel=project] .settings-section-body>.row>button,body[data-theme] .settings-section .font-action,body[data-theme] #text-customize{color:var(--ui-text);background:linear-gradient(var(--arvo-surface-top),var(--arvo-surface-bottom));border:1px solid var(--ui-border);box-shadow:var(--ui-inset);font-weight:550;transform:none}
body[data-theme] .panel[data-panel=project] .settings-section-body>button:hover,body[data-theme] .panel[data-panel=project] .settings-section-body>.row>button:hover,body[data-theme] .settings-section .font-action:hover,body[data-theme] #text-customize:hover{border-color:var(--ui-focus);background:var(--ui-selected);transform:none}
@media(max-width:600px){.transport{height:54px;min-height:54px}.transport #play.icon-button{width:40px;min-width:40px;height:42px}.panel h2{padding-bottom:12px}.editor-header{border-top:0}.editor-sidebar,.inspector{box-shadow:var(--ui-inset)}}
