:root{--background-1: #ffffff;--background-2: #f6f6f9;--surface-1: #ffffff;--surface-2: rgba(17, 15, 28, .045);--surface-3: rgba(17, 15, 28, .085);--foreground: #14131a;--muted: rgba(20, 19, 26, .54);--line: rgba(20, 19, 26, .1);--line-strong: rgba(20, 19, 26, .2);--primary: #7c3aed;--primary-hover: #6d28d9;--primary-soft: rgba(124, 58, 237, .1);--primary-border: rgba(124, 58, 237, .35);--primary-ink: #ffffff;--brand: #7c3aed;--secondary-purple: #a78bfa;--secondary-green: #22c55e;--secondary-red: #ef4444;--stage-bg: #ffffff;--shadow-card: 0 2px 8px rgba(17, 15, 28, .04);--shadow-pop: 0 12px 32px rgba(17, 15, 28, .12);--highlight: var(--primary);--highlight-border: var(--primary);--highlight-ink: var(--primary-ink);color:var(--foreground);background:var(--background-2);font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:14px;line-height:20px;font-synthesis:none}:root[data-theme=dark]{--background-1: #1d1d24;--background-2: #121217;--surface-1: #25252e;--surface-2: rgba(255, 255, 255, .065);--surface-3: rgba(255, 255, 255, .12);--foreground: #f4f3f8;--muted: rgba(244, 243, 248, .56);--line: rgba(255, 255, 255, .1);--line-strong: rgba(255, 255, 255, .22);--primary: #8b5cf6;--primary-hover: #7c3aed;--primary-soft: rgba(139, 92, 246, .16);--primary-border: rgba(139, 92, 246, .45);--primary-ink: #ffffff;--brand: #8b5cf6;--secondary-purple: #c4b5fd;--secondary-green: #4ade80;--secondary-red: #f87171;--stage-bg: #18181c;--shadow-card: 0 2px 10px rgba(0, 0, 0, .28);--shadow-pop: 0 14px 36px rgba(0, 0, 0, .48)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--background-2);color:var(--foreground);-webkit-font-smoothing:antialiased}button,label.button{font:inherit;font-size:13px;line-height:18px;font-weight:500;color:var(--foreground);background:var(--surface-2);border:1px solid var(--line);border-radius:10px;min-height:34px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;cursor:pointer;transition:background-color .14s ease,color .14s ease,border-color .14s ease,box-shadow .14s ease}button svg,label.button svg{flex:none}button.btn-sm,.pager button,.key-pan button{min-height:28px;height:28px;padding:0 10px;font-size:12px;line-height:16px;border-radius:8px;gap:5px}button.on,button.primary{background:var(--primary);color:var(--primary-ink);border-color:var(--primary);box-shadow:0 1px 3px #7c3aed47}button:hover,label.button:hover{background:var(--surface-3);border-color:var(--line-strong)}button.on:hover,button.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}button:disabled,button:disabled:hover{opacity:.42;cursor:default;background:var(--surface-2);border-color:var(--line);box-shadow:none}button.primary:disabled,button.primary:disabled:hover{background:var(--primary);border-color:var(--primary)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.app{width:min(1120px,calc(100% - 48px));margin:0 auto;padding:28px 24px 48px}.app.practice{width:auto;max-width:none;margin:0 10px;padding:10px 0 20px;height:100dvh;overflow:hidden;display:flex;flex-direction:column}.top,.file-actions,.transport,.legend{display:flex;align-items:center;flex-wrap:wrap;gap:12px}header.top{justify-content:space-between;align-items:end}header.top .right,header.top .left{display:flex;align-items:end;gap:12px}.import-heading{justify-content:flex-start;align-items:center;gap:12px}.play-top{align-items:flex-start;justify-content:flex-start}.back-button,button.connection{width:34px;height:34px;min-height:34px;padding:0;border-radius:10px;display:inline-grid;place-items:center;flex:none;background:var(--background-1);border:1px solid var(--line);box-shadow:var(--shadow-card)}.back-button svg,button.connection svg{width:16px;height:16px}.connection-anchor{top:24px;right:24px;z-index:30;display:flex;align-items:center;gap:8px}.connection.failed{color:var(--secondary-red);border-color:#ef444459}.eyebrow{margin:0 0 2px;color:var(--primary);letter-spacing:.05em;text-transform:uppercase;font-size:11px;line-height:16px;font-weight:600}h1{margin:0;font-size:24px;line-height:32px;font-weight:600;letter-spacing:-.01em}.file-actions input{display:none}.player{margin-top:20px}.app.practice .player{flex:1;min-height:0;margin-top:0;display:flex;flex-direction:column}.play-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;order:1;margin-top:10px;margin-bottom:0;position:relative;z-index:20}.play-bar-end{margin-left:auto;display:flex;align-items:center;gap:8px}.play-bar>button,.play-bar .back-button,.play-bar button.connection{min-height:28px;height:28px;border-radius:8px}.play-bar .back-button,.play-bar button.connection{width:28px;padding:0}.play-bar>button{padding:0 10px;font-size:12px;line-height:16px}.play-meta{flex:none;padding-top:8px;display:flex;flex-direction:row;align-items:baseline;gap:14px;min-width:0;overflow:hidden}.play-meta h1,.play-meta .eyebrow,.play-meta .play-level,.play-meta .play-description,.play-meta .rights,.play-meta .status,.play-meta .scoreline{white-space:nowrap}.play-meta h1{font-size:16px;line-height:24px;flex:none}.play-meta .eyebrow,.play-meta .play-level,.play-meta .scoreline{flex:none}.play-meta .status,.play-meta .rights,.play-meta .play-description{min-width:0;overflow:hidden;text-overflow:ellipsis}.play-meta .status{flex:1 1 auto}.play-meta .rights,.play-meta .play-description{flex:0 1 220px}.play-level,.play-description{margin:0;color:var(--muted);font-size:13px}.transport{flex-wrap:wrap;margin-bottom:14px}.modes,.toggles,.level-filters{display:inline-flex;flex-wrap:wrap;align-items:center;gap:2px;padding:3px;background:var(--surface-2);border:1px solid var(--line);border-radius:10px}.modes button,.toggles button,.level-filters button{position:relative;border:0;background:transparent;color:var(--muted);border-radius:7px;min-height:26px;height:26px;padding:0 10px;font-size:12px;line-height:16px;font-weight:500;box-shadow:none}.modes button:not(.on)+button:not(.on):before,.toggles button:not(.on)+button:not(.on):before,.level-filters button:not(.on)+button:not(.on):before{content:"";position:absolute;left:-1.5px;top:6px;bottom:6px;width:1px;background:var(--line);pointer-events:none}.modes button:hover,.toggles button:hover,.level-filters button:hover{color:var(--foreground);background:var(--surface-3)}.modes button.on,.toggles button.on,.level-filters button.on{position:relative;z-index:1;background:var(--primary);color:var(--primary-ink);box-shadow:0 1px 3px #7c3aed52}.hand-picker button{display:inline-flex;align-items:center;justify-content:center;width:32px;padding:0}.hand-picker button.both{width:42px}.hand-mirror{transform:scaleX(-1)}.hand-pair{display:inline-flex;align-items:center}.hand-pair svg+svg{margin-left:-2px}.modes button.on:hover,.toggles button.on:hover,.level-filters button.on:hover{background:var(--primary-hover);color:var(--primary-ink)}.theme-picker button{padding:0 8px;gap:4px}.theme-picker-label{font-size:12px}.status,.scoreline{margin:0;color:var(--foreground);font-size:13px}.scoreline{color:var(--muted)}.banner{background:#ef44441a;border:1px solid var(--secondary-red);color:var(--foreground);border-radius:10px;padding:8px 12px}.stage{position:relative;width:100%;background:var(--stage-bg);border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-card)}.keyboard-anchor{position:relative;z-index:2;background:var(--stage-bg)}.keyboard-stack{position:relative}.hand-room{pointer-events:none}.piano-hand{position:absolute;left:0;bottom:0;z-index:5;pointer-events:none;overflow:visible}.piano-hand [data-hand]{opacity:0}.falling,.staff{display:block}.keyboard{position:relative;z-index:2;height:var(--key-height, 168px);background:var(--stage-bg)}.key{position:absolute;bottom:0;padding:0 0 8px;min-height:0;border-radius:0 0 8px 8px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;box-shadow:none}.key.white{height:var(--key-height, 168px);background:var(--key-white);color:var(--key-white-ink);border:1px solid var(--key-white-edge);z-index:1}.key.black{height:var(--black-height, 104px);background:var(--key-black);color:var(--key-black-ink);border:1px solid var(--key-black-edge);z-index:2;top:0;bottom:auto}.black-keys{position:absolute;inset:0;z-index:2;pointer-events:none}.key.black{pointer-events:auto}.key.right{border-color:var(--hand-right)}.key.left{border-color:var(--hand-left)}.key.white.right,.key.white.left,.key.black.right,.key.black.left{border-width:2px}.key.wrong{background:var(--note-wrong);color:#fff;border-color:var(--note-wrong)}.key.correct{background:var(--note-correct);color:#f4fff6;border-color:var(--note-correct)}.key.white.soon.right,.key.white.soon.left,.key.black.soon.right,.key.black.soon.left{border-width:2px}.keyboard.trail .key{overflow:hidden}.key-slice{position:absolute;left:0;right:0;z-index:0;pointer-events:none;box-shadow:inset 0 -1px #00000047}.keyboard.trail .key-name,.keyboard.trail .key-finger{position:relative;z-index:1;text-shadow:0 1px 2px rgba(0,0,0,.55)}.key-name{font-size:.68rem}.key-finger{font-weight:700;font-size:.95rem}.rights,.status-line,.legal,.empty{margin:8px 0 0;color:var(--muted);font-size:13px}.library{margin:20px 0 8px}.library-head{display:block}.piece{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.library h2,.score-group h3{margin:0;font-size:15px;line-height:22px;font-weight:600}.library-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.library input{font:inherit;font-size:13px;color:var(--foreground);background:var(--background-1);border:1px solid var(--line);border-radius:10px;height:34px;min-height:34px;padding:0 12px;min-width:min(260px,100%);flex:1;box-shadow:var(--shadow-card)}.library input::placeholder{color:var(--muted)}.level-filters button{min-width:28px;padding:0 8px}.level-help,.library-count{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:16px}.score-group{margin-top:14px}.piece{margin-top:8px}.piece-open{flex:1;text-align:left;border-radius:8px;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.piece-open span{color:var(--muted);font-size:12px}.piece-delete{border-radius:8px}.import-row{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;margin-top:18px}.import-box{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:min(560px,100%);padding:18px;border-radius:16px;border:1px dashed var(--primary-border);background:var(--background-1);text-align:left;cursor:pointer;box-shadow:var(--shadow-card);transition:border-color .14s ease,background-color .14s ease}.import-box:hover{border-color:var(--primary);background:var(--primary-soft)}.import-box input{display:none}.import-box strong{font-size:14px;font-weight:600}.import-box span{color:var(--muted);font-size:13px;font-weight:400}.import-box.over{border-color:var(--primary);background:var(--primary-soft)}.import-box.disabled{opacity:.48;cursor:default;border-color:var(--line-strong)}.import-box.disabled:hover{border-color:var(--line-strong);background:var(--background-1)}.import-icon{width:22px;height:22px;color:var(--primary)}.rights-confirm{display:flex;gap:10px;align-items:flex-start;flex:1 1 280px;margin:0;color:var(--muted);font-size:13px;cursor:pointer}.rights-confirm input{width:16px;height:16px;margin-top:2px;flex:none;accent-color:var(--primary)}.import-lead{margin:16px 0 0;max-width:68ch;color:var(--foreground)}.import-rights{flex:none;max-width:78ch;margin-top:14px}.import-section{margin-top:26px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:820px}.import-section h2{margin:0;font-size:15px;line-height:22px;font-weight:600}.import-section>p{margin:0;color:var(--muted);max-width:68ch;font-size:13px}.import-note{margin:0;color:var(--muted);font-size:12px;line-height:16px}.arrange-choices,.import-files,.import-jobs{display:flex;flex-direction:column;gap:8px;width:min(720px,100%);margin:4px 0 0;padding:0;list-style:none}.arrange-choices label,.import-files li,.import-jobs li{display:flex;gap:10px;align-items:flex-start;margin:0;padding:12px 16px;border-radius:14px;background:var(--background-1);border:1px solid var(--line);box-shadow:var(--shadow-card);cursor:pointer;transition:border-color .14s ease,background-color .14s ease}.arrange-choices label:hover{border-color:var(--line-strong)}.arrange-choices label.on{border-color:var(--primary);background:var(--primary-soft)}.arrange-choices input,.import-file-arrange input{accent-color:var(--primary);margin-top:3px}.arrange-choices strong{display:block;font-size:13px;font-weight:600}.arrange-choices span,.import-file-head span,.import-job-copy span{color:var(--muted);font-size:12px;font-weight:400}.import-files li,.import-jobs li{cursor:default;flex-direction:column}.import-jobs li{flex-direction:row;align-items:center}.import-jobs li.failed{border-color:var(--secondary-red)}.import-jobs li.saved{border-color:var(--primary-border)}.import-file-head,.import-job-copy{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;width:100%;min-width:0}.import-file-head button{margin-left:auto}.import-file-arrange{display:flex;flex-direction:column;gap:8px;width:100%}.import-file-arrange>label{display:flex;gap:8px;align-items:center;color:var(--foreground);cursor:pointer;font-size:13px;font-weight:400}.arrange-pills{display:flex;flex-wrap:wrap;gap:6px}.arrange-pills label{display:inline-flex;align-items:center;gap:6px;margin:0;padding:0 10px;height:28px;min-height:28px;font-size:12px;border-radius:8px;border:1px solid var(--line);background:var(--surface-2);cursor:pointer;font-weight:500}.arrange-pills label.on{border-color:var(--primary);background:var(--primary);color:var(--primary-ink)}.import-progress{display:block;width:100%;height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.import-progress>span{display:block;height:100%;background:var(--primary)}.import-job-copy{flex:1}.import-job.failed{color:var(--secondary-red)}.record-button:disabled,.record-button:disabled:hover{opacity:.42;cursor:default;border-color:var(--line);background:var(--surface-2)}.record-button{display:inline-flex;align-items:center;gap:8px;border-radius:10px;padding:0 14px}.record-dot{width:10px;height:10px;border-radius:50%;background:var(--secondary-red);box-shadow:0 0 0 3px #ef444438}.record-button.on{background:var(--secondary-red);color:#fff;border-color:var(--secondary-red)}.record-button.on:hover{background:var(--secondary-red);border-color:var(--secondary-red)}.record-button.on .record-dot{background:#fff;box-shadow:none}.score-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-top:12px}.score-card{background:var(--background-1);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;min-width:0;max-width:100%;box-shadow:var(--shadow-card);transition:border-color .14s ease,transform .14s ease,box-shadow .14s ease}.score-card:hover{border-color:var(--primary-border)}.score-card.yours{border-color:var(--primary)}button.score-card-open{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:2px;padding:0;min-height:0;border:0;border-radius:0;background:transparent;text-align:left;white-space:normal;font-weight:400;min-width:0;box-shadow:none}button.score-card-open:hover{background:transparent;border-color:transparent}.score-cover{position:relative;display:block;width:100%;max-width:100%;height:152px;overflow:hidden;background:var(--background-2)}.score-card-open img,.cover-fallback{display:block;width:100%;max-width:100%;height:152px;object-fit:cover;object-position:center;background:var(--background-2)}.score-card-open .level-badge{position:absolute;top:8px;left:8px;background:#14131ac2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:2px 8px;font-size:11px;line-height:16px;font-weight:600;color:#fff}.cover-fallback{display:grid;place-items:center;font-size:22px;font-weight:600;color:#fff;background:linear-gradient(145deg,var(--primary),#4f46e5)}.score-card-open strong,.score-card-open span{padding:0 12px}.score-card-open strong{padding-top:10px;font-size:13px;font-weight:600;color:var(--foreground);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.35;min-height:calc(10px + 2.7em)}.score-card-open>span:not(.score-cover){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:1.3em;line-height:1.3}.score-card-open span{color:var(--muted);font-size:12px;line-height:16px;font-weight:400}.score-card-open span.score-level{color:var(--primary);font-weight:500}.score-card-open .cover-credit{position:absolute;z-index:1;left:0;right:0;bottom:0;padding:16px 8px 5px;font-size:9px;line-height:12px;font-weight:500;color:#fff;background:linear-gradient(transparent,#0000009e);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.score-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px 12px;margin-top:auto}.icon-button{width:28px;height:28px;min-height:28px;padding:0;border-radius:8px;display:inline-grid;place-items:center}.icon-button svg{width:14px;height:14px}.icon-button.play{background:var(--primary);color:var(--primary-ink);border-color:var(--primary)}.icon-button.play:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.score-delete{margin-left:auto}.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;margin:14px 0 4px}.pager button{min-width:28px}.pager-status,.pager-gap{color:var(--muted);font-size:12px}.pager-status{margin-left:6px}.gear-pop{position:absolute;top:42px;right:0;z-index:40;width:min(300px,calc(100vw - 24px));padding:14px;border-radius:16px;background:var(--background-1);border:1px solid var(--line);display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow-pop)}.lead{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--foreground);font-size:12px}.lead select{font:inherit;font-size:12px;font-weight:500;color:var(--foreground);background:var(--surface-2);border:1px solid var(--line);border-radius:8px;height:28px;min-height:28px;padding:0 10px}.play-tools{position:relative;display:flex;align-items:center;gap:6px}.connection-inline{position:relative}.play-bar .gear-pop{top:auto;bottom:calc(100% + 8px);max-height:min(560px,calc(100dvh - 120px));overflow:auto}.play-tools .settings-pop{right:0;width:min(260px,calc(100vw - 24px))}.settings-list{display:flex;flex-direction:column;align-items:stretch;gap:2px}.settings-list button{min-height:30px;height:30px;padding:0 10px;border-radius:8px;border:0;background:transparent;color:var(--foreground);font-size:12px;font-weight:400;justify-content:space-between;box-shadow:none}.settings-list button:hover{background:var(--surface-2)}.settings-list button.on{background:transparent;color:var(--foreground);box-shadow:none}.settings-list button.on:hover{background:var(--surface-2);color:var(--foreground)}.settings-list button:after{content:"";width:28px;height:16px;border-radius:999px;background-color:var(--line-strong);background-image:radial-gradient(circle,#ffffff 5.5px,transparent 6px);background-size:16px 16px;background-repeat:no-repeat;background-position:0 center;transition:background-color .14s ease,background-position .14s ease;flex:none}.settings-list button.on:after{background-color:var(--primary);background-position:12px center}.results-pop{width:min(320px,calc(100vw - 24px))}.results-trend{margin:0;color:var(--muted);font-size:12px;line-height:16px}.results-bars{display:flex;align-items:flex-end;gap:4px;height:36px}.results-bars span{flex:1;min-width:6px;border-radius:3px 3px 0 0;background:var(--primary)}.results-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.results-list li{display:flex;flex-direction:column;gap:1px;font-size:12px;line-height:16px;color:var(--muted)}.results-list strong{color:var(--foreground);font-weight:600}.countdown{position:absolute;inset:0;z-index:7;display:grid;place-items:center;pointer-events:none;font-size:88px;line-height:1;font-weight:600;letter-spacing:-.04em;color:var(--foreground)}.scrubber{position:relative;z-index:6;display:flex;align-items:center;gap:10px;margin:0;padding:0 12px 4px;flex:none;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.scrubber input[type=range]{flex:1;accent-color:var(--primary);min-width:0}.gear-pop p{margin:0;color:var(--muted);font-size:12px;line-height:18px}.gear-error{color:var(--secondary-red)}.legend{margin-top:12px;color:var(--muted);font-size:13px}.swatch{width:14px;height:14px;border-radius:4px;display:inline-block}.swatch.right{background:var(--hand-right)}.swatch.left{background:var(--hand-left);margin-left:8px}.swatch.wrong{background:var(--note-wrong);margin-left:8px}.swatch.correct{background:var(--note-correct);margin-left:8px}@media(max-width:720px){.top{flex-direction:column;align-items:flex-start;padding-right:0;padding-top:40px}.stage{overflow-x:auto}.theme-picker-label{display:none}}.app.pad{width:auto;max-width:none;margin:0;padding:env(safe-area-inset-top) 12px env(safe-area-inset-bottom);min-height:100dvh}.app.practice.pad{height:100dvh;overflow:hidden;display:flex;flex-direction:column;padding-bottom:max(8px,env(safe-area-inset-bottom))}.app.practice.pad .player{flex:1;min-height:0;margin-top:8px;display:flex;flex-direction:column}.app.practice.pad h1{font-size:1.35rem}.app.practice.pad .rights,.app.practice.pad .legend{display:none}.app.practice.pad .play-bar{gap:8px;margin-top:6px;margin-bottom:0}.app.practice.pad .play-meta{margin-top:8px;padding-top:0;flex:none}.app.practice.pad .status,.app.practice.pad .scoreline{font-size:.82rem}.app.practice .stage{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.falling-fit{position:relative;flex:1 1 0%;min-height:0;overflow:hidden;z-index:1}.falling-fit>.falling{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}.app.practice .stage>.staff,.app.practice .stage>.keyboard-anchor,.app.practice .stage>.staff-fit,.app.practice .stage>.scrubber{flex:none}.stage-spacer{flex:1 1 auto;min-height:0}.staff-fit{position:relative;overflow:hidden;flex:0 0 auto}.app.practice .staff-fit canvas.staff{display:block;width:100%;height:100%}.key-pan{position:absolute;z-index:6;top:8px;left:8px;right:8px;display:flex;justify-content:space-between;gap:8px;pointer-events:none}.key-pan button{pointer-events:auto;background:var(--background-1);box-shadow:var(--shadow-card)}.key-pan button:disabled{opacity:.35}.editor-backdrop{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:24px;background:#110f1c75}.editor{width:min(440px,100%);max-height:min(720px,calc(100dvh - 48px));overflow:auto;display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--background-1);box-shadow:var(--shadow-pop)}.editor h2{margin:0;font-size:16px;line-height:22px}.editor label.field{display:flex;flex-direction:column;align-items:stretch;gap:4px;font-size:12px;font-weight:600;color:var(--foreground);text-align:left}.editor input[type=text],.editor textarea{font:inherit;font-size:13px;font-weight:400;color:var(--foreground);background:var(--background-1);border:1px solid var(--line);border-radius:10px;padding:8px 12px;width:100%}.editor input[type=text]{height:34px}.editor textarea{min-height:72px;resize:vertical}.editor-art{display:grid;grid-template-columns:96px 1fr;gap:12px;align-items:center}.editor-preview{width:96px;height:96px;border-radius:12px;overflow:hidden;background:var(--background-2)}.editor-preview img,.editor-preview .cover-fallback{width:96px;height:96px;border-radius:12px;object-fit:cover}.editor-tools{display:flex;flex-wrap:wrap;gap:6px}.editor-note{margin:0;color:var(--muted);font-size:12px;line-height:16px}a.editor-credit{color:var(--primary);font-size:12px;line-height:16px}.editor-actions{display:flex;justify-content:flex-end;gap:8px}.artwork-hits{display:flex;gap:8px;margin:8px 0 0;padding:0;list-style:none;overflow-x:auto}.artwork-hits button{width:64px;height:64px;min-height:64px;padding:0;border-radius:8px;overflow:hidden}.artwork-hits img{display:block;width:64px;height:64px;object-fit:cover}
