
.online-page{margin:0;background:#f7f4ec;color:#242037;font:16px/1.6 "Segoe UI",sans-serif}.online-page *{box-sizing:border-box}.online-page a{color:inherit}.online-skip{position:absolute;top:-100px}.online-skip:focus{top:0;background:white;z-index:5}.online-nav{display:flex;align-items:center;justify-content:space-between;padding:24px 6%;border-bottom:1px solid #d9d4df;gap:20px}.online-brand{font-size:17px;font-weight:850;text-decoration:none;letter-spacing:.03em}.online-brand span{color:#7d4fe0;margin:0 6px}.online-nav nav{display:flex;gap:28px;align-items:center}.online-nav nav a{text-decoration:none;font-size:14px}.online-login{border:1px solid #292237;border-radius:30px;padding:10px 18px}.online-hero{max-width:1400px;margin:auto;padding:80px 6% 90px;display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center}.online-eyebrow{font-size:11px!important;letter-spacing:.17em;font-weight:800;color:#695283}.online-hero h1{font-size:clamp(70px,8vw,116px);line-height:.95;letter-spacing:-.065em;margin:25px 0 30px;font-weight:800}.online-hero em,.online-manifesto em{font-family:Georgia,serif;font-weight:400;color:#8553d5}.online-lead{font-size:19px;max-width:500px}.online-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:28px 0}.online-primary{display:inline-block;background:#30233e!important;color:#fff!important;text-decoration:none;border-radius:40px;padding:16px 24px;font-weight:700}.online-small{font-size:12px;color:#68616f}.code-universe{position:relative;min-height:440px;isolation:isolate}.code-universe:before{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(ellipse,#ddcdfb,transparent 67%);z-index:-1}.universe-orbit{position:absolute;border:1px solid #ae96c8;width:92%;height:70%;border-radius:50%;transform:rotate(-28deg);top:60px;left:4%}.orbit-two{transform:rotate(35deg);height:92%;width:62%;top:0;left:20%}.game-window{position:absolute;inset:48px 20px 85px;border:2px solid #372947;border-radius:18px;transform:rotate(-6deg);background:#2d2140;box-shadow:14px 18px 0 #ccb8e6;overflow:hidden}.game-top{display:flex;justify-content:space-between;padding:12px 18px;background:#eee7fa;font-size:10px;font-weight:700;color:#59436c}.game-world{height:250px;position:relative;background:radial-gradient(circle at 20% 20%,#9164d1 1px,transparent 2px) 0 0/37px 37px,#2d2140;overflow:hidden}.pixel-ship{position:absolute;top:25%;left:36%;font-size:100px;color:#d7ff76;text-shadow:8px 8px #9468db;line-height:1;animation:ship-float 5s ease-in-out infinite}.game-planet{position:absolute;width:70px;height:70px;border-radius:50%;background:#b795eb;right:30px;top:30px;box-shadow:inset -20px -8px #8057b8}.game-score{position:absolute;bottom:25px;left:25px;color:#dfd6ef;font:11px monospace}.game-floor{position:absolute;bottom:-20px;right:0;width:50%;height:65px;background:repeating-linear-gradient(90deg,#cefb76 0 20px,#add85d 20px 22px);transform:rotate(-8deg)}.code-card{position:absolute;bottom:12px;left:0;right:35px;background:#d8fa8d;border:2px solid #372947;border-radius:12px;padding:20px;box-shadow:6px 6px #372947;transform:rotate(3deg);display:grid;gap:8px}.code-card span{font-size:9px;letter-spacing:.08em}.code-card code{font-size:17px}.code-card strong{font-size:12px}.universe-star{position:absolute;z-index:1;color:#8154bd;font-size:50px}.star-one{right:-10px;top:0}.star-two{left:-10px;bottom:100px;font-size:30px}.orbit-note{position:absolute;right:0;bottom:0;font-size:9px;letter-spacing:.1em;transform:rotate(-90deg);transform-origin:right bottom}.online-ribbon{display:flex;justify-content:space-around;gap:25px;flex-wrap:wrap;background:#d7f88b;padding:20px;font:800 13px monospace;letter-spacing:.1em;border-block:1px solid #37302d}.online-section{max-width:1400px;margin:auto;padding:80px 6%}.online-section-head{max-width:600px;margin-bottom:32px}.online-section h2,.online-last h2{font-size:clamp(34px,4vw,56px);letter-spacing:-.045em;line-height:1.08;margin:16px 0 24px}.path-finder{border:1px solid #cfc6da;border-radius:20px;padding:30px;background:#ede6f5}.finder-options{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.finder-options button{border:1px solid #c9bbda;border-radius:12px;padding:20px;background:#fffdf7;text-align:left;font:700 16px "Segoe UI";cursor:pointer;color:#30233e}.finder-options button span{display:block;font-size:12px;font-weight:400;margin-top:8px}.finder-options button[aria-pressed=true]{background:#30233e;color:white;border-color:#30233e}#path-result{margin-top:22px;min-height:50px}.online-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.online-paths article{padding:28px;border:1px solid #d4cbdc;border-radius:15px;background:#fffcf6}.online-paths article:nth-child(2){background:#d8fa8d}.online-paths article:nth-child(4){background:#e1d4f3}.online-paths article>span{font:11px monospace;letter-spacing:.05em}.online-paths h3{font-size:25px;line-height:1.1;margin:24px 0 14px;letter-spacing:-.03em}.online-paths b{font-size:11px}.online-manifesto{background:#30233e;color:#f6f0e9;padding:65px 9%;position:relative}.online-manifesto>span{font:11px monospace;color:#d8fa8d}.online-manifesto h2{font-size:clamp(30px,4vw,58px);letter-spacing:-.04em;line-height:1.15}.online-manifesto em{color:#d8fa8d}.online-manifesto>div{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:900px}.online-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.online-group{padding:28px;border:1px solid #d4cbdc;border-radius:15px;background:#fffdf8}.online-group h3{font-size:26px;margin:10px 0}.online-group a{display:inline-block;min-height:44px;padding:10px 0;font-weight:700}.online-faq{display:grid;grid-template-columns:1fr 1fr;gap:40px}.online-faq details{border-bottom:1px solid #d4cbdc;padding:20px 0}.online-faq summary{cursor:pointer;font-weight:700;min-height:44px}.online-last{text-align:center;padding:65px 20px 85px;background:#e5d9f4}.online-footer{padding:35px 6%;display:flex;gap:20px;align-items:center;flex-wrap:wrap}.online-footer p,.online-footer small{font-size:12px}.online-footer small{flex-basis:100%}.online-page :focus-visible{outline:3px solid #7445c5;outline-offset:5px}.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.business-admin{max-width:1050px!important;width:calc(100vw - 30px)!important}.business-admin h3{margin-top:24px}.business-admin select,.business-admin input{min-height:44px}.business-admin article{border-top:1px solid #d2ded9;padding:14px 0}.business-admin pre{white-space:pre-wrap}.business-counts{padding:15px;border-radius:12px;background:#e7f3ec}.business-admin form{padding:18px;border:1px solid #c6d6ce;border-radius:14px}.business-admin button{margin:4px}.business-note{font-size:13px;color:#56685d}@keyframes ship-float{50%{transform:translateY(-14px)}}@media(prefers-reduced-motion:reduce){.pixel-ship{animation:none}}@media(max-width:760px){.online-nav{flex-wrap:wrap;padding:18px 5%}.online-nav nav{gap:18px;flex-wrap:wrap}.online-hero{grid-template-columns:1fr;padding:40px 6% 50px;gap:22px}.online-hero h1{font-size:76px}.code-universe{min-height:370px}.game-window{inset:35px 20px 70px}.game-world{height:210px}.online-section{padding:50px 6%}.finder-options,.online-paths,.online-groups,.online-faq,.business-grid{grid-template-columns:1fr}.online-manifesto>div{grid-template-columns:1fr;gap:0}.path-finder{padding:20px}.online-lead{font-size:17px}.online-nav a{min-height:44px;display:inline-flex;align-items:center}.code-card code{font-size:14px}.code-card{right:20px}.online-faq{gap:0}}

.business-login-form{display:grid;gap:18px;max-width:460px;padding:28px;background:white;border:1px solid #d4cbdc;border-radius:18px}.business-login-form label{display:grid;gap:6px}.business-login-form input{font:inherit;padding:12px;border:1px solid #b7afc4;border-radius:9px;min-width:0}#business-home #spacenav{display:flex;gap:12px;flex-wrap:wrap}#business-home button,#business-logout{font:inherit;min-height:44px;padding:12px 18px;border:1px solid #beb1cc;border-radius:12px;cursor:pointer;background:#30233e;color:white}.online-page [hidden]{display:none!important}
.code-universe{overflow:clip}.online-group,.online-paths article{overflow-wrap:anywhere}@media(max-width:760px){.online-hero h1{font-size:clamp(58px,19vw,76px)}}
/* ADMIN DASHBOARD */
body:has(.admin-dashboard){background:#f3f5f8;color:#213344}
body:has(.admin-dashboard)>.online-section{max-width:1500px;margin:auto;padding:40px 4%}
body:has(.admin-dashboard)>.online-section>h1{font-size:clamp(30px,4vw,54px);margin:12px 0;line-height:1.1}
body:has(.admin-dashboard) #business-home>h2,body:has(.admin-dashboard) #business-summary,body:has(.admin-dashboard) #business-home>.business-note,body:has(.admin-dashboard) #business-admin-button{display:none}
.admin-dashboard{margin-top:28px}.dash-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.dash-heading h2{font-size:26px;letter-spacing:-.025em}.dash-quick,.dash-actions{display:flex;flex-wrap:wrap;gap:10px}.dash-quick{padding:18px;background:#132e43;border-radius:18px}.admin-dashboard .dash-button{font:600 14px/1.3 'Segoe UI',sans-serif;display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:12px 16px;border:1px solid #cfdae3;border-radius:10px;background:white;color:#18374d;text-decoration:none;cursor:pointer;margin:0}.admin-dashboard .dash-quick .dash-button{background:#ffffff12;color:white;border-color:#ffffff35}.admin-dashboard .dash-primary{background:#087d85;color:white;border-color:#087d85}.admin-dashboard button:disabled{opacity:.45;cursor:default}.dash-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:24px 0}.dash-kpi{padding:24px 20px;background:white;border:1px solid #dce4eb;border-radius:16px;display:grid;gap:8px;box-shadow:0 4px 18px #17334b06}.dash-kpi strong{font-size:42px;line-height:1;color:#087d85}.dash-kpi span{font-weight:650}.dash-kpi small,.dash-muted{font-size:13px;color:#5b7081;overflow-wrap:anywhere}.dash-panel{padding:26px;background:white;border:1px solid #dce4eb;border-radius:18px;margin:20px 0}.dash-panel h2{font-size:23px;letter-spacing:-.025em;margin:0 0 12px}.dash-panel h3{font-size:19px;margin:10px 0}.dash-panel p{font-size:14px;line-height:1.65}.dash-teach{border-top:4px solid #087d85;background:linear-gradient(120deg,#f0fbf8,white)}.dash-filters{display:grid;grid-template-columns:1fr .65fr 1.3fr;gap:16px;align-items:end;margin:22px 0}.dash-filters>button{grid-column:1/-1;justify-self:start}.dash-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dash-form>p,.dash-form>.dash-secret{grid-column:1/-1}.dash-form>button{justify-self:start}.dash-form label,.dash-filters label{display:grid;gap:8px;font-size:14px;font-weight:600;min-width:0}.dash-form input,.dash-form select,.dash-filters select{font:inherit;min-height:46px;padding:10px;border:1px solid #c3d0db;border-radius:9px;background:white;width:100%;min-width:0;box-sizing:border-box}.dash-class-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dash-class{padding:22px;border:1px solid #d8e3eb;border-radius:14px;min-width:0}.dash-class meter{display:block;width:100%;height:14px;margin:12px 0}.dash-overline{text-transform:uppercase;letter-spacing:.07em;color:#087d85;font-size:11px;font-weight:700}.dash-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.dash-bottom>.dash-panel{margin-top:0;min-width:0}.dash-row{border-bottom:1px solid #e0e7ed;padding:12px 0;margin-bottom:18px;overflow-wrap:anywhere}.dash-secret{padding:20px;background:#fff4d6;border:1px solid #e2c574;border-radius:12px}.dash-secret input{font-family:monospace}.admin-dashboard [data-dash-status]{font-size:12px;color:#526979}.admin-dashboard a:focus-visible,.admin-dashboard button:focus-visible{outline:3px solid #18b9c4;outline-offset:3px}
@media(max-width:1100px){.dash-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-class-grid,.dash-bottom{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.dash-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dash-kpi{padding:18px 14px}.dash-kpi strong{font-size:34px}.dash-class-grid,.dash-bottom,.dash-filters,.dash-form{grid-template-columns:1fr}.dash-panel{padding:20px}.dash-quick{gap:8px;padding:12px}.dash-quick .dash-button{flex:1 1 140px}.dash-form>p,.dash-form>.dash-secret{grid-column:auto}.dash-heading{align-items:flex-start}.dash-actions .dash-button{flex:1}.dash-filters>button{width:100%;box-sizing:border-box}}
