/* Shared workspace shell and role-specific entry points. */
:root{--ink:#173549;--muted:#627581;--line:#dce5e9;--bg:#f3f6f8;--teal:#137c80;--tint:#e8f4f3;--nav:#102f43;--pink:#df5d86;--shadow:0 4px 18px #16334706}
body{font-size:15px;line-height:1.55}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:8px;font-size:.9rem}h1{font-size:2rem;letter-spacing:-.035em}h2{font-size:1.13rem;letter-spacing:-.015em}a{text-decoration:none}a:hover{text-decoration:underline}button:hover,.button:hover{text-decoration:none}.workspace-icon{width:21px;height:21px;display:inline-block;flex-shrink:0;vertical-align:middle}.test-strip{height:26px;padding:.25rem 1.6rem;background:#e6f0f1;color:#3d6671;font-size:.65rem;letter-spacing:.08em;gap:1rem}.test-strip span{color:#55727c;font-size:.69rem}header{height:80px;padding:0 1.65rem;background:#fff}header .brand{gap:1.4rem}header .brand small{font-size:.66rem;letter-spacing:.16em;color:#7a8d98;border-left:1px solid var(--line);padding:10px 0 10px 1.4rem}.brand .system-logo{width:146px;max-height:50px}#account{display:flex;align-items:center;gap:1.1rem;text-align:left;font-size:.78rem}.account-identity{display:flex;gap:.65rem;align-items:center}.account-identity b{display:block;font-weight:650}.account-identity div>span{display:block;font-size:.7rem;color:var(--muted)}.account-avatar{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#e9f3f3;color:var(--teal)}#account .signout-button{margin:0;padding:.4rem;min-height:40px;background:transparent;color:var(--muted);font-size:.76rem;font-weight:500}#menu-toggle{display:none}
#shell{grid-template-columns:232px minmax(0,1fr);max-width:none;min-height:calc(100vh - 106px)}#nav{background:var(--nav);color:#ccdae1;padding:1.5rem .85rem;border:0;display:flex;flex-direction:column;align-items:stretch;gap:0}#nav a{display:flex;align-items:center;gap:.7rem;font-size:.84rem;padding:.7rem .9rem;margin:0 0 .25rem;color:#c6d7e0;border-radius:7px;line-height:1.4;min-height:44px}#nav a .workspace-icon{width:19px;height:19px;opacity:.8}#nav a:hover{background:#ffffff0d;color:#fff;text-decoration:none}#nav a.active{background:#ffffff14;color:white;box-shadow:inset 3px 0 0 #e86691}#nav a.active .workspace-icon{color:#84ced0;opacity:1}.workspace-company{display:flex;align-items:center;gap:.65rem;padding:0 .7rem 1.6rem;margin-bottom:.5rem;border-bottom:1px solid #ffffff12}.company-monogram{width:31px;height:34px;display:grid;place-items:center;background:#2c5264;color:#ddf0f0;font-weight:750;border-radius:6px}.workspace-company b{font-size:.73rem;font-weight:650;display:block;color:#edf4f7;line-height:1.4}.workspace-company div>span{font-size:.68rem;color:#8ca8b7}.nav-group{margin-top:1.4rem}.nav-label{padding:0 .9rem .5rem;font-size:.61rem;letter-spacing:.15em;color:#7f9aab;font-weight:650}#nav .nav-foot{margin-top:auto;padding:2.2rem .9rem 0;color:#b7ced6;font-size:.68rem;line-height:1.9}#nav .nav-foot>span:last-child{color:#7191a3}.trial-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#92c5ba;margin-right:.4rem}main{max-width:1480px;padding:2rem 2.1rem 2.8rem}.panel,.card{box-shadow:var(--shadow);border-radius:11px}.page-heading{margin-bottom:1.7rem}.page-heading .lead{font-size:.93rem}.eyebrow{font-size:.69rem;font-weight:650;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-bottom:.7rem}.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.7rem}.dashboard-heading h1{font-size:1.95rem;margin-bottom:.5rem}.dashboard-heading .lead{font-size:.88rem;margin-bottom:0}.dashboard-heading>.button{flex-shrink:0}.dashboard-heading .eyebrow{font-size:.64rem}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1.5rem}.metric-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:1.15rem 1.25rem;color:var(--ink);box-shadow:var(--shadow);position:relative;min-height:144px}.metric-card:hover{border-color:#88b9be;text-decoration:none;box-shadow:0 5px 20px #16334709}.metric-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;color:var(--muted);font-size:.78rem}.metric-top .workspace-icon{color:var(--teal);width:20px;height:20px}.metric-card strong{display:block;font-size:2rem;line-height:1.4;margin:.5rem 0 0;font-weight:650;letter-spacing:-.04em}.metric-link{display:flex;align-items:center;gap:.3rem;color:#7c8e99;font-size:.65rem;position:absolute;right:1.25rem;bottom:1.2rem}.metric-link .workspace-icon{width:13px;height:13px}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(240px,1fr);gap:1.5rem;align-items:start}.dashboard-panel{padding:1.3rem 1.4rem;margin-bottom:1.5rem}.section-title{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #eaf0f3}.section-title h2{font-size:1rem;margin:0}.section-title p{font-size:.75rem;color:var(--muted);margin:.3rem 0 0}.section-title>a{display:inline-flex;gap:.3rem;align-items:center;font-size:.74rem;white-space:nowrap}.section-title>a .workspace-icon{width:15px;height:15px}.dashboard-empty{display:flex;align-items:center;gap:1rem;min-height:140px;padding:1.4rem .2rem}.empty-symbol{background:#eef5f5;color:#81a7ac;display:grid;place-items:center;width:47px;height:47px;border-radius:50%;flex-shrink:0}.dashboard-empty h3{font-size:.88rem;margin:0 0 .35rem;font-weight:600}.dashboard-empty p{font-size:.79rem;color:var(--muted);max-width:420px;margin:0}.text-action{font-size:.79rem;font-weight:600}.quick-access{padding:1.25rem 1.3rem}.quick-access>a{display:flex;align-items:center;gap:.7rem;font-size:.82rem;color:var(--ink);padding:.85rem 0;border-bottom:1px solid #eaf0f3}.quick-access>a:last-child{border:0;padding-bottom:0}.quick-access>a>.workspace-icon:first-child{color:var(--teal);width:19px;height:19px}.quick-access>a>.workspace-icon:last-child{margin-left:auto;width:15px;height:15px;color:#8ca0ac}.academy-feature{border-radius:11px;background:linear-gradient(125deg,#19465b,#103346);color:#fff;padding:1.5rem;position:relative;overflow:hidden}.academy-feature::after{content:"";position:absolute;right:-30px;bottom:25px;width:120px;height:120px;border:1px solid #75c5bf22;border-radius:50%;pointer-events:none}.academy-feature .academy-mark{margin-bottom:1.4rem}.academy-mark{display:grid;place-items:center;background:#ffffff15;color:#9ce0d7;width:46px;height:46px;border-radius:10px}.academy-mark .workspace-icon{width:27px;height:27px}.academy-feature>.status-pill{position:absolute;top:1.6rem;right:1.3rem;background:#ffffff14;color:#e3ebef;border-color:#ffffff14;font-size:.58rem}.academy-feature .eyebrow{color:#90bcc7;font-size:.59rem;margin-bottom:.55rem}.academy-feature h2{font-size:1.6rem;line-height:1.2;font-weight:600}.academy-feature p{font-size:.78rem;color:#b2ccd6;max-width:250px;margin-top:.85rem}.academy-feature a{color:#eff8f8;font-size:.78rem;display:flex;align-items:center;gap:1rem;margin-top:1.3rem;position:relative;z-index:1}.academy-feature a .workspace-icon{width:18px;height:18px}.status-pill{display:inline-flex;align-items:center;font-size:.65rem;font-weight:600;border-radius:20px;background:#eef2f5;color:#647889;padding:.23rem .65rem;border:1px solid #dee7eb}.status-pill.planned{background:#f4eaf0;color:#915f78;border-color:#e8d8e1}.workspace-note{display:flex;gap:.7rem;padding:1.3rem .25rem}.workspace-note>.workspace-icon{width:16px;height:16px;color:#849ba7;margin-top:.2rem}.workspace-note p{font-size:.72rem;color:#788d99;margin:0}.workspace-note p span{display:block;margin-top:.45rem}.dashboard-report,.attention-row,.visit-summary{display:flex;align-items:center;gap:1rem;padding:1rem 0;color:var(--ink);border-bottom:1px solid #eaf0f3}.dashboard-report:last-child,.attention-row:last-child,.visit-summary:last-child{border:0}.dashboard-report>div,.attention-row>div,.visit-summary>div:not(.visit-date){min-width:0;flex:1}.dashboard-report b,.attention-row b,.visit-summary b{display:block;font-size:.85rem;font-weight:600;overflow-wrap:anywhere}.dashboard-report div>span,.attention-row div>span,.visit-summary div>span{display:block;font-size:.74rem;color:var(--muted);margin-top:.3rem}.dashboard-report>.workspace-icon,.attention-row>.workspace-icon,.visit-summary>.workspace-icon{width:17px;height:17px;color:#94a9b4}.report-symbol,.attention-marker{width:36px;height:41px;border-radius:6px;background:#edf4f5;color:#427d88;display:grid;place-items:center;flex-shrink:0}.attention-marker{background:#fff3df;color:#a6803d}.visit-date{width:42px;text-align:center;flex-shrink:0;padding:.3rem;background:#eff5f7;border-radius:6px}.visit-date b{font-size:1.2rem}.visit-date span{font-size:.65rem!important;margin:0!important;text-transform:uppercase}.report-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.report-category{display:flex;align-items:center;gap:1rem;color:var(--ink);padding:1.25rem}.report-category h2{font-size:.93rem;margin:0 0 .3rem}.report-category p{font-size:.76rem;color:var(--muted);margin:0}.report-category strong{font-size:1.6rem;margin-left:auto}.report-category>.workspace-icon{width:17px}.report-category .icon-tile{width:40px;height:44px;margin:0}.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.settings-card{color:var(--ink);padding:1.5rem}.settings-card>.workspace-icon{color:var(--teal);margin-bottom:1.1rem;width:26px;height:26px}.settings-card p{font-size:.83rem;color:var(--muted)}.settings-card>span{font-size:.8rem;color:var(--teal)}.account-settings dl{display:grid;grid-template-columns:150px 1fr;gap:.6rem;font-size:.9rem}.account-settings dd{margin:0}.account-settings dt{color:var(--muted)}
/* Public home and account sign-in. */
.public-mode #shell{display:block;min-height:calc(100vh - 106px);background:radial-gradient(ellipse at 50% 0,#e6f0f1 0,transparent 65%)}.public-mode #nav{display:none}.public-mode main{max-width:1160px;margin:0 auto;padding:2.6rem 2.2rem}.public-mode #account{gap:1.6rem}.public-header-link{font-size:.78rem;font-weight:600;color:var(--muted)}.welcome-intro{text-align:center;max-width:750px;margin:.6rem auto 2.6rem}.welcome-intro .eyebrow{font-size:.67rem;color:var(--teal)}.welcome-intro h1{font-size:2.75rem;font-weight:650;line-height:1.15;margin-bottom:1rem}.welcome-intro h1 span{color:var(--teal)}.welcome-intro p{font-size:.98rem;color:var(--muted);max-width:580px;margin:auto}.portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.portal-card{display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:13px;padding:1.6rem;color:var(--ink);box-shadow:var(--shadow)}.portal-card:hover{border-color:#74afb5;box-shadow:0 8px 25px #1536490b;text-decoration:none}.icon-tile{width:47px;height:49px;border-radius:10px;background:#e8f3f2;color:var(--teal);display:grid;place-items:center;flex-shrink:0;margin-bottom:1.35rem}.icon-tile .workspace-icon{width:25px;height:25px}.portal-card h2{font-size:1.15rem;margin-bottom:.65rem}.portal-card p{font-size:.85rem;color:var(--muted);margin-bottom:1.7rem}.card-action{display:flex;gap:.6rem;align-items:center;font-size:.82rem;font-weight:650;margin-top:auto;color:var(--teal)}.card-action .workspace-icon{width:18px;height:18px}.academy-welcome{display:flex;align-items:center;gap:1.4rem;background:var(--nav);color:#fff;border-radius:12px;padding:1.6rem 1.8rem;margin-top:1.5rem}.academy-welcome .icon-tile{margin:0;background:#ffffff12;color:#9bd7d3}.academy-welcome .eyebrow{font-size:.58rem;color:#91b7c2;margin-bottom:.2rem}.academy-welcome h2{font-size:1.2rem;margin-bottom:.3rem}.academy-welcome p{font-size:.8rem;color:#aec9d3;margin:0}.academy-welcome .status-pill{margin-left:auto;white-space:nowrap;background:#ffffff12;color:#dbe8ed;border:1px solid #ffffff16}.academy-welcome>.workspace-icon{width:19px;height:19px}.public-footnote{text-align:center;margin:1.7rem 0 0;color:#7b919d;font-size:.73rem}.signin-layout{display:grid;grid-template-columns:1fr 1fr;gap:5rem;max-width:900px;margin:3rem auto;align-items:center}.signin-intro .back-link{display:block;margin-bottom:2.6rem}.back-link{font-size:.8rem;color:var(--muted)}.signin-intro h1{font-size:2.4rem}.signin-intro>p{font-size:.98rem;color:var(--muted)}.signin-access{display:flex;gap:.8rem;align-items:flex-start;color:#7b929c;font-size:.78rem;max-width:350px;margin-top:2rem}.signin-access .workspace-icon{width:19px;height:19px}.signin-panel{padding:2rem;margin:0}.signin-panel h2{font-size:1.4rem}.signin-panel>p{margin-bottom:1.4rem}.signin-panel button{width:100%;margin-top:.3rem;justify-content:space-between}.signin-panel .field{margin-bottom:1.2rem}.signin-help{border-top:1px solid var(--line);margin:1.4rem 0 0!important;padding-top:1.2rem;font-size:.73rem}.login-error{color:var(--red);font-size:.83rem}.login-error:empty{display:none}.academy-hero{background:var(--nav);border-radius:14px;padding:2.3rem 2.6rem;color:#fff;position:relative;margin-bottom:1.5rem}.academy-hero>.status-pill{position:absolute;top:2.1rem;right:2.2rem;background:#ffffff13;color:#d6e4eb;border-color:#ffffff12}.academy-hero .academy-mark{margin-bottom:1.5rem}.academy-hero .eyebrow{color:#91bec8;font-size:.65rem}.academy-hero h1{font-size:2.3rem}.academy-hero>p{color:#b1cdd7;font-size:.95rem;margin-bottom:0}.academy-status p{font-size:.9rem;color:var(--muted);max-width:800px;margin-bottom:0}.academy-roadmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.academy-roadmap h2{font-size:1rem}.academy-roadmap p{color:var(--muted);font-size:.85rem}.academy-roadmap .icon-tile{width:40px;height:42px}.academy-roadmap .panel{padding:1.5rem}
@media(min-width:1600px){main{padding:2.5rem 3rem}.dashboard-heading h1{font-size:2.2rem}.metric-card{min-height:156px;padding:1.3rem 1.5rem}.metric-card strong{font-size:2.3rem}}
@media(max-width:1160px){#shell{grid-template-columns:205px minmax(0,1fr)}main{padding:1.8rem 1.5rem}.workspace-company{padding-left:.3rem;padding-right:.3rem}.workspace-company b{font-size:.66rem}#nav{padding:1.4rem .65rem}#nav a{font-size:.77rem;padding:.7rem}.dashboard-heading h1{font-size:1.65rem}.metric-grid{gap:.65rem}.metric-card{padding:1rem;min-height:137px}.metric-top{font-size:.69rem}.metric-link{right:1rem;bottom:1rem}.dashboard-columns{gap:1rem;grid-template-columns:minmax(0,1.65fr) minmax(230px,1fr)}.dashboard-panel{padding:1.2rem}.academy-feature{padding:1.25rem}.academy-feature>.status-pill{right:1rem;top:1.4rem}.report-categories{grid-template-columns:1fr}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){header{padding:0 1rem}.account-identity b{max-width:165px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-heading{align-items:flex-start;flex-direction:column;gap:1rem}.dashboard-columns{grid-template-columns:1fr}.dashboard-aside{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.workspace-note{grid-column:1/-1;padding:0 .2rem 1rem}.academy-feature h2 br{display:none}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{min-height:127px}.quick-access{margin:0}.academy-feature{margin-bottom:1.2rem}.dashboard-panel{margin-bottom:1rem}.portal-grid{gap:.8rem}.portal-card{padding:1.2rem}.portal-card h2{font-size:1rem}.signin-layout{gap:2rem}.public-mode main{padding:2rem 1.5rem}.welcome-intro h1{font-size:2.35rem}.academy-roadmap{grid-template-columns:1fr}.academy-roadmap .panel{margin:0}.settings-grid{grid-template-columns:1fr}}
@media(max-width:700px){#shell{display:block}#nav{display:none}#menu-toggle:not([hidden]){display:inline-flex;font-size:.74rem;min-height:38px;padding:.4rem .65rem}body.navigation-open #nav{display:flex;padding:1rem;background:var(--nav);max-height:calc(100vh - 105px);overflow-y:auto}#nav a{font-size:.9rem;padding:.75rem;white-space:normal}#nav .workspace-company{display:none}#nav .nav-group{margin-top:.9rem}#nav .nav-label{font-size:.65rem}#nav .nav-foot{display:none}header{height:72px;gap:.7rem}.brand .system-logo{width:110px}header .brand small{display:none}.account-identity{gap:.5rem}.account-avatar{display:none}#account{margin-left:auto;gap:.5rem;font-size:.69rem}.account-identity b{max-width:135px}.account-identity div>span{font-size:.64rem}#account .signout-button span{display:none}#account .signout-button .workspace-icon{width:18px;height:18px}.test-strip{padding:.25rem 1rem}.test-strip span{font-size:.62rem}main{padding:1.4rem 1rem 2rem}.dashboard-heading h1{font-size:1.7rem}.dashboard-heading .lead{font-size:.84rem}.dashboard-heading .eyebrow{font-size:.6rem}.metric-top{font-size:.73rem}.metric-card{padding:.95rem;min-height:125px}.dashboard-aside{grid-template-columns:1fr}.quick-access{margin-bottom:.5rem}.academy-feature{margin-bottom:0}.workspace-note{padding:.25rem 0 1rem}.dashboard-panel{padding:1rem}.section-title{gap:.6rem}.section-title h2{font-size:.93rem}.section-title p{font-size:.7rem}.section-title>a{font-size:.68rem}.dashboard-empty{min-height:135px;gap:.8rem}.dashboard-empty h3{font-size:.83rem}.dashboard-empty p{font-size:.75rem}.dashboard-report{gap:.7rem}.dashboard-report b{font-size:.79rem}.dashboard-report div>span{font-size:.67rem}.report-category{padding:1rem;gap:.75rem}.report-category h2{font-size:.85rem}.report-category p{font-size:.7rem}.report-category .icon-tile{display:none}.public-mode #account>.button{font-size:.68rem;padding:.5rem .65rem}.public-header-link{display:none}.public-mode main{padding:1.6rem 1rem}.welcome-intro{margin:.5rem auto 1.8rem}.welcome-intro h1{font-size:2rem}.welcome-intro p{font-size:.87rem}.portal-grid{grid-template-columns:1fr}.portal-card{padding:1.3rem}.portal-card .icon-tile{margin-bottom:.8rem;width:40px;height:42px}.portal-card p{margin-bottom:1.1rem}.portal-card h2{font-size:1.15rem}.academy-welcome{padding:1.4rem;gap:1rem;flex-wrap:wrap}.academy-welcome>div:nth-child(2){flex:1;min-width:180px}.academy-welcome .status-pill{margin-left:0}.academy-welcome>.workspace-icon{margin-left:auto}.academy-welcome h2{font-size:1.12rem}.academy-welcome p{font-size:.75rem}.signin-layout{grid-template-columns:1fr;margin:.4rem auto;gap:1.5rem}.signin-intro .back-link{margin-bottom:1.3rem}.signin-intro>.icon-tile{display:none}.signin-intro h1{font-size:1.9rem}.signin-intro>p{font-size:.9rem}.signin-access{display:none}.signin-panel{padding:1.4rem}.academy-hero{padding:1.6rem}.academy-hero h1{font-size:1.9rem}.academy-hero>.status-pill{top:1.7rem;right:1.5rem}.academy-hero>p{font-size:.83rem}.account-settings dl{grid-template-columns:90px minmax(0,1fr);font-size:.8rem}}
@media print{#nav,#account,#menu-toggle,.nav-foot,.test-strip,header{display:none!important}#shell{display:block}main{max-width:none}}

/* A view never changes the signed-in identity. */
.workspace-view-controls{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1.25rem;padding:.7rem 1.65rem;background:#e8f4f3;border-block:1px solid #cbdedc;color:var(--ink)}
.view-selection{display:flex;align-items:end;flex-wrap:wrap;gap:.65rem}.workspace-view-controls label{display:flex;flex-direction:column;gap:.2rem;font-size:.72rem;font-weight:600}.workspace-view-controls select,.workspace-view-controls input{min-height:38px;max-width:100%;padding:.4rem .6rem;font-size:.8rem;border:1px solid #bad1d1;border-radius:6px;background:white;color:var(--ink)}.workspace-view-controls select{min-width:145px}.workspace-view-controls button{min-height:38px;padding:.4rem .65rem;font-size:.76rem}.view-reason{flex:1;min-width:240px}.view-reason small{font-size:.66rem;font-weight:400;color:var(--muted)}.view-context{flex-basis:100%;margin:0;font-size:.73rem}.workspace-view-controls #workspace-view-error{margin:0;color:var(--red);font-size:.76rem}.workspace-view-controls #workspace-view-error:empty{display:none}
@media(max-width:700px){.workspace-view-controls{padding:.6rem 1rem;gap:.5rem}.view-selection{width:100%;align-items:end;gap:.5rem}.view-selection>label{flex:1;min-width:125px}.view-selection select{min-width:0;width:100%}.view-reason{min-width:0;width:100%;flex-basis:100%}.view-context{font-size:.69rem}.workspace-view-controls button{font-size:.7rem}}
@media print{.workspace-view-controls{display:none!important}}

/* Source labels and hashes must wrap within the completed-copy phone view. */
main[data-completed-practice] .page-heading>div:first-child{min-width:0;max-width:100%}
main[data-completed-practice] .kicker,main[data-completed-practice] .mono,main[data-completed-practice] .callout p{overflow-wrap:anywhere;white-space:normal}
main[data-completed-practice] .panel,main[data-completed-practice] .callout{overflow-wrap:anywhere}
