@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_af4a3ea-module__2GhXXq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_af4a3ea-module__2GhXXq__variable{--font-body:"Inter", "Inter Fallback"}
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a342834df7752944-s.3hd2l7bm32o7k.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d3fe2f289711ac3f-s.1l2zhvq5eocqf.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/58c4895d0a0ef7cc-s.2vhvl9vrvk-va.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/bfc7db5c00d21bc5-s.173xwsdme27n8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6ab0db14f70d8ed6-s.13hnt-xgp82zk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a343f882a40d2cc9-s.p.1sj6eobyi31rd.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Fallback;src:local(Arial);ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.0%;size-adjust:103.19%}.manrope_aff131f7-module__HX01fq__className{font-family:Manrope,Manrope Fallback;font-style:normal}.manrope_aff131f7-module__HX01fq__variable{--font-display:"Manrope", "Manrope Fallback"}
:root{--color-brand:#dd0f14;--color-brand-hover:#c20d12;--color-brand-soft:#fff8f8;--color-page:#f8fafc;--color-surface:#fff;--color-surface-muted:#f1f5f9;--color-ink:#292a32;--color-text:var(--color-ink);--color-text-secondary:#484950;--color-text-muted:#818183;--color-border:#cbd5e1;--color-success:#008f38;--color-success-soft:#f1ffef;--color-success-border:#cdeec8;--color-danger:#d32e31;--color-danger-strong:#9d1216;--color-danger-border:#f7c9ca;--color-positive-text:#067647;--color-positive-soft:#ecfdf3;--color-negative-text:#b42318;--color-negative-soft:#fef3f2;--color-negative-border:#fda29b;--color-warning-text:#735d19;--color-warning-border:#f2d98f;--color-warning-soft:#fff9e6;--color-file-preview:#ffcd92;--color-admin-accent:#dd0f14;--color-admin-heading:#27352e;--color-admin-body:#3b463f;--color-admin-copy:#66726b;--color-admin-muted:#79837c;--color-admin-label:#6d7a72;--color-admin-empty:#718078;--color-admin-border:#d9d9d2;--color-admin-header-border:#d5d6d0;--color-admin-control-border:#cdd2cd;--color-admin-button-border:#bfc7c1;--color-admin-divider:#ecece7;--color-admin-subtle:#fbfbf8;--color-admin-warning-text:#a34728;--color-admin-warning-border:#e5c766;--color-admin-focus:#f15a2a;--color-admin-highlight:#ffb398;--color-admin-preview-accent:#ff8c64;--color-admin-delete:#9a3219;--color-admin-tab:#41504a;--color-admin-metric:#17211c;--color-admin-metric-detail:#7c8781;--color-admin-table-heading:#f6f7f4;--color-admin-card-border:#e3e4de;--color-admin-active-border:#b9c1bc;--color-admin-summary:#49564f;--color-admin-section-border:#e6e7e2;--color-admin-note-text:#77502b;--color-admin-note-border:#ead9aa;--color-admin-estimate:#f5f6f3;--color-admin-estimate-note:#7b5d47;--color-admin-disclaimer:#65716b;--color-admin-disclaimer-border:#d5d9d5;--color-admin-summary-border:#dce1de;--color-admin-summary-copy:#d1dad5;--color-admin-summary-empty:#cad5cf;--color-admin-summary-rule:#416150;--color-admin-summary-manual:#dbe4df;--color-portal-brand:#d92d20;--color-portal-page:#f5f6f8;--color-portal-text:#202124;--color-portal-muted:#667085;--color-portal-border:#d9dee7;--color-portal-sidebar:#292a2d;--color-portal-sidebar-text:#e4e5e7;--color-portal-sidebar-hover:#37383c;--color-portal-sidebar-active:#44464b;--color-portal-sidebar-muted:#b9bbc1;--color-portal-sidebar-panel:#ffffff0a;--color-portal-caution-text:#b54708;--color-portal-preview:#fbfbfc;--font-fallback-body:Inter, Arial, sans-serif;--font-fallback-display:Manrope, Arial, sans-serif;--font-size-xs:11px;--font-size-sm:12px;--font-size-md:13px;--font-size-base:14px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:24px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--radius-2xl:16px;--radius-pill:999px;--shadow-card:0 4px 6px #00000005;--shadow-control:0 1px 1px #0000000a;--shadow-summary:0 4px 6px #0000000f;--shadow-auth:0 24px 70px #07150e33;--shadow-raised:0 5px 18px #18251e0d;--shadow-portal-card:0 3px 10px #1018280a;--focus-ring-brand:0 0 0 3px #dd0f1414;--layout-quote-max:1280px;--layout-admin-max:1240px;--layout-sidebar-width:232px;--control-height:42px;--control-height-lg:44px;--control-height-submit:58px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{--font-family-body:var(--font-body), var(--font-fallback-body);--font-family-display:var(--font-display), var(--font-fallback-display);background:var(--color-page);color:var(--color-text);font-family:var(--font-family-body);margin:0}.brandmark{object-fit:contain;width:100%;max-width:270px;height:auto;display:block}.portal-account small{font-size:var(--font-size-sm);color:var(--color-page);line-height:15px}.portal-account p{font-size:var(--font-size-base);color:var(--color-page);margin:0;line-height:17px}.portal-account{gap:var(--space-1);margin:var(--space-6) 0;flex-direction:column;display:flex}button,input,select,textarea{font:inherit;color:inherit}.portal-account button{background:var(--color-brand);color:var(--color-surface);border-radius:var(--radius-sm);cursor:pointer;border:0;align-self:flex-start;padding:13px 22px;font-weight:800}.portal-account button:hover{background:var(--color-brand-hover)}.portal-account button:focus-visible{outline:2px solid var(--color-surface);outline-offset:2px}.portal-account button:disabled{opacity:.6;cursor:not-allowed}.sidebar-label{font-size:var(--font-size-sm);color:var(--color-page);margin:var(--space-6) 0 var(--space-2);font-weight:700}.quote-page{background:var(--color-page);min-height:100vh}.quote-header{height:80px;padding:0 max(var(--space-10),calc((100vw - var(--layout-quote-max))/2));background:var(--color-surface);border-bottom:1px solid var(--color-surface-muted);justify-content:space-between;align-items:center;display:flex}.quote-header>img{flex:0 270px;width:min(270px,65vw);max-height:56px}.quote-header p{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0;font-weight:500}.quote-header a{color:inherit;text-underline-offset:2px}.quote-layout{max-width:var(--layout-quote-max);padding:var(--space-12) 0;gap:var(--space-10);grid-template-columns:minmax(0,860px) 380px;align-items:start;margin:0 auto;display:grid}.quote-column{gap:var(--space-6);flex-direction:column;min-width:0;display:flex}.quote-intro{margin-bottom:0}.quote-intro h1{letter-spacing:-.02em;margin:0 0 var(--space-2);font-size:32px;font-weight:800;line-height:39px}.quote-intro p{font-size:var(--font-size-lg);color:var(--color-text-secondary);max-width:850px;margin:0;line-height:19px}.quote-card{background:var(--color-surface);border-radius:var(--radius-2xl);padding:var(--space-8);box-shadow:var(--shadow-card);gap:var(--space-6);flex-direction:column;min-width:0;display:flex}.quote-section-header{gap:var(--space-1);flex-direction:column;display:flex}.quote-section-header>div{align-items:center;gap:var(--space-3);display:flex}.quote-section-header h2{font-size:var(--font-size-xl);min-width:0;margin:0;font-weight:700;line-height:23px}.quote-step{min-width:27px;height:23px;padding:var(--space-1) 10px;background:var(--color-brand);color:var(--color-surface);border-radius:var(--radius-sm);font-size:var(--font-size-sm);text-align:center;font-weight:700;line-height:15px}.quote-section-header p{font-size:var(--font-size-base);color:var(--color-text-muted);margin:0;line-height:17px}.quote-notice{border:1px solid var(--color-warning-border);background:var(--color-surface)9000000;color:var(--color-warning-text);padding:var(--space-3) 14px;border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:1.45}.quote-dropzone{border:2px dashed var(--color-brand);border-radius:var(--radius-xl);background:var(--color-page);width:100%;min-height:204px;padding:var(--space-10);justify-content:center;align-items:center;gap:var(--space-3);cursor:pointer;flex-direction:column;display:flex}.quote-dropzone:hover,.quote-dropzone:focus-visible{background:var(--color-brand-soft);outline:none}.upload-icon-wrap{background:var(--color-brand-soft);border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.figma-icon{flex:none;display:block}.quote-dropzone>span:nth-child(2){align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.quote-dropzone strong{font-size:var(--font-size-lg);line-height:19px}.quote-dropzone small{font-size:var(--font-size-md);color:var(--color-text-muted);font-weight:400;line-height:16px}.quote-dropzone em{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;font-style:normal;font-weight:600;line-height:13px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.uploaded-list{gap:var(--space-3);flex-direction:column;display:flex}.uploaded-list h3{font-size:var(--font-size-sm);color:var(--color-text-muted);text-transform:uppercase;margin:0;font-weight:700;line-height:15px}.uploaded-file{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);align-items:center;gap:var(--space-4);text-align:left;width:100%;min-height:68px;padding:14px;display:flex}.uploaded-file.active{border-color:var(--color-brand);box-shadow:0 0 0 1px var(--color-brand)}.file-select{align-items:center;gap:var(--space-4);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;min-width:0;padding:0;display:flex}.file-icon{border-radius:var(--radius-sm);background:var(--color-brand-soft);flex:none;place-items:center;width:40px;height:40px;display:grid}.file-icon.image{background:var(--color-file-preview)}.uploaded-details{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.uploaded-details strong{font-size:var(--font-size-base);white-space:nowrap;text-overflow:ellipsis;font-weight:600;line-height:17px;overflow:hidden}.uploaded-details small{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:15px}.ready-badge{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-success-soft);color:var(--color-success);font-size:var(--font-size-xs);font-weight:700;line-height:13px}.trash-button{border-radius:var(--radius-xs);cursor:pointer;background:0 0;border:0;place-items:center;width:24px;height:24px;padding:2px;display:grid}.trash-button:hover{background:var(--color-brand-soft)}.quote-field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.quote-field>span,.field-label{font-size:var(--font-size-md);color:var(--color-text-secondary);font-weight:600;line-height:16px}.quote-field input,.quote-field select,.instructions{width:100%;min-height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-3);font-size:var(--font-size-base);outline:none;line-height:17px}.quote-field input:focus,.quote-field select:focus,.instructions:focus{border-color:var(--color-brand);box-shadow:var(--focus-ring-brand)}.quote-field.full{width:100%}.chip-row button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:37px;padding:9px var(--space-4);font-size:var(--font-size-base);cursor:pointer;font-weight:500;line-height:17px}.chip-row button.selected{border:2px solid var(--color-brand);background:var(--color-brand-soft);color:var(--color-brand);padding:var(--space-2) 15px;font-weight:600}.chip-row button:disabled,.segmented button:disabled,.quantity-stepper button:disabled{opacity:.45;cursor:not-allowed}.quantity-row{align-items:center;gap:var(--space-6);display:flex}.quantity-stepper{align-items:center;gap:var(--space-1);padding:var(--space-1);background:var(--color-surface-muted);border-radius:var(--radius-xl);flex:none;display:flex}.quantity-stepper button{width:44px;height:var(--control-height-lg);border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);cursor:pointer;place-items:center;padding:0;display:grid}.quantity-stepper input{width:80px;height:var(--control-height-lg);text-align:center;appearance:textfield;background:0 0;border:0;font-size:20px;font-weight:700}.quantity-stepper input::-webkit-inner-spin-button{appearance:none}.quantity-chips{gap:var(--space-2)}.quantity-chips button{padding-left:var(--space-4);padding-right:var(--space-4)}.select-shell{border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:center;height:46px;padding-left:14px;display:flex}.select-shell select{padding:0 14px 0 var(--space-3);height:var(--control-height-lg);background:0 0;border:0;min-height:0}.three-options{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.three-options>div{gap:var(--space-2);flex-direction:column;display:flex}.segmented{padding:var(--space-1);background:var(--color-surface-muted);border-radius:var(--radius-md);min-height:var(--control-height-lg);display:flex}.segmented button{border-radius:var(--radius-sm);padding:10px var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-md);cursor:pointer;background:0 0;border:0;flex:1;font-weight:500;line-height:16px}.segmented button.active{background:var(--color-surface);color:var(--color-brand);box-shadow:var(--shadow-control);font-weight:600}.finishing{gap:var(--space-3);flex-direction:column;display:flex}.finish-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.finish-option{align-items:flex-start;gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.finish-selector{width:fit-content;max-width:100%;min-height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:11px var(--space-4);align-items:center;gap:var(--space-3);color:var(--color-text-secondary);cursor:pointer;display:inline-flex}.finish-selector strong{font-size:var(--font-size-base);overflow-wrap:anywhere;line-height:17px}.finish-selector.checked{border-color:var(--color-brand);background:var(--color-brand-soft);color:var(--color-text)}.finish-selector:focus-within{outline:2px solid var(--color-brand);outline-offset:2px}.finish-selector input{width:18px;height:18px;accent-color:var(--color-brand);flex:none;margin:0}.finish-information{border:1px solid var(--color-warning-border);border-radius:var(--radius-md);background:var(--color-warning-soft);width:100%;color:var(--color-warning-text);padding:var(--space-3) var(--space-4);white-space:pre-line;font-size:var(--font-size-sm);margin:0;line-height:1.45}.finish-guidance{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);margin:0}.finish-guidance img{object-fit:contain;border-radius:var(--radius-sm);width:100%;height:auto;max-height:260px;display:block}.radio-cards{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.radio-cards button{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-lg);min-height:68px;padding:var(--space-4);align-items:center;gap:var(--space-4);text-align:left;cursor:pointer;display:flex}.radio-cards button.active{border:2px solid var(--color-brand);background:var(--color-brand-soft);padding:15px}.radio-dot{border:2px solid var(--color-border);border-radius:50%;flex:none;width:20px;height:20px;display:block;position:relative}.radio-cards .active .radio-dot{border-color:var(--color-brand)}.radio-cards .active .radio-dot:after{content:"";background:var(--color-brand);border-radius:50%;position:absolute;inset:3px}.radio-cards button>span:nth-child(2){flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.radio-cards strong{font-size:15px;font-weight:600;line-height:18px}.radio-cards small{font-size:var(--font-size-md);color:var(--color-text-muted);line-height:16px}.radio-cards em{font-size:var(--font-size-sm);color:var(--color-brand);white-space:nowrap;font-style:normal;font-weight:600;line-height:16px}.fulfillment-label,.contact-label{margin-bottom:-12px}.segmented.wide{width:100%}.segmented.wide button{min-height:41px;font-size:var(--font-size-base)}.customer-grid{gap:var(--space-6) var(--space-4);grid-template-columns:1fr 1fr;display:grid}.instructions{resize:vertical;min-height:120px;padding:14px}.submit-card{gap:var(--space-6)}.quote-submit{width:100%;height:var(--control-height-submit);border-radius:var(--radius-lg);background:var(--color-brand);color:var(--color-surface);font-size:var(--font-size-xl);cursor:pointer;border:0;font-weight:700;line-height:22px}.quote-submit:hover{background:var(--color-brand-hover)}.quote-submit:disabled{opacity:.48;cursor:not-allowed}.secure-copy{justify-content:center;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-sm);margin:-12px 0 0;line-height:16px;display:flex}.timeline-alert{border-top:1px solid var(--color-surface-muted);padding:var(--space-6) var(--space-4) 0;gap:var(--space-3);color:var(--color-brand);font-size:var(--font-size-sm);align-items:center;line-height:16px;display:flex}.quote-error,.quote-success{border-radius:var(--radius-md);padding:var(--space-3) 14px;font-size:var(--font-size-md);line-height:1.45}.quote-error{background:var(--color-surface)1f1;color:var(--color-danger-strong);border:1px solid var(--color-danger-border)}.quote-success{background:var(--color-success-soft);color:var(--color-success);border:1px solid var(--color-success-border)}.quote-summary{background:var(--color-surface);border-radius:var(--radius-2xl);padding:var(--space-7);box-shadow:var(--shadow-summary);min-width:0;position:sticky;top:24px}.summary-head{border-bottom:1px solid var(--color-surface-muted);justify-content:space-between;align-items:flex-start;height:42px;display:flex}.summary-head h2{font-size:var(--font-size-lg);margin:1px 0 0;font-weight:700;line-height:19px}.summary-head span{background:var(--color-brand-soft);color:var(--color-brand);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);font-weight:700;line-height:13px}.summary-specs{border-bottom:1px solid var(--color-surface-muted);flex-direction:column;gap:14px;padding:19px 0;display:flex}.summary-specs p{font-size:var(--font-size-sm);grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:10px;margin:0;line-height:16px;display:grid}.summary-specs span{color:var(--color-text-muted)}.summary-specs strong{text-align:right;color:var(--color-text-secondary);overflow-wrap:anywhere;font-weight:600}.summary-price{border-radius:var(--radius-lg);background:var(--color-brand-soft);padding:var(--space-4);margin-top:19px}.summary-price>div{font-size:var(--font-size-sm);justify-content:space-between;align-items:center;font-weight:600;line-height:16px;display:flex}.summary-price>.summary-adjustment{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid color-mix(in srgb, var(--color-brand) 20%, transparent);font-weight:500}.summary-price p{color:var(--color-brand);margin:var(--space-2) 0;align-items:baseline;display:flex}.summary-price sup{font-size:var(--font-size-2xl);font-weight:700;top:0}.summary-price p strong{font-size:44px;font-weight:800;line-height:53px}.summary-price p b{font-size:var(--font-size-base);margin-left:var(--space-1)}.summary-price p.manual-total strong{font-size:28px;line-height:42px}.summary-price small{color:var(--color-brand);font-size:var(--font-size-xs);line-height:13px;display:block}.summary-help{padding-top:var(--space-5);gap:var(--space-3);flex-direction:column;display:flex}.summary-help p{font-size:var(--font-size-md);color:var(--color-text-secondary);align-items:center;gap:10px;margin:0;line-height:16px;display:flex}.summary-help a{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:var(--space-1);text-underline-offset:3px}.auth-shell{min-height:100vh;padding:var(--space-6);background:var(--color-ink);place-items:center;display:grid}.auth-card{background:var(--color-surface);border-radius:var(--radius-xl);width:min(440px,100%);box-shadow:var(--shadow-auth);padding:38px}.auth-card .wordmark{color:var(--color-brand);font-weight:800}.auth-card h1{margin:35px 0 var(--space-2);font-size:34px}.auth-card>p{color:var(--color-text-muted);margin-bottom:var(--space-7)}.auth-card label{font-size:var(--font-size-sm);margin:var(--space-4) 0;flex-direction:column;gap:7px;font-weight:700;display:flex}.auth-card input{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-3)}.auth-card .submit{background:var(--color-brand);width:100%;color:var(--color-surface);border-radius:var(--radius-sm);cursor:pointer;border:0;padding:15px 18px;font-weight:800}.auth-link{text-align:center;margin-top:var(--space-5);color:var(--color-text-secondary);font-size:var(--font-size-md);display:block}.admin-head{border-bottom:1px solid var(--color-admin-header-border);padding-bottom:var(--space-7);justify-content:space-between;align-items:flex-start;display:flex}.admin-head h1{letter-spacing:-.04em;margin:35px 0 5px;font-size:42px}.admin-head p{color:var(--color-admin-copy)}.admin-head>a{color:var(--color-text)}.admin-warning{padding:var(--space-4);margin-bottom:var(--space-6);background:var(--color-surface)1c8;border:1px solid var(--color-admin-warning-border);border-radius:var(--radius-md)}.preview{background:var(--color-ink);color:var(--color-surface);border-radius:var(--radius-lg);grid-template-columns:1fr auto auto;align-items:center;gap:25px;padding:22px;display:grid}.preview h2{margin:5px 0}.preview label{font-size:var(--font-size-sm);flex-direction:column;gap:5px;display:flex}.preview input{padding:var(--space-2);border-radius:var(--radius-xs);border:0;width:140px}.preview>strong{color:var(--color-admin-preview-accent);font-size:20px}.admin-message{z-index:2;background:var(--color-surface);border:1px solid var(--color-border);border-radius:7px;margin:18px 0;padding:10px 14px;position:sticky;top:10px}.config-section{margin-top:36px}.config-title{justify-content:space-between;align-items:center;display:flex}.config-title h2{font-size:var(--font-size-2xl)}.config-title button,.row-actions button{border:1px solid var(--color-admin-button-border);background:var(--color-surface);padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:5px}.config-rows{gap:var(--space-2);flex-direction:column;display:flex}.config-row{gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-admin-border);border-radius:7px;grid-template-columns:repeat(3,minmax(130px,1fr)) auto auto;align-items:end;padding:14px;display:grid}.config-row label{font-size:var(--font-size-xs);flex-direction:column;gap:5px;font-weight:700;display:flex}.config-row input,.config-row select{border:1px solid var(--color-admin-control-border);border-radius:var(--radius-xs);min-width:0;padding:9px}.config-row .check{flex-direction:row;align-items:center;padding-bottom:10px}.config-row .check input{width:auto}.row-actions{gap:5px;display:flex}.row-actions .save{background:var(--color-ink);color:var(--color-surface);border-color:var(--color-ink)}.row-actions .delete{color:var(--color-admin-delete)}.empty{color:var(--color-admin-empty);font-style:italic}@media (max-width:1340px){.quote-header{padding-left:var(--space-8);padding-right:var(--space-8)}.quote-layout{margin:0 var(--space-8);grid-template-columns:minmax(0,1fr) 340px}}@media (max-width:980px){.quote-layout{grid-template-columns:1fr}.quote-summary{position:static}.quote-header{padding-left:var(--space-6);padding-right:var(--space-6)}.three-options{grid-template-columns:1fr}.quote-summary{order:-1}.quote-column{display:contents}.quote-intro{order:-2}.upload-card{order:0}.quote-card{order:1}.submit-card{order:2}}@media (max-width:680px){.quote-header{height:70px}.quote-header>img{width:202px;height:42px}.quote-header p{font-size:var(--font-size-sm)}.quote-layout{margin:0 var(--space-4);padding:var(--space-7) 0;gap:var(--space-5)}.quote-column{gap:var(--space-4)}.quote-intro h1{font-size:27px;line-height:33px}.quote-intro p{font-size:var(--font-size-base);line-height:20px}.quote-card{border-radius:var(--radius-xl);gap:var(--space-5);padding:22px 18px}.quote-dropzone{min-height:180px;padding:var(--space-7) var(--space-3)}.quote-dropzone strong,.quote-dropzone em{text-align:center}.quantity-row{flex-direction:column;align-items:flex-start}.quantity-chips{width:100%}.three-options{grid-template-columns:1fr}.finish-grid{grid-template-columns:minmax(0,1fr)}.radio-cards{grid-template-columns:1fr}.customer-grid{grid-template-columns:1fr;gap:18px}.segmented.wide{overflow-x:auto}.segmented.wide button{min-width:120px}.uploaded-file{padding:var(--space-3);gap:10px}.ready-badge{display:none}.summary-price p strong{font-size:38px}.secure-copy{text-align:center}.admin-head{gap:var(--space-5);flex-direction:column}.config-row,.preview{grid-template-columns:1fr}}@media (max-width:440px){.quote-header{padding:0 var(--space-4)}.quote-header>img{width:169px;height:35px}.quote-header p{font-size:0}.quote-header p a{font-size:var(--font-size-sm)}.quote-section-header p{line-height:20px}.chip-row{gap:var(--space-2)}.chip-row button{font-size:var(--font-size-sm);padding-left:11px;padding-right:11px}.quote-summary{padding:22px 18px}.uploaded-details small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.radio-cards em{display:none}}.admin-shell{max-width:var(--layout-admin-max);padding:var(--space-10) clamp(var(--space-4),4vw,var(--space-8)) 90px;margin:0 auto}.admin-head{justify-content:space-between;align-items:flex-start;gap:var(--space-6);border-bottom:1px solid var(--color-admin-header-border);padding-bottom:var(--space-6);flex-wrap:wrap;display:flex}.admin-head h1{font:800 clamp(28px,4vw,40px) var(--font-family-display);letter-spacing:-.04em;margin:18px 0 var(--space-1)}.admin-head p{color:var(--color-admin-copy);margin:0}.admin-head-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.admin-head-actions a{color:var(--color-admin-accent);font-size:var(--font-size-md)}.admin-head-actions button{border:1px solid var(--color-admin-accent);background:var(--color-admin-accent);color:var(--color-surface);border-radius:var(--radius-sm);padding:10px var(--space-4);cursor:pointer;font-weight:700}.admin-head-actions button:disabled{opacity:.6;cursor:not-allowed}.admin-tabs{gap:var(--space-2);margin:26px 0 var(--space-2);flex-wrap:wrap;display:flex}.admin-tabs button{border:1px solid var(--color-admin-control-border);background:var(--color-surface);border-radius:var(--radius-pill);padding:10px var(--space-5);font-weight:700;font-size:var(--font-size-base);cursor:pointer;color:var(--color-admin-tab)}.admin-tabs button.active{background:var(--color-admin-accent);border-color:var(--color-admin-accent);color:var(--color-surface)}.admin-panel{margin:var(--space-6)}.admin-loading{color:var(--color-admin-copy);padding:var(--space-7) 0}.metric-grid{margin-bottom:var(--space-7);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;display:grid}.metric-grid article{background:var(--color-surface);border:1px solid var(--color-admin-border);border-radius:var(--radius-lg);flex-direction:column;gap:6px;padding:18px;display:flex}.metric-grid span{font-size:var(--font-size-xs);letter-spacing:.14em;color:var(--color-admin-label);text-transform:uppercase;font-weight:800}.metric-grid strong{font:750 30px var(--font-family-display);color:var(--color-admin-metric)}.metric-grid strong b{font-size:var(--font-size-lg);color:var(--color-admin-metric-detail);font-weight:600}.metric-grid small{color:var(--color-admin-muted);font-size:var(--font-size-sm)}.metric-grid article.warn{border-color:var(--color-admin-warning-border);background:var(--color-surface)800}.request-toolbar{flex-wrap:wrap;align-items:flex-end;gap:14px;margin-bottom:18px;display:flex}.request-toolbar label{font-size:var(--font-size-sm);flex-direction:column;flex:220px;gap:6px;font-weight:700;display:flex}.request-toolbar input,.request-toolbar select{border:1px solid var(--color-admin-control-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);background:var(--color-surface);padding:10px}.request-toolbar button{border:1px solid var(--color-admin-button-border);background:var(--color-surface);border-radius:var(--radius-sm);cursor:pointer;padding:11px 18px;font-weight:700}.request-table{background:var(--color-surface);border:1px solid var(--color-admin-border);border-radius:var(--radius-lg);overflow:hidden}.request-row{border-bottom:1px solid var(--color-admin-divider);font-size:var(--font-size-base);grid-template-columns:180px minmax(0,1fr) 160px 140px 90px;align-items:center;gap:14px;padding:14px 18px;display:grid}.request-row.head{background:var(--color-admin-table-heading);font-size:var(--font-size-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-admin-label);font-weight:800}.request-row span{flex-direction:column;gap:2px;min-width:0;display:flex}.request-row strong{font-size:var(--font-size-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.request-row small{color:var(--color-admin-muted);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.request-row select{border:1px solid var(--color-admin-control-border);background:var(--color-surface);text-transform:capitalize;border-radius:5px;padding:7px}.request-row button{border:1px solid var(--color-admin-accent);background:var(--color-surface);color:var(--color-admin-accent);padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:5px;font-weight:700}.request-count{padding:var(--space-3) 18px;color:var(--color-admin-muted);font-size:var(--font-size-sm);margin:0}.request-detail{margin-top:var(--space-7);background:var(--color-surface);border:1px solid var(--color-admin-border);border-radius:var(--radius-lg);padding:var(--space-6)}.request-detail header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);border-bottom:1px solid var(--color-admin-divider);padding-bottom:var(--space-4);margin-bottom:18px;display:flex}.request-detail h2{font:750 26px var(--font-family-display);margin:6px 0 var(--space-1)}.request-detail header p{color:var(--color-admin-muted);font-size:var(--font-size-sm);word-break:break-all;margin:0}.request-detail header button{border:1px solid var(--color-admin-button-border);background:var(--color-surface);border-radius:var(--radius-sm);padding:9px var(--space-4);cursor:pointer;font-weight:700}.request-detail h3{font:750 18px var(--font-family-display);margin:26px 0 var(--space-3)}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.detail-grid p{flex-direction:column;gap:3px;margin:0;display:flex}.detail-grid span{font-size:var(--font-size-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-admin-label);font-weight:800}.detail-grid strong{font-size:var(--font-size-base);font-weight:600}.detail-job{border:1px solid var(--color-admin-card-border);border-radius:var(--radius-md);background:var(--color-admin-subtle);margin-bottom:14px;padding:18px}.detail-job header{gap:var(--space-1);border:0;flex-direction:column;align-items:flex-start;margin-bottom:14px;padding:0;display:flex}.detail-job header span{color:var(--color-admin-muted);font-size:var(--font-size-sm)}.detail-notes{font-size:var(--font-size-md);color:var(--color-admin-body);margin:14px 0 0;line-height:1.55}.detail-notes span{font-size:var(--font-size-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-admin-label);margin-bottom:var(--space-1);font-weight:800;display:block}.detail-download{color:var(--color-admin-accent);font-weight:700;font-size:var(--font-size-md);margin-top:14px;display:inline-block}.detail-warning{color:var(--color-admin-warning-text);font-size:var(--font-size-md);margin-top:14px}.delivery-list{font-size:var(--font-size-md);color:var(--color-admin-body);margin:0;padding:0;list-style:none}.delivery-list li{padding:var(--space-2) 0;border-bottom:1px solid var(--color-admin-divider);text-transform:capitalize}@media (max-width:900px){.request-row{grid-template-columns:1fr 1fr;gap:10px}.request-row.head{display:none}.request-row span:first-child{font-size:var(--font-size-sm);color:var(--color-admin-muted);order:3}}.settings-form{background:var(--color-surface);border:1px solid var(--color-admin-border);border-radius:var(--radius-lg);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;padding:22px;display:grid}.settings-form label{font-size:var(--font-size-sm);flex-direction:column;gap:6px;font-weight:700;display:flex}.settings-form label.wide{grid-column:1/-1}.settings-form input,.settings-form textarea{border:1px solid var(--color-admin-control-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);background:var(--color-surface);padding:11px;font-weight:400}.settings-form textarea{resize:vertical;line-height:1.5}.settings-form small{color:var(--color-admin-muted);font-weight:400}.settings-form .save{background:var(--color-admin-accent);color:var(--color-surface);border-radius:var(--radius-sm);cursor:pointer;border:0;grid-column:1/-1;justify-self:start;padding:13px 22px;font-weight:800}.settings-form .save:hover{background:var(--color-brand-hover);color:var(--color-surface);border-radius:var(--radius-sm);cursor:pointer;border:0;grid-column:1/-1;justify-self:start;padding:13px 22px;font-weight:800}.settings-form .save:disabled{opacity:.6;cursor:not-allowed}.upload-meter{font-size:var(--font-size-sm);color:var(--color-admin-copy);grid-template-columns:1fr auto;gap:7px;margin-top:14px;display:grid}.upload-meter strong{color:var(--color-admin-heading)}.upload-meter progress{width:100%;height:7px;accent-color:var(--color-admin-focus);grid-column:1/-1}.file-config-list{margin-top:var(--space-6)}.file-config-list>h3{font-size:var(--font-size-md);margin:0 0 10px}.file-config{border:1px solid var(--color-admin-border);background:var(--color-surface);margin-bottom:var(--space-3);border-radius:9px;overflow:hidden}.file-config.expanded{border-color:var(--color-admin-active-border);box-shadow:var(--shadow-raised)}.file-config-head{background:var(--color-admin-subtle);grid-template-columns:1fr auto;align-items:stretch;display:grid}.file-config-toggle{gap:var(--space-3);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-width:0;padding:14px;display:grid}.file-config-toggle:focus-visible{outline:2px solid var(--color-admin-focus);outline-offset:-2px}.file-config-head .trash-button{align-self:center;margin-right:10px}.file-summary{color:var(--color-admin-summary);font-size:var(--font-size-xs);margin-top:var(--space-1);white-space:normal;display:block}.file-chevron{color:var(--color-admin-empty);font-size:20px;transition:transform .18s;transform:rotate(0)}.file-config.expanded .file-chevron{transform:rotate(180deg)}.file-config-body{border-top:1px solid var(--color-admin-section-border);padding:var(--space-5)}.file-subsection{border-bottom:1px solid var(--color-admin-divider);margin:0 0 22px;padding:0 0 22px}.file-subsection:last-of-type{margin-bottom:0}.file-subsection h3{font:750 18px var(--font-family-display);color:var(--color-admin-heading);margin:0 0 14px}.custom-dimensions{gap:var(--space-3);grid-template-columns:1fr 1fr minmax(120px,.65fr);margin-top:15px;display:grid}.business-card-note,.selection-prompt{font-size:var(--font-size-sm);color:var(--color-admin-note-text);background:var(--color-surface)800000;border:1px solid var(--color-admin-note-border);border-radius:var(--radius-sm);padding:10px var(--space-3);margin:var(--space-3) 0 0}.minimum-copy{color:var(--color-admin-muted);margin-top:var(--space-2);display:block}.file-estimate{background:var(--color-admin-estimate);padding:14px var(--space-4);border-radius:7px;grid-template-columns:1fr auto;align-items:center;gap:3px;display:grid}.file-estimate strong{font:750 18px var(--font-family-display)}.file-estimate small{color:var(--color-admin-estimate-note);grid-column:1/-1}.file-estimate.manual strong{color:var(--color-admin-warning-text)}.fulfillment-disclaimer{font-size:var(--font-size-md);color:var(--color-admin-disclaimer);margin:18px var(--space-2) var(--space-7);border-left:3px solid var(--color-admin-disclaimer-border);padding-left:14px;line-height:1.6}.summary-file-list{padding:6px 0}.summary-file-list article{border-bottom:1px solid var(--color-admin-summary-border);padding:13px 0}.summary-file-list article>strong{font-size:var(--font-size-md);overflow-wrap:anywhere;display:block}.summary-file-list article p{font-size:var(--font-size-xs);color:var(--color-admin-summary-copy);margin:var(--space-1) 0}.summary-file-list article b{color:var(--color-admin-highlight);font-size:var(--font-size-sm);margin-top:5px;display:block}.empty-summary{color:var(--color-admin-summary-empty);font-size:var(--font-size-md)}.manual-items{border-top:1px solid var(--color-admin-summary-rule);padding-top:var(--space-3);gap:var(--space-1);font-size:var(--font-size-xs);color:var(--color-admin-summary-manual);flex-direction:column;margin-top:10px;display:flex}.manual-items strong{color:var(--color-admin-highlight)}.manual-items span{overflow-wrap:anywhere}@media (max-width:760px){.file-config-body{padding:var(--space-4)}.custom-dimensions{grid-template-columns:1fr 1fr}.custom-dimensions label:last-child{grid-column:1/-1}.file-config-toggle{padding:var(--space-3) var(--space-2)}.file-config-head .trash-button{margin-right:var(--space-1)}.file-summary{line-height:1.45}.size-chips{grid-template-columns:1fr;display:grid}.size-chips button{width:100%}}.portal{grid-template-columns:var(--layout-sidebar-width) minmax(0,1fr);background:var(--color-portal-page);min-height:100vh;display:grid}.portal-sidebar{background:var(--color-portal-sidebar);padding:30px var(--space-5);gap:var(--space-7);flex-direction:column;display:flex}.portal-brand{flex-direction:column;gap:10px;min-width:0;display:flex}.portal-brand .brandmark{max-width:100%}.portal-brand span{border-radius:var(--radius-md);background:var(--color-portal-brand);width:32px;height:32px;color:var(--color-surface);place-items:center;font-size:15px;font-weight:800;display:grid}.portal-brand p{color:var(--color-surface);font-size:var(--font-size-lg);margin:0}.portal-sidebar nav{flex-direction:column;gap:6px;display:flex}.portal-sidebar nav button{width:100%;padding:11px var(--space-3);border-radius:var(--radius-sm);background:var(--color-portal-sidebar);color:var(--color-portal-sidebar-text);font-size:var(--font-size-md);text-align:left;cursor:pointer;border:0;align-items:center;gap:10px;display:flex}.portal-sidebar nav button:hover{background:var(--color-portal-sidebar-hover)}.portal-sidebar nav button.active{background:var(--color-portal-sidebar-active);color:var(--color-surface)}.portal-sidebar nav button svg{flex:none}.portal-help{background:var(--color-portal-sidebar-panel);border-radius:var(--radius-lg);padding:14px}.portal-help p{color:var(--color-surface);font-size:var(--font-size-sm);margin:0 0 6px}.portal-help small{color:var(--color-portal-sidebar-muted);font-size:var(--font-size-xs)}.portal-workspace{flex-direction:column;min-width:0;min-height:100vh;display:flex}.portal-content{padding:var(--space-8);gap:var(--space-6);flex-direction:column;flex:1;min-width:0;display:flex}.portal-heading h1{color:var(--color-portal-text);letter-spacing:-.01em;margin:0 0 6px;font-size:26px;font-weight:600}.portal-heading p{color:var(--color-portal-muted);font-size:var(--font-size-md);margin:0}.portal-saved{background:var(--color-positive-soft);color:var(--color-positive-text);border-radius:var(--radius-md);padding:var(--space-3)}.portal-saved p{font-size:var(--font-size-sm);margin:0}.portal-saved small{font-size:var(--font-size-xs)}.portal-error{background:var(--color-negative-soft);color:var(--color-negative-text);border:1px solid var(--color-negative-border);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--font-size-md)}.portal-error ul{margin:var(--space-2) 0 0;padding-left:18px}.portal-loading,.portal-empty{color:var(--color-portal-muted);font-size:var(--font-size-md);margin:0}.portal-card{background:var(--color-surface);border:1px solid var(--color-portal-border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-portal-card);gap:var(--space-4);min-width:0;margin:var(--space-3) 0;flex-direction:column;display:flex}.portal-card+.portal-card{margin-top:0}.portal-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.portal-card-head p{color:var(--color-portal-muted);font-size:var(--font-size-md);margin:0}.portal-subnav{margin:0 0 var(--space-4);font-size:var(--font-size-md);color:var(--color-portal-muted);gap:var(--space-1);flex-wrap:wrap;display:flex}.portal-subhead{font-size:var(--font-size-xl);color:var(--color-portal-text);margin:0;font-weight:600}.portal-legend p{color:var(--color-portal-muted);font-size:var(--font-size-sm);margin:0 0 6px}.portal-note{color:var(--color-portal-muted);font-size:var(--font-size-sm);margin:0}.portal-note.tint{background:var(--color-negative-soft);color:var(--color-negative-text);border-radius:var(--radius-md);padding:var(--space-3)}.portal-policy{background:var(--color-surface)aeb;border-radius:var(--radius-md);padding:14px}.portal-policy strong{color:var(--color-portal-caution-text);font-size:var(--font-size-md);margin-bottom:var(--space-1);display:block}.portal-policy p{color:var(--color-portal-caution-text);font-size:var(--font-size-sm);margin:0}.portal-table{border-collapse:collapse;border:1px solid var(--color-portal-border);border-radius:var(--radius-sm);width:100%;font-size:var(--font-size-sm);overflow:hidden}.portal-table th{background:var(--color-portal-page);color:var(--color-portal-muted);font-size:var(--font-size-xs);text-transform:uppercase;text-align:left;padding:10px;font-weight:700}.portal-table td{border-top:1px solid var(--color-portal-border);color:var(--color-portal-text);vertical-align:middle;padding:10px}.portal-table input,.portal-table select{border:1px solid var(--color-portal-border);border-radius:var(--radius-sm);width:100%;min-width:80px;padding:7px var(--space-2);font-size:var(--font-size-sm);background:var(--color-surface)}.portal-table input:focus,.portal-table select:focus,.portal-fields input:focus,.portal-fields select:focus{outline:2px solid var(--color-portal-brand);outline-offset:-1px}.portal-row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.portal-row-actions .link{color:var(--color-portal-brand);font-size:var(--font-size-sm);cursor:pointer;text-underline-offset:2px;white-space:nowrap;background:0 0;border:0;padding:0;text-decoration:underline}.portal-row-actions .link.danger{color:var(--color-negative-text)}.portal-check{font-size:var(--font-size-sm);color:var(--color-portal-text);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.portal-check input{width:auto;min-width:0}.state{font-size:var(--font-size-xs);font-weight:600}.state.on{color:var(--color-positive-text)}.state.off{color:var(--color-portal-muted)}.tag{margin-left:var(--space-2);border-radius:var(--radius-pill);background:var(--color-portal-page);color:var(--color-portal-muted);padding:2px 6px;font-size:10px;font-weight:700;display:inline-block}.portal-fields{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.portal-fields label,.portal-field-wide{font-size:var(--font-size-md);color:var(--color-portal-text);flex-direction:column;gap:6px;display:flex}.portal-fields input,.portal-fields select,.portal-field-wide input{border:1px solid var(--color-portal-border);border-radius:var(--radius-sm);font-size:var(--font-size-md);background:var(--color-surface);padding:9px 10px}.portal-fields small{color:var(--color-portal-muted);font-size:var(--font-size-xs)}.portal-fields label.wide{flex-direction:row;grid-column:1/-1;align-items:center}.portal-inline-add{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.portal-inline-add select{border:1px solid var(--color-portal-border);border-radius:var(--radius-sm);font-size:var(--font-size-md);background:var(--color-surface);padding:9px 10px}.portal-inline-add button,.portal-actions button{border:1px solid var(--color-portal-border);background:var(--color-surface);color:var(--color-portal-text);border-radius:var(--radius-sm);padding:9px var(--space-4);font-size:var(--font-size-md);cursor:pointer}.portal-inline-add button:hover:not(:disabled),.portal-actions button:hover:not(:disabled){border-color:var(--color-portal-brand);background:var(--color-portal-page)}button.primary{background:var(--color-portal-brand);border:1px solid var(--color-portal-brand);color:var(--color-surface);border-radius:var(--radius-sm);padding:10px var(--space-4);font-size:var(--font-size-md);cursor:pointer}button.primary:hover:not(:disabled){background:var(--color-brand-hover);border-color:var(--color-brand-hover)}button.primary:focus-visible,.portal-actions button:focus-visible,.portal-inline-add button:focus-visible,.size-option:focus-visible,.portal-row-actions .link:focus-visible{outline:2px solid var(--color-portal-brand);outline-offset:2px}button.primary:disabled,.portal-actions button:disabled,.portal-inline-add button:disabled{opacity:.5;cursor:not-allowed}.size-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(230px,1fr));display:grid}.size-option{border:1px solid var(--color-portal-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-3);cursor:pointer;text-align:left;flex-direction:column;grid-column:auto;justify-self:auto;align-items:flex-start;gap:2px;display:flex}.size-option:hover{border:1px solid var(--color-brand-hover);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-3);cursor:pointer;text-align:left;flex-direction:column;grid-column:auto;justify-self:auto;align-items:flex-start;gap:2px;display:flex}.size-option.active{border:1px solid var(--color-portal-brand);background:var(--color-negative-soft)}.size-option strong{font-size:var(--font-size-md);color:var(--color-portal-text)}.size-option.active strong{color:var(--color-portal-brand)}.size-option small{font-size:var(--font-size-xs);color:var(--color-portal-muted)}.size-option em{font-size:var(--font-size-xs);color:var(--color-portal-brand);margin-top:6px;font-style:normal}.chip-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);font-size:var(--font-size-xs);display:inline-block}.chip.ok{background:var(--color-positive-soft);color:var(--color-positive-text)}.chip.warn{background:var(--color-negative-soft);color:var(--color-negative-text)}.suffix-field{align-items:center;gap:6px;display:flex}.suffix-field b{font-size:var(--font-size-xs);color:var(--color-portal-muted);white-space:nowrap;font-weight:600}.size-picker summary{cursor:pointer;font-size:var(--font-size-sm);color:var(--color-portal-text)}.size-picker>div{border:1px solid var(--color-portal-border);border-radius:var(--radius-sm);background:var(--color-surface);flex-direction:column;gap:6px;margin-top:6px;padding:10px;display:flex}.size-picker label{font-size:var(--font-size-sm);white-space:nowrap;align-items:center;gap:6px;display:flex}.size-picker input{width:auto;min-width:0}.finishing-editor-list{gap:var(--space-4);flex-direction:column;display:flex}.finishing-editor{border:1px solid var(--color-portal-border);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-4);flex-direction:column;display:flex}.finishing-editor-fields{gap:var(--space-3);grid-template-columns:minmax(180px,2fr) repeat(3,minmax(130px,1fr));align-items:end;display:grid}.finishing-editor-fields>label,.option-media-editor>label{font-size:var(--font-size-sm);color:var(--color-portal-text);flex-direction:column;gap:6px;display:flex}.portal-field-wide textarea{resize:vertical;min-height:86px}.option-media-editor{gap:var(--space-3);grid-template-columns:minmax(220px,1fr) minmax(160px,240px);align-items:end;display:grid}.option-media-editor img{object-fit:contain;border:1px solid var(--color-portal-border);border-radius:var(--radius-sm);width:100%;height:auto;max-height:180px}.option-media-editor>small{color:var(--color-portal-muted)}.option-media-editor .field-error{color:var(--color-negative-text)}.media-upload-button{border:1px solid var(--color-portal-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);cursor:pointer;font-size:var(--font-size-sm);align-items:center;font-weight:600;display:inline-flex}.media-upload-button input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:900px){.finishing-editor-fields,.option-media-editor{grid-template-columns:1fr}}.preview-card{background:var(--color-portal-preview)}.preview-fields{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.preview-fields label{font-size:var(--font-size-sm);color:var(--color-portal-text);flex-direction:column;gap:6px;display:flex}.preview-fields input,.preview-fields select{border:1px solid var(--color-portal-border);border-radius:var(--radius-sm);padding:var(--space-2);font-size:var(--font-size-md);background:var(--color-surface)}.preview-finishing{font-size:var(--font-size-sm);flex-wrap:wrap;gap:14px;display:flex}.preview-finishing label{align-items:center;gap:6px;display:flex}.preview-result{background:var(--color-surface);border:1px solid var(--color-portal-border);border-radius:var(--radius-md);padding:14px}.preview-result ul{flex-direction:column;gap:6px;margin:0 0 10px;padding:0;list-style:none;display:flex}.preview-result li{justify-content:space-between;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--color-portal-muted);display:flex}.preview-result li b{color:var(--color-portal-text)}.preview-result p{justify-content:space-between;align-items:baseline;gap:var(--space-3);border-top:1px solid var(--color-portal-border);font-size:var(--font-size-sm);color:var(--color-portal-muted);margin:0;padding-top:10px;display:flex}.preview-result strong{color:var(--color-portal-text);font-size:22px}.preview-result.manual strong{color:var(--color-portal-brand);font-size:var(--font-size-xl)}.preview-result small{color:var(--color-portal-muted);font-size:var(--font-size-xs);margin-top:6px;display:block}.portal-toolbar{background:var(--color-surface);border-top:1px solid var(--color-portal-border);padding:var(--space-6) var(--space-8);justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex;position:sticky;bottom:0}.portal-toolbar small{margin-top:var(--space-2);color:var(--color-portal-muted);font-size:var(--font-size-sm);display:block}.portal-actions{gap:10px;display:flex}@media (max-width:900px){.portal{grid-template-columns:1fr}.portal-sidebar{align-items:center;gap:var(--space-4);padding:var(--space-4);flex-direction:row;overflow-x:auto}.portal-sidebar nav{flex-direction:row}.portal-help{display:none}.portal-content{padding:var(--space-5)}.portal-table{white-space:nowrap;display:block;overflow-x:auto}}.admin-shell.admin-pricing-mode{max-width:none;padding:0}.admin-pricing-mode>.admin-head,.admin-pricing-mode>.admin-tabs{margin-left:var(--space-8);margin-right:var(--space-8)}@media (max-width:900px){.admin-shell.admin-pricing-mode{padding-top:var(--space-5)}.admin-pricing-mode>.admin-head,.admin-pricing-mode>.admin-tabs{margin-left:var(--space-3);margin-right:var(--space-3)}.portal-sidebar{flex-direction:column;align-items:stretch;overflow:visible}.portal-brand{flex-direction:row;align-items:center}.portal-sidebar nav{grid-template-columns:1fr 1fr;display:grid}.portal-sidebar nav button{min-height:48px}.portal-content{padding:18px var(--space-3)}.portal-toolbar{padding:18px var(--space-3);position:static}.portal-card{padding:14px}.size-grid{grid-template-columns:1fr 1fr;gap:10px}}@media (max-width:480px){.portal-table{font-size:var(--font-size-xs)}.portal-table th,.portal-table td{padding:var(--space-2)}.portal-actions{width:100%}.portal-actions button{flex:1}}
