@import url("https://fonts.googleapis.com/css2?family=Geist:wght@400;450;500;600&family=Geist+Mono:wght@400;450;500&display=swap");@import url("https://cdnjs.cloudflare.com/ajax/libs/tabler-icons/3.7.0/tabler-icons.min.css");:root{--bg:#070707;--s1:#0f1010;--s2:#141415;--s3:#171718;--s4:#1b1b1c;--hover:#1d1d1e;--elev:#202021;--tx:#ffffff;--tx2:#e3e3e6;--tx3:#919193;--line:rgba(255,255,255,.07);--line2:rgba(255,255,255,.12);--line3:rgba(255,255,255,.18);--cta:#ff6b1a;--cta-ink:#1a0e04;--cta-hover:#ff7d33;--cta-soft:rgba(255,107,26,.14);--cta-line:rgba(255,107,26,.42);--danger:#e5484d;--danger-ink:#fff;--danger-soft:rgba(229,72,77,.14);--danger-line:rgba(229,72,77,.42);--ok:#4cb782;--ok-soft:rgba(76,183,130,.16);--ok-line:rgba(76,183,130,.45);--warn:#e0a83a;--warn-soft:rgba(224,168,58,.16);--scrim:rgba(0,0,0,.6);--scrim-soft:rgba(0,0,0,.5);--glass:rgba(255,255,255,.06);--glass-2:rgba(255,255,255,.1);--r:8px;--r-sm:6px;--r-xs:4px;--r-lg:12px;--r-pill:9999px;--sp-1:4px;--sp-2:6px;--sp-3:8px;--sp-4:10px;--sp-5:12px;--sp-6:14px;--sp-7:16px;--sp-8:18px;--sp-9:20px;--sp-10:24px;--fs-sm:11px;--fs-base:12px;--fs-lg:18px;--fw-reg:450;--fw-med:500;--fw-bold:600;--font:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--mono:"Geist Mono",ui-monospace,Menlo,monospace;--top-h:48px;--pan-margin:48px;--rail-w:52px;--rail-w-open:206px;--dur:.14s;--dur-slow:.18s;--ease:cubic-bezier(.22,.61,.36,1);--shadow-1:0 8px 24px rgba(0,0,0,.4);--shadow-2:0 24px 70px rgba(0,0,0,.55);--card-w:232px;--paper:#fff}*{margin:0;box-sizing:border-box}body,html{height:100%;background:var(--bg);font-family:var(--font);font-size:var(--fs-base);font-weight:var(--fw-reg);color:var(--tx);overflow:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}#topbar{position:fixed;top:0;left:var(--rail-w);right:0;height:var(--top-h);z-index:100;display:flex;align-items:center;gap:14px;padding:0 18px;background:var(--bg);border-bottom:1px solid var(--line);color:var(--tx2)}#topbar .t{font-weight:var(--fw-bold);font-size:var(--fs-base);color:var(--tx)}#topbar .s{font-size:var(--fs-sm);color:var(--tx3)}#topbar .sp{flex:1 1}#topbar button{background:var(--s2);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:6px 11px;font-size:var(--fs-sm);font-weight:var(--fw-med);font-family:inherit;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}#topbar button:hover{background:var(--hover);color:var(--tx)}#viewport{position:fixed;top:var(--top-h);left:var(--rail-w);right:0;bottom:0;overflow:hidden;cursor:-webkit-grab;cursor:grab;background-color:var(--bg);background-image:radial-gradient(rgba(255,255,255,.035) 1.2px,transparent 0);background-size:30px 30px}#viewport.drag{cursor:-webkit-grabbing;cursor:grabbing}.board-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--tx3);font-size:var(--fs-lg);pointer-events:none}#canvas{position:absolute;top:0;left:0;transform-origin:0 0;width:max-content;padding:56px 80px}.sec{margin-bottom:64px}.sec h2{color:var(--tx);font-size:var(--fs-lg);font-weight:var(--fw-bold);margin:0;letter-spacing:-.01em;white-space:nowrap}.sec h2 .cnt{font-size:var(--fs-sm);color:var(--tx3);font-weight:var(--fw-reg);margin-left:10px;vertical-align:middle}.sec-pinned{border-left:2px solid var(--cta);padding-left:18px;margin-left:-20px}.sec-pinned h2{display:flex;align-items:center;gap:10px;color:var(--cta)}.sec-pinned .sec-pin-ic{display:inline-flex;align-items:center;color:var(--cta)}.sec-pinned .sec-pin-ic svg{height:16px;width:auto;display:block}.sec-pinned .sec-pin-dl{display:inline-flex;align-items:center;gap:6px;margin-left:6px;background:none;border:1px solid var(--cta-line,var(--cta));border-radius:var(--r-xs);padding:4px 10px;cursor:pointer;color:var(--cta);font:var(--fw-bold) var(--fs-sm)/1 var(--mono);transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.sec-pinned .sec-pin-dl svg{height:13px;width:auto;display:block}.sec-pinned .sec-pin-dl:hover{background:var(--cta-soft)}.sec-pinned .sec-pin-dl:disabled{cursor:default;opacity:.6}.rowhead{display:flex;align-items:center;gap:14px;margin:22px 0 11px}.rowlabel{color:var(--tx2);font-size:var(--fs-base);font-weight:var(--fw-med);letter-spacing:0;white-space:nowrap}.rowlabel .tt{font-family:var(--mono);font-size:var(--fs-sm)}.rowlabel .rc,.rowlabel .tt{color:var(--tx3);font-weight:var(--fw-reg)}.rowlabel .rc{margin-left:6px}.rowhead .rowsp{flex:1 1}.rowadd{display:inline-flex;align-items:center;gap:5px;background:transparent;color:var(--tx3);border:1px solid transparent;border-radius:var(--r-sm);padding:4px 9px;font-size:var(--fs-sm);font-weight:var(--fw-med);font-family:inherit;cursor:pointer;opacity:.5;transition:opacity var(--dur) var(--ease),background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.rowhead:hover .rowadd{opacity:1}.rowadd:hover{background:var(--hover);color:var(--tx);border-color:var(--line2)}.rowadd .rowadd-ic{font-weight:var(--fw-bold);color:var(--cta)}.rownew{display:inline-flex;align-items:center;gap:5px;background:var(--s2);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:4px 9px;font-size:var(--fs-sm);font-weight:var(--fw-med);font-family:inherit;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.rownew:hover{background:var(--hover);color:var(--tx);border-color:var(--line3)}.rownew .pl{color:var(--cta);font-weight:var(--fw-bold)}.lock{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:var(--fs-sm);font-weight:var(--fw-med);letter-spacing:0;color:var(--tx3)}.lock input{position:absolute;opacity:0;width:0;height:0}.lock .kn{position:relative;width:34px;height:19px;border-radius:var(--r-pill);background:var(--s3);transition:background var(--dur) var(--ease);flex:none}.lock .kn:after{content:"";position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:var(--tx3);transition:transform var(--dur) var(--ease),background var(--dur) var(--ease)}.lock.on .kn{background:var(--ok)}.lock.on .kn:after{transform:translateX(15px);background:var(--tx)}.lock.on{color:var(--ok)}.row{display:flex;gap:16px;align-items:flex-start}.card{position:relative;flex:none;width:232px;margin:0;background:var(--s2);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-1)}.card img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover;background:var(--s3)}.card .ph{width:100%;aspect-ratio:4/5;justify-content:center;font:var(--fw-med) var(--fs-sm)/1 var(--mono);background:var(--s1)}.card .ph,.card figcaption{display:flex;align-items:center;color:var(--tx3)}.card figcaption{gap:6px;font-size:var(--fs-sm);padding:7px 10px;font-family:var(--mono)}.card figcaption .cid{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card figcaption .capsp{flex:1 1}.card .lk-ic{display:inline-flex;align-items:center;flex:none;color:var(--ok)}.card .lk-ic svg{height:13px;width:auto;display:block}.card .carddownload,.card .cardedit{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-width:28px;height:28px;background:none;border:0;border-radius:var(--r-xs);padding:3px 6px;cursor:pointer;color:var(--tx3);flex:none;font:var(--fw-bold) var(--fs-sm)/1 var(--mono);opacity:0;pointer-events:none;transition:opacity var(--dur) var(--ease),color var(--dur) var(--ease),background var(--dur) var(--ease)}.card .carddownload svg,.card .cardedit svg{height:14px;width:auto;display:block}.card .carddownload:hover,.card .cardedit:hover{color:var(--cta);background:var(--cta-soft)}.card .carddownload:focus-visible,.card .cardedit:focus-visible{opacity:1;pointer-events:auto;outline:1.5px solid var(--cta);outline-offset:1px;color:var(--cta)}.card .carddownload:disabled{cursor:default;color:var(--line3)}.card:focus-within .carddownload,.card:focus-within .cardedit,.card:hover .carddownload,.card:hover .cardedit{opacity:1;pointer-events:auto}@media (hover:none){.card .carddownload,.card .cardedit{opacity:1;pointer-events:auto}}.card .ai-tag{flex:none;font-size:var(--fs-sm);font-weight:var(--fw-bold);line-height:13px;color:var(--cta);letter-spacing:.03em}.card .cardpin{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;background:none;border:0;border-radius:var(--r-xs);padding:3px 6px;cursor:pointer;color:var(--tx3);flex:none;opacity:0;pointer-events:none;transition:opacity var(--dur) var(--ease),color var(--dur) var(--ease),background var(--dur) var(--ease)}.card .cardpin svg{height:14px;width:auto;display:block}.card .cardpin:hover{color:var(--cta);background:var(--cta-soft)}.card .cardpin:focus-visible{opacity:1;pointer-events:auto;outline:1.5px solid var(--cta);outline-offset:1px;color:var(--cta)}.card .cardpin:disabled{cursor:default;color:var(--line3)}.card .cardpin.on{opacity:1;pointer-events:auto;color:var(--cta)}.card:focus-within .cardpin,.card:hover .cardpin{opacity:1;pointer-events:auto}@media (hover:none){.card .cardpin{opacity:1;pointer-events:auto}}.row.locked .card{outline:1.5px solid var(--ok-line)}.card.foc{outline:2px solid var(--tx);outline-offset:3px;box-shadow:0 0 0 4px rgba(255,255,255,.12),var(--shadow-2)}.card{cursor:pointer;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.5)}.ed-overlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:var(--scrim);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:22px}.ed-modal{position:relative;display:flex;flex-direction:column;width:min(1500px,95vw);height:min(980px,94vh);background:var(--s1);border:1px solid var(--line2);border-radius:var(--r-lg);box-shadow:var(--shadow-2);overflow:hidden}.ed-head{display:flex;align-items:center;gap:12px;height:56px;flex:none;padding:0 16px;border-bottom:1px solid var(--line);background:var(--s2)}.ed-head .ed-id{font-family:var(--mono);font-weight:var(--fw-med);font-size:var(--fs-base);color:var(--tx)}.ed-head .ed-tmpl{font-size:var(--fs-sm);font-weight:var(--fw-med);letter-spacing:0;color:var(--tx3);background:var(--s3);border:1px solid var(--line2);border-radius:var(--r-sm);padding:4px 9px}.ed-head .ed-tag{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.03em;color:var(--cta);background:var(--cta-soft);border:1px solid var(--cta-line);border-radius:var(--r-pill);padding:3px 9px}.ed-head .ed-sp{flex:1 1}.ed-head .ed-dirty{font-size:var(--fs-sm);color:var(--warn);font-weight:var(--fw-med)}.ed-head .ed-save{background:var(--cta);color:var(--cta-ink);border:0;border-radius:var(--r-sm);padding:9px 18px;font-weight:var(--fw-bold);font-size:var(--fs-base);font-family:inherit;cursor:pointer;transition:background var(--dur) var(--ease)}.ed-head .ed-save:disabled{opacity:.45;cursor:default}.ed-head .ed-save:not(:disabled):hover{background:var(--cta-hover)}.ed-head .ed-close{background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);width:36px;height:36px;font-size:var(--fs-base);cursor:pointer;transition:background var(--dur) var(--ease)}.ed-head .ed-close:hover{background:var(--hover);color:var(--tx)}.ed-body{flex:1 1;display:flex;min-height:0}.cap-panel{flex:none;width:380px;border-left:1px solid var(--line2);display:flex;flex-direction:column;gap:8px;padding:14px 16px;overflow-y:auto;background:var(--s1)}.cap-head{display:flex;align-items:center;gap:8px}.cap-title{color:var(--tx);font-size:var(--fs-md);font-weight:var(--fw-bold)}.cap-sp{flex:1 1}.cap-dirty{color:var(--cta);font-size:var(--fs-sm)}.cap-save{background:var(--cta);color:#fff;border:0;border-radius:var(--r-xs);padding:5px 12px;cursor:pointer;font:var(--fw-bold) var(--fs-sm)/1 var(--mono)}.cap-save:disabled{background:var(--s3);color:var(--tx3);cursor:default}.cap-gen{background:none;border:1px solid var(--cta);color:var(--cta);border-radius:var(--r-xs);padding:8px 12px;cursor:pointer;font:var(--fw-bold) var(--fs-sm)/1.2 var(--mono);transition:background var(--dur) var(--ease)}.cap-gen:hover{background:var(--cta-soft)}.cap-gen:disabled{border-color:var(--line3);color:var(--tx3);cursor:default;background:none}.cap-err,.cap-warn{font-size:var(--fs-sm);line-height:1.4;border-radius:var(--r-xs);padding:7px 9px}.cap-warn{color:var(--cta);background:var(--cta-soft)}.cap-err{color:var(--danger,#e05252);background:rgba(224,82,82,.12)}.cap-lab{display:flex;align-items:center;gap:8px;color:var(--tx3);font-size:var(--fs-sm);font-weight:var(--fw-bold);margin-top:6px;letter-spacing:.04em;text-transform:uppercase}.cap-copy{margin-left:auto;background:none;border:0;color:var(--tx3);cursor:pointer;font:var(--fw-med) var(--fs-sm)/1 var(--mono);text-transform:none;letter-spacing:0}.cap-copy:hover{color:var(--cta)}.cap-copy:disabled{color:var(--line3);cursor:default}.cap-area{width:100%;min-height:74px;resize:vertical;background:var(--s2);color:var(--tx);border:1px solid var(--line2);border-radius:var(--r-xs);padding:9px 10px;font-size:var(--fs-md);line-height:1.5;font-family:inherit}.cap-area:focus{outline:1.5px solid var(--cta);outline-offset:0;border-color:transparent}.cap-area-lg{min-height:300px}.cap-counts{display:flex;flex-wrap:wrap;gap:12px;color:var(--tx3);font:var(--fw-med) var(--fs-sm)/1 var(--mono)}.cap-counts .ok{color:var(--ok)}.cap-counts .warn{color:var(--cta)}.ed-preview{flex:1.5 1;min-width:0;position:relative;display:flex;align-items:center;justify-content:center;background:var(--bg);background-image:radial-gradient(rgba(255,255,255,.035) 1.2px,transparent 0);background-size:24px 24px;border-right:1px solid var(--line)}.ed-stage{position:relative;box-shadow:var(--shadow-2);border-radius:var(--r-sm);overflow:hidden}.ed-stage iframe{display:block}.ed-pending{position:absolute;top:10px;right:10px;width:14px;height:14px;border-radius:50%;border:2px solid var(--cta-soft);border-top-color:var(--cta);animation:ed-spin .7s linear infinite}@keyframes ed-spin{to{transform:rotate(1turn)}}.ed-err{position:absolute;bottom:14px;left:14px;background:var(--danger-soft);border:1px solid var(--danger-line);color:#ffd9d9;font-size:var(--fs-base);padding:8px 12px;border-radius:var(--r-sm)}.ed-fields{flex:none;width:392px;overflow-y:auto;padding:18px 18px 60px;background:var(--s1)}.ed-group{margin-bottom:22px}.ed-group-h{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.04em;color:var(--tx3);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}.ed-empty{font-size:var(--fs-base);color:var(--tx3);font-style:italic}.ed-field{margin-bottom:15px}.ed-field>label{display:flex;align-items:baseline;gap:8px;font-size:var(--fs-base);font-weight:var(--fw-med);color:var(--tx2);margin-bottom:6px;letter-spacing:0}.ed-field .ed-hint{font-size:var(--fs-sm);font-weight:var(--fw-reg);color:var(--tx3);letter-spacing:0}.ed-field input,.ed-field textarea{width:100%;padding:9px 11px;border-radius:var(--r-sm);border:1px solid var(--line2);background:var(--bg);color:var(--tx);font-size:var(--fs-base);font-family:inherit;line-height:1.45;resize:vertical}.ed-field input:focus,.ed-field textarea:focus{outline:none;border-color:var(--cta);box-shadow:0 0 0 3px var(--cta-soft)}.ed-field input:disabled,.ed-field textarea:disabled{opacity:.5;cursor:not-allowed}.ed-list-stub{font-size:var(--fs-base);color:var(--tx3);background:var(--bg);border:1px dashed var(--line2);border-radius:var(--r-sm);padding:11px 12px}.ed-brand{display:flex;flex-direction:column;gap:13px}.ed-brand-presets{display:flex;gap:8px;flex-wrap:wrap}.ed-swatch{display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:0;padding:0;cursor:pointer;width:54px}.ed-swatch .sw{width:48px;height:34px;border-radius:var(--r-sm);border:2px solid var(--line2);box-shadow:inset 0 0 0 1px rgba(0,0,0,.3)}.ed-swatch.off .sw{background:var(--bg);position:relative}.ed-swatch.off .sw:after{content:"";position:absolute;left:7px;right:7px;top:50%;height:2px;background:var(--tx3);transform:rotate(-18deg)}.ed-swatch .lb{font-size:var(--fs-sm);font-weight:var(--fw-med);color:var(--tx3)}.ed-swatch:hover .sw{border-color:var(--line3)}.ed-swatch.on .sw{border-color:var(--cta);box-shadow:0 0 0 2px var(--cta-soft)}.ed-swatch.on .lb{color:var(--cta)}.ed-swatch:disabled{opacity:.5;cursor:not-allowed}.ed-brand-dose{display:flex;align-items:center;gap:12px}.ed-brand-dose input[type=range]{flex:1 1;accent-color:var(--cta);height:4px}.ed-brand-val{font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--tx2);min-width:42px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.set-modal{display:flex;flex-direction:column;width:min(520px,94vw);max-height:90vh;background:var(--s1);border:1px solid var(--line2);border-radius:var(--r-lg);box-shadow:var(--shadow-2);overflow:hidden}.set-body{padding:20px 22px 26px;overflow-y:auto}.set-section h3{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--tx);margin:0 0 6px}.set-hint{font-size:var(--fs-base);line-height:1.5;color:var(--tx3);margin:0 0 16px}.set-exclude{margin:16px 0 18px}.set-exclude-h{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.04em;color:var(--tx3);margin-bottom:9px}.set-exclude-list{display:flex;flex-wrap:wrap;gap:8px 16px}.set-check{display:inline-flex;align-items:center;gap:7px;font-size:var(--fs-base);color:var(--tx2);cursor:pointer}.set-check input{accent-color:var(--cta);width:15px;height:15px}.set-apply{width:100%;margin-top:6px}.set-confirm{margin-top:6px;display:flex;flex-direction:column;gap:9px;padding:11px;border:1px solid var(--line2);border-radius:var(--r-sm);background:var(--warn-soft)}.set-confirm-t{font-size:var(--fs-base);color:var(--tx2);line-height:1.4}.set-confirm-a{display:flex;gap:8px;justify-content:flex-end}.set-confirm-a .set-apply{width:auto;margin-top:0}.set-bar{margin-top:12px;height:6px;border-radius:var(--r-pill);background:var(--bg);overflow:hidden}.set-bar-fill{height:100%;background:var(--cta);transition:width .2s var(--ease)}.set-result{margin-top:12px;font-size:var(--fs-base);font-weight:var(--fw-med);color:var(--ok)}.ed-list{display:flex;flex-direction:column;gap:8px}.ed-list-empty{font-size:var(--fs-base);color:var(--tx3);font-style:italic}.ed-list-row{display:flex;gap:8px;align-items:flex-start;background:var(--bg);border:1px solid var(--line2);border-radius:var(--r-sm);padding:8px}.ed-list-fields{flex:1 1;display:flex;flex-wrap:wrap;gap:7px;min-width:0}.ed-list-str{width:100%;padding:8px 10px;border-radius:var(--r-sm);border:1px solid var(--line2);background:var(--s2);color:var(--tx);font-size:var(--fs-base);font-family:inherit}.ed-list-fields .ed-item-line{flex:1 1 100%}.ed-list-fields .ed-item-num{flex:1 1 72px}.ed-list-fields .ed-item-bool{flex:1 1 100%}.ed-item-line,.ed-item-num{display:flex;flex-direction:column;gap:3px}.ed-item-line>span,.ed-item-num>span{font-size:var(--fs-sm);font-weight:var(--fw-med);color:var(--tx3);letter-spacing:0}.ed-item-line input,.ed-item-num input{padding:7px 9px;border-radius:var(--r-sm);border:1px solid var(--line2);background:var(--s2);color:var(--tx);font-size:var(--fs-base);font-family:inherit;width:100%}.ed-item-bool{display:flex;align-items:center;gap:7px;font-size:var(--fs-base);color:var(--tx2);cursor:pointer;margin-top:2px}.ed-item-bool input{accent-color:var(--cta);width:15px;height:15px}.ed-item-line input:focus,.ed-item-num input:focus,.ed-list-str:focus{outline:none;border-color:var(--cta)}.ed-list-ctl{display:flex;flex-direction:column;gap:4px;flex:none}.ed-list-ctl button{width:26px;height:22px;border-radius:var(--r-xs);border:1px solid var(--line2);background:var(--s3);color:var(--tx2);font-size:var(--fs-base);cursor:pointer;line-height:1;padding:0}.ed-list-ctl button:hover:not(:disabled){background:var(--hover)}.ed-list-ctl button:disabled{opacity:.35;cursor:default}.ed-list-ctl button.rm:hover:not(:disabled){background:var(--danger-soft);color:#ffd9d9}.ed-list-add{align-self:flex-start;margin-top:2px;padding:8px 12px;border-radius:var(--r-sm);border:1px dashed var(--cta-line);background:transparent;color:var(--cta);font-size:var(--fs-base);font-weight:var(--fw-med);cursor:pointer}.ed-list-add:hover:not(:disabled){background:var(--cta-soft)}.ed-list-add:disabled{opacity:.5;cursor:default}.ed-crop-box{position:relative;width:100%;border-radius:var(--r-sm);overflow:hidden;background:var(--bg);border:1px solid var(--line2);-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.ed-crop-box[data-grab=true]{cursor:-webkit-grab;cursor:grab}.ed-crop-box[data-grab=true]:active{cursor:-webkit-grabbing;cursor:grabbing}.ed-crop-box img{display:block;pointer-events:none}.ed-crop-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--tx3);font-size:var(--fs-base)}.ed-crop-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 0);background-size:33.33% 33.33%;opacity:.6}.ed-crop-ctl{display:flex;align-items:center;gap:10px;margin-top:9px}.ed-crop-lab{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.04em;color:var(--tx3)}.ed-crop-ctl input[type=range]{flex:1 1;accent-color:var(--cta);height:4px}.ed-crop-val{font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--tx2);min-width:40px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ed-crop-reset{background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:5px 9px;font-size:var(--fs-sm);cursor:pointer}.ed-crop-reset:hover:not(:disabled){background:var(--hover)}.ed-crop-hint{margin-top:7px}.ed-crop-hint,.ed-subhead{font-size:var(--fs-sm);color:var(--tx3)}.ed-subhead{font-weight:var(--fw-bold);letter-spacing:.04em;margin:16px 0 10px;padding-top:13px;border-top:1px solid var(--line)}.ed-crop-box[data-drop=true]{border-color:var(--cta);box-shadow:0 0 0 2px var(--cta-line) inset}.ed-hero-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:14px;cursor:pointer;border:1.5px dashed var(--line3);border-radius:var(--r-sm);color:var(--tx3);transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.ed-hero-empty:hover{border-color:var(--cta);background:var(--cta-soft)}.ed-hero-empty-ic{font-size:var(--fs-lg);line-height:1;color:var(--cta);font-weight:var(--fw-bold)}.ed-hero-empty-t{font-size:var(--fs-base);color:var(--tx2);line-height:1.35}.ed-hero-empty-s{font-size:var(--fs-sm);color:var(--tx3);letter-spacing:0}.ed-hero-tb{position:absolute;top:7px;right:7px;display:flex;gap:6px;z-index:3}.ed-hero-tb button{background:var(--scrim);color:var(--tx2);border:1px solid var(--line3);border-radius:var(--r-sm);padding:5px 9px;font-size:var(--fs-sm);font-weight:var(--fw-med);cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ed-hero-tb button:hover{background:var(--cta);border-color:var(--cta);color:var(--cta-ink)}.ed-hero-drop{background:var(--cta-soft);color:var(--tx);font-weight:var(--fw-bold);letter-spacing:.02em;pointer-events:none;z-index:4}.ed-hero-busy,.ed-hero-drop{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-base)}.ed-hero-busy{gap:9px;background:var(--scrim);color:var(--tx2);font-weight:var(--fw-med);z-index:5}.ed-hero-spin{width:15px;height:15px;border:2px solid var(--line3);border-top-color:var(--cta);border-radius:50%;display:inline-block;animation:ed-spin .7s linear infinite}.ed-hero-url{display:flex;gap:7px;margin-top:8px}.ed-hero-url input{flex:1 1;background:var(--bg);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:7px 9px;font-size:var(--fs-base)}.ed-hero-url input:focus{outline:none;border-color:var(--cta)}.ed-hero-url button{background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:6px 12px;font-size:var(--fs-base);font-weight:var(--fw-med);cursor:pointer}.ed-hero-url button:hover:not(:disabled){background:var(--cta);border-color:var(--cta);color:var(--cta-ink)}.ed-hero-url button:disabled{opacity:.5;cursor:default}.ed-hero-err{margin-top:7px;font-size:var(--fs-sm);color:#f0a0a0;background:var(--danger-soft);border:1px solid var(--danger-line);border-radius:var(--r-sm);padding:6px 9px}.ed-head .ed-freeze{background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:8px 14px;font-weight:var(--fw-med);font-size:var(--fs-base);font-family:inherit;cursor:pointer}.ed-head .ed-freeze:hover:not(:disabled){background:var(--hover)}.ed-head .ed-freeze.on{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}.ed-head .ed-freeze:disabled{opacity:.5;cursor:default}.ed-head .ed-frozen{font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--warn);letter-spacing:0}.ed-ai-toggle{display:flex;align-items:center;gap:9px;font-size:var(--fs-base);color:var(--tx2);cursor:pointer;margin-bottom:4px}.ed-ai-toggle input{accent-color:var(--cta);width:16px;height:16px;flex:none}.ed-ai-hint{color:var(--tx3);font-size:var(--fs-sm);font-weight:var(--fw-reg)}#topbar button.tb-new{background:var(--cta);color:var(--cta-ink);border:0;font-weight:var(--fw-bold)}#topbar button.tb-new:hover{background:var(--cta-hover)}.create-modal{display:flex;flex-direction:column;width:min(620px,94vw);max-height:90vh;background:var(--s1);border:1px solid var(--line2);border-radius:var(--r-lg);box-shadow:var(--shadow-2);overflow:hidden}.create-body{padding:18px 22px 24px;overflow-y:auto}.create-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));grid-gap:10px;gap:10px;margin:14px 0 18px}.create-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:3px;background:var(--s2);border:1px solid var(--line2);border-radius:var(--r);padding:12px 13px;cursor:pointer;text-align:left;transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.create-tile:hover:not(:disabled){border-color:var(--cta);background:var(--hover)}.create-tile:disabled{opacity:.6;cursor:default}.create-tmpl{font-size:var(--fs-base);font-weight:var(--fw-med);color:var(--tx)}.create-key{font-size:var(--fs-sm);color:var(--tx3);font-family:var(--mono)}.create-spin{position:absolute;top:10px;right:10px;width:12px;height:12px;border-radius:50%;border:2px solid var(--cta-soft);border-top-color:var(--cta);animation:ed-spin .7s linear infinite}.create-gen{width:100%;padding:11px;border-radius:var(--r);border:1px dashed var(--line2);background:transparent;color:var(--tx3);cursor:not-allowed}.create-gen,.ed-head .ed-dup{font-size:var(--fs-base);font-weight:var(--fw-med)}.ed-head .ed-dup{background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:8px 14px;font-family:inherit;cursor:pointer}.ed-head .ed-dup:hover:not(:disabled){background:var(--hover)}.ed-head .ed-dup:disabled{opacity:.5;cursor:default}.ed-head .ed-del{background:transparent;color:var(--danger);border:1px solid var(--danger-line);border-radius:var(--r-sm);padding:8px 14px;font-weight:var(--fw-med);font-size:var(--fs-base);font-family:inherit;cursor:pointer}.ed-head .ed-del:hover:not(:disabled){background:var(--danger-soft);color:#ffc9c9;border-color:var(--danger)}.ed-head .ed-del:disabled{opacity:.5;cursor:default}.ed-confirm{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;background:var(--scrim);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ed-confirm-box{width:min(420px,90%);background:var(--s2);border:1px solid var(--line2);border-radius:var(--r-lg);padding:22px 22px 18px;box-shadow:var(--shadow-2)}.ed-confirm-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--tx);margin-bottom:8px}.ed-confirm-text{font-size:var(--fs-base);line-height:1.5;color:var(--tx2);margin-bottom:18px}.ed-confirm-text b{color:#ffb3b3}.ed-confirm-actions{display:flex;justify-content:flex-end;gap:10px}.ed-confirm-cancel{background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:9px 16px;font-weight:var(--fw-med);font-size:var(--fs-base);cursor:pointer}.ed-confirm-cancel:hover:not(:disabled){background:var(--hover)}.ed-confirm-del{background:var(--danger);color:var(--danger-ink);border:0;border-radius:var(--r-sm);padding:9px 18px;font-weight:var(--fw-bold);font-size:var(--fs-base);cursor:pointer}.ed-confirm-del:hover:not(:disabled){filter:brightness(1.1)}.ed-confirm-cancel:disabled,.ed-confirm-del:disabled{opacity:.55;cursor:default}.login-wrap{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg)}.login-card{background:var(--s2);border:1px solid var(--line2);border-radius:var(--r-lg);padding:34px 32px;width:360px;color:var(--tx2)}.login-card h1{font-size:var(--fs-lg);font-weight:var(--fw-bold);margin:0 0 4px;color:var(--tx)}.login-card p{font-size:var(--fs-base);color:var(--tx3);margin:0 0 22px}.login-card label{display:block;font-size:var(--fs-sm);color:var(--tx3);margin:14px 0 6px;letter-spacing:.04em}.login-card input{width:100%;padding:11px 13px;border-radius:var(--r-sm);border:1px solid var(--line2);background:var(--s1);color:var(--tx);font-size:var(--fs-base)}.login-card input:focus{outline:none;border-color:var(--cta);box-shadow:0 0 0 3px var(--cta-soft)}.login-card button{width:100%;margin-top:22px;padding:12px;border:0;border-radius:var(--r-sm);background:var(--cta);color:var(--cta-ink);font-weight:var(--fw-bold);font-size:var(--fs-base);cursor:pointer}.login-card button:disabled{opacity:.6;cursor:default}.login-card .err{color:#ff9a9a;font-size:var(--fs-base);margin-top:14px}.ed-gen{background:var(--cta-soft);color:var(--cta);border:1px solid var(--cta-line);border-radius:var(--r-sm);padding:8px 14px;font-weight:var(--fw-med);font-size:var(--fs-base);font-family:inherit;cursor:pointer}.ed-gen:hover:not(:disabled){background:var(--cta);color:var(--cta-ink)}.gs-overlay{position:fixed;inset:0;z-index:210;background:var(--bg);display:flex;align-items:stretch;justify-content:center;padding:0}.gs-frame{width:100%;max-width:none;height:100%;background:var(--s1);border:0;border-radius:0;display:flex;flex-direction:column;overflow:hidden}.gs-steps{gap:10px;padding:11px 14px;margin:12px 16px 0;border:1px solid var(--line2);border-radius:var(--r);background:var(--s2)}.gs-step,.gs-steps{display:flex;align-items:center}.gs-step{gap:8px;color:var(--tx3);font-size:var(--fs-base);font-weight:var(--fw-med);white-space:nowrap;background:none;border:0;font-family:inherit;cursor:pointer;padding:0}.gs-step.locked,.gs-step:disabled{cursor:default}.gs-step:not(:disabled):not(.current):hover{color:var(--tx2)}.gs-step .gs-step-n{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--s3);color:var(--tx3);font-size:var(--fs-sm);font-weight:var(--fw-bold);flex:none}.gs-step.current{color:var(--tx)}.gs-step.current .gs-step-n{background:var(--cta);color:var(--cta-ink)}.gs-step.done .gs-step-n{background:var(--ok);color:#08130d}.gs-step.locked{opacity:.45}.gs-step:after{content:"";width:22px;height:1px;background:var(--line2);margin-left:2px}.gs-step:last-child:after{display:none}.gs-viewseg{display:inline-flex;background:var(--s2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:2px;gap:2px;margin-left:6px}.gs-viewtab{background:transparent;border:0;color:var(--tx3);font-size:var(--fs-base);font-weight:var(--fw-med);font-family:inherit;padding:5px 12px;border-radius:5px;cursor:pointer}.gs-viewtab:hover{color:var(--tx2)}.gs-viewtab.on{background:var(--elev);color:var(--tx)}.gs-create{flex:1 1;display:flex;flex-direction:column;min-height:0;padding:0}.gs-create-body{flex:1 1;display:flex;min-height:0;gap:20px;margin-top:12px}.gs-postbar{display:flex;align-items:center;gap:12px;padding:0 16px;min-height:38px;border-bottom:1px solid var(--line);font-size:var(--fs-base)}.gs-pb-k{color:var(--cta);font-weight:var(--fw-bold);font-size:var(--fs-sm);letter-spacing:.06em;text-transform:uppercase}.gs-pb-k,.gs-pb-m{white-space:nowrap}.gs-pb-m{color:var(--tx);font-weight:var(--fw-med);overflow:hidden;text-overflow:ellipsis;max-width:62%}.gs-pb-f{margin-left:auto;color:var(--tx3);font-size:var(--fs-sm)}.gs-body3{flex:1 1;display:flex;min-height:0}.gs-saeule{order:0;width:300px;flex:none;padding:16px;border-right:1px solid var(--line);overflow-y:auto;display:flex;flex-direction:column}.gs-saeule-h{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--tx2);margin-bottom:10px}.gs-saeule .ed-preview{width:100%;aspect-ratio:1080/1350;height:auto;flex:none;border:1px solid var(--line2);border-radius:var(--r);background:var(--bg)}.gs-zone{order:1;flex:1 1;min-width:0;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column}.gs-zone .gs-manual{max-width:980px;width:100%;margin:0 auto}.gs-inspector{order:2;width:33%;min-width:400px;max-width:560px;flex:none;border-left:1px solid var(--line);overflow-y:auto;padding:16px;display:flex;flex-direction:column}.gs-inspector.collapsed{width:48px;padding:12px 7px;overflow:hidden}.gs-insp-toggle{align-self:stretch;background:var(--s2);border:1px solid var(--line2);border-radius:var(--r-sm);color:var(--tx2);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-bold);padding:8px 11px;cursor:pointer;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:6px}.gs-insp-toggle:hover{background:var(--hover);color:var(--tx)}.gs-inspector.collapsed .gs-insp-toggle{writing-mode:vertical-rl;margin-bottom:0;padding:12px 8px;justify-content:center;white-space:nowrap}.gs-insp-h{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.04em;color:var(--tx3);margin-bottom:10px}.gs-insp-empty{max-width:240px}.gs-modebar{display:flex;gap:8px;padding:12px 16px 0}.gs-modebtn{flex:1 1;display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:9px 14px;border-radius:var(--r);border:1px solid var(--line2);background:var(--s2);color:var(--tx3);font-family:inherit;cursor:pointer;text-align:left}.gs-modebtn:hover:not(:disabled){background:var(--hover)}.gs-modebtn.on{border-color:var(--cta);background:var(--cta-soft)}.gs-modebtn-t{font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--tx2)}.gs-modebtn.on .gs-modebtn-t{color:var(--cta)}.gs-modebtn-s{font-size:var(--fs-sm);color:var(--tx3)}.gs-modebtn:disabled{opacity:.5;cursor:default}.gs-autopanel{margin:auto;max-width:480px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:32px 16px}.gs-autopanel-h{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--tx)}.gs-autopanel-s{font-size:var(--fs-base);color:var(--tx3);line-height:1.5;max-width:380px}.gs-autopanel .gs-generate{width:auto;min-width:300px;margin-top:6px}.gs-results{flex:1 1;min-height:0;padding:0;display:flex;flex-direction:column;overflow:hidden}.gs-results-body{flex:1 1;min-height:0;display:flex}.gs-results-stage{flex:1 1;min-width:0;overflow:auto;padding:18px}.gs-results-insp{width:33%;min-width:400px;max-width:560px;flex:none;border-left:1px solid var(--line);overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.gs-insp-stage{width:100%;aspect-ratio:4/5;max-height:46vh;flex:none;border:1px solid var(--line2);border-radius:var(--r);overflow:hidden;background:var(--bg);display:flex;align-items:center;justify-content:center}.gs-insp-stage img{width:100%;height:100%;object-fit:cover;display:block}.gs-insp-stage .gs-tile-ph{position:static}.gs-insp-meta{font-size:var(--fs-base);font-weight:var(--fw-med);color:var(--tx2)}.gs-insp-actions{display:flex;gap:8px;flex-wrap:wrap}.gs-insp-empty{margin:auto;text-align:center;color:var(--tx3);font-size:var(--fs-base);line-height:1.5;padding:24px}.gs-postref{margin-bottom:16px}.gs-postref-h{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.02em;color:var(--tx2);margin-bottom:8px;display:flex;align-items:center;gap:6px}.gs-postref-h span{color:var(--tx3);font-weight:var(--fw-reg)}.gs-postref .ed-preview{height:360px;flex:none;border:1px solid var(--line2);border-radius:var(--r);background:var(--bg)}.gs-head{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}.gs-close{background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);width:32px;height:32px;font-size:var(--fs-base);cursor:pointer}.gs-close:hover{background:var(--hover);color:var(--tx)}.gs-title{font-weight:var(--fw-bold);font-size:var(--fs-lg);color:var(--tx)}.gs-chip{font-size:var(--fs-base);color:var(--tx2);background:var(--s3);border-radius:var(--r-sm);padding:3px 9px}.gs-sp{flex:1 1}.gs-lab,.gs-lab2{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.04em;color:var(--tx3)}.gs-head select,.gs-prompt{background:var(--bg);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm)}.gs-head select{padding:7px 9px;font-size:var(--fs-base);font-family:inherit}.gs-body{display:flex;min-height:520px;flex:1 1}.gs-rail{width:38%;max-width:460px;border-right:1px solid var(--line)}.gs-main,.gs-rail{padding:16px;overflow-y:auto}.gs-main{flex:1 1;display:flex;flex-direction:column;overflow-x:auto}.gs-lab2{display:flex;align-items:center;gap:8px;margin:2px 0 8px}.gs-globalpill{color:var(--cta);background:var(--cta-soft);border-radius:var(--r-xs);padding:2px 6px}.gs-globalpill,.gs-savechain{font-size:var(--fs-sm);font-weight:var(--fw-med);text-transform:none;letter-spacing:0}.gs-savechain{margin-left:auto;background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:4px 9px;font-family:inherit;cursor:pointer}.gs-savechain:hover{background:var(--hover);color:var(--tx)}.gs-refgrid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:7px;gap:7px;margin-bottom:18px}.gs-ref{position:relative;aspect-ratio:1;border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--line2);background:var(--bg)}.gs-ref img{width:100%;height:100%;object-fit:cover;cursor:pointer;display:block}.gs-ref.off img{opacity:.32;filter:grayscale(1)}.gs-ref-ph{display:block;width:100%;height:100%}.gs-ref-del{position:absolute;top:2px;right:2px;width:18px;height:18px;border:0;border-radius:var(--r-xs);background:var(--scrim);color:var(--tx2);font-size:var(--fs-sm);cursor:pointer;line-height:1}.gs-ref-del:hover{background:var(--danger);color:#fff}.gs-ref-state{position:absolute;top:2px;left:2px;width:18px;height:18px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line3);border-radius:var(--r-xs);background:var(--scrim);color:var(--tx3);font-size:11px;line-height:1;cursor:pointer}.gs-ref-state.on{background:var(--ok);border-color:var(--ok);color:#08130d}.gs-ref-state:hover:not(:disabled){border-color:var(--cta)}.gs-ref-state:disabled{cursor:default}.gs-ref-add{aspect-ratio:1;border:1.5px dashed var(--line3);background:transparent;border-radius:var(--r-sm);color:var(--tx3);font-size:var(--fs-lg);cursor:pointer}.gs-ref-add:hover:not(:disabled){border-color:var(--cta);color:var(--cta)}.gs-stage{border:1px solid var(--line2);border-radius:var(--r-sm);margin-top:8px;overflow:hidden}.gs-stage-h{width:100%;display:flex;align-items:center;gap:9px;background:var(--s2);border:0;padding:9px 11px;cursor:pointer;color:var(--tx2)}.gs-stage-h:hover{background:var(--hover)}.gs-num{font-size:var(--fs-sm);font-weight:var(--fw-bold);background:var(--cta-soft);color:var(--cta);border-radius:var(--r-sm);padding:2px 8px}.gs-stage-name{font-size:var(--fs-base);font-weight:var(--fw-med)}.gs-stage-hint{font-size:var(--fs-sm);color:var(--tx3)}.gs-chev{color:var(--tx3);font-size:var(--fs-base)}.gs-stage-body{padding:9px 11px}.gs-prompt{width:100%;font-size:var(--fs-base);line-height:1.5;padding:8px 10px;resize:vertical;font-family:var(--mono)}.gs-stage-out{margin-top:8px;display:flex;flex-direction:column;gap:5px}.gs-out-item{font-size:var(--fs-base);color:var(--tx2);background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);padding:6px 8px}.gs-generate{width:100%;margin-top:16px;padding:11px;background:var(--cta);color:var(--cta-ink);border:0;border-radius:var(--r-sm);font-weight:var(--fw-bold);font-size:var(--fs-base);font-family:inherit;cursor:pointer;transition:background var(--dur) var(--ease)}.gs-generate:hover:not(:disabled){background:var(--cta-hover)}.gs-generate:disabled{opacity:.55;cursor:default}.gs-note{font-size:var(--fs-sm);color:var(--tx3);text-align:center;margin-top:7px}.gs-controls{margin-top:16px;display:flex;flex-direction:column;gap:10px}.gs-ctl-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.gs-stepper{display:inline-flex;align-items:center;gap:2px;background:var(--bg);border:1px solid var(--line2);border-radius:var(--r-sm);overflow:hidden}.gs-stepper button{width:30px;height:30px;background:transparent;color:var(--tx2);border:0;font-size:var(--fs-base);cursor:pointer}.gs-stepper button:hover:not(:disabled){background:var(--hover);color:var(--tx)}.gs-stepper button:disabled{opacity:.4;cursor:default}.gs-stepval{min-width:26px;text-align:center;font-weight:var(--fw-bold);font-size:var(--fs-base);color:var(--tx)}.gs-modelsel{display:inline-flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.gs-mtoggle{padding:6px 10px;border-radius:var(--r-sm);background:var(--bg);border:1px solid var(--line2);color:var(--tx3);font-size:var(--fs-sm);font-weight:var(--fw-med);font-family:inherit;cursor:pointer}.gs-mtoggle.on{background:var(--cta-soft);border-color:var(--cta);color:var(--cta)}.gs-mtoggle:disabled{opacity:.5;cursor:default}.gs-err{margin-top:10px;font-size:var(--fs-base);color:#f0a0a0;background:var(--danger-soft);border:1px solid var(--danger-line);border-radius:var(--r-sm);padding:7px 9px}.gs-manual{margin-top:14px;display:flex;flex-direction:column;gap:12px}.gs-mstage{background:var(--s2);border:1px solid var(--line2);border-radius:var(--r);padding:10px}.gs-mstage-h{margin-bottom:8px}.gs-mstage-h,.gs-running{display:flex;align-items:center;gap:9px}.gs-running{margin:2px 0 10px;padding:8px 11px;border:1px solid var(--line2);border-radius:var(--r-sm);background:var(--s2);font-size:var(--fs-sm);color:var(--tx2);line-height:1.4}.gs-mstage-t{font-size:var(--fs-base);font-weight:var(--fw-med);color:var(--tx2);flex:1 1}.gs-mengen{background:var(--s2);border:1px solid var(--line2);border-radius:var(--r);padding:12px;display:flex;flex-direction:column;gap:10px;margin-top:2px}.gs-mengen-h{font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--tx)}.gs-mengen .gs-note{text-align:left;margin-top:0}.gs-sympool{gap:6px;margin-top:2px}.gs-pool,.gs-sympool{display:flex;flex-direction:column}.gs-pool{gap:7px}.gs-pool-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:2px}.gs-poolcount{font-size:var(--fs-sm);font-weight:var(--fw-bold);background:var(--cta-soft);color:var(--cta);border-radius:var(--r-sm);padding:1px 7px;margin-left:5px}.gs-pool-wgstatus{font-size:var(--fs-sm);font-weight:var(--fw-med)}.gs-pool-wgstatus.pend{color:var(--warn);animation:wgpulse 1.1s ease-in-out infinite}.gs-pool-wgstatus.ok{color:var(--ok)}.gs-pool-wgoff{color:var(--tx3);font-size:var(--fs-sm)}.gs-poolgrid{display:flex;flex-direction:column;gap:8px}.gs-poolcard{position:relative;background:var(--bg);border:1px solid var(--line2);border-radius:var(--r)}.gs-poolcard:focus-within{border-color:var(--cta)}.gs-poolcard.flagged{border-color:var(--warn)}.gs-poolcard textarea{width:100%;font-size:var(--fs-base);line-height:1.55;padding:10px 58px 10px 13px;background:transparent;color:var(--tx2);border:0;border-radius:var(--r);resize:vertical;min-height:38px;field-sizing:content}.gs-poolcard textarea:focus{outline:none}.gs-poolcard-tools{position:absolute;top:6px;right:6px;display:flex;align-items:center;gap:4px}.gs-poolcard-del{width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:transparent;border:0;color:var(--tx3);font-size:var(--fs-sm);cursor:pointer;border-radius:var(--r-xs);opacity:0;transition:opacity .1s}.gs-poolcard:focus-within .gs-poolcard-del,.gs-poolcard:hover .gs-poolcard-del{opacity:1}.gs-poolcard-del:hover:not(:disabled){background:var(--danger-soft);color:#f0a0a0}.gs-wg{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:var(--r-xs);font-size:11px;cursor:default}.gs-wg.ok{background:var(--ok-soft);color:var(--ok)}.gs-wg.flag{background:var(--warn-soft);color:var(--warn)}.gs-wg.pend{color:var(--tx3);animation:wgpulse 1.1s ease-in-out infinite}.gs-wg-pop{display:none;position:absolute;top:calc(100% + 6px);right:0;z-index:20;width:248px;flex-direction:column;gap:3px;padding:9px 11px;background:var(--elev);border:1px solid var(--line2);border-radius:var(--r-sm);box-shadow:var(--shadow-1);font-size:var(--fs-sm);line-height:1.4;text-align:left;white-space:normal;color:var(--tx2)}.gs-wg:focus .gs-wg-pop,.gs-wg:hover .gs-wg-pop{display:flex}.gs-wg-pop b{color:var(--tx);font-weight:var(--fw-bold)}.gs-wg-pop-r{color:var(--warn)}.gs-wg-pop-g{color:var(--tx3)}@keyframes wgpulse{0%,to{opacity:1}50%{opacity:.4}}.gs-pool-add{align-self:flex-start;background:var(--s3);color:var(--tx2);border:1px dashed var(--line3);border-radius:var(--r-sm);padding:6px 11px;font-size:var(--fs-base);font-weight:var(--fw-med);font-family:inherit;cursor:pointer}.gs-pool-add:hover{border-color:var(--cta);color:var(--cta)}.gs-review{gap:9px}.gs-review,.gs-review-col{display:flex;flex-direction:column}.gs-review-col{gap:3px}.gs-review-lab{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.04em;color:var(--tx3)}.gs-review textarea{width:100%;font-size:var(--fs-base);line-height:1.5;padding:8px 10px;background:var(--bg);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);resize:vertical}.gs-review textarea:focus{outline:none;border-color:var(--cta)}.gs-review textarea.gs-mono{font-family:var(--mono);font-size:var(--fs-sm)}.gs-auditor,.gs-mstage .gs-seg.primary{margin-top:9px}.gs-auditor{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);padding:9px}.gs-auditor-h{justify-content:space-between;gap:8px}.gs-auditor-h,.gs-auditor-tog{display:flex;align-items:center}.gs-auditor-tog{gap:7px;font-size:var(--fs-base);color:var(--tx2);cursor:pointer}.gs-auditor-list{margin-top:8px;display:flex;flex-direction:column;gap:6px}.gs-auditor-row{display:flex;align-items:baseline;gap:8px;font-size:var(--fs-sm)}.gs-auditor-col{font-weight:var(--fw-bold);color:var(--tx3);min-width:58px}.gs-auditor-verdict{font-weight:var(--fw-bold);border-radius:var(--r-xs);padding:1px 7px;color:var(--tx2);background:var(--glass);white-space:nowrap}.gs-auditor-verdict.stark{color:var(--ok);background:var(--ok-soft)}.gs-auditor-verdict.mittel{color:var(--warn);background:var(--warn-soft)}.gs-auditor-verdict.schwach{color:#f0a0a0;background:var(--danger-soft)}.gs-auditor-reason{color:var(--tx3);line-height:1.4}.gs-matrix-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.gs-hint{font-size:var(--fs-base);color:var(--tx3)}.gs-cols{display:grid;grid-template-columns:120px repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:4px}.gs-cols span{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.04em;color:var(--tx3);text-align:center}.gs-row{display:grid;grid-template-columns:120px repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:8px;align-items:center}.gs-rowlab{font-size:var(--fs-base);font-weight:var(--fw-med);color:var(--tx2)}.gs-tile{position:relative;aspect-ratio:4/5;border-radius:var(--r-sm);overflow:hidden;background:var(--bg);border:1px solid var(--line2);cursor:default;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease)}.gs-tile.clickable{cursor:pointer}.gs-tile.clickable:hover{border-color:var(--tx3);transform:translateY(-1px);box-shadow:var(--shadow-1)}.gs-tile.pick{border:2px solid var(--cta);box-shadow:0 0 0 3px var(--cta-soft)}.gs-tile.pick.clickable:hover{transform:none;box-shadow:0 0 0 3px var(--cta-soft)}.gs-tile.sel{border:2px solid var(--tx)}.gs-tile img{width:100%;height:100%;object-fit:cover;display:block}.gs-tile-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--tx3);font-size:var(--fs-lg)}.gs-tile-ph.err{color:var(--warn)}.gs-badge{position:absolute;font-size:var(--fs-sm);font-weight:var(--fw-med);border-radius:var(--r-xs);padding:2px 6px}.gs-badge.sel{top:5px;right:5px;background:var(--cta);color:var(--cta-ink)}.gs-badge.rf{top:5px;left:5px;background:var(--scrim);padding:3px 5px}.gs-badge.rfd{bottom:5px;left:5px;background:var(--cta);color:var(--cta-ink)}.gs-spin{width:18px;height:18px;border:2px solid var(--line3);border-top-color:var(--cta);border-radius:50%;display:inline-block;animation:ed-spin .7s linear infinite}.gs-spin.sm{width:11px;height:11px;border-width:2px}.gs-actionbar{margin-top:auto;position:relative;display:flex;flex-direction:column;align-items:stretch;gap:10px;padding-top:14px;border-top:1px solid var(--line)}.gs-actionrow{flex-wrap:wrap}.gs-actionrow,.gs-refinestatus{display:flex;align-items:center;gap:9px}.gs-refinestatus{position:absolute;left:0;right:0;bottom:calc(100% + 8px);z-index:5;font-size:var(--fs-base);line-height:1.45;color:var(--tx2);background:var(--s2);box-shadow:var(--shadow-1);border:1px solid var(--cta-line);border-radius:var(--r-sm);padding:9px 12px}.gs-refinestatus .gs-spin{flex:0 0 auto}.gs-refinestatus.cold{color:var(--warn);border-color:var(--warn)}.gs-refinestatus.cold .gs-spin{border-top-color:var(--warn)}.gs-empty{padding:30px;text-align:center;color:var(--tx3);font-size:var(--fs-base);border:1px dashed var(--line2);border-radius:var(--r);margin:8px 0}.gs-runblock{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.gs-runhead{display:flex;align-items:center;gap:10px;margin:6px 0 8px}.gs-runidx{font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--cta)}.gs-runmeta{font-size:var(--fs-sm);color:var(--tx3)}.gs-runstatus{font-size:var(--fs-sm);color:var(--cta);font-weight:var(--fw-med)}.gs-runstatus.err{color:var(--warn)}.gs-tweak{padding:12px;background:var(--bg);border:1px solid var(--line2);border-radius:var(--r-sm);display:flex;flex-direction:column;gap:9px}.gs-tweak-note{font-size:var(--fs-sm);color:var(--tx3);line-height:1.4}.gs-refine{display:flex;flex-direction:column;gap:8px}.gs-refine-engines{display:flex;gap:6px;flex-wrap:wrap}.gs-refine-hint{font-size:var(--fs-sm);color:var(--tx3);line-height:1.3}.gs-refine-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.gs-tweak-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.gs-tweak label{display:flex;flex-direction:column;gap:3px;font-size:var(--fs-sm);font-weight:var(--fw-med);color:var(--tx3)}.gs-tweak input,.gs-tweak select,.gs-tweak textarea{background:var(--s2);border:1px solid var(--line2);border-radius:var(--r-sm);color:var(--tx);padding:6px 8px;font-size:var(--fs-base);font-family:var(--mono);resize:vertical}.gs-tweak input:focus,.gs-tweak select:focus,.gs-tweak textarea:focus{outline:none;border-color:var(--cta)}.gs-tweak-full{width:100%}.gs-picklab,.gs-seg{font-size:var(--fs-base);font-weight:var(--fw-med);color:var(--tx2)}.gs-seg{background:var(--s3);border:1px solid var(--line2);border-radius:var(--r-sm);padding:7px 12px;font-family:inherit;cursor:pointer}.gs-seg:hover:not(:disabled){background:var(--hover)}.gs-seg.primary{background:var(--cta);color:var(--cta-ink);border-color:var(--cta)}.gs-seg.primary:hover:not(:disabled){background:var(--cta-hover)}.gs-seg.primary.ok{background:var(--ok);border-color:var(--ok);color:#08130d}.gs-seg.primary.ok:disabled{opacity:1}.gs-seg:disabled{opacity:.5;cursor:default}.gs-cmp{position:fixed;inset:0;z-index:300;background:rgba(5,5,5,.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:hidden;animation:gs-cmp-in .18s var(--ease)}@keyframes gs-cmp-in{0%{opacity:0}to{opacity:1}}.gs-cmp-vp{position:absolute;inset:0;overflow:hidden;cursor:-webkit-grab;cursor:grab;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;background:radial-gradient(circle at 50% 42%,#121213 0,#070707 80%)}.gs-cmp-vp.grab{cursor:-webkit-grabbing;cursor:grabbing}.gs-cmp-stage{position:absolute;top:0;left:0;transform-origin:0 0;will-change:transform;box-shadow:var(--shadow-2)}.gs-cmp-img{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;object-fit:contain}.gs-cmp-img.top{transition:opacity .08s linear}@media (prefers-reduced-motion:reduce){.gs-cmp-img.top{transition:none}.gs-cmp{animation:none}}.gs-cmp-loading{inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--tx3);font-weight:var(--fw-med);letter-spacing:.04em}.gs-cmp-loading,.gs-cmp-peekpill{position:absolute;font-size:var(--fs-base)}.gs-cmp-peekpill{top:50%;left:50%;transform:translate(-50%,-50%);font-weight:var(--fw-bold);letter-spacing:.16em;color:var(--tx);background:var(--scrim);border:1px solid var(--line3);border-radius:var(--r-pill);padding:8px 20px;pointer-events:none;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:gs-cmp-pop .12s var(--ease)}@keyframes gs-cmp-pop{0%{opacity:0;transform:translate(-50%,-46%)}to{opacity:1;transform:translate(-50%,-50%)}}.gs-cmp-top{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:12px;padding:14px 18px;background:linear-gradient(180deg,var(--scrim) 0,transparent 100%);pointer-events:none}.gs-cmp-top>*{pointer-events:auto}.gs-cmp-label{font-size:var(--fs-base);font-weight:var(--fw-med);color:var(--tx2);font-family:var(--mono)}.gs-cmp-state{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:.06em;color:var(--cta);background:var(--cta-soft);border:1px solid var(--cta-line);border-radius:var(--r-sm);padding:3px 9px;transition:all .1s}.gs-cmp-state.orig{color:var(--tx);background:var(--glass-2);border-color:var(--line3)}.gs-cmp-tabs{display:flex;gap:4px;pointer-events:auto}.gs-cmp-tab{font-size:var(--fs-sm);font-weight:var(--fw-med);color:var(--tx3);background:var(--glass);border:1px solid var(--line2);border-radius:var(--r-sm);padding:3px 9px;cursor:pointer}.gs-cmp-tab.on{color:var(--cta-ink);background:var(--cta);border-color:var(--cta)}.gs-cmp-sp{flex:1 1}.gs-cmp-x{width:34px;height:34px;border-radius:var(--r-sm);background:var(--scrim);border:1px solid var(--line2);color:var(--tx2);font-size:var(--fs-base);cursor:pointer;transition:background .12s}.gs-cmp-x:hover{background:var(--hover);color:var(--tx)}.gs-cmp-hint{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);font-size:var(--fs-sm);color:var(--tx3);background:var(--scrim);border:1px solid var(--line2);border-radius:var(--r-pill);padding:7px 16px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);white-space:nowrap;pointer-events:none;font-family:var(--mono)}.gs-cmp-zoom{position:absolute;right:18px;bottom:18px;display:flex;align-items:center;gap:2px;background:var(--s2);border:1px solid var(--line2);border-radius:var(--r);padding:4px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-1)}.gs-cmp-zoom button{min-width:34px;height:30px;padding:0 9px;background:transparent;border:0;border-radius:var(--r-sm);color:var(--tx2);font-size:var(--fs-base);font-weight:var(--fw-med);cursor:pointer;transition:background .1s}.gs-cmp-zoom button:hover{background:var(--glass-2);color:var(--tx)}.gs-cmp-pct{min-width:52px;text-align:center;font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--tx);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-family:var(--mono)}.gs-cmp-div{width:1px;align-self:stretch;margin:3px 4px;background:var(--line2)}.cr-wrap{flex-direction:column;padding:var(--sp-10)}.cr-head,.cr-wrap{display:flex;gap:var(--sp-7)}.cr-head{align-items:flex-start;justify-content:space-between}.cr-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--tx);margin:0}.cr-sub{font-size:var(--fs-sm);color:var(--tx3);font-family:var(--mono);margin-top:var(--sp-1)}.cr-btn{display:inline-flex;align-items:center;gap:var(--sp-2);background:var(--cta);color:var(--cta-ink);border:0;border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-7);font:var(--fw-med) var(--fs-base)/1 var(--font);cursor:pointer;transition:background var(--dur) var(--ease)}.cr-btn:hover:not(:disabled){background:var(--cta-hover)}.cr-btn:disabled{opacity:.55;cursor:default}.cr-table-wrap{overflow-x:auto}.cr-table{width:100%;border-collapse:collapse;font-size:var(--fs-base)}.cr-table th{text-align:left;font-size:var(--fs-sm);font-weight:var(--fw-med);color:var(--tx3);padding:var(--sp-3) var(--sp-5);border-bottom:1px solid var(--line2);font-family:var(--mono)}.cr-table td{padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--line);color:var(--tx2)}.cr-table tbody tr{cursor:pointer}.cr-table tbody tr:hover td{background:var(--hover)}.cr-table tbody tr:focus-visible{outline:2px solid var(--cta);outline-offset:-2px}.cr-prog{position:relative;width:100%;height:var(--sp-1);background:var(--s3);border-radius:var(--r-pill);overflow:hidden}.cr-prog-fill{position:absolute;inset:0;transform-origin:left;background:var(--cta);transition:transform var(--dur-slow) var(--ease)}.cr-prog-fill[data-state=done]{background:var(--ok)}.cr-prog-fill[data-state=error]{background:var(--danger)}.cr-status{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);font-weight:var(--fw-med);font-family:var(--mono);color:var(--tx2)}.cr-status:before{content:"";width:var(--sp-2);height:var(--sp-2);border-radius:var(--r-pill);background:var(--tx3)}.cr-status.is-running:before{background:var(--cta)}.cr-status.is-done:before{background:var(--ok)}.cr-status.is-error:before{background:var(--danger)}.cr-num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--tx2);font-family:var(--mono)}.cr-empty{color:var(--tx3);font-size:var(--fs-base);padding:var(--sp-10);text-align:center;border:1px dashed var(--line2);border-radius:var(--r-lg)}.cr-area{display:flex;flex-direction:column;height:100%;overflow:hidden;margin-left:var(--rail-w);padding-top:var(--top-h)}.cr-area-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-7);padding:var(--sp-9) var(--sp-10);border-bottom:1px solid var(--line)}.cr-area-body{flex:1 1;min-height:0;overflow:auto;padding:var(--sp-10)}.cr-seg{display:inline-flex;gap:var(--sp-1);background:var(--s2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:var(--sp-1)}.cr-seg-btn{background:transparent;border:0;color:var(--tx3);font-size:var(--fs-base);font-weight:var(--fw-med);font-family:inherit;padding:var(--sp-2) var(--sp-6);border-radius:var(--r-xs);cursor:pointer;transition:color var(--dur) var(--ease),background var(--dur) var(--ease)}.cr-seg-btn:hover{color:var(--tx2)}.cr-seg-btn[data-on=true]{background:var(--elev);color:var(--tx)}.cr-seg-btn:focus-visible{outline:2px solid var(--cta);outline-offset:2px}.cr-pool{flex-direction:column}.cr-filter,.cr-pool{display:flex;gap:var(--sp-7)}.cr-filter{flex-wrap:wrap;align-items:center;padding:var(--sp-3) 0}.cr-filter-group{display:inline-flex;align-items:center;gap:var(--sp-3)}.cr-filter-label{font-size:var(--fs-sm);font-weight:var(--fw-med);font-family:var(--mono);color:var(--tx3)}.cr-filter-select{background:var(--s2);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-5);font-size:var(--fs-base);font-weight:var(--fw-med);font-family:inherit;cursor:pointer;transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease)}.cr-filter-select:hover{color:var(--tx)}.cr-filter-select:focus-visible{outline:2px solid var(--cta);outline-offset:2px}.cr-filter-count{margin-left:auto;font-size:var(--fs-sm);font-weight:var(--fw-med);font-family:var(--mono);color:var(--tx3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cr-grid{display:grid;grid-template-columns:repeat(auto-fill,var(--card-w));justify-content:start;grid-gap:var(--sp-7);gap:var(--sp-7)}.cr-tile{position:relative;background:var(--s2);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-1);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.cr-tile:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}.cr-tile:focus-visible{outline:2px solid var(--cta);outline-offset:2px}.cr-tile-ghost{pointer-events:none}.cr-tile-media{position:relative;width:100%;aspect-ratio:4/5;overflow:hidden;background:var(--s3)}.cr-tile-img{width:100%;height:100%;object-fit:cover;display:block;background:var(--paper);transition:opacity var(--dur) var(--ease)}.cr-tile-img,.cr-tile-ph{position:absolute;inset:0}.cr-tile-ph{gap:var(--sp-2);background:var(--s3);color:var(--tx3);font:var(--fw-med) var(--fs-sm)/1 var(--mono)}.cr-tile-err,.cr-tile-ph{display:flex;flex-direction:column;align-items:center;justify-content:center}.cr-tile-err{position:absolute;inset:0;gap:var(--sp-3);background:var(--s1)}.cr-err-chip{font-family:var(--mono);color:var(--tx3)}.cr-err-chip,.cr-err-retry{font-size:var(--fs-sm);font-weight:var(--fw-med)}.cr-err-retry{background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-5);font-family:inherit;cursor:pointer;transition:background var(--dur) var(--ease)}.cr-err-retry:hover{background:var(--hover)}.cr-err-retry:focus-visible{outline:2px solid var(--cta);outline-offset:2px}.cr-skel{background:var(--s3);overflow:hidden}.cr-skel,.cr-skel:after{position:absolute;inset:0}.cr-skel:after{content:"";transform:translateX(-100%);background:linear-gradient(90deg,transparent,var(--glass),transparent);animation:cr-shimmer 1.3s var(--ease) infinite}@keyframes cr-shimmer{to{transform:translateX(100%)}}@media (prefers-reduced-motion:reduce){.cr-skel:after{animation:none;opacity:.5}}.cr-actions{position:absolute;left:0;right:0;bottom:0;display:flex;gap:var(--sp-2);padding:var(--sp-3);background:linear-gradient(to top,var(--scrim),transparent);opacity:0;transform:translateY(var(--sp-2));transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease)}.cr-tile:focus-within .cr-actions,.cr-tile:hover .cr-actions{opacity:1;transform:translateY(0)}.cr-act{flex:1 1;min-width:0;font-size:var(--fs-sm);font-weight:var(--fw-med);font-family:inherit;color:var(--tx2);background:var(--glass-2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-2);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.cr-act:hover{background:var(--hover);color:var(--tx)}.cr-act-cta{color:var(--cta);border-color:var(--cta-line)}.cr-act-cta:hover{background:var(--cta);color:var(--cta-ink);border-color:var(--cta)}.cr-act-danger:hover{background:var(--danger);color:var(--danger-ink);border-color:var(--danger)}.cr-act:focus-visible,.cr-btn:focus-visible,.cr-err-retry:focus-visible,.cr-tile-star:focus-visible,.cr-tile:focus-visible{outline:2px solid var(--cta);outline-offset:2px}.cr-tile-cap{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-4)}.cr-cap-row{gap:var(--sp-2);color:var(--tx2)}.cr-cap-meta,.cr-cap-row{display:flex;align-items:center;font-size:var(--fs-sm);font-family:var(--mono)}.cr-cap-meta{gap:var(--sp-3);color:var(--tx3)}.cr-cap-fmt{color:var(--tx2)}.cr-cap-eeat{color:var(--tx3);border:1px solid var(--line2);border-radius:var(--r-pill);padding:0 var(--sp-2)}.cr-cap-eeat[data-eeat=high]{color:var(--ok);border-color:var(--ok-line)}.cr-cap-eeat[data-eeat=medium]{color:var(--tx2)}.cr-cap-eeat[data-eeat=low]{color:var(--warn)}.cr-cap-more{color:var(--tx3)}.cr-light{flex:none;width:var(--sp-2);height:var(--sp-2);border-radius:var(--r-pill);background:var(--tx3)}.cr-light[data-status=new]{background:var(--tx2)}.cr-light[data-status=shortlisted]{background:var(--warn)}.cr-light[data-status=released]{background:var(--ok)}.cr-light[data-status=discarded]{background:var(--danger)}.cr-tile-title{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font);font-weight:var(--fw-med);color:var(--tx);font-size:var(--fs-base)}.cr-tile-star{flex:none;background:transparent;border:0;color:var(--tx3);font-size:var(--fs-base);line-height:1;cursor:pointer;padding:0;transition:color var(--dur) var(--ease)}.cr-tile-star:hover,.cr-tile-star[aria-pressed=true]{color:var(--cta)}.cr-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-4);min-height:50vh;text-align:center;color:var(--tx3)}.cr-state-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--tx)}.cr-state-sub{font-size:var(--fs-base);color:var(--tx3);max-width:42ch}.cr-launch{gap:var(--sp-10);max-width:760px;margin:0 auto;padding:var(--sp-10) 0}.cr-launch,.cr-launch-head{display:flex;flex-direction:column}.cr-launch-head{gap:var(--sp-2)}.cr-launch-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--tx);margin:0}.cr-launch-sub{font-size:var(--fs-base);color:var(--tx3);margin:0}.cr-modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--sp-5);gap:var(--sp-5)}.cr-mode{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-2);text-align:left;background:var(--s2);border:1px solid var(--line2);border-radius:var(--r);padding:var(--sp-7);cursor:pointer;transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease),transform var(--dur) var(--ease)}.cr-mode:hover:not(:disabled){background:var(--hover);transform:translateY(-1px)}.cr-mode[data-on=true]{border-color:var(--cta-line);background:var(--cta-soft)}.cr-mode:disabled{opacity:.5;cursor:default}.cr-mode:focus-visible{outline:2px solid var(--cta);outline-offset:2px}.cr-mode-title{display:inline-flex;align-items:center;gap:var(--sp-3);font-size:var(--fs-base);font-weight:var(--fw-med);color:var(--tx)}.cr-mode-desc{line-height:1.45}.cr-mode-desc,.cr-soon{font-size:var(--fs-sm);color:var(--tx3)}.cr-soon{font-weight:var(--fw-med);font-family:var(--mono);background:var(--s3);border:1px solid var(--line2);border-radius:var(--r-pill);padding:0 var(--sp-3)}.cr-launch-form{display:flex;flex-direction:column;gap:var(--sp-3)}.cr-field-label{font-size:var(--fs-sm);font-weight:var(--fw-med);color:var(--tx3);font-family:var(--mono)}.cr-launch-row{display:flex;gap:var(--sp-3)}.cr-input{flex:1 1;min-width:0;background:var(--s1);color:var(--tx);border:1px solid var(--line2);border-radius:var(--r-sm);padding:var(--sp-4) var(--sp-5);font-size:var(--fs-base);font-family:inherit;transition:border-color var(--dur) var(--ease)}.cr-input::placeholder{color:var(--tx3)}.cr-input:focus{outline:0;border-color:var(--cta);box-shadow:0 0 0 3px var(--cta-soft)}.cr-launch-err{font-size:var(--fs-sm);color:var(--danger);font-family:var(--mono)}@media (prefers-reduced-motion:reduce){.cr-mode,.cr-tile{transition:none}.cr-mode:hover,.cr-tile:hover{transform:none}.cr-tile:focus-within .cr-actions,.cr-tile:hover .cr-actions{transform:none}}@media (max-width:640px){.cr-area-bar{align-items:flex-start;gap:var(--sp-5)}.cr-area-bar,.cr-launch-row{flex-direction:column}.cr-launch-row .cr-btn{width:100%}.cr-filter{gap:var(--sp-5)}.cr-filter-count{margin-left:0}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;margin:-1px}.ed-series .ed-series-row{display:flex;gap:7px;align-items:center}.ed-series-sel{flex:1 1;min-width:0;padding:9px 11px;border-radius:var(--r-sm);border:1px solid var(--line2);background:var(--bg);color:var(--tx);font-size:var(--fs-base);font-family:inherit;cursor:pointer}.ed-series-sel:focus{outline:none;border-color:var(--cta);box-shadow:0 0 0 3px var(--cta-soft)}.ed-series-inp{flex:1 1;min-width:0;padding:9px 11px;border-radius:var(--r-sm);border:1px solid var(--line2);background:var(--bg);color:var(--tx);font-size:var(--fs-base);font-family:inherit}.ed-series-inp:focus{outline:none;border-color:var(--cta);box-shadow:0 0 0 3px var(--cta-soft)}.ed-series-cancel,.ed-series-new,.ed-series-ok{flex:none;background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:9px 11px;font-size:var(--fs-sm);font-weight:var(--fw-med);font-family:inherit;cursor:pointer;white-space:nowrap;transition:background var(--dur) var(--ease)}.ed-series-cancel:hover:not(:disabled),.ed-series-new:hover:not(:disabled){background:var(--hover);color:var(--tx)}.ed-series-ok{background:var(--cta);color:var(--cta-ink);border-color:transparent;font-weight:var(--fw-bold)}.ed-series-ok:hover:not(:disabled){background:var(--cta-hover)}.ed-series-cancel:disabled,.ed-series-new:disabled,.ed-series-ok:disabled{opacity:.5;cursor:default}.ed-series-badge{margin-top:7px;font-size:var(--fs-sm);color:var(--tx3)}.ed-series-badge b{color:var(--tx2);font-weight:var(--fw-med)}.sm-modal{display:flex;flex-direction:column;width:min(780px,95vw);max-height:88vh;background:var(--s1);border:1px solid var(--line2);border-radius:var(--r-lg);box-shadow:var(--shadow-2);overflow:hidden}.sm-modal .sm-sub{font-size:var(--fs-sm);color:var(--tx3)}.sm-body{padding:16px 18px 22px;overflow-y:auto}.sm-err{margin-bottom:12px;padding:9px 11px;border-radius:var(--r-sm);background:var(--danger-soft);border:1px solid var(--danger-line);color:#ffc9c9;font-size:var(--fs-sm)}.sm-loading{padding:24px 4px;color:var(--tx3);font-size:var(--fs-base)}.sm-head-row,.sm-row{display:grid;grid-template-columns:46px minmax(0,1fr) minmax(0,1fr) 44px auto;grid-gap:10px;gap:10px;align-items:center}.sm-head-row{padding:0 4px 8px;border-bottom:1px solid var(--line);font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--tx3);letter-spacing:.03em}.sm-col-cnt{text-align:center}.sm-list{display:flex;flex-direction:column}.sm-row{padding:8px 4px;border-bottom:1px solid var(--line)}.sm-row.busy{opacity:.55}.sm-ord{display:flex;gap:3px}.sm-ord button{width:20px;height:20px;border-radius:var(--r-xs);border:1px solid var(--line2);background:var(--s3);color:var(--tx2);font-size:var(--fs-sm);line-height:1;cursor:pointer;padding:0}.sm-ord button:hover:not(:disabled){background:var(--hover);color:var(--tx)}.sm-ord button:disabled{opacity:.35;cursor:default}.sm-badge,.sm-name{width:100%;padding:7px 9px;border-radius:var(--r-sm);border:1px solid var(--line2);background:var(--bg);color:var(--tx);font-size:var(--fs-base);font-family:inherit}.sm-badge:focus,.sm-name:focus{outline:none;border-color:var(--cta);box-shadow:0 0 0 3px var(--cta-soft)}.sm-badge:disabled,.sm-name:disabled{opacity:.5;cursor:not-allowed}.sm-badge{color:var(--cta)}.sm-cnt{text-align:center;font-size:var(--fs-sm);color:var(--tx3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sm-act{display:flex;gap:6px;align-items:center;justify-content:flex-end}.sm-del,.sm-merge{background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:6px 10px;font-size:var(--fs-sm);font-weight:var(--fw-med);font-family:inherit;cursor:pointer;white-space:nowrap;transition:background var(--dur) var(--ease)}.sm-merge:hover:not(:disabled){background:var(--hover);color:var(--tx)}.sm-del{color:var(--danger);border-color:var(--danger-line);background:transparent}.sm-del:hover:not(:disabled){background:var(--danger-soft);color:#ffc9c9;border-color:var(--danger)}.sm-del:disabled,.sm-merge:disabled{opacity:.4;cursor:default}.sm-merge-sel{padding:6px 8px;border-radius:var(--r-sm);border:1px solid var(--line2);background:var(--bg);color:var(--tx);font-size:var(--fs-sm);font-family:inherit;max-width:170px}.sm-confirm{display:flex;gap:5px;align-items:center}.sm-confirm-yes{background:var(--danger);color:var(--danger-ink);border:0;border-radius:var(--r-sm);padding:6px 10px;font-weight:var(--fw-bold);font-family:inherit}.sm-confirm-no,.sm-confirm-yes{font-size:var(--fs-sm);cursor:pointer}.sm-confirm-no{background:var(--s3);color:var(--tx2);border:1px solid var(--line2);border-radius:var(--r-sm);width:28px;height:28px;padding:0}.sm-new{display:flex;gap:8px;margin-top:14px}.sm-new-inp{flex:1 1;padding:9px 11px;border-radius:var(--r-sm);border:1px solid var(--line2);background:var(--bg);color:var(--tx);font-size:var(--fs-base);font-family:inherit}.sm-new-inp:focus{outline:none;border-color:var(--cta);box-shadow:0 0 0 3px var(--cta-soft)}.sm-new-btn{flex:none;background:var(--cta);color:var(--cta-ink);border:0;border-radius:var(--r-sm);padding:9px 16px;font-size:var(--fs-base);font-weight:var(--fw-bold);font-family:inherit;cursor:pointer}.sm-new-btn:hover:not(:disabled){background:var(--cta-hover)}.sm-new-btn:disabled{opacity:.5;cursor:default}.sm-foot-hint{margin:14px 4px 0;font-size:var(--fs-sm);color:var(--tx3);line-height:1.5}.sm-foot-hint b{color:var(--tx2);font-weight:var(--fw-med)}.ed-logo-toggle{display:flex;gap:0;border:1px solid var(--line2);border-radius:var(--r-sm);overflow:hidden;width:-moz-fit-content;width:fit-content}.ed-logo-opt{background:var(--bg);color:var(--tx2);border:0;border-right:1px solid var(--line2);padding:8px 16px;font-size:var(--fs-base);font-weight:var(--fw-med);font-family:inherit;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.ed-logo-opt:last-child{border-right:0}.ed-logo-opt:hover:not(:disabled):not(.on){background:var(--hover);color:var(--tx)}.ed-logo-opt.on{background:var(--cta);color:var(--cta-ink);font-weight:var(--fw-bold)}.ed-logo-opt:disabled{opacity:.5;cursor:not-allowed}