:root{--v-ink:#342340;--v-muted:#645c6b;--v-plum:#492b5a;--v-line:#e8e1ed;--v-sage:#eaf3ef;--v-gold:#d3ae60}
html{scroll-padding-top:100px}body{overflow-x:clip}main,section,article,div{min-width:0}.site-nav .site-links a{font-size:14px}.site-nav .nav-inner{gap:14px}.platform-context{flex-wrap:wrap;gap:12px}.portal-main{max-width:1160px}.portal-main h1,.portal-main h2,.portal-main h3{color:var(--v-ink);line-height:1.45}.portal-main p{color:var(--v-muted);line-height:1.9}.portal-main a{text-decoration:none}.portal-kicker{display:block;font-size:12px;font-weight:800;letter-spacing:.06em;color:#76548b;margin-bottom:12px}.portal-hero{display:grid;grid-template-columns:1.45fr 1fr;align-items:center;gap:40px;padding:48px 44px;margin:14px 0 20px;border:1px solid var(--v-line);border-radius:30px;background:radial-gradient(ellipse at 4% 12%,#ece2f4 0,transparent 58%),linear-gradient(110deg,#f4eff9,#fffdf9);overflow:hidden}.portal-hero h1{font-size:clamp(32px,4.5vw,54px);line-height:1.35;margin:0 0 18px;font-weight:800;letter-spacing:-1px}.portal-hero h1 em{font-style:normal;color:#796085}.portal-hero p{font-size:17px;max-width:540px}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:25px}.portal-primary,.portal-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:13px;font-weight:800;line-height:1.5}.portal-primary{background:var(--v-plum);color:#fff!important;box-shadow:0 6px 18px #492b5a18}.portal-secondary{background:#fff;color:var(--v-plum)!important;border:1px solid var(--v-line)}.hero-orbit{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:330px;width:100%;margin:auto}.hero-orbit img{width:95px;height:150px;object-fit:contain;filter:drop-shadow(0 15px 20px #624a7b20)}.orbit-line{position:absolute;inset:13%;border:1px solid #bca7cc;border-radius:50%;transform:rotate(-20deg) scaleX(1.2);animation:orbit-turn 24s linear infinite}.orbit-line.second{inset:3%;transform:rotate(40deg) scaleX(.8);border-style:dashed;animation-direction:reverse}.orbit-word{position:absolute;padding:10px 20px;border-radius:50px;background:#fffdfb;border:1px solid #ddd2e5;font-size:14px;color:#513862;box-shadow:0 8px 26px #492b5a0a;animation:word-float 5s ease-in-out infinite}.orbit-word.one{top:2%;right:8%}.orbit-word.two{bottom:12%;right:0;animation-delay:-2s}.orbit-word.three{left:0;top:47%;animation-delay:-3s}@keyframes orbit-turn{to{transform:rotate(340deg) scaleX(1.2)}}@keyframes word-float{50%{translate:0 -8px}}.intent-bar{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:18px;background:#fff;border:1px solid var(--v-line);border-radius:18px}.intent-bar span{font-weight:800;margin-inline-end:8px}.intent-bar a{font-size:14px;padding:10px 15px;border-radius:10px;background:#f5f1f8;color:var(--v-plum);min-height:44px}.portal-section-heading{margin:48px 0 28px}.portal-section-heading h2{font-size:28px;margin:0}.portal-section-heading p{margin-top:8px}.portal-group{--accent:#48715d;--tint:#edf5f0;margin:0 0 28px;border:1px solid var(--v-line);padding:24px;border-radius:23px;background:#fff}.portal-group.lavender{--accent:#76508d;--tint:#f3eef8}.portal-group.sand{--accent:#806128;--tint:#fbf3df}.portal-group.rose{--accent:#8b5865;--tint:#f8edf0}.portal-group-head{display:flex;gap:15px;align-items:center;margin-bottom:20px}.portal-group-head>span{font-size:24px;color:var(--accent);font-weight:800;line-height:1}.portal-group-head h2{font-size:21px;margin:0}.portal-group-head p{font-size:13px;margin:3px 0 0}.portal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.portal-card{display:flex;align-items:center;gap:15px;padding:18px;background:var(--tint);border:1px solid transparent;border-radius:15px;transition:transform .2s,box-shadow .2s,border-color .2s;color:var(--accent);min-height:106px}.portal-card h3{font-size:18px;margin:0 0 4px;color:var(--v-ink)}.portal-card p{font-size:13px;margin:0;color:#5f5965}.portal-icon{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:14px;background:#ffffffad;color:var(--accent)}.portal-icon svg{width:28px;height:28px}.portal-arrow{margin-inline-start:auto;color:var(--accent)}@media(hover:hover){.portal-card:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 9px 22px #3423400b}.portal-card:hover svg{transform:rotate(-6deg)}}.portal-card:active,.portal-primary:active,.intent-bar a:active{transform:scale(.98)}.portal-main a:focus-visible,.portal-main button:focus-visible{outline:3px solid #956cc0;outline-offset:4px}.formal-door{display:flex;gap:26px;justify-content:space-between;align-items:center;padding:34px;border-radius:24px;background:linear-gradient(120deg,#352340,#5a376e);margin:35px 0;color:#fff}.formal-door h2{color:#fff;margin:0 0 10px;font-size:29px}.formal-door p{color:#e8dfee;max-width:650px}.formal-door .portal-kicker{color:#ead79f}.formal-door .portal-primary{background:#efdcac;color:#382644!important;flex-shrink:0}.formal-steps{display:flex;gap:8px;flex-wrap:wrap}.formal-steps span{padding:6px 10px;font-size:12px;border:1px solid #ffffff3a;border-radius:7px;color:#f8f3fa}.platform-updates{display:grid;grid-template-columns:1fr 1fr;gap:26px;padding:28px 0 40px;border-bottom:1px solid var(--v-line);margin-bottom:35px}.platform-updates h2{font-size:25px}.platform-updates article{border-inline-start:3px solid #c6a55f;padding-inline-start:20px}.platform-updates time{font-size:13px;color:#745889}.platform-updates small{display:block;color:var(--v-muted);margin-top:12px}.my-shortcuts:empty{display:none}.my-shortcuts{padding:20px 0}.my-shortcuts h2{font-size:18px}.saved-links{display:flex;gap:10px;flex-wrap:wrap}.saved-links a{padding:12px 15px;border-radius:12px;background:#fff;border:1px solid var(--v-line);color:var(--v-plum);font-size:14px}.saved-links small{display:block;color:var(--v-muted)}.program-intro{max-width:800px;margin:35px 0}.program-intro h1{font-size:clamp(32px,4vw,48px);margin:0}.program-intro p{font-size:18px}.program-doors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.program-doors>a{border:1px solid var(--v-line);border-radius:20px;background:#fff;padding:28px;display:flex;flex-direction:column;transition:transform .2s}.program-doors>a:first-child{background:#f2edf8}.program-doors h2{font-size:23px}.program-doors b{color:var(--v-plum);margin-top:auto}.program-doors p{font-size:15px}.program-map,.program-boundary{margin:35px 0;padding:26px;background:#fff;border:1px solid var(--v-line);border-radius:20px}.program-map-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.program-map-grid b{color:#967447}.program-map-grid h3{font-size:18px}.program-map-grid p{font-size:14px}.boundary-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.scope-note{font-size:13px;color:var(--v-muted)}
/* shared access, readable text and comfortable touch targets */
.quick-help{border:1px solid var(--v-line);background:#fff;border-radius:13px;padding:12px 16px;margin:12px 0 20px;color:var(--v-ink);font-size:14px}.quick-help summary{cursor:pointer;font-weight:700;min-height:24px}.quick-help ol{line-height:2;padding-inline-start:22px}.quick-help a{color:#563272;text-decoration:underline}.utility-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0}.utility-row button,.favorite-button{min-height:44px;border:1px solid #d9cce3;border-radius:10px;background:#fff;color:#513068;padding:9px 14px;font:inherit;cursor:pointer;font-size:13px}.favorite-button[aria-pressed=true]{background:#efe7f5;color:#49245e}.utility-row small{color:#6a6172}.perfume-card>.favorite-button{margin:12px 8px 0}.cycle-bar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 22px;margin-bottom:20px;background:#f2edf7;border:1px solid #ddcfe8;border-radius:16px}.cycle-bar strong,.cycle-bar small{display:block}.cycle-bar small{font-size:12px;color:#62536c;line-height:1.8;margin-top:5px}.cycle-bar label{font-size:13px;min-width:200px;max-width:380px}.cycle-bar select{width:100%;background:#fff;min-height:44px;border-radius:9px;border:1px solid #ccbcd8;padding:8px;font:inherit}.manager-tasks{background:linear-gradient(120deg,#34233f,#58336b);padding:25px;border-radius:20px;margin:18px 0 24px;display:flex;justify-content:space-between;gap:24px;align-items:center}.manager-tasks h2{color:#fff!important;margin:6px 0}.manager-tasks p{color:#e8deef!important;font-size:13px}.manager-tasks .overline{color:#eedbae!important}.task-counts{display:flex;gap:10px}.task-counts button{display:grid;gap:7px;background:#ffffff15;color:#fff;border:1px solid #ffffff45;border-radius:12px;min-width:100px;padding:15px;cursor:pointer;font:inherit}.task-counts strong{font-size:28px;color:#f1dca5}.task-counts span{font-size:12px}.team-view{display:flex;gap:20px;align-items:end;justify-content:space-between}.team-view label{min-width:220px}.team-view select{display:block;width:100%;padding:10px;font:inherit;min-height:44px;border:1px solid #d8cce2;border-radius:9px;background:#fff}.next-task{font-size:13px;color:#4c3a5a;background:#f1ebf6;padding:10px;border-radius:8px}.draft-banner{background:#fff7e5;border:1px solid #e9d49d;color:#6b501c!important;padding:15px;border-radius:10px;font-size:14px}.data-quality{margin:22px 0;background:#f3f6f4;border:1px solid #d9e4dd;border-radius:14px;padding:20px}.data-quality p{font-size:13px;color:#4b6054}.quality-counts{display:flex;gap:20px;flex-wrap:wrap}.quality-counts span{font-size:14px}.metric-guide{border:1px solid #ded5e4;padding:15px;border-radius:12px;font-size:14px}.metric-guide summary{cursor:pointer;font-weight:700}.report-actions{display:flex;gap:12px;margin:25px 0;flex-wrap:wrap}.cycle-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.cycle-list article{border:1px solid #e2d8ea;border-radius:14px;padding:20px;background:#faf8fc}.cycle-list h3{font-size:18px}.cycle-list p{font-size:13px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.presentation-mode .site-nav,.presentation-mode .platform-context,.presentation-mode .quick-help,.presentation-mode .utility-row,.presentation-mode #accountTabs,.presentation-mode .site-footer,.presentation-mode .account-header{display:none}.presentation-mode .program-shell{max-width:1350px}.presentation-mode .impact-report{box-shadow:none;font-size:18px}.presentation-mode .impact-report h2{font-size:36px}.presentation-mode .metric-box strong{font-size:38px}.presentation-mode .report-actions{display:none}.presentation-mode .cycle-bar select{display:none}
@media(max-width:850px){.portal-hero{padding:30px;gap:15px;grid-template-columns:1.4fr .8fr}.hero-orbit{max-width:235px}.hero-orbit img{width:65px;height:110px}.orbit-word{font-size:12px;padding:8px 12px}.formal-door{align-items:start;flex-direction:column}.program-doors{gap:12px}.program-doors>a{padding:20px}.program-map-grid{grid-template-columns:1fr 1fr}.manager-tasks{align-items:stretch;flex-direction:column}.cycle-list{grid-template-columns:1fr 1fr}.task-counts{justify-content:stretch}.task-counts button{flex:1}.cycle-bar{align-items:start;flex-direction:column}.cycle-bar label{width:100%;max-width:none}.site-nav .nav-inner{flex-wrap:wrap}.platform-search-open{margin-inline-start:auto}}
@media(max-width:600px){.portal-main.wrap{width:calc(100% - 28px);padding:0}.portal-hero{padding:26px 20px;grid-template-columns:1fr;border-radius:22px}.hero-orbit{display:grid}.portal-hero h1{font-size:35px}.portal-hero p{font-size:15px}.hero-actions{align-items:stretch;flex-direction:column}.intent-bar{display:grid;grid-template-columns:1fr 1fr;padding:14px;gap:8px}.intent-bar span{grid-column:1/-1}.intent-bar a{text-align:center;font-size:12px;padding:10px 6px}.portal-group{padding:16px;border-radius:18px;margin-bottom:18px}.portal-grid{grid-template-columns:1fr;gap:9px}.portal-card{min-height:88px;padding:14px;gap:12px}.portal-card h3{font-size:17px}.portal-card p{font-size:12px;line-height:1.7}.portal-group-head h2{font-size:19px}.portal-section-heading{margin:32px 0 20px}.portal-section-heading h2{font-size:23px}.portal-section-heading p{font-size:14px}.formal-door{padding:25px 20px;margin:25px 0}.formal-door h2{font-size:25px}.formal-door p{font-size:14px}.formal-door .portal-primary{width:100%}.platform-updates{grid-template-columns:1fr;gap:8px}.platform-updates h2{font-size:23px}.program-doors{grid-template-columns:1fr}.program-doors>a{padding:23px}.program-doors h2{margin:10px 0;font-size:24px}.program-map-grid,.boundary-grid{grid-template-columns:1fr}.program-map-grid article{border-bottom:1px solid var(--v-line);padding-bottom:12px}.program-intro p{font-size:16px}.cycle-list{grid-template-columns:1fr}.team-view{flex-direction:column;align-items:stretch}.task-counts{gap:6px}.task-counts button{padding:12px 5px;min-width:0}.task-counts strong{font-size:24px}.task-counts span{font-size:11px}.manager-tasks{padding:20px}.form-pair{grid-template-columns:1fr}.cycle-bar{padding:16px}.cycle-bar select{font-size:13px}.saved-links{display:grid;grid-template-columns:1fr}.my-shortcuts{padding-bottom:0}.presentation-mode .impact-report h2{font-size:28px}.account-page .view-switch{flex-wrap:wrap;overflow:visible}.account-page .view-switch button{min-height:44px;font-size:13px}.account-page .metric-row{grid-template-columns:1fr 1fr}.account-page .panel{padding:18px}.account-page .p-button{white-space:normal;min-height:44px;line-height:1.6}.account-page .record-grid,.account-page .learn-layout{grid-template-columns:1fr}.quality-counts{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){.hero-orbit *,.portal-card{animation:none!important;transition:none!important}}.motion-paused .hero-orbit *{animation:none!important}
@media print{.cycle-bar label,.quick-help,.utility-row,.report-actions,.platform-search-open,.impact-report .button-row,.metric-guide{display:none!important}.cycle-bar{background:white;border:0}.impact-report{font-size:12px}.quality-counts{gap:15px}}
.program-doors .door-number{color:#795631}.activity-person{border-bottom:1px solid var(--v-line);padding:14px 0}.activity-person>strong{color:#49325b}.cycle-bar .overline{color:#705184}.account-alert.success{line-height:1.9}.account-page button:disabled{cursor:not-allowed;opacity:.6}.account-page .view-switch{gap:6px}.account-page .view-switch button{white-space:normal}
