/* SERVED PROS portal v1.0.0 — scoped, Segoe-based, responsive, no external font services */
.sp-portal,.sp-admin{--sp-ink:#0a202b;--sp-mid:#3e586c;--sp-blue:#277eb3;--sp-aqua:#d4f4fa;--sp-line:#d9e7ee;--sp-font:"Segoe UI Variable","Segoe UI","Segoe UI Web (West European)",Arial,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--sp-font);color:var(--sp-ink)}
.sp-portal *,.sp-admin *{box-sizing:border-box}
.sp-portal h1,.sp-portal h2,.sp-portal h3,.sp-portal button,.sp-portal input,.sp-portal select,.sp-portal textarea,.sp-portal a{font-family:var(--sp-font)}
.sp-container{max-width:1170px;margin:0 auto;padding-left:24px;padding-right:24px}
.sp-hero{padding:75px 0 69px;text-align:center;background:radial-gradient(ellipse at 8% 6%,#caeffd 0,transparent 46%),radial-gradient(ellipse at 90% 15%,#e9d7fb 0,transparent 43%),linear-gradient(115deg,#eafaff 0%,#f8f5ff 58%,#ecfaf8 100%)}
.sp-eyebrow{font-size:11px;font-weight:800;letter-spacing:.15em;color:#497e9c;text-transform:uppercase;display:inline-block}
.sp-hero h1{font-size:clamp(38px,5vw,65px);letter-spacing:-.048em;line-height:1.09;font-weight:700;margin:22px 0 18px;color:#0a202b}
.sp-hero p{font-size:17px;line-height:1.7;max-width:710px;margin:0 auto;color:#526981}
.sp-main{background:radial-gradient(ellipse at 92% 5%,#f8eafa,transparent 36%),radial-gradient(ellipse at 8% 70%,#e3faff,transparent 42%),#f8fbfe;padding:59px 0 85px;min-height:440px}
.sp-grid{display:grid;gap:22px}.sp-two{grid-template-columns:minmax(0,1.55fr) minmax(270px,.85fr)}.sp-order-layout{grid-template-columns:minmax(0,1.55fr) minmax(270px,.85fr)}
.sp-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.sp-hub-card{min-height:278px}.sp-hub-number{font-size:36px;letter-spacing:-.06em;font-weight:700;color:#92d3e2;display:block;line-height:1.15;margin-bottom:11px}
.sp-card,.sp-job{padding:31px 30px;background:#fff;border:1px solid #dce9f2;border-radius:24px;box-shadow:0 9px 27px rgba(23,60,85,.045)}
.sp-card h2,.sp-job h2{font-size:25px;letter-spacing:-.027em;line-height:1.2;font-weight:680;color:#0a202b;margin:0 0 17px}
.sp-card h3{font-size:17px;margin:27px 0 12px;color:#17364d}.sp-card p,.sp-job p,.sp-hub-disclaimer{font-size:14px;line-height:1.72;color:#51687d}
.sp-hub-card{display:flex;flex-direction:column}.sp-hub-card h2{margin:12px 0 4px}.sp-hub-card .sp-button{align-self:flex-start;margin-top:auto}
.sp-hub-disclaimer{text-align:center;max-width:900px;margin:27px auto 0}
.sp-side{background:linear-gradient(155deg,#f6fcff,#f9f4ff)}
.sp-checks{list-style:none;padding:0;margin:18px 0 27px;display:grid;gap:14px}
.sp-checks li{font-size:14px;line-height:1.5;display:flex;gap:10px;color:#4c6478}.sp-checks li:before{content:'✓';font-weight:bold;border-radius:99px;background:#d6f1f5;color:#167397;display:inline-grid;place-items:center;flex:0 0 24px;height:24px}
.sp-button{display:inline-flex;gap:12px;justify-content:center;align-items:center;background:#0a202b;color:#fff!important;text-decoration:none!important;font-weight:680;border:1px solid #0a202b;border-radius:99px;padding:13px 23px;font-size:14px;line-height:1.3;min-height:46px;cursor:pointer;transition:transform .18s,box-shadow .18s}
.sp-button:hover,.sp-button:focus-visible{color:#fff!important;transform:translateY(-1px);box-shadow:0 7px 15px rgba(10,32,43,.16)}
.sp-button-light{background:#fff;color:#0a202b!important;border-color:#bdcdd9}.sp-button-light:hover{color:#0a202b!important}
.sp-full{width:100%;display:flex}.sp-actions{display:flex;gap:13px;flex-wrap:wrap;margin:25px 0 0;justify-content:center}
.sp-centered{text-align:center;max-width:730px;margin:0 auto;padding:52px 27px}.sp-centered p{max-width:540px;margin:0 auto}
.sp-form{display:flex;flex-direction:column;gap:18px;margin-top:25px}.sp-form label:not(.sp-consent){display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;color:#29465b}
.sp-form input:not([type=checkbox]),.sp-form select,.sp-form textarea{display:block;min-height:46px;width:100%;border:1px solid #bdceda;border-radius:10px;padding:11px 13px;background:#fff;color:#102b40;font-size:14px;font-weight:400}
.sp-form input:focus-visible,.sp-form select:focus-visible,.sp-form textarea:focus-visible{outline:3px solid #a4dfef;outline-offset:1px}
.sp-form textarea{resize:vertical}.sp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.sp-consent{display:flex;gap:12px;font-size:12px;color:#4b667c;line-height:1.65;align-items:flex-start}.sp-consent input{margin:4px 0 0;flex:0 0 17px;height:17px;accent-color:#0a202b}
.sp-trap{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.sp-small{font-size:12px!important;color:#647d92!important}.sp-link{font-size:13px;color:#1b75a1}.sp-alert{border:1px solid #aad7df;background:#ecfbfe;color:#124859;border-radius:12px;padding:15px 18px;font-size:14px;line-height:1.5;margin-bottom:22px}
.sp-estimate{font-size:55px;letter-spacing:-.07em;font-weight:740;color:#0a202b;line-height:1.2;margin:12px 0}
.sp-toolbar{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;font-size:13px;color:#4b6276;margin:0 0 22px;padding:17px 21px;background:#fff;border:1px solid #dce9f2;border-radius:13px}.sp-toolbar a{color:#1e71a2}
.sp-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:24px}.sp-stat{border:1px solid #dae8f1;border-radius:18px;background:white;padding:22px}.sp-stat strong{font-size:30px;display:block;color:#122f44}.sp-stat span{color:#63788c;font-size:12px}
.sp-inline-title{display:flex;gap:18px;align-items:center;justify-content:space-between;margin-bottom:18px}.sp-inline-title h2{margin:0}
.sp-table-scroll{overflow-x:auto}.sp-table{width:100%;border-collapse:collapse;min-width:650px}.sp-table th{text-align:left;color:#6e8090;font-size:12px;padding:13px 12px;background:#f4f9fb}.sp-table td{padding:16px 12px;border-bottom:1px solid #e6eff3;font-size:13px;color:#3e576b}
.sp-status{display:inline-flex;border-radius:999px;background:#e6f5fa;color:#145773;padding:6px 10px;font-size:11px;font-weight:700;line-height:1.3}
.sp-job{min-width:0}.sp-job .sp-form{margin-top:20px}.sp-job-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:15px}.sp-job-top h2{margin-bottom:0}
.sp-admin-card{background:#fff;border:1px solid #d5e3ec;border-radius:12px;padding:20px;margin:15px 20px 17px 0;max-width:1100px;box-shadow:0 3px 11px rgba(16,46,72,.05)}.sp-admin-card h2{font-size:19px;color:#142b3b}.sp-admin-card h2 small{font-size:12px;color:#47758a}.sp-admin-card p{line-height:1.6}.sp-admin-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:14px 0}.sp-admin-form label{display:flex;flex-direction:column;gap:5px;font-size:12px}.sp-admin-form input,.sp-admin-form select{max-width:260px}
@media(max-width:930px){.sp-two,.sp-order-layout{grid-template-columns:1fr}.sp-hub-grid{gap:14px}}
@media(max-width:620px){.sp-container{padding-left:15px;padding-right:15px}.sp-hero{padding:50px 0 49px}.sp-hero h1{font-size:38px}.sp-hero p{font-size:14px}.sp-main{padding:36px 0 57px}.sp-card,.sp-job{padding:23px 19px;border-radius:17px}.sp-form-row,.sp-hub-grid,.sp-stats{grid-template-columns:1fr}.sp-hub-card{min-height:0}.sp-inline-title{flex-wrap:wrap}.sp-actions{flex-direction:column}.sp-actions .sp-button{width:100%}}
/* v1.1 account detail, private files, activity timeline */
.sp-detail-grid{margin-top:26px;align-items:start}.sp-detail-grid>.sp-card{min-width:0}
.sp-timeline{padding:0 0 0 10px;margin:17px 0 0;list-style:none}
.sp-timeline li{display:flex;align-items:flex-start;gap:14px;border-left:2px solid #d6e5ee;margin:0 0 0 7px;padding:0 0 21px 15px;position:relative}
.sp-timeline-dot{background:#21afd4;position:absolute;left:-6px;top:3px;width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 3px #e7f5fa}
.sp-timeline strong{display:block;font-size:13px;line-height:1.5;color:#223e51}.sp-timeline small{display:block;font-size:11px;color:#7890a0;margin:5px 0 0}
.sp-doc-list{margin:16px 0;padding:0;list-style:none;display:grid;gap:12px}.sp-doc-list li{background:#f2faff;border:1px solid #d9eaf2;border-radius:12px;padding:13px 15px;display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:13px}.sp-doc-list li small{color:#668194}
.sp-file-link{color:#176e99;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.sp-disabled-notice{background:#fff8e7;border:1px solid #efe0b3;color:#806123!important;border-radius:12px;padding:15px;font-size:12px!important}
.sp-upload-form{padding-top:10px;border-top:1px solid #e3ecf3}
.sp-job-documents .sp-card{margin-top:18px;padding:19px;background:#f7fbff;box-shadow:none}.sp-job-documents .sp-card h2{font-size:18px}


/* SERVED PROS Portal 1.2 — Contrast correction (all dashboard pages).
   Dark legible typography even when loaded inside a different WordPress theme. */
.sp-portal,.sp-admin{--sp-ink:#0b2638;--sp-mid:#344b60;color:#0b2638!important}
.sp-portal :is(h1,h2,h3,h4,h5,h6),.sp-admin :is(h1,h2,h3,h4,h5,h6),
.sp-portal .sp-job h2,.sp-portal .sp-card h2,.sp-portal .sp-card h3,
.sp-admin .sp-admin-card h2,.sp-portal .sp-timeline strong,
.sp-portal .sp-estimate{color:#0b2638!important}
.sp-portal :is(p,li,th,td,dt,dd,legend,summary),
.sp-admin :is(p,li,th,td,dt,dd,legend,summary),
.sp-portal .sp-hub-disclaimer,.sp-portal .sp-card p,.sp-portal .sp-job p,
.sp-portal .sp-small,.sp-portal .sp-timeline small,
.sp-portal .sp-toolbar,.sp-portal .sp-stat span,
.sp-portal .sp-doc-list small,.sp-portal .sp-checks li,
.sp-portal .sp-table td,.sp-portal .sp-table th{color:#354c60!important}
.sp-portal :is(label,small),.sp-admin :is(label,small){color:#354c60!important}
.sp-portal input::placeholder,.sp-admin input::placeholder,
.sp-portal textarea::placeholder,.sp-admin textarea::placeholder{color:#455b70!important;opacity:1}
.sp-portal .sp-button:not(.sp-button-light),.sp-admin .sp-button:not(.sp-button-light),
.sp-portal .sp-status,.sp-admin .sp-status{font-weight:750}
.sp-portal .sp-button:not(.sp-button-light),.sp-admin .sp-button:not(.sp-button-light){color:#fff!important}
.sp-portal .sp-button-light,.sp-admin .sp-button-light{color:#0b2638!important}
.sp-portal .sp-status,.sp-admin .sp-status{color:#134d66!important}
.sp-portal a:not(.sp-button),.sp-admin a:not(.sp-button){color:#13527d}
.sp-portal .sp-disabled-notice{color:#705214!important}

/* v1.3 client intake, applicant onboarding, and partner compensation. */
.sp-ext .sp-fieldset{border:1px solid #dbe7ef;background:#fbfdff;border-radius:15px;padding:20px 19px 22px;margin:0;min-width:0;display:flex;flex-direction:column;gap:16px}
.sp-ext .sp-fieldset legend{font-weight:800;font-size:16px;color:#0b2638;padding:0 9px;letter-spacing:-.015em}
.sp-ext .sp-fieldset p{margin:0;line-height:1.6}
.sp-pay-offer{padding:17px 18px;border-radius:14px;background:#e7f7fb;border:1px solid #bce5ed;display:grid;gap:5px;margin:16px 0;color:#0b2638}
.sp-pay-offer strong{font-size:30px;color:#0b2638;letter-spacing:-.04em;line-height:1.1}
.sp-pay-offer small{font-size:12px;line-height:1.6;color:#354c60}
.sp-small-table{min-width:280px}.sp-small-table td,.sp-small-table th{padding:12px 10px}
.sp-print-list{padding-left:23px;margin:19px 0;display:grid;gap:15px}.sp-print-list li{font-size:14px;line-height:1.7;color:#354c60}
.sp-admin .sp-admin-card details{background:#f5faff;border:1px solid #dce8f1;padding:13px;border-radius:11px;margin:12px 0}
.sp-admin .sp-admin-card summary{cursor:pointer;font-weight:800;color:#0b2638}
.sp-admin .sp-admin-form label:has(input[type=checkbox]){flex-direction:row;align-items:center;max-width:500px}
@media(max-width:650px){.sp-ext .sp-fieldset{padding:16px 12px}.sp-ext .sp-form-row{grid-template-columns:1fr}.sp-pay-offer strong{font-size:26px}}
@media print{.sp-print{display:none!important}.sp-hero{padding:25px 0;background:none}.sp-main{padding:0;background:none}.sp-print-list{gap:10px}.sp-card{border:0;box-shadow:none}.sp-side{display:none}.sp-grid{display:block}}
