@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Gowun+Dodum&family=Manrope:wght@400;500;600;700;800&display=swap";
:root{--ink:#17202a;--muted:#657384;--line:#dfe6ee;--paper:#f7f9fc;--white:#fff;--teal:#147d78;--teal-dark:#0d5e5b;--yellow:#ffd166;--coral:#ef6a5b;--shadow:0 18px 50px #19374b14}*{box-sizing:border-box}html{background:var(--paper)}body{color:var(--ink);background:var(--paper);margin:0;font-family:Manrope,Gowun Dodum,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.site-header{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:10;background:#ffffffd1;justify-content:space-between;align-items:center;height:76px;padding:0 6vw;display:flex;position:sticky;top:0}.brand{letter-spacing:-.06em;font-size:1.35rem;font-weight:800}.brand span{color:var(--teal)}.site-nav{color:var(--muted);align-items:center;gap:1.35rem;font-size:.9rem;display:flex}.nav-button{border:1px solid var(--line);color:var(--ink);background:var(--white);border-radius:999px;padding:.55rem .9rem}.nav-user{text-overflow:ellipsis;white-space:nowrap;max-width:220px;color:var(--ink);font-size:.82rem;overflow:hidden}.site-footer{max-width:1120px;color:var(--muted);border-top:1px solid var(--line);margin:5rem auto 0;padding:2rem 1.25rem 3rem;font-size:.85rem}.hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:4rem;max-width:1120px;margin:0 auto;padding:7rem 1.25rem 5rem;display:grid}.eyebrow{color:var(--teal);text-transform:uppercase;letter-spacing:.12em;font-family:DM Mono,monospace;font-size:.75rem}.hero h1{letter-spacing:-.075em;max-width:670px;margin:.9rem 0 1.3rem;font-size:clamp(2.9rem,7vw,5.8rem);line-height:.98}.hero h1 em{color:var(--teal);font-style:normal}.hero p{max-width:540px;color:var(--muted);font-size:1.05rem;line-height:1.8}.hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.button{border:0;border-radius:12px;justify-content:center;align-items:center;gap:.45rem;padding:.88rem 1.15rem;font-weight:700;transition:transform .2s,box-shadow .2s;display:inline-flex}.button:hover{transform:translateY(-2px);box-shadow:0 10px 20px #147d7829}.button-primary{color:#fff;background:var(--teal)}.button-secondary{color:var(--ink);background:var(--white);border:1px solid var(--line)}.hero-card{min-height:380px;box-shadow:var(--shadow);background:#d8f2ec;border-radius:28px;align-items:flex-end;padding:1.3rem;display:flex;position:relative;overflow:hidden}.hero-card:before,.hero-card:after{content:"";background:#fff9;border-radius:50%;position:absolute}.hero-card:before{width:270px;height:270px;top:-90px;right:-30px}.hero-card:after{background:#ffd166ad;width:170px;height:170px;bottom:-70px;left:-35px}.hero-note{z-index:1;background:#ffffffd9;border-radius:18px;width:100%;padding:1.45rem;position:relative}.hero-note strong{font-size:1.1rem}.hero-note p{margin:.5rem 0 0;font-size:.9rem;line-height:1.6}.section{max-width:1120px;margin:0 auto;padding:1rem 1.25rem 3rem}.section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.25rem;display:flex}.section-heading h2{letter-spacing:-.05em;margin:.35rem 0 0;font-size:1.8rem}.feature-grid,.concept-grid,.admin-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.feature-card,.concept-card,.admin-card,.auth-card,.panel{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:1.3rem;box-shadow:0 8px 28px #19374b09}.feature-card{min-height:165px}.feature-icon{width:38px;height:38px;color:var(--teal);background:#e6f6f1;border-radius:12px;place-items:center;font-weight:800;display:inline-grid}.feature-card h3,.concept-card h3{margin:1rem 0 .45rem;font-size:1.05rem}.feature-card p,.concept-card p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.65}.auth-shell{max-width:520px;margin:4rem auto;padding:0 1.25rem}.auth-card h1{letter-spacing:-.05em;margin:0 0 .5rem}.auth-card>p{color:var(--muted);margin-top:0}.form-stack{gap:.9rem;margin-top:1.5rem;display:grid}.field{gap:.4rem;display:grid}.field label{font-size:.82rem;font-weight:700}.field input,.field textarea,.field select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fbfcfe;border-radius:10px;padding:.78rem .85rem}.field textarea{resize:vertical;min-height:100px}.form-message{color:var(--coral);margin:.8rem 0 0;font-size:.88rem}.helper{color:var(--muted);font-size:.86rem;line-height:1.6}.page-shell{max-width:1120px;margin:0 auto;padding:3rem 1.25rem}.page-title{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2rem;display:flex}.page-title h1{letter-spacing:-.07em;margin:.35rem 0 0;font-size:2.5rem}.page-title p{color:var(--muted);margin:.6rem 0 0}.concept-card{flex-direction:column;min-height:200px;display:flex}.concept-card .card-footer{justify-content:space-between;align-items:center;margin-top:auto;padding-top:1.25rem;display:flex}.tag{color:var(--muted);background:#f0f5f7;border-radius:999px;padding:.32rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.arrow{color:var(--teal);font-weight:800}.concept-hero{max-width:880px;margin:0 auto;padding:4.5rem 1.25rem 2rem}.concept-hero h1{letter-spacing:-.07em;margin:.6rem 0;font-size:3.1rem}.concept-hero p{color:var(--muted);line-height:1.8}.video-placeholder{color:#fff;background:#1c2d38;border-radius:22px;place-items:center;min-height:340px;display:grid;position:relative;overflow:hidden}.video-placeholder video{border-radius:22px;width:100%;max-height:520px}.video-message{text-align:center;color:#cfe1e5;padding:2rem}.learn-layout{grid-template-columns:1.15fr .85fr;gap:1rem;max-width:1120px;margin:0 auto;padding:2rem 1.25rem 4rem;display:grid}.learn-copy h2{letter-spacing:-.04em;margin-top:0}.practice-card{background:#fff7db;border:1px solid #f4e3a8;border-radius:20px;padding:1.4rem}.practice-shell{max-width:980px;margin:0 auto;padding:3rem 1.25rem 5rem}.practice-top{justify-content:space-between;align-items:start;gap:1rem;display:flex}.practice-top h1{letter-spacing:-.07em;margin:.4rem 0;font-size:2.3rem}.practice-layout{grid-template-columns:1.15fr .85fr;gap:1rem;margin-top:2rem;display:grid}.question-box{min-height:350px}.question-box h2{margin:.4rem 0 1rem;font-size:1.55rem;line-height:1.55}.choice-list{gap:.7rem;display:grid}.choice-button{text-align:left;border:1px solid var(--line);background:#fbfcfe;border-radius:10px;padding:.85rem}.choice-button.selected{border-color:var(--teal);background:#e8f6f1}.result-box{background:#eff8f3;border:1px solid #cdebdc;border-radius:12px;margin-top:1rem;padding:1rem}.result-box.incorrect{background:#fff2ef;border-color:#f8d1c9}.chat-box{flex-direction:column;min-height:460px;display:flex}.chat-log{flex:1;align-content:start;gap:.7rem;max-height:330px;display:grid;overflow-y:auto}.chat-message{white-space:pre-wrap;background:#f0f4f7;border-radius:12px;padding:.75rem .85rem;font-size:.88rem;line-height:1.6}.chat-message.user{background:#dff3ed;margin-left:1.5rem}.chat-input{gap:.5rem;margin-top:1rem;display:flex}.chat-input input{border:1px solid var(--line);border-radius:10px;flex:1;min-width:0;padding:.7rem}.loading{color:var(--muted);font-size:.85rem}.admin-grid{grid-template-columns:repeat(2,1fr)}.admin-card h2{letter-spacing:-.04em;margin-top:0}.admin-form-grid{grid-template-columns:repeat(2,1fr);gap:.8rem;display:grid}.admin-list{gap:.6rem;margin-top:1rem;display:grid}.admin-list-item{border-bottom:1px solid var(--line);justify-content:space-between;gap:1rem;padding:.75rem;font-size:.86rem;display:flex}.admin-list-item small{color:var(--muted)}@media (max-width:800px){.site-header{padding:0 1.25rem}.site-nav{gap:.65rem;font-size:.8rem}.hero,.learn-layout,.practice-layout{grid-template-columns:1fr}.hero{gap:2rem;padding-top:4.5rem}.hero-card{min-height:270px}.feature-grid,.concept-grid,.admin-grid,.admin-form-grid{grid-template-columns:1fr}.concept-hero h1,.practice-top h1{font-size:2.2rem}}
