@font-face{font-family:Onest;src:url(Onest-Regular.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:Onest;src:url(Onest-Medium.woff) format("woff");font-weight:500 600;font-display:swap}
@font-face{font-family:Onest;src:url(Onest-Bold.woff) format("woff");font-weight:700 900;font-display:swap}
:root{--navy:#0e2257;--blue:#173880;--blue-soft:#eaf0fb;--red:#d73743;--ink:#192744;--muted:#566580;--line:#dce3ef;--bg:#f3f6fb;--white:#fff;--radius:12px;--shadow:0 6px 20px #1734670b}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.55 Onest,Arial,sans-serif}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}
:focus-visible{outline:3px solid #4688da;outline-offset:3px}
h1,h2,h3,p{margin:0}h1{font-size:clamp(37px,5vw,64px);font-weight:700;line-height:1.03;letter-spacing:-.068em;overflow-wrap:anywhere}
h2{font-size:23px;letter-spacing:-.04em;line-height:1.18}h3{font-size:17px;letter-spacing:-.02em;line-height:1.3}small{font-size:12px}.muted{color:var(--muted)}.preserve{white-space:pre-wrap;overflow-wrap:anywhere}.icon{width:19px;height:19px;flex:none;vertical-align:middle}.sr-only{position:absolute;overflow:hidden;clip:rect(0,0,0,0);width:1px;height:1px;white-space:nowrap}
.signed-in{display:grid;grid-template-columns:226px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--navy);color:white;display:flex;flex-direction:column;position:sticky;top:0;align-self:start;height:100dvh;padding:32px 19px 22px;z-index:3}.brand{padding:0 13px 38px;display:block;width:max-content}.brand-word{display:block;font-size:36px;line-height:1;font-weight:900;letter-spacing:-.08em}.brand-sub{display:block;font-size:8px;letter-spacing:.15em;font-weight:700;margin-top:9px;color:#c4d1ee}.nav-label{margin:0 13px 9px;font-size:10px;letter-spacing:.16em;color:#bcc9e7;font-weight:700}.sidebar nav{display:grid;gap:4px}.sidebar nav a{padding:11px 13px;color:#e2eafa;border-radius:8px;display:flex;gap:11px;align-items:center;min-height:45px;font-weight:500}.sidebar nav a:hover,.sidebar nav a[aria-current]{background:#ffffff1c;color:white}.sidebar nav a[aria-current]{box-shadow:inset 3px 0 var(--red)}.sidebar-bottom{margin-top:auto;border-top:1px solid #ffffff27;padding:15px 8px 0}.user-link{display:flex;align-items:center;gap:10px;line-height:1.25;overflow-wrap:anywhere}.user-link:hover{text-decoration:underline}.user-link small{display:block;color:#c4d1ee;margin-top:3px}.avatar{display:grid;place-items:center;flex:none;width:33px;height:33px;border-radius:50%;font-weight:700;color:var(--blue);background:var(--blue-soft)}.sidebar .avatar{background:#38548e;color:#fff}.logout{background:none;border:0;color:#d5e1f8;padding:12px 0 0 43px;text-align:left;font-size:12px}.logout:hover{text-decoration:underline}
main{min-width:0}.top{height:69px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:15px;padding:0 clamp(18px,4vw,47px)}.top-title{font-weight:900;font-size:25px;letter-spacing:-.07em;color:var(--navy)}.top-divider{height:22px;border-left:1px solid var(--line)}.top-meta,.internal{font-size:12px;color:var(--muted)}.internal{display:flex;gap:7px;align-items:center;margin-left:auto;white-space:nowrap}.internal i{width:6px;height:6px;border-radius:50%;background:#2f8a63}.workspace{max-width:1550px;margin:auto;padding:34px clamp(18px,4vw,47px) 52px}.heading{display:flex;gap:20px;align-items:flex-end;justify-content:space-between;margin:3px 0 26px}.heading.compact{margin-top:14px}.heading.compact h1{font-size:clamp(32px,4.4vw,54px)}.heading p{margin-top:10px;color:var(--muted);font-size:15px}.heading .chips{margin-top:11px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.16em;color:var(--blue);margin-bottom:8px;display:block}.back{color:var(--blue);font-size:13px;font-weight:600}.back:hover{text-decoration:underline}.actions{display:flex;gap:8px;flex-wrap:wrap}
.hero,.login-art{position:relative;overflow:hidden;isolation:isolate;background:var(--blue);color:white}.hero{border-radius:16px;min-height:306px;display:flex;align-items:center;padding:34px clamp(23px,5vw,56px);box-shadow:var(--shadow)}.hero-content{position:relative;z-index:1}.hero .eyebrow,.login-art .eyebrow{color:#dae6fe}.hero h1{font-size:clamp(76px,10vw,142px);line-height:.96}.hero p,.login-art p{max-width:390px;margin-top:16px;color:#eef3ff;font-size:17px;line-height:1.55}.art-circle{position:absolute;width:420px;aspect-ratio:1;border:68px solid #ffffff15;border-radius:50%;right:-41px;top:-120px;z-index:-1}.art-square{position:absolute;width:118px;aspect-ratio:1;background:#ed4b56;transform:rotate(-19deg);right:100px;bottom:-32px;z-index:-1;border-radius:17px;box-shadow:0 0 0 20px #fff1}
.section-heading,.list-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.hero+.section-heading{margin:28px 0 13px}.section-heading>span,.list-head>span{color:var(--muted);font-size:12px}.module-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.module{position:relative;display:block;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}.module:hover{border-color:#9eb2da}.module h3{font-size:27px;margin:13px 0 6px}.module p{color:var(--muted);min-height:44px}.module-icon{width:44px;height:44px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;border-radius:9px}.module-icon .icon{width:23px;height:23px}.samples-icon{background:#fdebed;color:#ac2332}.module-number{position:absolute;top:24px;right:24px;font-size:12px;color:var(--muted);font-weight:700}.module-foot{margin-top:17px;padding-top:13px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;color:var(--blue);font-weight:700}
.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--blue);background:var(--blue);color:white;min-height:41px;padding:8px 14px;border-radius:7px;font-weight:700;line-height:1.25;white-space:nowrap;width:max-content}.button:hover{background:#0d285f}.button.secondary{background:white;border-color:#c9d4e9;color:var(--blue)}.button.secondary:hover,.button.ghost:hover{background:var(--blue-soft);border-color:#afc1e2}.button.ghost{color:var(--blue);background:transparent;border-color:transparent}.button .icon{width:17px;height:17px}.row-open{display:grid;place-items:center;width:35px;height:35px;border-radius:7px;background:var(--blue-soft);color:var(--blue)}.row-open:hover{background:#d7e4fb}
.panel,.table-shell{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.filter{padding:12px;display:flex;align-items:center;flex-wrap:wrap;gap:9px}.filter label{margin:0;max-width:100%}.search-input{flex:1 1 265px;position:relative}.search-input .icon{position:absolute;left:12px;top:11px;color:var(--muted)}.search-input input{padding-left:39px}.list-head{margin:22px 0 12px}.count{background:#e4ebf9;color:var(--blue);font-size:12px;border-radius:6px;display:inline-block;padding:4px 7px;margin-left:4px;vertical-align:middle;letter-spacing:0}.table-shell{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:12px 15px;border-bottom:1px solid var(--line);vertical-align:middle}thead th{background:#f9fbff;font-size:11px;letter-spacing:.055em;color:var(--muted);white-space:nowrap;text-transform:uppercase}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f7faff}td:first-child{min-width:170px}td small{display:block;margin-top:3px;color:var(--muted)}.primary-link{font-weight:700;color:var(--blue);overflow-wrap:anywhere}.primary-link:hover{text-decoration:underline}.chips{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.chip{display:inline-flex;align-items:center;max-width:100%;min-height:23px;border-radius:5px;padding:2px 7px;background:#edf0f6;color:#455570;font-size:11px;font-weight:600;overflow-wrap:anywhere}.chip.blue{background:var(--blue-soft);color:var(--blue)}a.chip:hover{background:#d7e4fb}.chip.green{background:#e2f5ec;color:#1a6549}.alert-text{color:#a92333!important}.pager{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:17px;color:var(--muted)}.empty{border:1px dashed #c9d4e9;border-radius:9px;padding:22px;background:#fbfcff;color:var(--muted)}.empty strong{color:var(--ink);display:block;margin-bottom:4px}
.content-panel{padding:clamp(16px,2.4vw,24px);min-width:0}.content-panel h2+p{margin:8px 0 14px}.detail-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(250px,1fr);gap:16px;align-items:start}.stack{display:grid;gap:15px;align-content:start}.anchors{display:flex;flex-wrap:wrap;gap:6px 20px;margin:0 0 17px;padding:9px 0;border-bottom:1px solid var(--line);color:var(--blue);font-size:13px;font-weight:700}.anchors a:hover{text-decoration:underline}.anchors span{color:var(--muted)}section[id],aside[id]{scroll-margin-top:14px}.facts dl{margin:12px 0 18px}.facts h3{margin:14px 0 8px}.facts p{font-size:13px}dt{font-size:11px;font-weight:700;letter-spacing:.035em;color:var(--muted);margin-top:10px}dd{margin:3px 0 0;overflow-wrap:anywhere}.review,.timeline{border-top:1px solid var(--line);margin-top:14px;padding:14px 0 0}.review-head,.byline{display:flex;gap:8px;align-items:center;justify-content:space-between}.review-head time,.review small,.timeline small{color:var(--muted);font-size:12px}.review h3{margin-top:9px}.review h3 a{color:var(--blue)}.review h3 a:hover{text-decoration:underline}.review h3 .icon{width:15px;height:15px}.review p{margin-top:8px}.byline{justify-content:flex-start;margin-top:11px;font-size:12px;font-weight:700}.byline .avatar{width:24px;height:24px}.accordion-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;margin-bottom:12px}.accordion-row details[open]{flex:1 0 100%}summary{list-style:none}summary::-webkit-details-marker{display:none}.inset{margin-top:12px;padding:13px;background:#f6f8fc;border-radius:8px}.file-row{display:flex;align-items:center;justify-content:flex-start;gap:8px;border-bottom:1px solid var(--line);padding:10px 0;color:var(--blue);overflow-wrap:anywhere}.file-row:hover{text-decoration:underline}.file-row .chip{margin-left:auto}.timeline small{display:block;margin-top:4px}.callout{background:#f4f6fb;border-radius:7px;padding:11px;font-size:12px;color:var(--muted);margin-top:13px}
.form-panel{max-width:900px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid>*{min-width:0}label{display:grid;gap:5px;color:var(--ink);font-size:13px;font-weight:600}label small{color:var(--muted);font-weight:400}input,select,textarea{border:1px solid #cbd6e8;border-radius:7px;background:#fff;color:var(--ink);width:100%;padding:9px 10px;min-height:41px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#687791}input[type=checkbox]{width:16px;min-height:0;height:16px;accent-color:var(--blue)}.check{display:flex;align-items:center;white-space:nowrap}.flash{padding:11px 14px;background:#e3f4ed;color:#215e48;border:1px solid #bedfd1;border-radius:8px;margin-bottom:12px}.flash.error{background:#fff0f0;color:#8c2430;border-color:#f0c1c8}
.signed-out .workspace{max-width:none;padding:0}.login-layout{min-height:100vh;display:grid;grid-template-columns:1.02fr 1fr}.login-art{display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,7vw,115px);min-height:550px}.login-art .brand-word{position:absolute;left:clamp(30px,7vw,115px);top:36px}.login-art h1{font-size:clamp(85px,12vw,170px);position:relative}.login-art .art-circle{right:-180px;top:54%;width:520px}.login-art .art-square{right:50px;bottom:38px}.login-form{display:grid;place-items:center;padding:34px;background:#f7f9fd}.login-inner{width:min(100%,380px)}.login-inner h2{font-size:34px;margin-bottom:7px}.login-inner form{margin-top:24px}.login-inner .flash{margin-top:14px}.error-panel{margin:28px auto;max-width:580px}.error-panel h2,.error-panel p{margin:13px 0}
@media(max-width:1020px){.signed-in{grid-template-columns:190px minmax(0,1fr)}.sidebar{padding-left:12px;padding-right:12px}.detail-grid{grid-template-columns:minmax(0,1fr)}.facts{grid-row:1}.heading{align-items:flex-start;flex-wrap:wrap}.login-art h1{font-size:clamp(76px,12vw,140px)}}
@media(max-width:700px){.signed-in{display:block}.sidebar{position:static;height:auto;padding:12px 16px 9px;display:grid;grid-template-columns:1fr auto;gap:5px}.brand{padding:0}.brand-word{font-size:28px}.brand-sub,.nav-label{display:none}.sidebar nav{grid-column:1/-1;grid-row:2;display:flex;overflow:auto;gap:3px}.sidebar nav a{white-space:nowrap;padding:7px 9px;min-height:38px;font-size:12px;gap:5px}.sidebar nav .icon{width:15px;height:15px}.sidebar-bottom{grid-column:2;grid-row:1;margin:0;border:0;padding:0;display:flex;align-items:center;gap:6px}.user-link>span:not(.avatar){display:none}.sidebar-bottom .avatar{width:26px;height:26px}.logout{padding:3px 0 3px 5px}.top{height:48px;padding:0 15px;gap:9px}.top-title{font-size:21px}.top-meta{display:none}.top-divider{display:none}.workspace{padding:22px 14px 40px}.hero{min-height:255px}.hero p{font-size:14px}.art-circle{right:-200px}.art-square{right:25px;opacity:.6}.module-grid,.form-grid{grid-template-columns:1fr}.module p{min-height:0}.list-head>span{display:none}.login-layout{display:block}.login-art{padding:65px 24px 28px;min-height:210px}.login-art .brand-word{top:18px;left:24px}.login-art .eyebrow{display:none}.login-art h1{font-size:70px}.login-art p{font-size:14px;margin-top:5px}.login-art p br{display:none}.login-art .art-circle{top:5%;right:-290px;width:380px}.login-art .art-square{width:68px;right:20px;bottom:5px}.login-form{padding:30px 22px}.login-inner h2{font-size:27px}}
