:root{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--color-bg:#f8fafc;--color-surface:#fff;--color-border:#e2e8f0;--color-border-strong:#cbd5e1;--color-divider:#eef2f6;--color-text:#111827;--color-text-muted:#4b5563;--color-text-faint:#9ca3af;--color-base:#2563eb;--color-base-dark:#1d4ed8;--color-base-tint:#eff6ff;--color-walls:#16a34a;--color-walls-dark:#15803d;--color-walls-tint:#f0fdf4;--color-lid:#ea580c;--color-lid-dark:#c2410c;--color-lid-tint:#fff7ed;--color-extra:#d97706;--color-extra-tint:#fffbeb;--color-additional:#7c3aed;--color-additional-dark:#6d28d9;--color-additional-tint:#f5f3ff;--color-error:#dc2626;--color-error-tint:#fef2f2;--color-neutral:#9ca3af;--color-neutral-tint:#f6f6f8;--color-strategy-largest:#2563eb;--color-strategy-largest-tint:#eff6ff;--color-strategy-offcut:#d97706;--color-strategy-offcut-tint:#fffbeb;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 8px 24px #0000000f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p{margin:0}button{font-family:inherit}input,select{font-family:inherit;font-size:inherit;color:inherit}.app-shell{flex-direction:column;min-height:100%;display:flex}.app-main{flex:1;width:100%;max-width:720px;margin:0 auto;padding:32px 20px 40px}@media (width>=960px){.app-main{max-width:820px}}.screen-title{letter-spacing:-.02em;margin-bottom:6px;font-size:30px;font-weight:800}.screen-subtitle{color:var(--color-text-muted);margin-bottom:8px;font-size:15px;line-height:1.45}.section-heading{align-items:baseline;gap:10px;margin:26px 0 4px;font-size:17px;font-weight:700;display:flex}.section-heading-hint{color:var(--color-text-muted);font-size:13px;font-weight:400}.section-subhint{color:var(--color-text-muted);margin-bottom:12px;font-size:13px}.icon-circle{border:1px solid #0000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.icon-circle-base{background:var(--color-base-tint);color:var(--color-base);border-color:color-mix(in srgb, var(--color-base) 18%, transparent)}.icon-circle-walls{background:var(--color-walls-tint);color:var(--color-walls);border-color:color-mix(in srgb, var(--color-walls) 18%, transparent)}.icon-circle-lid{background:var(--color-lid-tint);color:var(--color-lid);border-color:color-mix(in srgb, var(--color-lid) 18%, transparent)}.icon-circle-extra{background:var(--color-extra-tint);color:var(--color-extra);border-color:color-mix(in srgb, var(--color-extra) 18%, transparent)}.icon-circle-neutral{background:var(--color-neutral-tint);color:var(--color-text-muted)}.chip{background:var(--color-neutral-tint);border:1px solid var(--color-border);color:var(--color-text);white-space:nowrap;border-radius:999px;align-items:center;padding:5px 12px;font-size:13px;font-weight:600;display:inline-flex}.chip-base{background:var(--color-base-tint);border-color:color-mix(in srgb, var(--color-base) 25%, transparent);color:var(--color-base-dark)}.chip-walls{background:var(--color-walls-tint);border-color:color-mix(in srgb, var(--color-walls) 25%, transparent);color:var(--color-walls-dark)}.chip-lid{background:var(--color-lid-tint);border-color:color-mix(in srgb, var(--color-lid) 25%, transparent);color:var(--color-lid-dark)}input.chip{text-align:center;width:142px;min-height:34px;padding:5px 8px}input.chip:focus-visible{outline:2px solid var(--color-base);outline-offset:1px}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-top:20px;overflow:hidden}.panel-section{border-bottom:1px solid var(--color-divider);padding:24px}.panel-section:last-child{border-bottom:none}.panel-section-header{justify-content:space-between;align-items:baseline;margin-bottom:16px;display:flex}.panel-section-title{color:var(--color-text);font-size:13px;font-weight:600}.panel-section-hint{color:var(--color-text-muted);font-size:12px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:16px;padding:20px}.field-label{color:var(--color-text-muted);margin-bottom:6px;font-size:14px;font-weight:500;display:block}.number-field{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);align-items:baseline;gap:8px;min-height:52px;padding:10px 14px;display:flex}.number-field input{width:100%;min-width:0;color:var(--color-text);background:0 0;border:none;outline:none;font-size:18px;font-weight:600}.number-field .unit{color:var(--color-text-muted);font-size:13px;font-weight:500}.text-field{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:52px;padding:10px 14px;font-size:16px}.select-field{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:52px;padding:10px 14px;font-size:15px}.text-field:focus-visible,.select-field:focus-visible{outline:2px solid var(--color-base);outline-offset:1px}.segmented-control{background:var(--color-neutral-tint);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid}.segmented-control-option{border-radius:calc(var(--radius-md) - 2px);min-height:48px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:0 14px;font-size:15px;font-weight:700;transition:background .15s,color .15s}.segmented-control-option.selected{background:var(--color-surface);color:var(--color-base);box-shadow:var(--shadow-sm)}.segmented-control-option:focus-visible{outline:2px solid var(--color-base);outline-offset:1px}.segmented-control-fieldset{border:none;margin:0;padding:0}.segmented-control-legend{color:var(--color-text);margin-bottom:8px;padding:0;font-size:14px;font-weight:600}.btn{border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:6px;min-height:48px;padding:0 22px;font-size:15px;font-weight:600;transition:opacity .15s,transform 50ms,background .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn-primary{background:var(--color-base);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-base-dark)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong)}.btn-secondary:hover{background:var(--color-neutral-tint)}.btn-ghost{color:var(--color-base);background:0 0}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-danger-ghost{color:var(--color-error);background:0 0}.btn:focus-visible{outline:2px solid var(--color-base);outline-offset:2px}.btn-main-action{min-height:54px;font-size:17px;font-weight:800}.btn-add-extra{border:1.5px solid var(--color-border);width:100%;min-height:52px;color:var(--color-base);gap:8px;font-weight:600}.action-bar{padding-bottom:calc(8px + env(safe-area-inset-bottom));justify-content:space-between;align-items:center;gap:12px;margin-top:28px;display:flex}.action-bar:has(>:only-child){justify-content:flex-end}.action-bar .btn{flex:none;min-width:140px}.grid-2{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=640px){.grid-2{grid-template-columns:1fr 1fr}}.grid-3{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=760px){.grid-3{grid-template-columns:repeat(3,1fr)}}.qty-material-field{margin-bottom:4px}.calc-note{color:var(--color-text-muted);background:var(--color-neutral-tint);border-radius:var(--radius-sm);margin-top:10px;padding:8px 12px;font-size:13px}.calc-note-warning{color:var(--color-error);background:var(--color-error-tint);font-weight:600}.component-section{border-bottom:1px solid var(--color-divider);margin-bottom:20px;padding-bottom:20px}.component-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.component-title{margin-bottom:12px;font-size:14px;font-weight:600}.auto-row{background:var(--color-neutral-tint);border-radius:var(--radius-md);justify-content:space-between;align-items:center;padding:12px 16px;font-size:13px;display:flex}.auto-row .auto-value{font-weight:700}.extras-list{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.extras-item{background:var(--color-extra-tint);border:1px solid color-mix(in srgb, var(--color-extra) 20%, transparent);border-left:3px solid var(--color-extra);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:13px;display:flex}.extras-item strong{color:var(--color-extra)}.extras-form{background:var(--color-neutral-tint);border-radius:var(--radius-md);padding:16px}.extras-form-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.component-table-header,.component-row{grid-template-columns:1.3fr .8fr 1.2fr 1.1fr;align-items:center;gap:16px;padding:14px 0;display:grid}.component-table-header{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-divider);padding-bottom:10px;font-size:11px;font-weight:600}.component-row{border-bottom:1px solid var(--color-divider)}.component-row:last-child{border-bottom:none}.component-row-label{font-size:14px;font-weight:600}.component-row-input{min-height:40px;padding:8px 12px;font-size:14px}.component-row-auto{color:var(--color-text-muted);padding:8px 0;font-size:14px;display:inline-block}.component-row-calc-value{font-size:14px;font-weight:700}.component-row-calc-warning{color:var(--color-error);font-size:13px;font-weight:600}.component-row-calc-subtext{color:var(--color-text-muted);margin-top:2px;font-size:12px}.component-row-material-static{color:var(--color-text-muted);font-size:13px}@media (width<=640px){.component-table-header{display:none}.component-row{grid-template-columns:1fr 1fr;row-gap:8px}.component-row-label{grid-column:1/-1}}.guide-card{border-radius:var(--radius-lg);color:#fff;box-shadow:var(--shadow-md);padding:20px 22px}.guide-card-base{background:linear-gradient(135deg, var(--color-base) 0%, var(--color-base-dark) 100%)}.guide-card-walls{background:linear-gradient(135deg, var(--color-walls) 0%, var(--color-walls-dark) 100%)}.guide-card-lid{background:linear-gradient(135deg, var(--color-lid) 0%, var(--color-lid-dark) 100%)}.guide-card-label{text-transform:uppercase;letter-spacing:.04em;opacity:.85;font-size:13px;font-weight:600}.guide-card-value{letter-spacing:-.02em;margin-top:4px;font-size:44px;font-weight:800;line-height:1.1}.guide-card-instruction{opacity:.9;margin-top:6px;font-size:13px;font-weight:500}.error-summary{background:var(--color-error-tint);border:1px solid color-mix(in srgb, var(--color-error) 35%, transparent);border-radius:var(--radius-lg);color:var(--color-error);padding:14px 18px}.error-summary-title{font-size:15px;font-weight:700}.error-summary ul{margin:8px 0 0;padding-left:18px;font-size:14px}.home-main{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100%;display:flex}.home-header{margin-bottom:36px}.home-header .screen-title{font-size:36px}.home-cards{flex-direction:column;gap:16px;width:100%;max-width:460px;display:flex}.home-card{text-align:left;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);width:100%;box-shadow:var(--shadow-sm);cursor:pointer;flex-direction:column;gap:6px;padding:24px 26px;transition:box-shadow .15s,transform .1s,border-color .15s;display:flex}.home-card:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-1px)}.home-card:active:not(:disabled){transform:translateY(0)}.home-card:disabled{opacity:.7;cursor:default}.home-card:focus-visible{outline:2px solid var(--color-base);outline-offset:2px}.home-card-primary{background:var(--color-base);border-color:var(--color-base);color:#fff}.home-card-primary .home-card-description{color:#ffffffd9}.home-card-secondary{background:var(--color-surface)}.home-card-title{font-size:19px;font-weight:700}.home-card-description{color:var(--color-text-muted);font-size:14px;line-height:1.4}.home-error-card{border-radius:var(--radius-md);background:var(--color-error-tint);text-align:left;border:1px solid #dc262633;width:100%;max-width:460px;margin-top:20px;padding:16px 18px}.home-error{color:var(--color-error);margin:0 0 12px;font-size:14px;font-weight:600}.home-error-actions{flex-wrap:wrap;gap:8px;display:flex}.home-error-details{color:var(--color-text-muted);margin-top:12px;font-size:12px}.home-error-details summary{cursor:pointer;font-weight:600}.home-error-details p{word-break:break-word;margin:8px 0 0;font-family:ui-monospace,monospace}.home-file-input{display:none}.home-footer-links{justify-content:center;gap:8px;margin-top:20px;display:flex}.app-topbar{background:var(--color-surface);border-bottom:1px solid var(--color-divider);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.app-topbar-title{letter-spacing:-.01em;color:var(--color-text);font-size:17px;font-weight:800}.saved-badge{color:var(--color-text-muted);align-items:center;gap:6px;font-size:14px;font-weight:600;transition:color .2s;display:inline-flex}.saved-badge-on{color:var(--color-walls)}.step-indicator{background:var(--color-surface);border-bottom:1px solid var(--color-divider);justify-content:center;align-items:flex-start;padding:18px 16px 0;display:flex}.step{flex:0 auto;align-items:flex-start;display:flex}.step-line{background:var(--color-border);flex-shrink:1;width:clamp(20px,8vw,84px);height:1.5px;margin-top:15px}.step-item{flex-direction:column;align-items:center;gap:6px;padding:0 6px;display:flex}.step-dot{background:var(--color-surface);border:1.5px solid var(--color-border);width:30px;height:30px;color:var(--color-text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;transition:background .2s,color .2s,border-color .2s;display:flex}.step-current .step-dot{background:var(--color-base);border-color:var(--color-base);color:#fff}.step-done .step-dot{background:var(--color-walls);border-color:var(--color-walls);color:#fff}.step-label{color:var(--color-text-muted);white-space:nowrap;font-size:13px;font-weight:500}.step-current .step-label{color:var(--color-base);font-weight:700}.step-done .step-label{color:var(--color-text)}.step-underline{background:0 0;border-radius:3px 3px 0 0;width:100%;min-width:56px;height:3px}.step-current .step-underline{background:var(--color-base)}@media (width<=480px){.step-indicator{padding:14px 8px 0}.step-line{width:clamp(10px,4vw,28px)}.step-label{font-size:12px}.step-underline{min-width:40px}}.plywood-group{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border-left-width:4px;overflow:hidden}.plywood-group-base{border-left-color:var(--color-base)}.plywood-group-walls{border-left-color:var(--color-walls)}.plywood-group-lid{border-left-color:var(--color-lid)}.plywood-group-neutral{border-left-color:var(--color-neutral)}.plywood-summary{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:14px;width:100%;min-height:64px;padding:12px 14px;transition:background .15s;display:flex}.plywood-summary:hover{background:var(--color-neutral-tint)}.plywood-summary:focus-visible{outline:2px solid var(--color-base);outline-offset:-2px}.plywood-summary-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.plywood-summary-label{color:var(--color-text);font-size:16px;font-weight:700}.plywood-summary-value{color:var(--color-text-muted);font-size:14px}.plywood-chevron{color:var(--color-text-muted);transition:transform .2s;display:inline-flex}.plywood-chevron.rotated{transform:rotate(180deg)}.plywood-select{flex-direction:column;gap:8px;padding:0 14px 14px 72px;display:flex}.plywood-option{text-align:left;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);min-height:44px;color:var(--color-text);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;font-size:14px;font-weight:500;transition:border-color .15s,background .15s;display:flex}.plywood-option:focus-visible{outline:2px solid var(--color-base);outline-offset:1px}.plywood-option.selected{border-color:var(--color-text);background:var(--color-neutral-tint);font-weight:700}@media (width<=480px){.plywood-select{padding-left:14px}}.plywood-summary-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:16px 18px}.plywood-summary-card-header{align-items:center;gap:12px;display:flex}.plywood-summary-card-title{flex:1;font-size:16px;font-weight:700}.btn-change{min-height:36px;padding:0 16px;font-size:14px}.plywood-summary-list{flex-direction:column;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.plywood-summary-list li{border-bottom:1px solid var(--color-divider);justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;font-size:14px;display:flex}.plywood-summary-list li:last-child{border-bottom:none;padding-bottom:0}.plywood-summary-list-name{color:var(--color-text);font-weight:600}.plywood-summary-list-spec{color:var(--color-text-muted);text-align:right}.plywood-summary-card .plywood-stack{margin-top:14px}.project-name-field{margin-top:10px;padding:14px 16px;font-size:16px}.measurement-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:12px;display:grid}@media (width<=360px){.measurement-grid{grid-template-columns:1fr}}.measurement-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:text;flex-direction:column;gap:2px;padding:16px 18px;transition:border-color .15s,box-shadow .15s;display:flex}.measurement-card:focus-within{border-color:var(--color-base);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-base) 15%, transparent)}.measurement-label{color:var(--color-text-muted);font-size:14px;font-weight:500}.measurement-card input{letter-spacing:-.02em;width:100%;min-width:0;color:var(--color-text);appearance:textfield;background:0 0;border:none;outline:none;padding:0;font-size:40px;font-weight:800}.measurement-card input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.measurement-card input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.measurement-unit{color:var(--color-text-muted);font-size:14px;font-weight:500}.plywood-stack{flex-direction:column;gap:12px;display:flex}.continue-action{width:100%}.continue-hint{color:var(--color-text-muted);text-align:center;margin-top:8px;font-size:13px}.btn-continue{justify-content:center;gap:10px;width:100%;min-height:54px;font-size:17px;font-weight:800;flex:auto!important}@media (width<=640px){.measurement-card{padding:14px}.measurement-card input{font-size:clamp(24px,8.4vw - 8px,40px)}}.component-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border-left-width:4px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:16px;padding:14px 16px;display:grid}.component-card-base{border-left-color:var(--color-base)}.component-card-walls{border-left-color:var(--color-walls)}.component-card-lid{border-left-color:var(--color-lid)}.component-card-extra{border-left-color:var(--color-extra)}.component-card-neutral{border-left-color:var(--color-neutral)}.component-card-label{font-size:16px;font-weight:700}.component-card-qty-row{margin-top:2px}.component-card-qty-input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);letter-spacing:-.02em;width:92px;min-height:44px;color:var(--color-text);padding:2px 10px;font-size:28px;font-weight:800}.component-card-qty-input:focus-visible{outline:2px solid var(--color-base);outline-offset:1px}.component-card-qty-static{letter-spacing:-.02em;align-items:baseline;gap:8px;font-size:28px;font-weight:800;display:inline-flex}.component-card-auto-note{color:var(--color-text-muted);font-size:13px;font-weight:500}.component-card-calc{text-align:left;min-width:0}.component-card-calc-value{color:var(--color-text);font-size:14px;font-weight:600}.component-card-calc-warning{color:var(--color-error);font-size:13px;font-weight:700}.component-card-calc-subtext{color:var(--color-text-muted);margin-top:2px;font-size:12px}@media (width<=640px){.component-card{grid-template-columns:auto 1fr auto;row-gap:10px}.component-card-calc{grid-column:2}.component-card-material{grid-area:1/3;justify-self:end}.component-card-material input.chip{width:132px;font-size:12px}}.color-section{border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-left-width:4px;margin-bottom:16px;padding:18px 20px}.color-section-base{background:var(--color-base-tint);border-left-color:var(--color-base)}.color-section-walls{background:var(--color-walls-tint);border-left-color:var(--color-walls)}.color-section-lid{background:var(--color-lid-tint);border-left-color:var(--color-lid)}.color-section-extra{background:var(--color-extra-tint);border-left-color:var(--color-extra)}.color-section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.color-section-title{letter-spacing:-.01em;align-items:center;gap:12px;font-size:19px;font-weight:800;display:flex}.color-section-icon{background:var(--color-surface)}.color-section-base .color-section-title{color:var(--color-base)}.color-section-walls .color-section-title{color:var(--color-walls-dark)}.color-section-lid .color-section-title{color:var(--color-lid)}.color-section-extra .color-section-title{color:var(--color-extra)}.color-section-body{flex-direction:column;display:flex}.fact-row{border-bottom:1px solid #0000000d;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;font-size:14px;display:flex}.fact-row:last-child{border-bottom:none}.fact-label{color:var(--color-text-muted)}.fact-value{text-align:right;font-weight:600}.chip-row{flex-wrap:wrap;gap:8px;padding:10px 0 2px;display:flex}.chip-label{opacity:.75;margin-right:6px;font-weight:500}.custom-bearer-spacing{margin-top:14px}.custom-bearer-spacing-hint{color:var(--color-text-muted);margin-bottom:10px;font-size:13px}.custom-bearer-spacing-grid{grid-template-columns:1fr;gap:10px;display:grid}@media (width>=560px){.custom-bearer-spacing-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=860px){.custom-bearer-spacing-grid{grid-template-columns:repeat(3,1fr)}}.custom-bearer-spacing-field{flex-direction:column;gap:6px;display:flex}.custom-bearer-spacing-field-label{color:var(--color-text-muted);font-size:12px;font-weight:600}.custom-bearer-spacing-field-input-wrap{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);align-items:center;gap:8px;min-height:48px;padding:8px 14px;display:flex}.custom-bearer-spacing-field-input{width:100%;min-width:0;color:var(--color-text);background:0 0;border:none;outline:none;font-size:16px;font-weight:600}.custom-bearer-spacing-field-input:focus-visible{outline:none}.custom-bearer-spacing-field-input-wrap:focus-within{outline:2px solid var(--color-base);outline-offset:1px}.custom-bearer-spacing-field-unit{color:var(--color-text-muted);font-size:12px;font-weight:500}.custom-bearer-spacing-summary{border-radius:var(--radius-sm);margin-top:12px;padding:8px 12px;font-size:13px;font-weight:600}.custom-bearer-spacing-summary.ok{color:var(--color-walls-dark);background:var(--color-walls-tint)}.custom-bearer-spacing-summary.error{color:var(--color-error);background:var(--color-error-tint)}.structure-rows{flex-direction:column;gap:12px;display:flex}.bearer-spacing-mode-block{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px 16px}.bearer-spacing-equal-readout{color:var(--color-base-dark);margin-top:12px;font-size:14px;font-weight:700}.error-summary{margin:16px 0}.warning-summary{background:var(--color-lid-tint);border:1px solid color-mix(in srgb, var(--color-lid) 35%, transparent);border-radius:var(--radius-lg);color:var(--color-lid-dark);margin:16px 0;padding:14px 18px}.warning-summary-title{font-size:15px;font-weight:700}.warning-summary ul{margin:8px 0 0;padding-left:18px;font-size:14px}.bearer-spacing-check-summary{color:var(--color-text-muted);word-break:break-word;padding:2px 0 5px;font-size:12px;line-height:1.5}.ready-banner{background:var(--color-walls-tint);border:1px solid color-mix(in srgb, var(--color-walls) 30%, transparent);border-radius:var(--radius-lg);align-items:center;gap:14px;margin:16px 0;padding:14px 18px;display:flex}.ready-banner-compact{gap:10px;padding:10px 16px}.ready-banner-icon{background:var(--color-walls);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.ready-banner-compact .ready-banner-icon{width:26px;height:26px}.ready-banner-title{color:var(--color-text);font-size:15px;font-weight:700}.overall-pod-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:16px;padding:14px 18px;display:flex}.overall-pod-label{white-space:nowrap;flex-direction:column;flex:auto;min-width:120px;font-size:15px;font-weight:700;display:flex;overflow:hidden}.overall-pod-project{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.overall-pod-dims{letter-spacing:-.01em;white-space:nowrap;margin-left:auto;font-size:clamp(16px,4.4vw,20px);font-weight:800}.overall-pod-unit{color:var(--color-text-muted);font-size:13px;font-weight:500}.summary-grid{grid-template-columns:1fr;gap:12px;margin-bottom:16px;display:grid}@media (width>=560px){.summary-grid{grid-template-columns:1fr 1fr}}.summary-card{border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-left-width:4px;padding:16px 18px}.summary-card-base{background:var(--color-base-tint);border-left-color:var(--color-base)}.summary-card-walls{background:var(--color-walls-tint);border-left-color:var(--color-walls)}.summary-card-lid{background:var(--color-lid-tint);border-left-color:var(--color-lid)}.summary-card-header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.summary-card-title{font-size:16px;font-weight:800}.summary-card-base .summary-card-title{color:var(--color-base)}.summary-card-walls .summary-card-title{color:var(--color-walls-dark)}.summary-card-lid .summary-card-title{color:var(--color-lid-dark)}.summary-card-body{flex-direction:column;display:flex}.summary-card-note{color:var(--color-text-muted);border-top:1px solid #0000000f;margin-top:8px;padding-top:8px;font-size:12px}.stat-line{align-items:baseline;gap:8px;padding:5px 0;display:flex}.stat-line-value{letter-spacing:-.01em;flex-shrink:0;font-size:20px;font-weight:800}.stat-line-label{color:var(--color-text-muted);font-size:13px}.stat-line-sub{color:var(--color-text-muted)}.extras-footer{background:var(--color-extra-tint);border:1px solid var(--color-border);border-left-width:4px;border-left-color:var(--color-extra);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:16px;padding:16px 18px;font-size:13px}.extras-footer-header{align-items:center;gap:10px;display:flex}.extras-footer-title{color:var(--color-extra);font-size:16px;font-weight:800}.extras-footer ul{color:var(--color-text);margin:10px 0 0;padding-left:18px}.materials-footer{color:var(--color-text-muted);align-items:center;gap:10px;padding:10px 4px;font-size:13px;display:flex}.materials-footer-text{flex:1;min-width:0}.spacing-card{border-radius:var(--radius-lg);color:#fff;padding:14px 20px}.spacing-card-base{background:linear-gradient(135deg, var(--color-base), var(--color-base-dark))}.spacing-card-walls{background:linear-gradient(135deg, var(--color-walls), var(--color-walls-dark))}.spacing-card-lid{background:linear-gradient(135deg, var(--color-lid), var(--color-lid-dark))}.spacing-card-label{text-transform:uppercase;letter-spacing:.06em;opacity:.92;font-size:11px;font-weight:700}.spacing-card-value{letter-spacing:-.02em;margin:2px 0 4px;font-size:32px;font-weight:800;line-height:1}.spacing-card-unit{opacity:.85;margin-left:6px;font-size:15px;font-weight:600}.spacing-card-helper{opacity:.9;font-size:12px;line-height:1.35}.spacing-card-variable .spacing-card-label{margin-bottom:4px}.spacing-card-chips{flex-wrap:wrap;gap:6px;margin:4px 0 8px;display:flex}.spacing-card-chip{background:#ffffff29;border-radius:999px;align-items:center;gap:6px;padding:5px 10px 5px 6px;font-size:13px;font-weight:700;display:inline-flex}.spacing-card-chip-index{background:#ffffff47;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;display:inline-flex}.layout-option-header{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;font-size:13px;font-weight:700}.layout-option-grid{grid-template-columns:1fr;gap:12px;display:grid}@media (width>=560px){.layout-option-grid{grid-template-columns:1fr 1fr}}.layout-option-card{text-align:left;border-radius:var(--radius-lg);border:1.5px solid var(--color-border);background:var(--color-surface);cursor:pointer;align-items:flex-start;gap:10px;min-height:44px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.layout-option-card:focus-visible{outline:2px solid var(--color-base);outline-offset:1px}.layout-option-extra{border-color:color-mix(in srgb, var(--color-extra) 40%, var(--color-border))}.layout-option-radio{border:1.5px solid var(--color-border);background:var(--color-surface);border-radius:50%;flex-shrink:0;width:22px;height:22px;margin-top:1px;transition:border-color .15s;position:relative}.layout-option-radio.checked{border-color:var(--color-base)}.layout-option-radio.checked:after{content:"";background:var(--color-base);border-radius:50%;position:absolute;inset:4px}.layout-option-body{flex-direction:column;gap:2px;min-width:0;display:flex}.layout-option-title{font-size:14px;font-weight:700}.layout-option-base .layout-option-title{color:var(--color-base)}.layout-option-extra .layout-option-title{color:var(--color-extra)}.layout-option-description{color:var(--color-text-muted);font-size:12px;line-height:1.3}.layout-option-stats{color:var(--color-text);margin-top:4px;font-size:12px;font-weight:700}.layout-option-card.selected.layout-option-base{border-color:var(--color-base);background:var(--color-base-tint)}.layout-option-card.selected.layout-option-extra{border-color:var(--color-extra);background:var(--color-extra-tint)}.layout-option-card.selected.layout-option-extra .layout-option-radio.checked{border-color:var(--color-extra)}.layout-option-card.selected.layout-option-extra .layout-option-radio.checked:after{background:var(--color-extra)}.cut-list-group{padding-top:2px}.cut-list-title{font-size:15px;font-weight:700}.cut-list-material{color:var(--color-text-muted);margin-top:2px;margin-bottom:12px;font-size:12px}.cut-list-material:has(+.cut-list-quantity-note){margin-bottom:2px}.cut-list-quantity-note{color:var(--color-walls-dark);margin-bottom:12px;font-size:11px;font-weight:600}.cut-list-rows{flex-direction:column;display:flex}.cut-list-row{border-bottom:1px solid var(--color-divider);align-items:center;gap:12px;padding:12px 0;display:flex}.cut-list-row:last-child{border-bottom:none}.cut-list-swatch{border-radius:4px;flex-shrink:0;align-self:stretch;width:10px}.cut-list-row-body{flex:1;min-width:0}.cut-list-row-top{align-items:baseline;gap:8px;margin-bottom:2px;display:flex}.cut-list-row-label{color:var(--color-text);font-size:13px;font-weight:800}.cut-list-row-type{color:var(--color-text-faint);font-size:12px;font-weight:600}.cut-list-row-size{color:var(--color-text);white-space:nowrap;font-size:21px;font-weight:800}.cut-list-row-material{color:var(--color-text-muted);margin-top:2px;font-size:12px}.cut-list-row-qty{color:var(--color-text-faint);flex-shrink:0;font-size:12px;font-weight:700}.material-summary{border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);padding:16px 18px}.material-summary-title{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:12px;font-size:12px;font-weight:800}.material-summary-grid{grid-template-columns:1fr 1fr;gap:14px 20px;display:grid}.material-summary-stat{flex-direction:column;gap:2px;display:flex}.material-summary-value{letter-spacing:-.01em;font-size:24px;font-weight:800}.material-summary-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:11.5px}.material-summary-benefit{color:var(--color-text-muted);margin:12px 0 0;font-size:13px;font-weight:600}.recommendation-card{border-radius:var(--radius-lg);border:2px solid var(--color-border);background:var(--color-surface);padding:16px 18px}.recommendation-card-base{border-color:var(--color-base)}.recommendation-card-walls{border-color:var(--color-walls)}.recommendation-card-lid{border-color:var(--color-lid)}.recommendation-title{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-faint);margin-bottom:6px;font-size:12px;font-weight:800}.recommendation-message{color:var(--color-text);margin:0;font-size:15px;font-weight:600;line-height:1.4}.match-banner{border-left:4px solid var(--color-extra);background:var(--color-extra-tint)}.match-banner-header{align-items:flex-start;gap:12px;display:flex}.match-banner-title{color:var(--color-extra);font-size:15px;font-weight:800}.match-banner-recommend{color:var(--color-text);margin-top:2px;font-size:13px}.match-banner-list{flex-direction:column;gap:4px;margin:12px 0 0;padding:0;font-size:14px;font-weight:600;list-style:none;display:flex}.match-tag{color:var(--color-text-muted);font-size:11px;font-weight:600}.match-banner-offline{color:var(--color-lid-dark);margin-top:10px;font-size:12px}.match-banner-conflict{color:var(--color-error);margin-top:10px;font-size:12px;font-weight:600}.match-banner-actions{gap:10px;margin-top:14px;display:flex}.btn-reserve{background:var(--color-extra);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;flex:1;min-height:44px;font-weight:700}.btn-reserve:disabled{opacity:.4;cursor:not-allowed}.advanced-details{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 16px}.advanced-details summary{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;min-height:20px;font-size:13px;font-weight:700}.advanced-details-body{color:var(--color-text);flex-direction:column;gap:6px;margin-top:12px;font-size:13px;display:flex}.advanced-details-body .fact-row{font-size:13px}.structure-tab{flex-direction:column;gap:16px;max-width:1000px;margin:0 auto;display:flex}.structure-drawing-area{padding:4px 0}.drawing-card{padding:20px}.drawing-card-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.drawing-card-title{letter-spacing:-.01em;font-size:19px;font-weight:800}.drawing-card-header-tags{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.drawing-material-tag{text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800}.drawing-material-tag-ply-12ns{color:#0e7490;background:#cffafe}.drawing-material-tag-ply-17s{color:#4338ca;background:#e0e7ff}.drawing-material-tag-ply-other{color:#52525b;background:#e4e4e7}.drawing-note{color:var(--color-text-muted);margin-bottom:6px;font-size:13px}.drawing-legend{color:var(--color-text-muted);border-top:1px solid var(--color-divider);margin-top:6px;padding-top:10px;font-size:12px}.structure-spacing-row{flex-direction:column;gap:10px;display:flex}.cut-list-offcut-note{color:var(--color-text-muted);border-top:1px dashed var(--color-divider);margin:8px 0 0;padding-top:8px;font-size:12px}.stock-sheet{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:14px;padding:14px}.stock-sheet-header{color:var(--color-text-muted);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;font-weight:600;display:flex}.stock-sheet-count{color:var(--color-text)}.stock-sheet-svg{width:100%;height:auto;display:block}.sheets-offcuts-tab{flex-direction:column;gap:16px;max-width:720px;margin:0 auto;display:flex}.reusable-pieces-title{letter-spacing:-.01em;font-size:20px;font-weight:800}.reusable-piece-groups{flex-direction:column;gap:18px;display:flex}.reusable-piece-group{background:var(--color-extra-tint);border:1px solid color-mix(in srgb, var(--color-extra) 25%, transparent);border-radius:var(--radius-lg);padding:14px 18px}.reusable-piece-group-title{color:var(--color-extra);margin-bottom:8px;font-size:14px;font-weight:700}.reusable-piece-check-row{cursor:pointer;border-bottom:1px solid #0000000f;align-items:center;gap:14px;padding:10px 0;display:flex}.reusable-piece-check-row:last-child{border-bottom:none}.reusable-piece-check-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--color-extra);flex-shrink:0}.reusable-piece-dims{letter-spacing:-.01em;flex:1;font-size:20px;font-weight:800}.reusable-piece-unit{color:var(--color-text-muted);font-size:13px;font-weight:500}.reusable-piece-status{color:var(--color-walls-dark);background:var(--color-walls-tint);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.btn-review-save{background:var(--color-extra);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:10px;min-height:50px;font-size:16px;font-weight:700;display:flex}.btn-review-save:disabled{opacity:.4;cursor:not-allowed}.sheet-cuts-collapsed-list{flex-direction:column;gap:10px;margin-top:8px;display:flex}.sheet-cuts-disclosure{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.sheet-cuts-disclosure-header{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;min-height:56px;padding:12px 16px;display:flex}.sheet-cuts-chevron{color:var(--color-text-muted);flex-shrink:0;transition:transform .2s;display:inline-flex}.sheet-cuts-chevron.rotated{transform:rotate(180deg)}.sheet-cuts-disclosure-text{flex-direction:column;gap:2px;min-width:0;display:flex}.sheet-cuts-disclosure-title{font-size:15px;font-weight:700}.sheet-cuts-disclosure-sub{color:var(--color-text-muted);font-size:12px}.sheet-cuts-disclosure-body{flex-direction:column;gap:16px;padding:0 16px 16px;display:flex}.plan-topbar{background:var(--color-surface);border-bottom:1px solid var(--color-divider);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.plan-topbar-heading{min-width:0}.plan-project{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:22px;font-weight:800;overflow:hidden}.plan-dims{color:var(--color-text-muted);margin-top:2px;font-size:14px}.plan-topbar-actions{flex-wrap:wrap;gap:10px;display:flex}.plan-tabs{background:var(--color-surface);border-bottom:1px solid var(--color-divider);flex-wrap:wrap;gap:8px;padding:12px 20px;display:flex}.plan-tab{border-radius:var(--radius-md);border:1.5px solid var(--color-border);background:var(--color-surface);min-height:46px;color:var(--color-text-muted);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.plan-tab:focus-visible{outline:2px solid var(--color-base);outline-offset:1px}.plan-tab.active.plan-tab-base{background:var(--color-base-tint);border-color:var(--color-base);color:var(--color-base)}.plan-tab.active.plan-tab-walls{background:var(--color-walls-tint);border-color:var(--color-walls);color:var(--color-walls-dark)}.plan-tab.active.plan-tab-lid{background:var(--color-lid-tint);border-color:var(--color-lid);color:var(--color-lid-dark)}.plan-tab.active.plan-tab-neutral{background:var(--color-neutral-tint);border-color:var(--color-text);color:var(--color-text)}.plan-tab.active.plan-tab-extra{background:var(--color-extra-tint);border-color:var(--color-extra);color:var(--color-extra)}.plan-main{max-width:1100px}.btn-print-bottom{gap:10px;width:100%;max-width:1000px;min-height:54px;margin:24px auto 0;font-size:16px;display:flex}.tablet-drawing{width:100%;height:auto;display:block}.drawing-empty{text-align:center;color:var(--color-text-muted);padding:60px 20px}.plan-empty-state{text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:var(--color-text-muted);flex-direction:column;align-items:center;gap:18px;margin-top:24px;padding:48px 24px;font-size:15px;display:flex}.plan-empty-state .btn{gap:8px}@media (width<=640px){.plan-topbar-actions{width:100%}.plan-topbar-actions .btn{flex:1}}@page print-portrait{size:A4 portrait;margin:12mm;@bottom-right{content:"Page " counter(page) " of " counter(pages);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:8.5px;color:#888}}@page print-landscape{size:A4 landscape;margin:10mm;@bottom-right{content:"Page " counter(page) " of " counter(pages);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:8.5px;color:#888}}@page{size:A4 portrait;margin:12mm}.print-doc{background:#e8e8ec;min-height:100vh;padding:24px 0}.print-screen-controls{justify-content:center;gap:10px;margin-bottom:20px;display:flex}.print-nothing-to-print{text-align:center;color:#444;max-width:420px;margin:60px auto 0;font-size:15px}.print-measure{visibility:hidden;pointer-events:none;position:absolute;top:0;left:-99999px}.print-page{color:#1d1d1f;font-family:var(--font-sans);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;margin:0 auto 24px;box-shadow:0 4px 24px #00000026}.print-page-timber{break-before:page;page-break-before:always}@media screen{.print-page{padding:10mm}}.print-page.orientation-portrait{page:print-portrait;width:210mm;min-height:297mm}.print-page.orientation-landscape{page:print-landscape;width:297mm;min-height:210mm}.print-table{border-collapse:collapse;table-layout:fixed;width:100%}.print-table thead td{padding:0}.print-header{background:#fff;border-bottom:2px solid #1d1d1f;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;padding-bottom:10px;display:flex}.print-header-left{flex-shrink:0;align-items:baseline;gap:10px;display:flex}.print-header h1{letter-spacing:.02em;white-space:nowrap;margin:0;font-size:21px;font-weight:800}.print-header-subtitle{letter-spacing:.05em;color:#d97706;white-space:nowrap;border:1.5px solid #d97706;border-radius:4px;padding:1px 7px;font-size:12px;font-weight:800}.print-header-meta{text-align:right;flex-direction:column;flex-shrink:1;gap:2px;min-width:0;max-width:62%;display:flex}.print-header-meta-row{justify-content:flex-end;gap:6px;font-size:11px;display:flex}.print-header-meta-label{color:#6b7280;flex-shrink:0;font-weight:700}.print-header-meta-value{color:#1d1d1f;white-space:normal;overflow-wrap:break-word;text-align:right;font-weight:700}.print-stock-box{background:#fafafa;border:1px solid #d9d9de;border-radius:6px;margin-bottom:12px;padding:8px 14px}.print-stock-box h2{text-transform:uppercase;letter-spacing:.05em;color:#444;margin:0 0 4px;font-size:11px;font-weight:800}.print-stock-box ul{margin:0;padding:0;list-style:none}.print-stock-box li{color:#333;padding:2px 0;font-size:12px}.print-spacing-note{text-transform:uppercase;letter-spacing:.04em;color:#444;margin-bottom:6px;font-size:10px;font-weight:800}.print-spacing-chips{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.print-spacing-chip{color:#fff;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:76px;padding:6px 10px;display:flex}.print-spacing-chip-label{text-transform:uppercase;letter-spacing:.04em;opacity:.9;font-size:9px;font-weight:700}.print-spacing-chip-value{font-size:13px;font-weight:800}.print-spacing-chip-base{background:#2563eb}.print-spacing-chip-walls{background:#16a34a}.print-spacing-chip-lid{background:#ea580c}.print-section-title-row td{text-transform:uppercase;letter-spacing:.04em;break-after:avoid;break-inside:avoid;padding:6px 8px;font-size:12px;font-weight:800}.print-section-spec{text-transform:none;letter-spacing:0;opacity:.85;font-size:10px;font-weight:600}.print-section-base td{color:#1d4ed8;background:#eaf3fd;border-left:4px solid #2563eb}.print-section-lid td{color:#c2410c;background:#fff2e2;border-left:4px solid #ea580c}.print-section-walls td{color:#15803d;background:#e8f6f2;border-left:4px solid #16a34a}.print-section-reusable td{color:#92400e;background:#fffbeb;border-left:4px solid #d97706}.print-section-neutral td{color:#374151;background:#f4f4f5;border-left:4px solid #6b7280}.print-column-header-row td{text-transform:uppercase;letter-spacing:.04em;color:#6b7280;border-bottom:1.5px solid #d9d9de;padding:4px 8px 6px;font-size:10px;font-weight:700}.print-row{break-inside:avoid;font-size:12px}.print-row td{vertical-align:middle;border-bottom:1px dashed #0000001a;padding:4px 8px}.print-col-letter{color:#555;width:24px;font-weight:800}.print-col-letter:not(:empty){text-align:center}.print-col-qty{white-space:nowrap;width:44px;font-weight:800}.print-col-dims{white-space:nowrap;width:126px;font-weight:700}.print-col-component{font-weight:700}.print-col-piece{align-items:center;gap:8px;width:220px;display:flex}.print-piece-badge{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:800;display:inline-flex}.print-piece-badge-base{background:#2563eb}.print-piece-badge-lid{background:#ea580c}.print-piece-badge-walls{background:#16a34a}.print-piece-badge-reusable{background:#d97706}.print-piece-qty{white-space:nowrap;flex-shrink:0;font-size:14px;font-weight:800}.print-piece-dims{color:#333;white-space:nowrap;font-size:13px;font-weight:700}.print-col-spec{color:#555}.print-col-checks{width:38%;padding-left:16px}.print-reserved-row td{break-before:avoid;border-bottom:1px dashed #0000001a;padding:2px 8px 6px}.print-reserved-badge{text-transform:uppercase;letter-spacing:.04em;color:#92400e;background:#fef3c7;border:1px solid #d97706;border-radius:4px;margin-right:8px;padding:1px 6px;font-size:9px;font-weight:800;display:inline-block}.print-reserved-detail{color:#92400e;font-size:10.5px}.print-reusable-note td{color:#92400e;border-bottom:none;padding-top:6px;font-size:10.5px;font-style:italic}.print-offcut-material-row td{text-transform:uppercase;letter-spacing:.04em;color:#92400e;background:#fef3c7;border-bottom:1px solid #fde68a;padding:5px 8px;font-size:10px;font-weight:800}.print-offcut-tag{text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;color:#92400e;background:#fde68a;border-radius:999px;flex-shrink:0;align-items:center;padding:2px 8px;font-size:9.5px;font-weight:800;display:inline-flex}.checkbox-row{flex-wrap:wrap;place-content:center flex-end;gap:4px 10px;display:flex}.checkbox-group{gap:3px;display:flex}.print-checkbox{border:1.25px solid #1d1d1f;border-radius:2px;flex-shrink:0;width:11px;height:11px}.print-consumption-body-row td{vertical-align:top;border-bottom:none;padding:0 8px}.print-takeoff-table{border-collapse:collapse;width:100%}.print-takeoff-table td{border-bottom:1px dashed #00000014;padding:5px 8px 5px 0;font-size:12px}.print-consumption-value{text-align:right;white-space:nowrap;font-weight:700}.print-takeoff-prepare{font-size:13px;font-weight:800}.print-consumption-subtable-header td{text-transform:uppercase;letter-spacing:.03em;color:#6b7280;border-bottom:1.5px solid #d9d9de;padding:0 8px 4px 0;font-size:9.5px;font-weight:800}.print-consumption-warning-row td{color:#92400e;background:#fffbeb;border-bottom:1px dashed #00000014;padding:3px 4px;font-size:10px;font-style:italic}.print-consumption-group-row td{text-transform:uppercase;letter-spacing:.04em;padding:5px 8px;font-size:10.5px;font-weight:800}.print-consumption-group-timber td{color:#3730a3;background:#eef2ff;border-left:3px solid #4338ca}.print-consumption-group-plywood td{color:#92400e;background:#fef3c7;border-left:3px solid #d97706}.print-consumption-group-extra td{color:#6d28d9;background:#f5f3ff;border-left:3px solid #7c3aed}@media screen{.print-page{border-radius:8px}}@media print{html,body{background:#fff!important}.no-print{display:none!important}.print-doc{background:0 0;min-height:0;padding:0}.print-page{box-shadow:none;width:auto;min-height:auto;margin:0}}.inventory-page{max-width:720px;margin:0 auto;padding:20px 20px 40px}.inventory-header{align-items:center;gap:12px;margin-bottom:4px;display:flex}.inventory-back{padding:0 8px;font-size:20px}.inventory-title{letter-spacing:-.01em;flex:1;font-size:22px;font-weight:800}.inventory-header-badge{color:var(--color-text-muted);align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.inventory-header-badge.cloud-on{color:var(--color-walls)}.offline-banner{background:var(--color-lid-tint);color:var(--color-lid-dark);border-radius:var(--radius-md);margin:12px 0;padding:10px 14px;font-size:13px;font-weight:600}.confirm-info-banner{background:var(--color-extra-tint);color:var(--color-extra);border-radius:var(--radius-md);margin:14px 0;padding:12px 16px;font-size:13px;font-weight:600;line-height:1.5}.confirm-spec-group{margin-bottom:18px}.confirm-spec-title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:10px;font-size:13px;font-weight:700}.confirm-row{background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--color-extra);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;padding:14px 16px;display:flex}.confirm-row-checkbox input{width:22px;height:22px;accent-color:var(--color-extra)}.confirm-row-qty-stepper{align-items:center;gap:8px;font-size:18px;font-weight:700;display:flex}.confirm-row-qty-stepper button{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:50%;width:32px;height:32px;font-size:18px}.confirm-row-dim{border:1px solid var(--color-border);border-radius:var(--radius-sm);text-align:center;width:90px;min-height:40px;padding:4px 10px;font-size:18px;font-weight:700}.confirm-row-x{color:var(--color-text-muted)}.confirm-row-unit{color:var(--color-text-muted);font-size:12px}.confirm-row-calculated{width:100%;color:var(--color-walls-dark);margin-top:4px;font-size:12px}.confirm-summary-banner{background:var(--color-neutral-tint);border-radius:var(--radius-md);align-items:center;gap:10px;margin:12px 0 20px;padding:14px 16px;font-size:14px;display:flex}.materials-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.materials-dot-lid{background:var(--color-lid)}.confirm-actions{gap:12px;display:flex}.confirm-actions .btn{flex:1}.btn-save-inventory{background:var(--color-extra);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;min-height:48px;font-weight:700;display:flex}.btn-save-inventory:disabled{opacity:.4;cursor:not-allowed}.saved-pieces-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:center;gap:12px;margin:14px 0;padding:14px 16px;display:flex}.saved-pieces-summary-text{flex:1;font-size:15px}.saved-pieces-summary-text strong{color:var(--color-extra);margin-right:6px;font-size:20px}.btn-add-piece{min-height:40px;color:var(--color-extra);border-color:var(--color-extra);align-items:center;gap:6px;display:flex}.add-piece-form{background:var(--color-neutral-tint);border-radius:var(--radius-md);flex-direction:column;gap:10px;margin-bottom:14px;padding:14px 16px;display:flex}.add-piece-form-row{align-items:center;gap:8px;display:flex}.add-piece-form-row input{width:90px}.add-piece-form-actions{justify-content:flex-end;gap:10px;display:flex}.spec-tabs{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.spec-tab{border-radius:var(--radius-md);border:1.5px solid var(--color-border);background:var(--color-surface);min-height:40px;color:var(--color-text-muted);cursor:pointer;padding:0 16px;font-size:13px;font-weight:600}.spec-tab.active{border-color:var(--color-extra);background:var(--color-extra-tint);color:var(--color-extra)}.saved-pieces-list{flex-direction:column;gap:10px;display:flex}.saved-piece-row{background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--color-extra);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:14px 16px}.saved-piece-dims{letter-spacing:-.01em;font-size:24px;font-weight:800}.saved-piece-footer{align-items:center;gap:10px;margin-top:8px;display:flex}.status-badge{text-transform:capitalize;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.status-available{background:var(--color-walls-tint);color:var(--color-walls-dark)}.status-reserved{background:var(--color-base-tint);color:var(--color-base-dark)}.status-used{background:var(--color-neutral-tint);color:var(--color-text-muted)}.saved-pieces-note{color:var(--color-text-muted);text-align:center;margin:18px 0;font-size:12px}.btn-start-new{justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;font-size:16px;display:flex}.pdf-review-main{max-width:820px}.pdf-section{text-align:left;margin-top:16px;padding:18px 20px}.pdf-status-strip{background:var(--color-neutral-tint);border-radius:var(--radius-md);color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.pdf-status-strip-sep{color:var(--color-text-faint)}.pdf-confidence-badge{text-transform:capitalize;color:var(--color-text-muted)}.pdf-confidence-badge[data-level=low]{color:var(--color-error)}.pdf-confidence-badge[data-level=medium]{color:var(--color-lid-dark)}.pdf-confidence-badge[data-level=high]{color:var(--color-walls-dark)}.pdf-engineered-banner{border-radius:var(--radius-md);background:var(--color-additional-tint);border:1px solid color-mix(in srgb, var(--color-additional) 30%, transparent);color:var(--color-additional-dark);margin-top:12px;padding:12px 16px;font-size:13px;font-weight:600;line-height:1.4}.pdf-warning-banner{border-radius:var(--radius-md);background:var(--color-lid-tint);border:1px solid color-mix(in srgb, var(--color-lid) 25%, transparent);color:var(--color-lid-dark);justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px 16px;font-size:14px;font-weight:700;display:flex}.pdf-warning-banner-link{color:var(--color-base);white-space:nowrap;font-size:13px;font-weight:700;text-decoration:none}.pdf-warning-banner-link:hover{text-decoration:underline}.pdf-section-badge{white-space:nowrap;text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700}.pdf-section-badge-approved{background:var(--color-walls-tint);color:var(--color-walls-dark)}.pdf-section-badge-needs-review{background:var(--color-lid-tint);color:var(--color-lid-dark)}.pdf-section-badge-empty{background:var(--color-neutral-tint);color:var(--color-text-muted)}.pdf-classification-note{color:var(--color-text-muted);margin:4px 0 12px;font-size:12px;line-height:1.4}.pdf-family-check{border-radius:var(--radius-md);align-items:flex-start;gap:8px;margin:0 0 12px;padding:10px 14px;font-size:13px;font-weight:700;line-height:1.4;display:flex}.pdf-family-check-ok{background:var(--color-walls-tint);color:var(--color-walls-dark)}.pdf-family-check-mismatch{background:var(--color-error-tint);color:var(--color-error)}.pdf-required-hint{color:var(--color-error);margin:10px 0 0;font-size:13px;font-weight:600}.pdf-section-actions{justify-content:flex-end;margin-top:12px;display:flex}.pdf-dimensions-section{margin-top:14px}.pdf-dimension-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:12px;display:grid}@media (width<=480px){.pdf-dimension-grid{grid-template-columns:1fr}}.pdf-dimension-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:text;flex-direction:column;gap:2px;padding:16px 18px;transition:border-color .15s,box-shadow .15s;display:flex}.pdf-dimension-card:focus-within{border-color:var(--color-base);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-base) 15%, transparent)}.pdf-dimension-card-missing{border-color:color-mix(in srgb, var(--color-error) 40%, var(--color-border))}.pdf-dimension-label{color:var(--color-text-muted);font-size:14px;font-weight:500}.pdf-dimension-card input{letter-spacing:-.02em;width:100%;min-width:0;color:var(--color-text);appearance:textfield;background:0 0;border:none;outline:none;padding:0;font-size:40px;font-weight:800}.pdf-dimension-card input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pdf-dimension-card input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}@media (width<=640px){.pdf-dimension-card{padding:14px}.pdf-dimension-card input{font-size:clamp(24px,8.4vw - 8px,40px)}}.pdf-dimension-unit{color:var(--color-text-muted);font-size:14px;font-weight:500}.pdf-dimensions-confirmed{color:var(--color-walls-dark);margin:12px 0 0;font-size:14px;font-weight:700}.pdf-disclosure{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);margin-top:12px;overflow:hidden}.pdf-disclosure-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:16px 20px;font-size:16px;font-weight:700;list-style:none;display:flex}.pdf-disclosure-summary::-webkit-details-marker{display:none}.pdf-disclosure-summary:before{content:"›";color:var(--color-text-faint);margin-right:8px;font-size:20px;font-weight:700;transition:transform .15s;display:inline-block}.pdf-disclosure[open] .pdf-disclosure-summary:before{transform:rotate(90deg)}.pdf-debug-section{margin-bottom:16px}.pdf-debug-body{flex-direction:column;gap:20px;padding:0 20px 20px;display:flex}.pdf-debug-stage-title{margin:0 0 4px;font-size:14px;font-weight:700}.pdf-debug-stage-hint{color:var(--color-text-faint);margin:0 0 8px;font-size:13px}.pdf-debug-json{background:var(--color-bg-subtle,#f5f5f5);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);white-space:pre;max-height:320px;margin:0;padding:12px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;line-height:1.5;overflow:auto}.pdf-disclosure-summary span:first-child{align-items:center;display:flex}.pdf-disclosure-body{text-align:left;padding:0 20px 20px}.pdf-field-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:12px;display:grid}.pdf-field{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-neutral-tint);flex-direction:column;gap:4px;padding:12px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.pdf-field:focus-within{border-color:var(--color-border-strong);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-text-muted) 12%, transparent)}.pdf-field-rejected{opacity:.6}.pdf-field-label-row{justify-content:space-between;align-items:center;gap:6px;display:flex}.pdf-field-label-row .field-label{color:var(--color-text-muted);margin-bottom:0;font-size:13px;font-weight:700}.pdf-field-check{background:var(--color-lid);border-radius:50%;flex-shrink:0;width:8px;height:8px}.pdf-field-input{min-height:30px;color:var(--color-text);background:0 0;border:none;padding:0;font-size:17px;font-weight:700}.pdf-field-input:focus-visible{outline:none}.pdf-field-input:disabled{color:var(--color-text-faint);background:0 0}.pdf-field-link{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:12px;font-weight:600}.pdf-field-link:hover{color:var(--color-base);text-decoration:underline}.pdf-field-link-row{align-items:center;gap:12px;display:flex}.pdf-field-link-primary{color:var(--color-base);font-weight:700}.pdf-inline-conflict{color:var(--color-error);background:var(--color-error-tint);border-radius:var(--radius-sm);padding:6px 8px;font-size:12px}.pdf-dimension-candidate-list{flex-direction:column;gap:10px;margin:10px 0 0;padding:0;list-style:none;display:flex}.pdf-dimension-candidate{border-bottom:1px solid var(--color-divider);flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:8px 0;display:flex}.pdf-dimension-candidate:last-child{border-bottom:none}.pdf-dimension-candidate-value{color:var(--color-text);font-size:15px;font-weight:800}.pdf-dimension-candidate-meaning{color:var(--color-text-muted);flex:auto;font-size:13px}.pdf-dimension-candidate-source{color:var(--color-text-faint);width:100%;font-size:12px}.pdf-cutlist-group{border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-neutral-tint);margin-top:14px;padding:14px 16px 16px}.pdf-cutlist-group:first-of-type{margin-top:12px}.pdf-cutlist-group-base{border-color:color-mix(in srgb, var(--color-base) 45%, var(--color-border));background:var(--color-surface)}.pdf-cutlist-group-walls{border-color:color-mix(in srgb, var(--color-walls) 45%, var(--color-border));background:var(--color-surface)}.pdf-cutlist-group-lid{border-color:color-mix(in srgb, var(--color-lid) 45%, var(--color-border));background:var(--color-surface)}.pdf-cutlist-group-additional{border-color:color-mix(in srgb, var(--color-additional) 45%, var(--color-border));background:var(--color-surface)}.pdf-cutlist-group-neutral{border-color:var(--color-border-strong);background:var(--color-surface)}.pdf-cutlist-group-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.pdf-cutlist-group-title{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin:0;font-size:13px;font-weight:800}.pdf-cutlist-group-base .pdf-cutlist-group-title{color:var(--color-base-dark)}.pdf-cutlist-group-walls .pdf-cutlist-group-title{color:var(--color-walls-dark)}.pdf-cutlist-group-lid .pdf-cutlist-group-title{color:var(--color-lid-dark)}.pdf-cutlist-group-additional .pdf-cutlist-group-title{color:var(--color-additional-dark)}.pdf-cutlist-table-wrap{background:var(--color-surface);border-radius:var(--radius-md);padding:2px 10px;overflow-x:auto}.pdf-cutlist-table{border-collapse:collapse;width:100%;font-size:13px}.pdf-cutlist-table th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);border-bottom:1px solid var(--color-divider);white-space:nowrap;padding:6px;font-size:11px;font-weight:700}.pdf-cutlist-table td{border-bottom:1px solid var(--color-divider);vertical-align:middle;padding:5px 6px}.pdf-cutlist-row:last-child td{border-bottom:none}.pdf-cutlist-row-rejected{opacity:.55}.pdf-table-input{background:0 0;border:1px solid #0000;border-radius:6px;width:100%;min-width:0;padding:5px 6px;font-size:13px}.pdf-table-input:hover:not(:disabled),.pdf-table-input:focus{border-color:var(--color-border-strong);background:var(--color-surface)}.pdf-table-input:disabled{color:var(--color-text-faint)}.pdf-table-input-qty{width:46px}.pdf-table-input-name{min-width:120px;font-weight:600}.pdf-size-box{border:1px solid var(--color-border);background:var(--color-neutral-tint);white-space:nowrap;border-radius:8px;align-items:center;gap:3px;padding:2px 8px 2px 2px;display:inline-flex}.pdf-size-input{text-align:right;font-variant-numeric:tabular-nums;appearance:textfield;width:64px;font-weight:700}.pdf-size-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pdf-size-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pdf-size-times{color:var(--color-text-muted);font-weight:700}.pdf-size-unit{color:var(--color-text-muted);font-size:11px;font-weight:600}.pdf-size-note{color:var(--color-text-muted);margin-top:3px;font-size:10.5px;font-style:italic}.pdf-table-material-cell{flex-direction:column;gap:3px;min-width:150px;max-width:260px;display:flex}.pdf-table-input-section,.pdf-table-input-material{text-overflow:ellipsis;min-width:0;overflow:hidden}.pdf-table-source-cell{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.pdf-status-badge{white-space:nowrap;background:var(--color-lid-tint);color:var(--color-lid-dark);border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-block}.pdf-status-confirmed{background:var(--color-walls-tint);color:var(--color-walls-dark)}.pdf-status-rejected{background:var(--color-neutral-tint);color:var(--color-text-muted)}.pdf-status-missing,.pdf-status-conflict,.pdf-status-unreadable{background:var(--color-error-tint);color:var(--color-error)}.pdf-approve-btn-base{border-color:color-mix(in srgb, var(--color-base) 55%, var(--color-border-strong));color:var(--color-base-dark)}.pdf-approve-btn-walls{border-color:color-mix(in srgb, var(--color-walls) 55%, var(--color-border-strong));color:var(--color-walls-dark)}.pdf-approve-btn-lid{border-color:color-mix(in srgb, var(--color-lid) 55%, var(--color-border-strong));color:var(--color-lid-dark)}.pdf-approve-btn-additional{border-color:color-mix(in srgb, var(--color-additional) 55%, var(--color-border-strong));color:var(--color-additional-dark)}.pdf-cutlist-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:16px;display:flex}.pdf-add-item{padding-left:0}.pdf-empty-note{color:var(--color-text-muted);margin-top:8px;font-size:14px}.pdf-warning-list{flex-direction:column;margin-top:6px;display:flex}.pdf-warning-card{border-bottom:1px solid var(--color-divider);padding:12px 2px;transition:opacity .2s}.pdf-warning-card:last-child{border-bottom:none}.pdf-warning-row{align-items:flex-start;gap:10px;display:flex}.pdf-warning-icon{color:var(--color-lid-dark);flex-shrink:0;font-size:15px;line-height:1.3}.pdf-warning-content{min-width:0}.pdf-warning-title{color:var(--color-text);margin:0;font-size:14px;font-weight:700}.pdf-warning-message{color:var(--color-text-muted);margin:2px 0 0;font-size:13px;line-height:1.4}.pdf-warning-values{color:var(--color-text-faint);margin:4px 0 0;font-size:12px}.pdf-warning-actions{align-items:center;gap:16px;margin:6px 0 0 25px;display:flex}.pdf-warning-ack{color:var(--color-text-muted);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.pdf-warning-card-acknowledged{opacity:.6}.pdf-warning-card-acknowledged .pdf-warning-icon{color:var(--color-walls-dark)}.pdf-continue-bar{padding:14px 16px calc(14px + env(safe-area-inset-bottom));background:var(--color-surface);border-top:1px solid var(--color-border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-md);flex-direction:column;align-items:center;gap:8px;margin-top:20px;display:flex;position:sticky;bottom:0}.pdf-continue-hint{color:var(--color-error);font-size:13px;font-weight:600}.pdf-continue-bar .btn-main-action{width:100%;max-width:360px}.pdf-continue-secondary{gap:16px;display:flex}.quick-calc-embed-shell{background:var(--color-bg);flex-direction:column;display:flex;position:fixed;inset:0}.quick-calc-embed-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;display:flex}.quick-calc-embed-back{color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:14px;font-weight:600}.quick-calc-embed-back:hover{color:var(--color-base)}.quick-calc-embed-title{color:var(--color-text);font-size:15px;font-weight:700}.quick-calc-embed-spacer{min-width:52px}.quick-calc-embed-frame{border:none;flex:1;width:100%}.admin-access-main{max-width:560px}.admin-header{margin-bottom:16px}.admin-section-heading{margin:0 0 12px;font-size:15px;font-weight:700}.admin-hint{color:var(--color-text-muted);margin-top:12px;font-size:13px;line-height:1.5}.admin-message{border-radius:var(--radius-lg);margin-bottom:16px;padding:10px 14px;font-size:13px;font-weight:600}.admin-message-error{color:var(--color-error);background:var(--color-error-tint);border:1px solid color-mix(in srgb, var(--color-error) 35%, transparent)}.admin-message-success{color:#15803d;background:#f0fdf4;border:1px solid #15803d4d}.admin-member-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.admin-member-row{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;padding:10px 0;display:flex}.admin-member-row:last-child{border-bottom:none}.admin-member-email{overflow-wrap:anywhere;flex:1;font-size:14px}.admin-member-role{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.admin-confirm-row{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.admin-confirm-text{color:var(--color-error);font-size:13px;font-weight:600}.login-main{justify-content:center;align-items:center;max-width:440px;min-height:100%;display:flex}.login-card{text-align:left;width:100%}.login-card .screen-title{text-align:center;margin-bottom:4px}.login-card .screen-subtitle{text-align:center;margin-bottom:22px}.login-submit{width:100%;margin-top:16px}.login-code-field{letter-spacing:.3em;text-align:center;font-size:22px;font-weight:700}.login-error{color:var(--color-error);margin-top:10px;font-size:13px;font-weight:600}.login-hint{color:var(--color-text-muted);text-align:center;margin-top:18px;font-size:13px;line-height:1.5}.login-secondary-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.login-secondary-actions .btn{min-height:40px;padding:0 12px;font-size:13px}.workspace-main{justify-content:center;align-items:center;max-width:440px;min-height:100%;display:flex}.workspace-card{text-align:center;width:100%}.workspace-list{text-align:left;flex-direction:column;gap:10px;margin:22px 0 0;padding:0;list-style:none;display:flex}.workspace-option{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:52px;color:var(--color-text);cursor:pointer;justify-content:space-between;align-items:center;padding:12px 16px;font-size:15px;font-weight:600;transition:background .15s,border-color .15s;display:flex}.workspace-option:hover{background:var(--color-neutral-tint);border-color:var(--color-base)}.workspace-option:focus-visible{outline:2px solid var(--color-base);outline-offset:2px}.workspace-option-role{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.workspace-sign-out{margin-top:22px}
