:root {
  --atlas-ink:#11213a;
  --atlas-muted:#52617a;
  --atlas-line:#dce5f1;
  --atlas-blue:#254bd7;
  --atlas-pale:#edf2ff;
  --atlas-bg:#f2f6fb;
  --atlas-shadow:0 8px 24px #1f38630c;
}
body.bg-slate-50,.atlas-shell,.portal-page,.login-page {background:var(--atlas-bg)!important;color:var(--atlas-ink)}
.atlas-header {background:#101d39;color:#fff;border-bottom:1px solid #344970}
.atlas-header-inner,.atlas-context nav {max-width:1510px;margin:auto;display:flex;align-items:center;gap:20px;padding:0 28px;min-height:72px}
.atlas-brand,.atlas-account,.atlas-main-nav,.atlas-main-nav a,.atlas-context a,.atlas-kicker,.atlas-path,.atlas-action,.atlas-tile a,.atlas-live a {
  display:flex;align-items:center;gap:9px
}
.atlas-brand {flex-shrink:0;font-size:19px;font-weight:850;letter-spacing:.05em;line-height:1.05}
.atlas-brand small {display:block;font-size:10px;letter-spacing:.02em;color:#b8c8e3;font-weight:550;margin-top:4px}
.atlas-mark,.atlas-avatar {display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border-radius:12px;background:#bbf69d;color:#163525}
.atlas-account {margin-left:auto;font-size:12px;max-width:190px}
.atlas-avatar {width:31px;height:31px;border-radius:50%;background:#243b68;color:#e5eeff;font-weight:800}
.atlas-account-name {overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.atlas-account button,.atlas-menu-button,.atlas-drawer-head button {display:grid;place-items:center;padding:8px;color:inherit;border-radius:9px}
.atlas-account button:hover,.atlas-menu-button:hover {background:#ffffff24}
.atlas-main-nav {margin-left:15px;gap:5px}
.atlas-main-nav a {font-size:12px;font-weight:700;white-space:nowrap;padding:12px 11px;border-radius:10px;color:#d8e4fc}
.atlas-main-nav a:is(:hover,.is-current,[aria-current=page]) {background:#344b80;color:#fff}
.atlas-context {background:white;border-bottom:1px solid var(--atlas-line)}
.atlas-context nav {min-height:54px;gap:9px;overflow-x:auto}
.atlas-context a {flex-shrink:0;white-space:nowrap;padding:9px 12px;border-radius:9px;font-size:12px;font-weight:650;color:var(--atlas-muted)}
.atlas-context a:is(:hover,[aria-current=page]) {background:var(--atlas-pale);color:#2243b4}
.atlas-menu-button,.atlas-mobile-menu,.atlas-scrim {display:none}
.pdks-compact .atlas-main {max-width:1510px;padding:22px 28px 40px;margin:0 auto}
.atlas-path {flex-wrap:wrap;color:var(--atlas-muted);font-size:11px;padding:0 2px 15px}
.atlas-path a {color:#2346b8;font-weight:700}
.atlas-overview-heading {padding:8px 0 20px}
.atlas-overview-heading span,.atlas-section-label span,.atlas-kicker {font-size:10px;font-weight:800;letter-spacing:.13em}
.atlas-overview-heading span {color:#3254aa}
.pdks-compact .atlas-overview-heading h1 {font-size:clamp(32px,5vw,56px);letter-spacing:-.065em;line-height:1.05;font-weight:820;margin:7px 0}
.atlas-overview-heading p,.atlas-live p {color:var(--atlas-muted)}
.atlas-lead-grid {display:grid;grid-template-columns:minmax(0,1.85fr) minmax(260px,1fr);gap:16px}
.atlas-feature,.studio-login-story,.login-page .login-story {
  position:relative;isolation:isolate;overflow:hidden;color:#fff;
  background:linear-gradient(120deg,#172c75 0%,#264bcc 55%,#285fe2 76%,#028c97 100%);
}
.atlas-feature::before,.studio-login-story::before,.login-page .login-story::before {
  content:"";position:absolute;z-index:-1;inset:0;
  background:repeating-linear-gradient(128deg,#ffffff00 0 14px,#ffffff22 15px 16px,#ffffff00 17px 24px);
  mask-image:linear-gradient(90deg,transparent 44%,#000);
}
.atlas-feature::after,.studio-login-story::after,.login-page .login-story::after {
  content:"";position:absolute;z-index:-1;right:-52px;bottom:-148px;width:340px;height:340px;border-radius:78px;
  transform:rotate(-23deg);border:28px solid #befb9d80;box-shadow:0 0 0 22px #b8fff735;pointer-events:none;
}
.atlas-feature,.atlas-live {min-height:268px;padding:24px 27px;border-radius:21px}
.atlas-kicker {display:inline-flex}
.pdks-compact .atlas-feature h2 {font-size:clamp(33px,5.2vw,65px);line-height:.99;letter-spacing:-.065em;font-weight:840;margin:13px 0}
.atlas-feature p {max-width:40ch;color:#f0f6ff}
.atlas-action {display:inline-flex;gap:17px;margin-top:19px;padding:11px 13px;border-radius:9px;color:#143221;background:#bdf799;font-weight:800}
.atlas-action:hover {background:#dcffc9}
.atlas-live {background:linear-gradient(145deg,#effcf0,#e0f5e9);border:1px solid #cde7da;color:#173b2d}
.atlas-live strong {display:block;font-size:clamp(22px,3vw,36px);letter-spacing:-.045em;margin:17px 0 5px}
.atlas-live a {margin-top:9px;width:fit-content;border:1px solid #b1d8c2;border-radius:8px;padding:8px 11px;font-weight:750;background:#ffffff9c}
.atlas-live a:hover {background:white}
.atlas-section-label {display:flex;justify-content:space-between;align-items:center;margin:23px 0 10px}
.pdks-compact .atlas-section-label h2 {font-size:22px;letter-spacing:-.03em;font-weight:780}
.atlas-section-label span {color:#536681}
.studio-tile-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.atlas-tile,.pw-root section,.pw-root form,.rr-card,.rr-workspace,.portal-page .finder,.portal-page .detail-panel,.portal-page .date-toolbar {
  background:#fff;border:1px solid var(--atlas-line)!important;border-radius:15px!important;box-shadow:var(--atlas-shadow)
}
.atlas-tile {padding:13px}
.atlas-tile-title {display:flex;align-items:center;gap:9px;margin:0 0 9px}
.atlas-tile-title span {display:grid;place-items:center;width:39px;height:39px;flex-shrink:0;border-radius:11px;color:#2845b2;background:#eaf0ff}
.atlas-tile:nth-child(2) .atlas-tile-title span {color:#16644b;background:#dff7e9}
.atlas-tile:nth-child(3) .atlas-tile-title span {color:#843d18;background:#fff0df}
.atlas-tile:nth-child(4) .atlas-tile-title span {color:#4b4291;background:#eeeaff}
.atlas-tile-title h3 {font-weight:790;line-height:1.12}
.atlas-tile a {padding:8px 5px;border-radius:7px;font-size:12px;color:#344764;font-weight:630}
.atlas-tile a:hover {background:#edf3ff;color:#2343aa}
.atlas-tile a svg {flex-shrink:0}
.pw-root,.rr-root {color:var(--atlas-ink)}
.pw-root .pm-heading,.rr-root .rr-toolbar {background:#fff!important;border:1px solid var(--atlas-line)!important;border-radius:14px;padding:13px 15px}
.pdks-compact .pdks-main :is(.pw-root,.rr-root) h1 {font-size:clamp(22px,3vw,32px);font-weight:820;letter-spacing:-.045em;line-height:1.13}
.pw-root th,.rr-root th,.portal-page th,.pdks-main thead {background:#e9f0fc!important;color:#293f64!important}
.pw-root td button {white-space:nowrap;overflow-wrap:normal}
.pw-root td,.rr-root td,.portal-page td {border-color:#e8edf6!important}
.pw-root :is(button,input,select,textarea),.rr-root :is(.rr-btn,input,select),.portal-page :is(button,input,select),.login-page :is(button,input) {border-radius:9px}
.pw-root button,.rr-root .rr-btn,.portal-page .button,.login-page .button {font-weight:700}
.pw-root button[type=submit],.pw-root .pm-heading button,.rr-root .rr-btn-primary,.portal-page .primary,.login-page .primary,.atlas-login form button,.atlas-main button.bg-blue-600 {
  background:linear-gradient(104deg,#284bd2,#2356dd)!important;color:white!important;border-color:#284bd2!important;
  box-shadow:0 4px 11px #264bd32a;
}
:is(.atlas-shell,.atlas-login,.login-page,.portal-page) :is(a,button,input,select,textarea):focus-visible {outline:3px solid #537af5;outline-offset:2px}
:is(.pw-root,.rr-root,.portal-page,.login-page) button:not(:disabled):hover {filter:brightness(.95)}
:is(.pm-study,.study-summary,.class-target683) {background:#eef5ff!important;border:1px solid #d8e6fc;border-radius:12px;padding:12px}
.atlas-login,.login-page .login-layout {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.13fr);gap:24px;min-height:100vh;padding:24px}
.atlas-login > .max-w-md,.login-page .login-side {grid-row:1;grid-column:1;align-self:center;justify-self:center;width:min(100%,440px)}
.studio-login-story,.login-page .login-story {grid-column:2;grid-row:1;border-radius:24px;display:flex;flex-direction:column;justify-content:center;padding:clamp(25px,6vw,90px)}
.studio-login-story .studio-kicker {display:flex;align-items:center;gap:10px;font-size:12px;font-weight:800;letter-spacing:.1em;color:#c9ffaf}
.studio-login-story h1,.login-page .login-story h1 {font-size:clamp(40px,6vw,94px);line-height:.99;letter-spacing:-.064em;font-weight:840;margin:18px 0}
.studio-login-story p,.login-page .login-story p {color:#eef5ff;font-size:14px;max-width:39ch}
.atlas-login-stamp {display:flex;align-items:center;gap:8px;margin-top:22px;font-size:12px;font-weight:700;color:#c9ffaf}
.studio-login-heading {margin-bottom:15px}
.studio-login-heading .studio-kicker,.login-page .login-form .eyebrow {color:#284abc;font-size:10px;font-weight:850;letter-spacing:.14em}
.studio-login-heading h2,.login-page .login-form h2 {font-size:clamp(29px,4vw,48px);line-height:1.05;letter-spacing:-.055em;font-weight:820;margin:5px 0}
.studio-login-heading p,.login-page .muted,.login-page .help {color:var(--atlas-muted)}
.studio-login-links {display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}
.studio-login-links a {background:#fff;border:1px solid var(--atlas-line);color:#284abc;text-decoration:none;border-radius:9px;padding:8px 11px;font-size:12px;font-weight:750}
.studio-login-links a:hover {background:#e6eeff}
.login-page .login-side {background:transparent;padding:0}
.portal-login-box,.login-page .login-form {width:100%;max-width:none}
.login-page .login-form {padding:22px;background:white;border:1px solid var(--atlas-line);border-radius:16px;box-shadow:var(--atlas-shadow);gap:17px}
.login-page .login-story .brandmark {margin-bottom:21px;background:#c9ffaf;color:#1e4632}
.login-page .login-story .eyebrow,.login-page .story-features {color:#ecf5ff}
.portal-page .atlas-portal-header {
  position:static;width:auto;padding:14px max(18px,calc((100vw - 1440px)/2 + 25px));display:flex;flex-direction:row;
  align-items:center;justify-content:space-between;background:#101d39
}
.portal-page .brand,.portal-page .account {margin:0;padding:0;border:0}
.portal-page .brandmark {background:#bbf69d;color:#193927}
.portal-page .account .text-button {margin-left:7px;padding:7px 10px;border:1px solid #5b7093;border-radius:9px;color:white}
.portal-page .main {margin:0 auto;max-width:1440px;padding:22px 25px}
.portal-page .page-heading {padding:17px 19px;border-radius:14px;background:linear-gradient(108deg,#152e70,#2d52bb 72%,#147885);color:white}
.portal-page .page-heading h1 {font-size:clamp(26px,4vw,49px);letter-spacing:-.057em;line-height:1.05}
.portal-page .page-heading :is(.eyebrow,.muted,.today) {color:#e1edff}
.portal-page .workspace {grid-template-columns:minmax(205px,275px) minmax(0,1fr)}
.portal-report-desk {min-width:0}
.portal-page .date-toolbar {margin-bottom:13px}
.portal-page .stat {background:#eff5ff;border-color:#dfeaff}
.portal-page :is(.student-card.selected,.chip) {background:#e8efff;border-color:#adc1f6;color:#2949a2}
.portal-page :is(.student-identity small,.stat span,.finder .muted,.empty) {color:var(--atlas-muted)}
@media(max-width:1023px) {
  .atlas-main-nav {display:none}
  .atlas-menu-button {display:grid}
  .atlas-header-inner,.atlas-context nav {padding-inline:14px;min-height:58px}
  .atlas-context nav {min-height:48px}
  .atlas-scrim {display:block;position:fixed;inset:0;background:#0b16378c;z-index:50}
  .atlas-mobile-menu {display:block;position:fixed;inset:0 auto 0 0;width:min(315px,90vw);overflow:auto;background:#fff;color:var(--atlas-ink);padding:15px;z-index:51;box-shadow:15px 0 40px #0b16374d}
  .atlas-drawer-head {display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--atlas-line);padding-bottom:7px}
  .atlas-mobile-menu nav a {display:flex;align-items:center;gap:8px;text-decoration:none;color:#213d74;min-height:38px!important}
  .atlas-mobile-menu nav a[aria-current=page] {background:#e7eeff}
  .atlas-mobile-menu nav h2 {color:#4b5d7d;font-size:11px;font-weight:800;text-transform:uppercase;padding:10px 8px 3px}
}
@media(max-width:760px) {
  .pdks-compact .atlas-main,.portal-page .main {padding:15px 12px 28px}
  .atlas-lead-grid {grid-template-columns:1fr}
  .atlas-live,.atlas-feature {min-height:0;padding:20px}
  .studio-tile-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .atlas-login,.login-page .login-layout {grid-template-columns:1fr;padding:13px;gap:17px}
  .studio-login-story,.login-page .login-story {grid-column:1;grid-row:1;min-height:200px}
  .atlas-login > .max-w-md,.login-page .login-side {grid-column:1;grid-row:2}
  .login-page .story-features {display:none}
}
@media(max-width:430px) {
  .atlas-header-inner {gap:8px}
  .atlas-account-name {display:none}
  .studio-tile-grid {grid-template-columns:1fr}
  .pw-root fieldset {min-width:0}
  .pw-root .pw-grid {grid-template-columns:minmax(0,1fr)}
}
@media print {
  .atlas-header,.atlas-context,.atlas-path,.portal-page .atlas-portal-header {display:none}
  .portal-page .detail-panel {box-shadow:none;border:0}
}
/* Keep the entry, exit and duration lines on a shared vertical rhythm. */
.pdks-compact .rr-root .rr-daily-table .rr-time-stack {
  display:flex;flex-flow:column nowrap;align-items:flex-start;gap:2px;line-height:1.35
}
.pdks-compact .rr-root .rr-daily-table .rr-time-stack > :is(time,span) {
  min-height:19px;padding:1px 4px;white-space:nowrap;font-variant-numeric:tabular-nums
}
.atlas-holiday-list {font-size:12px;color:var(--atlas-muted);margin:8px 0}
.atlas-holiday-list summary {cursor:pointer;color:#2949a2;font-weight:700}
.atlas-holiday-list ul {padding-left:19px;margin:5px 0}
.atlas-report-summary {display:grid;gap:6px;margin:12px 0}
.atlas-report-summary-row {display:grid;grid-template-columns:1.2fr .9fr 1fr 1fr;gap:6px}
.atlas-report-summary-row > div {display:grid;gap:3px;min-width:0;background:#f1f5ff;border:1px solid #dbe6fb;border-radius:8px;padding:8px}
.atlas-report-summary-row > div:first-child {background:#e5f5ee;border-color:#d0e9de}
.atlas-report-summary-row span {font-size:11px;color:#465c81}
.atlas-report-summary-row strong {font-size:13px;color:#17365c}
.rr-root .rr-daily-table td.atlas-day-total,.portal-page td:has(.atlas-day-total) {vertical-align:middle;font-weight:700}
.pw-root fieldset.atlas-rest-days {min-width:0;padding:7px 0;border:0}
.atlas-rest-days legend {font-weight:700}
.atlas-rest-days > div {display:flex;gap:4px 10px;flex-wrap:wrap}
.atlas-rest-days input {margin-right:4px}
.atlas-rest-days small {color:var(--atlas-muted)}
@media(max-width:650px) {
  .atlas-report-summary-row {grid-template-columns:repeat(2,minmax(0,1fr))}
}
.rr-student-row {display:flex;align-items:center;min-width:0}
.rr-student-row .rr-student-toggle {flex:1;min-width:0;align-self:stretch}
.rr-student-card.is-open > .rr-student-row {background:linear-gradient(100deg,#e6f1ff,#e5f6f5)}
.rr-student-exports {display:flex;align-items:center;gap:5px;padding:4px 8px 4px 1px;flex-shrink:0}
.rr-student-exports button {
  display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:30px;padding:3px 7px;
  border:1px solid #d1dff2;border-radius:7px;background:#f3f7ff;color:#2345a1;font-size:11px;font-weight:750;white-space:nowrap
}
.rr-student-exports button:last-child {background:#edf9f3;border-color:#c8e9d9;color:#176044}
.rr-student-exports button:not(:disabled):hover {filter:brightness(.94)}
.rr-student-exports button:disabled {opacity:.6;cursor:wait}
@media(max-width:480px) {
  .rr-student-exports {flex-direction:column;padding-right:5px;gap:4px}
  .rr-student-exports button {width:100%;min-height:32px}
}
.portal-page .pdf-export-status:empty {display:none}
.portal-page .pdf-export-status {margin-top:10px;color:var(--atlas-muted)}
