:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#192e2a;background:#f4f6f4;font-synthesis:none;--ink:#15352e;--green:#247b59;--lime:#d5f68a;--line:#dfe6e0;--muted:#697970;--paper:#fff}
[hidden]{display:none!important}.model-analysis{margin-top:18px;padding:20px;border:1px solid #d4e2c9;background:#f3f8ec;border-radius:8px}.analysis-title{display:flex;justify-content:space-between;align-items:center;gap:15px}.measured-size{font-size:1.7rem;font-weight:650;letter-spacing:-.7px;margin:16px 0 8px}.measured-size span{font-size:1rem;font-weight:450;color:#647b56}.model-analysis .footnote{margin-bottom:0}.analysis-wait{font-size:.9rem;color:#597547}.model-analysis .error{margin:0}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a{color:var(--green)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #52a77a;outline-offset:3px}button{border:0}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.9rem,3vw,2.65rem);font-weight:650;letter-spacing:-1.3px;margin-bottom:10px}h2{font-size:1.35rem;letter-spacing:-.4px}h3{font-size:1.05rem;margin-bottom:10px}p{line-height:1.6}.muted{color:var(--muted)}.small{font-size:.875rem}.eyebrow{font-size:.75rem;letter-spacing:1.8px;text-transform:uppercase;font-weight:750;color:var(--muted);margin-bottom:15px}.boot{padding:80px;font-size:1.2rem}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:#112f29;color:#eef4eb;padding:30px 22px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-size:1.65rem;font-weight:720;letter-spacing:-1px}.brand img{width:38px;height:38px}.brand span:last-child{color:#cff293}.sidebar .eyebrow{color:#91aea0;margin:35px 12px 14px}.nav{display:grid;gap:8px}.nav button{display:flex;align-items:center;gap:13px;width:100%;padding:13px 14px;background:transparent;color:#b7c9c0;text-align:left;border-radius:8px;font-size:.95rem}.nav button svg{width:19px;height:19px}.nav button.active{background:#24453a;color:#e5f8ca}.nav button:hover{background:#24453a}.sidebar-bottom{margin-top:auto;padding-top:28px}.pilot{padding:17px;border:1px solid #345448;border-radius:10px;color:#c6d7ca;font-size:.875rem;line-height:1.6}.pilot strong{display:block;color:#d5f68a;margin-bottom:5px}.user{display:flex;align-items:center;gap:10px;margin-top:24px}.avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#ddebcf;color:#244d37;font-weight:700;flex-shrink:0}.user-name{font-size:.875rem;font-weight:600}.sidebar .text-btn{color:#adc6b6;padding:5px 0;font-size:.8rem}.workspace{min-width:0}.topbar{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 44px;background:#fff;gap:16px}.crumb{color:var(--muted);font-size:.875rem}.crumb strong{color:#273e34;font-weight:550}.segmented{padding:4px;background:#f1f4f1;border:1px solid var(--line);border-radius:9px;display:flex;gap:4px}.segmented button{padding:8px 15px;color:var(--muted);background:transparent;border-radius:6px;font-size:.875rem;font-weight:600}.segmented button.active{background:white;color:var(--ink);box-shadow:0 1px 5px #163b2414}.main{max-width:1340px;margin:auto;padding:38px 44px 60px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.page-head p{margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 19px;border-radius:7px;background:var(--ink);color:#fff;text-decoration:none;font-size:.9rem;font-weight:650;line-height:1.4;white-space:nowrap}.btn svg{width:17px;height:17px}.btn:hover{background:#285744}.btn.secondary{background:white;color:var(--ink);border:1px solid #cfdad2}.btn.secondary:hover{background:#f1f6ef}.btn.lime{background:var(--lime);color:#15352e}.btn.danger{background:#fff0ed;color:#a1372b;border:1px solid #eac7be}.text-btn{background:transparent;color:var(--green);padding:8px 0;font-weight:600}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:28px}.stat{background:white;border:1px solid var(--line);border-radius:10px;padding:22px 25px;display:flex;justify-content:space-between;align-items:center}.stat .label{color:var(--muted);font-size:.875rem;margin-bottom:13px}.stat .number{font-size:2rem;letter-spacing:-1px;font-weight:620}.stat .caption{font-size:.8rem;color:var(--muted);margin-top:7px}.stat-icon{color:#3d7356;background:#eff5e9;padding:12px;border-radius:12px;align-self:flex-start}.stat-icon svg{height:22px;width:22px;display:block}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.panel{background:white;border:1px solid var(--line);border-radius:11px;overflow:hidden}.panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:22px 24px;border-bottom:1px solid var(--line)}.panel-head h2{margin:0;font-size:1.1rem}.panel-body{padding:24px}.tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);padding:0 24px}.tabs button{background:transparent;padding:16px 0;color:var(--muted);border-bottom:2px solid transparent;font-size:.875rem;font-weight:600}.tabs button.active{color:var(--ink);border-color:var(--green)}.order-card{display:block;text-align:left;background:white;padding:23px 24px;border-bottom:1px solid var(--line);width:100%;color:inherit}.order-card:last-child{border:0}.order-card:hover{background:#fafcf8}.order-top{display:flex;gap:14px;align-items:center;margin-bottom:17px}.part-icon{display:grid;place-items:center;background:#f0f3eb;border:1px solid #e2e8db;border-radius:10px;width:48px;height:48px;flex-shrink:0;color:#487444}.part-icon svg{width:26px;height:26px}.order-title{flex:1;min-width:0}.order-title strong{display:block;font-size:1rem;margin-bottom:6px;overflow-wrap:anywhere}.order-title span{font-size:.8rem;color:var(--muted)}.badge{font-size:.75rem;padding:6px 9px;display:inline-block;border-radius:5px;font-weight:650;white-space:nowrap;background:#edf2eb;color:#566b57}.badge.quoted{background:#fff2d9;color:#91631d}.badge.printing,.badge.inspection,.badge.accepted{background:#e8effb;color:#48668b}.badge.ready,.badge.completed{background:#e3f3e6;color:#2e7549}.badge.cancelled{background:#f6e9e6;color:#976356}.order-meta{display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:.8rem;color:var(--muted)}.order-meta span:last-child{margin-left:auto;font-weight:650;color:var(--ink)}.empty{padding:44px 26px;text-align:center}.empty .part-icon{margin:0 auto 20px;width:62px;height:62px}.empty h3{font-size:1.15rem}.empty p{max-width:360px;margin:0 auto 20px;font-size:.9rem;color:var(--muted)}.guide{background:#eaf0df;border:1px solid #dce5ce;border-radius:11px;padding:25px}.guide .eyebrow{color:#597644}.guide h2{font-size:1.4rem;line-height:1.35}.steps{display:grid;gap:19px;margin-top:22px}.step{display:flex;gap:12px;font-size:.875rem;line-height:1.5}.step-num{flex-shrink:0;width:25px;height:25px;border:1px solid #b9caab;display:grid;place-items:center;border-radius:50%;font-size:.75rem;color:#47643c}.step strong{display:block;margin-bottom:3px}.step p{font-size:.8rem;margin:0;color:#617454}.note{margin-top:18px;border:1px solid var(--line);border-radius:10px;padding:20px;background:#fff;font-size:.875rem;color:var(--muted);line-height:1.6}.note strong{color:var(--ink);display:block;margin-bottom:6px}.price-line{display:flex;justify-content:space-between;gap:18px;margin:12px 0;font-size:.875rem}.price-line.total{padding-top:16px;border-top:1px solid var(--line);font-size:1.15rem;font-weight:700}.footnote{font-size:.8rem;line-height:1.6;color:var(--muted)}.notice{padding:13px 16px;border-radius:7px;background:#f1f5eb;border:1px solid #dce6d1;color:#567141;font-size:.875rem;line-height:1.5;margin-bottom:22px}.notice.amber{background:#fff7e7;border-color:#eadbb6;color:#80652a}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:8px;font-size:.875rem;font-weight:600;min-width:0}.field input,.field select,.field textarea{width:100%;border:1px solid #ccd7cf;border-radius:6px;padding:11px 12px;background:#fff;color:#253d30;font-weight:400;min-width:0}.field textarea{min-height:95px;resize:vertical}.field small{font-weight:400;color:var(--muted);font-size:.8rem;line-height:1.5}.span-2{grid-column:1/-1}.row{display:flex;align-items:center;gap:12px}.row>*{min-width:0}.row.fields>.field{flex:1}.form-section{padding:26px;border-bottom:1px solid var(--line)}.form-section:last-child{border:0}.section-title{display:flex;gap:12px;align-items:center;margin-bottom:22px}.section-title h2{font-size:1.1rem;margin:0}.section-title .step-num{background:#eff5e8}.upload{border:1.5px dashed #a5b79e;border-radius:9px;background:#f8fbf4;padding:28px;text-align:center}.upload svg{width:28px;height:28px;color:#60824c}.upload strong{display:block;margin:12px 0 8px}.upload input{max-width:100%;font-size:.875rem;margin-top:12px}.upload p{font-size:.8rem;color:var(--muted);margin:8px 0}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.error{color:#a23b2c;background:#fff0ed;border:1px solid #eaccc4;padding:12px;border-radius:6px;margin-bottom:18px;font-size:.875rem}.error:empty{display:none}.printer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.printer-card{padding:25px;background:#fff;border:1px solid var(--line);border-radius:10px}.printer-head{display:flex;gap:14px;align-items:center;margin-bottom:24px}.printer-head h3{margin:0 0 5px}.inventory-row{display:flex;gap:9px;align-items:center;padding:12px 0;border-bottom:1px solid #edf0e9;font-size:.875rem}.inventory-row:last-child{border:0}.inventory-row span:last-child{margin-left:auto;color:var(--muted)}.swatch{display:inline-block;width:12px;height:12px;border-radius:50%;border:1px solid #b8c4b4;background:#333}.swatch.white{background:white}.swatch.grey{background:#888}.swatch.orange{background:#e18537}.swatch.green{background:#609563}.swatch.blue{background:#4f82bb}.swatch.red{background:#c55c4e}.swatch.natural{background:#e9dfc3}.detail-head{display:flex;align-items:center;gap:12px;margin:22px 0}.detail-head h1{margin:0;flex:1}.progress{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:26px;background:white;border:1px solid var(--line);border-radius:9px;padding:22px 18px;gap:10px}.progress-step{font-size:.875rem;color:var(--muted);border-top:3px solid #e2e8df;padding-top:13px}.progress-step.done{border-color:#489267;color:#246041}.progress-step.current{border-color:#99c04f;color:var(--ink);font-weight:700}.details{display:grid;grid-template-columns:1fr 1fr;gap:21px}.details dt{font-size:.8rem;color:var(--muted);margin-bottom:7px}.details dd{margin:0;font-size:.95rem;overflow-wrap:anywhere}.timeline{list-style:none;padding:0;margin:0}.timeline li{border-left:1px solid #cfddca;padding:0 0 22px 20px;position:relative;font-size:.875rem;line-height:1.6}.timeline li:before{content:'';position:absolute;left:-4px;top:7px;width:7px;height:7px;background:#759863;border-radius:50%}.timeline time{display:block;font-size:.75rem;color:var(--muted)}.timeline li:last-child{padding-bottom:0}.code{font-size:2rem;letter-spacing:7px;font-weight:750;background:#eff6e5;padding:20px;text-align:center;border-radius:8px;margin:14px 0}.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-aside{background:#112f29;color:#eef7e7;padding:55px clamp(35px,6vw,100px);display:flex;flex-direction:column;justify-content:space-between}.auth-aside h1{font-size:clamp(2.6rem,4.8vw,4.8rem);line-height:1.08;letter-spacing:-2px;margin:65px 0 25px}.auth-aside h1 em{font-style:normal;color:#d5f68a}.auth-aside p{color:#adc6b4;max-width:420px}.auth-points{display:flex;gap:28px;border-top:1px solid #355144;padding-top:25px;margin-top:40px;font-size:.875rem}.auth-points strong{display:block;color:#d5f68a;margin-bottom:6px;font-size:1.5rem}.auth-main{padding:50px clamp(30px,6vw,100px);display:flex;flex-direction:column;justify-content:center;max-width:700px;width:100%;margin:auto}.auth-main h2{font-size:1.9rem;margin-bottom:12px}.auth-main .segmented{margin:24px 0}.auth-form{display:grid;gap:18px}.auth-form .btn{margin-top:6px}.divider{display:flex;align-items:center;gap:15px;margin:28px 0 20px;color:var(--muted);font-size:.8rem}.divider:before,.divider:after{content:'';height:1px;background:var(--line);flex:1}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.demo-button{padding:18px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink)}.demo-button:hover{border-color:#65925c;background:#f7faf2}.demo-button strong{display:block;margin-bottom:6px}.demo-button span{font-size:.8rem;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:12px;padding:28px;width:min(620px,calc(100vw - 32px));max-height:90vh;color:var(--ink);box-shadow:0 25px 100px #102d2933}dialog::backdrop{background:#10271fcc;backdrop-filter:blur(3px)}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-head h2{margin:0}.close{background:#edf2e8;border-radius:50%;width:32px;height:32px;font-size:1.3rem;color:#567149}.filament-edit{display:grid;grid-template-columns:1fr 1fr 90px 32px;gap:8px;margin-bottom:12px;align-items:end}.filament-edit .field{font-size:.8rem}.filament-edit input,.filament-edit select{padding:10px 7px}.filament-edit .close{margin-bottom:5px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#163e2d;color:#fff;padding:14px 24px;border-radius:9px;box-shadow:0 5px 30px #183c2733;max-width:calc(100vw - 32px);font-size:.9rem;z-index:100;display:none}#toast.visible{display:block}.pending{margin-top:18px}.table{width:100%;border-collapse:collapse;font-size:.9rem}.table th,.table td{text-align:left;padding:17px 22px;border-bottom:1px solid var(--line)}.table th{font-size:.8rem;color:var(--muted);font-weight:550}.table-wrap{overflow-x:auto}.inline-note{border-left:3px solid #a7c583;padding:4px 0 4px 14px;margin:20px 0;color:var(--muted);font-size:.875rem;line-height:1.6}.check{display:flex;gap:10px;align-items:flex-start;font-size:.875rem;color:var(--muted);line-height:1.6}.check input{margin-top:5px}.local-badge{font-size:.75rem;letter-spacing:.2px;padding:5px 8px;border:1px solid #d8e4ca;border-radius:4px;color:#69814e;background:#f4f8ec}.spaced{margin-top:24px}.stack{display:grid;gap:24px}.nowrap{white-space:nowrap}
@media(min-width:1550px){.main{padding-top:50px}.page-head{margin-bottom:38px}.layout{grid-template-columns:minmax(0,1fr) 330px}}
@media(max-width:1150px){.shell{grid-template-columns:205px 1fr}.sidebar{padding:25px 16px}.main{padding:30px 25px}.topbar{padding:0 25px}.layout{grid-template-columns:1fr}.aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.aside .note{margin:0}.stats{gap:12px}.stat{padding:19px}.stat-icon{display:none}}
@media(max-width:760px){.shell{display:block}.sidebar{height:auto;position:relative;padding:17px 20px;display:block}.sidebar .brand{font-size:1.35rem}.sidebar .brand img{width:30px;height:30px}.sidebar .eyebrow,.sidebar-bottom{display:none}.nav{display:flex;margin-top:18px;gap:5px;overflow-x:auto}.nav button{width:auto;white-space:nowrap;padding:10px;font-size:.8rem}.nav button svg{width:16px;height:16px}.topbar{height:67px;padding:0 20px}.crumb{font-size:.8rem}.topbar .local-badge{display:none}.segmented button{padding:8px 10px;font-size:.8rem}.main{padding:26px 18px}.page-head{align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:25px}.page-head h1{font-size:1.85rem}.page-head p{font-size:.875rem}.page-head>.btn{padding:10px 14px}.stats{gap:8px;margin-bottom:20px}.stat{padding:15px 12px}.stat .label{font-size:.75rem;line-height:1.4;min-height:30px;margin-bottom:5px}.stat .number{font-size:1.55rem}.stat .caption{font-size:.75rem}.aside{display:block}.aside .note{margin-top:18px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.form-section{padding:22px 18px}.row.fields{gap:8px}.printer-grid{grid-template-columns:1fr}.panel-body,.panel-head,.order-card{padding:20px}.order-top{flex-wrap:wrap}.order-top>.badge{margin-left:62px;margin-top:-8px}.order-meta{gap:10px}.auth{display:block}.auth-aside{padding:25px}.auth-aside h1{font-size:2.3rem;margin:30px 0 20px;letter-spacing:-1px}.auth-aside p,.auth-points{display:none}.auth-main{padding:30px 22px}.detail-head{flex-wrap:wrap}.detail-head h1{font-size:1.7rem}.progress{padding:15px 12px;gap:8px}.progress-step{font-size:.75rem}.details{gap:17px}.filament-edit{grid-template-columns:1fr 1fr 72px 26px;gap:5px}.filament-edit .close{width:26px;height:26px}.filament-edit .field{font-size:.75rem}.table th,.table td{padding:15px}.btn{white-space:normal}.sidebar .nav{scrollbar-width:thin}.auth-main .demo-button{padding:14px}}
@media(max-width:760px){.topbar>.crumb{display:none}.topbar>.row{width:100%;justify-content:space-between;gap:8px}.topbar .text-btn{font-size:.8rem}.detail-head h1{min-width:180px}.panel-head{flex-wrap:wrap}}
@media(prefers-reduced-motion:no-preference){.btn,.nav button,.order-card{transition:background .15s ease}.panel,.guide{animation:arrive .25s ease both}@keyframes arrive{from{opacity:.6;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}
.version-tag{position:fixed;left:10px;bottom:8px;z-index:20;color:#b7c9c0;font-size:.68rem;font-weight:600;letter-spacing:.04em;line-height:1;pointer-events:none}
.status-green,.status-red,.status-yellow{display:inline-flex;align-items:center;min-height:38px;padding:7px 14px;border-radius:6px;color:#fff;font-size:1.02rem;font-weight:750;letter-spacing:.01em}.status-green{background:#138a36}.status-red{background:#c82020}.status-yellow{background:#a57900}.quote-actions{gap:12px;margin-top:18px}.brand-confetti{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:200}.brand-confetti-mark{position:absolute;top:-44px;padding:6px 9px;border:1px solid #ffffffb8;border-radius:7px;background:#fff;box-shadow:0 4px 14px #102d2926;color:#173d33;font-size:.72rem;font-weight:800;white-space:nowrap;animation:brand-fall 2.35s cubic-bezier(.18,.68,.28,1) forwards}@keyframes brand-fall{to{transform:translate3d(35px,110vh,0) rotate(var(--spin));opacity:0}}
.location-map{height:310px;width:100%;border:1px solid var(--line);border-radius:9px;z-index:0}.location-pin{display:grid;place-items:center;background:#247b59;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 8px #102d2966;color:white;font-size:12px}.location-status{margin:10px 0}.pickup-address-fields{border:1px solid var(--line);border-radius:8px;padding:18px;margin:0;min-width:0}.pickup-address-fields legend{font-size:.9rem;font-weight:650;padding:0 8px}.pickup-address{white-space:pre-line}
.map-range-button{margin-left:14px}
.address-suggestions{display:grid;gap:2px;padding:6px;border:1px solid var(--line);border-radius:6px;background:white;max-height:220px;overflow:auto;font-size:.85rem;font-weight:400}.address-choice{padding:10px;background:white;color:var(--ink);text-align:left;border-radius:4px;line-height:1.4}.address-choice:hover,.address-choice:focus{background:#edf5e6}
.brand-lockup{display:flex;flex-direction:column;align-items:flex-start;gap:2px;line-height:1}.brand-lockup .brand-name{font-size:inherit;color:#cff293}.brand-lockup .brand-name .brand-word{color:#fff}.brand-lockup .brand-trademark{font-size:.4em;vertical-align:super;line-height:0;letter-spacing:0;margin-left:.12em;color:#fff}.brand-lockup .brand-byline{font-size:.64rem;font-weight:550;letter-spacing:.04em;line-height:1.2;color:#b7c9c0}
.connector-disclosure>summary{list-style:none;cursor:pointer;user-select:none;transition:background-color .16s ease}.connector-disclosure>summary::-webkit-details-marker{display:none}.connector-disclosure>summary::after{content:"";width:13px;height:13px;flex:0 0 13px;margin:0 4px 6px 16px;border-right:3px solid #101a16;border-bottom:3px solid #101a16;border-radius:1px;transform:rotate(45deg);transition:transform .16s ease}.connector-disclosure[open]>summary::after{transform:rotate(225deg);margin-bottom:0}.connector-disclosure>summary:hover{background:#f8faf8}.connector-disclosure>summary:focus-visible{outline:3px solid #52a77a;outline-offset:-3px}

.printer-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.printer-actions .btn{white-space:normal;text-align:center}.printer-actions .edit-printer-action{margin-left:auto}@media(max-width:520px){.printer-actions{align-items:stretch;flex-direction:column}.printer-actions .btn{width:100%}.printer-actions .edit-printer-action{margin-left:0}}

/* V4.2: readable, separate legal and payment acknowledgements. */
.legal-consent,.test-card{display:grid;gap:14px;margin:18px 0;padding:18px;border:1px solid var(--line,#d6e1dc);border-radius:10px}
.legal-consent label,.consent-check{display:block;line-height:1.65;font-size:14px}
.legal-consent input[type=checkbox],.consent-check input[type=checkbox]{width:18px;height:18px;vertical-align:middle;margin-right:9px;accent-color:#173b32}
.legal-links{padding-bottom:12px;font-size:13px}.legal-links a{color:#d7e8b0}
.test-card p{margin:0}.test-card input[data-test-card]{max-width:340px}

/* Account email preference switch. */
.consent-check input[type=checkbox][data-notification-enabled]{appearance:none;width:44px;height:24px;flex:0 0 44px;border-radius:20px;background:#b8c5c0;border:1px solid #8b9f96;position:relative;cursor:pointer;transition:background .15s;}
.consent-check input[type=checkbox][data-notification-enabled]::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:white;box-shadow:0 1px 3px #0003;transition:transform .15s;}
.consent-check input[type=checkbox][data-notification-enabled]:checked{background:#198754;border-color:#198754;}
.consent-check input[type=checkbox][data-notification-enabled]:checked::after{transform:translateX(20px);}
.consent-check input[type=checkbox][data-notification-enabled]:focus-visible{outline:3px solid #76b89a;outline-offset:3px;}

/* Resin stock has an extra product field while keeping the workshop editor readable. */
.resin-edit{grid-template-columns:1fr 1.4fr 1fr 90px 120px 30px;}
@media(max-width:760px){.resin-edit{grid-template-columns:1fr 1fr 72px 26px}.resin-edit .field:nth-child(2),.resin-edit .field:nth-child(5){grid-column:1/-1}}

.sidebar-footer{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;padding-top:18px;color:#b7c9c0;font-size:.68rem;font-weight:600;letter-spacing:.04em;line-height:1.5}.sidebar-footer .legal-links{display:flex;align-items:center;gap:4px;padding:0;font-size:inherit}

.quote-workflow-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:18px}.quote-workflow-row>.btn{justify-self:start}@media(max-width:520px){.quote-workflow-row{grid-template-columns:1fr}.quote-workflow-row>.btn{justify-self:stretch;justify-content:center}}

.resin-edit{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;position:relative;padding-right:34px}.resin-edit .field{min-width:0}.resin-edit .close{position:absolute;right:0;top:22px}#machine-form .row.fields>.field{min-width:0;flex:1}#machine-form .field input,#machine-form .field select{min-width:0;max-width:100%}@media(max-width:520px){.resin-edit{grid-template-columns:1fr}.resin-edit .field{font-size:.875rem}}

/* Customer model preparation and discovery guide. */
.what-to-print{max-width:940px}
.model-guide-section>summary{list-style:none;cursor:pointer;user-select:none}
.model-guide-section>summary::-webkit-details-marker{display:none}
.model-guide-section>summary::after{content:"+";flex:0 0 24px;text-align:center;font-size:1.5rem;font-weight:500;line-height:1;color:var(--ink)}
.model-guide-section[open]>summary::after{content:"−"}
.model-guide-section:not([open])>summary{border-bottom:0}
.model-guide-section>summary:hover{background:#f8faf8}
.model-guide-section>summary:focus-visible{outline:3px solid #52a77a;outline-offset:-3px}
.model-guide-section .panel-body{overflow-wrap:anywhere}
.model-resource-warning{margin-bottom:18px}
.model-export-steps{margin:0;padding-left:24px;line-height:1.7}
.model-export-steps li+li{margin-top:12px}
.model-resources{list-style:none;padding:0;margin:0;display:grid;gap:20px}
.model-resources li{min-width:0}
.model-resources li+li{border-top:1px solid var(--line);padding-top:20px}
.model-resources a{display:inline-block;font-weight:650;line-height:1.6;text-underline-offset:3px}
.model-resources p{margin:6px 0 0;color:var(--muted);font-size:.9rem}
@media(max-width:760px){.nav.customer-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;overflow-x:visible}.nav.customer-nav button{min-width:0;white-space:normal}.nav.customer-nav button svg{flex-shrink:0}.what-to-print .stack{gap:18px}}
/* Stripe-hosted fields live inside their own accessible modal. */
.stripe-dialog{width:min(560px,92vw);max-height:90vh;overflow:auto;padding:28px;border:1px solid #d6dfd8;border-radius:18px}
.stripe-dialog::backdrop{background:#13251ccc}
.stripe-dialog [data-error]{color:#a22;min-height:1.5em}
.stripe-checkout-dialog{background:#0b211d;color:#f4f7f5;border-color:#87a899;color-scheme:dark}
.stripe-checkout-dialog h2{color:inherit}
.stripe-dialog-header{position:sticky;top:-28px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#0b211d;padding:12px 0}
.stripe-dialog-header h2{margin:0}
.stripe-checkout-dialog [data-notice]{color:#c3d5cd}
.stripe-checkout-dialog [data-error]{color:#ffb4ab}
.stripe-checkout-dialog .btn.secondary{background:#112f29;color:#f4f7f5;border-color:#87a899;flex-shrink:0}
.stripe-checkout-dialog .btn.secondary:hover{background:#1b4237}
.stripe-checkout-dialog .btn:focus-visible{outline:3px solid #d5f68a;outline-offset:3px}

.provider-cancellation-reason{display:block;width:100%;max-width:100%;min-height:120px;margin-top:10px;padding:12px;border:1px solid var(--line,#ccd6d0);border-radius:8px;background:white;color:var(--ink,#17352d);resize:vertical}

#handover-form input[name="code"]{text-transform:uppercase}

.password-reset-page{max-width:640px;margin:0 auto}.password-reset-page .brand{margin-bottom:32px}.password-reset-page h1{margin-top:24px}.password-reset-page .actions{flex-wrap:wrap}
.password-reset-page .brand,.password-reset-page .brand-name{color:var(--ink,#17352d)}.password-reset-page .brand-byline{color:var(--muted,#64746d)}.password-reset-page form{display:grid;gap:16px}.password-reset-page form .spaced{margin-top:8px}
.password-reset-page .brand-word,.password-reset-page .brand-trademark{color:var(--ink,#17352d)}

#selected-printer-fields{border:0;padding:0;margin:0;min-inline-size:0}
.provider-onboarding-panel{max-width:1040px;margin-inline:auto}.provider-onboarding-panel h1{margin-block:10px 16px}.provider-onboarding-panel [data-provider-onboarding]{background:#fff;color:#15352e;min-height:180px;padding:16px 0}.provider-onboarding-panel [data-provider-onboarding]>connect-account-onboarding,.provider-onboarding-panel [data-provider-onboarding]>connect-notification-banner{display:block}.provider-onboarding-error{color:#a32626}.provider-onboarding-panel .actions{flex-wrap:wrap}

/* Keep every sidebar section in the same flow when window height or zoom changes. */
@media(min-width:761px){.sidebar{height:100vh;height:100dvh;overflow-y:auto;scrollbar-width:thin}.sidebar>*{flex-shrink:0}.sidebar .user>div:last-child{min-width:0;overflow-wrap:anywhere}}
@media(max-width:760px){.sidebar-footer{padding-top:14px}}
