:root{color-scheme:light;--navy:#0c1937;--blue:#284fba;--paper:#f5f7fb;--ink:#182743;--muted:#66748c;--line:#dce3ef;--soft-blue:#edf2ff;--green:#257354}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}button,input{font:inherit}[hidden]{display:none!important}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid #90b2ff;outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}p{line-height:1.65}
.masterpro-brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none;font-weight:850;font-size:17px;letter-spacing:.12em;line-height:1.2;flex-shrink:0}.masterpro-brand small{display:block;font-size:8px;letter-spacing:.17em;font-weight:600;margin-top:7px;color:var(--muted)}.brand-symbol{display:grid;place-items:center;width:43px;height:43px;border:1px solid #a7b7d4;border-radius:12px;color:var(--blue)}.brand-symbol svg{width:30px;height:30px;stroke-width:1.8}.brand-light{color:white}.brand-light small{color:#b2c0dd}.brand-light .brand-symbol{border-color:#637aa6;color:#bfd0ff}
.public-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100svh}.welcome-panel{background:var(--navy);color:white;padding:46px clamp(32px,5.6vw,84px);display:flex;flex-direction:column;justify-content:space-between}.welcome-copy{max-width:520px;padding:62px 0 44px}.overline{font-size:10px;letter-spacing:.2em;font-weight:800;margin:0 0 22px;color:#6784c9}.welcome-panel .overline{color:#91adf0}.welcome-copy h1{font-size:clamp(36px,3.7vw,60px);font-weight:700;line-height:1.13;letter-spacing:-.055em;margin:0 0 25px}.welcome-copy h1 span{color:#a9c1ff}.welcome-description{font-size:15px;line-height:1.75;color:#bdcbe5;max-width:390px;margin:0 0 36px}.featured-solution{padding:25px;border:1px solid #3a4e75;border-radius:18px;background:#142442;max-width:430px}.featured-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.solution-glyph{display:grid;place-items:center;width:50px;height:50px;border:1px solid #496393;border-radius:14px;color:#b8ceff;background:#203556;flex-shrink:0}.solution-glyph svg{width:31px;height:31px}.subtle-tag{font-size:8px;font-weight:700;letter-spacing:.12em;color:#a5b8dd}.featured-solution h2{font-size:23px;letter-spacing:-.025em;margin:0 0 10px}.featured-solution p{font-size:13px;line-height:1.75;color:#b8c7e2;margin:0}.criterion-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.criterion-list span{font-size:10px;line-height:1.3;border:1px solid #3e5681;border-radius:6px;padding:6px 8px;color:#ccdaf7}.welcome-footer{font-size:10px;letter-spacing:.05em;color:#91a6cd;margin:0}.welcome-footer span{margin:0 7px;color:#536c9b}
.sign-in-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:52px 32px 28px;position:relative}.sign-in-card{width:min(100%,400px);padding:50px 0 80px}.access-label{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.16em;font-weight:800;color:#5574b4}.access-label>span{width:6px;height:6px;background:#5d7fd2;border-radius:50%}.sign-in-card h2{font-size:clamp(30px,3vw,40px);line-height:1.2;letter-spacing:-.05em;margin:22px 0 15px}.form-intro{font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 34px}.sign-in-card label{display:block;font-size:12px;font-weight:750;margin:22px 0 9px}.sign-in-card input{display:block;width:100%;background:white;border:1px solid #cbd5e5;border-radius:10px;color:var(--ink);padding:15px 16px;min-height:52px;font-size:14px}.sign-in-card input::placeholder{color:#9aa5b7}.sign-in-card input:focus{outline:3px solid #d4e0ff;border-color:#6687d8}.password-field{position:relative}.password-field input{padding-right:54px}.password-toggle{position:absolute;right:5px;top:5px;width:42px;height:42px;padding:11px;border:0;background:transparent;color:#7a8ca8;border-radius:7px}.password-toggle:hover{background:#f1f4fa}.password-toggle svg{width:20px;height:20px;display:block}.primary-button{display:flex;justify-content:space-between;align-items:center;gap:15px;width:100%;padding:17px 19px;min-height:54px;margin-top:27px;color:white;background:var(--blue);border:1px solid var(--blue);border-radius:10px;font-size:14px;font-weight:750;text-decoration:none;transition:background .16s}.primary-button:hover{background:#1d3f9e}.primary-button>span{font-size:21px;font-weight:400}.form-status{font-size:12px;color:#ac3549;min-height:22px;margin:13px 0 18px;overflow-wrap:anywhere}.form-status[data-state=loading]{color:var(--muted)}.recovery-link{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:24px;font-size:12px;line-height:1.6;color:#59719e;text-decoration:none}.recovery-link:hover{text-decoration:underline;text-underline-offset:4px}.account-note{display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px;color:#8c98ab;margin-top:31px}.account-note svg{width:15px;height:15px;flex-shrink:0}.sign-in-footer{font-size:10px;color:#8592a7;display:flex;justify-content:space-between;gap:20px;width:min(100%,400px);margin:0;position:absolute;bottom:25px}
.portal-shell{width:min(1120px,calc(100% - 64px));margin-inline:auto}.portal-header{background:white;border-bottom:1px solid var(--line)}.portal-header-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:96px}.portal-header .masterpro-brand small{font-size:8px}.account-actions{display:flex;align-items:center;gap:15px}.avatar{display:grid;place-items:center;width:38px;height:38px;background:#edf1fa;color:#3e5b93;font-size:13px;font-weight:800;border-radius:50%;flex-shrink:0}.account-info{max-width:240px}.account-info strong{display:block;font-size:12px;font-weight:700}.account-info span{display:block;font-size:11px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}.quiet-button{padding:10px 14px;border:1px solid var(--line);border-radius:8px;color:#566887;background:white;font-size:12px;font-weight:650;min-height:40px;text-decoration:none;white-space:nowrap}.quiet-button:hover{background:#f2f5fb}.portal-main{padding-top:53px;padding-bottom:42px}.welcome-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:42px}.welcome-heading .overline{margin-bottom:15px}.welcome-heading h1{font-size:clamp(30px,3.5vw,44px);font-weight:700;line-height:1.16;letter-spacing:-.05em;margin:0 0 14px;overflow-wrap:anywhere}.welcome-heading p:last-child{font-size:14px;color:var(--muted);margin:0}.portal-badge{font-size:10px;letter-spacing:.11em;font-weight:700;background:white;border:1px solid var(--line);border-radius:30px;padding:10px 15px;color:#657796;white-space:nowrap}.section-heading{display:flex;align-items:center;gap:13px;margin-bottom:20px}.section-heading h2{font-size:18px;letter-spacing:-.025em;margin:0}.available-count{font-size:10px;font-weight:650;line-height:1.2;color:#5f759e;background:#e9eef9;padding:6px 9px;border-radius:20px}.solution-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:23px;align-items:stretch}.solution-card{background:white;border:1px solid #d4deee;box-shadow:0 8px 30px #142f6605;border-radius:18px;padding:31px;display:flex;flex-direction:column;min-width:0}.card-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:31px}.card-top .solution-glyph{background:#edf2ff;border-color:#dee6fa;color:#365eb6}.access-badge{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:700;background:#eaf6ef;border:1px solid #d6eddf;color:var(--green);border-radius:25px;padding:7px 10px}.access-badge:before{content:"";width:5px;height:5px;background:var(--green);border-radius:50%}.solution-card .overline{font-size:9px;letter-spacing:.14em;margin-bottom:11px}.solution-card h3{font-size:29px;line-height:1.2;letter-spacing:-.04em;margin:0 0 15px}.card-description{font-size:13px;color:var(--muted);line-height:1.8;margin:0}.solution-card .criterion-list{margin-top:22px;margin-bottom:26px}.solution-card .criterion-list span{border-color:#e1e7f1;background:#f8faff;color:#6a7fa4}.card-footer{margin-top:auto;border-top:1px solid #e8edf5;padding-top:20px}.card-footer .primary-button{margin-top:0}.future-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:40px;border:1px dashed #c7d3e8;border-radius:18px;background:#f0f3f9;min-width:0}.future-icon{display:grid;place-items:center;width:45px;height:45px;border:1px solid #ced8e9;border-radius:12px;background:#f7f9fc;color:#8ca0c4;margin-bottom:27px}.future-icon svg{width:23px;height:23px}.future-card .overline{font-size:9px;color:#7d90b0;letter-spacing:.12em;margin-bottom:14px}.future-card h3{font-size:25px;line-height:1.3;letter-spacing:-.035em;color:#647899;max-width:270px;margin:0 0 14px;font-weight:600}.future-card p:last-child{font-size:13px;line-height:1.85;color:#8594ac;max-width:290px;margin:0}.admin-shortcut{margin-top:26px;border:1px solid var(--line);border-radius:12px;padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:20px;background:white}.admin-shortcut strong{display:block;font-size:12px}.admin-shortcut p{font-size:12px;color:var(--muted);margin:4px 0 0}.admin-shortcut a{color:var(--blue);font-size:12px;font-weight:750;text-underline-offset:4px;white-space:nowrap}.portal-footer{border-top:1px solid var(--line);padding-top:24px;margin-top:42px;display:flex;justify-content:space-between;gap:16px;color:#91a0b7;font-size:11px}.portal-footer p{margin:0}.empty-state{padding:35px;border:1px solid var(--line);border-radius:16px;background:white;margin-bottom:23px}.empty-state h3{font-size:20px;letter-spacing:-.025em;margin:0 0 12px}.empty-state p{font-size:13px;color:var(--muted);max-width:640px;margin:0;overflow-wrap:anywhere}.boot-state{padding:70px 0;text-align:center}.boot-state p{font-size:14px;color:var(--muted)}.boot-state button{margin-top:10px}
@media(min-width:1500px){.welcome-panel{padding-left:max(80px,calc((100vw - 1300px)/2))}.sign-in-card{width:420px}.welcome-copy{padding-block:80px}}
@media(max-width:900px){.welcome-panel{padding:32px}.welcome-copy{padding:60px 0 38px}.welcome-copy h1{font-size:39px}.featured-solution{padding:21px}.subtle-tag{font-size:7px}.sign-in-panel{padding-inline:28px}.sign-in-card{padding-block:45px 75px}.portal-shell{width:calc(100% - 44px)}.account-info{max-width:190px}.solution-card{padding:24px}.future-card{padding:28px}.portal-main{padding-top:40px}}
@media(max-width:700px){.public-layout{display:block}.welcome-panel{padding:25px 25px 30px}.masterpro-brand{font-size:15px;gap:11px}.brand-symbol{width:38px;height:38px}.masterpro-brand small{font-size:7px;letter-spacing:.12em}.welcome-copy{padding:35px 0 0;max-width:none}.welcome-copy .overline{font-size:9px;margin-bottom:16px}.welcome-copy h1{font-size:35px;margin-bottom:16px;max-width:390px}.welcome-description{font-size:13px;max-width:430px;margin:0}.featured-solution,.welcome-footer{display:none}.sign-in-panel{padding:35px 25px 25px}.sign-in-card{width:100%;max-width:440px;padding:0 0 35px}.sign-in-card h2{font-size:31px;margin-top:18px}.form-intro{font-size:13px;margin-bottom:26px}.sign-in-footer{position:static;max-width:440px;font-size:9px}.account-note{margin-top:26px}.portal-shell{width:calc(100% - 36px)}.portal-header-inner{min-height:84px;gap:12px}.portal-header .masterpro-brand small{font-size:7px}.account-info{display:none}.account-actions{gap:9px}.avatar{width:32px;height:32px;font-size:11px}.quiet-button{padding:9px 11px;min-height:38px}.portal-header .masterpro-brand{font-size:13px;gap:8px}.portal-header .brand-symbol{width:33px;height:33px;border-radius:9px}.portal-header .brand-symbol svg{width:25px;height:25px}.welcome-heading{margin-bottom:31px}.welcome-heading h1{font-size:34px}.welcome-heading p:last-child{font-size:13px;max-width:290px}.portal-badge{display:none}.portal-main{padding-top:32px}.solution-grid{grid-template-columns:minmax(0,1fr);gap:18px}.solution-card{padding:25px}.solution-card h3{font-size:28px}.card-top{margin-bottom:25px}.future-card{padding:27px;display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:17px}.future-icon{width:40px;height:40px;grid-row:1/4;margin:0;align-self:start}.future-card .overline,.future-card h3,.future-card p:last-child{grid-column:2}.future-card h3{font-size:20px;max-width:none;margin-bottom:9px}.future-card p:last-child{font-size:12px;max-width:none}.future-card .overline{margin-bottom:10px}.admin-shortcut{padding:17px;align-items:flex-start;flex-direction:column;gap:12px}.portal-footer{margin-top:30px;padding-top:20px;flex-direction:column;gap:5px;font-size:10px}.empty-state{padding:25px}.empty-state h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
