:root{--pink: #d92f7f;--pink-dark: #b91f68;--pink-soft: #fde8f1;--ink: #1f2937;--muted: #667085;--line: #e5e7eb;--panel: #ffffff;--bg: #f6f7fb;--good: #087443;--warn: #b45309;--bad: #b42318;--blue: #175cd3;--radius: 12px;--shadow: 0 14px 34px rgba(31, 41, 55, .08)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.4}.wrap{max-width:1600px;margin:0 auto;padding:0 16px}header{background:linear-gradient(135deg,#fff 0%,var(--pink-soft) 100%);border-bottom:1px solid #f5cfe0;padding:22px 18px 18px}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--pink);font-weight:800;margin-bottom:6px}.mark{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--pink);color:#fff;font-weight:900;box-shadow:0 6px 14px #d92f7f47}h1{margin:0 0 6px;font-size:15px;line-height:1.08}.sub{margin:0;color:#475467;max-width:720px;font-size:15px}.actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}button{border:0;border-radius:9px;padding:10px 15px;font-weight:700;font-size:14px;color:#fff;background:var(--pink);cursor:pointer;transition:transform .05s ease,background .15s ease,opacity .15s ease;box-shadow:0 6px 14px #d92f7f33}button:hover{background:var(--pink-dark)}button:active{transform:translateY(1px)}button.secondary{color:var(--ink);background:#fff;border:1px solid var(--line);box-shadow:none}button.secondary:hover{background:#f9fafb}button.small{padding:6px 10px;font-size:12px}button.danger{background:#fff5f5;color:var(--bad);border:1px solid #fecaca;box-shadow:none}button.danger:hover{background:#fee2e2}main{padding:18px}.grid{display:grid;grid-template-columns:1.4fr .6fr;gap:16px;align-items:flex-start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-head.wrap-actions{align-items:flex-start;flex-wrap:wrap}.panel h2{margin:0;font-size:17px}.conn{font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap}.conn[data-state=loading]{background:#eef2f6;color:#475467}.conn[data-state=ok]{background:#ecfdf3;color:var(--good)}.conn[data-state=error]{background:#fff5f5;color:var(--bad)}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:flex-end}.form-grid .col-2{grid-column:span 2}.form-grid .col-4{grid-column:span 4}label{display:block;font-size:12px;font-weight:700;color:#344054;margin-bottom:6px}label .tag{font-weight:600;color:var(--pink);background:var(--pink-soft);border-radius:999px;padding:1px 7px;font-size:10.5px;margin-left:4px}input,select{width:100%;min-height:38px;border:1px solid #d0d5dd;border-radius:9px;padding:8px 11px;color:var(--ink);background:#fff;font:inherit;font-size:14px}input:focus,select:focus{outline:none;border-color:var(--pink);box-shadow:0 0 0 3px #d92f7f24}div[class*=-Input] input[type=text]{border:none!important;box-shadow:none!important;min-height:auto!important;background:transparent!important;padding:0!important;outline:none!important;border-radius:0!important}input[type=number]{text-align:left;-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.hint{color:var(--muted);font-size:12px;margin:10px 0 0}.funding-info{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px 36px;padding:12px 0;border:1px dashed #f0c3da;border-left:none;border-right:none;background:#fffafd}.chip{display:flex;flex-direction:column;gap:3px;min-width:0}.chip span{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.chip strong{font-size:15px;word-break:break-word}.status-badge{display:inline-flex;width:fit-content;padding:2px 8px;border-radius:999px;font-size:13px;background:#f2f4f7;color:#344054}.status-badge.good{background:#ecfdf3;color:var(--good)}.status-badge.warn{background:#fffaeb;color:var(--warn)}.status-badge.bad{background:#fff5f5;color:var(--bad)}.summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.kpi{border:1px solid var(--line);border-radius:10px;padding:10px 8px;background:#fff;min-height:80px}.kpi span{display:block;color:var(--muted);font-size:11px;font-weight:700;margin-bottom:4px;line-height:1.2}.kpi strong{font-size:16px;display:block;white-space:nowrap;word-break:normal}.kpi.good strong{color:var(--good)}.kpi.warn strong{color:var(--warn)}.kpi.bad strong{color:var(--bad)}.kpi.blue strong{color:var(--blue)}.bar{height:12px;border-radius:999px;background:#eef2f6;overflow:hidden;margin-top:12px}.bar>div{height:100%;border-radius:999px;background:var(--pink);width:0%;transition:width .25s ease,background .25s ease}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 12px}.tab{border:1px solid var(--line);color:var(--ink);background:#fff;box-shadow:none;font-size:13px}.tab:hover{background:#f9fafb}.tab.active{background:var(--ink);color:#fff;border-color:var(--ink)}.tab.active:hover{background:var(--ink)}.services{overflow-x:auto;border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse;min-width:1000px;background:#fff}th{background:#f9fafb;color:#344054;font-size:12px;text-align:left;padding:11px 8px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:4px 8px;border-bottom:1px solid #eef2f6;vertical-align:middle}tr:last-child td{border-bottom:0}td.money,th.money{text-align:left;white-space:nowrap;font-size:13px}.services td input,.services td select{min-height:30px;padding:4px 8px;font-size:12px}.service-name{min-width:80px;width:80px;max-width:120px}.service-category{min-width:140px}.unit{min-width:75px;width:75px}.rate,.freq,.override{width:75px}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:11.5px;font-weight:700;background:#f2f4f7;color:#344054;white-space:nowrap;margin-top:6px}.pill.clinical{background:#fce7f3;color:#be185d;border:none}.pill.independence{background:#f3e8ff;color:#7e22ce;border:none}.pill.everyday{background:#ffedd5;color:#c2410c;border:none}.row-actions{display:flex;gap:6px;justify-content:flex-end}.split{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.mini-table{width:100%;min-width:0}.mini-table th,.mini-table td{padding:8px 6px;font-size:13px}.mini-table td:last-child,.mini-table th:last-child{text-align:right}.notice{border-left:4px solid var(--pink);background:#fff7fb;padding:10px 12px;border-radius:8px;color:#344054;font-size:13px;margin-top:14px}footer{color:var(--muted);font-size:12px;padding:16px 18px 28px}.hidden{display:none!important}.services{-webkit-overflow-scrolling:touch}.hamburger-btn{display:none;background:transparent;border:none;box-shadow:none;padding:6px;color:var(--ink);cursor:pointer}.hamburger-btn:hover{background:var(--pink-soft);border-radius:8px}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1f293773;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:9000;opacity:0;pointer-events:none;transition:opacity .25s ease}.sidebar-overlay.open{opacity:1;pointer-events:auto}.mobile-sidebar{position:fixed;top:0;left:0;width:280px;max-width:85vw;height:100vh;height:100dvh;background:#fff;box-shadow:6px 0 24px #1f29371f;z-index:9001;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-sidebar.open{transform:translate(0)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:18px 16px;border-bottom:1px solid var(--line)}.sidebar-close{background:transparent;border:none;box-shadow:none;padding:6px;color:var(--muted);cursor:pointer;border-radius:8px}.sidebar-close:hover{background:#f3f4f6;color:var(--ink)}.sidebar-actions{display:flex;flex-direction:column;gap:6px;padding:16px}.sidebar-btn{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:14px 16px!important;font-size:15px!important;border-radius:10px!important;font-weight:600!important;transition:background .15s ease}.sidebar-btn:hover{background:#f3f4f6!important}.sidebar-btn-save{background:#30c25a!important;color:#fff!important;border:none!important;box-shadow:0 4px 12px #30c25a40!important}.sidebar-btn-save:hover{background:#28a74e!important}@media(max-width:1024px){.grid{grid-template-columns:1fr}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid .col-2{grid-column:span 2}.form-grid .col-4{grid-column:span 3}.summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.hamburger-btn{display:none!important}.desktop-actions{display:flex!important;width:100%;gap:4px;justify-content:space-between;padding:0 5px}.desktop-actions button{flex:1;font-size:11px;padding:6px 4px;white-space:normal;line-height:1.2;text-align:center;min-width:0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .col-2,.form-grid .col-4{grid-column:span 2}.panel-head.wrap-actions{flex-direction:column;align-items:stretch}.panel-head.wrap-actions .actions{width:100%;flex-wrap:wrap}.panel-head.wrap-actions .actions select{flex:1 1 auto;min-width:0}.tabs .tab{flex:1 1 auto;text-align:center}.budget-summary-grid{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;gap:24px!important;padding-bottom:4px}.budget-summary-grid>div{min-width:300px;flex:1 0 auto}.panel-head.wrap-actions .actions>div[class*=css]{min-width:0!important;flex:1 1 auto}}@media(max-width:560px){header{padding:12px 1px}main{padding:8px 1px}.wrap{padding:0}.panel{padding:14px 8px}.sub{font-size:14px}.brand span{font-size:16px!important}.form-grid{grid-template-columns:1fr 1fr}.form-grid>div:nth-child(1){order:1}.form-grid>div:nth-child(3){order:2}.form-grid>div:nth-child(2){order:3;grid-column:span 2}.form-grid .col-2,.form-grid .col-4{order:4;grid-column:span 2}.funding-info{grid-template-columns:1fr 1fr;gap:8px 16px}.summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.split{grid-template-columns:1fr}.col-4[style*="display: flex"]{display:grid!important;grid-template-columns:1fr 1fr;gap:12px 16px!important}.col-4[style*="display: flex"]>div{flex:none;max-width:none!important}.col-4[style*="display: flex"]>div:first-child:nth-last-child(3){grid-column:span 2}.col-4[style*="display: flex"] input,.col-4[style*="display: flex"] select{max-width:100%!important;width:100%!important}.kpi span{font-size:10px;line-height:1.2}.kpi strong{font-size:15px;white-space:nowrap}.kpi{min-height:60px;padding:8px 4px}.panel-head.wrap-actions .actions{flex-direction:row!important;flex-wrap:nowrap;gap:8px}.panel-head.wrap-actions .actions>div[class*=css]{min-width:0!important;flex:1 1 auto}.panel-head.wrap-actions .actions button{white-space:nowrap;flex-shrink:0}.chip span{font-size:10px}.chip strong{font-size:13px}.toast-notification{left:16px;right:16px;bottom:16px}}@media print{body{background:#fff}header,main,footer{padding:0}.wrap{max-width:none}.actions,.tabs,.row-actions,#addService,#presetService,.conn,.estimate-panel,.mobile-sidebar,.sidebar-overlay,.hamburger-btn{display:none!important}.panel{box-shadow:none;border:none;margin-bottom:12px}.kpi{border:none;padding:0;min-height:0;margin-bottom:6px}.grid,.split{grid-template-columns:1fr}table{min-width:0;font-size:11px}input,select{border:0;padding:0;min-height:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}}.popup-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#1f293766;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.popup-content{background:#fff;border-radius:var(--radius);box-shadow:0 20px 40px #0003;padding:24px;max-width:400px;width:100%;animation:popup-fade-in .2s ease-out forwards}.popup-content p{margin:0 0 24px;font-size:15px;color:var(--ink);line-height:1.5;white-space:pre-wrap}.popup-actions{display:flex;justify-content:flex-end;gap:12px}@keyframes popup-fade-in{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.toast-notification{position:fixed;bottom:24px;right:24px;background-color:#30c25a;color:#fff;padding:12px 24px;border-radius:8px;font-size:15px;font-weight:500;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;pointer-events:none;z-index:9999;animation:slideUp .3s ease-out forwards}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
