:root{font-family:Arial,sans-serif;color:#10224c;background:#f3f6fc;line-height:1.6;--blue:#2155df}*{box-sizing:border-box}body{margin:0}a{color:#1745bf}button,input,select{font:inherit}button,.button{background:var(--blue);color:white;padding:.7rem 1.15rem;border:0;border-radius:8px;cursor:pointer;display:inline-block;text-decoration:none}button.secondary{background:#e6edff;color:#143587}button:disabled{opacity:.6;cursor:default}:focus-visible{outline:3px solid #e28a00;outline-offset:4px}header{background:white;padding:1rem 5%;display:flex;justify-content:space-between;align-items:center;gap:2rem;border-bottom:1px solid #d9e2f2}.brand{display:flex;align-items:center;gap:.8rem;color:#092b78;text-decoration:none;line-height:1.3}.brand img{width:75px;height:75px;object-fit:contain}.brand strong{font-size:.875rem}nav{display:flex;gap:1.3rem;flex-wrap:wrap}nav a{text-decoration:none;font-weight:bold}.notice{padding:.65rem 5%;background:#fff3d6;color:#684600}main{max-width:1160px;min-height:65vh;margin:auto;padding:3rem 1.5rem}.hero{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:3rem;padding:2rem 0 4rem}.hero img{width:100%;max-width:350px;justify-self:center;border-radius:24px}h1{font-size:clamp(2rem,4vw,3.6rem);line-height:1.15;letter-spacing:-.035em}h2{line-height:1.3}p{max-width: seventy;max-width:70ch}.eyebrow{font-size:.875rem;letter-spacing:.12em;text-transform:uppercase;font-weight:bold;color:#2155df}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem}.card,.panel{background:white;border:1px solid #dce5f3;border-radius:14px;padding:1.5rem}.card h2{font-size:1.4rem}.card .number{font-size:2.3rem;font-weight:bold;color:#2155df}.tag{background:#e8efff;border-radius:20px;padding:.25rem .7rem;font-size:.875rem;display:inline-block}.actions{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.5rem 0}label{display:block;margin:1rem 0 .35rem}input,select{padding:.75rem;border:1px solid #a9b9d4;border-radius:6px;max-width:100%;width:100%}form{max-width:480px}.muted{color:#52627e}.lesson{padding:1rem;border-bottom:1px solid #dce5f3}footer{padding:2rem 5%;background:#0a286b;color:white}footer a{color:white;margin-right:1.25rem}#message:not(:empty){position:fixed;bottom:1rem;left:5%;right:5%;background:#10224c;color:white;padding:1rem;border-radius:8px;z-index:5}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;padding:1rem;z-index:10}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;background:white}td,th{text-align:left;padding:1rem;border-bottom:1px solid #dce5f3}@media(max-width:700px){header{flex-direction:column;align-items:flex-start;gap:1rem}nav{gap:1rem}.hero{grid-template-columns:1fr;gap:1rem;padding-bottom:2rem}.hero img{max-width:200px;order:-1}main{padding:2rem 1rem}h1{font-size:2.25rem}}

.instructor-menu{position:relative}.instructor-menu summary{color:#1745bf;font-weight:bold;cursor:pointer}.instructor-options{position:absolute;right:0;top:2rem;z-index:20;min-width:230px;background:white;border:1px solid #dce5f3;border-radius:8px;box-shadow:0 8px 24px #10224c22;padding:.5rem}.instructor-options a,.instructor-options span{display:block;padding:.6rem .8rem}.instructor-options a:hover{background:#e8efff}.instructor-options span{color:#52627e}.instructor-options small{display:block;font-weight:normal}@media(max-width:700px){.instructor-options{left:0;right:auto}}
input[type="checkbox"]{width:1.1rem;height:1.1rem;flex:0 0 1.1rem;margin:0;accent-color:var(--blue)}label:has(> input[type="checkbox"]){display:flex;align-items:flex-start;gap:.65rem;line-height:1.5}label>input[type="checkbox"]{margin-top:.2rem}

.topic-folder{display:block;text-decoration:none;color:#10224c;transition:box-shadow .15s}.topic-folder:hover{box-shadow:0 6px 20px #10224c20}.topic-folder>span{font-size:2.5rem}.topic-folder h2{color:#1745bf}

.catalog-payment{border-top:1px solid #dce5f3;margin-top:1.25rem;padding-top:1rem}.catalog-payment h3{margin-top:0}.catalog-payment ol{padding-left:1.25rem}.catalog-payment form{max-width:none}

.welcome{display:grid;grid-template-columns:1.15fr 1fr;gap:4rem;align-items:center;padding:2rem 0 4rem}.welcome h1{font-size:clamp(2.5rem,4.5vw,4.25rem);line-height:1.12;color:#092b78}.welcome-lead{font-size:1.2rem;color:#3b5275;max-width:44ch}.welcome-entry{background:white;border:1px solid #dce5f3;border-top:5px solid #2155df;border-radius:20px;padding:2rem 2.5rem;text-align:center;box-shadow:0 14px 40px #12326b0b}.official-logo{display:block;width:210px;height:210px;object-fit:contain;margin:0 auto 1rem}.welcome-entry h2{font-size:1.5rem;margin:.5rem 0}.welcome-entry .button{display:block;width:100%;padding:.85rem}.button.outline{border:1px solid #2155df;background:white;color:#1745bf}.entry-label{font-size:.875rem;color:#52627e;margin:.45rem 0 1.25rem}.entry-note{background:#edf3ff;color:#24436e;padding:1rem;border-radius:8px;font-size:.875rem;text-align:left}.welcome-facts{display:flex;gap:.6rem;flex-wrap:wrap;margin:2rem 0}.welcome-facts span{border-left:3px solid #2155df;padding:.2rem .75rem;font-size:.875rem;color:#24436e}.account-shell{max-width:620px;margin:auto;background:white;border:1px solid #dce5f3;border-radius:18px;padding:2rem}.account-shell img{width:130px;height:130px;object-fit:contain;display:block;margin:auto}.account-shell h1{font-size:2rem}.account-shell .entry-note{font-size:1rem}nav a:last-child{background:#2155df;color:white;padding:.45rem .8rem;border-radius:6px}nav{align-items:center}@media(max-width:760px){.welcome{grid-template-columns:1fr;gap:2rem;padding:0 0 2rem}.welcome-entry{padding:1.5rem}.welcome h1{font-size:2.6rem}.official-logo{width:175px;height:175px}.welcome-facts{margin:1.5rem 0}.account-shell{padding:1.5rem}}
