@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Manrope:wght@400;500;600;700;800&display=swap');
@import url('responsive.css');
:root{--ink:#20302a;--muted:#68736d;--paper:#f3f0e8;--line:#c9c9b9;--rust:#b75f46;--dark:#1d2925;--serif:Fraunces,Georgia,serif;--sans:Manrope,Arial,sans-serif;--mono:'DM Mono',Consolas,monospace}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px var(--sans)}a{color:inherit;text-decoration:none}.portal-head{height:76px;padding:0 6vw;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:22px}.logo{width:58px;height:58px;display:flex;align-items:center;justify-content:center;margin-right:18px}.logo img{display:block;width:58px;height:58px;object-fit:contain}.portal-head b{display:block;font:600 10px var(--mono);letter-spacing:.14em}.portal-head small{display:block;margin-top:6px;color:var(--muted);font-size:11px}.portal-head nav{margin-left:auto;display:flex;gap:24px;font:10px var(--mono);text-transform:uppercase;letter-spacing:.1em}.portal-head nav a{padding:28px 0;color:var(--muted);border-bottom:2px solid transparent}.portal-head nav a.active,.portal-head nav a:hover{color:var(--rust);border-color:var(--rust)}.portal-main{max-width:1120px;margin:auto;padding:76px 36px 120px}.page-intro{max-width:710px;margin-bottom:52px}.kicker,.field>span,.stat span,th,footer{font:10px var(--mono);letter-spacing:.12em;text-transform:uppercase}.kicker{color:var(--rust)}h1{font:600 clamp(52px,8vw,94px)/.9 var(--serif);letter-spacing:-.06em;margin:22px 0}h1 em{color:var(--rust);font-weight:400}.page-intro p{color:var(--muted);line-height:1.7;max-width:520px}.notice{padding:14px 17px;margin-bottom:24px;font-size:12px}.success{background:#dfe8d3;color:#344b2e}.error{background:#f4dcd3;color:#8b3d2e}.progress{margin-bottom:32px}.progress>div:first-child{display:flex;justify-content:space-between;margin-bottom:9px;color:var(--muted);font:10px var(--mono);text-transform:uppercase;letter-spacing:.08em}.progress strong{color:var(--rust)}.progress-track{height:5px;background:#deddd1;overflow:hidden}.progress-track i{display:block;height:100%;width:14%;background:var(--rust);transition:width .3s}.form-section{border:0;border-top:1px solid var(--line);padding:34px 0 0;margin:0;display:none}.form-section.visible{display:block;animation:rise .3s ease both}.form-section legend{width:100%;padding:0 0 28px;font:600 35px var(--serif)}.form-section legend span{font:10px var(--mono);color:var(--rust);margin-right:20px;vertical-align:middle}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px 26px}.field{display:flex;flex-direction:column;gap:9px}.field.wide{grid-column:1/-1}.field>span{color:var(--muted);line-height:1.4}.field input,.field select,.field textarea{width:100%;border:1px solid #bebeb0;background:#f8f6f0;color:var(--ink);font:14px var(--sans);padding:13px 14px;border-radius:0;outline:none}.field textarea{resize:vertical;line-height:1.55}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--rust);box-shadow:0 0 0 2px rgba(183,95,70,.12)}.section-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:42px}.button{border:1px solid var(--ink);background:var(--ink);color:#fff;padding:14px 18px;font:10px var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.button span{font-size:16px;margin-left:20px}.button.secondary{background:transparent;color:var(--muted);border-color:var(--line);margin-right:auto}.button:hover{background:var(--rust);border-color:var(--rust)}.dashboard{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:36px}.stat{background:var(--dark);color:#fff;padding:24px}.stat b{display:block;font:600 46px var(--serif);color:#e0b37a}.stat span{color:#b8c0b5;font-size:9px}.table-wrap{overflow:auto;border-top:1px solid var(--line)}table{width:100%;border-collapse:collapse;font-size:12px}th,td{text-align:left;padding:16px 12px;border-bottom:1px solid var(--line);white-space:nowrap}th{color:var(--muted);font-size:9px}.status{font:9px var(--mono);padding:5px 7px;background:#dfe8d3;color:#405a35}.go-with-revision{background:#f4e7bf;color:#765d22}.no-go{background:#f4dcd3;color:#8b3d2e}.empty{color:var(--muted);text-align:center;padding:35px}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:24px 6vw;color:var(--muted);font-size:9px}@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:700px){.portal-head{height:auto;padding:18px 22px;flex-wrap:wrap;gap:12px}.portal-head nav{width:100%;margin:0;gap:18px}.portal-head nav a{padding:10px 0}.portal-main{padding:55px 22px 85px}.field-grid,.dashboard{grid-template-columns:1fr}.field.wide{grid-column:auto}.form-section legend{font-size:29px}.section-actions{margin-top:30px}footer{display:block;padding:22px}footer span{display:block;margin-bottom:9px}}
@media(max-width:700px){.portal-head{height:auto;padding:18px 22px;flex-wrap:wrap;gap:12px}.portal-head nav{width:100%;margin:0;gap:18px}.portal-head nav a{padding:10px 0}.portal-main{padding:55px 22px 85px}.field-grid,.dashboard{grid-template-columns:1fr}.field.wide{grid-column:auto}.form-section legend{font-size:29px}.section-actions{margin-top:30px}footer{display:block;padding:22px}footer span{display:block;margin-bottom:9px}}.login-main{min-height:calc(100vh - 177px);display:flex;align-items:center;justify-content:center}.login-card{width:min(100%,480px);border-top:1px solid var(--line);padding-top:30px}.login-card h1{font-size:clamp(46px,7vw,72px)}.login-card p{color:var(--muted);line-height:1.7;margin-bottom:30px}.login-card form{display:grid;gap:20px}.login-card .button{justify-self:start;margin-top:12px}
@media(max-width:700px){.portal-head{height:auto;padding:18px 22px;flex-wrap:wrap;gap:12px}.portal-head nav{width:100%;margin:0;gap:18px}.portal-head nav a{padding:10px 0}.portal-main{padding:55px 22px 85px}.field-grid,.dashboard{grid-template-columns:1fr}.field.wide{grid-column:auto}.form-section legend{font-size:29px}.section-actions{margin-top:30px}footer{display:block;padding:22px}footer span{display:block;margin-bottom:9px}}.login-main{min-height:calc(100vh - 177px);display:flex;align-items:center;justify-content:center}.login-card{width:min(100%,480px);border-top:1px solid var(--line);padding-top:30px}.login-card h1{font-size:clamp(46px,7vw,72px)}.login-card p{color:var(--muted);line-height:1.7;margin-bottom:30px}.login-card form{display:grid;gap:20px}.login-card .button{justify-self:start;margin-top:12px}.auth-switch{margin:0!important;font-size:12px}.auth-switch a{color:var(--rust);font-weight:700}.score-summary{display:flex;align-items:baseline;gap:15px;margin:0 0 25px;padding:16px 18px;background:var(--dark);color:#fff}.score-summary span,.score-summary small{font:10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#b8c0b5}.score-summary strong{font:600 34px var(--serif);color:#e0b37a}.score-summary small{margin-left:auto;font-size:9px}
.login-page .login-card{width:min(100%,560px);padding:58px 56px 48px}
/* Login reference layout */.login-page{min-height:100vh;background:#dfe8eb url('../images/BGJT.png') center/cover fixed no-repeat;color:#182336}.login-page:before{content:'';position:fixed;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,.02) 62%,rgba(18,48,62,.08));pointer-events:none}.login-scene{min-height:100vh;display:flex;align-items:center;padding:clamp(28px,7vh,84px) 11vw;position:relative}.login-page .login-card{width:min(100%,790px);padding:72px 80px 62px;border:1px solid rgba(255,255,255,.72);border-radius:20px;background:rgba(255,255,255,.78);box-shadow:0 24px 70px rgba(19,38,54,.15);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.login-card-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.login-mark{width:38px;height:38px;border:2px solid #2e8794;border-radius:50%;display:grid;place-items:center;color:#287887;font:700 14px var(--serif);background:rgba(255,255,255,.45)}.login-kicker{font:600 10px var(--mono);letter-spacing:.12em;color:#287887}.login-page .login-card h1{font:700 clamp(36px,4vw,58px)/1.05 var(--sans);letter-spacing:-.04em;color:#172335;margin:0 0 10px}.login-subtitle{font:400 25px/1.3 var(--sans)!important;color:#263448!important;margin:0 0 38px!important}.login-page .field{gap:0;margin-bottom:21px}.login-page .field>span{position:absolute;overflow:hidden;width:1px;height:1px;clip:rect(0 0 0 0)}.login-page .field input{height:66px;padding:0 25px;border:1px solid rgba(94,117,132,.54);border-radius:12px;background:rgba(255,255,255,.7);font:400 18px var(--sans);color:#1f2d40}.login-page .field input::placeholder{color:#6f7b87;opacity:1}.login-page .field input:focus{border-color:#2d8793;box-shadow:0 0 0 3px rgba(45,135,147,.16)}.remember{display:flex;align-items:center;gap:12px;margin:4px 0 28px;font-size:17px;color:#192336}.remember input{width:20px;height:20px;accent-color:#318697}.login-page .button{width:100%;height:66px;border:0;border-radius:12px;background:#3b8f9b;color:white;font:600 20px var(--sans);letter-spacing:0;text-transform:none;box-shadow:0 8px 18px rgba(38,112,124,.2);margin:6px 0 24px}.login-page .button:hover{background:#267985;transform:translateY(-1px)}.login-page .button span{float:right;font-size:25px;margin:0}.auth-link,.login-page .auth-switch{text-align:center;margin:0!important;font-size:16px!important}.auth-link a,.login-page .auth-switch a{color:#315c69;text-decoration:underline;font-weight:600}.login-page .notice{border-radius:10px;margin:-10px 0 20px}.login-page footer{display:none}@media(max-width:700px){.login-scene{padding:22px 16px}.login-page .login-card{padding:40px 24px 34px;border-radius:16px}.login-page .login-card h1{font-size:34px}.login-subtitle{font-size:20px!important;margin-bottom:28px!important}.login-page .field input,.login-page .button{height:58px}.login-page .field input{font-size:16px}}