:root{--green:#5f9d40;--dark:#17211a;--muted:#69736b;--bg:#f6f7f5;--line:#dfe5df;--warn:#f7d774}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--dark)}header{display:flex;justify-content:space-between;align-items:center;padding:18px 5%;background:white;border-bottom:1px solid var(--line)}.brand{font-size:25px;font-weight:800;letter-spacing:1px}.tag{font-size:11px;color:var(--muted);margin-top:3px}nav a{margin-left:18px;color:var(--dark);text-decoration:none;font-weight:700}main{max-width:1180px;margin:32px auto;padding:0 22px}footer{text-align:center;color:var(--muted);padding:40px 10px}.hero{display:flex;justify-content:space-between;align-items:center;gap:20px}.hero.small{margin-top:20px}.pill{padding:9px 13px;background:#e8f3e1;border-radius:999px;font-size:13px}.pill.warn{background:#fff0be}.stats,.grid,.formgrid,.phasecards{display:grid;gap:16px}.stats{grid-template-columns:repeat(3,1fr);margin:24px 0}.grid{grid-template-columns:1fr 1fr;margin:20px 0}.formgrid{grid-template-columns:repeat(2,1fr)}.phasecards{grid-template-columns:repeat(4,1fr)}.card,.mini,section{background:white;border:1px solid var(--line);border-radius:12px;padding:18px}.card b{display:block;font-size:28px}.card span,.mini span{display:block;color:var(--muted);margin-top:6px}.client{display:flex;justify-content:space-between;align-items:center;background:white;border:1px solid var(--line);padding:16px;margin:9px 0;border-radius:10px;color:var(--dark);text-decoration:none}.client small{display:block;color:var(--muted);margin-top:4px}label{display:block;font-weight:700;font-size:13px;margin:12px 0}input,select,textarea{width:100%;margin-top:6px;padding:10px;border:1px solid #bcc7be;border-radius:7px;background:white;font:inherit}button,.button{display:inline-block;background:var(--green);color:white;border:0;border-radius:7px;padding:11px 16px;text-decoration:none;font-weight:800;cursor:pointer}dl{display:grid;grid-template-columns:150px 1fr;gap:8px 14px}dt{font-weight:800}dd{margin:0}.alert{background:#fff5d8;border:1px solid #eed388;border-radius:8px;padding:12px;margin:10px 0}.muted{color:var(--muted)}.history{background:white;border:1px solid var(--line);padding:10px 12px;margin:7px 0;border-radius:8px}table{width:100%;border-collapse:collapse;background:white;margin-bottom:22px;font-size:13px}th,td{border:1px solid #cbd3cb;padding:7px;vertical-align:top}th{background:#dcebd3}.intake{max-width:900px;background:white;padding:22px;border:1px solid var(--line);border-radius:12px}@media(max-width:800px){.grid,.stats,.formgrid,.phasecards{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column}nav a{margin-left:8px}table{font-size:11px}}.success{background:#e7f4df;border:1px solid #79a65a;border-radius:10px;padding:14px 16px;margin:14px 0}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.secondary{background:#555}.secondary:hover{background:#333}
.source-status{display:inline-block;margin-top:7px;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}.source-status.approved{background:#e7f4df;color:#315e20}.source-status.draft{background:#fff0be;color:#6b5714}.history form{margin:0}.history button{padding:7px 10px;font-size:12px}
.export-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.export-actions .button{white-space:nowrap}
.nav-form{display:inline}.nav-button{background:none;color:var(--dark);padding:0;margin-left:18px;border:0;border-radius:0;font:inherit;font-weight:700}.login-wrap{max-width:460px;margin:70px auto}.login-card{padding:28px}.login-card h1{margin-top:28px}.narrow{max-width:640px}.status{display:inline-block;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;text-transform:uppercase}.status.planned{background:#eef0ee}.status.active{background:#e7f4df;color:#315e20}.status.completed{background:#e9eef7;color:#304c75}.status.superseded{background:#f2e9e9;color:#7c3b3b}.history-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}.history-actions form{margin:0}.history-actions button{padding:6px 9px;font-size:12px}.review-list{margin:8px 0 16px;padding-left:22px}@media(max-width:800px){.nav-form{display:block;margin-top:10px}.nav-button{margin-left:8px}}

/* v0.5.1 MODELFIT branding */
.brand-lockup{display:flex;align-items:center;gap:12px;color:var(--dark);text-decoration:none;min-width:0}
.brand-logo{width:58px;height:58px;object-fit:cover;border-radius:50%;flex:0 0 auto;border:1px solid #e1e5e1;background:#fff}
.brand-copy{display:flex;flex-direction:column;min-width:0}
.brand-copy .brand{line-height:1}
.brand-copy .tag{white-space:nowrap}
footer{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap}
.footer-logo{width:34px;height:34px;object-fit:cover;border-radius:50%;border:1px solid #e1e5e1;background:#fff}
.login-page{background:linear-gradient(180deg,#f7f8f6 0%,#f1f3f0 100%)}
.login-wrap{max-width:480px;margin:46px auto;padding:0 18px}
.login-card{text-align:center;padding:30px 34px 34px}
.login-logo{display:block;width:174px;height:174px;object-fit:cover;border-radius:50%;margin:0 auto 16px;border:1px solid #e1e5e1;background:#fff}
.login-brand{font-size:29px;font-weight:900;letter-spacing:1.2px;line-height:1}
.login-tag{margin-top:6px}
.login-product{margin-top:10px;font-size:14px;font-weight:800;color:var(--green);letter-spacing:.3px}
.login-card h1{margin-top:25px;margin-bottom:7px}
.login-card form{text-align:left;margin-top:18px}
.login-card form button{width:100%;margin-top:4px}
@media(max-width:800px){header{align-items:flex-start;gap:14px;flex-direction:column}.brand-logo{width:52px;height:52px}nav{display:flex;gap:10px;flex-wrap:wrap;align-items:center}nav a{margin-left:0}.nav-button{margin-left:0}.brand-copy .tag{white-space:normal}.login-logo{width:150px;height:150px}}
/* v0.5.2 private account management */
.account-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.account-controls form{display:flex;gap:6px;align-items:center;margin:0}.tiny{padding:7px 9px;font-size:11px}.inline-password{width:190px;margin:0;padding:7px;font-size:12px}

/* v0.5.3 password visibility controls */
.password-field{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:6px;margin-top:6px}
.password-field input{margin-top:0;min-width:0}
.password-toggle{margin:0;padding:0 12px;min-width:58px;background:#eef2ec;color:var(--dark);border:1px solid #bcc7be;font-size:12px;font-weight:800}
.password-toggle:hover{background:#e0e8dc}
.password-toggle:focus{outline:2px solid #315e20;outline-offset:2px}
.password-field-inline{display:inline-grid;grid-template-columns:190px auto;margin:0;vertical-align:middle}
.password-field-inline .inline-password{width:190px}
@media(max-width:800px){.password-field-inline{grid-template-columns:minmax(0,1fr) auto;width:100%}.password-field-inline .inline-password{width:100%}}

/* v0.5.8 private workspace + identity perimeter */
.access-card h1{margin-top:18px}
.access-badge{display:inline-block;margin-top:16px;padding:6px 10px;border-radius:999px;background:#eef2ec;border:1px solid #cfd8cb;color:#33432f;font-size:11px;font-weight:900;letter-spacing:.65px}
.access-help{font-size:12px;margin:18px 0 0;line-height:1.45}
.lock-form{display:inline}.lock-button{background:none;color:#7a3d3d;padding:0;margin-left:18px;border:0;border-radius:0;font:inherit;font-weight:700}
.lock-button:hover{text-decoration:underline;background:none}
@media(max-width:800px){.lock-form{display:block;margin-top:10px}.lock-button{margin-left:0}}
