@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/fraunces-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/fraunces-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/fraunces-500-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/fraunces-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/fraunces-600-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/fraunces-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/fraunces-700-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/fraunces-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-500-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-600-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-700-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #e8eef4;--surface: #ffffff;--surface-2: #f5f6f7;--surface-3: #eef3f8;--border: #d8e0ea;--accent: #4a6f9c;--accent-dark: #33506f;--accent-soft: #e8eef4;--gold: #d9b25f;--gold-soft: #f6eed8;--text: #1e2833;--text-muted: #5c6b7c;--danger: #c0392b;--danger-soft: #f7e6e3;--success: #2e7d52;--success-soft: #e3f1e9;--shadow: 0 1px 2px rgba(30,40,51,.04), 0 4px 16px rgba(30,40,51,.06);--shadow-hover: 0 6px 24px rgba(30,40,51,.1);--shadow-deep: 0 24px 60px rgba(30,40,51,.14);--radius: 12px;--radius-sm: 8px;--radius-xs: 5px;--sidebar-bg: #22303f;--font-display: "Fraunces", Georgia, serif;--font-body: "Inter", system-ui, sans-serif;--sidebar-w: 256px}[data-theme=dark]{--bg: #141b23;--surface: #1e2833;--surface-2: #263341;--surface-3: #223041;--border: #2f3e4e;--accent: #5a82b4;--accent-dark: #4a6f9c;--accent-soft: #26384a;--gold: #d9b25f;--gold-soft: #3a3320;--text: #e6edf4;--text-muted: #9fb0c2;--danger: #e06c5b;--danger-soft: #3a2320;--success: #5fb98a;--success-soft: #1c3329;--shadow: 0 1px 2px rgba(0,0,0,.3), 0 4px 16px rgba(0,0,0,.35);--shadow-hover: 0 6px 24px rgba(0,0,0,.45);--shadow-deep: 0 24px 60px rgba(0,0,0,.55);--sidebar-bg: #161d25}html{color-scheme:light}html[data-theme=dark]{color-scheme:dark}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--bg)}.login-shell{display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:860px;background:var(--surface);border-radius:20px;border:1px solid var(--border);box-shadow:var(--shadow-deep);overflow:hidden}.login-brand{background:var(--accent-dark);color:#eaf1f8;padding:44px 40px;display:flex;flex-direction:column;justify-content:space-between;gap:40px;min-height:460px}.login-brand-top{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:20px;font-weight:600;letter-spacing:-.3px}.login-brand-mid h2{font-family:var(--font-display);font-size:30px;line-height:1.15;font-weight:500;margin:0 0 14px;letter-spacing:-.5px}.login-brand-mid p{margin:0;font-size:15px;line-height:1.6;color:#b9c7d8;max-width:30ch}.login-brand-points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.login-brand-points li{position:relative;padding-left:24px;font-size:13.5px;color:#c6d3e2}.login-brand-points li:before{content:"";position:absolute;left:0;top:6px;width:12px;height:12px;border-radius:50%;border:2px solid #5f7fa8}.login-box{padding:48px 44px;display:flex;flex-direction:column;justify-content:center}.login-heading{margin:0 0 4px;font-family:var(--font-display);font-size:26px;font-weight:500;letter-spacing:-.4px;color:var(--text)}.login-sub{margin:0 0 32px;font-size:14px;color:var(--text-muted);font-weight:300}.login-error{margin:0;font-size:13px;color:var(--danger);padding:10px 14px;background:var(--danger-soft);border-radius:var(--radius-xs);border-left:3px solid var(--danger)}@media (max-width: 720px){.login-shell{grid-template-columns:1fr;max-width:420px}.login-brand{display:none}.login-box{padding:40px 32px}}.workspace-layout{display:flex;min-height:100vh;background:var(--bg)}.workspace-content{flex:1;min-width:0;overflow-y:auto}.workspace-pane{padding:36px 40px 56px;max-width:1280px;display:flex;flex-direction:column;gap:20px}.workspace-error{margin:20px 40px 0!important}.workspace-success{margin:20px 40px 0;padding:10px 16px;border-radius:var(--radius-sm);background:#86c79526;border:1.5px solid rgba(134,199,149,.4);color:#2e7d52;font-size:13px;font-weight:500}.sidebar{width:var(--sidebar-w);flex-shrink:0;background:var(--sidebar-bg);border-right:1px solid rgba(0,0,0,.06);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;overflow-x:hidden}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:30px 22px 22px;font-family:var(--font-display);font-size:22px;font-weight:700;color:#fff;letter-spacing:.3px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-badge{margin-left:auto;font-family:var(--font-body);font-size:9px;font-weight:600;padding:3px 8px;border-radius:20px;background:#d9b25f29;color:#d9b25f;text-transform:uppercase;letter-spacing:.08em;border:1px solid rgba(217,178,95,.28)}.sidebar-profile{display:flex;align-items:center;gap:12px;padding:18px 22px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-avatar{width:38px;height:38px;border-radius:10px;background:#3a5670;color:#eef3f8;font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;text-transform:uppercase}.sidebar-profile-info{display:grid;gap:1px;min-width:0}.sidebar-profile-info strong{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-profile-info span{font-size:11px;color:#ffffff73;font-weight:300}.sidebar-nav{display:flex;flex-direction:column;padding:14px 12px;gap:2px;flex:1}.sidebar-nav-item{display:flex;align-items:center;gap:11px;width:100%;padding:10px 12px;border-radius:10px;border:none;background:transparent;color:#ffffff80;font-family:var(--font-body);font-size:13.5px;font-weight:400;cursor:pointer;text-align:left;transition:all .15s ease;position:relative}.sidebar-nav-item:hover{background:#ffffff12;color:#ffffffd9}.sidebar-nav-item.active{background:#ffffff17;color:#eef3f8;font-weight:500}.sidebar-nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:#d9b25f;border-radius:0 3px 3px 0}.sidebar-nav-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:20px;color:currentColor;opacity:.9}.sidebar-footer{padding:12px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-footer-btn{display:inline-flex;align-items:center;gap:8px;width:auto;padding:8px 14px;border-radius:var(--radius-sm);border:none;background:transparent;color:#e8eef48c;font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;text-align:left;transition:color .15s,background .15s}.sidebar-footer-btn:hover{background:#ffffff14;color:#fffc}.pane-title{margin:0 0 28px;font-family:var(--font-display);font-size:32px;font-weight:700;color:var(--text);letter-spacing:-.3px;line-height:1.1;position:relative;display:inline-block}.pane-title:after{content:"";display:block;width:32px;height:2px;background:var(--accent);border-radius:2px;margin-top:10px}.card{background:var(--surface);border-radius:var(--radius);padding:24px 26px;box-shadow:var(--shadow);border:1px solid var(--border);transition:box-shadow .2s ease,transform .2s ease}.card:hover{box-shadow:var(--shadow-hover)}.card h2{margin:0 0 20px;font-family:var(--font-display);font-size:20px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:8px}.card h3{margin:0 0 16px;font-family:var(--font-body);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dashboard-grid .card h3{font-size:10px;margin-bottom:14px}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:4px}.summary-grid div{display:flex;flex-direction:column;gap:4px}.summary-grid .muted{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.summary-grid strong{font-family:var(--font-display);font-size:20px;font-weight:600;color:var(--text);line-height:1.1}.agenda-nav{display:flex;align-items:center;gap:10px;margin-bottom:24px;background:var(--surface);padding:12px 16px;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);width:fit-content}.agenda-nav button{font-family:var(--font-body);font-size:16px;font-weight:500;width:34px;height:34px;border-radius:8px;border:1.5px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;padding:0}.agenda-nav button:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-dark)}.agenda-nav input[type=date]{font-family:var(--font-body);font-size:13px;padding:7px 12px;border-radius:8px;border:1.5px solid var(--border);background:var(--surface-2);color:var(--text);outline:none;cursor:pointer;transition:border-color .15s}.agenda-nav input[type=date]:focus{border-color:var(--accent)}.agenda-date-label{font-size:13px;font-weight:500;color:var(--text);padding:0 4px;text-transform:capitalize}.status-badge{display:inline-flex;align-items:center;font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;white-space:nowrap;flex-shrink:0}.status-scheduled{background:#4a6f9c1f;color:var(--accent-dark);border:1px solid rgba(74,111,156,.28)}.status-confirmed{background:#7ec8a426;color:#2e7d52;border:1px solid rgba(126,200,164,.3)}.status-done{background:#7ec8a41a;color:#2e7d52;border:1px solid rgba(126,200,164,.2)}.status-canceled{background:#e07e9a1a;color:var(--danger);border:1px solid rgba(224,126,154,.2)}.badge-ok{display:inline-flex;align-items:center;font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;background:#7ec8a41f;color:#2e7d52;border:1px solid rgba(126,200,164,.25)}.badge-warning{display:inline-flex;align-items:center;font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;background:#f0a8501f;color:#a8842f;border:1px solid rgba(240,168,80,.25)}.calculator-result{margin-top:24px;padding:24px;background:var(--accent-soft);border-radius:var(--radius-sm);border:1px solid var(--border);text-align:center}.calculator-value{font-family:var(--font-display);font-size:48px;font-weight:700;color:var(--text);line-height:1;letter-spacing:-1px;margin-bottom:4px}.calculator-result .muted{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:16px;display:block}.calculator-breakdown{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.calculator-breakdown span{font-size:12px;color:var(--text-muted);background:var(--surface);padding:4px 10px;border-radius:20px;border:1px solid var(--border)}.calculator-monthly{margin-top:16px;padding-top:16px;border-top:1px solid var(--border);display:flex;flex-direction:column;align-items:center;gap:4px}.calculator-monthly span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.calculator-monthly strong{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--accent-dark);letter-spacing:-.5px}.day-picker{display:flex;gap:8px;flex-wrap:wrap}.day-chip{flex:1;min-width:60px;padding:10px 6px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface-2);color:var(--text-muted);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;transition:background .15s,border-color .15s,color .15s,transform .1s}.day-chip-short{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.day-chip-full{font-size:11px;color:var(--text-muted)}.day-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.day-chip.active .day-chip-full{color:#ffffffbf}.day-chip:hover:not(.active){border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.day-chip:hover:not(.active) .day-chip-full{color:var(--accent)}.schedule-days-list{display:grid;gap:10px}.schedule-day-card{border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface-2);overflow:hidden}.schedule-day-name{padding:8px 16px;background:var(--accent-soft);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-dark);border-bottom:1px solid var(--border)}.schedule-day-fields{padding:14px 16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px}.form{display:grid;gap:10px;margin-bottom:20px}.form label{display:grid;gap:5px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.form input,.form select,.form textarea{font-family:var(--font-body);font-size:14px;padding:11px 14px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface-2);color:var(--text);outline:none;transition:border-color .15s,background .15s,box-shadow .15s;width:100%}.form input::placeholder,.form textarea::placeholder{color:var(--text-muted);font-weight:300}.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px #4a6f9c29}.form textarea{min-height:80px;resize:vertical}.form button{font-family:var(--font-body);font-size:14px;font-weight:500;padding:11px 20px;border-radius:var(--radius-sm);border:none;background:var(--accent);color:#fff;cursor:pointer;transition:background .15s,transform .1s,box-shadow .15s;letter-spacing:.01em}.form button:hover{background:var(--accent-dark);box-shadow:0 4px 12px #1e283329}.form button:active{transform:scale(.98)}.form button:disabled{opacity:.6;cursor:not-allowed}.row{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.row>label{display:grid;gap:5px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.list{list-style:none;padding:0;margin:0;display:grid;gap:6px}.list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid transparent;transition:all .15s ease}.list li:hover{background:var(--accent-soft);border-color:var(--border);transform:translate(2px)}.list li div{display:grid;gap:2px;flex:1;min-width:0}.list li strong{font-size:13.5px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list li span{font-size:12px;color:var(--text-muted)}.list button{border:none;background:var(--surface-3);color:var(--text-muted);border-radius:var(--radius-xs);padding:5px 10px;font-size:12px;font-family:var(--font-body);font-weight:500;cursor:pointer;flex-shrink:0;transition:all .15s ease}.list button:hover{background:var(--accent-soft);color:var(--accent-dark)}.muted{color:var(--text-muted);font-size:13px}.summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-top:12px;padding:18px;border-radius:var(--radius-sm);background:var(--accent-soft);border:1px solid var(--border)}.summary div{display:grid;gap:4px}.summary div span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted)}.summary div strong{font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--text);line-height:1}.cost-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-dark);margin:0 0 8px}.cost-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:4px}.cost-table thead tr{border-bottom:1.5px solid var(--border)}.cost-table th{padding:6px 10px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.cost-table td{padding:9px 10px;border-bottom:1px solid var(--border);color:var(--text)}.cost-table tbody tr:last-child td{border-bottom:none}.cost-table tbody tr:hover td{background:var(--surface-2)}.cost-amount{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.cost-total-row td{font-weight:700;font-size:13px;border-top:1.5px solid var(--border)!important;background:var(--accent-soft)!important;color:var(--accent-dark)}.cost-grand-total{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding:12px 16px;border-radius:var(--radius-sm);background:var(--accent-soft);border:1.5px solid var(--border)}.cost-grand-total span{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.cost-grand-total strong{font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--text)}.btn-ghost-danger{background:none;border:none;font-size:12px;color:var(--danger);cursor:pointer;padding:4px 8px;border-radius:4px;opacity:.7;transition:opacity .15s,background .15s}.btn-ghost-danger:hover{opacity:1;background:var(--danger-soft)}.recurring-toggle{display:flex!important;flex-direction:row!important;align-items:center;gap:10px!important;font-size:13px!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important;color:var(--text)!important;cursor:pointer}.recurring-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.financial-month-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 40px 14px}.financial-month-title{font-family:var(--font-display);font-size:18px;font-weight:500;color:var(--text);margin:0}.financial-month-picker{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted)}.financial-month-picker select{padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:14px;font-family:var(--font-body);cursor:pointer;min-width:160px}.financial-month-picker select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.financial-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:0 40px}.financial-overview-card.receivable:before{background:#d9b25f}.delta-badge{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:999px;font-size:11px;font-weight:600;vertical-align:middle}.delta-badge.up{background:var(--accent-soft);color:var(--accent-dark)}.delta-badge.down{background:var(--danger-soft);color:var(--danger)}.financial-pending{margin:22px 40px 0;padding:20px 22px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.financial-pending-title{font-family:var(--font-display);font-size:17px;font-weight:500;margin:0 0 12px;color:var(--text)}.financial-pending-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.financial-pending-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--surface-2);border-radius:10px}.financial-pending-info{display:flex;flex-direction:column;gap:2px}.financial-pending-info strong{font-size:14px;color:var(--text)}.btn-sm{padding:6px 12px;font-size:13px}.header-actions{display:flex;gap:10px;align-items:center}.financial-overview-card{padding:20px 22px;border-radius:var(--radius);border:1.5px solid var(--border);background:var(--surface);display:flex;flex-direction:column;gap:4px;position:relative;overflow:hidden}.financial-overview-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.financial-overview-card.income:before{background:var(--accent)}.financial-overview-card.expenses:before{background:var(--danger)}.financial-overview-card.profit:before{background:var(--accent)}.financial-overview-card.profit.negative:before{background:var(--danger)}.financial-overview-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.financial-overview-value{font-family:var(--font-display);font-size:30px;font-weight:700;color:var(--text);line-height:1.1;letter-spacing:-.5px}.financial-overview-card.profit.negative .financial-overview-value{color:#c0392b}.financial-overview-sub{font-size:11px;color:var(--text-muted);font-weight:500}.receipt-upload-field{display:grid;gap:6px}.receipt-upload-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.receipt-upload-area{display:flex;align-items:center;gap:8px}.receipt-file-hidden{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.receipt-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface-2);color:var(--text);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s,color .15s;max-width:320px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.receipt-btn:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark)}.receipt-btn svg{flex-shrink:0;opacity:.6}.receipt-clear-btn{background:none;border:none;font-size:13px;color:var(--text-muted);cursor:pointer;padding:4px 6px;border-radius:4px;line-height:1;transition:color .15s,background .15s;flex-shrink:0}.receipt-clear-btn:hover{color:var(--danger);background:var(--danger-soft)}.receipt-link{font-size:12px;font-weight:600;color:var(--accent);text-decoration:none;padding:3px 8px;border-radius:4px;border:1px solid var(--accent);transition:background .15s,color .15s;white-space:nowrap}.receipt-link:hover{background:var(--accent);color:#fff}.error{margin:12px 40px 0;padding:12px 16px;background:var(--danger-soft);border-left:3px solid var(--danger);border-radius:var(--radius-sm);color:var(--danger);font-size:13.5px}.success-banner{margin:12px 40px 0;padding:12px 16px;background:var(--success-soft);border-left:3px solid var(--success);border-radius:var(--radius-sm);color:#2e7d52;font-size:13.5px}.pagination{display:flex;align-items:center;gap:10px;margin-top:20px;justify-content:center}.pagination button{padding:6px 18px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface);cursor:pointer;font-size:13px;font-family:var(--font-body);color:var(--text);transition:all .15s ease}.pagination button:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent)}.pagination button:disabled{opacity:.35;cursor:default}.pagination span{font-size:13px;color:var(--text-muted)}.btn-ghost{font-family:var(--font-body);font-size:13px;font-weight:500;padding:8px 16px;border-radius:10px;border:1px solid var(--accent);background:transparent;color:var(--accent);cursor:pointer;transition:background .15s,color .15s}.btn-ghost:hover{background:var(--accent-soft)}.btn-ghost-dark{font-family:var(--font-body);font-size:13px;font-weight:500;padding:8px 16px;border-radius:10px;border:1px solid rgba(232,238,244,.35);background:#e8eef414;color:#eef3f8;cursor:pointer;transition:background .15s}.btn-ghost-dark:hover{background:#e8eef429}.btn-ghost-full{font-family:var(--font-body);font-size:14px;font-weight:500;padding:11px 14px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;transition:background .15s}.btn-ghost-full:hover{background:var(--surface-3)}.btn-accent{font-family:var(--font-body);font-size:13px;font-weight:500;padding:8px 18px;border-radius:10px;border:none;background:var(--accent);color:#fff;cursor:pointer;transition:background .15s,box-shadow .15s}.btn-accent:hover{background:var(--accent-dark);box-shadow:0 4px 12px #1e283329}.btn-enter{font-family:var(--font-body);font-size:12px;font-weight:500;padding:6px 14px;border-radius:8px;border:none;background:var(--accent);color:#fff;cursor:pointer;transition:background .15s}.btn-enter:hover{background:var(--accent-dark)}.btn-ghost-sm{font-family:var(--font-body);font-size:12px;font-weight:500;padding:6px 10px;border-radius:8px;border:1.5px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s ease}.btn-ghost-sm:hover{background:var(--surface-2);color:var(--text)}.btn-danger-sm{font-family:var(--font-body);font-size:12px;font-weight:500;padding:6px 10px;border-radius:8px;border:none;background:var(--danger-soft);color:var(--danger);cursor:pointer;transition:all .15s ease}.btn-danger-sm:hover{background:var(--danger);color:#fff}.card-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.card-header-row h2{margin:0}.page{min-height:100vh;display:grid;grid-template-rows:auto 1fr}.header{background:var(--sidebar-bg);padding:44px 56px 40px;position:relative;overflow:hidden}.header h1{margin:0 0 6px;font-family:var(--font-display);font-size:42px;font-weight:600;letter-spacing:-.5px;color:#eef3f8;position:relative}.header p{margin:0;font-size:15px;font-weight:400;color:#e8eef4a6;position:relative}.header-brand{display:flex;align-items:center;gap:16px}.header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;position:relative;z-index:1}.header-actions{display:flex;gap:8px;flex-shrink:0;padding-top:4px}.grid{padding:36px 56px 56px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;align-items:start}.master-form{margin-bottom:24px;padding:20px;background:var(--surface-2);border-radius:var(--radius-sm);border:1px solid var(--border)}.psych-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.psych-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid transparent;transition:all .15s ease}.psych-item:hover{background:var(--accent-soft);border-color:var(--border)}.psych-avatar{width:42px;height:42px;border-radius:12px;background:#3a5670;color:#eef3f8;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;text-transform:uppercase}.psych-info{flex:1;display:grid;gap:2px;min-width:0}.psych-info strong{font-size:14px;font-weight:500;color:var(--text)}.psych-info span{font-size:12px;color:var(--text-muted)}.psych-stats{font-size:11px!important;font-weight:600;color:var(--accent)!important}.psych-actions{display:flex;gap:6px;flex-shrink:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e28336b;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.modal{background:var(--surface);border-radius:var(--radius);padding:32px 28px;width:100%;max-width:380px;box-shadow:var(--shadow-deep);border:1px solid var(--border)}.modal h3{margin:0 0 20px;font-family:var(--font-display);font-size:20px;font-weight:600;color:var(--text)}@media (max-width: 900px){.dashboard-grid{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.workspace-layout{flex-direction:column}.sidebar{width:100%;height:auto;position:static}.sidebar-nav{flex-direction:row;flex-wrap:wrap;padding:10px;gap:4px}.sidebar-nav-item{flex:1;min-width:70px;justify-content:center;padding:8px 6px;font-size:11px;flex-direction:column;gap:3px;text-align:center}.sidebar-nav-item.active:before{display:none}.sidebar-nav-icon{width:auto}.workspace-pane{padding:20px 16px 32px}.header{padding:28px 20px 24px}.header h1{font-size:32px}.grid{padding:20px 16px 32px;gap:16px}.error,.success-banner{margin:12px 16px 0}.agenda-nav{flex-wrap:wrap;width:auto}.agenda-date-label{order:-1;width:100%}.pane-title{font-size:26px}.summary-grid{grid-template-columns:1fr 1fr}.calculator-value{font-size:36px}.financial-overview{grid-template-columns:1fr;margin:0 16px 20px}.financial-overview-value{font-size:24px}}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.page-header .pane-title{margin-bottom:0}.page-header-actions{display:flex;gap:.5rem;align-items:center}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-panel{background:var(--surface);border-radius:16px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 40px #0000002e}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem 0}.modal-header h3{font-family:var(--font-display);font-size:1.3rem;font-weight:600;color:var(--text);margin:0}.modal-close{background:none;border:none;font-size:1rem;color:var(--text-muted);cursor:pointer;padding:.25rem .5rem;border-radius:6px;transition:background .15s}.modal-close:hover{background:var(--surface-2)}.modal-body{padding:1rem 1.5rem 1.5rem}.session-item{border-bottom:1px solid var(--surface-3);padding:0}.session-item:last-child{border-bottom:none}.session-item-toggle{display:flex;align-items:center;gap:.75rem;width:100%;background:none;border:none;text-align:left;padding:.85rem 0;cursor:pointer;color:var(--text);font-size:.95rem}.session-item-toggle:hover{color:var(--accent-dark)}.session-item-toggle .session-arrow{font-size:.7rem;color:var(--text-muted);transition:transform .2s;flex-shrink:0}.session-item-toggle.open .session-arrow{transform:rotate(90deg)}.session-item-toggle .session-date{font-weight:600;min-width:110px;flex-shrink:0}.session-item-toggle .session-preview{color:var(--text-muted);font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-item-body{padding:0 0 1rem 1.5rem;display:flex;flex-direction:column;gap:.6rem}.session-field label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);display:block;margin-bottom:.2rem}.session-field p{margin:0;font-size:.93rem;color:var(--text);white-space:pre-wrap}.session-item-actions{display:flex;gap:.5rem;margin-top:.5rem}.session-empty{padding:2.5rem 0;text-align:center;color:var(--text-muted);font-size:.95rem}.patient-selector{width:100%;margin-bottom:1.25rem;padding:.6rem .75rem;border:1px solid var(--surface-3);border-radius:8px;background:var(--surface);color:var(--text);font-family:var(--font-body);font-size:.95rem;cursor:pointer}.patient-selector:focus{outline:none;border-color:var(--accent)}.note{background:var(--accent-soft);border:none;border-left:3px solid var(--accent);box-shadow:none}.note p{margin:0}.note-success{color:var(--accent-dark);font-weight:500}.route-loading{padding:48px 40px;color:var(--text-muted);font-size:14px}.sidebar{transition:width .16s ease}.sidebar-collapse-btn{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:#ffffff80;border-radius:8px;cursor:pointer;transition:background .15s,color .15s}.sidebar-collapse-btn:hover{background:#ffffff1a;color:#fff}.sidebar.collapsed{width:68px}.sidebar.collapsed .sidebar-brand-name,.sidebar.collapsed .sidebar-badge,.sidebar.collapsed .sidebar-profile-info,.sidebar.collapsed .sidebar-nav-label{display:none}.sidebar.collapsed .sidebar-brand{flex-direction:column;gap:14px;padding:22px 0 16px;justify-content:center;align-items:center}.sidebar.collapsed .sidebar-collapse-btn{margin:0}.sidebar.collapsed .sidebar-profile{justify-content:center;padding:16px 0}.sidebar.collapsed .sidebar-nav{padding:14px 10px}.sidebar.collapsed .sidebar-nav-item{justify-content:center;padding:10px 0}.sidebar.collapsed .sidebar-nav-icon{width:auto}.sidebar.collapsed .sidebar-footer{display:flex;justify-content:center}.sidebar.collapsed .sidebar-footer-btn{justify-content:center;padding:8px}.wa-dot{display:inline-block;width:9px;height:9px;border-radius:50%;vertical-align:middle;margin-left:4px}.wa-dot.on{background:var(--success)}.wa-dot.off{background:var(--surface-3);border:1px solid var(--border)}.wa-webhook{display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px}.wa-webhook-label{font-size:12px;font-weight:600;color:var(--text-muted)}.wa-webhook-url{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;color:var(--accent-dark);word-break:break-all;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px}.resched-inbox{border-left:3px solid var(--gold)}.resched-title{font-family:var(--font-display);font-size:17px;font-weight:500;color:var(--text);margin:0 0 12px}.patient-status{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:600;vertical-align:middle}.patient-status.ativo{background:var(--success-soft);color:var(--success)}.patient-status.alta{background:var(--accent-soft);color:var(--accent-dark)}.patient-status.inativo{background:var(--surface-3);color:var(--text-muted)}.status-filter{padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:14px;font-family:var(--font-body);cursor:pointer}.appt-status{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:600;vertical-align:middle}.appt-status.scheduled{background:var(--surface-3);color:var(--text-muted)}.appt-status.confirmed{background:var(--success-soft);color:var(--success)}.appt-status.done{background:var(--accent-soft);color:var(--accent-dark)}.appt-status.canceled{background:var(--danger-soft);color:var(--danger)}.list li span.appt-wa-ok{display:block;font-size:12px;color:var(--success);margin-top:2px}.list li span.appt-wa-err{display:block;font-size:12px;color:var(--danger);margin-top:2px}.mood-chart-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}.mood-chart-head h3{font-family:var(--font-display);font-size:17px;font-weight:500;color:var(--text);margin:0}.mood-chart-head .muted{font-size:12px}.mood-chart-scroll{overflow-x:auto}.mood-grid{stroke:var(--border);stroke-width:1}.mood-axis{fill:var(--text-muted);font-size:10px;font-family:var(--font-body)}.mood-value{fill:var(--accent-dark);font-size:11px;font-weight:600;font-family:var(--font-body)}.mood-line{stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.mood-dot{fill:var(--gold);stroke:var(--surface);stroke-width:2}a:focus-visible,button:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-soft);color:var(--accent-dark)}*{scrollbar-width:thin;scrollbar-color:var(--surface-3) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:999px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--border)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.note-warning{background:var(--gold-soft);border-left-color:var(--gold);color:var(--text)}.btn-danger{font-family:var(--font-body);font-size:13px;font-weight:600;padding:9px 18px;border-radius:10px;border:1px solid var(--danger);background:var(--danger);color:#fff;cursor:pointer;transition:filter .15s}.btn-danger:hover{filter:brightness(.94)}.toast-stack{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:10px;z-index:1000;pointer-events:none}.toast{min-width:220px;max-width:360px;padding:12px 16px;border-radius:var(--radius-sm);background:var(--surface);color:var(--text);box-shadow:var(--shadow-deep);border-left:3px solid var(--accent);font-size:14px;animation:toast-in .18s ease-out}.toast-success{border-left-color:var(--success)}.toast-error{border-left-color:var(--danger)}.toast-info{border-left-color:var(--accent)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.confirm-panel{max-width:400px;padding:28px 28px 22px}.confirm-title{margin:0 0 8px;font-family:var(--font-display);font-size:19px;font-weight:600;color:var(--text)}.confirm-message{margin:0 0 22px;color:var(--text-muted);font-size:14.5px;line-height:1.5}.confirm-actions{display:flex;gap:10px;justify-content:flex-end}.skeleton-list{display:flex;flex-direction:column;gap:12px}.skeleton-row{height:52px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 37%,var(--surface-2) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease infinite}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion: reduce){.skeleton-row{animation:none}}.error-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:40px}.error-screen h1{margin:8px 0 0;font-family:var(--font-display);font-size:26px;font-weight:600;color:var(--text)}.error-screen p{margin:0 0 8px;color:var(--text-muted);max-width:40ch}
