:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#17231f;background:#f7f8f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}.app-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}aside{background:#1f3b35;color:#eef4f0;padding:28px 16px 20px;display:flex;flex-direction:column;gap:36px}.brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;padding:0 10px}nav{display:grid;gap:4px}nav a{color:#c8d8d0;text-decoration:none;display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:8px;font-size:14px}nav a:hover,nav a.active{background:#31554b;color:#fff}.profile{margin-top:auto;display:grid;gap:4px;padding:12px;border:0;border-top:1px solid #49675d;background:transparent;color:#c8d8d0;font:inherit;font-size:12px;text-align:left;cursor:pointer}.profile strong{color:#fff;font-size:13px}main{padding:48px clamp(24px,5vw,80px)}.page{max-width:1120px}.eyebrow{color:#4d7064;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px}h1{font-size:clamp(30px,4vw,42px);margin:0;letter-spacing:-.03em}.page-description{color:#58645e;max-width:680px;line-height:1.6}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.primary-action{background:#1f3b35;color:#fff;text-decoration:none;border-radius:7px;padding:11px 14px;font-size:14px;font-weight:700;white-space:nowrap}.table-wrap{margin-top:32px;overflow-x:auto;border:1px solid #e0e7e2;border-radius:12px;background:#fff}table{border-collapse:collapse;min-width:900px;width:100%;font-size:14px}th,td{padding:14px 16px;text-align:left;border-bottom:1px solid #edf1ee;vertical-align:top}th{color:#58645e;font-size:12px;text-transform:uppercase;letter-spacing:.05em}td a{color:#1f5e4f;font-weight:700;text-decoration:none}td small{display:block;color:#68746e;margin-top:4px}.status{display:inline-block;background:#eef4ef;color:#31554b;padding:4px 7px;border-radius:5px;font-size:12px;white-space:nowrap}.empty-row{text-align:center;color:#68746e;padding:34px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:36px}.cards article{background:#fff;border:1px solid #e0e7e2;border-radius:12px;padding:20px;display:grid;gap:10px;box-shadow:0 2px 8px #17231f08}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.dashboard-wide{grid-column:1 / -1}.dashboard-list{display:grid;gap:9px}.dashboard-list a{display:grid;gap:3px;padding:10px 0;border-bottom:1px solid #edf1ee;color:#254f44;text-decoration:none}.dashboard-list a:last-child{border-bottom:0}.dashboard-list span,.cards span,.cards small{color:#68746e;font-size:13px}.cards strong{font-size:30px}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#edf2ee}.login-card{width:min(100%,420px);display:grid;gap:16px;background:#fff;padding:36px;border:1px solid #dce5de;border-radius:14px;box-shadow:0 14px 45px #17231f1a}.login-card h1{font-size:32px}.login-card label{display:grid;gap:7px;color:#33443d;font-size:14px;font-weight:600}.login-card input{padding:11px 12px;border:1px solid #bdcabe;border-radius:7px;font:inherit}.login-card button{border:0;border-radius:7px;padding:12px;background:#1f3b35;color:#fff;font:inherit;font-weight:700;cursor:pointer}.login-card button:disabled{opacity:.65;cursor:wait}.login-logo{width:44px;height:44px;display:grid;place-items:center;border-radius:10px;background:#e0ebe4;color:#1f3b35}.form-error{margin:0;color:#b42318;font-size:14px}.form-success{color:#1b6b45;margin:0;font-size:14px}.split-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:28px;margin-top:32px}.entry-form,.list-panel{display:grid;gap:14px;align-content:start;padding:24px;border:1px solid #e0e7e2;border-radius:12px;background:#fff}.entry-form h2,.list-panel h2{margin:0 0 4px;font-size:19px}.entry-form label{display:grid;gap:7px;color:#33443d;font-size:14px;font-weight:650}.entry-form input,.entry-form select{width:100%;padding:11px 12px;border:1px solid #bdcabe;border-radius:7px;font:inherit;background:#fff}.entry-form button{border:0;border-radius:7px;padding:12px;background:#1f3b35;color:#fff;font:inherit;font-weight:700;cursor:pointer}.entry-form button:disabled{opacity:.65;cursor:not-allowed}.client-list{display:grid;gap:0}.client-list article{display:grid;gap:4px;padding:14px 0;border-bottom:1px solid #edf1ee}.client-editor{margin-top:1.5rem}.section-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.client-properties{margin-top:1.5rem;display:grid;gap:1rem}.property-editor{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end}.client-list article:last-child{border-bottom:0}.client-list span,.client-list small,.muted{color:#68746e;font-size:14px}.wide-form{width:min(100%,760px);margin-top:30px;grid-template-columns:repeat(2,minmax(0,1fr))}.wide-form button,.wide-form .form-error{grid-column:1 / -1}.back-link{color:#31554b;text-decoration:none;font-size:14px;font-weight:700}.work-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:18px 0 30px}.large-status{font-size:14px;padding:8px 10px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.detail-card{background:#fff;border:1px solid #e0e7e2;border-radius:12px;padding:20px}.detail-card h2{margin:0 0 16px;font-size:18px}dl{display:grid;gap:12px;margin:0}dt{color:#68746e;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}dd{margin:4px 0 0;line-height:1.45}.compact-list{display:grid;gap:10px}.compact-list>div{display:grid;gap:3px;padding-bottom:10px;border-bottom:1px solid #edf1ee}.compact-list>div:last-child{border-bottom:0;padding-bottom:0}.compact-list span,.compact-list small{color:#68746e;font-size:13px}.quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:-12px 0 24px}.quick-actions form{display:flex;gap:7px}.quick-actions input{min-width:0;width:100%;border:1px solid #bdcabe;border-radius:7px;padding:9px;font:inherit}.quick-actions button{border:0;border-radius:7px;background:#31554b;color:#fff;padding:9px 10px;font:inherit;font-size:13px;white-space:nowrap}.billing-settings{margin-top:28px}.settings-section-title{margin:42px 0 0}.catalog-settings{margin-top:32px}.team-settings{margin-top:42px}.team-settings h2,.team-settings>p{margin-top:0}.team-list{display:grid;gap:10px}.team-list>article{display:grid;gap:5px;padding:12px 0;border-top:1px solid #edf1ee}.team-list span,.team-list small{color:#68746e;font-size:13px}.inactive-user{opacity:.65}.user-actions{display:flex;gap:7px;margin-top:4px}.reassignment-panel{display:grid;gap:14px;margin-top:18px;padding:18px;border:1px solid #d9e3dc;border-radius:10px;background:#f8fbf9}.panel-heading{display:flex;justify-content:space-between;gap:16px;align-items:start}.panel-heading h3{margin:0 0 4px}.reassignment-group{display:grid;gap:6px;padding-top:12px;border-top:1px solid #e2e9e4}.reassignment-group label{display:grid;gap:5px;font-weight:600}.reassignment-group select{max-width:360px}.reassignment-group ul{margin:0;padding-left:20px;color:#68746e;font-size:13px}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px}.template-stage-item{display:flex;gap:7px}.template-stage-item input{min-width:0;flex:1;padding:9px;border:1px solid #bdcabe;border-radius:7px;font:inherit}.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.catalog-editor{display:grid;gap:12px}.catalog-editor h2,.catalog-editor p{margin:0}.catalog-create,.catalog-row,.catalog-row form{display:flex;gap:8px;align-items:center}.catalog-create input,.catalog-row input{min-width:0;flex:1;padding:9px;border:1px solid #bdcabe;border-radius:7px;font:inherit}.catalog-create button{border:0;border-radius:7px;padding:9px 11px;background:#31554b;color:#fff;font:inherit;cursor:pointer}.catalog-list{display:grid}.catalog-row{justify-content:space-between;padding:9px 0;border-top:1px solid #edf1ee}.catalog-row form{width:100%}.catalog-actions{display:flex;gap:5px}.catalog-actions .text-button{padding:5px 7px;font-size:12px}.inactive-catalog{color:#68746e;font-size:13px}.inactive-catalog .catalog-row{margin-left:8px}.template-items{display:grid;gap:8px}.template-item,.milestone-fields{display:grid;grid-template-columns:minmax(0,1fr) 130px 90px auto;gap:7px}.template-item input,.template-item select,.budget-form input,.budget-form select,.payment-form input{min-width:0;padding:9px;border:1px solid #bdcabe;border-radius:7px;font:inherit;background:#fff}.secondary-button,.text-button{border:1px solid #8ca398;border-radius:7px;padding:9px;color:#31554b;background:#fff;font:inherit;cursor:pointer}.billing-card{grid-column:1 / -1}.budget-view,.milestone{display:grid;gap:5px;border-top:1px solid #edf1ee;padding:14px 0}.budget-view:first-of-type{border-top:0;padding-top:0}.budget-view span,.milestone span,.milestone small,.budget-form small{color:#68746e;font-size:13px}.payment-form{display:grid;grid-template-columns:130px 80px 120px minmax(120px,1fr) auto;gap:7px;margin-top:6px}.payment-form button,.budget-form button{border:0;border-radius:7px;padding:9px 11px;background:#31554b;color:#fff;font:inherit;font-size:13px;cursor:pointer}.budget-form{display:grid;gap:9px;border-top:1px solid #dce5de;margin-top:14px;padding-top:16px}.budget-form h3{margin:0;font-size:16px}.budget-form>select,.budget-form>input{max-width:100%}.edit-button{margin-top:16px}.edit-work-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.edit-work-form label,.edit-work-form fieldset{display:grid;gap:6px;font-size:13px;color:#33443d}.edit-work-form input,.edit-work-form select,.file-form input,.file-form select{padding:9px;border:1px solid #bdcabe;border-radius:7px;font:inherit;background:#fff}.edit-work-form fieldset{grid-column:1 / -1;border:1px solid #dce5de;border-radius:7px;grid-template-columns:repeat(4,max-content)}.edit-work-form>button{width:max-content;border:0;border-radius:7px;padding:9px 11px;background:#31554b;color:#fff;cursor:pointer}.file-form{display:grid;grid-template-columns:minmax(0,1fr) 130px 150px auto;gap:7px;margin-bottom:14px}.file-form button{border:0;border-radius:7px;background:#31554b;color:#fff;padding:9px 11px;cursor:pointer}.danger-button{color:#a62a21;border-color:#d9a9a4;margin-left:7px}.tracking-card{grid-column:1 / -1}.stage-list{display:grid;gap:14px;margin-top:16px}.stage-block{border:1px solid #dce5de;border-radius:8px;padding:10px;display:grid;gap:8px}.tracking-editor,.add-tracking,.add-task,.work-filters{display:grid;gap:7px;align-items:center}.portal-list{display:grid;gap:14px}.portal-work{display:grid;gap:8px}.portal-work h2{margin:0}.portal-work section{border-top:1px solid #dce5de;padding-top:12px;margin-top:8px}.portal-file{display:flex;justify-content:space-between;gap:12px;padding:8px 0}.portal-file p{display:flex;gap:10px;margin:0}.portal-update{border-bottom:1px solid #edf1ee;padding:8px 0}.portal-update h4,.portal-update p{margin:0 0 4px}.portal-preferences{display:grid;gap:7px;border-top:1px solid #dce5de;padding-top:12px}.portal-budget{padding:10px 0;border-bottom:1px solid #edf1ee}.tracking-editor{grid-template-columns:minmax(150px,1.4fr) 120px 150px 130px minmax(150px,1.4fr) auto auto}.task-editor{margin-left:18px}.add-tracking,.add-task{grid-template-columns:auto minmax(150px,1.2fr) 150px 130px minmax(140px,1fr) auto}.tracking-editor input,.tracking-editor select,.add-tracking input,.add-tracking select,.add-task input,.add-task select,.work-filters input,.work-filters select{min-width:0;padding:8px;border:1px solid #bdcabe;border-radius:6px;background:#fff;font:inherit;font-size:13px}.tracking-editor button,.add-tracking button,.add-task button,.work-filters button{border:0;border-radius:6px;padding:8px 10px;background:#31554b;color:#fff;font:inherit;font-size:13px;cursor:pointer}.move-buttons{display:flex;gap:2px}.move-buttons .text-button{padding:5px 7px}.tracking-card h3{font-size:15px;margin:18px 0 8px}.work-filters{grid-template-columns:repeat(4,minmax(130px,1fr));margin-top:24px;padding:14px;border:1px solid #e0e7e2;border-radius:10px;background:#fff}.work-filters label{display:grid;gap:3px;font-size:12px;color:#58645e}@media(max-width:720px){.app-shell{grid-template-columns:1fr}aside{padding:14px;gap:14px;position:sticky;top:0;z-index:2}nav{display:flex;overflow-x:auto}nav a{white-space:nowrap}.profile{display:none}main{padding:32px 20px}.cards,.split-layout,.wide-form,.detail-grid,.quick-actions,.dashboard-grid,.work-filters,.tracking-editor,.add-tracking,.add-task{grid-template-columns:1fr}.page-heading,.work-header{align-items:stretch;flex-direction:column}.primary-action{text-align:center}.task-editor{margin-left:0}}
