
:root{--navy:#12345b;--cyan:#17a6a1;--orange:#f28c3a;--green:#3aa66f;--red:#d84a4a;--light:#f2f7fa;--dark:#183042;--line:#d7e5ed;--purple:#7467d8}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:linear-gradient(135deg,#edf5f8,#f9fbfc);color:var(--dark)}
header{max-width:1180px;margin:auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:0 0 20px 20px;box-shadow:0 8px 25px #12345b18}header img{width:105px;height:105px;object-fit:contain}header h1{margin:0;font-size:clamp(1.2rem,3vw,2rem);color:#111}header p{margin:4px 0}.bar{background:var(--navy);color:#fff;padding:14px 20px;position:sticky;top:0;z-index:5}.bar>div{max-width:1140px;margin:auto;display:flex;justify-content:space-between;gap:12px;align-items:center}.score{background:#fff;color:var(--navy);padding:8px 13px;border-radius:999px;font-weight:800}.wrap{max-width:1140px;margin:22px auto;padding:0 16px 40px}.hero,.card{background:#fff;border-radius:22px;padding:clamp(20px,4vw,34px);box-shadow:0 14px 35px #12345b1c}.hero{display:grid;grid-template-columns:1.35fr .65fr;gap:24px;align-items:center}.hero h2{font-size:clamp(2rem,6vw,3.6rem);line-height:1.02;color:var(--navy);margin:0 0 12px}.hero p{font-size:1.08rem;line-height:1.55}.badge{display:grid;place-items:center;width:190px;height:190px;border-radius:35px;background:linear-gradient(145deg,var(--cyan),#0f8582);color:#fff;font-size:5rem;font-weight:900;margin:auto;box-shadow:0 18px 30px #17a6a140}.notice{background:#fff6e9;border-left:7px solid var(--orange);padding:14px 16px;border-radius:12px;margin:16px 0}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.card h3{color:var(--navy);font-size:1.45rem;margin-top:0}.steps{counter-reset:step;display:grid;gap:10px}.step{display:flex;gap:10px;align-items:flex-start;background:#f4f8fa;border:1px solid var(--line);padding:12px;border-radius:13px}.step:before{counter-increment:step;content:counter(step);display:grid;place-items:center;min-width:30px;height:30px;border-radius:50%;background:var(--cyan);color:#fff;font-weight:900}.editor{display:grid;grid-template-columns:1fr 1fr;gap:14px}.editor textarea{width:100%;min-height:330px;padding:14px;border:2px solid var(--line);border-radius:15px;background:#0d1e31;color:#d9f4ff;font:14px/1.45 Consolas,monospace;resize:vertical}.preview{width:100%;min-height:330px;border:2px solid var(--line);border-radius:15px;background:#fff}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}button,a.btn{border:0;border-radius:13px;padding:12px 18px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-block}button.primary,a.primary{background:var(--navy);color:#fff}button.secondary,a.secondary{background:#dfeaf1;color:var(--navy)}button.orange{background:var(--orange);color:#fff}.feedback{display:none;padding:14px 16px;border-radius:13px;margin-top:12px;font-weight:800}.feedback.good{display:block;background:#e8f8ef;color:#17663f;border:1px solid #75c99c}.feedback.bad{display:block;background:#fff0ef;color:#8f2929;border:1px solid #e7a09c}.checklist{display:grid;gap:9px}.check{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f7fafb}.check input{width:20px;height:20px}.codebox{background:#0d1e31;color:#d9f4ff;padding:16px;border-radius:15px;overflow:auto;font:14px/1.5 Consolas,monospace}.navcards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:20px}.navcard{padding:20px;border-radius:18px;background:#fff;box-shadow:0 10px 26px #12345b16;text-decoration:none;color:var(--dark);border-top:8px solid var(--cyan)}.navcard:nth-child(2){border-color:var(--orange)}.navcard:nth-child(3){border-color:var(--purple)}.navcard:nth-child(4){border-color:var(--green)}.navcard h3{color:var(--navy)}footer{text-align:center;padding:22px;color:#6c808c}.hidden{display:none!important}
@media(max-width:800px){.hero,.grid,.editor{grid-template-columns:1fr}.hero .badge{width:145px;height:145px;font-size:4rem}.navcards{grid-template-columns:1fr}header img{width:80px;height:80px}}
