:root{--navy:#1e293b;--dark:#0f172a;--orange:#ff6600;--bg:#f4f6f8;--line:#e3e7ec;--muted:#64748b;--green:#137350}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#182230;background:var(--bg)}a{text-decoration:none;color:inherit}button,input{font:inherit}.portal-top{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1180px)/2));position:sticky;top:0;z-index:20}.portal-brand{display:flex;align-items:center;gap:11px}.portal-brand img{width:42px;height:42px;object-fit:contain}.portal-brand>div{display:grid}.portal-brand strong{font-size:13px;letter-spacing:.07em;color:var(--navy)}.portal-brand small,.portal-login-brand span{font-size:9px;letter-spacing:.23em;font-weight:900;color:var(--orange)}.portal-user{display:flex;align-items:center;gap:16px}.portal-user>div{display:grid;text-align:right}.portal-user strong{font-size:12px}.portal-user small{font-size:10px;color:var(--muted)}.portal-user button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 10px;cursor:pointer;font-size:11px;font-weight:800;color:var(--navy)}.portal-main{max-width:1180px;margin:0 auto;padding:38px 24px 60px}.portal-footer{text-align:center;padding:24px;color:#94a3b8;font-size:10px}.portal-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px}.portal-hero h1{margin:5px 0;font-size:32px;letter-spacing:-.04em;color:var(--dark)}.portal-hero p{margin:0;color:var(--muted)}.portal-kicker,.portal-panel-head span,.portal-progress-head span{font-size:10px;letter-spacing:.17em;font-weight:900;color:var(--orange)}.portal-balance{background:var(--navy);color:#fff;border-radius:14px;padding:17px 22px;min-width:180px}.portal-balance span{display:block;font-size:10px;color:#cbd5e1;text-transform:uppercase;letter-spacing:.1em}.portal-balance strong{display:block;font-size:26px;margin-top:5px}.portal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.portal-stats>div{background:#fff;border:1px solid var(--line);border-radius:13px;padding:18px}.portal-stats span{font-size:11px;color:var(--muted);font-weight:700}.portal-stats strong{display:block;font-size:26px;color:var(--navy);margin-top:6px}.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.portal-panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px;margin-bottom:20px;box-shadow:0 8px 24px rgba(15,23,42,.035)}.portal-panel-head{margin-bottom:15px}.portal-panel-head h2{font-size:18px;color:var(--navy);margin:4px 0}.portal-empty{padding:28px;text-align:center;color:#94a3b8;font-size:12px}.portal-project{display:grid;grid-template-columns:1fr auto;gap:6px;padding:14px 0;border-top:1px solid #edf0f3}.portal-project:first-of-type{border-top:0}.portal-project>div{display:grid;gap:3px}.portal-project small{color:var(--muted);font-size:11px}.portal-project>b{font-size:12px;color:var(--orange)}.portal-project>span{grid-column:1/-1;background:#edf0f3;height:6px;border-radius:99px;overflow:hidden}.portal-project>span i,.portal-progress i{display:block;height:100%;background:var(--orange);border-radius:inherit}.portal-table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;text-transform:uppercase;letter-spacing:.08em;font-size:9px;color:var(--muted);padding:10px;border-bottom:1px solid var(--line)}td{padding:12px 10px;border-bottom:1px solid #edf0f3}td a{display:grid;gap:3px}td small{color:var(--muted)}.portal-pill{padding:5px 8px;border-radius:99px;background:#eef2f6;color:#475569;font-size:9px;font-weight:900}.portal-doc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.portal-doc-grid>a{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;border:1px solid #edf0f3;border-radius:10px;padding:12px}.portal-doc-grid b{width:34px;height:34px;border-radius:8px;background:#fff2e9;color:var(--orange);display:grid;place-items:center}.portal-doc-grid div{display:grid;gap:3px}.portal-doc-grid small{color:var(--muted);font-size:10px}.portal-doc-grid>a>span{font-size:10px;color:var(--orange);font-weight:900}.portal-primary{border:0;background:var(--orange);color:#fff;border-radius:9px;padding:11px 15px;font-weight:900;cursor:pointer}.portal-link{display:inline-flex}.portal-back{margin-bottom:18px;font-size:11px;font-weight:800;color:var(--muted)}.portal-note{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.portal-note p{font-size:12px;color:var(--muted);line-height:1.6}.portal-progress-head>div:first-child{display:flex;justify-content:space-between}.portal-progress{height:8px;background:#edf0f3;border-radius:99px;overflow:hidden;margin:10px 0 22px}.portal-milestones{display:grid}.portal-milestones>div{display:grid;grid-template-columns:auto 1fr;gap:11px;align-items:center;padding:12px 0;border-top:1px solid #edf0f3}.portal-milestones>div:first-child{border-top:0}.portal-milestones>b{color:#94a3b8}.portal-milestones .done>b{color:var(--green)}.portal-milestones>div>div{display:grid;gap:3px}.portal-milestones small{font-size:10px;color:var(--muted)}.portal-flash{border-radius:9px;padding:11px 13px;margin-bottom:15px;font-size:12px}.portal-flash.error{background:#fff0f0;color:#9f2525;border:1px solid #ffd0d0}.portal-flash.success{background:#e9f8f1;color:#146b4b;border:1px solid #bdebd6}.portal-login-body{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(circle at 80% 20%,rgba(255,102,0,.17),transparent 28%),linear-gradient(135deg,#0b1220,#1e293b)}.portal-login-wrap{width:min(430px,100%)}.portal-login-brand{display:flex;flex-direction:column;align-items:center;margin-bottom:16px}.portal-login-brand img{width:230px;height:110px;object-fit:contain;background:#fff;border-radius:14px;padding:7px}.portal-login-brand span{margin-top:-12px}.portal-login-card,.portal-narrow{background:#fff;border-radius:17px;padding:30px;box-shadow:0 28px 80px rgba(0,0,0,.28)}.portal-login-card h1,.portal-narrow h1{margin:0 0 6px;color:var(--navy);font-size:27px}.portal-login-card>p,.portal-narrow>p{color:var(--muted);font-size:12px;line-height:1.55;margin:0 0 20px}.portal-login-card form,.portal-form{display:grid;gap:14px}.portal-login-card label,.portal-form label{display:grid;gap:6px;font-size:11px;font-weight:800;color:#475569}.portal-login-card input,.portal-form input{border:1px solid #d7dce3;border-radius:8px;padding:11px;outline:none}.portal-login-card input:focus,.portal-form input:focus{border-color:#ff9c5c;box-shadow:0 0 0 3px rgba(255,102,0,.1)}.portal-login-card button{border:0;background:var(--orange);color:#fff;border-radius:9px;padding:11px;font-weight:900;cursor:pointer}.portal-login-note{display:block;text-align:center;color:#94a3b8;margin-top:16px;line-height:1.5}.portal-narrow{max-width:560px;margin:60px auto}@media(max-width:760px){.portal-top{padding:0 16px}.portal-user>div{display:none}.portal-main{padding:26px 15px}.portal-hero{flex-direction:column}.portal-balance{width:100%}.portal-stats{grid-template-columns:1fr}.portal-grid{grid-template-columns:1fr}.portal-doc-grid{grid-template-columns:1fr}.portal-brand strong{font-size:11px}.portal-brand small{font-size:8px}}
