/* Energetic visual layer. The base stylesheet retains the calculator layouts. */
:root{font-size:18px;--paper:#faf9f2;--lime:#d6f57e;--line:#dce3d6;--muted:#52665d;--ink:#17382c;--green:#165c42;--soft:#eaf1e1}
body{background:radial-gradient(ellipse at 98% 7%,#f2e6fb77,transparent 33%),radial-gradient(ellipse at 3% 22%,#e5f4d177,transparent 25%),var(--paper)}
.scroll-progress{height:4px;position:fixed;inset:0 0 auto;z-index:50;transform:scaleX(var(--scroll-progress,0));transform-origin:left;background:linear-gradient(90deg,#226c48,#c0e871,#b7a0ec,#e7ac77);pointer-events:none}
.header{gap:18px}.nav{gap:21px}.nav>a{position:relative}.nav>a:not(.header-plan):after{content:'';position:absolute;bottom:-7px;left:0;width:100%;height:2px;background:#718aef;transform:scaleX(0);transform-origin:left;transition:transform .25s}.nav>a:hover:after{transform:scaleX(1)}
.brand svg{transition:transform .4s cubic-bezier(.2,.8,.2,1)}.brand:hover svg{transform:rotate(-9deg) translateY(-2px)}.beta{background:#e5f0d4;color:#496a36}
.motion-toggle{display:flex;align-items:center;justify-content:center;gap:6px;background:#fff8;border:1px solid #cad6c0;border-radius:20px;padding:8px 11px;color:#355f42;font-size:11px;white-space:nowrap}.motion-icon{color:#719f42;font-size:13px}.motion-toggle:hover{background:#e9f5d5}.motion-toggle[aria-pressed=false] .motion-icon{color:#7d8678}
.button{position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s,background .25s}.button:hover{transform:translateY(-3px);box-shadow:0 7px 0 #143c2214}.button:active{transform:translateY(0)}.button:after{content:'';position:absolute;inset:-100% -45%;background:linear-gradient(110deg,transparent 40%,#ffffff25 50%,transparent 60%);transform:translateX(-65%) rotate(-4deg);pointer-events:none}.button:hover:after{animation:button-sheen .7s ease both}.button span{transition:transform .25s}.button:hover span{transform:translate(3px,-3px)}
.hero{padding:49px 0 52px;gap:65px}.hero h1 em{color:#547d37;text-decoration:underline;text-decoration-color:#cfe0a2;text-underline-offset:10px;text-decoration-thickness:4px}.hero .eyebrow{letter-spacing:1.45px}.hero-copy{color:#52655d}.hero-actions .button.dark{background:#1f6547;box-shadow:0 5px 0 #c3d4b5}.hero-actions .button.dark:hover{box-shadow:0 8px 0 #c3d4b5}.eyebrow .dot{box-shadow:0 0 0 4px #d8e9bc;animation:dot-breathe 3s ease-in-out infinite}
.demo-wrap{padding:8px 0 9px 7px}.demo-wrap:before{right:0;background:linear-gradient(145deg,#e9e2fb,#e7f0cd 54%,#f5e5c7);transform:rotate(2deg);border-radius:25px}.demo-card{border-color:#ccd8bd;transform:none;border-radius:18px;box-shadow:0 20px 45px #284d2610;transition:transform .5s}.demo-card:hover{transform:translateY(-3px)}.demo-top{padding:21px 26px 20px}.demo-overline{margin-bottom:13px}.demo-card h2{margin-bottom:8px}.demo-card .demo-help{margin-bottom:17px}.demo-result{background:linear-gradient(115deg,#15553d,#286b4d)}.demo-result a{transition:background .2s,transform .2s}.demo-result a:hover{background:#ffffff1a;transform:translateX(3px)}.demo-note{line-height:1.7;max-width:440px}
.hero-art{height:169px;position:relative;overflow:hidden;background:#f8efd9}.hero-art img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;animation:hero-float 6s ease-in-out infinite;animation-play-state:paused;transform-origin:center}.demo-card.in-view .hero-art img{animation-play-state:running}.hero-art-note{position:absolute;bottom:9px;left:14px;padding:5px 8px;background:#e1edb9;box-shadow:2px 3px 0 #46613116;border-radius:5px;font-size:9px;font-weight:650;letter-spacing:1px;transform:rotate(-3deg)}.hero-spark{position:absolute;color:#f3a646;text-shadow:0 2px 0 #835e1515;font-size:30px;animation:spark-turn 18s linear infinite;animation-play-state:paused}.demo-card.in-view .hero-spark{animation-play-state:running}.spark-one{top:13px;left:13px}.spark-two{bottom:28px;right:18px;color:#8a78d1;font-size:23px;animation-direction:reverse}
.category-rail{background:#ffffff70;border:1px solid #d7e2ca;border-radius:13px;padding:20px 23px;box-shadow:0 4px 0 #e9eddc}.category-rail a:first-child{padding-left:0}.category-rail a{transition:transform .25s}.category-rail a:hover{transform:translateY(-4px)}.category-symbol{color:#628239}.category-rail a:nth-child(2) .category-symbol{color:#8c74ba}.category-rail a:nth-child(3) .category-symbol{color:#ca8c50}.category-rail a:nth-child(5) .category-symbol{color:#657dd1}
.tool-grid{gap:21px}.tool-card{padding:0;overflow:hidden;background:#fff;border-radius:16px;border:1px solid #dbe2d4;box-shadow:0 5px 0 #e9eddf;display:flex;flex-direction:column;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .3s;isolation:isolate}.tool-card:hover{transform:translateY(-8px) rotate(-.35deg);border-color:#a3bc8a;box-shadow:0 12px 24px #25452c13,0 5px 0 #d7e4c4}.tool-card:nth-child(even):hover{transform:translateY(-8px) rotate(.35deg)}.tool-card-body{padding:20px 23px 22px;display:flex;flex:1;flex-direction:column}.card-top{margin-bottom:13px}.card-top .tool-icon{width:27px;height:27px;font-size:21px;border-radius:8px;background:#f0f4e8}.card-top .tool-tag{color:#5b6f52;font-size:11px;line-height:1.45}.tool-card h3{line-height:1.22;margin-bottom:10px}.tool-card p{line-height:1.8;margin-bottom:20px;color:#5b6b60}.card-bottom{border-top:1px solid #eef1e8;padding-top:13px;color:#3e6c3c}.card-bottom>span:last-child{height:29px;width:29px;display:grid;place-items:center;border-radius:50%;background:#e9f3da;transition:background .25s,transform .3s}.tool-card:hover .card-bottom>span:last-child{transform:rotate(-6deg) translate(3px,-3px);background:#d4edaa}
.tool-art{height:177px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:hidden;flex:none;background:#f3f3e7}.tone-mint{background:#e8f2df}.tone-lilac{background:#eee8f7}.tone-peach{background:#faecdc}.tone-butter{background:#f6f1d3}.tone-blue{background:#e9eefb}.tool-art-scene{width:177px;height:177px;flex:none;background-image:url('/assets/student-tools-atlas.webp');background-size:400% 300%;background-repeat:no-repeat;mix-blend-mode:multiply;position:relative;z-index:1;animation:scene-float 6s ease-in-out infinite;animation-delay:var(--float-delay,0s);animation-play-state:paused;transition:transform .35s}.tool-card.in-view .tool-art-scene,.guide-card.in-view .tool-art-scene{animation-play-state:running}.tool-card:hover .tool-art-scene,.guide-card:hover .tool-art-scene{animation-play-state:paused;transform:translateY(-4px) rotate(-4deg) scale(1.055)}.art-orbit{position:absolute;border:1px solid #ffffffb3;border-radius:50%;width:180px;height:180px;pointer-events:none}.orbit-one{top:-81px;right:-43px}.orbit-two{bottom:-113px;left:-35px;width:210px;height:210px;border-width:18px;border-color:#ffffff35}.art-spark{position:absolute;top:15px;right:19px;color:#7c926050;font-size:24px;transition:transform .5s}.tone-lilac .art-spark{color:#8674b65c}.tone-peach .art-spark{color:#cf90585c}.tone-blue .art-spark{color:#758bd05c}.tool-card:hover .art-spark{transform:rotate(90deg) scale(1.2)}
.filter-tabs{background:#edf1e4;padding:5px;border-radius:9px}.filter-tabs button{transition:background .2s,color .2s,transform .2s;border-radius:6px}.filter-tabs button:hover{transform:translateY(-2px);color:#234e39;background:#e1ebd4}.filter-tabs button[aria-pressed=true]{background:var(--green);color:white;box-shadow:0 3px 7px #23452d1a}.tool-search{background:#fff;border-radius:9px}.section-line h2{line-height:1.17}.section-line>a{color:#496c3c}
.workflow{position:relative;overflow:hidden;background:linear-gradient(120deg,#e4efcf,#e7e9f8);border:1px solid #dce3ce;border-radius:18px;padding:37px 36px;box-shadow:0 7px 0 #e9eddf}.workflow:after{content:'✦';position:absolute;right:8px;top:-17px;font-size:120px;color:#c9d5a93b;pointer-events:none}.workflow-steps>div{position:relative;z-index:1;transition:transform .3s}.workflow-steps>div:hover{transform:translateY(-6px)}.step-number{display:inline-grid;place-items:center;font:italic 25px Georgia,serif;width:43px;height:43px;background:#d3e8a6;border-radius:13px;color:#3d683b;box-shadow:3px 4px 0 #bdd18f66;transform:rotate(-7deg)}.workflow-steps>div:nth-child(2) .step-number{background:#ddd1f1;color:#715698;box-shadow:3px 4px 0 #c9b8e066;transform:rotate(5deg)}.workflow-steps>div:nth-child(3) .step-number{background:#f4d8b2;color:#8c6438;box-shadow:3px 4px 0 #e4c19566}.workflow-steps h3{font-size:14px}.workflow-steps p{font-size:12px}.guide-card{padding:0;background:#fff;border:1px solid #dde4d4;border-radius:15px;overflow:hidden;box-shadow:0 4px 0 #e9eddf;transition:transform .3s,box-shadow .3s}.guide-card:hover{transform:translateY(-6px);box-shadow:0 10px 22px #284c3112}.guide-card .tool-art{height:128px}.guide-card .tool-art-scene{height:135px;width:135px}.guide-card-body{padding:22px}.guide-card h3{font-size:25px}.guide-card small{font-size:11px}.guide-card p{font-size:13px}.guides-list{gap:23px}.local-banner{background:linear-gradient(110deg,#19543d,#326d52);border-radius:17px;box-shadow:0 7px 0 #dfe8d6;position:relative;overflow:hidden}.local-banner:after{content:'✦';position:absolute;right:25%;top:3px;font-size:160px;color:#deecad0d;pointer-events:none}.local-banner .button{z-index:1}
.form-card,.schedule-panel,.saved-card{box-shadow:0 5px 0 #e9eddf;border-radius:15px}.input-wrap input,input,select,textarea{transition:border-color .2s,box-shadow .2s,background .2s}input:focus,select:focus,textarea:focus{background:#fcfff7;box-shadow:0 0 0 4px #d6edb533}.result-card{border-radius:16px;box-shadow:0 6px 0 #cfdbc16b;background:linear-gradient(125deg,#15573e,#2c6d4c)}.result-card.warning{background:linear-gradient(125deg,#72502e,#8c623d)}.result-main{position:relative;overflow:hidden}.result-main:after{content:'✦';position:absolute;right:-5px;top:45px;font-size:150px;color:#f2e9ad07;pointer-events:none}.result-number{animation:result-pop .42s cubic-bezier(.2,.75,.2,1) both}.result-overline{font-size:11px;letter-spacing:1px;gap:8px}.result-next a{transition:transform .25s}.result-next a:hover{transform:translateX(4px)}.schedule-table tr{transition:background .2s}.schedule-table tbody tr:hover{background:#eff6e7}.saved-card{transition:transform .25s,box-shadow .25s}.saved-card:hover{transform:translateY(-4px);box-shadow:0 10px 20px #25452c12}.saved-type{color:#638345}.empty-state{background:linear-gradient(140deg,#e8f1d9,#f0eafa);border-radius:17px}.empty-state .category-symbol{display:inline-block;animation:arrow-lift 3s ease-in-out infinite}.toast{animation:toast-appear .25s ease both}.footer{background:#f1f3e9}.footer-links a{transition:color .2s,transform .2s}.footer-links a:hover{color:#15553d;transform:translateY(-2px)}
.motion-ready [data-reveal]:not(.is-visible){opacity:0;transform:translateY(23px)}.motion-ready [data-reveal]{transition:opacity .6s ease,transform .6s cubic-bezier(.18,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}.motion-ready [data-reveal].is-visible{opacity:1}.motion-ready .tool-card.is-visible:hover{transform:translateY(-8px) rotate(-.35deg)}
@keyframes scene-float{0%,100%{transform:translateY(1px) rotate(-1deg)}50%{transform:translateY(-5px) rotate(1deg)}}
@keyframes hero-float{0%,100%{transform:translateY(3px) rotate(-.5deg) scale(.97)}50%{transform:translateY(-3px) rotate(.6deg) scale(1.01)}}
@keyframes spark-turn{to{transform:rotate(360deg)}}
@keyframes dot-breathe{0%,100%{box-shadow:0 0 0 4px #d8e9bc}50%{box-shadow:0 0 0 7px #d8e9bc44}}
@keyframes button-sheen{to{transform:translateX(65%) rotate(-4deg)}}
@keyframes result-pop{from{opacity:.2;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}
@keyframes arrow-lift{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-7px) rotate(6deg)}}
@keyframes toast-appear{from{opacity:0;transform:translate(-50%,9px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:1100px){.nav{gap:13px}.nav>a{font-size:13px}.motion-toggle{padding:7px 8px;font-size:10px}.hero{gap:35px}.tool-controls{flex-wrap:wrap}.filter-tabs{gap:3px}.filter-tabs button{padding:8px 10px}.tool-card-body{padding:19px 21px}.hero-art{height:158px}}
@media(max-width:850px) and (min-width:761px){.nav{gap:11px}.nav>a{font-size:12px}.brand{font-size:25px}.motion-toggle{font-size:9px;padding:7px}.nav .header-plan{padding:10px 12px}.header{gap:12px}.hero h1{font-size:59px}.category-rail{padding:19px 16px}.category-rail a{padding-left:10px;font-size:11px}}
@media(max-width:760px){.nav{gap:19px}.nav>a{font-size:15px}.motion-toggle{font-size:12px;min-height:40px;padding:9px 12px}.nav .header-plan{margin-left:0}.hero{padding:35px 0 35px;gap:31px}.hero h1{font-size:66px;letter-spacing:-2.8px}.hero-art{height:157px}.demo-top{padding:22px}.demo-wrap{max-width:500px;padding-left:0}.demo-note{max-width:100%}.category-rail{padding:21px 17px;gap:23px 11px}.category-rail a{padding-left:0;font-size:12px}.category-rail small{font-size:10px}.category-symbol{font-size:26px}.tool-grid{gap:19px}.tool-art{height:164px}.tool-art-scene{height:164px;width:164px}.tool-card-body{padding:20px}.tool-card h3{font-size:24px}.tool-card p{font-size:13px}.tool-controls{gap:15px}.filter-tabs{width:100%;padding:5px}.filter-tabs button{font-size:12px;padding:9px 11px}.tool-search{font-size:13px}.section-line{align-items:start}.section-line h2{font-size:34px}.section-line>a{font-size:12px;line-height:1.8}.workflow{padding:27px 24px}.workflow-steps{gap:18px}.workflow-steps h3{font-size:14px}.workflow-steps p{font-size:12px}.guide-grid{gap:18px}.guide-card .tool-art{height:143px}.guide-card .tool-art-scene{height:150px;width:150px}.guide-card h3{font-size:26px}.guide-card p{font-size:14px}.local-banner p{font-size:13px}.result-overline{font-size:10px}.result-metrics .metric-row{font-size:13px}.form-heading{gap:12px}.example-badge{font-size:11px}.row-labels{font-size:11px}.assessment-row input,.assessment-row select{font-size:13px;height:43px}.week-grid .field{font-size:11px}.week-grid input{font-size:14px;padding:12px 2px}.field-note{font-size:12px}.availability legend,.working-days legend{font-size:14px}.day-checks label{font-size:12px}.schedule-panel{padding:23px 18px}.schedule-table th{font-size:11px}.schedule-table td{font-size:13px}.schedule-table td:first-child{font-size:12px}.footer-links{font-size:12px}.footer-bottom{font-size:11px}.guides-list{gap:20px}.category-rail a:nth-child(5){grid-column:2/4}}
@media(max-width:520px){.tool-grid{grid-template-columns:1fr}.tool-card{display:grid;grid-template-columns:123px minmax(0,1fr);min-height:215px;align-items:stretch}.tool-card .tool-art{height:100%;min-height:215px;width:123px}.tool-card .tool-art-scene{width:128px;height:128px}.tool-card-body{padding:18px 16px}.card-top{margin-bottom:11px;gap:6px}.card-top .tool-icon{display:none}.card-top .tool-tag{text-align:left;font-size:10px}.tool-card h3{font-size:24px;letter-spacing:-.6px}.tool-card p{font-size:13px;line-height:1.7;margin-bottom:13px}.card-bottom{padding-top:10px;font-size:12px;gap:8px}.card-bottom>span:last-child{height:24px;width:24px;flex:none;font-size:19px}.art-spark{right:9px;top:12px;font-size:20px}.section-line h2{font-size:32px}.tool-card .orbit-one{right:-100px}.tool-card .orbit-two{left:-120px}.related-section .tool-card{min-height:210px}.hero h1{font-size:61px;letter-spacing:-2.8px}.hero-copy{font-size:16px}.hero .eyebrow{font-size:11px;letter-spacing:1.1px;line-height:1.8}.hero-actions{gap:16px;font-size:13px;flex-wrap:wrap}.hero-actions .button{padding:14px 18px;font-size:14px}.trust-line{font-size:11px;gap:10px}.hero-art-note{font-size:9px}.hero .demo-overline{font-size:10px}.demo-inputs{gap:9px}.demo-inputs label>span{font-size:12px}.demo-inputs .input-wrap input{font-size:20px}.demo-result{padding:22px}.demo-result a{font-size:11px}.demo-result small{font-size:12px}.demo-number{font-size:57px}.workflow-steps{grid-template-columns:1fr;gap:22px}.workflow-steps>div{display:grid;grid-template-columns:45px minmax(0,1fr);gap:0 14px}.workflow-steps h3{margin:3px 0 6px}.workflow-steps p{grid-column:2;margin:0}.step-number{grid-row:1/3}.header{gap:8px}.header .beta{display:none}.brand{font-size:25px}.page-heading h1{font-size:42px}.form-actions{flex-wrap:wrap}.form-actions .button{font-size:14px}.result-unit{font-size:15px}.inline-fields{flex-wrap:wrap}.inline-fields .text-button{font-size:12px}.result-number{font-size:65px}.tool-page .related-section .tool-grid{grid-template-columns:1fr}}
@media(max-width:350px){.shell{padding:0 17px}.hero h1{font-size:55px}.tool-card{grid-template-columns:103px minmax(0,1fr)}.tool-card .tool-art{width:103px}.tool-card .tool-art-scene{width:110px;height:110px}.tool-card-body{padding:16px 13px}.tool-card h3{font-size:21px}.card-bottom{font-size:12px}.demo-top{padding:20px 17px}.demo-result{padding:20px 17px}.hero-actions{gap:15px}.demo-number{font-size:49px}.demo-result a{font-size:10px}.category-rail{padding:20px 12px}.category-rail a{font-size:11px}.category-rail small{font-size:9px}.week-grid{gap:3px}.week-grid input{font-size:13px}.form-card{padding:22px 16px}.form-heading h2{font-size:25px}.example-badge{font-size:10px}.result-overline{font-size:9px}.field-grid{gap:0 10px}.field{font-size:13px}.schedule-table th:first-child{width:36%}.schedule-table th:last-child{width:27%}}
.tool-art-scene{background:none;overflow:hidden}.field-grid>.field{display:flex;flex-direction:column}.field-grid>.field>.input-wrap{margin-top:auto}html[data-motion=off]{scroll-behavior:auto!important}
html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}html[data-motion=off] [data-reveal]{opacity:1!important;transform:none!important}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready [data-reveal]{opacity:1!important;transform:none!important}}
@media print{.hero-art,.tool-art,.motion-toggle,.scroll-progress{display:none!important}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready [data-reveal]{opacity:1!important;transform:none!important}.tool-card{display:block;box-shadow:none}.tool-card-body{padding:15px}}

/* A colorful study-space backdrop, with graph-paper texture and orbital doodles. */
body{position:relative;isolation:isolate;background:#f8faf0}
.campus-backdrop{position:fixed;inset:0;overflow:hidden;z-index:-1;pointer-events:none;contain:strict;background:linear-gradient(135deg,#f4f8df 0%,#faf7ec 43%,#f2eafa 76%,#edf6ef 100%)}
.ambient-color{position:absolute;border-radius:50%;animation:ambient-drift 24s ease-in-out infinite alternate;will-change:transform}
.ambient-mint{width:850px;height:850px;left:-390px;top:-240px;background:radial-gradient(circle,#bde976a3 0%,#d5ed9b80 34%,#dfedaa00 70%)}
.ambient-lilac{width:920px;height:920px;right:-390px;top:-150px;background:radial-gradient(circle,#bda2ed80 0%,#d0b7f366 33%,#e2cff300 69%);animation-delay:-8s;animation-duration:30s}
.ambient-peach{width:850px;height:760px;left:15%;bottom:-450px;background:radial-gradient(ellipse,#f9c37a85 0%,#f5dba25c 34%,#fae1bb00 70%);animation-delay:-15s;animation-duration:27s}
.campus-grid{position:absolute;inset:0;background-image:radial-gradient(circle,#66805440 .8px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(90deg,#0009,transparent 37%,transparent 63%,#0008);opacity:.65}
.background-sketch{position:absolute;width:240px;color:#8a73ba;opacity:.19;animation:sketch-sway 22s ease-in-out infinite alternate;transform-origin:center}
.sketch-orbit{right:-92px;top:32%}.sketch-trail{left:-100px;bottom:2%;width:260px;color:#5d8d46;opacity:.21;animation-delay:-10s}
.header{background:#fff7;border-bottom-color:#b9cba566;border-radius:0 0 18px 18px;padding:0 15px;margin:0 -15px;box-shadow:0 9px 30px #54723505}
.hero{position:relative;isolation:isolate}
.hero:before{content:'';position:absolute;z-index:-1;inset:22px -22px 20px;border-radius:32px;background:linear-gradient(112deg,#ffffff56,#ffffff20 43%,#e8ddfa35);border:1px solid #ffffff6b;box-shadow:inset 0 0 70px #ffffff38;pointer-events:none}
.hero:after{content:'';position:absolute;z-index:-1;width:240px;height:240px;left:-145px;top:25px;border:1px solid #92b56845;border-radius:50%;box-shadow:0 0 0 24px #ffffff14,0 0 0 25px #92b56825,0 0 0 52px #ffffff14,0 0 0 53px #92b56818;pointer-events:none}
.category-rail{background:#ffffffa8;box-shadow:0 5px 0 #b9cba528,0 12px 32px #50693408;border-color:#b8cfa67a}
.tools-section{position:relative;isolation:isolate}
.tools-section:before{content:'';position:absolute;inset:0 -22px -20px;z-index:-1;border-radius:32px;background:linear-gradient(155deg,#ffffff38,#e4eec93b 38%,#ebe1fb42 69%,#fff0d34d);border:1px solid #ffffff8c;pointer-events:none}
.tools-section>.section-line{padding-top:23px}.tool-card,.guide-card{box-shadow:0 5px 0 #c4d0b72e,0 10px 32px #304d2410}
.tool-controls{position:relative}.filter-tabs{background:#ffffffa6;border:1px solid #d0ddbe}.tool-search{border-color:#bdcca9}
.workflow{background:radial-gradient(ellipse at 0 0,#d0eaa6a8,transparent 55%),radial-gradient(ellipse at 100% 100%,#cfc1f4a8,transparent 60%),#f2f3e9;border:1px solid #bac9a285;box-shadow:0 7px 0 #b6c59c26,0 16px 38px #4562310b}
.guides-section{position:relative;isolation:isolate}.guides-section:before{content:'';position:absolute;z-index:-1;inset:-24px -22px 30px;border-radius:32px;background:linear-gradient(125deg,#fff1d074,#ece5f666);border:1px solid #ffffff99;pointer-events:none}
.footer{background:linear-gradient(125deg,#e2edcbeb,#ebe1f0eb);border-color:#b9cba67a}
.page-heading{position:relative}.article,.workspace-notes,.explanation{background:#fff6;border-radius:22px;box-shadow:0 0 0 18px #ffffff20}.explanation{padding-left:20px;padding-right:20px}
@keyframes ambient-drift{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(45px,45px,0) scale(1.08)}}
@keyframes sketch-sway{from{transform:translateY(-8px) rotate(-8deg)}to{transform:translateY(12px) rotate(7deg)}}
@media(min-width:1400px){.sketch-orbit{right:2%;opacity:.28}.sketch-trail{left:1%;opacity:.26}}
@media(max-width:760px){.hero:before{inset:15px -12px 15px;border-radius:26px}.hero:after{left:-170px;top:30px}.header{margin:0 -8px;padding:0 8px}.ambient-mint{width:650px;height:650px;left:-330px;top:-140px}.ambient-lilac{width:650px;height:750px;right:-390px;top:190px}.ambient-peach{left:-160px;bottom:-480px}.campus-grid{background-size:21px 21px;mask-image:linear-gradient(90deg,#0007,transparent 45%,#0005)}.sketch-orbit{right:-165px;top:22%;opacity:.15}.sketch-trail{left:-170px;opacity:.15}.tools-section:before{inset:0 -12px -15px;border-radius:24px}.guides-section:before{inset:-20px -12px 25px;border-radius:24px}.tools-section>.section-line{padding-top:18px}.explanation{padding-left:12px;padding-right:12px}.article,.workspace-notes{box-shadow:0 0 0 10px #ffffff20}}
@media print{.campus-backdrop,.hero:before,.hero:after,.tools-section:before,.guides-section:before{display:none!important}body,.article,.workspace-notes,.explanation{background:white;box-shadow:none}.header{box-shadow:none}}

/* Country, study level and grading preferences. */
.profile-shell{padding-top:22px}.student-profile{background:#ffffffb8;border:1px solid #c7d5b6;border-radius:17px;box-shadow:0 5px 0 #b6c59c20;overflow:hidden}.student-profile>summary{display:flex;align-items:center;gap:13px;list-style:none;cursor:pointer;padding:17px 20px}.student-profile>summary::-webkit-details-marker{display:none}.student-profile>summary:focus-visible{outline:3px solid #779b5c;outline-offset:-4px;border-radius:17px}.profile-emblem{font-size:24px;color:#716398;background:#eae2f7;display:grid;place-items:center;flex:none;width:39px;height:39px;border-radius:12px}.profile-title{min-width:0;display:flex;flex-direction:column;gap:5px}.profile-title strong{font-size:15px;font-weight:600}.profile-title>span{font-size:12px;color:#5b6f53;line-height:1.6}.profile-edit{margin-left:auto;white-space:nowrap;font-size:12px;color:#4d6545;display:flex;align-items:center;gap:12px}.profile-edit>span{font-size:21px;transition:transform .2s}.student-profile[open] .profile-edit>span{transform:rotate(180deg)}.profile-body{padding:0 20px 12px}.profile-intro{font-size:13px;line-height:1.7;color:#52665d;margin:0 0 16px}.profile-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.profile-field{font-size:13px;display:flex;flex-direction:column;gap:8px;min-width:0;font-weight:500}.profile-field select,.profile-field input{font-size:14px;padding:12px;background:#fff;border-color:#bfccaf}.profile-field small{font-size:11px;color:var(--muted);line-height:1.6;font-weight:400}.profile-guidance{padding:13px 15px;margin-top:16px;background:linear-gradient(115deg,#edf3e2,#f0ebf8);border-radius:10px;border-left:3px solid #a6bd7b}.profile-guidance p{margin:0;font-size:12px;line-height:1.8;color:#4e6254}.profile-guidance p:empty{display:none}.profile-guidance p+p:not(:empty){margin-top:5px}.profile-guidance a{display:inline-block;font-size:11px;text-decoration:underline;text-underline-offset:3px;color:#4c663e;margin-top:7px}.profile-starts{display:flex;gap:13px;align-items:center;margin-top:14px}.profile-starts>span{font-size:11px;color:#677857;white-space:nowrap}.profile-starts>div{display:flex;flex-wrap:wrap;gap:8px}.profile-starts a{font-size:11px;line-height:1.5;border:1px solid #cbd7be;border-radius:20px;background:#ffffffb8;padding:7px 11px;transition:background .2s,transform .2s}.profile-starts a:hover{background:#e3efcf;transform:translateY(-2px)}.profile-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #d6dfc8;margin-top:14px;padding-top:6px}.profile-bottom>span{font-size:10px;line-height:1.7;color:#6a7860}.profile-bottom .text-button{font-size:11px;white-space:nowrap}.tool-count{font-size:12px;color:#53654d;line-height:1.8;margin:0 0 17px}.grading-context{border:1px solid #becfa9;border-radius:13px;background:#ffffffb8;padding:20px 23px;margin-bottom:23px;box-shadow:0 4px 0 #d2dfc23b}.setup-label{font-size:10px;letter-spacing:1.2px;color:#5f7347;font-weight:650}.grading-context p{font-size:14px;line-height:1.8;margin:9px 0;color:#3f5848}.grading-context .setup-note{font-size:12px;color:#5d6e5b}.grading-context .button{font-size:12px;margin-top:8px;min-height:40px;padding:11px 15px;background:#f0f5e7}.grading-context a{text-decoration:underline;text-underline-offset:3px}.student-profile:not([open]) .profile-title>span{max-width:680px}
@media(max-width:760px){.profile-shell{padding-top:17px}.student-profile>summary{padding:14px;gap:11px}.profile-emblem{width:33px;height:33px;font-size:22px}.profile-title strong{font-size:14px}.profile-title>span{font-size:11px}.profile-edit{font-size:0;gap:0}.profile-edit>span{font-size:21px}.profile-body{padding:0 15px 12px}.profile-fields{grid-template-columns:1fr;gap:13px}.profile-field{font-size:12px;gap:6px}.profile-field select,.profile-field input{font-size:14px;padding:11px 12px}.profile-intro{font-size:12px}.profile-starts{align-items:start;flex-direction:column;gap:9px}.profile-starts a{font-size:11px}.profile-bottom{align-items:start;gap:12px;padding-top:10px}.profile-bottom>span{font-size:10px}.profile-bottom .text-button{padding:0;font-size:10px}.profile-guidance{padding:11px 13px}.grading-context{padding:17px}.grading-context p{font-size:13px}.tool-count{font-size:11px}}
@media print{.profile-shell,.grading-context,.tool-count{display:none!important}}

/* Bespoke study selectors: tactile cards and accessible, in-page option menus. */
.profile-shell{position:relative;z-index:5}.header{position:relative;z-index:10}.student-profile{overflow:visible;background:linear-gradient(125deg,#fffffff2,#f8faf2e8 48%,#f4f0fbea);border:1px solid #ffffff;box-shadow:0 12px 34px #354e2510,0 2px 0 #aebf921f;border-radius:22px}.student-profile>summary{padding:21px 24px}.profile-emblem{width:44px;height:44px;border-radius:15px;background:linear-gradient(140deg,#f2ebff,#dbceef);color:#6e538f;box-shadow:inset 0 1px 0 #fff,0 4px 8px #7f60a01a}.profile-title strong{font:400 25px/1.1 var(--serif);letter-spacing:-.5px}.profile-title>span{font-size:11px;color:#708064}.profile-edit{border:1px solid #dbe2d1;background:#ffffffa8;border-radius:20px;padding:5px 12px;gap:9px;font-size:11px}.profile-body{padding:0 24px 15px}.profile-intro{font-size:12px;line-height:1.8;max-width:670px;margin-bottom:18px}.profile-fields{gap:13px;align-items:start}.profile-picker{position:relative;display:block;--picker-accent:#476b35;--picker-soft:#e9f2db;--picker-border:#cfddbd;--picker-glow:#90b76325}.profile-picker[data-picker-kind=level]{--picker-accent:#7b609e;--picker-soft:#eee7f7;--picker-border:#dcd1ea;--picker-glow:#a68fc72a}.profile-picker[data-picker-kind=system]{--picker-accent:#946938;--picker-soft:#f8edd9;--picker-border:#e8d8ba;--picker-glow:#d5af7325}.picker-trigger{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:113px;text-align:left;padding:18px 15px;border:1px solid var(--picker-border);border-radius:15px;background:linear-gradient(130deg,#ffffff,var(--picker-soft));color:var(--ink);box-shadow:inset 0 1px 0 #fff,0 4px 0 var(--picker-glow);transition:transform .25s,border-color .25s,box-shadow .25s;outline-offset:4px}.picker-trigger:hover{transform:translateY(-3px);border-color:var(--picker-accent);box-shadow:inset 0 1px 0 #fff,0 6px 0 var(--picker-glow),0 9px 20px var(--picker-glow)}.picker-trigger:active{transform:translateY(-1px)}.picker-trigger:focus-visible{outline:2px solid var(--picker-accent)}.picker-icon{display:grid;place-items:center;flex:none;width:39px;height:45px;border-radius:12px;background:var(--picker-soft);color:var(--picker-accent);box-shadow:inset 0 1px 0 #fff,0 3px 6px var(--picker-glow)}.picker-icon svg{width:24px;height:24px}.picker-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:8px}.picker-eyebrow{font-size:9px;line-height:1.2;letter-spacing:1.4px;text-transform:uppercase;font-weight:650;color:var(--picker-accent)}.picker-value{font-size:15px;line-height:1.35;letter-spacing:-.3px;font-weight:600;overflow-wrap:normal}.picker-caption{font-size:10px;line-height:1.5;color:#6e7867;max-width:180px}.picker-chevron{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;color:var(--picker-accent);background:#ffffff9c;border:1px solid var(--picker-border);align-self:start;margin-top:1px}.picker-chevron svg{width:17px;height:17px;transition:transform .25s}.profile-picker.is-open{z-index:8}.is-open .picker-trigger{border-color:var(--picker-accent);box-shadow:0 0 0 3px var(--picker-glow),0 6px 15px var(--picker-glow);transform:translateY(-2px)}.is-open .picker-chevron svg{transform:rotate(180deg)}.picker-popup{position:absolute;top:calc(100% + 10px);left:0;right:0;min-width:100%;background:#fffffff7;border:1px solid var(--picker-border);border-radius:16px;box-shadow:0 16px 40px #26382524,0 4px 10px var(--picker-glow);padding:8px;animation:picker-arrive .2s ease both;z-index:9;overflow:hidden}.opens-up .picker-popup{top:auto;bottom:calc(100% + 10px);transform-origin:bottom}.picker-menu-heading{padding:9px 11px 13px;color:var(--picker-accent);font-size:10px;font-weight:600;letter-spacing:.5px;border-bottom:1px solid #e9ece4;margin-bottom:5px}.picker-options{max-height:min(320px,calc(100dvh - 190px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--picker-border) transparent;padding:1px}.picker-option{display:flex;align-items:center;gap:10px;cursor:pointer;position:relative;min-height:62px;padding:10px;border-radius:10px;transition:background .18s,color .18s;scroll-margin:6px}.picker-option.is-active{background:var(--picker-soft)}.picker-option[aria-selected=true]{background:var(--picker-soft)}.picker-option-icon{flex:none;display:grid;place-items:center;width:34px;height:34px;background:#f3f5ed;border:1px solid #e2e7d9;color:#6e7c61;border-radius:10px;font-size:11px;letter-spacing:.2px;font-weight:650}.picker-option[aria-selected=true] .picker-option-icon,.picker-option.is-active .picker-option-icon{background:#fff;color:var(--picker-accent);border-color:var(--picker-border)}.picker-option-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.picker-option-copy>span{font-size:12px;line-height:1.4;font-weight:550;color:#294631}.picker-option-copy small{font-size:9px;line-height:1.5;color:#71806a}.picker-check{flex:none;display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--picker-accent);color:white;opacity:0}.picker-check svg{width:12px;height:12px;stroke-width:2}.picker-option[aria-selected=true] .picker-check{opacity:1}.profile-guidance{background:linear-gradient(120deg,#f0f4e9,#f4f0f9);border-left:0;border:1px solid #e0e7d5;border-radius:12px;padding:14px 17px;margin-top:20px}.profile-guidance p{font-size:11px}.profile-starts{margin-top:15px}.profile-starts a{box-shadow:0 2px 0 #cdd8bf2b;background:#fff;padding:8px 12px}.profile-bottom{border-top-color:#e1e7d8}.profile-field[data-custom-scale-field]{padding:16px;background:#fbf6e9;border:1px solid #e8d8ba;border-radius:14px}.profile-field[data-custom-scale-field]>span{color:#946938;font-size:11px}.profile-field[data-custom-scale-field] input{font-size:18px;border-color:#dcc9a5}
@keyframes picker-arrive{from{opacity:0;transform:translateY(-6px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:1050px){.picker-trigger{min-height:120px;padding:20px;gap:14px}.picker-icon{width:43px;height:48px}.picker-value{font-size:17px}.picker-caption{font-size:11px}.picker-option-copy>span{font-size:13px}.picker-option-copy small{font-size:10px}}
@media(max-width:760px){.student-profile{border-radius:19px}.student-profile>summary{padding:18px 16px}.profile-title strong{font-size:23px}.profile-title>span{font-size:10px}.profile-edit{font-size:0;padding:5px;gap:0}.profile-emblem{width:38px;height:38px;border-radius:12px}.profile-body{padding:0 16px 14px}.profile-fields{gap:13px}.picker-trigger{min-height:94px;padding:15px 16px;gap:13px}.picker-icon{width:41px;height:45px}.picker-value{font-size:16px}.picker-copy{gap:6px}.picker-caption{font-size:10px;max-width:100%}.picker-chevron{align-self:center;width:27px;height:27px}.picker-eyebrow{font-size:9px}.picker-popup{top:calc(100% + 8px);border-radius:14px}.picker-option{min-height:59px}.picker-option-copy>span{font-size:13px}.picker-option-copy small{font-size:10px}.profile-guidance{margin-top:18px;padding:12px 14px}.profile-intro{font-size:12px;line-height:1.8}.profile-starts{gap:10px}.profile-starts a{font-size:11px}.profile-bottom{padding-top:11px}.profile-bottom .text-button{font-size:10px}.profile-field[data-custom-scale-field]{padding:14px}}
@media print{.picker-popup{display:none!important}}
.profile-fields{align-items:stretch}.profile-picker.picker-enhanced{height:100%}.picker-trigger{height:100%}.picker-option-copy>span{font-size:13px}.picker-option-copy small{font-size:10px}
.category-rail{grid-template-columns:repeat(6,minmax(0,1fr))}.category-rail a:nth-child(5){grid-column:auto}.category-rail a{padding-left:12px;gap:8px}.filter-tabs{flex-wrap:wrap}.category-rail a:nth-child(5) .category-symbol{color:#b18a35}.category-rail a:nth-child(6) .category-symbol{color:#657dd1}
.rows-editor:is([data-rows=catchup],[data-rows=priority]) .row-labels{display:none}.rows-editor:is([data-rows=catchup],[data-rows=priority]) .assessment-row{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:16px;border:1px solid #dbe3d1;background:linear-gradient(120deg,#f8fbf1,#faf8fc);border-radius:12px;padding:17px}.rows-editor:is([data-rows=catchup],[data-rows=priority]) .assessment-row>label:first-child{grid-column:1/-1;padding-right:26px}.rows-editor:is([data-rows=catchup],[data-rows=priority]) .assessment-row>label:nth-child(4){grid-column:1/-1}.rows-editor:is([data-rows=catchup],[data-rows=priority]) .assessment-row label>.sr-only{position:static;display:block;width:auto;height:auto;clip:auto;overflow:visible;white-space:normal;font-size:11px;color:#586c4c;line-height:1.5;margin:0 0 7px}.rows-editor:is([data-rows=catchup],[data-rows=priority]) .assessment-row .remove-row{position:absolute;right:13px;top:14px;min-height:30px;border-radius:50%;background:#e8eddf}.rows-editor:is([data-rows=catchup],[data-rows=priority]) input{height:43px;width:100%;min-width:0;background:#fff}.priority-list{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:15px}.priority-list>li{display:flex;gap:18px;padding:20px;border:1px solid #dde4d2;border-radius:14px;background:linear-gradient(115deg,#f9fbf4,#f8f6fc)}.priority-rank{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:#e0edc9;color:#4e6f35;font:italic 24px var(--serif)}.priority-list>li:first-child .priority-rank{background:#264e3a;color:#e1f3b7}.priority-content{flex:1;min-width:0}.priority-title{display:flex;justify-content:space-between;gap:12px;align-items:start}.priority-title h3{font:400 25px/1.25 var(--serif);margin:0;overflow-wrap:anywhere}.priority-status{font-size:10px;padding:6px 9px;background:#edf2e3;border-radius:20px;color:#5c7147;white-space:nowrap}.priority-status.at-risk{background:#f9e8d7;color:#8a572f}.priority-content>p{font-size:12px;color:#61705a;margin:9px 0 16px}.priority-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.priority-facts>span{display:flex;flex-direction:column;gap:6px;font-size:11px;color:#65765c}.priority-facts strong{font-size:14px;font-weight:550;color:#345037}.tool-layout[data-tool=priority] .result-number{font-size:38px;line-height:1.18;letter-spacing:-1px;overflow-wrap:anywhere}
@media(max-width:1100px){.category-rail{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 10px}.category-rail a{border:0;padding-left:0}.category-rail a:nth-child(5){grid-column:auto}}
@media(max-width:520px){.priority-list>li{gap:11px;padding:16px 13px}.priority-rank{width:29px;height:29px;font-size:21px}.priority-title{flex-direction:column;gap:8px}.priority-title h3{font-size:24px}.priority-facts{grid-template-columns:1fr;gap:10px}.priority-facts>span{flex-direction:row;justify-content:space-between;gap:12px;align-items:baseline}.priority-facts strong{font-size:13px}.rows-editor:is([data-rows=catchup],[data-rows=priority]) .assessment-row{padding:14px;gap:12px}.rows-editor:is([data-rows=catchup],[data-rows=priority]) input{font-size:13px;padding:10px 7px}.rows-editor:is([data-rows=catchup],[data-rows=priority]) .assessment-row label>.sr-only{font-size:10px}.tool-layout[data-tool=priority] .result-number{font-size:34px}}
@media print{.priority-list>li{break-inside:avoid;background:white}.priority-status{border:1px solid #ccc}.priority-rank{background:white!important;color:black!important;border:1px solid #ccc}}
.tool-card{position:relative}.tool-new{position:absolute;top:15px;left:15px;z-index:2;border:1px solid #ffffffb3;background:#244d38;color:#eef9d3;padding:6px 9px;border-radius:7px;box-shadow:0 3px 8px #29483319;font-size:9px;letter-spacing:1.1px;font-weight:650}.tool-layout[data-tool=attendance] .field-grid .field>.input-wrap{margin-top:0}.tool-layout[data-tool=attendance] .field-grid .field>span:first-child{min-height:2.5em;line-height:1.4}
@media(max-width:520px){.tool-new{top:11px;left:10px;font-size:8px;padding:5px 7px}}

/* Keep the longer GradeOnward wordmark and navigation balanced. */
@media(min-width:761px) and (max-width:1000px){.header{gap:12px}.brand{font-size:25px;gap:8px}.nav{gap:11px}.nav>a{white-space:nowrap}.beta{font-size:10px}}
