@import url('/static/fonts.css');
:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#173341;background:#f2f6f7;font-size:16px;line-height:1.55;--navy:#102c3a;--teal:#087c88;--lime:#c2ef6b}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:0;border-radius:10px;background:var(--teal);color:white;padding:11px 17px;font-weight:700;cursor:pointer}button:hover{filter:brightness(.94)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #e6ac30;outline-offset:3px}button:disabled{opacity:.45;cursor:default}.secondary{background:#e6eef0;color:#173341}.quiet{background:transparent;color:var(--teal);padding:8px 10px}label{display:block;font-weight:650;margin:15px 0}input:not([type=radio]):not([type=checkbox]),textarea,select{display:block;width:100%;margin:7px 0 0;padding:12px;border:1px solid #bdcdd4;border-radius:9px;background:white;color:#173341}input[type=radio],input[type=checkbox]{accent-color:var(--teal);width:18px;height:18px;flex-shrink:0}h1,h2,h3,p{margin-top:0}h1{line-height:1.12;letter-spacing:-.035em;font-size:2.65rem}h2{font-size:1.5rem;line-height:1.3}em{font-style:normal;color:var(--lime)}.layout{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}aside{background:var(--navy);color:#d7e6ed;padding:32px 23px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{color:white;text-decoration:none}.brand b{font-size:2rem;letter-spacing:-.04em}.brand b span{display:block;font-size:1rem;letter-spacing:.15em;color:var(--lime)}.brand small{display:block;font-size:.58rem;letter-spacing:.08em;margin-top:12px;line-height:1.7}nav{display:grid;gap:8px;margin:50px 0 25px}nav button{background:transparent;text-align:left;color:#cadce5}nav button.active{background:#254859;color:white}.identity{margin-top:auto;display:grid;gap:8px}.identity small{color:#abc3cd}.identity .quiet{color:white;text-align:left;padding-left:0}main{min-width:0;padding:32px clamp(22px,4vw,64px)}.topline{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:35px;font-size:.65rem;font-weight:800;letter-spacing:.08em}.tag{display:inline-block;background:#e6edef;border-radius:20px;padding:5px 11px;font-size:.74rem;font-weight:700;letter-spacing:0}.hero{background:radial-gradient(circle at 95% 15%,#255c5d,transparent 65%),var(--navy);border-radius:24px;padding:35px 40px;color:#d7e8ee;display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:30px;margin-bottom:35px}.hero h1{color:white;font-size:clamp(2.2rem,4vw,3.8rem);margin:15px 0}.hero p{max-width:600px}.eyebrow{font-size:.7rem;letter-spacing:.14em;font-weight:850;color:var(--teal)}.hero .eyebrow{color:var(--lime)}.steps{display:flex;flex-wrap:wrap;gap:15px;font-size:.6rem;font-weight:800;border-top:1px solid #ffffff29;padding-top:20px}.hero-mark{font-size:3.3rem;font-weight:900;align-self:center;text-align:center;color:#d8f0dc}.hero-mark span{color:var(--lime);font-weight:400}.hero-mark hr{border:0;border-top:1px solid #ffffff38;margin:5px}.section-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:15px}.section-heading h2{margin:0}.tracks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.card{background:white;border:1px solid #d7e2e6;border-radius:18px;padding:26px;margin-bottom:22px}.track{border-top:4px solid #73bd88}.track.security{border-top-color:#e9af63}.track h2{font-size:2rem;margin:10px 0}.metrics{display:flex;gap:25px;margin:20px 0}.metrics span{font-size:.8rem;color:#556e78}.metrics b{display:block;font-size:1.5rem;color:#173341}.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.muted,small{color:#526d78}.muted{font-size:.9rem}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.87rem}th,td{text-align:left;border-bottom:1px solid #dce5e9;padding:12px;vertical-align:top}th{color:#506c78;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}details{margin-top:20px}summary{cursor:pointer;font-weight:700}.question h2{font-size:1.22rem}.answer{display:flex;gap:12px;padding:14px;background:#f5f8f9;border:1px solid #dce5e9;border-radius:10px;font-weight:450;align-items:flex-start}.answer:has(input:checked){border-color:#087c88;background:#edf8f6}.flag{display:flex;gap:8px;align-items:center;font-size:.8rem;white-space:nowrap}.checkpoint{padding:10px 0;border-bottom:1px solid #e6ecee}.sticky{position:sticky;bottom:0;background:#ffffffed;backdrop-filter:blur(8px);border:1px solid #d4e0e4;padding:16px;display:flex;justify-content:space-between;align-items:center;gap:15px;border-radius:12px}.sticky span{font-size:.8rem}.feedback{border-left:4px solid #e0a453;padding:15px 20px;margin:15px 0;background:#fff9ef}.feedback.correct{border-color:#48a97b;background:#eff8f3}.feedback p{margin:7px 0}.result-head h1{font-size:4rem;margin:16px 0}.result-head h1 small{display:block;font-size:.9rem;letter-spacing:0;margin-top:10px}.domain-result{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #e0e8eb;padding:12px 0;font-size:.85rem}.domain-result strong{white-space:nowrap}footer{font-size:.72rem;color:#607984;border-top:1px solid #d5e2e7;padding-top:20px;margin-top:40px;max-width:900px}.login{max-width:620px;margin:55px auto;background:var(--navy);padding:40px;border-radius:24px;color:white}.login label{font-size:.9rem}.login p,.login small{color:#ccdde5}.login .eyebrow{color:var(--lime)}.login button{background:var(--lime);color:#173341}.login .quiet{background:none;color:white}#error,#rosterError{color:#ffbfa9}#rosterError{color:#9f3125}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#183744;color:white;padding:15px 22px;border-radius:12px;box-shadow:0 8px 30px #0003;max-width:90vw;z-index:20;display:none}#toast.visible{display:block}@media(max-width:1000px){.layout{grid-template-columns:200px minmax(0,1fr)}.tracks{grid-template-columns:1fr}.hero{grid-template-columns:1fr}.hero-mark{display:none}}@media(max-width:700px){.layout{display:block}aside{position:static;height:auto;padding:20px}.brand b{font-size:1.5rem}.brand small{display:none}nav{display:flex;flex-wrap:wrap;margin:20px 0 5px}.identity{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:15px}.identity small{display:none}main{padding:23px 16px}.topline>span:first-child{display:none}.hero{padding:25px}.hero h1{font-size:2.5rem}.card{padding:20px}.sticky,.section-heading{flex-wrap:wrap}.login{margin:20px;padding:26px}h1{font-size:2rem}}
