/* Shared typography contract. Loaded after feature styles so sizes stay coherent. */
:root{--type-body:15px;--type-control:14px;--type-label:13px;--type-note:12px;--type-heading:clamp(28px,2.5vw,36px);--type-leading:1.6}
body{font-size:var(--type-body);line-height:var(--type-leading);font-optical-sizing:auto}button,input,select,textarea{font-family:var(--sans);line-height:1.45}h1,h2,h3,h4{line-height:1.25;text-wrap:balance}p,li,dd{line-height:1.65}small{line-height:1.5}h1,.page-heading h1{font-size:var(--type-heading);letter-spacing:-.01em}.subtitle,.page-heading>div>p{font-size:15px;line-height:1.65;max-width:70ch}.page{padding-bottom:38px}.page-heading{align-items:flex-start;gap:20px}.page-heading>div{min-width:0}.heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}
.sidebar{overflow-y:auto;scrollbar-width:thin}.sidebar>.brand,.sidebar>.side-label,.sidebar>.side-project,.sidebar>.sidebar-bottom,.side-nav{flex-shrink:0}.side-nav .nav-item,.sidebar-bottom .nav-item{font-size:14px;line-height:1.4;min-height:44px}.nav-item>span{overflow-wrap:anywhere}.side-label{font-size:12px;letter-spacing:.1em;padding-top:20px}.side-project button{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.side-project small{font-size:12px}.connected-card p{font-size:13px;line-height:1.6}.connected-card button{font-size:12px;line-height:1.5}.breadcrumb{font-size:12px;letter-spacing:.07em}.topbar{min-height:73px;height:auto;padding-top:14px;padding-bottom:14px}.top-actions{min-width:0;gap:12px}.search-trigger,.cloud-top,.topbar .cloud-top{font-size:13px!important}.topbar .demo-pill{font-size:12px}.brand-caption{font-size:10px;letter-spacing:.18em}.brand{min-height:83px}
.btn,.dialog-footer .btn,.heading-actions .btn,.review-actions .btn,.live-actions .btn,.livebar:has(.live-dealer) .live-actions .btn,.cloud-project-row .btn,.catalog-import-actions .btn{font-size:var(--type-control);line-height:1.4;min-height:44px;white-space:normal;padding:12px 17px}.btn .icon{flex-shrink:0}.tab,.filter-bar .tab,.catalog-section-head .tab,.view-tools .tabs .tab,.view-tools .tab,.workspace-page-tabs button,.dealer-detail-tabs button{font-size:13px;line-height:1.4;min-height:44px}.workspace-journey button{font-size:13px;min-height:44px}.step-btn,.progress-nav .step-btn{font-size:13px;line-height:1.4;min-height:44px}.step-num{font-size:12px;min-width:26px;min-height:26px}.progress-meta{font-size:12px}.progress-nav{gap:10px}.unit-toggle button{font-size:13px;min-height:40px;min-width:40px}
.field>label,.field-label,.field>span,.prep-content .field label,.dealer-admin-workspace .field>span,.catalog-intake .field>span{font-size:var(--type-label);line-height:1.5;font-weight:600}.field input:not([type=checkbox]):not([type=radio]):not([type=range]),.field select,.field textarea,.search-field input,.prep-content input,.prep-content select,.prep-content textarea,#cloud-login input,.catalog-intake input,.catalog-intake textarea,.dealer-admin-workspace input,.dealer-admin-workspace select,#cloud-workspace,.review-filters input,.review-filters select,.pipeline-filters select{font-size:16px;line-height:1.5;min-height:48px}.field textarea,.prep-content textarea{line-height:1.65}.search-field input{padding-left:40px}.search-field>.icon{top:50%;transform:translateY(-50%);width:17px;height:17px}.input-unit{font-size:13px}.field-error,.hint,.prep-hint{font-size:13px;line-height:1.6}.stepper input{font-size:16px;min-height:44px}.stepper button{min-height:44px;min-width:36px}.stepper{min-width:132px}.quantity-field{min-width:0}.field{min-width:0}
.eyebrow,.section-kicker,.inspector-heading .eyebrow,.hero-copy .eyebrow,.callout-banner .eyebrow,.dialog-head .eyebrow,.option-dialog .dialog-head .eyebrow,.technical-dialog .dialog-head .eyebrow,.proposal-dialog .dialog-head .eyebrow,.shared-picker-dialog .dialog-head .eyebrow{font-size:12px;line-height:1.5;letter-spacing:.1em}.section-head p,.hero-copy p,.product-info p,.catalog-footer,.catalog-footer button,.catalog-hero .hero-copy .hero-cta,.library-context,.panel .subtitle,.callout-banner p,.project-card p,.pipeline-hero p,.pipeline-bottom p,.readiness-list>div,.activity-list article{font-size:14px;line-height:1.65}.product-info h3,.material-content h3,.inspector-heading h2{font-size:19px;line-height:1.35}.product-specs,.product-footer .small-note,.product-tag,.reference-caption,.photo-caption,.hero-bottom{font-size:12px;line-height:1.5}.product-configure{font-size:14px;min-height:44px}.product-footer{align-items:center;flex-wrap:wrap;gap:12px}.product-specs{flex-wrap:wrap;row-gap:8px}.product-info p{min-height:0}.material-content p{font-size:14px;line-height:1.6}.material-content small{font-size:12px;letter-spacing:.08em}.option-text strong{font-size:16px;line-height:1.4}.option-text p,.info-card p,.accessory p,.selection-detail small{font-size:14px;line-height:1.6}.option-text small,.mini-label,.selection-detail strong,.info-card strong,.accessory strong,.accessory>span:last-child{font-size:13px;line-height:1.5}.option-row{min-height:88px}.visual-title h3{font-size:17px;line-height:1.35}.visual-title small,.live-label,.visual-specs small,.openings-label{font-size:12px;line-height:1.5}.visual-specs>div,.opening-tab,.opening-tab span,.technical-link,.shade-control>span,.shade-control output{font-size:13px;line-height:1.5}.visual-specs{gap:14px;flex-wrap:wrap}.visual-specs>div{min-width:0}.opening-tab{min-height:44px}.technical-link{min-height:44px}
.livebar{gap:18px;min-height:96px}.live-values{gap:22px;min-width:0}.live-price>span,.live-price small,.live-note{font-size:12px;line-height:1.5}.live-price strong{font-size:24px;line-height:1.2;font-variant-numeric:tabular-nums}.live-price>.live-dealer,.live-dealer b{font-size:13px}.live-actions{flex-wrap:wrap;gap:10px}.live-caption{font-size:14px;line-height:1.5}.price-pair small,.price-pair label,.price-pair.compact small,.price-pair.compact label{font-size:12px;line-height:1.4}.price-pair strong{font-variant-numeric:tabular-nums}.price-line,.review-row strong,.review-row>button{font-size:14px;line-height:1.5}.review-row small,.validity,.validity small,.footnote,.files-status,.margin-example,.drawer-note,.review-customer{font-size:13px;line-height:1.65}.review-row{gap:14px;align-items:start}.review-row>div{min-width:0}.review-customer button{font-size:13px;min-height:44px}
.dialog-head h2,.option-dialog .dialog-head h2,.technical-dialog .dialog-head h2,.proposal-dialog .dialog-head h2{font-size:28px;line-height:1.25}.dialog-head p,.option-dialog .dialog-head p,.technical-dialog .dialog-head p,.proposal-dialog .dialog-head p,.shared-picker-dialog .dialog-head p{font-size:15px;line-height:1.6}.choice-info h3,.option-dialog .choice-info h3{font-size:20px;line-height:1.35}.choice-info p,.option-dialog .choice-info p,.shared-choice-copy p{font-size:14px;line-height:1.65}.choice-info small,.option-dialog .choice-info small,.choice-info .choice-price,.option-dialog .choice-info .choice-price,.shared-scope,.shared-choice-copy .shared-scope{font-size:13px;line-height:1.55}.dialog-help,.option-dialog .dialog-help,.technical-dialog .dialog-help{font-size:13px;line-height:1.65}.dialog-footer .selected-summary,.option-dialog .dialog-footer .selected-summary,.shared-picker-dialog .dialog-footer .selected-summary,.proposal-dialog .dialog-footer .selected-summary{font-size:13px;line-height:1.5}.dialog-footer .selected-summary strong{font-size:14px}.dialog-footer{gap:20px;align-items:center}.selected-summary{min-width:0;overflow-wrap:anywhere}.dialog-buttons{flex-wrap:wrap}.resource-list a,.resource-list button,.command-item,.kbd-help{font-size:14px;line-height:1.6}.resource-list small,.command-item small{font-size:12px;line-height:1.5}.toast{font-size:14px;line-height:1.5;max-width:min(520px,calc(100vw - 32px))}
th,.pipeline-table th{font-size:12px;line-height:1.5;letter-spacing:.06em}td,.pipeline-table td,.catalog-table-wrap table{font-size:14px;line-height:1.6}td small,.pipeline-table td small,.catalog-table-wrap td small{font-size:12px;line-height:1.55}.status-label,.pipeline-badge,.workspace-badge,.review-status,.dealer-status{font-size:12px;line-height:1.5}.pipeline-link{font-size:14px;line-height:1.5}.pipeline-filters label{font-size:13px;flex-wrap:wrap}.pipeline-metrics small,.pipeline-metrics span{font-size:13px;line-height:1.5}.pipeline-panel,.panel{min-width:0}.table-wrap{overflow-x:auto}.metric small,.metric span{font-size:13px;line-height:1.5}.routing-card h3{font-size:16px;line-height:1.4}.routing-card p,.routing-card>span{font-size:13px;line-height:1.6}
.workspace-card p,.prep-content .prep-intro,.cloud-welcome>p:not(.section-kicker),.dealer-admin-detail>section>p{font-size:14px;line-height:1.7}.workspace-footnote{font-size:13px!important;line-height:1.65!important}.workspace-card-heading>span,.workspace-card-heading span,.cloud-access,.cloud-workspace-label,.cloud-project span,.review-queue-project small,.review-count span,.review-timeline small{font-size:13px;line-height:1.55}.cloud-signin-card h3,.workspace-card h3{line-height:1.3}.workspace-account-bar span{font-size:13px;line-height:1.6}.cloud-actions{gap:12px}.cloud-project strong{font-size:15px;line-height:1.4}.cloud-project-row{align-items:center}.review-queue-project strong{font-size:15px;line-height:1.5}.prep-step strong,.prep-opening-tab strong,.prep-opening-heading span,.prep-project-strip small,.prep-hint{font-size:14px;line-height:1.5}.prep-step small,.prep-progress p,.prep-opening-tab small,.prep-facts dt,.prep-step-number{font-size:12px;line-height:1.5}.prep-facts dd{font-size:15px;line-height:1.6}.prep-step{min-width:0}.prep-content h2{font-size:28px;line-height:1.3}.workspace-notice{font-size:14px;line-height:1.6}.prep-progress strong{font-size:14px}
.dealer-admin-workspace .section-kicker,.dealer-directory-heading span,.dealer-directory-item span,.dealer-company-facts dt,.dealer-member-identity small,.dealer-activity time,.dealer-fact-label,.dealer-admin-detail .workspace-card-heading>span{font-size:12px;line-height:1.5}.dealer-directory-item strong,.dealer-member-identity strong,.dealer-company-facts dd,.dealer-activity li{font-size:14px;line-height:1.5}.dealer-create summary{font-size:14px;line-height:1.5}.dealer-detail-tabs button{padding:14px 15px}.dealer-overview-grid p,.dealer-overview-footer p{font-size:14px!important;line-height:1.65}.dealer-overview-grid .btn,.dealer-overview-footer .btn{font-size:13px}.dealer-setup-note p{font-size:14px!important}.dealer-setup-note strong{font-size:13px}.dealer-status{white-space:normal}.catalog-format,.catalog-format p,.catalog-import-steps{font-size:13px;line-height:1.65}.catalog-format code{font-size:12px;line-height:1.7}.catalog-history-row strong{font-size:15px;line-height:1.5}.catalog-history-row small,.catalog-table-wrap caption,.catalog-source-data summary{font-size:13px;line-height:1.5}
.booklet-caption strong{font-size:17px}.booklet-caption small,.booklet-open,.booklet-back,.option-booklet-nav>span{font-size:13px;line-height:1.5}.booklet-caption{flex-wrap:wrap;align-items:start}.booklet-open{min-height:32px;white-space:normal}.fabric-booklet-heading p{font-size:14px;line-height:1.65}.booklet-collection{font-size:14px;line-height:1.4}.booklet-browse-note{font-size:12px;line-height:1.5;white-space:normal}.booklet-edition,.booklet-cover-foot{font-size:10px;line-height:1.5}.booklet-brand{line-height:1.15}.booklet-cover{padding-top:24px}.booklet-swatches{min-height:60px}.booklet-edition{margin-bottom:14px}
.photo-help,.photo-sidebar .photo-help,.photo-empty p,.photo-preview-note,.photo-notice,.photo-status{font-size:13px;line-height:1.65}.photo-sidebar label:not(.photo-quote-toggle),.photo-quote-toggle small,.photo-placement-row small,.photo-placement-item>.photo-placement-row>small,.photo-slider-row .photo-slider-labels{font-size:13px;line-height:1.5}.photo-stage-caption,.photo-stage-caption small,.photo-stage-toolbar>small,.photo-footer-status,.photo-footer-status small{font-size:12px;line-height:1.5}.photo-view-modes>button,.photo-view-actions>button,.photo-upload-actions>button,.photo-upload-actions>.btn,.photo-position-presets>button,.photo-reset-button,.photo-footer-actions>.btn,.photo-footer-actions>button,.photo-preview-actions .btn{font-size:13px;line-height:1.4;min-height:44px}.photo-zoom-controls button{font-size:14px;min-width:40px;min-height:40px}.photo-zoom-controls output,.photo-zoom-controls>span{font-size:13px}.photo-sidebar input:not([type=checkbox]):not([type=range]),.photo-sidebar select{font-size:16px;min-height:46px}.quote-mode-note,.quote-mode-label,.quote-unit-prices,.quote-section-note,.quote-dealer-banner,.quote-line-totals small{font-size:13px;line-height:1.6}
@media(max-width:1100px){.progress-meta{display:none}.step-btn,.progress-nav .step-btn{font-size:12px}.progress-nav{gap:8px}.step-line{min-width:8px}.heading-actions{justify-content:flex-start}}
@media(max-width:760px){:root{--type-body:16px;--type-control:14px;--type-heading:28px}.page-heading{gap:16px;flex-wrap:wrap}.page-heading h1{font-size:28px;line-height:1.25}.subtitle,.page-heading>div>p{font-size:15px;line-height:1.6}.page{padding-bottom:40px}.hero-copy h2,.pipeline-hero h2{font-size:30px;line-height:1.25;letter-spacing:-.01em}.hero-copy p,.product-info p,.section-head p,.callout-banner p,.material-content p{font-size:14px}.product-info h3,.material-content h3{font-size:18px}.product-info{padding:18px 16px}.product-specs{font-size:12px;gap:8px}.product-footer{align-items:flex-start;gap:8px}.product-configure{font-size:14px;padding:10px 0;min-height:44px}.catalog-section-head .tabs{flex-wrap:wrap}.filter-bar .tabs{flex-wrap:wrap}.filter-bar .tab,.catalog-section-head .tab{font-size:13px;min-height:44px}.step-btn,.progress-nav .step-btn{font-size:12px;gap:5px}.step-num{font-size:12px;min-width:24px;min-height:24px}.progress-nav{gap:5px;overflow-x:auto;justify-content:space-between}.progress-nav .step-line{min-width:5px;flex:1}.visual-specs>div{font-size:13px}.livebar{min-height:104px;padding:14px 18px;gap:14px;align-items:center}.live-price strong{font-size:23px}.live-price>span,.live-price small{font-size:12px}.live-price>.live-dealer,.live-dealer b{font-size:13px}.live-actions .btn,.livebar:has(.live-dealer) .live-actions .btn{font-size:14px;min-height:48px;padding:12px 16px}.live-note{display:none}.live-values{gap:14px}.live-price{min-width:0}.dialog-head h2,.option-dialog .dialog-head h2,.technical-dialog .dialog-head h2,.proposal-dialog .dialog-head h2{font-size:25px;line-height:1.3}.dialog-head p,.option-dialog .dialog-head p,.technical-dialog .dialog-head p,.proposal-dialog .dialog-head p{font-size:14px;line-height:1.6}.dialog-footer{gap:14px;flex-wrap:wrap}.dialog-footer .selected-summary,.option-dialog .dialog-footer .selected-summary,.proposal-dialog .dialog-footer .selected-summary{font-size:13px}.dialog-footer .btn{font-size:14px;min-height:46px}.choice-info h3,.option-dialog .choice-info h3{font-size:19px}.choice-info p,.option-dialog .choice-info p{font-size:14px}.choice-info small,.option-dialog .choice-info small{font-size:12px}.choice-info .choice-price,.option-dialog .choice-info .choice-price{font-size:13px}.option-dialog .dialog-body{min-height:0}.prep-content h2{font-size:25px}.prep-step strong{font-size:13px}.prep-step small{font-size:12px}.workspace-journey{gap:4px}.workspace-journey button{font-size:12px;min-height:44px;padding:8px 10px}.journey-pending{font-size:12px;line-height:1.5}.prep-project-strip{padding:16px;align-items:flex-start;flex-wrap:wrap}.prep-project-strip>div{gap:8px}.prep-footer{flex-wrap:wrap}.dealer-detail-tabs button{font-size:13px;padding:14px 10px}.booklet-caption strong{font-size:16px}.booklet-caption small,.booklet-open{font-size:12px}.booklet-collection{font-size:12px}.booklet-cover-foot{font-size:10px}.catalog-history-row{flex-wrap:wrap}.photo-head h2{font-size:25px;line-height:1.3}}
@media(max-width:480px){.topbar{gap:10px}.top-actions{gap:9px}.topbar .demo-pill{display:none}.cloud-top,.topbar .cloud-top{font-size:13px!important;min-height:44px}.topbar .avatar{font-size:13px;min-width:36px;min-height:36px}.product-grid{grid-template-columns:1fr}.product-photo{height:210px}.product-info p{max-width:55ch}.product-specs{font-size:13px}.product-footer{flex-wrap:nowrap;align-items:center}.heading-actions{width:100%;justify-content:flex-start}.heading-actions .btn{flex:1 1 auto}.filter-bar .tab{font-size:13px}.material-grid:not(.fabric-booklets){gap:12px}.material-content{padding:15px 13px}.material-content h3{font-size:17px;line-height:1.35;overflow-wrap:anywhere}.material-content p{font-size:13px;line-height:1.55}.material-content small{font-size:12px;letter-spacing:.04em}.material-image .illustrated-label{font-size:12px}.booklet-edition{font-size:10px;line-height:1.2;margin-bottom:10px;letter-spacing:.02em}.booklet-cover-foot{display:none}.booklet-cover{padding:16px 12px 12px 21px}.booklet-cover-rule{margin:12px 0 8px}.booklet-brand{font-size:22px}.booklet-collection{font-size:12px;line-height:1.4}.booklet-swatches{min-height:38px;margin:12px -12px 0 -8px}.booklet-caption{flex-direction:column;gap:6px}.booklet-open{min-height:36px}.booklet-caption small{font-size:12px;line-height:1.5}.booklet-browse-note{display:none}.option-dialog .booklet-cover{padding-top:16px}.option-booklet-nav{flex-wrap:wrap;gap:6px}.option-booklet-nav>span{font-size:12px}.livebar{gap:12px}.live-actions .btn,.livebar:has(.live-dealer) .live-actions .btn{padding:12px 15px}.live-price strong{font-size:22px}.live-values{flex:1;min-width:0}.dialog-footer .dialog-buttons{width:100%;display:flex;gap:10px}.dialog-footer .dialog-buttons .btn{flex:1;min-width:0}.cloud-actions .btn{font-size:14px}.dealer-company-facts{gap:15px 22px}.dealer-detail-tabs{padding:0 5px}.dealer-detail-tabs button{font-size:13px;padding:13px 8px}.dealer-overview-grid strong{font-size:19px}.prep-opening-heading{flex-wrap:wrap}.quote-mode-label{font-size:13px}.quote-mode-note{font-size:13px}.shared-order-heading{flex-wrap:wrap}.shared-scope{font-size:12px}}
