@font-face{font-family:Bravura;src:url(/fonts/bravura.woff2)format("woff2");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Academico;src:url(/fonts/academico.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}html,body,#root{min-height:100%}.header-menu{position:relative}.header-menu-panel{z-index:40;background:var(--panel);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.1rem;min-width:11.5rem;max-width:min(16rem,100vw - 1.5rem);padding:.3rem;display:flex;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 8px 28px #00000073}.header-menu-panel.align-end{left:auto;right:0}.header-actions .header-menu-panel button,.header-menu-panel button{text-align:left;width:100%;color:var(--text);box-shadow:none;background:0 0;border:none;border-radius:5px;padding:.4rem .55rem;font-size:.8rem;font-weight:500;display:block}.header-actions .header-menu-panel button:hover:not(:disabled),.header-menu-panel button:hover:not(:disabled){background:var(--cell-hover);color:var(--text)}.header-actions .header-menu-panel button:disabled,.header-menu-panel button:disabled{opacity:.4}.header-menu-sep{background:var(--border);border:none;height:1px;margin:.25rem .35rem}.header-menu-trigger{cursor:pointer;color:inherit;font:inherit;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.header-menu-trigger:hover{filter:brightness(1.08)}.header-menu-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.header-menu-account-head{flex-direction:column;gap:.25rem;min-width:12rem;padding:.45rem .55rem .5rem;display:flex}.header-menu-account-name-row{align-items:center;gap:.45rem;min-width:0;display:flex}.header-menu-account-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.82rem;font-weight:600;overflow:hidden}.header-menu-account-name-row .plan-badge{flex:none}.header-menu-account-email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:14rem;font-size:.72rem;display:block;overflow:hidden}.header-actions>.header-menu>button.auth-avatar-trigger,.header-actions .auth-avatar-trigger{width:32px;min-width:32px;height:32px;box-shadow:none;font-weight:inherit;font-size:inherit;color:inherit;background:0 0;border:none;border-radius:50%;padding:0}.header-actions>.header-menu>button.auth-avatar-trigger:hover,.header-actions .auth-avatar-trigger:hover{filter:none;box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 35%, transparent);background:0 0;border:none}.header-actions>.header-menu>button.auth-avatar-trigger:focus-visible,.header-actions .auth-avatar-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:50%}.auth-offline{color:var(--muted);border:1px dashed var(--border);border-radius:8px;padding:.35rem .5rem;font-size:.75rem}.auth-signed-in{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}@media (width<=720px){.auth-signed-in{flex-wrap:nowrap}.auth-email{display:none}}.auth-email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:10rem;font-size:.8rem;overflow:hidden}.plan-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:.15rem .4rem;font-size:.65rem;font-weight:700}.plan-badge.plan-free{color:var(--muted);background:#ffffff14}.plan-badge.plan-pro{color:var(--accent);background:#5b9dff40}.auth-modal{max-width:22.5rem;padding:1.5rem 1.35rem 1.35rem}.auth-modal-header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1.15rem;display:flex}.auth-modal-header h2{letter-spacing:-.02em;margin:0;font-size:1.25rem;line-height:1.25}.auth-modal-sub{color:var(--muted);margin:.3rem 0 0;font-size:.82rem;line-height:1.4}.auth-close-x{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.25rem;line-height:1;display:inline-flex}.auth-close-x:hover{color:var(--text);background:#ffffff0f}.auth-modal button{color:inherit;font:inherit;box-shadow:none;background:0 0;border:none;border-radius:0;padding:0;font-size:.85rem;font-weight:600}.auth-oauth{flex-direction:column;gap:.5rem;display:flex}.oauth-btn{cursor:pointer;justify-content:center;align-items:center;gap:.65rem;width:100%;transition:background .12s,box-shadow .12s;display:inline-flex;color:#1f1f1f!important;background:#fff!important;border:1px solid #ffffff1f!important;border-radius:10px!important;padding:.7rem 1rem!important;font-size:.9rem!important;font-weight:600!important}.oauth-btn:hover:not(:disabled){box-shadow:0 1px 4px #0003;background:#f5f5f5!important}.oauth-btn:disabled{opacity:.55;cursor:not-allowed}.oauth-btn .google-icon{flex-shrink:0;width:1.15rem;height:1.15rem}.auth-or{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.75rem;margin:1.1rem 0 .95rem;font-size:.72rem;font-weight:600;display:flex}.auth-or:before,.auth-or:after{content:"";background:var(--border);flex:1;height:1px}.auth-tabs{background:var(--bg);border:1px solid var(--border);border-radius:10px;grid-template-columns:1fr 1fr 1fr;gap:.2rem;margin:0 0 1rem;padding:.2rem;display:grid}.auth-tabs button{cursor:pointer;text-align:center;min-width:0;color:var(--muted)!important;background:0 0!important;border:none!important;border-radius:8px!important;padding:.45rem .25rem!important;font-size:.78rem!important;font-weight:600!important}.auth-tabs button.on{box-shadow:0 1px 3px #0005;background:var(--panel)!important;color:var(--text)!important}.auth-tabs button:hover:not(.on){color:var(--text)!important}.auth-fields{flex-direction:column;gap:.75rem;display:flex}.auth-field{color:var(--muted);flex-direction:column;gap:.3rem;margin:0;font-size:.8rem;font-weight:500;display:flex}.auth-field input{background:var(--bg);border:1px solid var(--border);color:var(--text);font:inherit;border-radius:10px;width:100%;padding:.6rem .75rem;font-size:.9rem;font-weight:400}.auth-field input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #5b9dff2e}.auth-field input::placeholder{color:color-mix(in srgb, var(--muted) 75%, transparent)}.auth-message{color:var(--accent);margin:.75rem 0 0;font-size:.85rem;line-height:1.4}.auth-message.error{color:#ff7b72}.auth-actions{flex-direction:column;gap:.55rem;margin-top:1.1rem;display:flex}.auth-submit{cursor:pointer;width:100%;background:var(--accent)!important;color:#061018!important;border:none!important;border-radius:10px!important;padding:.7rem 1rem!important;font-size:.9rem!important;font-weight:700!important}.auth-submit:hover:not(:disabled){filter:brightness(1.06)}.auth-submit:disabled{opacity:.45;cursor:not-allowed;filter:none}.auth-cancel{cursor:pointer;width:100%;color:var(--muted)!important;border:1px solid var(--border)!important;background:0 0!important;border-radius:10px!important;padding:.55rem 1rem!important;font-size:.85rem!important;font-weight:600!important}.auth-cancel:hover{color:var(--text)!important;border-color:var(--muted)!important}.auth-oauth-hint,.auth-set-pw-hint{color:var(--muted);margin:.45rem 0 0;font-size:.72rem;font-weight:400;line-height:1.4}.auth-set-pw{width:100%;font-size:.78rem}.auth-set-pw summary{cursor:pointer;color:var(--accent);font-weight:600}.auth-set-pw input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);font:inherit;border-radius:8px;margin:.4rem 0;padding:.4rem .55rem;display:block}.auth-forgot{cursor:pointer;align-self:flex-start;color:var(--accent)!important;background:0 0!important;border:none!important;padding:0!important;font-size:.78rem!important;font-weight:600!important}.auth-forgot:hover{text-decoration:underline}.auth-avatar{border:1px solid var(--border);width:32px;height:32px;color:var(--text);letter-spacing:.02em;-webkit-user-select:none;user-select:none;background:#ffffff1a;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex;overflow:hidden}.auth-avatar img{object-fit:cover;width:100%;height:100%;display:block}.auth-password-modal{max-width:22rem;padding:1.35rem 1.25rem 1.2rem}.auth-password-modal h2{margin:0 0 .35rem;font-size:1.1rem}.auth-password-actions{flex-wrap:wrap;gap:.45rem;margin-top:.85rem;display:flex}.duplicate-save-backdrop,.duplicate-save-embed{background:#080a0e9e;justify-content:center;align-items:center;padding:1.25rem;display:flex}.duplicate-save-backdrop{z-index:50;padding-top:max(1.25rem, env(safe-area-inset-top,0px));padding-bottom:max(1.25rem, env(safe-area-inset-bottom,0px));position:fixed;inset:0}.duplicate-save-embed{z-index:2;border-radius:12px;position:absolute;inset:0}.duplicate-save-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;width:100%;max-width:20rem;padding:1rem 1.05rem .95rem;box-shadow:0 12px 32px #00000073}.duplicate-save-card h3{margin:0;font-size:.95rem;font-weight:650}.duplicate-save-card p{color:var(--muted);margin:.4rem 0 .85rem;font-size:.82rem;line-height:1.45}.duplicate-save-actions{flex-direction:column;gap:.45rem;display:flex}.duplicate-save-card .duplicate-save-btn{width:100%;min-height:2.6rem;font:inherit;cursor:pointer;white-space:normal;border-radius:8px;padding:.45rem .75rem;font-size:.82rem;font-weight:600}.duplicate-save-card .duplicate-save-btn.primary{background:var(--accent);color:#061018;border:none}.duplicate-save-card .duplicate-save-btn.primary:hover{filter:brightness(1.06)}.duplicate-save-card .duplicate-save-btn.secondary{color:var(--text);border:1px solid var(--border);background:0 0}.duplicate-save-card .duplicate-save-btn.secondary:hover{border-color:var(--muted)}.duplicate-save-card .duplicate-save-btn.ghost{color:var(--muted);border:1px solid var(--border);background:0 0}.duplicate-save-card .duplicate-save-btn.ghost:hover{color:var(--text)}.cloud-save-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;min-width:7.6rem;padding:.4rem .75rem;font-size:.85rem;font-weight:600}.cloud-save-btn:disabled{opacity:1;cursor:default}.cloud-save-unsaved,.cloud-save-unlinked{color:var(--text);border-color:var(--accent)}.cloud-save-error{color:#ff7b72;border-color:#ff7b72}.cloud-save-saved,.cloud-save-saving{color:var(--muted)}.art-bar{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.75rem 0;display:flex}.art-label{color:var(--muted);font-size:.8rem}.art-pills{flex-wrap:wrap;gap:.35rem;display:flex}.art-pills button{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:999px;padding:.25rem .65rem;font-size:.75rem;font-weight:500}.art-pills button.active{background:var(--accent);color:#061018;border-color:#0000}.art-undo{gap:.35rem;margin-left:auto;display:flex}.art-undo button{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.25rem .65rem;font-size:.75rem;font-weight:500}.art-undo button:hover:not(:disabled){border-color:var(--muted)}@media (width<=720px){.art-undo{justify-content:flex-end;width:100%;margin-left:0}}.transport{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:1rem;padding:.75rem 0;display:flex}.play-btn{background:var(--accent);color:#061018;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;padding:0;display:inline-flex}.play-btn.play:hover{filter:brightness(1.08)}.play-btn.stop{background:#ff8a7a}.play-btn.stop:hover{filter:brightness(1.05)}.icon-play{border:8px solid #0000;border-left:14px solid #061018;border-right-width:0;width:0;height:0;margin-left:3px;display:block}.icon-stop{background:#061018;border-radius:1px;width:12px;height:12px;display:block}.transport-field{color:var(--muted);align-items:center;gap:.35rem;font-size:.8rem;display:flex}.transport-field input[type=number],.transport-field input.bpm-text{background:var(--bg);border:1px solid var(--border);width:3.25rem;color:var(--text);font-variant-numeric:tabular-nums;text-align:center;border-radius:6px;padding:.3rem .4rem}.transport-field input[type=range],.transport-field input.bpm-slider{width:7rem;accent-color:var(--accent)}.bpm-field{gap:.45rem}.metro-vol-field input[type=range],.metro-vol-slider{width:5.5rem;accent-color:var(--accent)}.transport-kit-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:8px;padding:.35rem .65rem;font-size:.8rem;font-weight:600}.transport-kit-btn:hover{border-color:var(--muted)}.metro-vol-field:has(input:disabled){opacity:.45}.transport-field select{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:.3rem .4rem}.transport-field.checkbox{gap:.3rem}.muted{color:var(--muted);font-variant-numeric:tabular-nums;min-width:2.5rem}@media (width<=720px){.transport{gap:.55rem .75rem;padding:.55rem 0}.play-btn{width:2.5rem;height:2.5rem}.transport-field input[type=range],.transport-field input.bpm-slider{width:5.25rem}.metro-vol-field input[type=range],.metro-vol-slider{width:4.25rem}}.score-editor{overflow-anchor:none;margin-top:.5rem}.score-editor-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.65rem;display:flex}.score-editor-title-row{align-items:center;gap:.55rem;min-width:0;display:flex}.score-editor-header h2{color:var(--muted);margin:0;font-size:.9rem;font-weight:600}.score-editor-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.score-editor-actions button{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.3rem .65rem;font-size:.8rem;font-weight:500}.score-editor-actions button.primary{background:var(--accent);color:#061018;border-color:#0000;font-weight:600}.score-editor .play-btn-compact{width:2.15rem;height:2.15rem}.score-editor .play-btn-compact .icon-play{border-width:6px 0 6px 11px;margin-left:2px}.score-editor .play-btn-compact .icon-stop{width:9px;height:9px}.score-editor .art-bar{margin:0 0 .55rem}.grid-scroll-status{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.75rem;font-weight:500}.grid-scroll-panel{overflow-anchor:none;overscroll-behavior:contain;background:var(--bg);border:1px solid var(--border);scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#5a6a84 transparent;-webkit-overflow-scrolling:touch;border-radius:10px;max-height:min(75vh,56rem);position:relative;overflow:auto}.grid-scroll-panel::-webkit-scrollbar{width:7px;height:7px}.grid-scroll-panel::-webkit-scrollbar-track{background:#ffffff0a;border-radius:99px}.grid-scroll-panel::-webkit-scrollbar-thumb{background:#5a6a84;border-radius:99px}.grid-scroll-panel::-webkit-scrollbar-thumb:hover{background:var(--muted)}.measure-rows{flex-direction:column;gap:0;min-width:min-content;display:flex}.measure-row{--cell-size:1.7rem;--grid-row-gap:.3rem;--grid-header-h:1rem;--strip-pad-y:.5rem;--strip-header-h:1.85rem;--zebra-alt:#182028;background:var(--bg);border:none;border-radius:0;flex-wrap:nowrap;flex:none;align-items:stretch;gap:0;min-width:min-content;min-height:min-content;display:flex;overflow:visible}.measure-row .grid-editor,.measure-row .grid-editor-inner{min-width:min-content;overflow:visible}.measure-row-labels{padding:var(--strip-pad-y) .4rem var(--strip-pad-y) .55rem;border-right:1px solid var(--border);background:var(--bg);gap:var(--grid-row-gap);box-sizing:border-box;z-index:5;flex-direction:column;flex:0 0 5.25rem;display:flex;position:sticky;left:0;box-shadow:6px 0 10px #00000047}.voice-label-header-spacer{flex:0 0 var(--strip-header-h);height:var(--strip-header-h);min-height:var(--strip-header-h);align-items:center;display:flex}.voice-add-row-btn{border:1px dashed var(--border);width:100%;height:1.45rem;color:var(--muted);cursor:pointer;touch-action:manipulation;background:0 0;border-radius:5px;padding:0 .2rem;font-size:.68rem;font-weight:600;line-height:1}.voice-add-row-btn:hover{color:var(--text);border-color:var(--muted);background:#ffffff0f}.voice-add-row-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.voice-add-row-plus{font-size:1rem;font-weight:700;display:none}.voice-label-beat-spacer{flex:0 0 var(--grid-header-h);height:var(--grid-header-h);min-height:var(--grid-header-h)}.voice-label-row{flex:0 0 var(--cell-size);height:var(--cell-size);min-height:var(--cell-size);color:var(--muted);box-sizing:border-box;cursor:context-menu;border-radius:4px;justify-content:flex-start;align-items:center;gap:.15rem;font-size:.72rem;display:flex}.voice-label-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.voice-label-row.is-alt{background:var(--zebra-alt)}.measure-row-strips{flex-wrap:nowrap;flex:none;justify-content:flex-start;min-width:min-content;display:flex;overflow:visible}.measure-row-cell{flex:none;align-items:stretch;min-width:0;display:flex}.measure-barline{background:var(--border);border-radius:1px;flex:0 0 2px;align-self:stretch;margin:.5rem 0}.measure-strip{width:max-content;min-width:0;max-width:none;padding:var(--strip-pad-y) .65rem;cursor:pointer;box-sizing:border-box;flex-direction:column;flex:none;align-items:stretch;transition:background .12s;display:flex;position:relative;overflow:visible}.measure-strip .grid-editor{width:max-content;margin-top:var(--grid-row-gap)}.measure-strip.active{background:#5b9dff0f;box-shadow:inset 0 0 0 2px #5b9dffb3}.measure-strip.in-repeat:not(.active){background:#5b9dff0b}.measure-strip.repeat-start:after,.measure-strip.repeat-single:after{content:"";pointer-events:none;background:linear-gradient(90deg, var(--text) 0 2px, transparent 2px 3px, var(--text) 3px 4px);opacity:.55;z-index:1;border-radius:1px;width:5px;position:absolute;top:.35rem;bottom:.35rem;left:0}.measure-strip.repeat-end:before,.measure-strip.repeat-single:before{content:"";pointer-events:none;background:linear-gradient(90deg, var(--text) 0 1px, transparent 1px 2px, var(--text) 2px 5px);opacity:.55;z-index:1;border-radius:1px;width:5px;position:absolute;top:.35rem;bottom:.35rem;right:0}.repeat-badge{min-width:1.35rem;height:1.15rem;color:var(--accent);font-variant-numeric:tabular-nums;background:#5b9dff33;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0 .28rem;font-size:.68rem;font-weight:700;line-height:1;display:inline-flex}.measure-strip.is-playing:not(.active){box-shadow:inset 0 0 0 2px #5b9dff66}.measure-strip.flash-focus{animation:.85s grid-focus-flash}@keyframes grid-focus-flash{0%{box-shadow:inset 0 0 0 2px var(--accent)}to{box-shadow:inset 0 0 0 2px #5b9dffb3}}.measure-strip-header{height:var(--strip-header-h);min-height:var(--strip-header-h);max-height:var(--strip-header-h);box-sizing:border-box;flex-wrap:nowrap;align-items:center;gap:.35rem .45rem;width:0;min-width:100%;margin-bottom:0;padding-right:0;display:flex;overflow:hidden;container:measure-header/inline-size}.measure-drag-handle{width:1.15rem;height:1.35rem;color:var(--muted);letter-spacing:-.06em;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin:0 -.1rem 0 0;font-size:.85rem;line-height:1;display:inline-flex}.measure-drag-handle:hover{color:var(--text);background:#ffffff0f}.measure-drag-handle:active{cursor:grabbing}.score-editor.is-reordering{-webkit-user-select:none;user-select:none}.score-editor.notation-collapsed .grid-scroll-panel{max-height:min(88vh,72rem)}.measure-strip.dragging{opacity:.45;outline:1px dashed var(--accent);outline-offset:-2px}.score-editor.is-reordering .measure-strip.drop-target{cursor:grab}.measure-strip.drop-insert-before:before,.measure-strip.drop-insert-after:after{content:"";background:var(--accent);z-index:6;pointer-events:none;border-radius:2px;width:3px;position:absolute;top:.3rem;bottom:.3rem;box-shadow:0 0 0 1px #5b9dff59}.measure-strip.drop-insert-before:before{left:2px}.measure-strip.drop-insert-after:after{right:2px}.measure-strip-header strong{font-variant-numeric:tabular-nums;color:var(--muted);min-width:1rem;font-size:.8rem}.measure-strip-header .label-input{background:var(--panel);border:1px solid var(--border);color:var(--text);border-radius:5px;flex:2rem;min-width:0;max-width:7rem;padding:.2rem .35rem;font-size:.75rem}.measure-strip-header select{background:var(--panel);border:1px solid var(--border);color:var(--text);border-radius:5px;flex-shrink:0;padding:.18rem .25rem;font-size:.72rem}.measure-clear-btn{background:var(--panel);border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:5px;flex-shrink:0;padding:.18rem .4rem;font-size:.72rem;font-weight:500}.measure-clear-btn:hover:not(:disabled){color:var(--text);border-color:var(--muted)}.measure-clear-btn:disabled{opacity:.35;cursor:not-allowed}.measure-more-btn{width:1.45rem;height:1.45rem;color:var(--muted);letter-spacing:.02em;background:0 0;border:1px solid #0000;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1rem;font-weight:700;line-height:1;display:inline-flex}.measure-more-btn:hover{color:var(--text);border-color:var(--border);background:#ffffff0f}@container measure-header (width<=24rem){.measure-clear-btn{display:none}.label-input{min-width:0;max-width:4.5rem}}@container measure-header (width<=20rem){.label-input{display:none}}.measure-strip-header:has(.repeat-badge) .label-input{max-width:3.25rem}.bar-clipboard-status{color:var(--muted);background:#5b9dff14;border:1px solid #5b9dff40;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem .75rem;margin:0 0 .55rem;padding:.35rem .55rem;font-size:.78rem;display:flex}.bar-clipboard-status strong{color:var(--accent);font-weight:600}.bar-clipboard-clear{border:1px solid var(--border);color:var(--muted);background:0 0;border-radius:5px;padding:.15rem .45rem;font-size:.72rem;font-weight:500}.bar-clipboard-clear:hover{color:var(--text)}.measure-delete-x{width:1.4rem;height:1.4rem;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;margin-left:.05rem;padding:0;font-size:1.1rem;line-height:1;display:inline-flex;position:static}.measure-delete-x:hover:not(:disabled){color:#ff7b72;background:#ff7b722e}.measure-delete-x:disabled{opacity:.25;cursor:not-allowed}@media (width<=800px){.measure-row{--cell-size:1.45rem;--strip-header-h:1.7rem}.measure-row-labels{flex:0 0 4.4rem;padding-left:.35rem;padding-right:.3rem}.voice-label-row{font-size:.65rem}.voice-add-row-text{display:none}.voice-add-row-plus{display:inline}.measure-strip{padding-left:.4rem;padding-right:.4rem}.measure-row .grid-editor{--cell-size:1.45rem}}.staff-score{color:#111;overflow-anchor:none;background:#f7f4ef;border-radius:10px;margin-top:1rem;padding:.55rem 1.25rem 1rem}.staff-score.is-dark{color:#dce3ee;background:#1a1f29}.staff-score.is-dark .staff-score-header{color:#b4bdc9}.staff-score.is-dark .staff-error{color:#ff8a80}.staff-score.is-dark .staff-svg-mount{filter:invert()hue-rotate(180deg)}.staff-score-header{color:#444;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;font-size:.8rem;font-weight:600;display:flex}.staff-collapse-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.35rem;margin:0;padding:.15rem .3rem .15rem .15rem;font-weight:600;display:inline-flex}.staff-collapse-btn:hover{background:#0000000f}.staff-score.is-dark .staff-collapse-btn:hover{background:#ffffff14}.staff-collapse-chevron{text-align:center;width:.75rem;font-size:.72rem;line-height:1;display:inline-block}.staff-score.is-collapsed{padding-bottom:.45rem}.staff-score.is-collapsed .staff-score-header{margin-bottom:0}.staff-score:not(.is-collapsed) #staff-notation-body{min-height:136px}.staff-export-actions{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.staff-zoom-pct{font-variant-numeric:tabular-nums;text-align:center;min-width:2.4rem;color:inherit;font-size:.72rem;font-weight:600}.staff-legend{background:0 0;border:none;margin:0 0 .15rem;padding:0}.staff-legend-system{margin:0}.staff-legend-caption{letter-spacing:.03em;text-transform:uppercase;color:#666;padding:0;font-size:.68rem;font-weight:700;line-height:1.2}.staff-score.is-dark .staff-legend-caption{color:#b4bdc9}.staff-legend-host{min-height:0}.export-pdf-btn.is-on{background:#3a465c;box-shadow:inset 0 0 0 1px #5b9dffb3}.staff-score:not(.is-dark) .export-pdf-btn.is-on{color:#e8eef8;background:#3a465c}.export-pdf-btn{color:#e8eef8;cursor:pointer;background:#2a3344;border:none;border-radius:6px;padding:.35rem .7rem;font-size:.75rem;font-weight:600}.export-pdf-btn:hover:not(:disabled){background:#3a465c}.export-pdf-btn:disabled{opacity:.5;cursor:not-allowed}.staff-systems{flex-direction:column;align-items:stretch;gap:0;width:100%;display:flex;overflow-x:hidden}.staff-system{width:100%;min-width:0;max-width:100%;margin-inline:auto;overflow-x:auto}.staff-stage{width:100%;min-height:168px;position:relative}.staff-system.is-sparse .staff-stage,.staff-system.is-sparse .staff-svg-host{min-height:136px}.staff-svg-host{cursor:pointer;-webkit-user-select:none;user-select:none;width:100%;min-width:0;max-width:100%;min-height:168px;line-height:0;position:relative}.staff-bar-select{pointer-events:none;z-index:3;background:#5b9dff1f;border-radius:6px;position:absolute;top:8px;bottom:8px;box-shadow:inset 0 0 0 2px #468cff73}.staff-bar-select.flash-focus{animation:.85s staff-focus-flash}@keyframes staff-focus-flash{0%{box-shadow:inset 0 0 0 2px var(--accent);background:#5b9dff47}to{background:#5b9dff1f;box-shadow:inset 0 0 0 2px #468cff73}}.staff-svg-mount{width:100%;min-width:0;max-width:100%;line-height:0}.staff-svg-mount>[data-note-start-x]{width:100%;min-width:0;max-width:100%}.staff-svg-host svg,.staff-svg-mount svg{-webkit-user-select:none;user-select:none;width:100%;min-width:0;max-width:100%;height:auto;display:block}.staff-playhead{pointer-events:none;z-index:4;background:#5b9dff29;border-radius:6px;position:absolute;top:8px;bottom:8px;box-shadow:inset 0 0 0 2px #468cff73}.staff-error{color:#b00020;font-size:.75rem}.measure-row-labels{z-index:5;background:var(--bg)}.voice-label-row{cursor:context-menu;justify-content:flex-start}.voice-hide-btn{display:none!important}.playhead-beat.is-under-labels{opacity:0!important;visibility:hidden!important}.grid-editor{--cell-gap:.18rem;--beat-gap:.7rem;--grid-row-gap:.3rem;--grid-header-h:1rem;--cell-ring-pad:3px;-webkit-user-select:none;user-select:none;touch-action:pan-x pan-y;padding:0;overflow:hidden visible}.grid-editor.painting,.grid-editor.painting .cell{cursor:crosshair}.grid-editor-inner{gap:var(--grid-row-gap);min-width:0;padding-left:var(--cell-ring-pad);padding-right:var(--cell-ring-pad);box-sizing:border-box;flex-direction:column;display:flex;position:relative}.grid-row.header-row{height:var(--grid-header-h);min-height:var(--grid-header-h)}.playhead-beat{pointer-events:none;z-index:4;background:#5b9dff1f;border-radius:8px;position:absolute;top:0;bottom:0;box-shadow:inset 0 0 0 2px #468cff66}.grid-row{gap:var(--cell-gap);align-items:center;display:grid}.voice-label{color:var(--muted);white-space:nowrap;font-size:.75rem}.col-head{width:var(--cell-size);height:var(--grid-header-h);text-align:center;color:var(--muted);font-size:.65rem;line-height:var(--grid-header-h)}.col-head-beat{font:inherit;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:0;font-size:.68rem;font-weight:700}.col-head-beat:hover{background:var(--cell-hover)}.col-head-beat.is-tuplet{color:var(--accent)}.col-head-beat.is-open{box-shadow:inset 0 0 0 1px var(--accent)}.col-head-beat.is-playing{color:var(--accent,#5b9dff)}.beat-spacer{width:var(--beat-gap);min-width:var(--beat-gap);pointer-events:none}.cell{width:var(--cell-size);min-width:var(--cell-size);max-width:var(--cell-size);height:var(--cell-size);background:var(--cell);border:1px solid var(--border);cursor:pointer;touch-action:pan-x pan-y;box-sizing:border-box;border-radius:5px;padding:0}.cell:focus{outline:none}.cell:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cell:hover{background:var(--cell-hover)}.cell.on{background:var(--cell-on);border-color:#0000}.cell.playing:not(.on){background:#5b9dff29}.cell.on.playing{box-shadow:0 0 0 2px #5b9dffd9}.cell.on.art-ghost{opacity:.65;background:#7aa2c8}.cell.on.art-accent{background:#ffb454}.cell.on.art-flam{background:#e6c36a}.cell.on.art-crossStick{background:#9aa7bc}.cell.on.art-open{background:#56d364}.cell.on.art-closed{background:#5b9dff}.cell.on.art-bell{background:#c792ea}.cell.in-tuplet{border-style:dashed}.cell-context-menu{z-index:1000;background:var(--panel,#171c26);border:1px solid var(--border,#2a3344);border-radius:8px;flex-direction:column;gap:.1rem;min-width:9.5rem;padding:.3rem;display:flex;position:fixed;box-shadow:0 8px 28px #00000073}.cell-context-menu-title{color:var(--muted,#8b97ab);border-bottom:1px solid var(--border,#2a3344);margin-bottom:.15rem;padding:.25rem .45rem .35rem;font-size:.68rem;font-weight:600}.cell-context-menu button{text-align:left;width:100%;color:var(--text,#e8eef8);cursor:pointer;background:0 0;border:none;border-radius:5px;justify-content:space-between;align-items:center;gap:.85rem;padding:.35rem .5rem;font-size:.8rem;font-weight:500;display:flex}.cell-context-menu .menu-shortcut{font:inherit;color:var(--muted,#8b97ab);flex-shrink:0;font-size:.68rem;font-weight:600}.cell-context-menu button:hover{background:var(--cell-hover,#2a3548)}.cell-context-menu button.active{background:var(--accent,#5b9dff);color:#061018;font-weight:600}.cell-context-menu button:disabled{opacity:.4;cursor:not-allowed}.cell-context-menu-sep{background:var(--border,#2a3344);height:1px;margin:.25rem .3rem}.repeat-menu-row{padding:.2rem .45rem .3rem}.repeat-menu-label{color:var(--muted,#8b97ab);align-items:center;gap:.35rem;font-size:.78rem;font-weight:600;display:flex}.repeat-menu-label input{background:var(--bg,#0f141c);width:3.4rem;color:var(--text,#e8eef8);border:1px solid var(--border,#2a3344);border-radius:5px;padding:.2rem .3rem;font-size:.8rem;font-weight:600}.sticking-row{margin-top:.15rem}.sticking-cell{font-variant-numeric:tabular-nums;color:var(--muted);border:1px dashed var(--border);background:0 0;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:flex}.sticking-cell:hover{background:var(--cell-hover);color:var(--text,#e8e8e8)}.sticking-cell.on{color:#0d1117;border-style:solid}.sticking-cell.stick-R{background:#79c0ff;border-color:#0000}.sticking-cell.stick-L{background:#d2a8ff;border-color:#0000}.sticking-cell.stick-both{background:#ffa657;border-color:#0000}.sticking-cell.disabled,.sticking-cell:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.modal-backdrop{z-index:50;padding:1rem;padding-top:max(1rem, env(safe-area-inset-top,0px));padding-bottom:max(1rem, env(safe-area-inset-bottom,0px));background:#000a;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--panel);border:1px solid var(--border);border-radius:12px;width:100%;max-width:32rem;padding:1.25rem}.modal h2{margin:0 0 .5rem}.modal textarea{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);resize:vertical;border-radius:8px;padding:.6rem;font-family:ui-monospace,monospace;font-size:.75rem}.modal-actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.modal-actions button.ghost{color:var(--muted);border:1px solid var(--border);background:0 0}.modal .error{color:#ff7b72}.modal .muted{color:var(--muted);font-size:.85rem}.share-divider{border:none;border-top:1px solid var(--border);margin:1rem 0 .75rem}.share-fallback-label{margin-bottom:.35rem}.share-fallback-url{opacity:.75;max-height:4.5rem}.kit-backdrop{padding-left:max(4.5rem, env(safe-area-inset-left,0px) + 2rem);padding-right:max(4.5rem, env(safe-area-inset-right,0px) + 2rem)}.modal.kit-modal{flex-direction:column;width:100%;max-width:56rem;min-height:0;max-height:min(62rem,100dvh - 4rem);padding:0;display:flex;overflow:hidden}.kit-modal-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding:0;overflow:hidden auto}.kit-modal-body{padding:1.35rem 3.75rem 1.4rem}.kit-modal h2{margin:0 0 .35rem;font-size:1.15rem}.kit-modal h3{margin:0 0 .25rem;font-size:.85rem;font-weight:700}.kit-sub{color:var(--muted);margin:0 0 .85rem;font-size:.8rem;line-height:1.4}.kit-picker{grid-template-columns:1fr 1fr;gap:.45rem;margin-bottom:.95rem;display:grid}.kit-card{text-align:left;border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;border-radius:10px;padding:.55rem .65rem .6rem}.kit-card:hover:not(:disabled){border-color:var(--muted)}.kit-card.is-selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.kit-card:disabled{opacity:.55;cursor:not-allowed}.kit-card-name{font-size:.88rem;font-weight:700;display:block}.kit-card-blurb{color:var(--muted);margin-top:.15rem;font-size:.7rem;line-height:1.35;display:block}.kit-row-toggles{grid-template-columns:1fr 1fr;gap:.15rem .65rem;margin:0 0 .95rem;display:grid}.kit-row-toggle{cursor:pointer;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;display:flex}.kit-row-toggle.is-extra{color:var(--muted)}.kit-row-toggle input{margin:0}.kit-custom-head,.kit-voices-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.kit-custom-head{margin-top:.15rem}.kit-save-row{flex-wrap:wrap;align-items:center;gap:.35rem;margin:0 0 .55rem;display:flex}.kit-name-input{background:var(--bg);border:1px solid var(--border);min-width:8rem;color:var(--text);border-radius:7px;flex:10rem;padding:.32rem .5rem;font-size:.8rem;font-weight:600}.kit-custom-picker{margin-bottom:.95rem}.kit-custom-card{flex-direction:column;gap:.3rem;min-width:0;display:flex}.kit-card-tools{flex-wrap:wrap;gap:.3rem;display:flex}.kit-custom-head button,.kit-save-row button,.kit-card-tools button{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:7px;padding:.3rem .55rem;font-size:.75rem;font-weight:600}.kit-custom-head button:hover:not(:disabled),.kit-save-row button:hover:not(:disabled),.kit-card-tools button:hover:not(:disabled){border-color:var(--muted)}.kit-custom-head button:disabled,.kit-save-row button:disabled,.kit-card-tools button:disabled{opacity:.4;cursor:not-allowed}.kit-voices-head button{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:7px;padding:.3rem .55rem;font-size:.75rem;font-weight:600}.kit-hint{color:var(--muted);margin:0 0 .45rem;font-size:.72rem;line-height:1.4}.kit-hint code{font-size:.68rem}.kit-list{border:1px solid var(--border);background:var(--bg);border-radius:10px;flex:none;width:100%;min-width:0;margin:0;padding:0;list-style:none;overflow:visible}.kit-row{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.4rem .55rem;padding:.55rem .65rem;display:flex}.kit-row:last-child{border-bottom:none}.kit-row-label{flex:6rem;min-width:0;font-size:.85rem;font-weight:600}.kit-source{background:var(--bg);border:1px solid var(--border);min-width:6.5rem;color:var(--text);border-radius:7px;flex:0 8.5rem;padding:.28rem .4rem;font-size:.75rem;font-weight:600}.kit-source:disabled{opacity:.55;cursor:not-allowed}.kit-row-gain{flex:8.5rem;align-items:center;gap:.35rem;min-width:7.5rem;display:flex}.kit-row-gain input[type=range]{min-width:4.5rem;accent-color:var(--accent);flex:auto}.kit-row-gain-val{font-variant-numeric:tabular-nums;color:var(--muted);text-align:right;flex:0 0 2.7rem;font-size:.7rem;font-weight:600}.kit-row-actions{flex-wrap:wrap;gap:.3rem;display:flex}.kit-row-actions button,.kit-footer button,.kit-voices-head button{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:7px;padding:.3rem .55rem;font-size:.75rem;font-weight:600}.kit-row-actions button:hover:not(:disabled),.kit-footer button:hover:not(:disabled),.kit-voices-head button:hover:not(:disabled){border-color:var(--muted)}.kit-row-actions button:disabled,.kit-footer button:disabled,.kit-voices-head button:disabled{opacity:.4;cursor:not-allowed}.kit-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem;margin-top:.85rem;display:flex}.kit-footer-left{flex-wrap:wrap;gap:.35rem;display:flex}.kit-msg{color:var(--accent);margin:.5rem 0 0;font-size:.8rem}.kit-msg.error{color:#ff7b72}.kit-attr{color:var(--muted);margin:.65rem 0 0;font-size:.72rem;line-height:1.4}.kit-attr a{color:var(--accent)}@media (width<=720px){.kit-backdrop{padding-left:max(2.25rem, env(safe-area-inset-left,0px) + 1rem);padding-right:max(2.25rem, env(safe-area-inset-right,0px) + 1rem)}}@media (width<=520px){.kit-backdrop{padding-left:max(1.25rem, env(safe-area-inset-left,0px));padding-right:max(1.25rem, env(safe-area-inset-right,0px))}.modal.kit-modal{max-height:min(62rem,100dvh - 2.5rem)}.kit-modal-body{padding:1.1rem 1.6rem 1.15rem}.kit-picker{grid-template-columns:1fr}}.preset-modal{max-width:24rem;padding:1.25rem 1.2rem 1.1rem}.preset-header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.85rem;display:flex}.preset-header h2{margin:0;font-size:1.15rem}.preset-sub{color:var(--muted);margin:.25rem 0 0;font-size:.8rem;line-height:1.4}.preset-close-x{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:inline-flex}.preset-close-x:hover{color:var(--text);background:#ffffff0f}.preset-list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.preset-item{text-align:left;border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);cursor:pointer;border-radius:10px;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.7rem .8rem;display:flex}.preset-item:hover{border-color:var(--accent)}.preset-item-title{font-size:.95rem;font-weight:650}.preset-item-desc{color:var(--muted);font-size:.78rem;line-height:1.4}.modal.library-modal{flex-direction:column;width:100%;max-width:44rem;height:min(48rem,100dvh - 2rem);max-height:min(48rem,100dvh - 2rem);padding:1.35rem 1.25rem 1.15rem;display:flex;position:relative}.library-modal button{color:inherit;font:inherit;box-shadow:none;background:0 0;border:none;border-radius:0;padding:0;font-size:.85rem;font-weight:600}.library-header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.85rem;display:flex}.library-header h2{letter-spacing:-.02em;margin:0;font-size:1.2rem}.library-sub{color:var(--muted);margin:.25rem 0 0;font-size:.8rem;line-height:1.4}.library-close-x{cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.25rem;display:inline-flex;color:var(--muted)!important;border-radius:8px!important}.library-close-x:hover{color:var(--text)!important;background:#ffffff0f!important}.library-actions{flex-wrap:wrap;gap:.45rem;margin-bottom:.9rem;display:flex}.library-btn{cursor:pointer;border-radius:8px!important;padding:.45rem .75rem!important;font-size:.82rem!important;font-weight:600!important}.library-btn.primary{background:var(--accent)!important;color:#061018!important;border:none!important}.library-btn.primary:hover:not(:disabled){filter:brightness(1.06)}.library-btn.secondary{color:var(--text)!important;border:1px solid var(--border)!important;background:0 0!important}.library-btn.secondary:hover:not(:disabled){border-color:var(--muted)!important}.library-btn.danger{color:#ff7b72!important;background:0 0!important;border:1px solid #ff7b7259!important}.library-btn.danger:hover:not(:disabled){background:#ff7b721a!important}.library-btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.library-status{color:var(--accent);margin:0 0 .65rem;font-size:.82rem;line-height:1.4}.library-status.error{color:#ff7b72}.library-list-wrap{border:1px solid var(--border);background:var(--bg);border-radius:10px;flex:1;min-height:0;overflow:auto}.library-empty{text-align:center;color:var(--muted);margin:0;padding:1.5rem 1rem;font-size:.85rem;line-height:1.45}.library-list{margin:0;padding:0;list-style:none}.library-item{border-bottom:1px solid var(--border);align-items:center;gap:.65rem;padding:.65rem .75rem;display:flex}.library-item:last-child{border-bottom:none}.library-item.current{background:#5b9dff14}.library-item-main{flex:1;min-width:0}.library-item-title{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;display:block;overflow:hidden}.library-item-meta{color:var(--muted);margin-top:.15rem;font-size:.72rem;display:block}.library-item-actions{flex-shrink:0;align-items:center;gap:.45rem;display:flex}.library-open-btn{cursor:pointer;min-width:4.25rem;min-height:2.5rem;background:var(--accent)!important;color:#061018!important;border:none!important;border-radius:8px!important;padding:.45rem .85rem!important;font-size:.8rem!important}.library-open-btn:hover:not(:disabled){filter:brightness(1.06)}.library-open-btn:disabled{opacity:.4;cursor:not-allowed;filter:none}.library-more{position:relative}.library-more-btn{cursor:pointer;min-width:2.5rem;min-height:2.5rem;border:1px solid var(--border)!important;color:var(--muted)!important;border-radius:8px!important;font-size:1.15rem!important;line-height:1!important}.library-more-btn:hover:not(:disabled){color:var(--text)!important;border-color:var(--muted)!important}.library-more-menu{z-index:4;background:var(--panel);border:1px solid var(--border);border-radius:8px;min-width:10.5rem;padding:.3rem;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #00000073}.library-more-menu button{text-align:left;cursor:pointer;width:100%;display:block;border-radius:6px!important;padding:.55rem .65rem!important;font-size:.8rem!important}.library-more-menu button.danger{color:#ff7b72!important}.library-more-menu button.danger:hover:not(:disabled){background:#ff7b721f!important}.library-footer{color:var(--muted);margin-top:.85rem;font-size:.75rem;line-height:1.4}.library-footer strong{color:var(--text);font-weight:600}.library-gate{padding:.5rem 0 .25rem}.library-gate p{color:var(--muted);margin:0 0 .75rem;font-size:.9rem;line-height:1.45}.library-confirm{z-index:2;background:#080a0e9e;border-radius:12px;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:absolute;inset:0}.library-confirm-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;width:100%;max-width:18.5rem;padding:1rem 1.05rem .95rem;box-shadow:0 12px 32px #00000073}.library-confirm-card h3{margin:0;font-size:.95rem;font-weight:650}.library-confirm-card p{color:var(--muted);margin:.4rem 0 .85rem;font-size:.82rem;line-height:1.45}.library-confirm-actions{flex-direction:column-reverse;gap:.55rem;display:flex}.library-confirm-actions .library-btn{width:100%;min-height:2.6rem}.upgrade-modal{background:radial-gradient(120% 80% at 100% 0%, color-mix(in srgb, var(--accent,#6ea8fe) 18%, transparent), transparent 55%), var(--panel);max-width:26rem;padding:1.5rem 1.4rem 1.25rem}.upgrade-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--accent,#6ea8fe);margin:0 0 .45rem;font-size:.95rem;font-weight:700}.upgrade-modal h2{margin:0 0 .55rem;font-size:1.35rem;line-height:1.25}.upgrade-lead{color:var(--muted);margin:0 0 1.1rem;font-size:.92rem;line-height:1.45}.upgrade-features{flex-direction:column;gap:.7rem;margin:0 0 1.15rem;padding:0;list-style:none;display:flex}.upgrade-features li{grid-template-columns:1.35rem 1fr;align-items:start;gap:.55rem;display:grid}.upgrade-check{box-sizing:border-box;background:color-mix(in srgb, var(--accent,#5b9dff) 22%, transparent);width:1.25rem;height:1.25rem;color:var(--accent,#5b9dff);border-radius:999px;place-items:center;margin-top:.12rem;line-height:0;display:inline-grid}.upgrade-check svg{display:block}.upgrade-features strong{margin-bottom:.1rem;font-size:.92rem;display:block}.upgrade-features span{color:var(--muted);font-size:.82rem;line-height:1.35;display:block}.upgrade-pricing{grid-template-columns:1fr 1fr;gap:.55rem;margin-bottom:1.1rem;display:grid}.upgrade-price{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 70%, var(--panel));border-radius:10px;padding:.7rem .75rem;position:relative}.upgrade-price-alt{border-color:color-mix(in srgb, var(--accent,#6ea8fe) 45%, var(--border))}.upgrade-price-amount{letter-spacing:-.02em;font-size:1.25rem;font-weight:700}.upgrade-price-period{color:var(--muted);margin-left:.15rem;font-size:.82rem}.upgrade-price-badge{background:color-mix(in srgb, var(--accent,#6ea8fe) 20%, transparent);color:var(--accent,#6ea8fe);border-radius:999px;margin-top:.35rem;padding:.12rem .4rem;font-size:.68rem;font-weight:650;display:inline-block}.upgrade-actions{align-items:center;margin-top:0}.upgrade-actions .upgrade-primary,.upgrade-actions .ghost{border-radius:10px;padding:.65rem 1.05rem;transition:transform .15s,filter .15s,box-shadow .15s,background-color .15s,border-color .15s,color .15s}.upgrade-actions .upgrade-primary{background:linear-gradient(180deg, #7eb2ff 0%, var(--accent,#5b9dff) 100%);color:#0b1220;border:1px solid color-mix(in srgb, #fff 18%, var(--accent,#5b9dff));box-shadow:0 1px 0 #ffffff38 inset, 0 8px 18px color-mix(in srgb, var(--accent,#5b9dff) 28%, transparent);font-weight:650}.upgrade-actions .upgrade-primary:hover{filter:brightness(1.08);box-shadow:0 1px 0 #ffffff47 inset, 0 12px 24px color-mix(in srgb, var(--accent,#5b9dff) 38%, transparent);transform:translateY(-1px)}.upgrade-actions .upgrade-primary:active{filter:brightness(.98);box-shadow:0 1px 0 #ffffff24 inset, 0 4px 10px color-mix(in srgb, var(--accent,#5b9dff) 22%, transparent);transform:translateY(0)}.upgrade-actions .ghost:hover{color:var(--text);border-color:color-mix(in srgb, var(--accent,#5b9dff) 35%, var(--border));background:color-mix(in srgb, var(--accent,#5b9dff) 10%, transparent);transform:translateY(-1px)}.upgrade-actions .ghost:active{transform:translateY(0)}@media (width<=420px){.upgrade-pricing{grid-template-columns:1fr}}.settings-modal{flex-direction:column;max-width:44rem;max-height:min(48rem,100vh - 2rem);padding:1.85rem 1.75rem 1.6rem;display:flex}.settings-modal button{color:inherit;font:inherit;box-shadow:none;background:0 0;border:none;border-radius:0;padding:0;font-size:.85rem;font-weight:600}.settings-header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1.1rem;display:flex}.settings-header h2{letter-spacing:-.02em;margin:0;font-size:1.2rem}.settings-sub{color:var(--muted);margin:.3rem 0 0;font-size:.8rem;line-height:1.45}.settings-close-x{cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.25rem;display:inline-flex;color:var(--muted)!important;border-radius:8px!important}.settings-close-x:hover{color:var(--text)!important;background:#7f7f7f1f!important}.settings-body{flex-direction:column;gap:1.65rem;padding-right:.2rem;display:flex;overflow-y:auto}.settings-section h3{letter-spacing:-.01em;color:var(--text);margin:0 0 .65rem;font-size:1rem;font-weight:700}.settings-subhead{color:var(--muted);margin:0 0 .4rem;font-size:.86rem;font-weight:600}.settings-subsection{margin-top:1.25rem}.settings-subsection:first-child{margin-top:0}.settings-muted{color:var(--muted);margin:0 0 .7rem;font-size:.8rem;line-height:1.45}.settings-choice{flex-direction:column;gap:.6rem;display:flex}.settings-seg{flex-wrap:nowrap;gap:.35rem;display:flex}.settings-seg-btn{cursor:pointer;flex:1 1 0;border:1px solid var(--border)!important;color:var(--text)!important;background:0 0!important;border-radius:8px!important;padding:.5rem .3rem!important;font-size:.8rem!important;font-weight:600!important}.settings-seg-btn.on{background:var(--accent)!important;color:#061018!important;border-color:#0000!important}.settings-choice-item{border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:flex-start;gap:.6rem;padding:.7rem .75rem;display:flex}.settings-choice-item.on{border-color:var(--accent);background:#5b9dff1a}.settings-choice-item input{margin-top:.2rem}.settings-choice-item strong{color:var(--text);font-size:.86rem;display:block}.settings-choice-item em{color:var(--muted);margin-top:.15rem;font-size:.75rem;font-style:normal;line-height:1.4;display:block}.shortcuts-modal{max-width:26rem}.shortcuts-table{border-collapse:collapse;width:100%;font-size:.85rem}.shortcuts-table th{text-align:left;white-space:nowrap;vertical-align:top;width:42%;padding:.28rem .75rem .28rem 0;font-weight:600}.shortcuts-table td{color:var(--muted);padding:.28rem 0}.shortcuts-table kbd{color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;font-weight:600}.shortcuts-extra{margin:.85rem 0 0}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.video-export-modal{max-width:52rem;max-height:none;overflow:visible}.video-export-body{grid-template-columns:minmax(0,1fr) 16.5rem;align-items:start;gap:.65rem 1.25rem;margin-bottom:.35rem;display:grid}.video-export-fields{min-width:0}.video-export-side{flex-direction:column;gap:.65rem;min-width:0;display:flex}.video-export-sub{color:var(--muted);margin:0 0 .7rem;font-size:.85rem;line-height:1.4}.video-export-field{color:var(--muted);flex-direction:column;gap:.3rem;margin-bottom:.5rem;font-size:.8rem;font-weight:500;display:flex}.video-export-fields>.video-export-field:last-child,.video-export-side>.video-export-field:last-child{margin-bottom:0}.video-export-pair{grid-template-columns:1fr 1fr;gap:.5rem .75rem;margin-bottom:.5rem;display:grid}.video-export-pair>.video-export-field{margin-bottom:0}.video-export-seg{flex-wrap:nowrap;gap:.3rem;display:flex}.video-export-seg-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:8px;flex:1 1 0;padding:.45rem .3rem;font-size:.8rem;font-weight:600}.video-export-seg-btn.on{background:var(--accent);color:#061018;border-color:#0000}.video-export-seg-btn:disabled{opacity:.45;cursor:not-allowed}.video-export-hint{color:var(--muted);font-size:.75rem;font-weight:400}.video-export-choice{flex-direction:column;gap:.35rem;display:flex}.video-export-choice-item{border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:flex-start;gap:.5rem;padding:.4rem .55rem;display:flex}.video-export-choice-item.on{border-color:var(--accent);background:#5b9dff1a}.video-export-choice-item input{margin-top:.2rem}.video-export-choice-item strong{color:var(--text);font-size:.86rem;display:block}.video-export-choice-item em{color:var(--muted);font-size:.75rem;font-style:normal;display:block}.video-export-preview-wrap{flex-direction:column;flex:none;align-items:center;gap:.45rem;margin:0;display:flex}.video-export-preview{border:1px solid var(--border);background:#0f1218;border-radius:10px;width:10.5rem;line-height:0;overflow:hidden}.video-export-preview.is-landscape{width:16rem}@media (width<=44rem){.video-export-modal{max-width:28rem}.video-export-body{grid-template-columns:1fr}.video-export-preview,.video-export-preview.is-landscape{width:min(100%,14rem)}}.video-export-preview canvas{width:100%;height:auto;display:block}.video-export-progress{background:var(--cell);border-radius:99px;width:min(100%,18rem);height:6px;overflow:hidden}.video-export-progress>span{background:var(--accent);border-radius:99px;height:100%;display:block}.video-export-status{color:var(--muted);text-align:center;margin:0;font-size:.8rem}.video-export-error{color:#ff7b72;margin:0 0 .5rem;font-size:.85rem}.video-export-modal .modal-actions button:not(.ghost){background:var(--accent);color:#061018;border:none;border-radius:8px;padding:.45rem .85rem;font-weight:600}.video-export-modal .modal-actions button.ghost{color:var(--muted);border:1px solid var(--border);background:0 0;border-radius:8px;padding:.45rem .85rem;font-weight:600}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1218;--panel:#171c26;--border:#2a3344;--text:#e8eef8;--muted:#8b97ab;--accent:#5b9dff;--cell:#1e2633;--cell-on:#5b9dff;--cell-hover:#2a3548;font-family:IBM Plex Sans,system-ui,-apple-system,sans-serif;line-height:1.4}*{box-sizing:border-box}html{overflow-x:hidden}body{background:radial-gradient(1200px 600px at 10% -10%, #1a2740 0%, var(--bg) 55%);color:var(--text);min-height:100dvh;margin:0;overflow-x:hidden}button{cursor:pointer;font:inherit}button:disabled{opacity:.4;cursor:not-allowed}.app{max-width:92rem;margin:0 auto;padding:1.5rem 1.25rem 3rem}.header{flex-flow:row;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin-bottom:1.25rem;display:flex}.brand{min-width:0}.brand-lockup{min-width:0;font-size:inherit;font-weight:inherit;align-items:center;gap:.65rem;margin:0;display:flex}.brand-mark{width:2.45rem;height:2.45rem;color:var(--accent);flex-shrink:0}.brand-wordmark{object-fit:contain;object-position:left center;width:auto;max-width:min(12.5rem,48vw);height:2.15rem;display:block}.header h1{letter-spacing:-.03em;white-space:nowrap;margin:0;font-size:1.75rem}.tagline{color:var(--muted);margin:.3rem 0 0;font-size:.95rem}.header-actions{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:.4rem;display:flex}.boot-banner{color:var(--muted);background:#5b9dff1a;border:1px solid #5b9dff40;border-radius:8px;margin:0 0 .75rem;padding:.5rem .75rem;font-size:.85rem}.plan-cap-banner{color:var(--text);background:#5b9dff1f;border:1px solid #5b9dff59;border-radius:8px;margin:0 0 .75rem;padding:.7rem .85rem;font-size:.9rem}.plan-cap-banner p{margin:0}.plan-cap-banner-actions{flex-wrap:wrap;gap:.4rem;margin-top:.55rem;display:flex}.header-actions>button,.header-actions>.header-menu>button:not(.auth-avatar-trigger):not(.header-menu-trigger),.meta-row button{background:var(--accent);color:#061018;white-space:nowrap;border:none;border-radius:8px;padding:.4rem .75rem;font-size:.85rem;font-weight:600}.header-actions>button.ghost,.header-actions>.header-menu>button.ghost:not(.auth-avatar-trigger),.meta-row button.ghost{color:var(--text);border:1px solid var(--border);background:0 0}.panel{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:1rem 1.15rem 1.25rem;box-shadow:0 12px 40px #0004}.meta-row{flex-wrap:wrap;align-items:end;gap:.75rem 1rem;margin-bottom:.5rem;display:flex}.meta-row label{color:var(--muted);flex-direction:column;gap:.25rem;font-size:.75rem;display:flex}.meta-row input{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;min-width:12rem;padding:.4rem .55rem}.orientation-hint{display:none}@media (width<=720px){.app{padding:.75rem .65rem calc(1.5rem + env(safe-area-inset-bottom,0px));padding-left:max(.65rem, env(safe-area-inset-left,0px));padding-right:max(.65rem, env(safe-area-inset-right,0px))}.header{gap:.5rem;margin-bottom:.75rem}.header h1{font-size:1.25rem}.tagline,.header-actions .cloud-save-btn,.auth-offline{display:none}.header-actions button,.meta-row button{padding:.38rem .55rem;font-size:.78rem}.panel{border-radius:12px;padding:.7rem .7rem .9rem}.meta-row{flex-direction:column;align-items:stretch;gap:.55rem}.meta-row input{width:100%;min-width:0}}@media (orientation:portrait) and (width<=900px){.orientation-hint{color:var(--text);background:#5b9dff1f;border:1px solid #5b9dff59;border-radius:8px;margin:0 0 .75rem;padding:.55rem .75rem;font-size:.82rem;line-height:1.4;display:block}}@media (orientation:landscape) and (height<=500px){.app{padding-top:.5rem;padding-bottom:.75rem}.tagline{display:none}}
