:root{--font:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--accent:#3d8bff;--accent-strong:#2a74e6;--accent-soft:#3d8bff24;--warn:#e0a526;--warn-soft:#e0a5261f;--danger:#e5484d;--radius:6px;--panel-w:344px;--bar-h:44px;--status-h:28px}[data-theme=dark]{--bg-top:#2c323c;--bg-bottom:#121418;--panel:#1b1f26f0;--panel-solid:#1b1f26;--panel-raised:#232833;--bar:#15181d;--border:#2e3440;--border-strong:#3d4552;--text:#e4e9f0;--text-2:#b4bdca;--muted:#818c9d;--hover:#ffffff0d;--input:#13161b;--shadow:0 8px 28px #00000073;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--bg-top:#fbfcfd;--bg-bottom:#cfd7e1;--panel:#fffffff2;--panel-solid:#fff;--panel-raised:#f4f6f9;--bar:#eef1f5;--border:#d6dce4;--border-strong:#bcc5d1;--text:#1b2330;--text-2:#3d4757;--muted:#677386;--hover:#0f1e3c0d;--input:#f6f8fa;--shadow:0 8px 24px #1e2d4624;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:var(--bar);-webkit-font-smoothing:antialiased;font-size:13px;line-height:1.45;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}a{color:var(--accent)}.app{background:linear-gradient(180deg, var(--bg-top) 0%, var(--bg-bottom) 100%);flex-direction:column;display:flex;position:fixed;inset:0}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.btn{border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--panel-raised);white-space:nowrap;align-items:center;gap:6px;height:30px;padding:0 12px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.btn:hover{border-color:var(--muted)}.btn:focus-visible,.icon-btn:focus-visible,.seg button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--hover);border-color:#0000}.btn-lg{height:42px;padding:0 20px;font-size:14px}.btn-sm{height:26px;padding:0 9px;font-size:12px}.icon-btn{border-radius:var(--radius);width:30px;height:30px;color:var(--text-2);background:0 0;border:1px solid #0000;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--hover);color:var(--text)}.icon-btn.is-on{background:var(--accent-soft);color:var(--accent)}.topbar{height:var(--bar-h);background:var(--bar);border-bottom:1px solid var(--border);z-index:10;flex:none;align-items:center;gap:10px;padding:0 10px;display:flex}.brand{letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:8px;font-weight:700;display:flex}.brand-mark{flex:none;width:22px;height:22px}.brand small{color:var(--muted);font-weight:500}.divider{background:var(--border);flex:none;width:1px;height:22px}.name-input{border-radius:var(--radius);min-width:120px;height:28px;color:var(--text);font:inherit;text-overflow:ellipsis;background:0 0;border:1px solid #0000;flex:0 260px;padding:0 8px;font-weight:500}.name-input:hover{border-color:var(--border)}.name-input:focus{border-color:var(--accent);background:var(--input);outline:none}.topbar .spacer{flex:1}.seg{border-radius:var(--radius);background:var(--input);border:1px solid var(--border);gap:2px;padding:2px;display:inline-flex}.seg button{height:24px;color:var(--text-2);background:0 0;border:0;border-radius:4px;padding:0 9px;font-size:12px;font-weight:500}.seg button:hover{color:var(--text);background:var(--hover)}.explode{-webkit-user-select:none;user-select:none;color:var(--text-2);align-items:center;gap:6px;font-size:12px;display:flex}.explode input{width:80px;accent-color:var(--accent)}.stage{flex:1;min-height:0;position:relative}.canvas-wrap{position:absolute;inset:0}.panel{width:var(--panel-w);background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:5;border-radius:8px;flex-direction:column;display:flex;position:absolute;top:10px;bottom:10px;overflow:hidden}.panel-left{left:10px}.panel-right{max-height:calc(100% - 190px);bottom:auto;right:10px}.panel-head{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:8px;padding:10px 12px;display:flex}.panel-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px;font-weight:600}.panel-body{flex:1;min-height:0;overflow-y:auto}.section{border-bottom:1px solid var(--border);padding:12px}.section:last-child{border-bottom:0}.section-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.steps{flex-wrap:wrap;gap:4px;display:flex}.step{border:1px solid var(--border);height:24px;color:var(--muted);background:0 0;border-radius:12px;align-items:center;gap:5px;padding:0 8px;font-size:11.5px;font-weight:500;display:inline-flex}.step:hover{color:var(--text);border-color:var(--border-strong)}.step .dot{background:var(--border-strong);border-radius:50%;width:6px;height:6px}.step.is-done{color:var(--text-2)}.step.is-done .dot{background:#3fb27f}.step.is-skipped{opacity:.7;text-decoration:line-through}.step.is-active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.step.is-active .dot{background:var(--accent)}.picker-title{margin:0;font-size:15px;font-weight:600}.picker-desc{color:var(--muted);margin:2px 0 10px;font-size:12px}.cards{gap:6px;display:grid}.card{text-align:left;border-radius:var(--radius);border:1px solid var(--border);background:var(--panel-raised);grid-template-columns:34px 1fr auto;align-items:center;gap:10px;width:100%;padding:8px;transition:border-color .12s,background .12s;display:grid}.card:hover{border-color:var(--accent)}.card.is-current{border-color:var(--accent);background:var(--accent-soft)}.card-name{font-size:12.5px;font-weight:600}.card-desc{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;display:-webkit-box;overflow:hidden}.card-action{color:var(--muted)}.card:hover .card-action,.card.is-current .card-action{color:var(--accent)}.swatch{border:1px solid #00000040;border-radius:5px;width:34px;height:34px;position:relative;overflow:hidden}.swatch:after{content:"";background:var(--side);border-top:1px solid #00000040;position:absolute;inset:55% 0 0}.swatch-sm{border-radius:3px;width:18px;height:18px}.panel-foot{border-top:1px solid var(--border);background:var(--panel);flex:none;padding:10px 12px}.step-nav{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.step-nav>:first-child{justify-self:start}.step-nav>:last-child{justify-self:end}.step-count{color:var(--muted);white-space:nowrap;font-size:11.5px}.layers{margin:0;padding:0;list-style:none;display:grid}.insert-slot button{width:100%;height:12px;color:var(--accent);opacity:0;background:0 0;border:0;align-items:center;gap:6px;padding:0 6px 0 30px;transition:opacity .12s;display:flex}.insert-slot button:hover,.insert-slot button:focus-visible,.insert-slot.is-active button{opacity:1;outline:none}.insert-slot.is-active button{height:26px}.insert-line{background:var(--accent);border-radius:1px;flex:1;height:2px}.insert-pill{background:var(--accent);color:#fff;white-space:nowrap;border-radius:8px;align-items:center;gap:4px;height:16px;padding:0 5px;font-size:10.5px;font-weight:600;display:inline-flex}.layers.is-dragging .insert-slot{visibility:hidden}@media (hover:none){.insert-slot button{opacity:.45}}.insert-banner{border-radius:var(--radius);background:var(--accent-soft);border:1px solid var(--accent);color:var(--text);grid-template-columns:14px 1fr auto;align-items:center;gap:8px;margin-bottom:10px;padding:4px 4px 4px 10px;font-size:12px;font-weight:500;display:grid}.insert-banner>svg{color:var(--accent)}.insert-banner .icon-btn{width:24px;height:24px}.picker-hint{color:var(--muted);margin:-4px 0 10px;font-size:11.5px}.count{background:var(--accent);color:#fff;vertical-align:1px;border-radius:8px;margin-left:6px;padding:0 5px;font-size:10.5px;font-weight:600}.layer-actions{flex-wrap:wrap;gap:8px;display:flex}.layer-row{cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;border-radius:5px;grid-template-columns:16px 20px 18px 1fr auto;align-items:center;gap:7px;padding:5px 6px;display:grid}.layer-row:hover,.layer-row.is-hovered{background:var(--hover)}.layer-row.is-selected{border-color:var(--accent);background:var(--accent-soft)}.layer-row.is-dragging{opacity:.85;background:var(--panel-raised);box-shadow:var(--shadow);z-index:2}.grip{color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:0;place-items:center;padding:0;display:grid}.grip:disabled{cursor:default;opacity:.3}.num{border:1px solid var(--border-strong);width:20px;height:20px;color:var(--text-2);border-radius:50%;place-items:center;font-size:10.5px;font-weight:600;display:inline-grid}.layer-row.is-selected .num{border-color:var(--accent);color:var(--accent)}.layer-text{min-width:0}.layer-name{white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:500;overflow:hidden}.layer-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.layer-row .icon-btn{opacity:0;width:24px;height:24px}.layer-row:hover .icon-btn,.layer-row.is-selected .icon-btn,.layer-row .icon-btn:focus-visible{opacity:1}.empty-note{color:var(--muted);padding:6px 2px;font-size:12px}.warnings{gap:6px;display:grid}.warning{border-radius:var(--radius);background:var(--warn-soft);color:var(--text-2);border:1px solid #e0a52659;grid-template-columns:16px 1fr;gap:8px;padding:8px 10px;font-size:12px;display:grid}.warning svg{color:var(--warn);margin-top:1px}.totals{grid-template-columns:1fr 1fr;gap:6px;display:grid}.stat{border-radius:var(--radius);background:var(--input);border:1px solid var(--border);padding:8px 10px}.stat-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:10.5px}.stat-value{font-size:17px;font-weight:600}.props-name{margin:2px 0 4px;font-size:16px;font-weight:600}.props-cat{color:var(--accent);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.props-desc{color:var(--text-2);margin:0;font-size:12.5px}.field{gap:4px;margin-bottom:10px;display:grid}.field:last-child{margin-bottom:0}.field label{color:var(--muted);font-size:11px;font-weight:500}.field select{border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--input);height:30px;color:var(--text);font:inherit;padding:0 8px}.field select:focus{outline:2px solid var(--accent);outline-offset:-1px}.kv{grid-template-columns:auto 1fr;gap:5px 12px;margin:0;font-size:12px;display:grid}.kv dt{color:var(--muted)}.kv dd{text-align:right;margin:0}.notes{color:var(--text-2);gap:4px;margin:0;padding-left:16px;font-size:12px;display:grid}.mfrs{gap:4px;margin:0;padding:0;list-style:none;display:grid}.mfr{border-radius:var(--radius);border:1px solid var(--border);background:var(--panel-raised);color:var(--text);justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;font-size:12.5px;font-weight:500;text-decoration:none;display:flex}a.mfr:hover{border-color:var(--accent)}.mfr svg{color:var(--muted)}.fine{color:var(--muted);margin:8px 0 0;font-size:11px}.statusbar{height:var(--status-h);background:var(--bar);border-top:1px solid var(--border);color:var(--muted);white-space:nowrap;flex:none;align-items:center;gap:18px;padding:0 12px;font-size:11.5px;display:flex;overflow:hidden}.statusbar b{color:var(--text-2);font-weight:500}.statusbar .spacer{flex:1}.viewer{width:100%;height:100%;position:relative}.callouts{pointer-events:none;position:absolute;inset:0;overflow:hidden}.callout{pointer-events:auto;color:#fff;width:22px;height:22px;font:600 11px var(--font);background:#1b2230;border:1.5px solid #fff;border-radius:50%;place-items:center;padding:0;transition:background .12s,box-shadow .12s;display:grid;position:absolute;top:0;left:0;transform:translate(-9999px,-9999px);box-shadow:0 2px 6px #00000059}.callout:hover,.callout.is-hovered{background:var(--accent-strong);box-shadow:0 0 0 3px var(--accent-soft), 0 2px 6px #00000059}.callout.is-selected{background:var(--accent)}.callout-name{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#14181ee6;border-radius:4px;padding:3px 8px;font-size:11.5px;font-weight:500;transition:opacity .12s;position:absolute;top:50%;left:28px;transform:translateY(-50%)}.callout:hover .callout-name,.callout.is-hovered .callout-name,.callout.is-selected .callout-name{opacity:1}.layer-hint{bottom:14px;left:calc(var(--panel-w) + 20px);background:var(--panel);border:1px solid var(--accent);width:fit-content;max-width:520px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:6;border-radius:10px;align-items:center;gap:10px;margin:0 auto;padding:8px 8px 8px 10px;animation:.18s ease-out hint-in;display:flex;position:absolute;right:180px}.layer-hint .num{border-color:var(--accent);color:var(--accent);flex:none}.layer-hint .swatch{flex:none}.layer-hint-text{min-width:0;display:grid}.layer-hint-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.layer-hint-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.layer-hint .btn{flex:none}.layer-hint .icon-btn{flex:none;width:28px;height:28px}@keyframes hint-in{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.layer-hint{animation:none}}.canvas-hint{left:calc(var(--panel-w) + 20px);pointer-events:none;color:var(--muted);text-align:center;justify-items:center;gap:6px;padding:0 16px;display:grid;position:absolute;top:38%;right:0}.canvas-hint strong{color:var(--text);font-size:16px;font-weight:600}.title-block{background:var(--panel);border:1px solid var(--border-strong);width:360px;max-width:calc(100% - 24px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:5;border-radius:4px;font-size:12px;position:absolute;bottom:12px;right:12px}.tb-head{border-bottom:1px solid var(--border-strong);padding:10px 12px}.tb-name{font-size:14px;font-weight:700}.tb-meta{color:var(--muted);justify-content:space-between;margin-top:2px;font-size:11px;display:flex}.tb-list{max-height:40vh;margin:0;padding:6px 0;list-style:none;overflow-y:auto}.tb-row{cursor:pointer;grid-template-columns:22px 1fr auto;align-items:center;gap:8px;padding:4px 12px;display:grid}.tb-row:hover,.tb-row.is-hovered,.tb-row.is-selected{background:var(--accent-soft)}.tb-row .num{width:18px;height:18px;font-size:10px}.tb-sub{color:var(--muted);font-size:11px}.tb-foot{border-top:1px solid var(--border-strong);grid-template-columns:1fr 1fr 1fr;display:grid}.tb-foot>div{border-right:1px solid var(--border-strong);padding:7px 12px}.tb-foot>div:last-child{border-right:0}.tb-actions{border-top:1px solid var(--border-strong);padding:10px 12px}.export-locked{border-radius:var(--radius);border:1px solid var(--accent);background:var(--accent-soft);color:var(--text-2);grid-template-columns:16px 1fr auto;align-items:center;gap:10px;margin:0 0 4px;padding:10px 10px 10px 12px;font-size:12.5px;display:grid}.export-locked>svg{color:var(--accent)}.export-locked strong{color:var(--text)}.export-group.is-locked .export-icon{background:var(--hover);color:var(--muted)}.export-group{margin-top:16px}.export-group h3{margin:0 0 6px}.export-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.export-list li{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-raised);grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.export-icon{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:6px;place-items:center;display:grid}.export-text{gap:1px;min-width:0;display:grid}.export-name{font-size:13px;font-weight:600}.export-ext{font-family:var(--mono);color:var(--muted);font-size:11.5px;font-weight:400}.export-desc{color:var(--muted);font-size:11.5px}.dialog .dialog-body{max-height:min(78vh,760px);overflow-y:auto}.splash{background:linear-gradient(160deg, var(--bg-top) 0%, var(--bg-bottom) 100%);position:fixed;inset:0;overflow:hidden}.splash-canvas{position:absolute;inset:0 0 0 36%}.splash-shade{background:linear-gradient(90deg, var(--bar) 0%, var(--bar) 28%, transparent 62%);pointer-events:none;position:absolute;inset:0}.splash-top{z-index:3;justify-content:space-between;align-items:center;padding:16px 24px;display:flex;position:absolute;top:0;left:0;right:0}.splash-content{z-index:2;max-width:500px;position:absolute;top:50%;left:clamp(24px,7vw,110px);transform:translateY(-50%)}.eyebrow{font-family:var(--mono);color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:11.5px}.splash h1{letter-spacing:-.03em;margin:12px 0 16px;font-size:clamp(34px,5vw,52px);line-height:1.05}.splash p.lead{color:var(--text-2);max-width:440px;margin:0 0 28px;font-size:16px}.splash-actions{flex-wrap:wrap;gap:10px;display:flex}.splash-steps{color:var(--muted);flex-wrap:wrap;gap:6px 14px;margin-top:34px;font-size:12px;display:flex}.splash-steps span{align-items:center;gap:6px;display:inline-flex}.splash-steps b{font-family:var(--mono);color:var(--text-2);font-weight:500}.splash-footer{z-index:2;gap:18px;font-size:12.5px;display:flex;position:absolute;bottom:20px;left:clamp(24px,7vw,110px)}.splash-footer a{color:var(--muted);text-decoration:none}.splash-footer a:hover{color:var(--text)}.splash-error{color:var(--danger);margin-top:16px}.loading{color:var(--muted);background:var(--bar);place-items:center;display:grid;position:fixed;inset:0}@media (width<=1180px){.hide-lg{display:none!important}}@media (width<=900px){.hide-md{display:none!important}}@media (width<=720px){:root{--panel-w:calc(100vw - 20px)}.hide-sm{display:none!important}.topbar{gap:6px;padding:0 8px}.topbar .btn{padding:0 8px}.name-input{min-width:64px}.panel-left{height:46%;top:auto}.canvas-wrap{bottom:47%}.layer-hint{width:auto;max-width:none;bottom:calc(46% + 20px);left:10px;right:10px}.panel-right{max-height:44%;top:10px;left:10px}.canvas-hint{top:20%;left:0}.splash-canvas{inset:52% 0 0}.splash-steps{display:none}.splash-shade{background:linear-gradient(180deg, var(--bar) 0%, var(--bar) 30%, transparent 75%)}.splash-content{top:90px;right:24px;transform:none}}.btn:disabled{opacity:.55;cursor:default}.btn-block{justify-content:center;width:100%}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.save-btn.has-error{color:var(--danger)}.splash-top-actions{align-items:center;gap:6px;display:flex}.account{position:relative}.avatar-btn{border:1px solid var(--border-strong);background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;font-weight:600;display:grid;overflow:hidden}.avatar-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.avatar-btn img{object-fit:cover;width:100%;height:100%}.menu{background:var(--panel-solid);border:1px solid var(--border);min-width:220px;box-shadow:var(--shadow);z-index:30;border-radius:8px;padding:4px;position:absolute;top:calc(100% + 6px);right:0}.menu-email{color:var(--muted);border-bottom:1px solid var(--border);text-overflow:ellipsis;margin-bottom:4px;padding:8px 10px;font-size:12px;overflow:hidden}.menu button{text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:8px;width:100%;padding:8px 10px;display:flex}.menu button:hover,.menu button:focus-visible{background:var(--hover);outline:none}.dialog{border:1px solid var(--border);background:var(--panel-solid);max-width:calc(100vw - 32px);color:var(--text);box-shadow:var(--shadow);border-radius:10px;padding:0}.dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080a0e8c}.dialog-head{justify-content:space-between;align-items:center;padding:14px 14px 0 20px;display:flex}.dialog-head h2{margin:0;font-size:17px;font-weight:600}.dialog-body{padding:8px 20px 20px}.dialog-lead{color:var(--text-2);margin:0 0 16px}.dialog-foot{text-align:center;color:var(--muted);margin:14px 0 0;font-size:12.5px}.or{color:var(--muted);align-items:center;gap:10px;margin:14px 0;font-size:12px;display:flex}.or:before,.or:after{content:"";background:var(--border);flex:1;height:1px}.auth-form{gap:12px;display:grid}.auth-form .field{margin:0}.auth-form .field>span:first-child{color:var(--text-2);font-size:12px;font-weight:500}.field-row{justify-content:space-between;display:flex}.field input{border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--input);height:38px;color:var(--text);font:inherit;padding:0 10px;font-size:14px}.field input:focus{outline:2px solid var(--accent);outline-offset:-1px}.turnstile:empty{display:none}.turnstile{width:100%;overflow:hidden}.field-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.auth-form,.auth-form .field,.auth-form input{min-width:0}.auth-form input{width:100%}@media (width<=380px){.field-pair{grid-template-columns:minmax(0,1fr)}}.field-optional{color:var(--muted);font-weight:400}.field-static{border-radius:var(--radius);border:1px dashed var(--border-strong);height:38px;color:var(--muted);text-overflow:ellipsis;align-items:center;padding:0 10px;font-size:14px;display:flex;overflow:hidden}.menu-email strong{color:var(--text);font-size:13px;display:block}.field-hint{color:var(--muted);font-size:11.5px}.link{color:var(--accent);background:0 0;border:0;padding:0;font-size:12px;font-weight:500}.dialog-legal{text-align:center;color:var(--muted);margin:12px 0 0;font-size:11.5px}.dialog-foot .link{font-size:inherit}.link:hover{text-decoration:underline}.form-error,.form-notice{border-radius:var(--radius);margin:0;padding:8px 10px;font-size:12.5px}.form-error{color:var(--danger);background:#e5484d1a;border:1px solid #e5484d66}.form-notice{background:var(--accent-soft);border:1px solid var(--accent)}.library{gap:6px;max-height:60vh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.library li{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-raised);align-items:center;gap:6px;padding-right:6px;display:flex}.library li:hover{border-color:var(--accent)}.library li.is-current{border-color:var(--accent);background:var(--accent-soft)}.library-open{text-align:left;background:0 0;border:0;flex:1;gap:2px;min-width:0;padding:10px 12px;display:grid}.library-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.library-meta{color:var(--muted);font-size:12px}.library-empty{text-align:center;color:var(--muted);gap:4px;padding:28px 0;display:grid}.library-empty strong{color:var(--text)}
