/* Shared FaxHub / RichFax visual language. Loaded after component styles. */
:root{color-scheme:light dark;--bg:#f7f9fa;--surface:#fff;--soft:#f0f4f4;--line:#dfe6e6;--ink:#172c30;--muted:#526568;--faint:#64787b;--blue:#087e76;--blue-dark:#06665f;--tint:#e9f5f2;--ok:#276048;--warning:#835316;--danger:#b52d36}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.6 "Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit}button,a,input,select,textarea,summary{scroll-margin-top:28px}a{color:var(--blue)}h1,h2,h3,h4{color:var(--ink);font-weight:800;letter-spacing:-.025em}p,small,.muted{color:var(--muted)}:focus-visible{outline:3px solid var(--blue);outline-offset:3px}input,select,textarea{accent-color:var(--blue)}
header{height:76px;max-width:1240px;margin:auto;padding:0 32px;background:var(--bg);border-color:var(--line);gap:22px}.brand,header .brand{font-size:16px;font-weight:800;color:var(--ink)}.brand .by{font-size:10px;color:var(--muted)}header .logo{width:30px;height:30px}header nav a{font-size:.82rem;color:var(--muted)}.account-trigger{font:600 .82rem/1.6 inherit;color:var(--ink)}
.button,.hero-actions .button{background:#087e76;color:#fff;border:1px solid #087e76;border-radius:7px;padding:13px 28px;font-size:16px;font-weight:700;line-height:1.5;box-shadow:none}.button:hover{background:#06665f;border-color:#06665f}.button:disabled{opacity:.55}.button.small{font-size:.82rem;padding:10px 16px}.outline-button{background:var(--surface);color:var(--blue);border:1px solid var(--line);border-radius:7px;padding:10px 16px;font-size:.82rem;font-weight:700;line-height:1.6;box-shadow:none}.outline-button:hover{border-color:var(--blue);background:var(--tint)}.text-button{color:var(--blue);font-family:inherit;font-size:.82rem}.danger{color:var(--danger)}
.hero{max-width:1240px;display:block;text-align:center;padding:60px 32px 38px;margin:auto}.hero>div{max-width:780px;margin:auto}.hero h1{font-size:clamp(2.2rem,4.8vw,3.8rem);font-weight:800;line-height:1.13;letter-spacing:-.055em;margin:20px 0}.hero h1 span{color:var(--blue)}.eyebrow{font-size:.7rem;letter-spacing:.17em;font-weight:800;color:var(--blue)}.dot{background:var(--blue)}.hero>div>p{font-size:16px;line-height:1.8;max-width:650px;margin:0 auto}.hero-photo{display:none}.hero-price{justify-content:center;max-width:530px;margin:24px auto;background:var(--surface);border-color:var(--line);border-radius:8px;text-align:left}.hero-price>strong{color:var(--blue);font-size:28px}.hero-price>div{color:var(--ink);font-size:.82rem;flex:initial}.hero-price small{color:var(--muted);font-size:.75rem}.hero-actions,.checks{justify-content:center}.hero-actions>a:last-child{font-size:.82rem}.checks{font-size:.75rem;color:var(--muted)}
.service-promises{max-width:1176px;background:var(--surface);border-color:var(--line);border-radius:8px;margin:0 auto 40px}.service-promises strong{font-size:.85rem}.service-promises p{font-size:.78rem}.promise-icon,.step>span,.three article>span{background:var(--tint);color:var(--blue);border-radius:6px}.workspace{background:var(--bg);border-color:var(--line);padding:36px max(32px,calc((100vw - 1176px)/2)) 48px}.section-title h2{font-size:1.6rem;letter-spacing:-.035em}.section-title>p{font-size:.9rem;line-height:1.8}.workspace .app-grid{grid-template-columns:minmax(0,1fr) 350px;gap:24px}.workspace form,.quote{background:var(--surface);border:1px solid var(--line);border-radius:9px;box-shadow:none}.step h3,.quote-heading h3{font-size:1.12rem;letter-spacing:-.025em;font-weight:800}.step small{color:var(--muted);font-size:.75rem}.drop{background:var(--soft);border-color:var(--line);border-radius:7px;color:var(--ink)}.drop:hover,.drop:focus-within{border-color:var(--blue);background:var(--tint)}.drop small,.drop>small,.drop span small{color:var(--muted);font-size:.78rem}.fields label,#auth-form label,.security-form label,.verification-form label,.order-filters label,.inbox-filters label{color:var(--ink);font-size:.82rem;font-weight:600;line-height:1.6}.fields label small,#auth-form small{font-size:.75rem;color:var(--muted)}.fields input,.fields select,.fields textarea,#auth-form input,.security-form input,.verification-form input,.order-filters input,.order-filters select,.inbox-filters input,.inbox-filters select{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:11px 12px;font:400 16px/1.5 "Plus Jakarta Sans",system-ui,sans-serif;min-width:0}.fields input::placeholder,.fields textarea::placeholder{color:var(--faint)}.toggle-row{background:var(--soft);border-color:var(--line);border-radius:7px;color:var(--ink);font-size:.85rem}.toggle-row small,.toggle-row .free{font-size:.75rem;color:var(--muted)}.quote>p,.quote-row{font-size:.82rem;color:var(--muted)}.quote-row span{color:var(--muted)}.quote-row strong,.total strong{color:var(--ink)}.total{border-color:var(--line)}.total>strong{font-size:28px}.total small,.quote-foot,.local-note{color:var(--muted);font-size:.75rem}.help-card,.launch-note{background:var(--soft);border-color:var(--line);border-radius:8px}.help-card p{font-size:.82rem}.file-item,.page-card,.page-tools,.preview-aids,.intake-hint,.pdf-hint,.options-summary{background:var(--soft);border-color:var(--line);color:var(--ink)}
dialog{color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:28px;box-shadow:0 20px 80px #172c3026;max-width:min(860px,calc(100vw - 32px))}dialog::backdrop{background:#10242680;backdrop-filter:blur(3px)}.dialog-head{border-color:var(--line);gap:18px}.dialog-head h2{font-size:1.6rem;line-height:1.25;letter-spacing:-.035em}.dialog-head>button{background:var(--soft);color:var(--muted);border:1px solid var(--line);border-radius:7px;min-width:40px;min-height:40px}dialog p{font-size:.85rem;line-height:1.8}#auth-form,.security-form,.verification-form,#contact-form{background:transparent;border:0;box-shadow:none;border-radius:0}#auth-form{padding:20px 0 0}#auth-form label{display:grid;gap:7px}#auth-form input{margin-bottom:16px}.auth-buttons{gap:12px}.account-toolbar{border-color:var(--line);font-size:.85rem}.account-tabs{border-color:var(--line);gap:22px}.account-tabs button{font-size:.85rem;font-weight:700;color:var(--muted);padding:14px 0}.account-tabs button.active{color:var(--blue);border-color:var(--blue)}.security-notice,.order-help,.order-empty{background:var(--soft);border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:.85rem}.saved-item,.order-item,.inbox-item{background:var(--surface);border-color:var(--line);border-radius:8px;font-size:.85rem}.saved-item small,.order-details,.order-details summary,.order-explanation,.order-results-bar p{font-size:.78rem;color:var(--muted)}.order-details summary{color:var(--blue)}.order-progress li{border-color:var(--line);font-size:.7rem;color:var(--muted)}.order-progress li[aria-current=step]{background:var(--tint);color:var(--blue);border-color:var(--blue)}.order-state{background:var(--soft);color:var(--ink);font-size:.7rem}.order-state[data-group=delivered],.order-progress .observed-step{background:var(--tint);color:var(--ok)}.order-state[data-group=review]{background:#fff3de;color:#835316}.order-details dt{color:var(--muted)}.order-details dd{color:var(--ink)}
.three article,.faq details,.price-card,.guide-grid article,.photo-story,.photo-tag{background:var(--surface);border-color:var(--line);border-radius:8px;color:var(--ink);box-shadow:none}.three h3{font-size:1.12rem}.three p,.faq details p,.photo-story p{font-size:.85rem;color:var(--muted)}.pricing{background:var(--soft);border-color:var(--line);border-radius:9px}.pricing h2{font-size:2rem}.big-price{color:var(--ink)}.faq summary{font-size:.9rem;color:var(--ink)}.faq details[open],.guide-grid article:hover,.guide-grid article:focus-within{background:var(--soft);border-color:var(--blue)}.photo-tag small,.photo-story-note,footer small{color:var(--muted)}footer{border-color:var(--line);font-size:.78rem}.mobile-guide-nav{background:var(--soft);border-color:var(--line)}.mobile-guide-nav a{color:var(--muted)}
@media(prefers-color-scheme:dark){:root{--bg:#0e191b;--surface:#162426;--soft:#1d3032;--line:#304447;--ink:#e3efed;--muted:#b0c4c2;--faint:#93aaa8;--blue:#54c9b8;--blue-dark:#39ac9c;--tint:#1d3935;--ok:#7bd9ac;--danger:#ff9696}.button:hover{background:#096d67}.order-state[data-group=review]{background:#40331f;color:#f5ce8c}.logo{border-radius:7px}}
@media(max-width:900px){header{padding:0 22px;gap:14px}header nav{display:none}.service-promises{margin-left:22px;margin-right:22px}.workspace .app-grid{grid-template-columns:minmax(0,1fr) 300px}}
@media(max-width:650px){header{height:76px;padding:0 16px;gap:12px}header .brand{font-size:16px;gap:6px}header .brand .by{display:none}header .button.small{font-size:.75rem;padding:10px 12px;gap:8px}.account-trigger{font-size:.75rem;min-height:44px}.hero{padding:36px 22px 26px}.hero h1{font-size:clamp(2.2rem,8.8vw,3rem);letter-spacing:-.055em}.hero>div>p{font-size:16px}.hero-price{padding:14px;gap:10px;text-align:center}.hero-price>div{min-width:180px}.hero-actions{flex-wrap:wrap;gap:16px}.hero-actions .button{font-size:16px}.checks{font-size:.72rem;gap:10px}.service-promises{margin-bottom:24px}.workspace{padding:28px 18px 36px}.workspace .app-grid{grid-template-columns:minmax(0,1fr)}.workspace form{padding:20px}.step h3{font-size:1rem}.step small{font-size:.7rem}.section-title h2{font-size:1.6rem}.fields label,.toggle-row{font-size:.82rem}.toggle-row small{font-size:.75rem}dialog{padding:22px 18px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.dialog-head h2{font-size:1.45rem}.account-tabs{gap:18px;overflow-x:auto}.account-tabs button{font-size:.8rem;min-height:44px}.auth-buttons{flex-wrap:wrap}.outline-button,.text-button{min-height:44px}.saved-item{overflow-wrap:anywhere}.order-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.order-item>div:last-child{max-width:100%}.service-promises strong{font-size:.85rem}.service-promises p{font-size:.78rem}}
.order-freshness,.recovery-picker{background:var(--soft);border-color:var(--line);color:var(--muted);border-radius:8px}.order-freshness strong{color:var(--ink);font-size:.78rem}.order-freshness small{color:var(--muted);font-size:.75rem}.order-freshness[data-state=error],.order-freshness[data-state=retry]{background:var(--soft);border-color:var(--warning)}.order-help{padding:16px}.order-help summary{color:var(--blue)}.order-help .help-note,.sending-options p{color:var(--muted)}.order-help textarea,.recovery-picker select{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:7px}.sending-options{border-color:var(--line)}.auth-buttons>.button{flex:1}.auth-buttons>.outline-button{flex:0 0 auto;min-width:150px}.account-trigger{font-family:inherit;font-size:.82rem;font-weight:600}
header .logo,footer .logo{filter:hue-rotate(-55deg) saturate(.7)}.mobile-guide-nav a[href*="play.google.com"]{color:var(--blue)}

/* Refinement: readable preparation tools and consistent account surfaces. */
.document-tools,.page-viewer,.photo-tools,.pdf-hints{background:var(--soft);border-color:var(--line);border-radius:8px}
.page-choice{background:var(--surface);color:var(--ink);border-color:var(--line)}
.page-choice[aria-current=true]{background:var(--tint);border-color:var(--blue)}
.page-choice strong{font-size:.82rem}.page-choice small,.preview-view-note,.page-mode-note,.pages-status,.intake-panel p,.contact-pagination span{font-size:.78rem;color:var(--muted);line-height:1.7}
.preview-aids select,.contact-filters input,.contact-filters select{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:7px;font:400 16px/1.5 "Plus Jakarta Sans",system-ui,sans-serif;padding:10px 12px}
.preview-aids input{accent-color:var(--blue)}.contact-filters label{font-size:.82rem;font-weight:600;color:var(--ink)}
#account-dialog:has(#auth-view:not([hidden])){width:520px}
#auth-form{margin:0;padding-top:16px}#auth-form input{width:100%;margin-bottom:10px}
#auth-form small{margin-top:-4px;margin-bottom:12px}.auth-buttons{display:flex;align-items:stretch;margin-top:8px}
#forgot-password{margin-top:12px}#account-status:empty,#order-message:empty{display:none}
#review-content{display:block;margin:20px 0;border:1px solid var(--line);border-radius:8px;overflow:hidden}
#review-content>.quote-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;padding:12px 14px;margin:0;border-bottom:1px solid var(--line);font-size:.85rem}
#review-content>.quote-row:last-child{border-bottom:0;background:var(--soft)}
#review-content strong{overflow-wrap:anywhere;text-align:right;color:var(--ink)}
#review-dialog>.button,#review-dialog>.outline-button{width:100%;justify-content:center;margin-top:10px}
#review-dialog .launch-note{font-size:.82rem;line-height:1.8;padding:14px 16px}
.drop>span:first-of-type{background:var(--tint);color:var(--blue);border-radius:8px}
.account-tabs button:focus-visible,.page-choice:focus-visible,.preview-aids select:focus-visible,.contact-filters input:focus-visible,.contact-filters select:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
@media(min-width:651px) and (max-width:900px){.workspace .app-grid{grid-template-columns:minmax(0,1fr)}.workspace .app-grid>aside{position:static}.fields{column-gap:18px}.mobile-guide-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;padding:10px 22px}.mobile-guide-nav a{font-size:.78rem;min-height:36px;display:inline-flex;align-items:center}}
@media(max-width:650px){#account-dialog:has(#auth-view:not([hidden])){width:calc(100vw - 24px)}.auth-buttons{flex-direction:column}.auth-buttons>.button,.auth-buttons>.outline-button{flex:auto;width:100%;min-width:0;justify-content:center}.step{flex-wrap:wrap;row-gap:7px}.step small{margin-left:40px;flex-basis:calc(100% - 40px)}.step h3{flex:1}.document-tools .outline-button{font-size:.82rem}.pages-controls .outline-button{font-size:.78rem;min-height:44px}.mobile-guide-nav{gap:4px 12px;padding:8px 14px}.mobile-guide-nav a{font-size:.72rem}.pages-list{gap:8px}#review-content>.quote-row{padding:10px;font-size:.8rem;gap:10px}}
@media(prefers-reduced-motion:no-preference){.button,.outline-button,.page-choice{transition:background-color .15s,border-color .15s}.fields input,.fields textarea{transition:border-color .15s}}
#review-dialog .launch-note{color:var(--muted)}#review-dialog #save-order{background:#087e76;color:#fff;border-color:#087e76;font-size:16px;font-weight:700}#review-dialog #save-order:hover{background:#06665f}#review-dialog #download{background:var(--surface);border-color:var(--line);color:var(--blue);font-size:.82rem;padding:10px 16px}#review-dialog #download:hover{background:var(--tint);border-color:var(--blue)}
@media(max-width:900px){.mobile .mobile-downloads{margin-left:0;max-width:100%;min-width:0;flex-basis:100%}.mobile-copy,.mobile-downloads>*{min-width:0;max-width:100%}}

/* Mobile flow audit: consistent navigation, touch targets and field rhythm. */
@media(max-width:900px){.mobile-guide-nav{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;padding:0 20px;gap:22px;scroll-padding-inline:20px;scrollbar-width:thin}.mobile-guide-nav a{flex:0 0 auto;white-space:nowrap;min-height:48px;padding:10px 0;font-size:.82rem;line-height:1.6}}
@media(max-width:650px){header{padding-inline:20px;gap:10px}header .button.small{min-height:44px;font-size:.82rem;padding:10px 12px}header .brand{min-height:44px}.account-trigger{font-size:.82rem}.hero-actions{align-items:center}.hero-actions>a:last-child{min-height:44px;display:inline-flex;align-items:center;font-size:.82rem}.fields label{display:block}.fields label>span{display:inline;font-size:.75rem;color:var(--muted)}.fields label>input,.fields label>select,.fields label>textarea{display:block;width:100%;margin-top:7px}.fields label>small{display:block;margin-top:6px}.workspace{padding-inline:20px}.workspace form{padding:20px}.button,.outline-button,.text-button{min-height:44px}.dialog-head>button{min-width:44px;min-height:44px}#account-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}.auth-buttons>.button{font-size:16px}.auth-buttons>.outline-button{font-size:.82rem}.fields{row-gap:20px}}
@media(max-width:359px){header{padding-inline:16px;gap:7px}header .brand{gap:5px}header .logo{width:26px;height:26px}header .button.small{font-size:.75rem;padding-inline:9px}.account-trigger{font-size:.75rem}}
