:root{--c-forest:#1a472a;--c-forest-mid:#2d6a40;--c-forest-soft:#e8f0ea;--c-terracotta:#b95237;--c-amber:#c4822b;--c-tan:#cec3b2;--c-espresso:#2a1f14;--c-offwhite:#fafaf8;--c-slate:#44524a;--c-slate-light:#8fa39a;--canvas:#fafaf8;--paper:#f2f1ec;--surface:#ffffff;--surface-sunken:#e8e6de;--surface-2:#f2f1ec;--dark-surface:#0d0d0d;--dark-surface-2:#1a1a1a;--surface-ink:#181612;--surface-ink-2:#241f19;--line-on-ink:rgba(250,250,248,.14);--ink:#0d0d0d;--ink-muted:#3a3a3a;--ink-subtle:#6b6b6b;--ink-faint:#9b9b9b;--ink-inverse:#fafaf8;--line:#dddbd2;--line-strong:#c9c7bc;--line-faint:#eae8e0;--border:#dddbd2;--primary:#1a472a;--primary-hover:#2d6a40;--primary-press:#153d22;--primary-soft:#e8f0ea;--primary-ink:#ffffff;--secondary:#2d6a40;--secondary-hover:#1a472a;--secondary-soft:#e8f0ea;--terracotta:#b95237;--terracotta-hover:#a4472f;--terracotta-soft:#f3e1da;--amber:#c4822b;--amber-hover:#ad7122;--amber-soft:#f4e7d2;--success:#1a472a;--success-soft:#e8f0ea;--success-line:#bcd4c3;--warning:#8b6914;--warning-soft:#f5edda;--danger:#9b2020;--danger-soft:#f5e0e0;--info:#1a472a;--info-soft:#e8f0ea;--slot:#c4822b;--slot-soft:#f6ead2;--slot-line:rgba(196,130,43,.55);--font-display:"Instrument Serif",Georgia,"Times New Roman",serif;--font-ui:"DM Sans",system-ui,sans-serif;--font-body:"DM Sans",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--t-display:clamp(2.6rem,1.6rem + 3.2vw,4.2rem);--t-h1:2.25rem;--t-h2:1.6rem;--t-h3:1.225rem;--t-lg:1.0625rem;--t-base:0.9375rem;--t-sm:0.8125rem;--t-xs:0.6875rem;--lh-tight:1.08;--lh-snug:1.28;--lh-body:1.55;--r-xs:4px;--r-sm:7px;--r-md:11px;--r-lg:16px;--r-xl:22px;--r-pill:999px;--r-full:999px;--shadow-xs:0 1px 2px rgba(13,13,13,.05);--shadow-sm:0 1px 3px rgba(13,13,13,.07),0 1px 2px rgba(13,13,13,.04);--shadow-md:0 6px 18px -6px rgba(13,13,13,.12),0 2px 6px rgba(13,13,13,.05);--shadow-lg:0 18px 44px -16px rgba(13,13,13,.18),0 4px 12px rgba(13,13,13,.06);--shadow-inset:inset 0 1px 2px rgba(13,13,13,.05);--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-7:32px;--s-8:40px;--s-9:48px;--s-10:64px;--s-11:80px;--s-12:112px;--ctl-h-sm:32px;--ctl-h-md:40px;--ctl-h-lg:48px;--ctl-icon-sm:30px;--ctl-icon-md:36px;--stack-sm:var(--s-3);--stack-md:var(--s-4);--stack-lg:var(--s-6);--stack-xl:var(--s-7);--nav-w:248px;--topbar-h:64px;--content-max:1180px;--ease:cubic-bezier(.2,.6,.2,1);--ease-out:cubic-bezier(.16,1,.3,1);--bp-sm:640px;--bp-md:900px;--bp-lg:1200px}.crt-root{font-family:var(--font-body);color:var(--ink);background:var(--canvas);font-size:var(--t-base);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.crt-mark{display:block}.crt-mark path,.crt-mark path:last-child,.crt-mark--mono path,.crt-mark--mono path:last-child{fill:currentColor}.eyebrow{font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--ink-subtle)}.btn,.eyebrow{font-family:var(--font-ui)}.btn{font-weight:500;font-size:var(--t-sm);line-height:1;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:var(--ctl-h-md);padding:6px 16px;border-radius:var(--r-sm);border:1px solid transparent;cursor:pointer;transition:background .16s var(--ease),border-color .16s var(--ease),transform .12s var(--ease),box-shadow .16s var(--ease);white-space:nowrap;text-decoration:none}.btn:active{transform:translateY(.5px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.btn-secondary:hover:not(:disabled){border-color:var(--ink-subtle);background:var(--paper)}.btn-ghost{background:transparent;color:var(--ink-muted)}.btn-ghost:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink)}.btn-accent{background:var(--terracotta);color:#fff}.btn-accent:hover:not(:disabled){background:var(--terracotta-hover)}.btn-lg{min-height:var(--ctl-h-lg);padding:8px 22px;font-size:var(--t-base)}.btn-sm{min-height:var(--ctl-h-sm);padding:5px 12px}.btn-sm,.btn-xs{font-size:var(--t-xs)}.btn-xs{min-height:26px;padding:3px 9px;gap:var(--s-1);border-radius:var(--r-xs)}.btn-icon{width:var(--ctl-icon-md);min-width:var(--ctl-icon-md);min-height:var(--ctl-icon-md);padding:0;gap:0}.btn-icon.btn-sm{width:var(--ctl-icon-sm);min-width:var(--ctl-icon-sm);min-height:var(--ctl-icon-sm)}.btn-icon svg{display:block}.btn-group{display:inline-flex;align-items:center;gap:var(--s-2)}.field{font-family:var(--font-body);font-size:var(--t-base);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:10px 13px;width:100%;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}input.field,select.field{min-height:var(--ctl-h-md);padding-block:0}input.field.compact,select.field.compact{min-height:var(--ctl-h-sm)}.field::placeholder{color:var(--ink-faint)}.field:focus{outline:none;border-color:var(--secondary);box-shadow:0 0 0 3px var(--secondary-soft)}.field:disabled{background:var(--surface-sunken);color:var(--ink-faint);cursor:not-allowed}.input{font-family:var(--font-body);font-size:var(--t-base);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);min-height:var(--ctl-h-md);padding:0 13px;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}.input:focus{outline:none;border-color:var(--secondary);box-shadow:0 0 0 3px var(--secondary-soft)}.label{font-family:var(--font-ui);font-size:var(--t-sm);font-weight:500;color:var(--ink-muted);display:block;margin-bottom:var(--s-2)}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.badge{font-family:var(--font-ui);font-size:var(--t-xs);font-weight:500;letter-spacing:.01em;line-height:1;display:inline-flex;align-items:center;gap:5px;min-height:22px;padding:0 9px;border-radius:var(--r-pill);background:var(--surface-sunken);color:var(--ink-muted);white-space:nowrap}.badge-dot:before{content:"";width:5px;height:5px;border-radius:50%;flex:none;background:currentColor}.badge-amber{background:var(--amber-soft);color:#8a5a14}.badge-slate{background:var(--primary-soft);color:var(--primary-press)}.badge-terra{background:var(--terracotta-soft);color:var(--terracotta-hover)}.badge-success{background:var(--success-soft);color:#3a5e40}.badge-group{display:inline-flex;align-items:center;flex-wrap:wrap;gap:var(--s-1) 6px}.crt-root ::-webkit-scrollbar{width:11px;height:11px}.crt-root ::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:99px;border:3px solid transparent;background-clip:padding-box}.crt-root ::-webkit-scrollbar-thumb:hover{background:var(--ink-faint);background-clip:padding-box}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.panel__head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);min-height:56px;padding:var(--s-3) var(--s-5);border-bottom:1px solid var(--line)}.panel__head h2{font-family:var(--font-display);font-weight:460;font-size:1.18rem;letter-spacing:-.01em;margin:0}.panel__head a{font-family:var(--font-ui);font-size:12.5px;color:var(--primary);text-decoration:none;font-weight:500}.panel__body{padding:var(--s-5);display:grid;grid-gap:var(--stack-md);gap:var(--stack-md)}.panel__body>:first-child{margin-top:0}.panel__body>:last-child{margin-bottom:0}.data-table{width:100%;border-collapse:collapse}.data-table th{font-family:var(--font-ui);font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-subtle);text-align:left;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--canvas)}.data-table td{padding:12px 16px;border-bottom:1px solid var(--line-faint);font-size:13.5px;vertical-align:middle}.data-table tbody tr{height:52px}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--surface-sunken)}.data-table td:has(>input[type=checkbox]),.data-table th:has(>input[type=checkbox]){width:44px;padding-right:0;text-align:center}.data-table .nm{font-family:var(--font-ui);font-weight:500;color:var(--ink)}.data-table .sub{font-size:12px;color:var(--ink-subtle);margin-top:2px}.table-toolbar{display:flex;align-items:center;gap:10px;margin:20px 0 16px;flex-wrap:wrap}.field.compact{width:auto;min-width:190px;padding:8px 11px;font-size:13px}.table-count{margin-left:auto;font-family:var(--font-ui);font-size:12.5px;color:var(--ink-subtle)}.table-panel th{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.table-actions{gap:8px}.panel-actions,.table-actions{display:flex;justify-content:flex-end;flex-wrap:wrap}.panel-actions{align-items:center;gap:var(--s-2);min-height:56px;padding:var(--s-3) var(--s-5);border-top:1px solid var(--line)}.panel-actions__lead{margin-right:auto}.skeleton-table{padding:14px;display:grid;grid-gap:10px;gap:10px}.skeleton{height:42px;border-radius:var(--r-sm);background:linear-gradient(90deg,var(--surface) 0,var(--surface-sunken) 45%,var(--surface) 90%);background-size:240% 100%;animation:shimmer 1.3s ease-in-out infinite}.empty-state{text-align:center;padding:80px 24px;color:var(--ink-subtle);margin-top:24px}.empty-state svg{color:var(--line-strong);margin:0 auto 16px;display:block}.empty-state p{font-family:var(--font-ui);font-size:15px;margin:0 0 20px}.empty-inline{padding:22px;color:var(--ink-subtle);font-family:var(--font-ui);font-size:13px}.cpanel{flex-direction:column}.cpanel,.cpanel-thread{display:flex;flex:1 1;min-height:0}.cpanel-thread{overflow-y:auto;padding:14px 14px 8px;flex-direction:column;gap:10px}.cpanel-empty{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px;text-align:center;color:var(--ink-subtle);font-size:13px}.cpanel-hint{font-size:11.5px;color:var(--ink-faint);font-style:italic}.chat-bubble{max-width:90%;padding:9px 12px;border-radius:var(--r-md);font-size:13px;line-height:1.5;position:relative}.chat-bubble p{margin:0}.chat-bubble--user{align-self:flex-end;background:var(--primary);color:#fff;border-bottom-right-radius:var(--r-xs)}.chat-bubble--assistant{align-self:flex-start;background:var(--surface);border:1px solid var(--line);color:var(--ink);border-bottom-left-radius:var(--r-xs)}.chat-version-tag{display:inline-block;margin-top:5px;font-family:var(--font-ui);font-size:10px;font-weight:600;color:var(--primary);background:var(--primary-soft);border-radius:var(--r-pill);padding:2px 8px}.chat-bubble--thinking{padding:12px 14px}.thinking-dots{display:flex;gap:5px;align-items:center}.thinking-dots span{width:7px;height:7px;background:var(--ink-faint);border-radius:50%;animation:dot-run .9s ease-in-out infinite}.thinking-dots span:nth-child(2){animation-delay:.15s}.thinking-dots span:nth-child(3){animation-delay:.3s}.cpanel-attachments{display:flex;flex-wrap:wrap;gap:6px;padding:6px 14px 0;flex:none}.cpanel-attachment{position:relative;display:flex;align-items:center;gap:5px;padding:4px 8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);font-size:11.5px}.cpanel-att-thumb{width:24px;height:24px;object-fit:cover;border-radius:3px}.cpanel-att-badge{font-size:10.5px;font-family:var(--font-ui);font-weight:600;border-radius:var(--r-pill);padding:2px 7px}.cpanel-att-badge--embed{background:var(--primary-soft);color:var(--primary)}.cpanel-att-badge--reference{background:var(--amber-soft);color:var(--amber)}.cpanel-att-remove{background:none;border:none;cursor:pointer;color:var(--ink-subtle);font-size:14px;padding:0 2px;line-height:1}.cpanel-att-remove:hover,.cpanel-error{color:var(--danger)}.cpanel-error{font-size:12px;padding:4px 14px 0;margin:0;flex:none}.cpanel-input-row{display:flex;align-items:flex-end;gap:6px;padding:10px 12px;border-top:1px solid var(--line);background:var(--paper);flex:none}.cpanel-attach-btn{flex:none;width:34px;height:34px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink-muted);cursor:pointer;display:grid;place-items:center;transition:background .12s}.cpanel-attach-btn:hover{background:var(--primary-soft);color:var(--primary)}.cpanel-textarea{flex:1 1;padding:8px 10px;font-family:var(--font-body);font-size:13px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);resize:none;outline:none;transition:border-color .14s;line-height:1.45}.cpanel-textarea:focus{border-color:var(--primary)}.cpanel-send-btn{flex:none;height:34px}.cpanel-suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:8px}.cpanel-suggestion{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--ink-muted);padding:5px 9px;font:500 11.5px/1.3 var(--font-ui);cursor:pointer;transition:border-color .14s,color .14s,background .14s}.cpanel-suggestion:hover{border-color:var(--line-strong);background:var(--primary-soft);color:var(--primary)}.chat-timeline{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0}.chat-timeline>*{max-width:100%}.chat-tool-log{display:inline-flex;flex-wrap:wrap;gap:5px}.chat-tool-chip{display:inline-flex;align-items:center;gap:4px;max-width:100%;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--paper);color:var(--ink-subtle);padding:3px 7px;font:500 10.5px/1.2 var(--font-ui)}.chat-tool-chip--running{border-color:color-mix(in srgb,var(--primary) 35%,var(--line))}.chat-tool-chip--ok{color:var(--success);border-color:var(--success-line);background:var(--success-soft)}.chat-tool-chip--error{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,var(--line));background:var(--danger-soft)}.chat-tool-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-tool-spinner{width:9px;height:9px;flex:none;border:1.5px solid color-mix(in srgb,var(--primary) 25%,transparent);border-top-color:var(--primary);border-radius:50%;animation:spin .65s linear infinite}.chat-bubble--live{min-width:58px}.chat-bubble--enter{animation:chat-bubble-enter .22s var(--ease-out)}@keyframes chat-bubble-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.chat-stream-cursor{display:inline-block;width:2px;height:13px;margin-top:2px;background:var(--primary);animation:chat-cursor-blink 1s steps(1) infinite}@keyframes chat-cursor-blink{50%{opacity:0}}.chat-error-note,.chat-stopped-note,.chat-stopping-note{margin-top:7px!important;font-size:11.5px;color:var(--ink-faint)}.chat-error-note{color:var(--danger)}.chat-bubble--error-turn{border-color:color-mix(in srgb,var(--danger) 35%,var(--line))}.cpanel-context-chip{display:flex;align-items:center;gap:5px;min-width:0;margin:7px 12px 0;padding:6px 8px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line));border-radius:var(--r-sm);background:var(--primary-soft);color:var(--primary);font:500 11px/1.3 var(--font-ui)}.cpanel-context-chip code{font-size:10.5px;font-weight:600}.cpanel-context-tag{color:var(--ink-subtle)}.cpanel-context-text{min-width:0;flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-muted)}.cpanel-context-clear{flex:none;border:0;background:transparent;color:inherit;padding:1px 2px;cursor:pointer}.cpanel-stop-btn{color:var(--danger)}@media (prefers-reduced-motion:reduce){.chat-bubble--enter,.chat-stream-cursor,.chat-tool-spinner{animation:none!important}}.modal-scrim{position:fixed;inset:0;z-index:200;background:rgba(13,13,13,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);align-items:center;justify-content:center}.modal-box,.modal-scrim{display:flex;padding:24px}.modal-box{background:var(--paper);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:0 32px 80px rgba(13,13,13,.22);width:min(480px,100%);flex-direction:column;gap:0;max-height:90vh;overflow-y:auto}.modal-box--preview{width:min(1080px,calc(100vw - 48px));height:calc(100vh - 80px);padding:0;overflow:hidden}.modal-box__head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line);flex-shrink:0}.modal-box__head h2{margin:0;font-family:var(--font-ui);font-size:16px;font-weight:600;color:var(--ink)}.modal-box__close{background:none;border:none;padding:4px;cursor:pointer;color:var(--ink-subtle);border-radius:var(--r-xs);display:flex;align-items:center}.modal-box__close:hover{background:var(--surface-sunken);color:var(--ink)}.modal-box:not(.modal-box--preview) .modal-box__head{padding:0 0 16px;margin-bottom:0;border-bottom:none}.toast-stack{position:fixed;bottom:20px;right:20px;z-index:240;flex-direction:column;max-width:min(420px,calc(100vw - 32px))}.toast,.toast-stack{display:flex;gap:10px}.toast{align-items:flex-start;background:var(--surface-ink);color:var(--ink-inverse);border:1px solid var(--line-on-ink);border-radius:var(--r-md);box-shadow:var(--shadow-lg);padding:12px 14px;font-family:var(--font-ui);font-size:var(--t-sm);line-height:1.45;animation:toast-in .28s var(--ease-out)}.toast.is-leaving{opacity:0;transform:translateY(6px);transition:opacity .2s var(--ease),transform .2s var(--ease)}@keyframes toast-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}.toast__icon{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:var(--r-full);margin-top:1px}.toast--success .toast__icon{background:rgba(232,240,234,.16);color:#9fd0ae}.toast--error .toast__icon{background:rgba(245,224,224,.16);color:#e8a0a0}.toast--info .toast__icon{background:rgba(250,250,248,.12);color:var(--ink-inverse)}.toast--signal .toast__icon{background:rgba(243,225,218,.18);color:#e8b3a0}.toast__body{flex:1 1;min-width:0}.toast__body strong{display:block;font-weight:600;margin-bottom:1px}.toast__body a{color:inherit;text-decoration:underline;text-underline-offset:2px}.toast__close{flex:none;background:none;border:none;cursor:pointer;color:rgba(250,250,248,.55);padding:2px;border-radius:var(--r-xs);display:grid;place-items:center}.toast__close:hover{color:var(--ink-inverse)}.confirm-dialog{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);width:min(440px,calc(100vw - 32px));padding:24px;animation:rise .24s var(--ease-out)}.confirm-dialog h2{font-family:var(--font-display);font-weight:460;font-size:1.35rem;letter-spacing:-.01em;margin:0 0 8px}.confirm-dialog p{margin:0 0 18px;color:var(--ink-muted);font-size:var(--t-sm);line-height:1.5}.confirm-dialog__actions{display:flex;justify-content:flex-end;gap:8px}.confirm-dialog__typed-label{display:block;margin-top:12px}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#831b1b}.live-dot{display:inline-block;width:7px;height:7px;border-radius:var(--r-full);background:var(--terracotta);animation:live-breathe 2s ease-in-out infinite}.live-dot--quiet{background:var(--c-slate-light);animation:none}@keyframes live-breathe{0%,to{box-shadow:0 0 0 0 rgba(185,82,55,.35)}50%{box-shadow:0 0 0 5px rgba(185,82,55,0)}}.row-enter{animation:row-enter .5s var(--ease-out)}@keyframes row-enter{0%{opacity:0;transform:translateY(-6px);background:var(--amber-soft)}60%{background:var(--amber-soft)}to{opacity:1;transform:none;background:transparent}}.as-of{font-family:var(--font-ui);font-size:var(--t-xs);color:var(--ink-faint);display:inline-flex;align-items:center;gap:5px}.icon-btn-plain{display:grid;place-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:8px;cursor:pointer;color:var(--ink-muted);transition:border-color .15s var(--ease),color .15s var(--ease)}.icon-btn-plain:hover{border-color:var(--line-strong);color:var(--ink)}.metric .num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chat-bubble-meta{display:flex;align-items:center;gap:6px;margin-top:6px;flex-wrap:wrap}.chat-bubble--confirm{border:1px solid var(--line-strong,var(--line))}.chat-confirm-reason{margin:4px 0 0;font-size:12.5px;color:var(--ink-subtle,var(--muted))}.chat-confirm-cost{margin:6px 0 0;font-size:12px;color:var(--ink-faint,var(--muted))}.chat-confirm-actions{display:flex;gap:8px;margin-top:10px}.lbp-grid{display:grid;grid-template-columns:minmax(280px,360px) 1fr;grid-gap:20px;gap:20px;align-items:start}@media (max-width:900px){.lbp-grid{grid-template-columns:1fr}}.lbp-plan{border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);padding:16px}.lbp-plan-hd{font-weight:600;margin-bottom:10px}.lbp-step{display:flex;align-items:flex-start;gap:8px;padding:6px 0;font-size:13.5px;color:var(--ink-subtle,var(--muted))}.lbp-step.is-done{color:var(--ink)}.lbp-step.is-active{color:var(--ink);font-weight:600}.lbp-step-dot{flex:none;width:16px;height:16px;margin-top:1px;border-radius:50%;border:1.5px solid var(--line-strong,var(--line));display:inline-flex;align-items:center;justify-content:center;font-size:10px}.lbp-step.is-done .lbp-step-dot{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.lbp-step.is-active .lbp-step-dot{border-color:var(--primary)}.lbp-preview{border:1px solid var(--line);border-radius:var(--r-md);background:#fff;min-height:70vh;overflow:hidden;position:relative;display:flex;flex-direction:column}.lbp-preview iframe{width:100%;flex:1 1;min-height:60vh;height:70vh;border:0}.lbp-preview-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:var(--ink-faint,var(--muted));font-size:13.5px}.lbp-status-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:4px 0 12px}.lbp-phase-callout{border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);padding:12px 14px;margin-bottom:16px}.lbp-phase-track{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px;font-size:12px;font-weight:600;letter-spacing:.01em}.lbp-phase-track span{padding:4px 10px;border-radius:999px;border:1px solid var(--line);color:var(--ink-faint,var(--muted));background:#fff}.lbp-phase-track span.is-active{border-color:var(--primary);color:var(--primary-press);background:var(--primary-soft)}.lbp-phase-track span.is-done{border-color:color-mix(in srgb,var(--primary) 30%,var(--line));color:var(--primary);background:var(--success-soft)}.lbp-phase-copy{margin:0;font-size:13.5px;line-height:1.55}.lbp-phase-copy,.lbp-preview-phase{color:var(--ink-subtle,var(--muted))}.lbp-preview-phase{flex:none;padding:10px 14px;font-size:12.5px;line-height:1.45;border-bottom:1px solid var(--line);background:var(--paper)}.lbp-preview-phase--structure{background:#fffbf0;border-bottom-color:#f0d9a8;color:#7a5b14}.lbp-preview-phase--design{background:var(--success-soft);border-bottom-color:var(--success-line);color:var(--primary-press)}.lbp-preview:has(.lbp-preview-phase){display:flex;flex-direction:column}.lbp-preview:has(.lbp-preview-phase) iframe{flex:1 1;min-height:0;height:auto}.lbp-error{border:1px solid #f3c1bb;background:#fdf2f0;color:#b42318;border-radius:var(--r-md);padding:12px 14px;font-size:13.5px}.lbp-variant-picker{display:flex;flex-direction:column;gap:14px;min-height:70vh}.lbp-variant-picker__hd{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.lbp-variant-picker__title{margin:0 0 4px;font-size:1.05rem;font-weight:650;letter-spacing:-.02em}.lbp-variant-picker__sub{margin:0;font-size:13.5px;line-height:1.5;color:var(--ink-subtle,var(--muted));max-width:52ch}.lbp-variant-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;flex:1 1;min-height:0}@media (max-width:960px){.lbp-variant-grid{grid-template-columns:1fr}}.lbp-variant-card{display:flex;flex-direction:column;gap:0;min-height:62vh;border:1px solid var(--line);border-radius:var(--r-md);background:#fff;overflow:hidden}.lbp-variant-card--pending{border-style:dashed;background:var(--paper)}.lbp-variant-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface-sunken,#f7f8f7)}.lbp-variant-card__head>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lbp-variant-card__label{font-size:13.5px}.lbp-variant-card__frame{flex:1 1;width:100%;min-height:54vh;border:0;background:#fff}.lbp-variant-card__pending{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:32px 24px;text-align:center;color:var(--ink-subtle,var(--muted));font-size:13.5px;line-height:1.55}.lbp-variant-card__pending p{margin:0;max-width:36ch}.builder-compare-backdrop{z-index:220}.builder-compare-modal{width:min(96vw,1280px);max-height:92vh;display:flex;flex-direction:column;overflow:hidden}.builder-compare-grid{padding:0 16px 16px;min-height:0;flex:1 1}.builder-compare-grid .lbp-variant-card{min-height:58vh}.builder-compare-grid .lbp-variant-card__frame{min-height:48vh}.builder-preview-pane--tablet .builder-preview-iframe{max-width:768px;margin:0 auto}.session-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:none;padding:8px 12px;border-bottom:1px solid var(--line);background:var(--primary-soft);font:500 12px/1.4 var(--font-ui);color:var(--primary-press)}.session-banner-text{min-width:0}.session-banner-actions{display:flex;gap:6px;flex:none}.plan-card{align-self:stretch;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:10px 12px;font-size:12.5px}.plan-card-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.plan-card-title{font:600 11px/1 var(--font-ui);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-subtle)}.plan-card-progress{font:600 11px/1 var(--font-ui);color:var(--primary);background:var(--primary-soft);border-radius:var(--r-pill);padding:3px 8px}.plan-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.plan-step{display:flex;align-items:center;gap:7px;min-width:0}.plan-step-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}.plan-step--done .plan-step-label{color:var(--ink-subtle);text-decoration:line-through}.plan-step--skipped .plan-step-label{color:var(--ink-faint)}.plan-step--active .plan-step-label{font-weight:600}.plan-step-icon{flex:none;width:15px;height:15px;display:grid;place-items:center;border-radius:50%}.plan-step-icon--pending{border:1.5px solid var(--line-strong)}.plan-step-icon--active{border:1.5px solid var(--primary)}.plan-step-icon--done{background:var(--primary);color:#fff}.plan-step-icon--skipped{border:1.5px solid var(--line-strong);color:var(--ink-faint)}.plan-risk-badge{flex:none;font:600 9.5px/1 var(--font-ui);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--r-pill);padding:3px 7px;background:var(--surface-sunken);color:var(--ink-subtle)}.plan-risk-badge--high{background:#fdf6ea;color:#93600e;border:1px solid #f1d4a3}.plan-card-risks{margin:8px 0 0;font-size:11.5px;color:#93600e}.plan-card-toggle{margin-top:8px;border:none;background:none;padding:0;font:500 11.5px/1.3 var(--font-ui);color:var(--primary);cursor:pointer}.plan-card-toggle:hover{text-decoration:underline}.plan-card-details{margin-top:6px;display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--ink-muted)}.plan-card-details ul{margin:2px 0 0;padding-left:18px}.plan-card-detail-label{font:600 10.5px/1 var(--font-ui);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-subtle)}.chat-inspection-chip{display:inline-flex;align-items:center;gap:4px;max-width:100%;border:1px dashed var(--line);border-radius:var(--r-pill);background:var(--paper);color:var(--ink-faint);padding:3px 7px;font:500 10.5px/1.2 var(--font-ui)}.chat-bubble--steering{opacity:.92}.chat-steering-chip{display:inline-block;margin-top:5px;font:600 9.5px/1 var(--font-ui);text-transform:uppercase;letter-spacing:.05em;color:rgba(255,255,255,.85);border:1px solid rgba(255,255,255,.4);border-radius:var(--r-pill);padding:2px 7px}.cpanel-mode-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px 0;flex:none}.chat-queued-chip{display:inline-flex;align-items:center;gap:5px;min-width:0;font:500 11px/1.2 var(--font-ui);color:var(--ink-subtle);border:1px dashed var(--line-strong);border-radius:var(--r-pill);padding:3px 8px;overflow:hidden;white-space:nowrap}.chat-queued-clear{border:none;background:none;padding:0;cursor:pointer;color:var(--ink-faint);font-size:13px;line-height:1}.chat-queued-clear:hover{color:var(--danger)}.qa-block{align-self:flex-start;max-width:90%;border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);padding:8px 10px;font-size:12px}.qa-block-title{display:block;font:600 10.5px/1 var(--font-ui);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-subtle);margin-bottom:6px}.qa-block-chips{display:flex;flex-wrap:wrap;gap:5px}.qa-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:var(--r-pill);padding:3px 8px;font:500 10.5px/1.2 var(--font-ui);color:var(--ink-subtle)}.qa-chip--ok{color:var(--success);border-color:var(--success-line);background:var(--success-soft)}.qa-chip--issues{color:#93600e;border-color:#f1d4a3;background:#fdf6ea}.qa-repair-note{margin:7px 0 0;font-size:11.5px;color:#93600e}.review-card{align-self:stretch;border:1px solid color-mix(in srgb,var(--primary) 35%,var(--line));border-radius:var(--r-md);background:var(--surface);padding:12px;font-size:12.5px;animation:chat-bubble-enter .22s var(--ease-out)}.review-card--committed{border-color:var(--success-line);background:var(--success-soft)}.review-card-title{margin:0 0 4px;font-weight:600;font-size:13px;color:var(--ink)}.review-card-summary{margin:0 0 8px;color:var(--ink-muted);line-height:1.45}.review-card-ops{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:3px}.review-card-ops li{display:flex;align-items:baseline;gap:6px;min-width:0}.review-op-seq{flex:none;font:600 10.5px/1.4 var(--font-ui);color:var(--ink-faint)}.review-op-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-op-eids{flex:none;font-size:10.5px;color:var(--ink-faint)}.review-card-verification{display:flex;flex-direction:column;gap:5px;margin-bottom:8px}.review-verify-group{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.review-verify-kind{font:600 10.5px/1 var(--font-ui);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-subtle)}.review-severity-chip{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--r-pill);padding:2px 8px;font:500 10.5px/1.4 var(--font-ui);border:1px solid var(--line);color:var(--ink-subtle)}.review-severity-chip--ok{color:var(--success);border-color:var(--success-line);background:var(--success-soft)}.review-severity-chip--minor{color:var(--ink-subtle);background:var(--surface-sunken)}.review-severity-chip--major{color:#93600e;border-color:#f1d4a3;background:#fdf6ea}.review-severity-chip--critical{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,var(--line));background:var(--danger-soft)}.review-card-credits{margin:0 0 10px;font:500 11.5px/1.4 var(--font-ui);color:var(--ink-subtle)}.review-card-conflict p{margin:0 0 8px;color:var(--danger);font-size:12px}.builder-changes-toggle.is-active{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.builder-changes-count{display:inline-grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border-radius:var(--r-pill);background:var(--primary);color:#fff;font:600 10px/1 var(--font-ui)}.changes-drawer{position:absolute;z-index:6;left:20px;right:20px;bottom:20px;max-height:46%;display:flex;flex-direction:column;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--paper);box-shadow:var(--shadow-md);overflow:hidden;animation:chat-bubble-enter .18s var(--ease-out)}.changes-drawer-hd{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line);flex:none}.changes-drawer-title{display:inline-flex;align-items:center;gap:7px;font:600 12.5px/1 var(--font-ui);color:var(--ink)}.changes-drawer-count{display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 5px;border-radius:var(--r-pill);background:var(--primary-soft);color:var(--primary);font:600 10.5px/1 var(--font-ui)}.changes-drawer-hd-actions{display:flex;align-items:center;gap:8px}.changes-drawer-close{border:none;background:none;font-size:17px;line-height:1;cursor:pointer;color:var(--ink-subtle)}.changes-drawer-close:hover{color:var(--ink)}.changes-drawer-error{margin:0;padding:6px 12px;font-size:11.5px;color:var(--danger);flex:none}.changes-drawer-list{flex:1 1;min-height:0;overflow-y:auto;padding:6px 8px 10px;display:flex;flex-direction:column;gap:4px}.changes-drawer-empty{margin:0;padding:14px 6px;font-size:12px;color:var(--ink-faint);text-align:center}.changes-op{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);transition:border-color .14s,background .14s}.changes-op:hover{border-color:var(--line-strong)}.changes-op--new{border-color:var(--primary);background:var(--primary-soft)}.changes-op--reverted{opacity:.6}.changes-op--failed{border-color:color-mix(in srgb,var(--danger) 35%,var(--line))}.changes-op-row{display:flex;align-items:center;gap:8px;width:100%;min-width:0;border:none;background:none;padding:7px 9px;font-size:12px;text-align:left;cursor:pointer;color:var(--ink)}.changes-op-seq{flex:none;font:600 10.5px/1.4 var(--font-ui);color:var(--ink-faint)}.changes-op-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.changes-op-eids{flex:none;font-size:10.5px;color:var(--ink-faint)}.changes-op-stats{flex:none;display:inline-flex;gap:5px;font:600 10.5px/1.4 var(--font-mono,monospace)}.changes-op-stats em{font-style:normal}.changes-op-added{color:var(--success)}.changes-op-removed{color:var(--danger)}.changes-op-status{flex:none;font:600 9.5px/1 var(--font-ui);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--r-pill);padding:3px 7px}.changes-op-status--applied{background:var(--success-soft);color:var(--success)}.changes-op-status--reverted{background:var(--surface-sunken);color:var(--ink-subtle)}.changes-op-status--failed{background:var(--danger-soft);color:var(--danger)}.changes-op-actions{display:flex;justify-content:flex-end;padding:0 9px 7px}.changes-op-actions:empty{display:none}.changes-op-diff{border-top:1px solid var(--line);padding:8px 9px 9px;display:flex;flex-direction:column;gap:7px}.drawer-diff-loading{margin:0;font-size:11.5px;color:var(--ink-faint)}.drawer-diff-editor{max-height:240px;overflow:auto;border:1px solid var(--line);border-radius:var(--r-sm);background:#fff}.drawer-diff-editor .cm-editor{font-size:11px}.drawer-diff-editor .cm-content{font-family:var(--font-mono,ui-monospace,monospace)}.drawer-diff-editor .cm-diff-added{background:#e9f7ec}.drawer-diff-editor .cm-diff-removed{background:#fdeceb}.drawer-diff-editor .cm-diff-hunk{background:#eef2fb;color:#3653a4}.drawer-diff-editor .cm-diff-meta{color:var(--ink-faint)}@media (prefers-reduced-motion:reduce){.confirm-dialog,.live-dot,.row-enter,.toast{animation:none!important}}.v-stack{display:flex;flex-direction:column;gap:var(--stack-lg);min-width:0}.v-stack--sm{gap:var(--stack-sm)}.v-stack--md{gap:var(--stack-md)}.v-stack--xl{gap:var(--stack-xl)}.v-stack>.ph,.v-stack>.table-toolbar{margin-top:0;margin-bottom:0}.btn[aria-busy=true]{cursor:progress;opacity:.82}.btn-spinner{display:inline-block;width:13px;height:13px;border:1.6px solid;border-top:1.6px solid transparent;border-radius:50%;opacity:.8;animation:ui-spin .6s linear infinite}@keyframes ui-spin{to{transform:rotate(1turn)}}.field-group{display:flex;flex-direction:column;gap:var(--s-2)}.field-hint{color:var(--ink-subtle)}.field-error-text,.field-hint{font-family:var(--font-ui);font-size:12px;margin:0}.field-error-text{color:var(--danger);display:flex;align-items:center;gap:5px}.field.has-error{border-color:var(--danger)}.field.has-error:focus{box-shadow:0 0 0 3px var(--danger-soft)}.field-required-mark{color:var(--terracotta);margin-left:3px}textarea.field{resize:vertical;min-height:88px;line-height:1.5}.field-select-wrap{position:relative;display:block}.field-select-wrap select.field{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:34px}.field-select-wrap svg{position:absolute;right:11px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--ink-subtle)}.field-checkbox,.field-radio{display:flex;align-items:flex-start;gap:9px;font-family:var(--font-ui);font-size:var(--t-sm);color:var(--ink);cursor:pointer}.field-checkbox input,.field-radio input{margin-top:2px;width:16px;height:16px;accent-color:var(--primary);cursor:pointer;flex:none}.field-checkbox-copy,.field-radio-copy{display:flex;flex-direction:column;gap:2px}.field-radio-group{display:flex;flex-direction:column;gap:var(--s-3)}.field-radio-group--row{flex-direction:row;flex-wrap:wrap;gap:var(--s-4)}.ui-drawer-scrim{position:fixed;inset:0;z-index:210;background:rgba(13,13,13,.4);display:flex;justify-content:flex-end}.ui-drawer{background:var(--paper);border-left:1px solid var(--line-strong);box-shadow:-18px 0 44px -16px rgba(13,13,13,.18);width:min(420px,100vw);height:100%;display:flex;flex-direction:column;animation:ui-drawer-in .22s var(--ease-out)}@keyframes ui-drawer-in{0%{transform:translateX(24px);opacity:.6}to{transform:none;opacity:1}}.ui-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line);flex:none}.ui-drawer__head h2{margin:0;font-family:var(--font-ui);font-size:16px;font-weight:600;color:var(--ink)}.ui-drawer__body{flex:1 1;min-height:0;overflow-y:auto;padding:20px}.ui-drawer__foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid var(--line);flex:none}.ui-tabs__list{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto}.ui-tabs__tab{font-family:var(--font-ui);font-size:var(--t-sm);font-weight:500;color:var(--ink-subtle);background:none;border:none;border-bottom:2px solid transparent;padding:10px 14px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:color .14s var(--ease),border-color .14s var(--ease)}.ui-tabs__tab:hover{color:var(--ink)}.ui-tabs__tab[aria-selected=true]{color:var(--primary);border-bottom-color:var(--primary)}.ui-tabs__tab-count{font-size:10.5px;font-weight:600;color:var(--ink-subtle);background:var(--surface-sunken);border-radius:var(--r-pill);padding:1px 7px}.ui-tabs__tab[aria-selected=true] .ui-tabs__tab-count{color:var(--primary);background:var(--primary-soft)}.ui-tabs__panel{padding-top:var(--s-5)}@media (max-width:900px){.data-table--responsive thead{display:none}.data-table--responsive tr{display:block;border:1px solid var(--line-faint);border-radius:var(--r-md);margin-bottom:10px;background:var(--surface)}.data-table--responsive tr:hover td{background:transparent}.data-table--responsive td{display:flex;justify-content:space-between;align-items:baseline;gap:12px;text-align:right;border-bottom:1px solid var(--line-faint);padding:9px 13px}.data-table--responsive td:last-child{border-bottom:none}.data-table--responsive td:before{content:attr(data-label);font-family:var(--font-ui);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-subtle);text-align:left}.data-table--responsive td:not([data-label]){display:block;text-align:center}.data-table--responsive td:not([data-label]):before{content:none}.data-table--responsive tr:has(>td:not([data-label])){height:auto}}.data-table td[data-align=right],.data-table th[data-align=right]{text-align:right}.data-table th[data-align=right] .ui-datatable__sort-btn{flex-direction:row-reverse}.ui-datatable__sort-btn{display:inline-flex;align-items:center;gap:4px;background:none;border:none;padding:0;cursor:pointer;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit}.ui-datatable__sort-icon{flex:none;opacity:.55}.ui-datatable__sort-icon.is-active{opacity:1;color:var(--primary)}.ui-datatable__loading td{padding:0}.ui-stat{display:flex;flex-direction:column;gap:4px}.ui-stat__label{font-family:var(--font-ui);font-size:11.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-subtle)}.ui-stat__value{font-family:var(--font-display);font-size:1.9rem;font-weight:460;letter-spacing:-.01em;color:var(--ink);line-height:1.1}.ui-stat__delta{font-family:var(--font-ui);font-size:12.5px;font-weight:600;display:inline-flex;align-items:center;gap:3px}.ui-stat__delta--up{color:var(--success)}.ui-stat__delta--down{color:var(--danger)}.ui-stat__delta--flat,.ui-stat__hint{color:var(--ink-faint)}.ui-stat__hint{font-family:var(--font-ui);font-size:12px}.ui-meter{display:flex;flex-direction:column;gap:6px}.ui-meter__top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.ui-meter__label{font-weight:500;color:var(--ink-muted)}.ui-meter__label,.ui-meter__value{font-family:var(--font-ui);font-size:11.5px}.ui-meter__value{color:var(--ink-subtle)}.ui-meter__value b{color:var(--ink);font-weight:600}.ui-meter__track{height:7px;border-radius:99px;background:var(--surface-sunken);overflow:hidden}.ui-meter__fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--c-slate-light),var(--c-slate));width:var(--ui-meter-pct,0);transition:width .3s var(--ease)}.ui-meter--low .ui-meter__fill{background:var(--amber)}.ui-meter--empty .ui-meter__fill{background:var(--danger)}.ui-stepper{display:flex;align-items:flex-start;gap:0;list-style:none;margin:0;padding:0}.ui-stepper__step{display:flex;align-items:center;flex:1 1;min-width:0}.ui-stepper__dot{flex:none;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--line-strong);display:grid;place-items:center;font:600 12px/1 var(--font-ui);color:var(--ink-faint);background:var(--surface)}.ui-stepper__step.is-active .ui-stepper__dot{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.ui-stepper__step.is-done .ui-stepper__dot{border-color:var(--primary);background:var(--primary);color:#fff}.ui-stepper__label{margin-left:9px;font-family:var(--font-ui);font-size:12.5px;font-weight:500;color:var(--ink-faint);white-space:nowrap}.ui-stepper__step.is-active .ui-stepper__label,.ui-stepper__step.is-done .ui-stepper__label{color:var(--ink)}.ui-stepper__connector{flex:1 1;height:1.5px;background:var(--line-strong);margin:0 8px}.ui-stepper__connector.is-done,.ui-stepper__step.is-done+.ui-stepper__connector{background:var(--primary)}@media (max-width:640px){.ui-stepper{flex-direction:column;align-items:stretch;gap:10px}.ui-stepper__connector{display:none}.ui-stepper__step{gap:0}}.ui-banner{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px;font-family:var(--font-ui);font-size:13px;line-height:1.5;background:var(--surface);color:var(--ink)}.ui-banner__icon{flex:none;display:grid;place-items:center;margin-top:1px}.ui-banner__body{flex:1 1;min-width:0}.ui-banner__actions{flex:none;display:flex;gap:8px;margin-top:8px}.ui-banner--info{border-color:color-mix(in srgb,var(--primary) 30%,var(--line));background:var(--primary-soft);color:var(--primary-press)}.ui-banner--success{border-color:var(--success-line);background:var(--success-soft);color:var(--primary-press)}.ui-banner--warning{border-color:#f1d4a3;background:var(--warning-soft);color:#6e4e0f}.ui-banner--danger{border-color:color-mix(in srgb,var(--danger) 35%,var(--line));background:var(--danger-soft);color:var(--danger)}.ui-banner__close{flex:none;background:none;border:none;cursor:pointer;color:inherit;opacity:.6;padding:2px;border-radius:var(--r-xs)}.ui-banner__close:hover{opacity:1}.empty-state.empty-state--emptystate,.empty-state.empty-state--errorstate{display:flex;flex-direction:column;align-items:center}.empty-state.empty-state--emptystate{padding:56px 24px}.empty-state.empty-state--errorstate{padding:44px 24px}.empty-state .empty-state__icon{color:var(--line-strong);margin:0 0 var(--s-4);display:flex;justify-content:center}.empty-state .empty-state__icon>svg,.empty-state .error-state__icon>svg{margin:0}.empty-state .empty-state__title{font-family:var(--font-ui);font-weight:500;font-size:var(--t-base);color:var(--ink);margin:0 0 6px}.empty-state .empty-state__body{font-family:var(--font-ui);font-size:13.5px;color:var(--ink-subtle);margin:0 0 18px;max-width:380px;line-height:1.5}.empty-state .empty-state__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s-3)}.empty-state .error-state__icon{width:42px;height:42px;border-radius:var(--r-md);margin:0 0 14px;background:var(--danger-soft);color:var(--danger);display:grid;place-items:center}.empty-state .error-state__title{font-family:var(--font-ui);font-weight:500;font-size:14.5px;color:var(--ink);margin:0 0 4px}.empty-state .error-state__message{font-family:var(--font-ui);font-size:var(--t-sm);color:var(--ink-subtle);margin:0 0 16px}.usage-limit-modal__icon{width:44px;height:44px;border-radius:var(--r-md);margin-bottom:14px;background:var(--amber-soft);color:var(--amber-hover);display:grid;place-items:center}.ui-kbd{font-family:var(--font-mono);font-size:11px;line-height:1;color:var(--ink-muted);background:var(--surface);border:solid var(--line-strong);border-width:1px 1px 2px;border-radius:var(--r-xs);padding:2.5px 6px;display:inline-flex;align-items:center;gap:2px}.ui-skeleton{display:block;border-radius:var(--r-sm);background:linear-gradient(90deg,var(--surface) 0,var(--surface-sunken) 45%,var(--surface) 90%);background-size:240% 100%;animation:shimmer 1.3s ease-in-out infinite;width:var(--ui-skeleton-w,auto);height:var(--ui-skeleton-h,14px)}.ui-skeleton--text{height:var(--ui-skeleton-h,13px)}.ui-skeleton--circle{border-radius:50%}.ui-skeleton-stack{display:flex;flex-direction:column;gap:8px}.ui-cost-pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-ui);font-size:12.5px;font-weight:500;color:var(--ink-muted);background:var(--surface-sunken);border-radius:var(--r-pill);padding:5px 11px}.ui-cost-pill__amount{color:var(--ink);font-weight:600}.ui-cost-pill--loading{color:var(--ink-faint)}.ui-cost-pill--error{color:var(--danger);background:var(--danger-soft)}.ui-cost-pill__covered{color:var(--success)}.ui-cost-pill__beyond{color:var(--ink-muted)}.ui-cost-pill__remaining{color:var(--ink-subtle)}.ui-explainer-card{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);padding:14px 16px}.ui-explainer-card__icon{flex:none;width:34px;height:34px;border-radius:var(--r-md);background:var(--primary-soft);color:var(--primary);display:grid;place-items:center}.ui-explainer-card__body{min-width:0;flex:1 1}.ui-explainer-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.ui-explainer-card__title{margin:0 0 3px;font-family:var(--font-ui);font-weight:600;font-size:13.5px;color:var(--ink)}.ui-explainer-card__copy{margin:0;font-family:var(--font-ui);font-size:12.5px;line-height:1.55;color:var(--ink-subtle)}.ui-explainer-card__link{margin-top:6px;display:inline-block;font-family:var(--font-ui);font-size:12px;font-weight:600;color:var(--primary);text-decoration:none}.ui-explainer-card__link:hover{text-decoration:underline}.ui-explainer-card__dismiss{flex:none;display:grid;place-items:center;width:20px;height:20px;border:none;background:transparent;color:var(--ink-faint);border-radius:var(--r-sm,4px);cursor:pointer}.ui-explainer-card__dismiss:hover{background:var(--line-soft,rgba(0,0,0,.06));color:var(--ink-subtle)}.surface-explainer-toggle{display:inline-grid;place-items:center;width:20px;height:20px;margin-left:6px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink-faint);font-family:var(--font-ui);font-size:11px;font-weight:600;line-height:1;cursor:pointer;vertical-align:middle}.surface-explainer-toggle:hover{color:var(--ink-subtle);border-color:var(--ink-faint)}.lbp-plan-footnote{font-family:var(--font-ui);font-size:12px;margin-top:12px;line-height:1.5;color:var(--ink-subtle)}.template-name-field-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;max-width:100%}.template-name-field{border:1px solid transparent;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;padding:2px 6px;margin:-2px -6px;border-radius:var(--r-sm);min-width:0;width:100%;text-overflow:ellipsis;transition:border-color .12s,background .12s}.template-name-field--builder{margin:2px 0 0;font-family:var(--font-display);font-weight:460;font-size:1.35rem;max-width:min(420px,100%)}.template-name-field--card{font:inherit;color:inherit;max-width:100%}.template-name-field:focus,.template-name-field:hover{border-color:var(--line-strong);background:var(--surface);outline:none}.template-name-field:disabled{opacity:.7;cursor:wait}.template-name-field-status{font-family:var(--font-ui);font-size:var(--t-xs);color:var(--ink-subtle)}.template-name-field-status.is-ok{color:var(--success)}.template-name-field-status.is-error{color:var(--danger)}@media (prefers-reduced-motion:reduce){.btn-spinner,.ui-drawer,.ui-skeleton{animation:none!important}}*{box-sizing:border-box}body,html{margin:0;min-height:100%}a{color:var(--primary);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--primary-hover)}input[type=checkbox],input[type=radio],input[type=range],progress,select{accent-color:var(--primary)}input[type=checkbox],input[type=radio]{width:16px;height:16px;flex:none;cursor:pointer;margin:0}input[type=checkbox]:disabled,input[type=radio]:disabled{cursor:not-allowed;opacity:.55}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--secondary);outline-offset:2px;border-radius:var(--r-xs)}::selection{background:var(--primary-soft);color:var(--primary-press)}