/* Authenticated product typography. Keep control geometry and semantic colors in their components. */
:root{
 --type-page-title:24px;--type-dialog-title:18px;--type-section-title:14px;
 --type-description:13px;--type-body:13px;--type-label:12px;--type-meta:11px;
 --type-control:13px;--type-placeholder:13px;--type-action:12px;--type-eyebrow:9px;
}
@media(max-width:700px){:root{--type-page-title:22px;--type-dialog-title:17px;--type-description:12px}}
:root body.in-workspace{font-size:var(--type-body);-webkit-text-size-adjust:100%;text-size-adjust:100%}
:root body.in-workspace .workspace-heading>h1{font-size:var(--type-page-title);font-weight:650;line-height:1.25;letter-spacing:-.4px}
:root body.in-workspace .workspace-heading>:is(.workspace-description,p:last-child:not(.eyebrow)){font-size:var(--type-description);font-weight:400;line-height:1.5;margin-top:6px}
:root body.in-workspace :is(.workspace-heading,dialog) .eyebrow{font-size:var(--type-eyebrow);line-height:1.4;letter-spacing:1.2px}
:root body.in-workspace dialog>h2,
:root body.in-workspace dialog>header h2,
:root body.in-workspace dialog :is(.modal-compact-header,.customer-dialog-header,.os-dialog-header,.settings-panel-header) h2,
:root body.in-workspace :is(.inventory-dialog,.inventory-editor,.label-dialog,.preference-dialog,.whatsapp-qr-dialog) h2,
:root body.in-workspace #unit-dialog h2{font-size:var(--type-dialog-title);font-weight:650;line-height:1.3;letter-spacing:-.3px}
:root body.in-workspace dialog :is(.modal-compact-header,.customer-dialog-header)>div>p:not(.eyebrow),
:root body.in-workspace dialog :is(.modal-compact-header,.customer-dialog-header)>p:not(.eyebrow){font-size:var(--type-meta);font-weight:400;line-height:1.5}
:root body.in-workspace dialog :is(h3,legend,.address-heading,.os-stage-title){font-size:var(--type-section-title);font-weight:600;line-height:1.4}
:root body.in-workspace :is(dialog,#workspace-content,.chat-preview) :is(.customer-fields label,.os-field,.inventory-field,.settings-field,form>label,.modal-content-scroll>label){font-size:var(--type-label);font-weight:500;line-height:1.4}
:root body.in-workspace :is(dialog,#workspace-content,.chat-preview) :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]),select,textarea):not(.chat-composer textarea){font-family:inherit;font-size:var(--type-control);font-weight:400;line-height:1.4}
:root body.in-workspace :is(dialog,#workspace-content,.chat-preview) .listing-size-control select{font-size:13px}
:root body.in-workspace dialog :is(.os-client-option,.os-part-option) strong{font-size:var(--type-body);font-weight:500;line-height:1.4}
:root body.in-workspace dialog :is(.os-client-option,.os-part-option) small{font-size:var(--type-meta);font-weight:400;line-height:1.4}
:root body.in-workspace .os-client-picker .os-picker .os-client-option{min-height:44px;padding:8px 12px;gap:12px}
:root body.in-workspace .os-client-picker .os-note{font-size:var(--type-meta);line-height:1.45}
:root body.in-workspace :is(dialog,#workspace-content,.chat-preview) :is(.os-field,.customer-fields) :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]),select){height:44px;min-height:44px;padding:8px 10px}
:root body.in-workspace :is(dialog,#workspace-content,.chat-preview) :is(input,textarea):not(.chat-composer textarea)::placeholder{font-size:var(--type-placeholder);font-weight:400;line-height:1.4;opacity:1;color:var(--text-placeholder)}
:root body.in-workspace :is(dialog,#workspace-content,.chat-preview) input::-webkit-datetime-edit{font-family:inherit;font-size:inherit;font-weight:400}
:root body.in-workspace :is(dialog,#workspace-content,.chat-preview) :is(.field-hint,.inventory-field-hint,.field-validation,.customer-form-hint,.cep-status){font-size:var(--type-meta);font-weight:400;line-height:1.45}
:root body.in-workspace :is(dialog,#workspace-content,.chat-preview) :is(.submit-button,.glass-button):not(.chat-send){font-size:var(--type-action);line-height:1.4}
:root body.in-workspace .team-profile-card>.operations-copy>strong{font-size:16px;font-weight:600;line-height:1.35}
:root body.in-workspace .team-profile-card>.operations-copy>.team-profile-role{font-size:var(--type-label);line-height:1.4}
:root body.in-workspace .team-profile-card .team-profile-avatar{font-size:22px}
:root body.in-workspace .settings-module-card>strong{font-size:16px;font-weight:600;line-height:1.35}
:root body.in-workspace dialog label{font-size:var(--type-label);font-weight:500;line-height:1.4}
:root body.in-workspace dialog :is(.part-supplier-option,.category-list-item,.category-switch-row,.preference-option,.settings-row-copy) strong{font-size:var(--type-body);line-height:1.4}
:root body.in-workspace dialog :is(.part-supplier-option,.category-switch-row) small{font-size:var(--type-meta);line-height:1.4}
:root body.in-workspace dialog :is(.whatsapp-description,.whatsapp-qr>span,.category-picker-header>p,.settings-row-copy>span){font-size:var(--type-description);line-height:1.5}
:root body.in-workspace .chat-preview .chat-preview-search{height:44px;min-height:44px;box-sizing:border-box}
:root body.in-workspace .chat-preview .chat-preview-search input{height:42px;min-height:0;padding:0;line-height:1.4}
@media(max-width:700px){:root body.in-workspace .team-profile-card>.operations-copy>strong{font-size:13px}:root body.in-workspace .team-profile-card>.operations-copy>.team-profile-role{font-size:11px}}
/* Preserve native focus zoom behavior and user pinch zoom on Apple touch devices. */
@supports(-webkit-touch-callout:none){@media(max-width:700px){:root{--type-control:16px}}}

/* Branch stock quantities share the same reading scale as other catalog cells. */
:root body.in-workspace .products-section .catalog-stock strong{font-size:var(--type-body);font-weight:400;line-height:1.5;color:var(--text-primary)}

/* Public marketing hierarchy: separate from compact operational controls. */
:root{--type-public-display:clamp(38px,5.6vw,76px);--type-public-heading:clamp(28px,3.2vw,42px);--type-public-lead:clamp(15px,1.5vw,18px);--type-public-price:34px}
