:root{--navy:#14213d;--ink:#18213b;--blue:#4263eb;--cyan:#18c8ff;--pink:#ff4fa3;--purple:#7c4dff;--lime:#b8f238;--yellow:#ffd43b;--cream:#fffaf0;--white:#fff;--line:#dfe4ff;--shadow:0 18px 50px rgba(25,31,78,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",system-ui,sans-serif;background:linear-gradient(135deg,#f4f2ff 0,#edfbff 45%,#fff5df 100%);line-height:1.75}a{color:inherit}.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:12px clamp(18px,4vw,56px);background:rgba(20,33,61,.94);color:#fff;backdrop-filter:blur(14px)}.site-header a{text-decoration:none}.site-header nav{display:flex;gap:18px;align-items:center}.site-header .ml-lab-home{background:var(--yellow);color:var(--navy)}main{overflow:hidden}.hero{min-height:620px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:clamp(30px,6vw,90px);align-items:center;padding:clamp(70px,10vw,130px) max(6vw,24px);background:radial-gradient(circle at 85% 15%,rgba(255,212,59,.8) 0 8%,transparent 9%),radial-gradient(circle at 70% 75%,rgba(255,79,163,.28) 0 17%,transparent 18%),linear-gradient(135deg,#372b9f,#485ff0 52%,#17c8ef);color:#fff}.kicker,.section-heading>p,.remember>p,.help>div>p,.connections>p{font-weight:900;letter-spacing:.13em}.hero h1{font-size:clamp(2.6rem,6vw,6.1rem);line-height:1.08;margin:.2em 0}.hero h1 em{font-style:normal;color:var(--yellow)}.hero .lead{font-size:clamp(1.2rem,2.2vw,1.75rem);font-weight:900}.hero-copy>p:not(.kicker){max-width:680px}.start-button{display:inline-flex;gap:16px;align-items:center;margin-top:20px;padding:15px 24px;border-radius:999px;background:var(--yellow);color:var(--navy);font-weight:900;text-decoration:none;box-shadow:0 8px 0 #e79b00}.hero-console{justify-self:center;width:min(100%,390px);padding:34px;border:4px solid rgba(255,255,255,.8);border-radius:30px;background:rgba(20,33,61,.82);box-shadow:16px 16px 0 rgba(255,79,163,.6);display:grid;gap:12px;text-align:center;transform:rotate(2deg)}.hero-console span{color:var(--lime);font-weight:900;letter-spacing:.15em}.hero-console b{padding:12px;border:2px solid var(--cyan);border-radius:12px;font-size:1.45rem}.hero-console i{font-style:normal;color:var(--yellow);font-size:1.5rem}.safety-banner{display:flex;justify-content:center;gap:18px;align-items:center;padding:18px 24px;background:var(--navy);color:#fff;text-align:center}.safety-banner strong{color:var(--lime)}.stage-section{padding:clamp(65px,8vw,110px) max(4vw,18px)}.section-heading{max-width:1180px;margin:0 auto 30px}.section-heading p{color:var(--purple)}.section-heading h2{font-size:clamp(2rem,4vw,3.6rem);margin:.1em 0}.stage-tabs{max-width:1180px;margin:0 auto 28px;display:flex;gap:10px;overflow-x:auto;padding:3px 2px 12px}.stage-tab{flex:0 0 auto;border:2px solid var(--navy);border-radius:999px;background:#fff;padding:11px 17px;color:var(--navy);font:inherit;font-weight:900;cursor:pointer;box-shadow:0 5px 0 rgba(20,33,61,.16)}.stage-tab[aria-selected="true"]{background:var(--yellow);transform:translateY(3px);box-shadow:0 2px 0 rgba(20,33,61,.3)}.lab{max-width:1280px;margin:auto;display:grid;grid-template-columns:minmax(300px,.72fr) minmax(430px,1.28fr);gap:28px;align-items:start}.guide-panel,.simulation-shell{border:3px solid var(--navy);border-radius:28px;background:#fff;box-shadow:var(--shadow)}.guide-panel{padding:clamp(24px,4vw,46px)}.stage-number{display:inline-block;margin:0;background:var(--pink);color:#fff;padding:5px 14px;border-radius:999px;font-weight:900}.guide-panel h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1.25}.scene-intro{font-size:1.08rem}.before-guide{margin-top:30px;padding:20px;border:2px dashed var(--purple);border-radius:18px;background:#f6f3ff}.reveal-label{font-weight:900;color:var(--pink);letter-spacing:.12em}.reveal-guide ul{padding-left:1.4em}.reveal-guide li{margin:.55em 0}.reassurance{margin:24px 0;padding:20px;border-left:8px solid var(--lime);border-radius:12px;background:#f5ffdc}.reassurance p{margin:.4em 0 0}.action-list li::marker{color:var(--blue)}.retry-button{border:0;border-radius:999px;background:var(--navy);color:#fff;padding:13px 19px;font:inherit;font-weight:900;cursor:pointer}.simulation-shell{padding:18px;background:linear-gradient(145deg,#252a61,#161a40)}.sim-label{color:#fff;font-weight:900;margin:0 0 12px}.sim-label span{display:inline-block;margin-right:9px;padding:3px 9px;border-radius:5px;background:var(--lime);color:var(--navy);font-size:.78rem}.browser-frame{overflow:hidden;border:4px solid #0f1433;border-radius:20px;background:#fff}.browser-bar{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#e8ebf7;border-bottom:2px solid #b8c0df;font-size:.82rem}.browser-dots{color:var(--pink);letter-spacing:.1em}.fake-address{flex:1;padding:5px 12px;border-radius:999px;background:#fff;color:#657092}.practice-chip{padding:3px 8px;background:var(--yellow);border-radius:5px;font-weight:900}.mock-screen{position:relative;min-height:530px;padding:clamp(20px,4vw,42px);background:#fff}.screen-status{min-height:1.8em;margin:13px 4px 0;color:#fff}.mock-site{max-width:600px;margin:auto}.mock-logo{font-weight:1000;color:var(--purple);letter-spacing:.08em}.mock-card{padding:24px;border:2px solid #e3e7f2;border-radius:20px;background:#fff;box-shadow:0 10px 26px rgba(30,43,91,.1)}.mock-title{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.25;margin:.5em 0}.mock-price{font-size:2.8rem;font-weight:1000;color:var(--pink)}.mock-fine{font-size:.7rem;color:#a4a8b7}.mock-primary,.mock-secondary,.mock-option{width:100%;border-radius:12px;padding:14px;border:2px solid var(--navy);font:inherit;font-weight:900;cursor:pointer}.mock-primary{background:var(--pink);color:#fff;box-shadow:0 6px 0 #b91d6c}.mock-secondary{margin-top:12px;background:#fff;color:#a7abb8;border-color:#edf0f5}.mock-option{margin:8px 0;background:#fff;text-align:left}.mock-countdown{display:inline-block;padding:8px 14px;background:#ff3d3d;color:#fff;font-weight:1000;border-radius:8px}.mock-check{display:flex;gap:10px;padding:13px;margin:10px 0;border-radius:12px;background:#f1f3ff}.mock-check input{width:20px;height:20px}.fake-warning{padding:22px;border:6px solid #ff354f;background:#fff5f5;text-align:center}.fake-warning .warning-mark{font-size:3.6rem}.fake-warning h3{font-size:2rem;color:#d21335;margin:.2em 0}.fake-warning .mock-primary{background:#ff304f}.mock-close{background:none;border:0;color:#aeb2be;text-decoration:underline;cursor:pointer}.review-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 0;border-bottom:1px solid #eee}.stars{color:#ffb000}.marker{position:absolute;display:none;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--yellow);color:var(--navy);border:3px solid var(--navy);font-weight:1000;box-shadow:0 0 0 7px rgba(255,212,59,.35)}.mock-screen.revealed .marker{display:grid;animation:pop .3s ease-out}.mock-screen.revealed .mock-site{filter:saturate(.6)}@keyframes pop{from{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.remember,.help,.connections,.sources{max-width:1180px;margin:0 auto clamp(65px,8vw,110px);padding:clamp(28px,5vw,55px);border-radius:28px}.remember{background:var(--navy);color:#fff}.remember>p{color:var(--cyan)}.remember h2,.help h2,.connections h2{font-size:clamp(1.8rem,3vw,3rem);margin:.2em 0}.remember>div{display:flex;flex-wrap:wrap;gap:10px}.remember>div span{padding:10px 15px;border:2px solid var(--cyan);border-radius:999px;font-weight:900}.remember blockquote{margin:28px 0 0;padding:17px 20px;border-left:7px solid var(--yellow);background:rgba(255,255,255,.1);font-weight:900}.help{background:linear-gradient(135deg,#ffd43b,#b8f238)}.help ol{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:0;list-style:none}.help li{padding:15px;border:2px solid var(--navy);border-radius:14px;background:#fff;font-weight:800}.help li b{display:block;color:var(--purple)}.help a{display:inline-block;margin-top:18px;padding:12px 18px;border-radius:999px;background:var(--navy);color:#fff;font-weight:900;text-decoration:none}.connections{background:#fff;border:3px solid var(--navy)}.connections>p{color:var(--pink)}.connections>div{display:grid;grid-template-columns:1fr 1fr;gap:16px}.connections a{padding:20px;border-radius:16px;background:#f2f0ff;text-decoration:none}.connections a b,.connections a span{display:block}.connections a span{margin-top:8px;color:var(--blue)}.sources{background:rgba(255,255,255,.7);border:1px solid #d9def0}.sources a{font-weight:900;color:var(--blue)}footer{text-align:center;padding:40px 20px;background:var(--navy);color:#fff}footer strong{color:var(--yellow);font-size:1.2rem}.noscript{margin:30px;padding:25px;background:#fff}
@media(max-width:850px){.site-header nav>a:not(.ml-lab-home){display:none}.hero{grid-template-columns:1fr;min-height:auto}.hero-console{width:300px}.safety-banner{align-items:flex-start;flex-direction:column;gap:2px}.lab{grid-template-columns:1fr}.simulation-shell{order:-1}.mock-screen{min-height:500px}.help ol{grid-template-columns:1fr 1fr}.connections>div{grid-template-columns:1fr}}
@media(max-width:520px){.site-header{padding:10px 12px}.brand b{font-size:.82rem}.hero{padding:70px 20px}.hero h1{font-size:2.75rem}.hero-console{width:255px;padding:24px}.stage-section{padding-left:12px;padding-right:12px}.guide-panel,.simulation-shell{border-radius:20px}.simulation-shell{padding:9px}.browser-bar{gap:5px;padding:8px}.browser-dots{display:none}.fake-address{white-space:nowrap;overflow:hidden}.mock-screen{min-height:470px;padding:18px 14px}.mock-title{font-size:1.55rem}.mock-price{font-size:2.15rem}.help ol{grid-template-columns:1fr}.remember,.help,.connections,.sources{margin-left:12px;margin-right:12px}.connections{padding:25px 20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.care-message{max-width:1180px;margin:0 auto clamp(65px,8vw,110px);padding:clamp(28px,5vw,55px);border:3px solid var(--navy);border-radius:28px;background:#fff;box-shadow:8px 8px 0 var(--lime)}
.care-message p{margin:0;color:var(--purple);font-weight:900;letter-spacing:.12em}.care-message h2{margin:.2em 0;font-size:clamp(1.7rem,3vw,2.7rem)}
@media(max-width:520px){.care-message{margin-left:12px;margin-right:12px}}

/* Calm exhibition frame: vivid colors stay inside the practice screens. */
body{background:#f4f6fa}
.site-header{background:rgba(40,52,73,.96);box-shadow:0 1px 0 rgba(255,255,255,.14)}
.site-header .ml-lab-home{background:#f3e6ad}
.hero{background:#edf1f7;color:#27364f;border-bottom:1px solid #d8dfeb}
.hero h1 em{color:#5e5aa8}
.start-button{background:#e8d990;box-shadow:0 5px 0 #c9b96e}
.hero-console{background:#35425b;border-color:#cbd4e2;box-shadow:10px 10px 0 #c9d3e5;transform:none}
.hero-console span{color:#dce9ab}.hero-console b{border-color:#92b8c7;color:#fff}.hero-console i{color:#e8d990}
.simulation-shell{background:#313b55}
.help{background:#f1e6ad}
.connections a{background:#eef1f7}
