
:root{--ink:#163c32;--paper:#f7f8f1;--green:#24654f;--muted:#65756b;--line:#d7dfd1;--lime:#d5e7a3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer}header{padding:22px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper);gap:25px}nav{display:flex;gap:27px;font-size:13px}.brand{display:flex;align-items:center;gap:12px;font-size:19px;letter-spacing:.5px}.brand b{font-weight:400;color:#4e7951}.brand small{display:block;font-size:8px;letter-spacing:2px}.mark{display:block;font-family:Georgia;font-size:38px;border:1px solid var(--ink);line-height:1;padding:6px 10px}.mark span{color:#8da757}.outline,.button,.locked{border:1px solid var(--ink);padding:12px 18px;background:transparent;border-radius:3px;display:inline-block;font-size:13px}.button{background:var(--ink);color:white}.button span{margin-left:20px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:70px 6% 60px;align-items:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;margin:0 0 22px}.hero h1{font-family:Georgia,serif;font-size:clamp(50px,5.8vw,88px);line-height:1.04;font-weight:400;letter-spacing:-3px;margin:0 0 26px}em{font-family:Georgia,serif;font-weight:400;color:#68854e}.lead{font-size:17px;color:var(--muted)}.actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap;margin:25px 0}.actions>a:not(.button){font-size:13px}.micro{font-size:11px;color:var(--muted)}.hero-art{background:#e8eee0;border:1px solid #c6d4c1;padding:20px 23px;position:relative}.hero-art svg{width:100%;display:block}.art-label,.art-bottom{font-family:monospace;font-size:10px;letter-spacing:1px;display:flex;justify-content:space-between}.art-label span{opacity:.6}.art-bottom{border-top:1px solid #c5d0be;padding-top:15px;justify-content:start;align-items:center;gap:8px}.dot{width:7px;height:7px;background:#64834e;border-radius:50%}.strip{display:flex;justify-content:space-around;gap:15px;flex-wrap:wrap;padding:20px 5%;background:var(--ink);color:#d8e9c3;font-size:10px;letter-spacing:1.8px}section:not(.hero){padding:75px 6%}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:35px}.section-head h2,h2{font-family:Georgia;font-weight:400;font-size:42px;line-height:1.15;letter-spacing:-1px;margin:0}.section-head>p{max-width:400px;color:var(--muted);font-size:14px}.filters{display:flex;gap:10px;margin-bottom:25px;flex-wrap:wrap}.search{display:flex;align-items:center;border:1px solid var(--line);padding:0 13px;flex:1;min-width:220px}.search input{border:0;background:transparent;margin:0}.chip{border:1px solid var(--line);background:transparent;padding:10px 17px;border-radius:30px;font-size:12px}.chip.active{background:var(--ink);color:white}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);background:#fcfcf7;padding:25px;display:flex;flex-direction:column;min-height:265px;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 9px 20px #163c3209}.card-top{display:flex;justify-content:space-between;align-items:center}.icon{font-size:26px;font-family:Georgia;color:#568064}.badge{font-size:9px;letter-spacing:1px;color:var(--green);padding:4px 8px;background:#eaf0df}.card h3{font-family:Georgia;font-size:23px;font-weight:400;margin:17px 0 6px}.card p{font-size:12px;color:var(--muted);margin:0 0 18px}.card button{border:0;border-top:1px solid var(--line);padding:14px 0 0;background:none;color:var(--ink);text-align:left;margin-top:auto;font-size:12px;display:flex;justify-content:space-between}.premium-section{background:#e9eee2}.premium-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.premium-card{background:#f8faf3;border:1px solid #d4ddcc;padding:22px}.premium-card h3{font-size:16px;font-weight:500;margin:12px 0}.premium-card p{color:var(--muted);font-size:12px}.premium-card button{border:0;background:none;color:var(--green);padding:0;font-size:12px}.premium-card .badge{background:#eee9d7;color:#806d32}.workspace{display:grid;grid-template-columns:1fr 1fr;gap:45px;border:1px solid var(--line);padding:35px}label{display:block;font-size:12px}input,textarea{display:block;width:100%;border:1px solid var(--line);padding:12px;background:#fff;margin:7px 0 17px;color:var(--ink);border-radius:2px}textarea{resize:vertical}.report{background:#edf1e7;padding:30px}.report h3{font:29px Georgia}.report p{font-size:13px;color:var(--muted)}hr{border:0;border-top:1px solid var(--line);margin:26px 0}.locked{width:100%;color:var(--muted);border-color:#b9c7b1}.text-button{border:0;background:none;color:var(--green);display:block;margin-top:15px;font-size:12px}.about{background:var(--ink);color:#f4f7e9}.about>p:not(.eyebrow){max-width:710px;color:#c5d4c5}.about h2{font-size:45px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:40px;border-top:1px solid #557060;padding-top:30px}.principles b{font-size:12px}.principles p{font-size:12px;color:#c5d4c5}.faq{max-width:1000px;margin:auto}.faq h2{margin-bottom:25px}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-size:14px}details p{font-size:13px;color:var(--muted)}footer{padding:40px 6%;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px}footer p,footer>a{font-size:12px}.disclaimer{flex-basis:100%;font-size:10px!important;color:var(--muted);line-height:1.7}footer small{font-size:10px}dialog{border:1px solid var(--line);border-radius:7px;padding:35px;max-width:850px;width:94%;max-height:90vh;color:var(--ink);background:var(--paper)}dialog::backdrop{background:#0d261cd0;backdrop-filter:blur(4px)}.close{position:absolute;right:12px;top:8px;background:none;border:0;font-size:27px;color:var(--ink)}dialog h2{font-size:32px;margin:12px 0}dialog p{font-size:13px}.experiment-layout{display:grid;grid-template-columns:230px 1fr;gap:24px;margin:25px 0}.viz{background:#eaf0df;padding:15px;min-height:260px;border:1px solid var(--line)}.viz svg{width:100%;height:auto}.readout{font-family:Georgia;font-size:25px}.steps{font-size:12px;padding-left:20px}.error{color:#9a3e32!important}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stats div{padding:10px;background:#fff;font-size:12px}.stats strong{display:block;font-size:20px}svg text{font-family:Arial,sans-serif}button:hover,.button:hover{filter:brightness(.9)}:focus-visible{outline:3px solid #a5ba62;outline-offset:3px}@media(max-width:900px){nav{gap:12px}.cards,.premium-grid{grid-template-columns:repeat(2,1fr)}.hero{gap:25px}.hero h1{font-size:60px}}@media(max-width:650px){header{flex-wrap:wrap;padding:16px 5%;gap:14px}nav{order:3;width:100%;overflow:auto;white-space:nowrap;font-size:11px}header>.outline{font-size:10px;padding:9px}.brand{font-size:16px}.hero{grid-template-columns:1fr;padding:40px 6%;gap:35px}.hero h1{font-size:64px}.hero-art{max-width:500px}.section-head{display:block}.section-head h2,h2{font-size:34px}.section-head>p{margin-top:20px}.cards,.premium-grid,.workspace,.principles{grid-template-columns:1fr}.workspace{padding:20px;gap:25px}section:not(.hero){padding:48px 6%}.experiment-layout{grid-template-columns:1fr}.strip{font-size:8px}.report{padding:20px}.filters .search{flex-basis:100%}.chip{font-size:10px;padding:8px 11px}.card{min-height:240px}.stats{grid-template-columns:1fr 1fr}dialog{padding:25px}}
/* Koshika Labs brand refresh */
:root{--ink:#172445;--paper:#f7f9ff;--green:#087f87;--muted:#606d87;--line:#dce4f2;--lime:#bdece9}
body{background:#f7f9ff}header{background:#ffffffed;border-bottom:1px solid #e1e7f3;box-shadow:0 4px 25px #18274906}.brand-logo{width:63px;height:63px;object-fit:contain;flex-shrink:0}.brand{font-weight:600;letter-spacing:.6px}.brand b{color:#087f87;font-weight:600}.brand small{color:#6b7890;letter-spacing:1.7px}nav a{position:relative;transition:color .2s}nav a:hover{color:#087f87}.outline{border-color:#c7d5e8;border-radius:8px;color:#263b60;background:#ffffff80}.button{border:0;border-radius:8px;background:linear-gradient(120deg,#087f87,#315dba);box-shadow:0 7px 20px #087f8725;font-weight:600;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 25px #087f8738}.hero{position:relative;isolation:isolate;background:radial-gradient(ellipse at 92% 20%,#c4f1ed88,transparent 55%),radial-gradient(ellipse at 4% 95%,#e4dcfb99,transparent 55%),#f8faff;overflow:hidden;padding-top:65px;padding-bottom:70px}.hero:before{content:'';position:absolute;width:410px;height:410px;right:-210px;top:-260px;border:60px solid #5e75dc0b;border-radius:50%;z-index:-1}.eyebrow{color:#087f87;letter-spacing:2.3px}.hero h1{color:#152244}.hero h1 em{background:linear-gradient(100deg,#087f87 5%,#5862c5 80%);background-clip:text;-webkit-background-clip:text;color:transparent}.hero .lead{color:#596c87}.hero-art{background:linear-gradient(135deg,#dff3f0,#e7eafd 75%,#f1e8fb);border:1px solid #cbdde9;border-radius:22px 60px 22px 22px;box-shadow:0 25px 55px #314c871a;transform:rotate(1deg);padding:24px}.hero-art svg{filter:hue-rotate(48deg) saturate(.85);transform:rotate(-1deg)}.art-label,.art-bottom{color:#275a77}.art-bottom{border-color:#bcd3e1}.dot{background:#02a89a;box-shadow:0 0 0 4px #02a89a18}.strip{background:linear-gradient(110deg,#111e3b,#163b56 60%,#145968);color:#c5eeee;padding:23px 5%;font-weight:600;letter-spacing:1.7px}.strip span:before{content:'✦';margin-right:10px;color:#f4c36f}h2 em{color:#087f87}.cards{gap:22px}.card{background:#fff;border:1px solid #dce5f2;border-radius:16px;padding:27px;box-shadow:0 5px 20px #213b6705;position:relative;overflow:hidden}.card:before{content:'';position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#0e9a9c,#5382d2)}.card:nth-child(3n+2):before{background:linear-gradient(90deg,#7271d7,#b18bd9)}.card:nth-child(3n):before{background:linear-gradient(90deg,#df9a43,#e8c07c)}.icon{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:#e6f5f3;color:#09828a;font-size:28px}.card:nth-child(3n+2) .icon{background:#efebfc;color:#7760bc}.card:nth-child(3n) .icon{background:#fff2df;color:#a76c25}.card h3{color:#1f3154}.card:hover{box-shadow:0 16px 35px #28496e14;border-color:#a7cbd5;transform:translateY(-5px)}.card button{color:#087f87;font-weight:600;border-color:#e4ebf4}.badge{background:#e5f5ef;color:#27735d;border-radius:30px;font-size:8px;font-weight:700;letter-spacing:.8px}.chip{background:#fff;border-color:#dce4f2;transition:background .2s}.chip.active{background:#203455}.search{border-radius:9px;background:#fff}.premium-section{background:radial-gradient(ellipse at top right,#45417c55,transparent 65%),linear-gradient(120deg,#111e39,#17384d);color:#eef5ff}.premium-section .eyebrow{color:#76d9d0}.premium-section h2 em{color:#a8b2ff}.premium-section .section-head>p{color:#b9c9dc}.premium-grid{gap:17px}.premium-card{background:linear-gradient(130deg,#ffffff0d,#ffffff05);border:1px solid #ffffff23;border-radius:13px;padding:25px;transition:background .2s,border-color .2s}.premium-card:hover{background:#ffffff12;border-color:#7cafa680}.premium-card h3{color:#f2f6ff;font-size:17px}.premium-card p{color:#bdc9dd}.premium-card button{color:#82ded6}.premium-card .badge{background:#efc16f1c;color:#f0c987;border:1px solid #edc37230}.workspace{background:#fff;border-radius:20px;box-shadow:0 10px 45px #21354b06;border-color:#dce5f2}.report{background:linear-gradient(140deg,#edf7f6,#eef0fc);border:1px solid #d9e6ed;border-radius:14px}.report h3{color:#213459}input,textarea{border-radius:7px;background:#fcfdff;border-color:#d8e1ee}input:focus,textarea:focus{outline:2px solid #0b8f962e;border-color:#0b8f96}.locked{border-radius:7px;color:#66738c;border-color:#c5cfdf;background:#ffffff80}.stats div{border-radius:8px}.stats strong{color:#087f87}.about{background:radial-gradient(ellipse at 100% 100%,#26647755,transparent 60%),#15243f}.about .eyebrow{color:#81d7d0}.principles{border-color:#ffffff26}.principles b{color:#b0c5fa}.principles p,.about>p:not(.eyebrow){color:#bccbdd}.faq details{background:#fff;border:1px solid #dce5f2;border-radius:9px;padding:18px 22px;margin-bottom:11px}.faq h2{margin-bottom:30px}footer{background:#edf2fa;border-color:#dae3f0}.disclaimer{color:#63718a}.text-button{color:#087f87}dialog{border-radius:17px;box-shadow:0 25px 90px #0f204a40;background:#f8faff;border-color:#d5e1f0}dialog::backdrop{background:#091b3ac9}.viz{background:linear-gradient(135deg,#e6f4f1,#e9edfb);border-color:#d5e3ee;border-radius:12px}:focus-visible{outline-color:#168eaa}.error{color:#ad3c48!important}@media(max-width:650px){.brand-logo{width:47px;height:47px}.hero-art{transform:none;border-radius:18px 42px 18px 18px}.hero{padding-top:38px}.card{padding:24px}.badge{font-size:8px}.premium-card{padding:23px}}

/* User-selected official logo, preserved in full */
header .brand-logo{width:170px;height:170px;object-fit:contain;background:white;border-radius:8px}header{padding-top:10px;padding-bottom:10px}footer .brand-logo{width:220px;height:220px;object-fit:contain;background:white;border-radius:10px}footer .brand{align-items:center}@media(max-width:650px){header .brand-logo{width:135px;height:135px}header{gap:8px}footer .brand-logo{width:190px;height:190px}}

/* Scientific poster background */
.hero{background:linear-gradient(90deg,rgba(4,22,33,.96) 0%,rgba(4,29,40,.90) 45%,rgba(4,29,40,.70) 100%),url('koshika-science-background.jpg') center 45%/cover no-repeat;color:#fff;gap:7%;padding-top:55px;padding-bottom:55px}.hero:before{display:none}.hero h1{color:#fff9e9}.hero h1 em{background:linear-gradient(100deg,#f5cc6f,#f9edbd);background-clip:text;-webkit-background-clip:text;color:transparent}.hero .eyebrow{color:#75ddd2}.hero .lead{color:#d1e4e8}.hero .micro{color:#b3c9d0}.hero .actions>a:not(.button){color:#f4d791}.hero .button{background:linear-gradient(110deg,#d6a33b,#f0cf80);color:#122b3b;box-shadow:0 7px 24px #0004}.poster-art{padding:0!important;transform:none!important;max-width:360px;justify-self:center;background:transparent;border:1px solid #d7b65f70;border-radius:17px!important;overflow:hidden;box-shadow:0 20px 70px #0007}.poster-art img{width:100%;height:auto;display:block}.hero-art.poster-art{filter:none}@media(max-width:650px){.hero{background:linear-gradient(#041a29e8,#042431d9),url('koshika-science-background.jpg') center/cover no-repeat}.poster-art{max-width:310px;width:90%;margin-top:10px}.hero h1{font-size:59px}}
.school-banner{padding:25px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:#f1e9d3;color:#233951}.school-banner p{margin:4px 0;font-size:13px}.school-banner small{font-size:10px;flex-basis:100%;color:#6f715d}.school-banner .button{background:#183f52}@media(max-width:650px){.school-banner .button{width:100%;text-align:center}}
#research-tool{max-width:1000px}#research-tool .experiment-layout{grid-template-columns:1fr 1fr}#research-tool .report svg{width:100%;height:auto}.activity-content svg{max-width:430px;width:100%;display:block;margin:20px auto}.activity-steps{color:#087f87;font-size:12px;letter-spacing:1px;margin-top:22px}header nav{flex-wrap:wrap;justify-content:center;row-gap:8px}#workspace-upload{margin-top:15px}#workspace-plot svg{width:100%;height:auto}.upload-status{font-size:12px;color:#60738b}@media(max-width:650px){#research-tool .experiment-layout{grid-template-columns:1fr}header nav{flex-wrap:nowrap;justify-content:flex-start}.activity-content .outline{display:block;width:100%}}
.student-pass-panel{padding:20px;background:#e1f3ee;border-bottom:2px solid #087f87}.student-pass-panel p{font-weight:700;font-variant-numeric:tabular-nums}
header nav .admin-quick-link{background:#f0d487;color:#172840;padding:8px 12px;border-radius:8px;font-weight:700}
