:root{--n:#0F2D4A;--b:#2563eb;--b50:#eff6ff;--t:#176c66;--y:#ffe08a;--s50:#f8fafc;--s100:#f1f5f9;--s200:#e2e8f0;--s300:#cbd5e1;--s500:#64748b;--s600:#475569;--s700:#334155;--s900:#0f172a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--s50);color:var(--s900);font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}button,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.w{width:min(1200px,calc(100% - 32px));margin:auto}.top{height:64px;background:#fff;border-bottom:1px solid var(--s200);display:flex;align-items:center;position:sticky;top:0;z-index:20}.nav{display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:800;color:var(--n)}.title{margin-left:14px;padding-left:14px;border-left:1px solid var(--s200);font-size:.85rem;color:var(--s500)}.nav a:last-child{font-size:.85rem;text-decoration:none;color:var(--s600)}.intro{padding:32px 0 20px}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:end}.k{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em;color:var(--t)}h1{font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.05;letter-spacing:-.045em;margin:7px 0 0;max-width:15ch}.intro p{color:var(--s600);max-width:66ch}.note0{background:#fff;border:1px solid var(--s200);border-radius:13px;padding:16px}.note0 strong{display:block}.note0 p{font-size:.87rem;margin:.35rem 0 0}.steps{position:sticky;top:64px;z-index:15;background:rgba(248,250,252,.97);border-block:1px solid var(--s200)}.stepbar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;padding:9px 0}.sb{border:0;background:transparent;text-align:left;padding:7px 6px;border-radius:8px;min-width:0}.sb:hover,.sb.cur{background:#fff}.line{height:4px;border-radius:99px;background:var(--s200);margin-bottom:6px}.sb.done .line,.sb.cur .line{background:var(--b)}.sb span{display:block;font-size:.7rem;font-weight:750;color:var(--s500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb.cur span{color:var(--s900)}main{padding:14px 0 42px}.app{background:#fff;border:1px solid var(--s200);border-radius:17px;box-shadow:0 16px 42px rgba(15,23,42,.09);overflow:hidden}.chrome{height:52px;background:var(--n);color:#fff;padding:0 17px;display:flex;align-items:center;justify-content:space-between}.ab{display:flex;align-items:center;gap:9px;font-weight:800}.view{font-size:.73rem;border:1px solid #ffffff38;border-radius:99px;padding:5px 9px;color:#e5eff4}.tabs{display:flex;gap:4px;padding:9px 13px;border-bottom:1px solid var(--s200);overflow:auto}.tab{border:0;background:transparent;border-radius:8px;padding:8px 10px;font-size:.78rem;font-weight:700;color:var(--s500)}.tab.on{background:var(--b50);color:#1d4ed8}.layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.72fr);gap:22px;padding:20px}.workspace{background:var(--s50);border:1px solid var(--s200);border-radius:13px;padding:16px;min-width:0}.ey{font-size:.69rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--s500)}h2{font-size:1.22rem;margin:.2rem 0}.sub{font-size:.86rem;color:var(--s600);margin-bottom:14px}.teach{align-self:start;background:#fff;border:1px solid var(--s200);border-radius:13px;padding:17px;position:sticky;top:136px}.teach .nk{font-size:.69rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:var(--t)}.teach h3{font-size:1.03rem;margin:.25rem 0}.teach p{font-size:.88rem;color:var(--s600)}ul.nl{list-style:none;padding:0;margin:12px 0 0}.nl li{border-top:1px solid var(--s200);padding:9px 0;font-size:.84rem;color:var(--s700)}.nl strong{display:block;color:var(--s900);font-size:.78rem}.watch{margin-top:12px;padding:11px;border:1px solid #fde68a;background:#fff9e8;border-radius:9px;font-size:.82rem;color:#67561c}.card{background:#fff;border:1px solid var(--s200);border-radius:12px;padding:14px}.builder-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding-bottom:11px;border-bottom:1px solid var(--s200);margin-bottom:12px}.bi{min-width:0}.bi i{display:block;height:4px;border-radius:9px;background:var(--s200)}.bi.on i{background:var(--b)}.bi span{display:block;font-size:.66rem;color:var(--s500);margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bi.on span{font-weight:750;color:var(--s900)}.meta{font-size:.68rem;font-weight:750;text-transform:uppercase;letter-spacing:.07em;color:var(--s500)}.label{display:block;font-size:.75rem;font-weight:750;color:var(--s700);margin:12px 0 6px}.field,.write{width:100%;border:1px solid var(--s300);border-radius:9px;padding:11px 12px;resize:vertical;background:#fff;color:var(--s900)}.field{min-height:85px}.write{min-height:105px}.help{font-size:.75rem;color:var(--s500);margin-top:6px}.crit{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.crit span{background:var(--s50);border:1px solid var(--s200);border-radius:8px;padding:8px;font-size:.74rem;color:var(--s600)}.cycle{display:flex;gap:6px;overflow:auto;margin-bottom:12px}.ct{flex:none;border:2px solid var(--s200);background:#fff;border-radius:99px;min-height:38px;padding:7px 10px;font-size:.72rem;font-weight:750;color:var(--s600)}.ct.on{background:var(--b);border-color:var(--b);color:#fff}.ct.old{background:var(--b50);border-color:#bfdbfe;color:#1e40af}.ct.lock{background:var(--s50);border-color:var(--s100);color:#94a3b8}.stage{background:#fff;border:1px solid var(--s200);border-radius:11px;padding:13px;display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.stage small{font-size:.66rem;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:var(--s500)}.stage h3{font-size:1rem;margin:.15rem 0}.stage p{font-size:.8rem;color:var(--s600)}.mini{border:1px solid var(--s200);background:#fff;border-radius:8px;padding:7px 9px;font-size:.71rem;font-weight:750;color:var(--s700)}.switch{display:inline-flex;background:var(--s100);padding:4px;border-radius:8px;margin-bottom:10px}.switch button{border:0;background:transparent;border-radius:6px;padding:7px 9px;font-size:.72rem;font-weight:750;color:var(--s600)}.switch .on{background:#fff;color:#1e40af}.save{display:flex;justify-content:space-between;align-items:center;margin-top:6px;font-size:.71rem;color:var(--s500)}.saved{color:#0f766e}.primary{border:0;background:var(--b);color:#fff;border-radius:8px;padding:9px 13px;min-height:40px;font-weight:750}.quiet{border:1px solid var(--s200);background:#fff;border-radius:8px;padding:9px 12px;min-height:40px;font-weight:700;color:var(--s700)}.nextline{border-top:1px solid var(--s200);margin-top:12px;padding-top:12px;display:flex;justify-content:flex-end}.eintro{font-size:.82rem;color:var(--s600);margin-bottom:10px}.ev{background:#fff;border:1px solid var(--s200);border-radius:11px;padding:13px}.etype{font-size:.65rem;text-transform:uppercase;letter-spacing:.07em;font-weight:850;color:var(--t)}.etitle{font-weight:750;margin-top:2px}.eb{border-top:1px solid var(--s200);padding-top:9px;margin-top:9px}.eb b{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--s500);margin-bottom:3px}.eb p{font-size:.8rem;color:var(--s700)}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.chip{border:1px solid var(--s300);background:#fff;border-radius:99px;padding:6px 8px;font-size:.69rem;font-weight:700}.chip.on{background:#ecfdf5;border-color:#99f6e4;color:#115e59}.fit.on{background:var(--b50);border-color:#bfdbfe;color:#1e40af}.evrow{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--s200);background:#fff;border-radius:10px;padding:6px 8px;margin-bottom:10px}.evrow button{border:0;background:transparent;padding:7px;font-size:.75rem;font-weight:750}.board{position:relative;min-height:290px;border:1px solid var(--s200);border-radius:11px;background-color:#fff;background-image:radial-gradient(#cbd5e1 1px,transparent 1px);background-size:18px 18px;overflow:hidden}.sticky{position:absolute;width:145px;border-radius:8px;padding:9px;font-size:.72rem;box-shadow:0 3px 9px #0f172a12}.a{background:#fef3c7;left:18px;top:20px}.bb{background:#dbeafe;left:180px;top:70px}.c{background:#ccfbf1;left:85px;top:160px}.claim{position:absolute;right:16px;top:24px;width:185px;background:#fff;border:2px solid #bfdbfe;border-radius:9px;padding:9px}.claim b{font-size:.64rem;text-transform:uppercase;color:#1e40af}.claim p{font-size:.75rem;margin:.25rem 0}.based{border-top:1px solid var(--s200);padding-top:6px;font-size:.68rem;color:var(--s500)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:9px}.q{border:1px solid var(--s200);background:#fff;border-radius:10px;padding:12px}.q b{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--s500)}.q p{font-size:.8rem;margin:.25rem 0}.mentor{background:var(--s100);border-radius:8px;padding:9px;font-size:.77rem;color:var(--s700);margin-top:8px}.compare{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:10px}.comp{border:1px solid var(--s200);background:#fff;border-radius:10px;padding:11px}.comp b{font-size:.65rem;text-transform:uppercase;color:var(--s500)}.comp p{font-size:.8rem;margin:.25rem 0}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:8px}.act{border:1px solid var(--s200);background:var(--s50);border-radius:8px;padding:9px;font-size:.72rem;color:var(--s700)}.done{margin-top:11px;background:#ecfdf5;border:1px solid #99f6e4;border-radius:9px;padding:11px;font-size:.8rem;color:#376b64}.controls{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-top:1px solid var(--s200)}.pos{font-size:.75rem;color:var(--s500)}.cg{display:flex;gap:7px}@media(max-width:950px){.layout{grid-template-columns:1fr}.teach{position:static}.intro-grid{grid-template-columns:1fr}.stepbar{grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto}}@media(max-width:620px){.w{width:min(100% - 20px,1200px)}.title{display:none}.intro{padding-top:22px}.layout{padding:11px}.workspace{padding:11px}.stage{display:block}.stage div:last-child{margin-top:8px}.crit,.grid2,.compare,.actions{grid-template-columns:1fr}.board{min-height:410px}.bb{left:140px;top:90px}.c{left:34px;top:210px}.claim{position:static;width:auto;margin:12px}.pos{display:none}.cg{width:100%}.cg button{flex:1}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}