:root{color:#182024;background:#eef3f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.68}.auth-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(140deg,rgba(52,112,123,.14),transparent 42%),linear-gradient(320deg,rgba(159,78,58,.16),transparent 38%),#eef3f4}.auth-panel,.onboarding-panel{width:min(100%,430px);display:grid;gap:18px;padding:28px;background:#fff;border:1px solid #d7e0e2;border-radius:8px;box-shadow:0 18px 60px #1e373d1f}.onboarding-panel{width:min(100%,760px)}.split-forms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.split-forms form{display:grid;gap:14px;padding:18px;border:1px solid #dde6e8;border-radius:8px}.eyebrow{margin:0 0 6px;color:#4d7f72;font-size:.76rem;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:2rem;line-height:1.1;letter-spacing:0}h2{margin-bottom:0;font-size:1.08rem;line-height:1.25}h3{margin-bottom:0;font-size:.95rem}.segmented{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:8px;background:#edf3f4}.segmented button{min-height:38px;border:0;border-radius:6px;background:transparent;color:#667579;font-weight:700}.segmented button.active{background:#fff;color:#172024;box-shadow:0 1px 4px #19282e1f}.field{display:grid;gap:7px;min-width:0}.field span{color:#526267;font-size:.8rem;font-weight:700}input,select,textarea{width:100%;border:1px solid #cbd8db;border-radius:7px;background:#fff;color:#172024;outline:none}input,select{min-height:40px;padding:0 11px}textarea{resize:vertical;min-height:86px;padding:10px 11px}select[multiple]{min-height:110px;padding:8px}input:focus,select:focus,textarea:focus{border-color:#3c7f89;box-shadow:0 0 0 3px #3c7f8921}.primary-button,.secondary-button,.danger-button{min-height:40px;border-radius:7px;border:1px solid transparent;padding:0 14px;font-weight:800}.primary-button{background:#205f6e;color:#fff}.secondary-button{background:#fff;color:#20505a;border-color:#c9d6d9}.danger-button{background:#8f342e;color:#fff}.inline{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.icon-button{width:40px;height:40px;display:inline-grid;place-items:center;border:1px solid #c9d6d9;border-radius:7px;background:#fff;color:#244b55}.app-frame{min-height:100vh;display:grid;grid-template-columns:232px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;display:grid;grid-template-rows:auto 1fr;gap:26px;padding:22px 16px;background:#14252b;color:#eaf2f3}.brand{display:flex;align-items:center;gap:10px;padding:0 8px;font-size:1.1rem}.brand span{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:#f2b84b;color:#172024;font-weight:900}.sidebar nav{display:grid;gap:5px;align-content:start}.sidebar nav button{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:#b9c8cb;font-weight:750}.sidebar nav button.active,.sidebar nav button:hover{background:#24424b;color:#fff}.work-area{min-width:0;padding:28px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.topbar-actions{display:flex;align-items:center;gap:8px}.user-pill{max-width:240px;min-height:40px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid #c9d6d9;border-radius:999px;background:#fff;padding:0 14px;color:#244b55;font-weight:800}.view-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.wide,.metrics-grid{grid-column:1 / -1}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric,.panel{background:#fff;border:1px solid #d6e0e2;border-radius:8px;box-shadow:0 1px 1px #1624280a}.metric{display:grid;gap:8px;padding:16px}.metric span,.panel-heading span,.row-button small,.contact-card span,.detail-list dt,.finance-row span,.finance-row small{color:#637377}.metric strong{font-size:2rem;line-height:1}.panel{min-width:0;padding:16px}.panel-heading,.toolbar,.modal-heading,.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-heading{min-height:34px;margin-bottom:12px}.panel-heading span{font-size:.85rem;font-weight:800}.toolbar{margin-bottom:14px}.search-field{flex:1}.table-list{display:grid;gap:6px}.table-list.compact{gap:4px}.row-button,.data-row,.pending-row{width:100%;min-width:0;border:1px solid #e0e8ea;border-radius:7px;background:#fbfdfd;color:#172024}.row-button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;text-align:left}.row-button span:first-child{min-width:0;display:grid;gap:3px}.row-button strong,.row-button small,.data-row span,.data-row strong,.pending-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-button.selected{border-color:#4d8b7c;background:#edf7f3}.data-table{display:grid;gap:5px}.data-head,.data-row{display:grid;grid-template-columns:160px minmax(180px,1.2fr) minmax(110px,.6fr) minmax(160px,1fr);gap:12px;align-items:center;min-height:42px;padding:0 11px}.data-head{color:#637377;font-size:.76rem;font-weight:900;text-transform:uppercase}.data-row{text-align:left}.data-row:hover,.row-button:hover{border-color:#b8c9cd;background:#f4f9f9}.members-head,.members-row{grid-template-columns:minmax(160px,1fr) minmax(210px,1.2fr) 120px 100px}.bar-list,.finance-grid,.notes-grid{display:grid;gap:8px}.year-panel{display:grid;gap:12px}.year-controls{display:flex;flex-wrap:wrap;gap:8px}.year-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.month-strip{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px;padding:10px;border:1px solid #dde6e8;border-radius:8px;background:#fbfdfd}.week-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(34px,1fr));gap:5px}.week-cell{min-height:30px;display:grid;place-items:center;border-radius:6px;color:#1a2428;font-size:.78rem;font-weight:850}.week-cell.grey,.legend i.grey{background:#e8eef0}.week-cell.green,.legend i.green{background:#97d6aa}.week-cell.blue,.legend i.blue{background:#90b7e8}.week-cell.pink,.legend i.pink{background:#efa6c9}.week-cell.red,.legend i.red{background:#e57870}.legend{display:flex;flex-wrap:wrap;gap:12px;color:#637377;font-size:.82rem;font-weight:750}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:14px;height:14px;display:inline-block;border-radius:4px}.bar-row,.finance-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border-radius:7px;background:#f7fafb}.finance-row{grid-template-columns:minmax(0,1fr) auto minmax(180px,1fr)}.empty-state{display:grid;gap:6px;padding:20px;border:1px dashed #cbd8db;border-radius:8px;color:#68777b}.empty-state strong{color:#253035}.notice-list{display:grid;gap:6px}.notice-list span{padding:10px;border-radius:7px;background:#fff6e5;color:#6d4b13}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:24px;background:#0b181c75}.modal{width:min(100%,920px);max-height:calc(100vh - 48px);overflow:auto;display:grid;gap:16px;padding:20px;border-radius:8px;background:#fff;box-shadow:0 24px 80px #0c171a47}.large-modal{width:min(100%,1180px)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.span-2{grid-column:1 / -1}.toggle-cluster{display:flex;flex-wrap:wrap;gap:10px;align-content:end}.toggle-cluster label{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 10px;border:1px solid #d9e3e5;border-radius:7px}.toggle-cluster input{width:16px;min-height:16px}.subpanel{display:grid;gap:10px;padding:14px;border:1px solid #dde6e8;border-radius:8px;background:#fbfdfd}.flight-grid{display:grid;gap:8px}.flight-row{display:grid;grid-template-columns:70px 100px 80px 80px minmax(180px,1fr) 40px;gap:8px;align-items:center}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.detail-list div{display:grid;gap:4px;padding:10px;border-radius:7px;background:#f7fafb}.detail-list dt{font-size:.76rem;font-weight:900;text-transform:uppercase}.detail-list dd{min-width:0;margin:0;overflow-wrap:anywhere}.notes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.notes-grid section{min-width:0;padding:12px;border-radius:8px;background:#f7fafb}.notes-grid p{margin-bottom:0;white-space:pre-wrap;overflow-wrap:anywhere}.inline-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.7fr) auto;gap:8px}.contact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.contact-card{min-width:0;display:grid;gap:10px;padding:14px;border:1px solid #d9e3e5;border-radius:8px;background:#fbfdfd}.contact-card div:first-child{display:grid;gap:3px}.contact-card p{min-height:22px;margin:0;color:#405056;overflow-wrap:anywhere}.contact-chips{display:flex;flex-wrap:wrap;gap:6px}.contact-chips.tall{margin-top:12px}.contact-chips span{max-width:100%;padding:5px 8px;border-radius:999px;background:#e8f2ef;color:#2c6156;font-size:.79rem;font-weight:800;overflow-wrap:anywhere}.card-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.pending-row{display:grid;grid-template-columns:minmax(0,1fr) 36px 36px;gap:8px;align-items:center;padding:8px}.pending-row span{display:grid;gap:3px}.pending-row button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #cbd8db;border-radius:7px;background:#fff}.toast{position:fixed;right:20px;bottom:20px;z-index:40;max-width:min(420px,calc(100vw - 40px));padding:12px 14px;border-radius:8px;background:#172024;color:#fff;box-shadow:0 14px 50px #0c171a42}.toast.success{background:#1f6b58}.toast.error{background:#963b34}@media(max-width:900px){.app-frame{grid-template-columns:1fr}.sidebar{position:static;height:auto;grid-template-columns:auto 1fr;align-items:center;padding:12px}.sidebar nav{display:flex;overflow-x:auto}.sidebar nav button{white-space:nowrap}.work-area{padding:18px}.topbar{align-items:flex-start;flex-direction:column}.view-grid,.metrics-grid,.form-grid,.notes-grid,.split-forms,.detail-list,.year-grid{grid-template-columns:1fr}.data-head{display:none}.data-row,.members-row,.finance-row,.flight-row,.inline-form{grid-template-columns:1fr;min-height:0;padding:11px}.span-2{grid-column:auto}}
