:root { --black:#111; --silver:#c7c9cc; --light:#f5f6f7; --line:#dedfe2; --text:#202124; --muted:#6b7078; }
* { box-sizing:border-box; }
body { margin:0; font-family:Inter,Arial,sans-serif; background:var(--light); color:var(--text); }
a { color:inherit; text-decoration:none; }
.topbar { background:var(--black); color:white; padding:18px 4vw; display:flex; justify-content:space-between; align-items:center; gap:20px; }
.brand { font-size:21px; font-weight:800; letter-spacing:.2px; }.brand span{color:var(--silver)} .brand.large{font-size:30px;color:var(--black)}
.org { font-size:12px; color:#bbb; margin-top:3px; }.topbar nav{display:flex;align-items:center;gap:18px;font-size:14px}.user{color:#bbb}
.container { width:min(1180px,92vw); margin:34px auto; }.page-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}h1{margin:0 0 8px;font-size:32px}h2{margin:0 0 7px}.muted{color:var(--muted)}
.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:20px}.stat{background:white;border:1px solid var(--line);border-radius:12px;padding:18px}.stat strong{display:block;font-size:28px}.stat span{color:var(--muted);font-size:13px}.stat.attention{border-color:#8c6b18}
.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;background:white;border:1px solid var(--line);padding:14px;border-radius:12px;margin-bottom:18px}input,select,button{font:inherit;padding:11px 12px;border-radius:8px;border:1px solid #c8cbd0}button{background:var(--black);color:white;border:none;font-weight:700;cursor:pointer}
.project-list{display:grid;gap:12px}.project-card{background:white;border:1px solid var(--line);border-radius:14px;padding:20px;display:grid;grid-template-columns:1.6fr 1fr;gap:25px;transition:.15s}.project-card:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(0,0,0,.07)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:var(--muted);font-weight:700}.project-main h2{font-size:20px}.project-meta{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.project-meta small{color:var(--muted)}
.badge{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:12px;font-weight:800}.owner-client{background:#fff3cd;color:#6f5400}.owner-crestone{background:#e8eef6;color:#254b75}.owner-insurance{background:#f1e9f7;color:#623d77}.owner-none{background:#e8f4eb;color:#2e6840}
.progress{height:7px;background:#eceef0;border-radius:100px;overflow:hidden;margin-top:15px}.progress span{display:block;height:100%;background:#30343a}.progress.large{height:10px;margin:20px 0}
.login-shell{min-height:78vh;display:grid;place-items:center}.login-card{width:min(460px,94vw);background:white;padding:34px;border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 40px rgba(0,0,0,.08)}.form-stack{display:grid;gap:15px}.form-stack label{display:grid;gap:7px;font-weight:700}.demo-box{margin-top:20px;padding:14px;background:#f1f2f3;border-radius:10px;font-size:13px;line-height:1.6}
.flash{padding:12px 15px;border-radius:9px;margin-bottom:16px}.flash.error{background:#fbe6e6;color:#7f2323}.flash.success{background:#e6f4ea;color:#276738}
.back{display:inline-block;margin-bottom:18px;color:var(--muted)}.detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.panel{background:white;border:1px solid var(--line);border-radius:14px;padding:24px}.detail-row{display:flex;justify-content:space-between;gap:25px;padding:14px 0;border-top:1px solid #ececef}.detail-row span{color:var(--muted)}.action-panel p{font-size:18px;line-height:1.45}.timeline{margin-top:18px}.timeline-item{border-top:1px solid #ececef;padding:16px 0}.timeline-item span{float:right;color:var(--muted);font-size:13px}.timeline-item p{margin-bottom:0}.narrow{max-width:720px}.empty{text-align:center;background:white;padding:35px;border:1px dashed #c8cbd0;border-radius:12px;color:var(--muted)}
@media(max-width:850px){.stats-grid{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:1fr}.project-card,.detail-grid{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.topbar nav{flex-wrap:wrap}.container{margin-top:22px}}
.workflow-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}textarea{font:inherit;padding:11px 12px;border-radius:8px;border:1px solid #c8cbd0;resize:vertical}.file-row,.alert-row{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-top:1px solid #ececef}.file-row span,.alert-row span{color:var(--muted);font-size:13px}.rep-form{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr auto auto;gap:10px;align-items:center}.rep-form label{white-space:nowrap}.rep-form label input{width:auto}@media(max-width:850px){.workflow-grid{grid-template-columns:1fr}.rep-form{grid-template-columns:1fr}.file-row,.alert-row{flex-direction:column;gap:4px}}

.complete-button{width:100%;margin:8px 0 16px;background:#276738}.sync-note{margin-top:18px;padding-top:14px;border-top:1px solid #ececef;color:var(--muted);font-size:13px}.sync-banner{margin-bottom:18px;border-left:5px solid #8c6b18}.admin-table{display:grid}.admin-row{display:grid;grid-template-columns:2fr 1fr .8fr .6fr auto;gap:14px;align-items:center;padding:13px 0;border-top:1px solid #ececef}.admin-row span{display:flex;flex-direction:column}.admin-row small{color:var(--muted);margin-top:3px}.admin-head{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-top:0}.small-button{display:inline-block;background:var(--black);color:white;padding:8px 12px;border-radius:7px;font-weight:700}.transition-row{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:11px 0;border-top:1px solid #ececef}.transition-row small{grid-column:1/-1;color:var(--muted)}.edit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.edit-grid label{display:grid;gap:7px;font-weight:700}.edit-grid .wide{grid-column:1/-1}.edit-grid fieldset{border:1px solid var(--line);border-radius:10px;padding:15px}.edit-grid .check{display:inline-flex;margin-right:20px;font-weight:400}.edit-grid .check input{width:auto}.filters button{display:none}@media(max-width:850px){.admin-row{grid-template-columns:1fr 1fr}.admin-head{display:none}.edit-grid{grid-template-columns:1fr}.edit-grid .wide{grid-column:auto}}

.version-badge{position:absolute;left:50%;transform:translateX(-50%);top:12px;background:#fff;color:#111;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700}.topbar{position:relative}.admin-link{font-weight:800;text-decoration:underline;text-underline-offset:4px}.user{opacity:.7;font-size:.9rem}.filters{grid-template-columns:minmax(260px,1.5fr) minmax(190px,.8fr) minmax(190px,.8fr)!important}

/* USER-MGMT 2026-10-29: Users page, invite banner, account page */
.users-row{grid-template-columns:1.2fr 1.6fr .9fr .7fr .9fr auto}.users-company{margin-top:18px}.users-company h2 small{font-size:13px;font-weight:400}.inline-form{display:inline}.admin-row span.user-actions{flex-direction:row;gap:8px;justify-content:flex-end}.button-quiet{background:#fff;color:var(--black);border:1px solid #c8cbd0}.invite-banner{margin-bottom:18px;border-left:5px solid #276738}.invite-banner.invite-warn{border-left-color:#8c6b18}.temp-box{display:flex;gap:10px;margin:10px 0;flex-wrap:wrap}.temp-box input{font-family:ui-monospace,Menlo,monospace;font-size:18px;letter-spacing:.06em;width:min(320px,100%)}@media(max-width:850px){.users-row{grid-template-columns:1fr}.admin-row span.user-actions{justify-content:flex-start}}
