:root{--ink:#1f2428;--muted:#697178;--paper:#f2f3f2;--white:#fbfbf8;--line:#cbd0d2;--green:#b6c96a;--accent:#56661f;--dark:#252a2e;--mono:'DM Mono',monospace;--sans:'Manrope',sans-serif}
*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:var(--sans)}body{margin:0}.portal-shell{min-height:100vh}.portal-header{border-bottom:1px solid var(--line);background:var(--white)}.portal-header__inner{max-width:1240px;margin:auto;min-height:88px;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.portal-brand{display:flex;align-items:center;gap:14px;color:var(--ink);text-decoration:none}.portal-brand img{width:50px;height:45px;object-fit:contain}.portal-brand strong{display:block;font-size:20px;letter-spacing:.12em}.portal-brand small{display:block;margin-top:4px;font:9px var(--mono);letter-spacing:.12em}.portal-header__tools{display:flex;align-items:center;gap:16px}.portal-role{font:11px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}button,.portal-button{font:600 14px var(--sans);border:0;cursor:pointer}.portal-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:15px 22px;text-decoration:none}.portal-button--dark{background:var(--dark);color:var(--white)}.portal-button--green{background:var(--green);color:var(--ink)}.portal-button--line{border:1px solid var(--line);background:transparent;color:var(--ink)}.portal-main{max-width:1240px;margin:auto;padding:64px 24px 100px}.portal-kicker{font:12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.portal-title{font-size:clamp(42px,7vw,88px);line-height:.9;letter-spacing:-.07em;margin:18px 0 20px}.portal-title em{color:var(--accent);font-style:normal}.portal-lead{max-width:650px;color:var(--muted);font-size:18px;line-height:1.5}..demo-note{border:1px solid #d7dfad;background:#eef2d5;padding:14px 18px;font-size:13px;line-height:1.4;margin:30px 0}.portal-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;margin-top:48px}.portal-card{grid-column:span 4;border:1px solid var(--line);background:var(--white);padding:24px;min-height:150px}.portal-card--wide{grid-column:span 8}.portal-card--full{grid-column:1/-1}.portal-card__label{font:11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.portal-card__value{display:block;margin-top:18px;font-size:42px;letter-spacing:-.06em}.portal-card__value small{font-size:18px;color:var(--muted)}.portal-card__text{color:var(--muted);line-height:1.45}.portal-section{margin-top:58px}.portal-section__head{display:flex;align-items:end;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:16px}.portal-section h2{margin:0;font-size:34px;letter-spacing:-.06em}.portal-list{display:grid;gap:10px;margin-top:16px}.portal-row{display:grid;grid-template-columns:1.2fr .9fr .8fr .8fr auto;gap:18px;align-items:center;border:1px solid var(--line);background:var(--white);padding:18px}.portal-row strong{font-size:16px}.portal-row span{font-size:13px;color:var(--muted)}.portal-row__status{font:10px var(--mono)!important;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)!important}.portal-actions{display:flex;gap:8px;flex-wrap:wrap}.portal-actions button{padding:10px 12px}.portal-actions button:first-child{background:var(--green);color:var(--ink)}.portal-actions button:last-child{background:transparent;border:1px solid var(--line);color:var(--muted)}.portal-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.portal-stage{position:relative;padding:20px 16px 24px;border-right:1px solid var(--line)}.portal-stage:last-child{border-right:0}.portal-stage:before{content:"";display:block;width:13px;height:13px;border:2px solid var(--line);border-radius:50%;margin-bottom:24px;background:var(--paper)}.portal-stage.is-done:before,.portal-stage.is-current:before{border-color:var(--accent);background:var(--green)}.portal-stage__num{font:11px var(--mono);color:var(--accent)}.portal-stage strong{display:block;margin-top:8px}.portal-stage small{display:block;margin-top:8px;color:var(--muted)}.portal-form{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:20px}.portal-form label{display:grid;gap:8px;font:11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.portal-form input,.portal-form select,.portal-form textarea{width:100%;border:1px solid var(--line);background:var(--white);padding:13px;font:14px var(--sans);color:var(--ink)}.portal-form textarea{min-height:100px;resize:vertical}.portal-form .full{grid-column:1/-1}.portal-auth{max-width:660px;margin:70px auto}.portal-auth__box{border:1px solid var(--line);background:var(--white);padding:clamp(24px,5vw,58px)}.portal-auth h1{font-size:clamp(42px,6vw,72px);line-height:.9;letter-spacing:-.07em;margin:18px 0}.portal-auth p{color:var(--muted);line-height:1.5}.portal-auth form{display:grid;gap:14px;margin-top:30px}.portal-auth label{font:11px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.portal-auth input,.portal-auth select{display:block;width:100%;margin-top:8px;padding:15px;border:1px solid var(--line);background:var(--paper);font:15px var(--sans)}.portal-auth .portal-button{width:100%;margin-top:10px}.portal-footer{max-width:1240px;margin:auto;padding:25px 24px;border-top:1px solid var(--line);font:11px var(--mono);color:var(--muted);display:flex;justify-content:space-between;gap:16px}.hidden{display:none!important}.toast{position:fixed;right:24px;bottom:24px;background:var(--dark);color:var(--white);padding:15px 18px;font-size:14px;z-index:10}.toast strong{color:var(--green)}
@media(max-width:800px){.portal-header__inner{align-items:flex-start}.portal-role{display:none}.portal-main{padding-top:40px}.portal-card,.portal-card--wide{grid-column:1/-1}.portal-row{grid-template-columns:1fr 1fr}.portal-row .portal-actions{grid-column:1/-1}.portal-timeline{grid-template-columns:1fr 1fr}.portal-stage:nth-child(2){border-right:0}.portal-form{grid-template-columns:1fr}.portal-form .full{grid-column:auto}.portal-footer{display:grid}}
