@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&family=Baloo+2:wght@700;800&display=swap');
:root{font-family:'Nunito',sans-serif;color:#201c4f;background:#f6f7ff;font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(145deg,#f0f4ff 0%,#fff 48%,#fff7ed 100%);line-height:1.65}
a{color:#4f46e5}
.site-header{min-height:76px;padding:14px clamp(20px,5vw,64px);display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:2px solid #e8edff}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#1e1b4b}
.brand img{border-radius:12px;object-fit:cover}
.brand span{display:flex;flex-direction:column;font-family:'Baloo 2',cursive;line-height:1}
.brand strong{font-size:1.15rem;color:#6366f1}
.brand small{font-size:.8rem;color:#a855f7;font-weight:800}
.site-header nav{display:flex;gap:8px;flex-wrap:wrap}
.site-header nav a{padding:8px 12px;border-radius:9px;text-decoration:none;font-size:.9rem;font-weight:800;color:#64748b}
.site-header nav a:hover,.site-header nav a:focus-visible{background:#f0f4ff;color:#4f46e5}
main{padding:42px 20px 72px}
article{max-width:850px;margin:0 auto}
.breadcrumb{display:flex;gap:9px;align-items:center;color:#7c83a3;font-size:.82rem;font-weight:700;margin-bottom:22px}
.article-header{background:#fff;padding:clamp(26px,5vw,48px);border:2px solid #e8edff;border-radius:24px;box-shadow:0 18px 60px rgba(76,68,160,.09);margin-bottom:22px}
.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;font-weight:900;color:#7c3aed;margin:0 0 9px}
h1,h2{font-family:'Baloo 2',cursive;line-height:1.15;color:#1e1b4b}
h1{font-size:clamp(2.1rem,7vw,4rem);letter-spacing:-.035em;margin:0 0 18px}
h2{font-size:clamp(1.35rem,4vw,1.8rem);margin:0 0 14px}
.intro{font-size:clamp(1.05rem,2vw,1.22rem);line-height:1.65;color:#536079;margin:0;max-width:70ch}
.updated{font-size:.78rem;color:#9298ad;font-weight:700;margin:18px 0 0}
.article-body>section{background:#fff;border:2px solid #e8edff;border-radius:20px;padding:clamp(22px,4vw,34px);margin:0 0 18px}
.article-body p,.article-body li{color:#475569;font-size:1rem}
.article-body li+li{margin-top:9px}
.article-body ul,.article-body ol{padding-left:1.35rem}
.lesson-steps{list-style:none;padding:0!important;counter-reset:lesson}
.lesson-steps li{counter-increment:lesson;position:relative;padding:14px 14px 14px 54px;border-radius:14px;background:#f8f9ff}
.lesson-steps li::before{content:counter(lesson);position:absolute;left:14px;top:12px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff;font-weight:900}
.answer{padding:16px 18px;border-radius:14px;background:#f0f4ff;color:#3730a3!important;font-weight:800}
.tip{padding:15px 17px;border-left:4px solid #f97316;background:#fff7ed;border-radius:4px 12px 12px 4px}
.period-grid,.scale-cards,.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:18px 0}
.period-grid div,.scale-cards div,.feature-grid div{display:flex;flex-direction:column;gap:2px;padding:15px;border:2px solid #dddfff;border-radius:14px;background:#fafaff}
.period-grid strong{font-family:'Baloo 2',cursive;font-size:1.55rem;color:#5b50d9}
.period-grid span,.scale-cards span,.feature-grid span{font-size:.8rem;color:#707892;font-weight:700}
.scale-cards strong,.feature-grid strong{color:#312e81}
.table-wrap{overflow-x:auto;border:1px solid #e3e6f3;border-radius:14px}
table{width:100%;border-collapse:collapse;min-width:600px;background:#fff}
th,td{text-align:left;padding:12px 14px;border-bottom:1px solid #e8eaf2;vertical-align:top}
th{background:#f0f4ff;color:#3730a3;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}
td{color:#475569;font-size:.92rem}
tr:last-child td{border-bottom:0}
.practice-list{display:grid;gap:10px}
details{border:2px solid #e8edff;border-radius:13px;padding:13px 15px;background:#fafbff}
summary{cursor:pointer;color:#3730a3;font-weight:800}
details p{margin:10px 0 0}
.print-actions{display:flex;align-items:center;justify-content:space-between;gap:18px}
.print-actions p{margin:0}
.print-button,.cta-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:linear-gradient(135deg,#4f46e5,#9333ea);color:#fff;text-decoration:none;font:800 .94rem 'Nunito',sans-serif;padding:12px 20px;cursor:pointer;box-shadow:0 8px 22px rgba(99,102,241,.22)}
.tool-cta{display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px;padding:clamp(24px,5vw,40px);margin:34px 0;border-radius:24px;background:#171342;color:#fff}
.tool-cta h2,.tool-cta p{color:#fff}
.tool-cta h2{font-size:clamp(1.5rem,4vw,2.2rem)}
.tool-cta p{margin:7px 0 0;color:#c8c9e8}
.tool-cta .eyebrow{color:#c4b5fd}
.related{margin-top:30px}
.related-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.related-links a{padding:14px 16px;border-radius:13px;background:#fff;border:2px solid #e8edff;text-decoration:none;font-weight:800}
.text-link{font-weight:900;text-decoration-thickness:2px;text-underline-offset:3px}
.scale-path{display:grid;grid-template-columns:auto min-content auto min-content auto min-content auto min-content auto;gap:9px;align-items:center;margin:20px 0;overflow-x:auto;padding-bottom:8px}
.scale-path div{min-width:112px;padding:14px;border:2px solid #dddfff;border-radius:14px;background:#fafaff;text-align:center}
.scale-path strong,.scale-path span{display:block}
.scale-path strong{font-family:'Baloo 2',cursive;color:#3730a3;font-size:1.2rem}
.scale-path div span{font-size:.75rem;color:#707892;font-weight:700}
.scale-path>span{color:#7c3aed;font-size:.76rem;font-weight:900}
.site-header a:focus-visible,.article-body a:focus-visible,.site-footer a:focus-visible{outline:3px solid #4338ca;outline-offset:3px}
.site-footer{display:flex;justify-content:space-between;gap:20px;padding:24px clamp(20px,5vw,64px);background:#12103a;color:#aeb1d2;font-size:.82rem}
.site-footer a{color:#fff;font-weight:800}
@media(max-width:650px){.site-header{align-items:flex-start;flex-direction:column}.site-header nav{width:100%}.site-header nav a{padding-left:0}.tool-cta{grid-template-columns:1fr}.related-links{grid-template-columns:1fr}.site-footer{flex-direction:column}.print-actions{align-items:flex-start;flex-direction:column}table{min-width:540px}}
@media print{.site-header,.breadcrumb,.tool-cta,.related,.site-footer,.print-actions{display:none!important}body,main{background:#fff;padding:0}.article-header,.article-body>section{box-shadow:none;border-color:#bbb;break-inside:avoid}.place-table{font-size:10pt}}
