/* Portal44 information architecture and role-based UX revision. */
:root{--focus:#147eb3;--soft:#eef3ee;--voice-soft:#edf7ff;--admin:#102f43}
.skip-link{position:fixed;left:16px;top:-80px;z-index:100;padding:12px 16px;border-radius:10px;background:#fff;color:#102f43;box-shadow:var(--shadow)}
.skip-link:focus{top:12px}
.topbar{min-height:82px;height:auto;gap:24px;padding-top:12px;padding-bottom:12px}
.brand-cluster{display:flex;align-items:center;gap:16px;flex:0 0 auto}.role-chip{padding:7px 10px;border:1px solid var(--line);border-radius:999px;font-size:10px;font-weight:850;letter-spacing:.11em;white-space:nowrap}.admin-role{background:#eaf3f7;color:#17465f}.member-role{background:#e9f7ff;color:#195c82}
.main-nav{gap:6px!important;justify-content:flex-end}.main-nav a,.main-nav .link-button{display:inline-flex!important;align-items:center;min-height:42px;padding:9px 11px;border-radius:10px;font-size:13px;font-weight:700;white-space:nowrap}.main-nav a:hover,.main-nav .link-button:hover{background:#e8ece7}.main-nav .nav-login{color:#155c7e}.main-nav .nav-admin{color:#6b5c48}.main-nav .nav-cta{padding:10px 17px!important;margin-left:4px}
.workspace-nav{position:sticky;top:82px;z-index:9;display:flex;gap:6px;padding:10px max(5vw,28px);overflow-x:auto;background:#173f34;border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 8px 24px rgba(19,37,31,.08)}.workspace-nav a{display:inline-flex;padding:9px 14px;border-radius:9px;color:#ecf7f2;text-decoration:none;font-size:13px;font-weight:750;white-space:nowrap}.workspace-nav a:hover,.workspace-nav a:focus-visible{background:rgba(255,255,255,.13)}
.workspace-context{display:flex;align-items:center;justify-content:center;gap:12px;padding:9px 24px;background:#eaf7fe;color:#174b67;border-bottom:1px solid #cfe5f0}.workspace-context span{font-size:12px;color:#527487}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.button{min-height:46px;transition:transform .15s ease,box-shadow .15s ease}.button:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(18,43,35,.11)}.text-link{display:inline-flex;align-items:center;padding:10px 3px;color:#1d604b;font-weight:800;text-decoration:none}.voice-copy .text-link{color:#236f9e}.hero-actions{align-items:center;flex-wrap:wrap}
footer{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:30px}footer>div{display:grid;gap:6px}footer>div:last-child{text-align:right}
.compact-section{padding-top:72px;padding-bottom:72px}.section-heading{max-width:760px}.section-heading h2{margin:10px 0;font-size:clamp(32px,4vw,52px);letter-spacing:-.045em}.section-heading p{color:var(--muted)}
.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:34px}.service-card{display:grid;grid-template-columns:auto 1fr;gap:22px;padding:28px;align-items:start}.service-card>.button{grid-column:1/-1}.service-icon{width:58px;height:58px;border-radius:17px;display:grid;place-items:center;background:#173f34;color:#d8ff59;font-weight:900;font-size:13px;letter-spacing:.04em}.voice-card .service-icon,.voice-choice .service-icon{background:#103c5a;color:#7bddff}.service-card small,.choice-card>small{letter-spacing:.12em;color:var(--muted);font-weight:800}.service-card h3{margin:4px 0 8px;font-size:30px}.service-card p{color:var(--muted)}.service-availability{display:inline-flex;margin-top:8px;padding:5px 9px;border-radius:999px;background:#fff3d9;color:#79591c;font-size:11px;font-weight:800}.service-availability.open{background:#e6f8e2;color:#2d6a26}.service-state{display:flex;align-items:center;gap:9px;margin:8px 0 22px;color:#dce8e3}.status-dot{width:9px;height:9px;border-radius:50%;background:#d8ff59;box-shadow:0 0 0 6px rgba(216,255,89,.12)}
.choice-shell{max-width:1120px;margin:0 auto;padding:72px 28px 100px}.choice-heading{max-width:780px;margin-bottom:38px}.choice-heading h1{font-size:clamp(42px,6vw,72px);line-height:1;letter-spacing:-.06em;margin:15px 0}.choice-heading p{font-size:18px;color:var(--muted)}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.choice-card{padding:30px;display:flex;flex-direction:column;align-items:stretch}.choice-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.choice-card h2{font-size:38px;margin:6px 0}.choice-card p,.choice-card li{color:var(--muted)}.choice-card ul{padding-left:22px;margin:12px 0 24px}.choice-card .text-link{justify-content:center;margin-top:8px}.choice-help{margin-top:22px;padding:22px;display:grid;grid-template-columns:1fr auto 1fr auto;gap:18px;align-items:center}.choice-help span{display:block;color:var(--muted);font-size:12px}
.voice-member-path{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center;background:#eaf5fb}.voice-member-path h2{font-size:clamp(32px,4vw,52px);margin:8px 0}.voice-member-path p{color:#526b79}.member-path-actions{display:grid;gap:12px;align-items:stretch}.member-path-actions .text-link{justify-content:center}
.form-intro>.back{display:inline-flex;margin-bottom:24px}.flow-summary{display:grid;gap:8px;margin:28px 0}.flow-summary span{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}.flow-summary b{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#173f34;color:#fff;font-size:11px}.voice-form-shell .flow-summary b{background:#103c5a}.form-card>h2{margin:5px 0 6px;font-size:28px}.form-step{font-size:10px;letter-spacing:.17em;font-weight:900;color:#517568}.voice-form .form-step{color:#2571a5}.form-footnote{text-align:center;color:var(--muted);font-size:12px;margin:14px 0 0}.form-card a{color:#1d604b}.voice-form a{color:#226c99}
.intake-banner{display:grid;gap:3px;margin:18px 0;padding:14px 16px;border-radius:12px;font-size:13px}.intake-banner span{color:var(--muted);font-size:12px}.intake-banner.open{background:#edf9e9;border:1px solid #cfe8c7;color:#2d6a26}.intake-banner.closed{background:#fff5dd;border:1px solid #f0d38d;color:#735900}button:disabled{cursor:not-allowed;opacity:.55;transform:none!important;box-shadow:none!important}
.role-login{max-width:1040px;margin:0 auto;grid-template-columns:1fr 430px;gap:70px;padding:70px 28px}.login-intro{max-width:520px}.login-intro h1{font-size:clamp(40px,5vw,66px);line-height:1.02;letter-spacing:-.055em;margin:14px 0}.login-intro p,.login-intro li{color:var(--muted)}.login-intro ul{padding-left:20px;margin:24px 0}.role-login .login-card{width:100%;text-align:left}.role-login .brand-mark{margin:0}.role-login .login-card h2{font-size:29px;margin:0}.login-links{display:grid;gap:8px;text-align:center}.login-links a{font-size:13px;color:#245f7e}.login-security{color:var(--muted);text-align:center}.admin-scope{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.admin-scope span{padding:7px 10px;border-radius:999px;background:#e8eeea;color:#3d5c51;font-size:11px;font-weight:800}
.heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.heading-actions form{margin:0}.table-title>div p{margin:5px 0 0}.admin-heading{align-items:center}.admin-heading>div{max-width:760px}
.intake-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0 26px}.intake-controls .consent{margin:0;padding:15px;border:1px solid var(--line);border-radius:13px;background:#f8faf7}.intake-controls strong,.intake-controls small{display:block}.settings-divider{height:1px;background:var(--line);margin:8px 0 26px}
.member-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:40px}.member-summary>div{padding:18px 20px;border:1px solid #d7e5eb;border-radius:15px;background:#f3faff}.member-summary small{display:block;color:var(--muted)}.member-summary strong{font-size:20px;color:#154966}.member-section-title{margin-bottom:18px}.member-other-service{margin-top:22px;padding:25px;display:flex;align-items:center;justify-content:space-between;gap:24px}.member-other-service h2,.member-other-service p{margin:3px 0}.member-other-service p{color:var(--muted)}
.alert.info{background:#eaf5fb;color:#245f7e}.badge.disabled{background:#edf0f1;color:#536269}.badge.enable_pending,.badge.disable_pending{background:#fff3d9;color:#79591c}
.credential-action{display:grid;gap:8px}.credential-action small{color:var(--muted)}.credential-dialog{width:min(620px,calc(100vw - 28px));border:0;border-radius:22px;padding:28px;background:#fff;color:var(--ink);box-shadow:0 30px 90px rgba(8,28,22,.28)}.credential-dialog::backdrop{background:rgba(10,28,23,.62);backdrop-filter:blur(5px)}.credential-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.credential-dialog-head h2{font-size:30px;margin:5px 0}.dialog-close{border:0;background:#edf2ef;width:40px;height:40px;border-radius:50%;font-size:24px;cursor:pointer}.credential-fields{display:grid;gap:18px}.copy-field{display:grid;grid-template-columns:1fr auto auto;gap:8px}.copy-field input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.credential-profile{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:4px 0 22px}.credential-profile>div{padding:13px;border-radius:12px;background:#f1f8fb}.credential-profile small,.credential-profile strong{display:block}.credential-reveal>.button{margin-top:20px}
@media(max-width:980px){.topbar{align-items:flex-start;flex-wrap:wrap;gap:8px}.main-nav{order:3;width:100%;max-width:none!important;justify-content:flex-start!important;overflow-x:auto;padding:4px 0}.workspace-nav{top:124px}.choice-help{grid-template-columns:1fr auto}.service-grid,.choice-grid,.voice-member-path,.role-login{grid-template-columns:1fr}.role-login{gap:35px}.login-intro{max-width:720px}.member-summary{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.topbar{padding:10px 16px}.brand small{display:none}.role-chip{font-size:9px}.main-nav a,.main-nav .link-button{font-size:12px;padding:8px 10px}.main-nav:has(.nav-cta){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.main-nav:has(.nav-cta) a{justify-content:center;width:100%}.main-nav:has(.nav-cta) .nav-login{grid-column:span 2}.main-nav:has(.nav-cta) .nav-cta{grid-column:1/-1;margin-left:0;padding:9px 13px!important}.workspace-nav{position:relative;top:auto;padding:9px 14px}.workspace-context{align-items:flex-start;flex-direction:column;gap:1px}.hero-actions{align-items:stretch}.hero-actions .text-link{justify-content:center}.service-grid,.choice-grid{grid-template-columns:1fr}.service-card{grid-template-columns:auto 1fr}.choice-shell{padding:48px 18px 70px}.choice-help{grid-template-columns:1fr}.choice-help .button{width:100%}.role-login{padding:42px 18px}.login-intro h1{font-size:42px}.member-summary{grid-template-columns:1fr}.member-other-service{align-items:flex-start;flex-direction:column}.heading-actions{width:100%}.heading-actions .button,.heading-actions form,.heading-actions button{width:100%}.intake-controls{grid-template-columns:1fr}.copy-field{grid-template-columns:1fr 1fr}.copy-field input{grid-column:1/-1}.credential-profile{grid-template-columns:1fr}.credential-dialog{padding:20px}footer{grid-template-columns:1fr}footer>div:last-child{text-align:left}.section{padding-left:20px;padding-right:20px}.choice-card h2{font-size:32px}}
