.today-panel{padding:22px;margin-bottom:20px}.today-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.today-heading h2{margin:4px 0;font-size:30px;letter-spacing:-.04em}.today-heading p:last-child{margin:4px 0 0;font-size:14px;color:#647482;text-transform:capitalize}.today-refresh{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:10px 13px;border:1px solid #d5e1e9;border-radius:14px;background:#edf3f7;color:#315f7d;font-size:13px;font-weight:700;cursor:pointer;touch-action:manipulation}.today-refresh:disabled{opacity:.55;cursor:default}.today-panel button:focus-visible,.today-meta summary:focus-visible{outline:3px solid #315f7d;outline-offset:3px}.today-warning{padding:12px;background:#fff4d8;color:#6b4b0d;border-radius:12px;font-size:14px}.today-sync{margin:14px 0 0;font-size:12px;color:#626c66;line-height:1.5}.today-meta{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 12px;margin:16px 0 10px;font-size:12px;color:#647482}.today-meta>span{font-weight:700}.today-meta details{max-width:100%}.today-meta summary{min-height:44px;padding:14px 0;cursor:pointer}.today-meta details p{margin:4px 0 8px;overflow-wrap:anywhere}.today-events{display:grid;gap:8px;padding:0;margin:0;list-style:none}.today-event{display:grid;grid-template-columns:112px minmax(0,1fr) auto 18px;gap:12px;align-items:center;width:100%;min-height:76px;padding:14px;border:1px solid #e3eaf0;border-radius:16px;color:#17232c;background:#f8fafc;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.today-event:not(:disabled):active{background:#eaf1f6}.today-event:disabled{cursor:default}.today-event:disabled .today-chevron{opacity:.2}.today-events time{font-size:13px;font-weight:600;color:#536b7c;font-variant-numeric:tabular-nums}.today-client{min-width:0}.today-client strong{font-size:15px;overflow-wrap:anywhere}.today-status{display:block;width:-moz-fit-content;width:fit-content;font-size:12px;line-height:1.4;margin-top:6px;padding:3px 8px;border-radius:8px}.today-present{color:#245e3b;background:#e5f1e8}.today-absent{color:#982e2e;background:#f9eaea}.today-pending,.today-ambiguous{color:#705019;background:#faf0db}.today-balance{font-size:13px;color:#536b7c;overflow-wrap:anywhere}.today-chevron{color:#7a919f}@media(max-width:600px){.today-panel{padding:16px;border-radius:22px}.today-heading h2{font-size:28px}.today-heading .eyebrow{font-size:10px;letter-spacing:.07em}.today-refresh{flex-shrink:0;padding:10px 12px}.today-event{grid-template-columns:82px minmax(0,1fr) 16px;-moz-column-gap:8px;column-gap:8px;row-gap:5px;padding:13px 11px}.today-events time{align-self:start;padding-top:2px;font-size:12px}.today-balance{grid-column:2;font-size:12px}.today-chevron{grid-column:3;grid-row:1 / 3;width:16px}}@media(prefers-reduced-motion:no-preference){.today-event{transition:background .15s ease}}.workflow-panel{margin:18px 0;padding:20px}.workflow-panel h3{margin:4px 0 12px}.workflow-panel p{line-height:1.5}.workflow-filters,.workflow-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.workflow-filters button,.workflow-actions button,.workflow-panel>button{min-height:44px;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-weight:600;cursor:pointer}.workflow-filters button[aria-pressed=true]{background:var(--soft-surface, #e0edf4);border-color:#6c96ad}.workflow-panel button:disabled{opacity:.5;cursor:not-allowed}.workflow-panel button:focus-visible,.workflow-panel summary:focus-visible{outline:2px solid #649dbc;outline-offset:3px}.workflow-search{display:grid;gap:8px;font-size:13px;color:var(--muted)}.workflow-search input{width:100%;min-height:44px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit}.workflow-list{display:grid;gap:12px}.workflow-list article{display:grid;gap:7px;border:1px solid var(--line);border-radius:16px;padding:15px;overflow-wrap:anywhere}.workflow-list article>span,.workflow-list article>small{color:var(--muted);font-size:13px}.workflow-badge{padding:7px 10px;border-radius:9px;background:var(--soft-surface, #f0f5f7)}.workflow-panel summary{min-height:44px;padding:12px 0;cursor:pointer;font-weight:700}.workflow-panel progress{width:100%;height:10px;accent-color:#528678}.workflow-latest{border-left:4px solid #528678}.workflow-latest .maintenance-panel{margin-top:12px;padding:12px}.bottom-nav{grid-template-columns:repeat(4,1fr)}.bottom-nav button{min-height:48px}.bottom-nav button span{font-size:11px}.welcome-toast{position:fixed;z-index:90;top:max(18px,env(safe-area-inset-top));left:50%;width:min(420px,calc(100% - 32px));transform:translate(-50%);display:flex;align-items:center;gap:13px;padding:13px 12px 13px 13px;color:var(--ink);background:color-mix(in srgb,var(--surface, #fff) 88%,transparent);border:1px solid color-mix(in srgb,var(--line) 75%,#fff 25%);border-radius:24px;box-shadow:0 20px 60px #0003,inset 0 1px #fff8;-webkit-backdrop-filter:blur(22px) saturate(1.25);backdrop-filter:blur(22px) saturate(1.25);animation:welcome-visit 3.5s both}.welcome-symbol{position:relative;display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;overflow:hidden;border-radius:17px;background:linear-gradient(145deg,#82d3e633,#579cac26);box-shadow:inset 0 1px #fff7,0 7px 18px #579cac22}.welcome-emoji{display:block;font-size:28px;line-height:1;transform-origin:70% 80%;animation:welcome-wave 1.15s ease-in-out .25s 2}.welcome-glow{position:absolute;width:34px;height:34px;border-radius:50%;background:#fff6;filter:blur(12px);pointer-events:none}.welcome-toast>div{flex:1;display:grid;gap:3px;min-width:0}.welcome-kicker{color:var(--muted);font-size:9px!important;font-weight:800;letter-spacing:.13em}.welcome-toast strong{font-size:17px;letter-spacing:-.02em}.welcome-toast>div>span:last-child{color:var(--muted);font-size:12px}.welcome-toast button{display:grid;place-items:center;min-width:40px;min-height:40px;border:0;border-radius:14px;background:#00000008;color:inherit;cursor:pointer}.welcome-toast button:hover{background:#00000012}@keyframes welcome-wave{0%,to{transform:rotate(0)}25%{transform:rotate(18deg)}50%{transform:rotate(-10deg)}75%{transform:rotate(14deg)}}@keyframes welcome-visit{0%{opacity:0;transform:translate(-50%,-22px) scale(.94);filter:blur(5px)}10%{opacity:1;transform:translate(-50%) scale(1);filter:blur(0)}85%{opacity:1;transform:translate(-50%) scale(1);filter:blur(0)}to{opacity:0;transform:translate(-50%,-12px) scale(.98);filter:blur(2px)}}.professional-details{margin:16px 0;border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:16px}.professional-details>summary{cursor:pointer;font-weight:750;min-height:30px;color:var(--ink)}.professional-details[open]>summary{margin-bottom:18px}.more-menu{display:grid;gap:14px}.more-menu>button{display:flex;align-items:center;gap:14px;min-height:70px;border:1px solid var(--line);border-radius:18px;padding:16px;color:var(--ink);background:var(--surface);font:inherit;text-align:left;cursor:pointer}.more-menu>button svg:last-child{margin-left:auto}.more-menu .card{padding:16px}.daily-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}.daily-summary>div{background:var(--soft-surface, #edf2f4);border:1px solid var(--line);border-radius:14px;padding:12px 8px;display:grid;gap:6px}.daily-summary span,.daily-summary small{font-size:11px;color:var(--muted)}.daily-summary strong{font-size:clamp(16px,4.2vw,23px);overflow-wrap:anywhere}.today-quick-actions{display:flex;flex-wrap:wrap;gap:6px;padding:4px 8px 12px}.today-quick-actions button{min-height:44px;flex:1;padding:8px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:var(--surface);cursor:pointer}.today-quick-actions button:disabled{opacity:.45;cursor:default}.package-summary{padding:18px;border-radius:18px;background:var(--soft-surface, #edf2f4);border:1px solid var(--line);margin-top:14px}.package-summary h4{font-size:18px;margin:8px 0}.package-summary-value{display:flex;align-items:baseline;gap:10px;margin:12px 0}.package-summary-value strong{font-size:36px}.package-summary-value span,.package-summary p,.package-summary dd{font-size:13px}.package-summary progress{width:100%;height:10px;accent-color:#569d91}.package-summary dl{display:grid;gap:12px}.package-summary dt{font-size:11px;color:var(--muted)}.package-summary dd{margin:4px 0 0}.package-new{border-color:#6399bc}.client-package-progress span{transition:width .45s ease}.renewal-orbit svg{animation:none!important}.appearance-strip small{color:var(--muted);font-size:11px}.client-row .pill{white-space:normal;text-align:center}.filter-row{flex-wrap:wrap}.search-box{scroll-margin-top:12px}button:focus-visible,summary:focus-visible{outline:2px solid #649dbc;outline-offset:3px}@media(prefers-reduced-motion:reduce){.welcome-toast{animation:none}.client-package-progress span{transition:none}}.interactive-handle{display:grid;place-items:center;width:100%;height:36px;padding:0;border:0;background:transparent;cursor:grab;touch-action:none}.interactive-handle span{width:40px;height:5px;border-radius:6px;background:#becdd2}.interactive-handle:focus-visible{outline:2px solid #315f7d;border-radius:8px}.save-feedback{display:flex;gap:12px;align-items:flex-start;margin:16px 0;padding:16px;border-radius:16px}.save-feedback>div{display:grid;gap:5px}.save-feedback span{line-height:1.5;overflow-wrap:anywhere}.save-feedback.confirmed{color:#245f40;background:#e8f5ed;border:1px solid #bbddc9}.save-feedback.failed{color:#903d3d;background:#fff0f0;border:1px solid #ebc5c5}.save-check{flex-shrink:0;animation:saved-pop .3s ease-out}@keyframes saved-pop{0%{transform:scale(.65);opacity:.3}to{transform:scale(1);opacity:1}}.pull-refresh-status{display:flex;align-items:center;justify-content:center;gap:10px;overflow:hidden;color:#315f7d;font-size:13px;background:#edf5f8}.pull-refresh-status small{display:block;font-size:10px;margin-top:3px}.next-appointment{display:grid;gap:8px;width:100%;margin:14px 0;padding:20px;border:1px solid #b7d3cd;border-radius:20px;background:linear-gradient(130deg,#e5f3ec,#edf4fa);color:#193d37;text-align:left}.next-appointment strong{font-size:24px;overflow-wrap:anywhere}.next-appointment .next-time{font-size:16px;font-weight:700}.next-appointment small{line-height:1.5}.next-appointment:disabled{cursor:default;opacity:.7}.next-appointment:focus-visible{outline:2px solid #315f7d;outline-offset:3px}@media(prefers-reduced-motion:reduce){.save-check{animation:none}.action-sheet,.maintenance-dialog{transition:none!important}}.theme-control{display:inline-flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;min-height:44px;color:var(--muted);font-size:12px}.theme-control select{max-width:145px;min-height:36px;padding:6px 9px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit}.appearance-strip{display:flex;justify-content:flex-end;max-width:980px;margin:0 auto;padding:4px 18px 0}.login-card>.theme-control{margin-top:18px}.client-sections{display:flex;gap:5px;padding:5px;margin:18px 0;border:1px solid var(--line);border-radius:14px;background:var(--soft-surface, #edf2f4)}.client-sections button{flex:1;min-width:0;min-height:44px;padding:7px 4px;border:0;border-radius:10px;color:var(--muted);background:transparent;font-weight:700;font-size:13px;cursor:pointer}.client-sections button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 2px 9px #0000000d}.client-sections button:focus-visible{outline:2px solid #649dbc;outline-offset:2px}.client-section-panel h4{margin-top:8px}.client-notes{white-space:pre-wrap;overflow-wrap:anywhere}.chart-instruction{margin:0 0 12px;color:var(--muted);font-size:12px}.finance-interactive-chart{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(104px,1fr);gap:10px;overflow-x:auto;padding:4px 3px 10px}.finance-month{display:grid;gap:6px;text-align:center}.finance-month>strong{font-size:13px}.finance-month>small{font-size:12px}.finance-bars{display:flex;justify-content:center;height:150px;gap:4px}.finance-bar-button{display:flex;align-items:flex-end;justify-content:center;min-width:44px;height:100%;padding:4px;border:1px solid transparent;border-radius:10px;background:transparent;cursor:pointer}.finance-bar-button .money-bar{display:block;width:28px;max-width:100%;pointer-events:none}.finance-bar-button.selected,.finance-bar-button:focus-visible{outline:2px solid #6c96ad;outline-offset:0;background:#527d9912}.finance-detail{border-top:1px solid var(--line);padding-top:12px;margin-top:8px}.finance-detail h4{margin:0}.finance-detail h5{margin:18px 0 0;font-size:14px}.finance-detail-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.finance-detail-totals div{padding:10px 6px;border-radius:10px;background:var(--soft-surface, #f0f5f7)}.finance-detail-totals dt{color:var(--muted);font-size:11px}.finance-detail-totals dd{margin:5px 0 0;font-weight:700;font-size:13px;overflow-wrap:anywhere}.finance-detail-rows{display:grid;gap:8px;margin-top:12px}.finance-detail-rows article{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.finance-detail-rows article div{display:grid;gap:4px;min-width:0}.finance-detail-rows span{color:var(--muted);font-size:12px}.finance-detail-rows strong{overflow-wrap:anywhere}.loading-screen{width:min(100%,980px);margin:0 auto;padding:max(24px,env(safe-area-inset-top)) 18px 30px}.loading-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}.loading-heading h1{font-size:26px}.loading-screen>p{color:var(--muted)}.skeleton-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.skeleton-card{display:grid;gap:14px;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:22px;min-height:115px}.skeleton-wide{grid-column:1 / -1}.skeleton-line,.skeleton-chart{display:block;height:20px;border-radius:8px;background:linear-gradient(100deg,var(--skeleton-base, #e4ebef) 25%,var(--skeleton-light, #f3f7f9) 45%,var(--skeleton-base, #e4ebef) 65%);background-size:250% 100%;animation:skeleton-sheen 1.8s ease-in-out infinite}.skeleton-line.short{width:40%}.skeleton-line.medium{width:70%;height:28px}.skeleton-chart{height:140px}.refresh-progress{position:sticky;top:0;height:3px;overflow:hidden;background:var(--line);z-index:15}.refresh-progress:after{content:"";display:block;height:100%;width:40%;background:#699eac;animation:refresh-slide 1.3s ease-in-out infinite}@keyframes skeleton-sheen{to{background-position:-200% 0}}@keyframes refresh-slide{0%{transform:translate(-100%)}to{transform:translate(350%)}}@media(prefers-reduced-motion:reduce){.skeleton-line,.skeleton-chart,.refresh-progress:after{animation:none}}:root[data-theme=dark]{color-scheme:dark;--ink: #edf3f7;--muted: #b0c0ca;--line: #344652;--surface: #1b2a35;--soft-surface: #243640;--blue: #9cc8e0;--green: #9cd6b1;--amber: #f2cf8f;--red: #ffb7b7;--skeleton-base: #263c49;--skeleton-light: #354e5d;color:var(--ink);background:#101c25}:root[data-theme=light]{color-scheme:light}[data-theme=dark] body,[data-theme=dark] .secure-shell{color:var(--ink);background:radial-gradient(circle at 90% 0,#24404c55,transparent 45%),#101c25}[data-theme=dark] :is(.card,.kpi,.chart-card,.break-even,.operating-result,.login-card,.client-row,.attendance-row,.ledger-row,.consistency-row,.forecast-row,.search-box,.note,.client-drawer,.action-sheet,.maintenance-dialog,.maintenance-panel){color:var(--ink);background:var(--surface);border-color:var(--line);box-shadow:0 8px 26px #00000020}[data-theme=dark] :is(.topbar,.bottom-nav,.client-drawer .sheet-head){background:#172631f5;color:var(--ink);border-color:var(--line)}[data-theme=dark] :is(.sync-strip,.payment-panel,.expense-form,.client-form,.absence-panel,.client-summary,.history-summary>div,.action-mode-row,.calendar-legend,.empty-state,.maintenance-review,.day-detail,.today-event,.pull-refresh-status){color:var(--ink);background:var(--soft-surface);border-color:var(--line)}[data-theme=dark] :is(input,select,textarea){color:var(--ink)!important;background:#13232e!important;border-color:#425967!important}[data-theme=dark] input::-moz-placeholder,[data-theme=dark] textarea::-moz-placeholder{color:#9badb8;opacity:1}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:#9badb8;opacity:1}[data-theme=dark] :is(.eyebrow,.muted,.footnote,.login-copy,.login-session-note,.today-sync,.today-meta,.today-heading p:last-child,.today-balance,.today-events time,.safety-note,.section-title span,.chart-legend,.client-main span,.client-side span,.ledger-row span,.history-summary span,.history-list span,.renewal span,.renewal-client small,.forecast-row span,.finance-kpi small,.date-field span,.payment-panel label span,.expense-form label span,.client-form label span,.immutable-note,.absence-panel p,.client-summary span,.operating-result p:last-child,.compact-kpi span,.kpi span:not(.kpi-icon),.package-label,.presence-column>span,.presence-column>small,.calendar-legend small,.attendance-date span,.discovery-results button span,.period-selectors label){color:var(--muted)}[data-theme=dark] :is(.icon-button,.sync-refresh,.today-refresh,.calendar-toolbar button,.action-button,.edit-client-button,.quick-action,.filter-row button,.discovery-results button,.maintenance-actions button,.maintenance-dialog button,.swipe-actions button,.counter,.avatar,.mini-avatar,.login-icon){color:#c4e2f0;background:#29404f;border-color:#446070;box-shadow:none}[data-theme=dark] .quick-action small{color:#b9cbd6}[data-theme=dark] .quick-action svg{color:#c4e2f0;background:#365569}[data-theme=dark] :is(.bottom-nav button.active,.action-mode-row button.active,.filter-row button.active){color:#e4f3ff;background:#36566b}[data-theme=dark] :is(.renewal-remaining strong,.forecast-row .month,.presence-column>strong,.comparison-rows strong,.discovery-results>strong,.text-button){color:#a6d6f3}[data-theme=dark] :is(.status-ok,.write-ready,.pill,.today-present,.choice.present,.save-feedback.confirmed,.action-message.success,.privacy-note){color:#b4e8c6;background:#213f34;border-color:#416b54}[data-theme=dark] .login-card .privacy-note{background:transparent}[data-theme=dark] svg[aria-label="Logo personale"]>g[stroke="#27282b"]{stroke:#c9dce6}[data-theme=dark] :is(.alert-row,.status-warn,.bridge-banner,.bridge-upgrade,.client-alert,.today-warning,.today-pending,.today-ambiguous,.pill.warn){color:#f5d39a;background:#463a24;border-color:#746139}[data-theme=dark] :is(.pill.danger,.today-absent,.choice.absent,.action-message.error,.save-feedback.failed,.archive-zone){color:#ffc4c4;background:#462d34;border-color:#79505a}[data-theme=dark] :is(.login-error,.quick-error,.low-balance-badge,.archive-zone p){color:#ffb7b7}[data-theme=dark] .good-text{color:#a2dfb9!important}[data-theme=dark] .danger-text{color:#ffb7b7!important}[data-theme=dark] .next-appointment{color:#e0f4eb;background:linear-gradient(130deg,#274638,#243c52);border-color:#51786e}[data-theme=dark] .attendance-calendar-grid,[data-theme=dark] .calendar-cell{background:#182b36;color:var(--ink)}[data-theme=dark] :is(.calendar-corner,.calendar-client-name,.calendar-day-head){color:var(--ink);background:#243b49;border-color:#38515e}[data-theme=dark] .calendar-day-head.today{background:#376384;color:#fff}[data-theme=dark] .calendar-cell.today{background:#2b4657}[data-theme=dark] .calendar-cell.present{background:#254b36}[data-theme=dark] .calendar-cell.absent{background:#543038}[data-theme=dark] .calendar-cell.present.today{background:#346248}[data-theme=dark] .calendar-cell.absent.today{background:#75424a}[data-theme=dark] :is(.progress,.mini-bar,.client-package-progress){background:#344b57}[data-theme=dark] :is(.history-list article,.comparison-rows>div,.day-detail-row,.maintenance-history,.renewal-client,.renewal-clients){border-color:var(--line)}[data-theme=dark] .quick-review{color:#c4e2f0;background:#243d4b;border-color:#476b7d}[data-theme=dark] .presence-column.selected{background:#2b4657}[data-theme=dark] .swipe-revealed{background:#29443f!important;border-color:#65908b!important}[data-theme=dark] .maintenance-dialog .interactive-handle{background:transparent}[data-theme=dark] .day-detail-head button{color:var(--ink)}[data-theme=dark] .action-mode-row button{color:#b0c0ca}.viz-section{margin:18px 0;padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--ink);min-width:0}.viz-section h3,.viz-section h4{margin:0 0 12px}.viz-note{color:var(--muted);font-size:12px;line-height:1.6}.viz-donut-wrap{display:grid;place-items:center}.viz-donut{display:block;width:min(100%,260px);overflow:visible}.viz-donut circle[role=button]{cursor:pointer;transition:stroke-width .18s ease}.viz-donut circle[role=button]:focus-visible{outline:none;filter:brightness(1.25);stroke-width:34}.viz-svg-label{fill:var(--muted);font-size:11px}.viz-svg-value{fill:var(--ink);font-size:14px;font-weight:700}.viz-reset,.viz-toggles button{min-height:44px;padding:10px 12px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;cursor:pointer;font:inherit;font-size:13px}.viz-reset{margin:10px 0}.viz-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.viz-category{display:grid;gap:10px;padding:13px;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;min-width:0}.viz-category>span:first-child{display:flex;align-items:center;gap:7px;overflow-wrap:anywhere;font-size:13px}.viz-category svg{flex-shrink:0}.viz-category strong{font-size:16px;overflow-wrap:anywhere}.viz-category small{color:var(--muted);font-size:11px}.viz-category-track{height:5px;background:var(--line);border-radius:8px;overflow:hidden}.viz-category-track i{display:block;height:100%;transition:width .2s ease}.viz-category[aria-pressed=true],.viz-toggles button[aria-pressed=true]{background:var(--soft-surface,#e9f2f3);border-color:#588f9f}.viz-category:focus-visible,.viz-reset:focus-visible,.viz-toggles button:focus-visible,.viz-heat:focus-visible{outline:3px solid #6d9fbd;outline-offset:2px}.viz-toggles{display:flex;flex-wrap:wrap;gap:7px}.viz-toggles button{display:flex;align-items:center;gap:6px}.viz-toggles i{width:10px;height:10px;border-radius:50%}.viz-trend{width:100%;height:230px;display:block;margin-top:14px;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none}.viz-axis{stroke:var(--muted);opacity:.5}.viz-slider{display:grid;gap:8px;font-size:13px;font-weight:700}.viz-slider input{width:100%;min-height:44px;accent-color:#588ac4}.viz-month-ends{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:var(--muted)}.viz-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:0}.viz-totals>div{padding:10px 6px;background:var(--soft-surface,#edf3f6);border-radius:10px;min-width:0}.viz-totals dt{font-size:11px;color:var(--muted)}.viz-totals dd{font-size:13px;font-weight:700;margin:6px 0 0;overflow-wrap:anywhere}.viz-heat-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.viz-weekday{text-align:center;font-size:11px;color:var(--muted);padding:7px 0}.viz-heat{display:grid;gap:3px;place-items:center;min-height:48px;padding:6px 0;border:1px solid var(--line);border-radius:9px;cursor:pointer;color:#18352f}.viz-heat small{font-size:10px}.viz-heat.level-0{background:var(--surface);color:var(--muted)}.viz-heat.level-1{background:#dbeee7}.viz-heat.level-2{background:#a9d9c8}.viz-heat.level-3{background:#6bae95;color:#102c25}.viz-heat.level-4{background:#306f5d;color:#fff}.viz-heat[aria-pressed=true]{outline:3px solid #588ac4;outline-offset:-3px}.viz-day-detail{margin-top:15px;padding-top:15px;border-top:1px solid var(--line);font-size:13px}.viz-compare-metric{border-bottom:1px solid var(--line);padding:10px 0}.viz-compare-metric h4{margin:5px 0 12px}.viz-compare-metric p{font-size:13px}.viz-compare-row{display:grid;grid-template-columns:15px minmax(40px,1fr) minmax(75px,auto);align-items:center;gap:8px;margin:10px 0;font-size:12px}.viz-diverging{height:18px;position:relative;background:var(--soft-surface,#edf3f6);border-radius:4px}.viz-diverging:after{content:"";position:absolute;left:50%;top:-2px;bottom:-2px;border-left:1px solid var(--muted)}.viz-diverging i{position:absolute;top:2px;height:14px;border-radius:3px;transition:width .2s ease,left .2s ease}.viz-compare-row>strong{text-align:right;overflow-wrap:anywhere}[data-theme=dark] .viz-heat.level-1{background:#24483d;color:#d0eadf}[data-theme=dark] .viz-heat.level-2{background:#386a57;color:#e5f5ed}[data-theme=dark] .viz-heat.level-3{background:#74b49a;color:#122a20}[data-theme=dark] .viz-heat.level-4{background:#b0e1ca;color:#112d21}@media(max-width:380px){.viz-section{padding:12px}.viz-totals{grid-template-columns:1fr}.viz-totals>div{display:flex;justify-content:space-between;align-items:center}.viz-totals dd{margin:0}}@media(prefers-reduced-motion:reduce){.viz-donut circle[role=button],.viz-category-track i,.viz-diverging i{transition:none}}.finance-workspace{display:grid;gap:18px}.finance-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:6px;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.finance-nav button,.finance-switch button,.finance-areas button,.finance-more{min-height:46px;padding:10px 8px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.finance-nav button[aria-pressed=true],.finance-switch button[aria-pressed=true],.finance-areas button[aria-pressed=true]{color:var(--ink);border-color:#789aab;background:var(--soft-surface,#e8f1f5)}.finance-workspace button:focus-visible,.renewal-card-head:focus-visible{outline:2px solid #649dbc;outline-offset:3px}.finance-view{min-width:0;animation:finance-enter .22s ease-out}.finance-overview-links{display:grid;gap:12px;margin-top:18px}.finance-overview-links button{display:grid;grid-template-columns:1fr auto;gap:7px 15px;padding:20px;text-align:left;border:1px solid var(--line);border-radius:18px;color:var(--ink);background:var(--surface);cursor:pointer}.finance-overview-links button span{grid-column:1;font-size:13px;color:var(--muted)}.finance-overview-links button b{grid-column:2;grid-row:1/3;align-self:center;font-size:22px}.finance-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.finance-heading h3,.finance-heading h4{margin:6px 0}.finance-note{font-size:13px;line-height:1.6}.finance-areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0 10px}.finance-areas button{border-color:var(--line);background:var(--surface)}.finance-switch{display:flex;gap:6px;padding:5px;border-radius:14px;background:var(--soft-surface,#eef3f5)}.finance-switch button{flex:1}.finance-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.finance-fields label{display:grid;gap:7px;color:var(--muted);font-size:12px}.finance-fields select{width:100%;min-width:0;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink)}.finance-filter-total{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px;border-radius:15px;background:var(--soft-surface,#edf4f6);font-size:13px}.finance-more{width:100%;border-color:var(--line);background:var(--surface);margin:14px 0;color:var(--ink)}.finance-pipeline{margin-top:18px;border-top:1px solid var(--line);padding-top:12px}.finance-pipeline>summary{min-height:44px;padding:12px 0;cursor:pointer;font-weight:700}.renewal-cards{display:grid;gap:12px;margin-top:16px}.renewal-client-card{border:1px solid var(--line);border-radius:19px;overflow:hidden;background:var(--surface)}.renewal-card-head{display:flex;width:100%;gap:14px;align-items:center;padding:16px;border:0;background:transparent;text-align:left;color:var(--ink);cursor:pointer}.renewal-card-copy{display:grid;flex:1;min-width:0;gap:6px}.renewal-card-copy strong{overflow-wrap:anywhere}.renewal-card-copy small{color:var(--muted);line-height:1.4}.renewal-orbit{flex:0 0 58px;width:58px;height:58px;position:relative;display:grid;place-items:center;color:#427a79}.renewal-orbit svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transition:transform .5s cubic-bezier(.2,.8,.2,1)}.renewal-orbit b{font-size:18px}.renewal-client-card.is-open .renewal-orbit svg{transform:rotate(100deg)}.renewal-card-chevron{transition:transform .25s ease;font-size:23px;color:var(--muted)}.renewal-client-card.is-open .renewal-card-chevron{transform:rotate(90deg)}.renewal-card-expand{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .26s ease,visibility .26s}.renewal-client-card.is-open .renewal-card-expand{grid-template-rows:1fr;visibility:visible}.renewal-card-expand>div{overflow:hidden;min-height:0}.renewal-card-content{padding:0 18px 16px}.renewal-card-content p{color:var(--muted);font-size:13px}[data-theme=dark] .renewal-orbit{color:#9ed7ce}@keyframes finance-enter{0%{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.finance-areas{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-nav button{padding:10px 3px;font-size:12px}.finance-fields{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.finance-view{animation:none}.renewal-orbit svg,.renewal-card-chevron,.renewal-card-expand{transition:none}}.maintenance-panel{margin:18px 0;padding:18px;border:1px solid #dce4e1;border-radius:20px;background:#fff}.maintenance-panel h3{margin:0 0 14px;font-size:17px}.maintenance-actions{display:flex;flex-wrap:wrap;gap:9px}.maintenance-actions button,.maintenance-dialog button{min-height:44px;padding:10px 14px;border:1px solid #cfddd6;border-radius:13px;background:#edf6f0;color:#173d2a;font:inherit;font-weight:600;cursor:pointer}.maintenance-actions button{display:inline-flex;align-items:center;gap:8px}.maintenance-panel button:disabled,.maintenance-dialog button:disabled{opacity:.5;cursor:not-allowed}.maintenance-panel .muted,.maintenance-dialog .muted{font-size:13px;line-height:1.5}.maintenance-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;padding:24px;display:flex;align-items:center;justify-content:center;background:#10261b80;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.maintenance-dialog{width:min(100%,540px);max-height:calc(100dvh - 48px);overflow-y:auto;overscroll-behavior:contain;border-radius:24px;padding:24px;background:#fff;box-shadow:0 24px 90px #0003;color:#193329}.maintenance-dialog header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.maintenance-dialog header h3{margin:0;font-size:17px}.maintenance-dialog header button{display:grid;place-items:center;padding:10px}.maintenance-fields{display:grid;gap:14px}.maintenance-fields label{display:grid;gap:7px;font-size:14px;font-weight:600}.maintenance-fields input,.maintenance-fields select,.maintenance-fields textarea{box-sizing:border-box;width:100%;min-width:0;min-height:46px;padding:11px;font:inherit;font-size:16px;border:1px solid #cad8d0;border-radius:11px;background:#fff;color:#193329}.maintenance-fields textarea{min-height:85px;resize:vertical}.maintenance-fields p,.maintenance-review p{margin:0;line-height:1.5;overflow-wrap:anywhere}.maintenance-review{display:grid;gap:12px;padding:16px;border-radius:14px;background:#f1f6f3}.maintenance-review h4{margin:0}.maintenance-dialog footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px}.maintenance-error,.maintenance-success{padding:12px;border-radius:10px;line-height:1.5;background:#fff1e8}.maintenance-success{background:#e9f6ed}.maintenance-panel details{margin-top:15px}.maintenance-panel summary{cursor:pointer;padding:10px 0}.maintenance-history{display:grid;gap:5px;padding:12px 0;border-top:1px solid #e1e9e4;font-size:13px;overflow-wrap:anywhere}@media(max-width:600px){.maintenance-backdrop{padding:12px;align-items:flex-end}.maintenance-dialog{max-height:calc(100dvh - 24px);padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-radius:22px}.maintenance-actions button{flex:1 1 180px;justify-content:center}}.adaptive-home{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:14px;padding:18px;overflow:hidden;border-color:#7e9cae3d;background:linear-gradient(135deg,#ffffffe6,#f2f8fbcc)}.adaptive-home:after{content:"";position:absolute;width:160px;height:160px;right:-80px;top:-90px;border-radius:50%;background:#527d9914;pointer-events:none}.adaptive-home-copy{min-width:0}.adaptive-home h2{margin:2px 0 6px;font-size:clamp(20px,4.5vw,27px);line-height:1.08}.adaptive-home-copy>p:last-of-type{margin:0;color:#627480;font-size:13px;line-height:1.5}.adaptive-signals{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.adaptive-signal{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid #dfe8ed;border-radius:999px;font-size:10px;font-weight:850}.adaptive-signal.ok{color:#356649;background:#eef8f1;border-color:#d0e8d7}.adaptive-signal.warning{color:#805b20;background:#fff7e7;border-color:#ead9af}.adaptive-home-actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;max-width:260px}.adaptive-home-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:9px 11px;border:1px solid #d7e3e9;border-radius:12px;color:#315b72;background:#ffffffc7;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.adaptive-home-actions .adaptive-primary{color:#fff;background:#294f67;border-color:#294f67}.command-trigger{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:6px 8px;border:1px solid #dfe6ea;border-radius:12px;color:#536471;background:#fff;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.command-trigger kbd{padding:2px 5px;border:1px solid #d8e1e6;border-radius:6px;color:#75848d;background:#f6f8f9;font:inherit;font-size:9px}.command-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:flex-start;justify-content:center;padding:min(12vh,110px) 12px 24px;background:#0e19217a;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}.command-palette{width:min(100%,640px);max-height:min(76vh,720px);overflow:hidden;border:1px solid rgba(117,146,163,.28);border-radius:22px;background:#fafcfdf7;box-shadow:0 28px 80px #0d1c2640}.command-search{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 14px;border-bottom:1px solid #e0e7eb}.command-search>svg{color:#607782}.command-search input{width:100%;min-width:0;min-height:44px;padding:8px 0;border:0!important;outline:0;color:#26343d;background:transparent!important;font:inherit;font-size:16px}.command-search button{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:12px;color:#657781;background:#eef3f5;cursor:pointer}.command-content{max-height:calc(min(76vh,720px) - 72px);overflow-y:auto;padding:8px 10px 14px;overscroll-behavior:contain}.command-section+.command-section{margin-top:10px;padding-top:8px;border-top:1px solid #e3e9ed}.command-section-title{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 8px;color:#6b7b85;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.command-section-title small{color:#91a0a9;font-size:9px;letter-spacing:0;text-transform:none}.command-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:52px;padding:8px;border:0;border-radius:13px;color:#2c3d48;background:transparent;text-align:left;cursor:pointer}.command-row:hover,.command-row:focus-visible{background:#edf4f7;outline:none}.command-row:disabled{opacity:.45;cursor:default}.command-row-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:#315f7d;background:#e7f0f5}.command-row>span:nth-child(2){display:grid;gap:2px;min-width:0}.command-row small,.command-client small{color:#75848d;font-size:11px}.command-client{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px;border-radius:13px}.command-client:focus-within,.command-client:hover{background:#f1f6f8}.command-client-main{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;min-height:48px;padding:4px 2px;border:0;color:#2d3c46;background:transparent;text-align:left;cursor:pointer}.command-client-main>span{display:grid;gap:2px;min-width:0}.command-client-actions{display:flex;gap:5px}.command-client-actions button{min-height:38px;padding:7px 9px;border:1px solid #d7e2e8;border-radius:10px;color:#315b72;background:#fff;font:inherit;font-size:10px;font-weight:850;cursor:pointer}.command-client-actions button:disabled{opacity:.42;cursor:default}.command-empty{margin:8px;color:#73828b;font-size:12px;line-height:1.45}.client-sections{overflow-x:auto;scrollbar-width:none}.client-sections::-webkit-scrollbar{display:none}.client-sections button{flex:0 0 auto;white-space:nowrap}.client-timeline{margin-top:6px}.timeline-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px}.timeline-heading h4{margin:2px 0 0;font-size:18px}.timeline-heading>span{color:#73828c;font-size:11px;font-weight:800}.timeline-filters{display:flex;gap:6px;overflow-x:auto;margin-bottom:12px;padding-bottom:2px;scrollbar-width:none}.timeline-filters::-webkit-scrollbar{display:none}.timeline-filters button{flex:0 0 auto;min-height:38px;padding:7px 10px;border:1px solid #dce5ea;border-radius:999px;color:#536875;background:#fff;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.timeline-filters button[aria-pressed=true]{color:#fff;background:#315f7d;border-color:#315f7d}.timeline-list{position:relative;display:grid}.timeline-list:before{content:"";position:absolute;left:8px;top:15px;bottom:15px;width:1px;background:#dbe4e9}.timeline-item{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;padding:8px 0}.timeline-dot{position:relative;z-index:1;width:9px;height:9px;margin:10px 0 0 4px;border:2px solid #fff;border-radius:50%;background:#60849a;box-shadow:0 0 0 1px #b9cbd5}.timeline-pagamento .timeline-dot{background:#4f8a67}.timeline-assenza .timeline-dot{background:#b76b5f}.timeline-rettifica .timeline-dot{background:#9a7a45}.timeline-body{min-width:0;padding:10px 11px;border:1px solid #e2e9ed;border-radius:13px;background:#fafcfd}.timeline-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.timeline-meta strong{font-size:12px}.timeline-meta time{color:#81909a;font-size:10px}.timeline-body p{margin:5px 0 0;color:#5f717d;font-size:12px;line-height:1.45}.timeline-values{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px;font-size:11px}.timeline-values span{color:#687984}.timeline-values strong{color:#315f7d}.timeline-more{width:100%;min-height:42px;margin-top:8px;border:1px solid #dce5ea;border-radius:12px;color:#315f7d;background:#f5f9fb;font:inherit;font-size:12px;font-weight:800;cursor:pointer}[data-theme=dark] .adaptive-home{background:linear-gradient(135deg,#1f313df0,#1b2a35e0);border-color:#38505e}[data-theme=dark] .adaptive-home-copy>p:last-of-type,[data-theme=dark] .timeline-body p,[data-theme=dark] .command-empty{color:var(--muted)}[data-theme=dark] .adaptive-signal.ok{color:#b4e8c6;background:#213f34;border-color:#416b54}[data-theme=dark] .adaptive-signal.warning{color:#f5d39a;background:#463a24;border-color:#746139}[data-theme=dark] .adaptive-home-actions button:not(.adaptive-primary),[data-theme=dark] .command-trigger{color:#c4e2f0;background:#29404f;border-color:#446070}[data-theme=dark] .command-trigger kbd{color:#b9cbd6;background:#223845;border-color:#45606f}[data-theme=dark] .command-palette{color:var(--ink);background:#182731fa;border-color:#415966}[data-theme=dark] .command-search,[data-theme=dark] .command-section+.command-section{border-color:#344a56}[data-theme=dark] .command-search button,[data-theme=dark] .command-row:hover,[data-theme=dark] .command-row:focus-visible,[data-theme=dark] .command-client:hover,[data-theme=dark] .command-client:focus-within{color:var(--ink);background:#29404f}[data-theme=dark] .command-row,[data-theme=dark] .command-client-main{color:var(--ink)}[data-theme=dark] .command-row-icon{color:#c4e2f0;background:#365569}[data-theme=dark] .command-client-actions button,[data-theme=dark] .timeline-filters button,[data-theme=dark] .timeline-more{color:#c4e2f0;background:#29404f;border-color:#446070}[data-theme=dark] .timeline-filters button[aria-pressed=true]{color:#fff;background:#416d89}[data-theme=dark] .timeline-list:before{background:#405560}[data-theme=dark] .timeline-dot{border-color:#1b2a35;box-shadow:0 0 0 1px #546d7a}[data-theme=dark] .timeline-body{color:var(--ink);background:#243640;border-color:#344652}@media(max-width:620px){.adaptive-home{grid-template-columns:1fr}.adaptive-home-actions{max-width:none;justify-content:flex-start}.adaptive-home-actions button{flex:1 1 auto}.command-trigger span,.command-trigger kbd{display:none}.command-trigger{width:34px;padding:0}.command-backdrop{padding-top:58px}.command-palette{border-radius:20px}.command-client{grid-template-columns:1fr;gap:2px;padding:6px 7px 9px}.command-client-actions{padding-left:0}.command-client-actions button{flex:1}}@media(max-width:360px){.adaptive-home-actions button{flex-basis:100%}}@media(prefers-reduced-motion:reduce){.adaptive-home-actions button,.command-row,.command-client,.timeline-item{transition:none!important;animation:none!important}}.consistency-link{border:1px solid transparent;cursor:pointer;min-height:44px;text-align:left;white-space:normal}.consistency-link:focus-visible,.anomaly-section:focus-visible{outline:3px solid #315f7d;outline-offset:4px}.anomaly-section{margin-top:24px}.anomaly-detail{margin:14px 0;padding:18px}.anomaly-detail h4{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0;color:#8a5418;font-size:16px}.anomaly-detail p{font-size:14px;line-height:1.55}.anomaly-client{border-top:1px solid #e3eaf0;padding-top:16px;margin-top:16px}.anomaly-client>strong{display:block;overflow-wrap:anywhere;font-size:16px}.anomaly-client .action-button{min-height:44px;padding:10px 16px}@media(max-width:600px){.hero>.consistency-link{max-width:160px;flex-shrink:0;font-size:12px}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.fixed{position:fixed}.block{display:block}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;color:#17232c;background:#f3f6f8;font-synthesis:none;--ink: #17232c;--muted: #6e7d87;--line: rgba(57, 76, 89, .11);--surface: rgba(255, 255, 255, .92);--blue: #315f7d;--green: #397353;--amber: #a56d20;--red: #a34d4d}*{box-sizing:border-box}html{background:#f3f6f8}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 85% -5%,rgba(83,126,153,.1),transparent 28%),linear-gradient(180deg,#f7f9fa,#f1f5f7)}button,input{font:inherit}.shell{min-height:100vh;padding-bottom:94px}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px max(18px,env(safe-area-inset-left));padding-top:max(18px,env(safe-area-inset-top));background:#f7f9fad1;backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);border-bottom:1px solid rgba(55,75,89,.09);box-shadow:0 5px 24px #1c2e3b09}.topbar h1,.page-head h2,.hero h2{margin:2px 0 0}.topbar h1{font-size:22px}.brand-heading{display:flex;align-items:center;gap:10px;min-width:0}.brand-logo{width:48px;height:48px;flex:0 0 auto;filter:drop-shadow(0 4px 10px rgba(33,73,82,.12))}.login-brand-logo{display:block;width:96px;height:96px;margin:0 auto 14px;filter:drop-shadow(0 8px 18px rgba(33,73,82,.14))}.eyebrow{margin:0;color:#647482;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.readonly,.status-ok{display:inline-flex;align-items:center;gap:6px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}.readonly{padding:8px 10px;color:#315b7b;background:#e5f0f7}.status-ok{padding:10px 12px;color:#24613e;background:#e3f3e9}.sync-strip{display:flex;align-items:center;gap:8px;padding:8px 18px;color:#5d6c77;background:#edf2f5b8;border-bottom:1px solid #e1e8ec;font-size:11px;font-weight:700}.sync-dot{width:8px;height:8px;border-radius:50%;background:#4d8b66}.sync-copy{flex:1;min-width:0}.sync-refresh{display:grid;place-items:center;width:28px;height:28px;flex:0 0 auto;padding:0;border:1px solid #d8e1e6;border-radius:9px;color:#536c7c;background:#ffffffb8;cursor:pointer}.sync-refresh:disabled{opacity:.55;cursor:default}.content{width:min(100%,980px);margin:0 auto;padding:18px}.hero,.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.hero h2,.page-head h2{font-size:clamp(24px,7vw,32px);line-height:1.05}.muted,.footnote{color:#6b7883}.muted{margin:8px 0 0;font-size:14px}.quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:-4px 0 14px}.quick-action{display:grid;justify-items:start;gap:7px;min-width:0;padding:12px;border:1px solid rgba(55,75,89,.1);border-radius:17px;color:#294b61;background:#ffffffe0;text-align:left;box-shadow:0 8px 24px #2238490e;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.quick-action svg{padding:5px;width:30px;height:30px;color:#416983;background:#e9f1f6;border-radius:10px}.quick-action:active{transform:scale(.98);box-shadow:0 4px 12px #2238490a}.quick-action span{display:grid;min-width:0;gap:1px}.quick-action strong{font-size:12px}.quick-action small{overflow:hidden;color:#7a8790;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.quick-action:disabled{opacity:.45;cursor:default}.kpi-grid,.analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card{background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 30px #22384911,inset 0 1px #fffc}.kpi{display:grid;gap:7px;padding:17px;overflow:hidden}.kpi .kpi-icon{display:grid;place-items:center;width:36px;height:36px;margin-bottom:2px;border-radius:12px}.kpi .kpi-icon svg{width:19px;height:19px}.kpi span:not(.kpi-icon),.compact-kpi span{color:#71808b;font-size:12px;font-weight:700}.kpi strong{font-size:25px;letter-spacing:-.04em}.kpi.positive{background:linear-gradient(145deg,#f4fbf7f5,#ffffffeb);border-color:#4282592e}.kpi-income .kpi-icon{color:#376d50;background:#e7f3eb}.kpi-costs .kpi-icon{color:#855c32;background:#f7eee3}.kpi-balance .kpi-icon{color:#356e50;background:#dff0e5}.kpi-attendance .kpi-icon{color:#315f7d;background:#e4eef4}.kpi-link{position:relative;width:100%;border:1px solid var(--line);color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:transform .17s ease,box-shadow .17s ease,border-color .17s ease}.kpi-link:active{transform:scale(.985);box-shadow:0 5px 16px #2238490d}.kpi-link .card-chevron{position:absolute;right:12px;top:12px;color:#8a98a2}.section-anchor{scroll-margin-top:118px}.operating-result{display:grid;gap:8px;margin-top:12px;padding:18px}.operating-result h3{margin:4px 0 0;font-size:20px}.operating-result p:last-child{margin:0;color:#687782;font-size:12px;line-height:1.45}.compact-kpi{display:grid;gap:6px;padding:15px}.compact-kpi strong{font-size:20px}.finance-kpi{position:relative;overflow:hidden;min-height:112px;align-content:start}.finance-kpi:after{content:"";position:absolute;width:70px;height:70px;right:-24px;bottom:-30px;border-radius:50%;opacity:.42}.finance-kpi small{color:#89959d;font-size:10px;font-weight:700}.finance-income:after{background:#d7eadf}.finance-cost:after{background:#f0dfce}.finance-extra:after{background:#e5e9ec}.finance-residual:after{background:#dbe9e0}.break-even{margin-top:12px;padding:18px}.card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.break-even h3{margin:4px 0 12px;font-size:22px}.good-text{color:#3d7653!important}.progress,.mini-bar{height:7px;border-radius:999px;overflow:hidden;background:#edf1f3}.progress span,.mini-bar span{display:block;height:100%;border-radius:inherit;background:#4b8463}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:22px 2px 10px}.section-title h3{margin:0;font-size:16px}.section-title span{color:#78858f;font-size:12px}.alert-row{display:flex;align-items:center;gap:12px;padding:15px;color:#6e4b15;background:#fff5df;border:1px solid #f3ddb1;border-radius:16px}.alert-row div{display:grid;gap:2px}.alert-row span{font-size:13px;opacity:.8}.alert-link{width:100%;font:inherit;text-align:left;cursor:pointer}.alert-link .alert-chevron{flex:0 0 auto;margin-left:auto}.client-card-link{cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;box-shadow:0 6px 20px #2238490b}.client-card-link:active{transform:scale(.992);box-shadow:0 3px 10px #2238490a}.client-card-link:focus-visible,.kpi-link:focus-visible,.alert-link:focus-visible{outline:2px solid #527d99;outline-offset:2px}.renewal-alert{margin-top:12px}.counter{padding:7px 10px;border-radius:999px;background:#e9eef1;color:#536471;font-size:12px;font-weight:800}.list,.renewal-list,.forecast,.attendance-list{display:grid;gap:10px}.search-box{display:flex;align-items:center;gap:9px;margin-bottom:13px;padding:11px 13px;background:#fff;border:1px solid #dfe6ea;border-radius:14px}.search-box svg{color:#70808b}.search-box input{width:100%;border:0;outline:0;color:#16202a;background:transparent}.client-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;background:#fff;border:1px solid #e3e9ed;border-radius:16px}.avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;color:#234e69;background:linear-gradient(145deg,#e8f1f6,#d8e7ef);border:1px solid rgba(49,95,125,.1);box-shadow:inset 0 1px #fffc;font-size:12px;font-weight:900;letter-spacing:-.02em}.client-main,.client-side{display:grid;gap:2px}.client-package-progress{width:min(100%,150px);height:4px;margin-top:5px;overflow:hidden;border-radius:999px;background:#e9eef1}.client-package-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#477d62,#67a17d);transition:width .28s ease}.package-label{display:block;margin-top:4px;color:#536b7c;font-size:12px;font-weight:700}.low-balance-badge{grid-column:2 / -1;color:#972d31;font-size:12px;font-weight:800}.swipe-revealed{border-color:#78a4a8!important;background:#f5faf9!important}.swipe-actions{display:flex;grid-column:1 / -1;gap:8px;width:100%}.swipe-actions button{min-height:44px;flex:1;border:1px solid #c9dae0;border-radius:12px;background:#fff;color:#254b66;font-weight:800}.swipe-actions button:first-child{color:#24613e;background:#e7f4eb}.swipe-actions button:nth-child(2){color:#823f3f;background:#fff2f2}.swipe-actions button:disabled{opacity:.45}.absence-actions .cancel-choice{color:#254b66;background:#e8f0f4;box-shadow:none}@media(min-width:700px){.low-balance-badge{grid-column:2 / -1}}@media(prefers-reduced-motion:reduce){.client-card-link,.choice,.action-sheet{transition:none!important;animation:none!important}}.client-main span,.client-side span,.renewal span,.forecast-row span{color:#74818b;font-size:12px}.client-side{justify-items:end}.client-side strong{font-size:20px}.pill{grid-column:2 / -1;justify-self:start;padding:5px 8px;border-radius:999px;color:#3a694e;background:#e7f4eb;font-size:11px;font-weight:800}.pill.warn{color:#7c551c;background:#fff2d5}.pill.danger{color:#873c3c;background:#fde7e7}.danger-text{color:#a33f3f!important}.renewal{position:relative;display:grid;gap:12px;padding:16px;overflow:hidden;transition:transform .17s ease,box-shadow .17s ease}.renewal:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#78909d}.renewal-critical:before{background:#bd5b55}.renewal-warning:before{background:#d99a3f}.renewal-watch:before{background:#6d91a7}.renewal-safe:before{background:#57906a}.renewal.expanded{box-shadow:0 14px 34px #22384917}.renewal-toggle{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.renewal-toggle>div:first-child{display:grid;gap:3px}.renewal-value{display:flex;align-items:center;gap:7px}.renewal-chevron{color:#7d8b95;transition:transform .18s ease}.renewal-chevron.open{transform:rotate(90deg)}.renewal .mini-bar span{background:#527d99}.renewal-clients{display:grid;gap:7px;padding-top:2px;border-top:1px solid #edf1f3}.renewal-client{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;width:100%;padding:10px 4px;border:0;border-bottom:1px solid #f0f3f5;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.renewal-client:last-child{border-bottom:0}.renewal-client>span:first-child,.renewal-remaining{display:grid;gap:2px}.renewal-client-identity{display:flex!important;align-items:center;gap:9px!important}.renewal-client-identity>span{display:grid;gap:2px}.mini-avatar{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border-radius:10px;color:#315f7d;background:#e7f0f5;font-size:9px;font-style:normal;font-weight:900}.renewal-client small{color:#74818b;font-size:11px}.renewal-remaining{justify-items:end}.renewal-remaining strong{font-size:18px;color:#254b66}.renewal-client>svg{color:#8a98a2}.renewal-toggle:focus-visible,.renewal-client:focus-visible{outline:2px solid #527d99;outline-offset:3px;border-radius:8px}.empty-state.compact{padding:10px 0 2px}.chart-card{padding:16px}.chart-title{margin-top:0;flex-wrap:wrap}.chart-legend{display:flex;justify-content:flex-end;gap:14px;margin-bottom:12px;color:#65737e;font-size:11px;font-weight:800}.chart-legend span{display:inline-flex;align-items:center;gap:5px}.legend-dot{width:8px;height:8px;border-radius:2px}.legend-dot.receipts,.money-bar.receipts{background:#517c65}.legend-dot.costs,.money-bar.costs{background:#a6b4bd}.money-chart{display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:18px;height:210px;padding-top:8px}.money-column{display:grid;grid-template-rows:1fr auto auto;gap:5px;height:100%;text-align:center}.money-bars{display:flex;align-items:end;justify-content:center;gap:6px;height:150px}.money-bar{width:min(28px,35%);min-height:3px;border-radius:8px 8px 3px 3px}.money-column strong{font-size:12px}.money-column small{font-size:11px;font-weight:800}.presence-chart{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:20px 12px}.presence-column{display:grid;grid-template-rows:auto 125px auto auto;gap:5px;min-width:0;text-align:center;overflow-wrap:anywhere;width:100%;padding:4px;border:1px solid transparent;border-radius:12px;background:transparent;font:inherit;cursor:pointer}.presence-column.selected,.presence-column:focus-visible{border-color:#527d99;background:#f0f6fa;outline:none}.presence-column>strong{color:#315b7b;font-size:17px}.presence-track{display:flex;align-items:flex-end;justify-content:center;height:125px;min-width:0;background:linear-gradient(to top,#527d990d,#527d9900);border-radius:10px}.presence-track span{display:block;width:46%;min-height:5px;border-radius:8px 8px 3px 3px;background:#527d99}.presence-column>span{color:#536471;font-size:11px;font-weight:800}.presence-column>small{color:#77858f;font-size:10px}.day-detail{margin-top:18px;padding:14px;border:1px solid #dbe5eb;border-radius:14px;background:#f8fafb}.day-detail-head,.day-detail-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.day-detail-head button{border:0;background:transparent;min-width:44px;min-height:44px;cursor:pointer}.day-detail-row{border-top:1px solid #e2e9ed;padding:10px 0;font-size:14px}.day-detail-row span{min-width:0;overflow-wrap:anywhere}.day-detail-row strong{white-space:nowrap}.day-detail p{font-size:14px;line-height:1.5}.filter-row{display:flex;gap:8px;overflow-x:auto;padding:0 0 12px}.filter-row button{border:1px solid #dce5ea;border-radius:999px;background:#fff;padding:9px 14px;min-height:44px;white-space:nowrap;color:#405563;font-weight:700;cursor:pointer}.filter-row button.active{background:#315f7d;border-color:#315f7d;color:#fff}.discovery-card{margin:16px 0;padding:18px}.discovery-card h3{margin:0 0 12px}.discovery-card .search-box{margin-bottom:0}.discovery-results{display:grid;gap:6px;margin-top:12px}.discovery-results>strong{margin-top:10px;color:#536471;font-size:14px}.discovery-results button{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:8px 10px;border:1px solid #e2e9ed;border-radius:10px;background:#fff;text-align:left;cursor:pointer}.discovery-results button span{color:#536471;font-size:13px}.quick-command-form{display:flex;gap:8px}.quick-command-form input{min-width:0;flex:1;padding:11px;border:1px solid #dce5ea;border-radius:10px;font:inherit}.quick-command-form button,.history-actions button{min-height:44px;padding:10px 14px;border:0;border-radius:10px;background:#315f7d;color:#fff;font-weight:700;cursor:pointer}.quick-command-form button:disabled,.history-actions button:disabled{opacity:.5;cursor:default}.quick-error{color:#9b3f3f;font-size:14px}.quick-review{padding:12px;margin:12px 0;border:1px solid #abc8d8;border-radius:10px;background:#edf6fb;color:#244c66;font-size:14px;line-height:1.45}.period-comparison{padding:18px;margin-bottom:16px}.period-selectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.period-selectors label{display:grid;gap:6px;color:#536471;font-size:14px}.period-selectors select{width:100%;min-height:44px;padding:8px;border:1px solid #dce5ea;border-radius:10px;background:#fff}.comparison-rows{display:grid;gap:8px;margin-top:16px}.comparison-rows>div{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #e2e9ed;font-size:14px}.comparison-rows strong{color:#315f7d;white-space:nowrap}.history-drawer{overflow-y:auto;max-height:min(92dvh,900px)}.history-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.history-summary>div{display:grid;gap:5px;min-width:0;padding:10px;border-radius:10px;background:#f3f7f9}.history-summary span,.history-list span{color:#627480;font-size:13px}.history-summary strong{overflow-wrap:anywhere}.history-actions{display:flex;flex-wrap:wrap;gap:8px}.history-drawer h4{margin:24px 0 4px}.history-list{display:grid;gap:8px}.history-list article{display:flex;justify-content:space-between;gap:12px;padding:12px;border:1px solid #e2e9ed;border-radius:12px}.history-list article>div{display:grid;gap:4px;min-width:0}.history-list article>div:last-child{text-align:right;white-space:nowrap}@media(max-width:520px){.comparison-rows>div{grid-template-columns:1fr auto}.comparison-rows strong{grid-column:2}.quick-command-form{flex-wrap:wrap}.quick-command-form input{flex-basis:100%}}.attendance-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 13px;background:#fff;border:1px solid #e3e9ed;border-radius:15px}.attendance-date{display:grid;padding-right:10px;border-right:1px solid #e4eaee}.attendance-date strong{font-size:14px}.attendance-date span{color:#7d8992;font-size:10px}.attendance-row>strong{font-size:13px}.attendance-calendar-card{margin-bottom:14px;padding:12px;overflow:hidden}.calendar-toolbar{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;gap:8px}.calendar-toolbar>div{text-align:center}.calendar-toolbar h3{margin:2px 0 0;font-size:17px;text-transform:capitalize}.calendar-toolbar button{display:grid;place-items:center;width:36px;height:36px;border:1px solid #dce4e8;border-radius:10px;color:#254b66;background:#f8fafb;font-size:24px;line-height:1;cursor:pointer}.calendar-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 13px;margin:8px 0 10px;color:#687782;font-size:10px;font-weight:700}.calendar-legend span{display:inline-flex;align-items:center;gap:5px}.calendar-legend small{flex-basis:100%;text-align:center;color:#8a969f;font-size:9px;font-weight:600}.attendance-dot{display:inline-block;width:10px;height:10px;border-radius:50%;box-shadow:inset 0 0 0 1px #00000014}.present-dot{background:#4ea46b}.absent-dot{background:#c95555}.attendance-calendar-scroll{max-height:min(54vh,520px);overflow:auto;overscroll-behavior:contain;border:1px solid #e5eaed;border-radius:12px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.attendance-calendar-grid{display:grid;min-width:-moz-max-content;min-width:max-content;background:#fff}.calendar-row-fragment{display:contents}.calendar-corner,.calendar-client-name,.calendar-day-head,.calendar-cell{min-height:30px;border-right:1px solid #e7ecef;border-bottom:1px solid #e7ecef}.calendar-corner,.calendar-client-name{position:sticky;left:0;z-index:3;display:flex;align-items:center;padding:0 7px;background:#fff;box-shadow:1px 0 #dfe6ea}.calendar-corner{top:0;z-index:6;color:#5d6c77;background:#f4f7f9;font-size:10px;font-weight:900}.calendar-client-name{width:118px;overflow:hidden;color:#26333d;font-size:10px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.calendar-day-head,.calendar-cell{display:grid;place-items:center;width:30px;min-width:30px}.calendar-day-head{position:sticky;top:0;z-index:4;color:#71808b;background:#f4f7f9;font-size:9px;font-weight:900}.calendar-day-head.today{color:#fff;background:#315b7b}.calendar-cell{background:#fff}.calendar-cell.today{background:#eef4f8}.calendar-cell.present{background:#eef8f1}.calendar-cell.absent{background:#fff1f1}.calendar-cell.present.today{background:#e1f2e6}.calendar-cell.absent.today{background:#f9dddd}.calendar-cell .attendance-dot{width:11px;height:11px}@media(min-width:700px){.calendar-client-name{width:155px}.attendance-calendar-grid{grid-template-columns:155px!important}}.forecast-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:16px}.forecast-row .month{grid-column:1 / -1;font-weight:900;font-size:17px}.forecast-row>div:not(.month){display:grid;gap:4px}.note{display:flex;gap:10px;margin-top:12px;padding:14px;color:#5b6670}.note p{margin:0;font-size:13px;line-height:1.45}.bottom-nav{position:fixed;left:50%;bottom:max(10px,env(safe-area-inset-bottom));z-index:20;display:grid;grid-template-columns:repeat(5,1fr);width:min(calc(100% - 20px),620px);transform:translate(-50%);padding:6px;background:#f7f9fae0;backdrop-filter:blur(26px) saturate(155%);-webkit-backdrop-filter:blur(26px) saturate(155%);border:1px solid rgba(45,65,78,.12);border-radius:24px;box-shadow:0 14px 38px #1926302e,inset 0 1px #ffffffe6}.bottom-nav button{display:grid;place-items:center;gap:4px;min-width:0;padding:8px 2px 7px;border:0;border-radius:18px;color:#83919a;background:transparent;cursor:pointer;transition:color .16s ease,background .16s ease,transform .16s ease}.bottom-nav button svg{transition:transform .16s ease}.bottom-nav button span{max-width:100%;overflow:hidden;font-size:9px;font-weight:800;text-overflow:ellipsis}.bottom-nav button.active{color:#254f69;background:#dceaf2d6;box-shadow:inset 0 0 0 1px #315f7d0f}.bottom-nav button.active svg{transform:translateY(-1px) scale(1.06)}.bottom-nav button:active{transform:scale(.96)}.top-actions{display:flex;align-items:center;gap:8px}.icon-button{display:grid;place-items:center;width:34px;height:34px;border:1px solid #dfe6ea;border-radius:12px;color:#536471;background:#fff;cursor:pointer}.secure-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f4f7f9}.login-card{width:min(100%,430px);padding:28px;text-align:center;background:#fff;border:1px solid #e1e8ec;border-radius:24px;box-shadow:0 18px 50px #2238491f}.login-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 18px;border-radius:18px;color:#315b7b;background:#e5f0f7}.login-card h1{margin:5px 0 10px;font-size:28px;line-height:1.08}.login-copy{margin:0 auto 20px;color:#687782;font-size:14px;line-height:1.55}.login-button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;padding:13px 16px;border:0;border-radius:14px;color:#fff;background:#19303f;font-weight:800;cursor:pointer}.login-button:disabled{opacity:.65;cursor:default}.login-session-note{margin:18px 0 0;color:#6e7d87;font-size:12px;line-height:1.6}.login-error{margin:12px 0 0;color:#a33f3f;font-size:13px;font-weight:700}.privacy-note{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:16px;color:#587066;font-size:12px;font-weight:700}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.write-ready{color:#24613e;background:#e3f3e9}.sync-dot.pending{background:#b78a3d}.bridge-banner{display:flex;align-items:flex-start;gap:11px;margin-bottom:13px;padding:14px;color:#704f1b;background:#fff5df;border:1px solid #f0dba9;border-radius:15px}.bridge-banner div{display:grid;gap:3px}.bridge-banner span{font-size:12px;line-height:1.4}.client-row.actionable{grid-template-columns:42px minmax(0,1fr) auto}.action-button{grid-column:2 / -1;justify-self:end;padding:7px 11px;border:1px solid #cdd9df;border-radius:10px;color:#254b66;background:#edf4f7;font-size:11px;font-weight:800;cursor:pointer}.action-button:disabled{color:#8d989f;background:#f2f4f5;border-color:#e3e7e9;cursor:default}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:flex-end;justify-content:center;padding:12px;background:#121d2570;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.action-sheet{width:min(100%,560px);max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding:12px 18px max(20px,env(safe-area-inset-bottom));background:#fff;border-radius:24px 24px 18px 18px;box-shadow:0 -18px 50px #14222b33;transition:transform .22s cubic-bezier(.22,.61,.36,1);will-change:transform}.action-sheet.dragging{transition:none}.sheet-handle-zone{width:100%;min-height:28px;margin:-4px 0 0;padding-top:4px;touch-action:none;cursor:grab;-moz-user-select:none;user-select:none;-webkit-user-select:none}.sheet-handle-zone:active{cursor:grabbing}.sheet-handle{width:42px;height:5px;margin:0 auto 13px;border-radius:999px;background:#d8e0e5}.sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sheet-head h3{margin:4px 0 0;font-size:23px}.date-field{display:grid;gap:5px;margin:16px 0}.date-field span{color:#6d7a84;font-size:12px;font-weight:800}.date-field input{width:100%;padding:11px 12px;border:1px solid #dce4e8;border-radius:12px;color:#16202a;background:#f8fafb}.action-choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.choice{display:grid;justify-items:start;gap:5px;min-height:124px;padding:15px;border:1px solid #dde5e9;border-radius:16px;text-align:left;background:#fff;cursor:pointer}.choice.present{color:#285f3e;background:#eff8f2;border-color:#cfe6d6}.choice.absent{color:#823f3f;background:#fff2f2;border-color:#eed1d1}.choice span{color:currentColor;opacity:.72;font-size:11px}.choice:disabled{opacity:.6;cursor:default}.absence-panel{padding:14px;background:#f8fafb;border:1px solid #e1e7ea;border-radius:16px}.absence-panel p{margin:0 0 12px;color:#53636e;font-size:14px;line-height:1.45}.absence-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.absence-actions button{padding:11px;border:0;border-radius:11px;color:#fff;background:#19303f;font-weight:800;cursor:pointer}.text-button{margin-top:10px;padding:7px 0;border:0;color:#536b7a;background:transparent;font-weight:800;cursor:pointer}.action-mode-row{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:14px 0 4px;padding:4px;background:#eef2f4;border-radius:13px}.action-mode-row button{padding:9px 10px;border:0;border-radius:10px;color:#667681;background:transparent;font-size:12px;font-weight:800;cursor:pointer}.action-mode-row button.active{color:#19303f;background:#fff;box-shadow:0 2px 8px #22384914}.action-mode-row button:disabled{opacity:.42;cursor:default}.payment-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;background:#f8fafb;border:1px solid #e1e7ea;border-radius:16px}.payment-panel label{display:grid;gap:5px}.payment-panel label span{color:#6d7a84;font-size:11px;font-weight:800}.payment-panel input,.payment-panel select{width:100%;min-width:0;padding:10px 11px;border:1px solid #dce4e8;border-radius:11px;color:#16202a;background:#fff}.payment-panel .payment-note{grid-column:1 / -1}.payment-submit{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border:0;border-radius:12px;color:#fff;background:#19303f;font-weight:800;cursor:pointer}.payment-submit:disabled{opacity:.6;cursor:default}.safety-note{display:flex;align-items:flex-start;gap:8px;margin-top:14px;color:#607069;font-size:11px;line-height:1.4}.action-message{margin-top:12px;padding:11px 12px;border-radius:12px;font-size:12px;font-weight:800}.action-message.success{color:#315d42;background:#eaf6ee;border:1px solid #d0e8d8}.action-message.error{color:#8a3d3d;background:#fff0f0;border:1px solid #efcece}.status-warn{color:#7b541c;background:#fff1d4}.primary-action{padding:10px 13px;border:0;border-radius:12px;color:#fff;background:#19303f;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}.primary-action:disabled{opacity:.45;cursor:default}.bridge-upgrade{display:flex;align-items:flex-start;gap:9px;margin-bottom:14px;padding:12px 13px;color:#6e4b15;background:#fff5df;border:1px solid #f1ddb0;border-radius:14px;font-size:12px;line-height:1.4}.ledger-list,.consistency-list{display:grid;gap:9px}.ledger-row,.consistency-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px}.ledger-row>div,.consistency-row>div{display:grid;gap:3px;min-width:0}.ledger-row span,.consistency-row span{color:#74818b;font-size:11px;line-height:1.35}.ledger-row>strong,.consistency-row>strong{font-size:13px;text-align:right}.empty-state{padding:14px;color:#74818b;background:#f7f9fa;border:1px dashed #dce4e8;border-radius:14px;font-size:12px;text-align:center}.client-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px;padding:12px;background:#f6f8f9;border:1px solid #e1e7ea;border-radius:14px}.client-summary div{display:grid;gap:2px}.client-summary span{color:#78858f;font-size:10px;font-weight:700}.client-summary strong{font-size:12px}.client-alert{display:flex;align-items:flex-start;gap:7px;margin-top:9px;padding:10px 11px;color:#7b541c;background:#fff5df;border-radius:12px;font-size:11px;font-weight:700}.expense-sheet{max-height:calc(100vh - 24px);overflow-y:auto}.expense-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;padding:14px;background:#f8fafb;border:1px solid #e1e7ea;border-radius:16px}.expense-form label{display:grid;gap:5px}.expense-form label span{color:#6d7a84;font-size:11px;font-weight:800}.expense-form input,.expense-form select{width:100%;min-width:0;padding:10px 11px;border:1px solid #dce4e8;border-radius:11px;color:#16202a;background:#fff}.expense-form .expense-note{grid-column:1 / -1}.money-chart{overflow-x:auto;grid-template-columns:repeat(auto-fit,minmax(58px,1fr))}.page-head{padding:4px 2px 2px}.page-head h2,.hero h2{letter-spacing:-.035em}.counter{border:1px solid rgba(55,75,89,.08);background:#ffffffb8;box-shadow:inset 0 1px #fffc}.section-title h3{letter-spacing:-.015em}.break-even{background:linear-gradient(145deg,#fffffff5,#f4faf7f0)}.break-even .progress{height:8px}.progress span{background:linear-gradient(90deg,#3f7656,#69a47e)}.chart-card{background:linear-gradient(160deg,#fffffff5,#f8fafbe6)}.money-bar.receipts{background:linear-gradient(180deg,#67937a,#3f7256)}.money-bar.costs{background:linear-gradient(180deg,#c4cdd2,#8fa0aa)}.money-bar{box-shadow:0 4px 10px #2a3d4914}.alert-row{box-shadow:0 8px 24px #7b541c0f;transition:transform .16s ease,box-shadow .16s ease}.alert-row:active{transform:scale(.992)}.attendance-calendar-card{padding:14px;border-radius:21px;background:#fffffff0}.calendar-toolbar{padding:2px 2px 8px}.calendar-toolbar button{border-color:#315f7d1a;border-radius:12px;color:#315f7d;background:#edf4f7;box-shadow:inset 0 1px #fffc;transition:transform .15s ease,background .15s ease}.calendar-toolbar button:active{transform:scale(.94);background:#e3eef4}.calendar-legend{padding:7px 10px;border-radius:12px;background:#f7f9fa}.attendance-calendar-scroll{border-color:#374b591a;border-radius:15px;box-shadow:inset 0 1px 3px #20334009}.calendar-corner,.calendar-day-head{background:#f0f5f7}.calendar-day-head.today{background:linear-gradient(145deg,#3c6c8a,#28536f);box-shadow:inset 0 0 0 1px #ffffff1f}.calendar-cell.today{background:#edf4f8}.calendar-cell.present{background:#edf7f0}.calendar-cell.absent{background:#fdf0f0}.attendance-dot{box-shadow:inset 0 0 0 1px #0000000f,0 1px 3px #00000014}.present-dot{background:#4b9464}.absent-dot{background:#bd5959}.presence-track{background:linear-gradient(to top,#3f6f8c14,#3f6f8c00)}.presence-track span{background:linear-gradient(180deg,#6f9bb5,#416f8b);box-shadow:0 5px 12px #315f7d21}.attendance-row{border-color:var(--line);border-radius:17px;background:#ffffffeb;box-shadow:0 5px 18px #2238490a}.attendance-date{border-color:#374b591a}.search-box{border-color:var(--line);border-radius:16px;background:#ffffffe6;box-shadow:0 6px 20px #2238490a}.search-box:focus-within{border-color:#315f7d4d;box-shadow:0 0 0 3px #315f7d12,0 8px 24px #2238490d}.client-row{border-color:var(--line);border-radius:18px;background:#fffffff0}.action-button{border-color:#315f7d1f;border-radius:11px;color:#285873;background:#eaf2f6;transition:transform .15s ease,background .15s ease}.action-button:active{transform:scale(.96);background:#e1edf3}.pill{box-shadow:inset 0 0 0 1px #3a694e0f}.ledger-list,.consistency-list,.forecast{gap:10px}.ledger-row,.consistency-row,.forecast-row{border-color:var(--line);background:#ffffffed;box-shadow:0 6px 20px #2238490b}.ledger-row,.consistency-row{border-radius:17px}.forecast-row{border-radius:19px}.forecast-row .month{color:#274c63;letter-spacing:-.02em}.renewal .mini-bar{height:6px}.renewal-critical .mini-bar span{background:linear-gradient(90deg,#c56a62,#a94c4c)}.renewal-warning .mini-bar span{background:linear-gradient(90deg,#e1ad5d,#c7872f)}.renewal-watch .mini-bar span{background:linear-gradient(90deg,#7da3b9,#527d99)}.renewal-safe .mini-bar span{background:linear-gradient(90deg,#75a887,#4d8663)}.renewal-client{border-color:#374b5914;border-radius:10px;transition:background .15s ease,transform .15s ease}.renewal-client:active{transform:scale(.992);background:#f5f8f9}.operating-result{background:linear-gradient(145deg,#fffffff5,#f1f9f4f0);border-color:#42825929}.note{border-color:var(--line);background:#ffffffc2}.empty-state{background:#f8fafbd6;border-color:#374b5929}.sheet-backdrop{background:#121d2561;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}.action-sheet{border:1px solid rgba(255,255,255,.72);border-radius:28px 28px 20px 20px;background:#fcfdfdf7;box-shadow:0 -22px 60px #14222b38}.sheet-handle{width:38px;background:#cfd8dd}.sheet-head h3{letter-spacing:-.03em}.icon-button{border-color:var(--line);background:#ffffffd6;box-shadow:0 4px 12px #2238490a;transition:transform .15s ease}.icon-button:active{transform:scale(.94)}.action-mode-row{padding:4px;border:1px solid rgba(55,75,89,.06);background:#edf2f4}.action-mode-row button.active{color:#234d67;box-shadow:0 3px 10px #22384914}.date-field input,.payment-panel input,.payment-panel select,.expense-form input,.expense-form select{border-color:#374b591f;border-radius:12px;background:#fffffff5}.date-field input:focus,.payment-panel input:focus,.payment-panel select:focus,.expense-form input:focus,.expense-form select:focus{outline:0;border-color:#315f7d5c;box-shadow:0 0 0 3px #315f7d12}.payment-panel,.expense-form,.absence-panel,.client-summary{border-color:#374b5917;border-radius:18px;background:#f5f8f9}.choice{border-color:#374b591a;border-radius:18px;box-shadow:0 5px 16px #22384909;transition:transform .15s ease,box-shadow .15s ease}.choice:active{transform:scale(.985)}.payment-submit,.primary-action,.absence-actions button{border-radius:13px;background:linear-gradient(145deg,#27495e,#172f3e);box-shadow:0 7px 18px #19303f29;transition:transform .15s ease,box-shadow .15s ease}.payment-submit:active,.primary-action:active,.absence-actions button:active{transform:scale(.985);box-shadow:0 4px 10px #19303f1f}.action-message{border-radius:14px}.secure-shell{background:radial-gradient(circle at 50% 8%,rgba(70,112,138,.13),transparent 30%),linear-gradient(180deg,#f7f9fa,#eef3f5)}.login-card{border-color:var(--line);border-radius:28px;background:#ffffffeb;box-shadow:0 24px 70px #22384921;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.login-icon{border:1px solid rgba(49,95,125,.08);background:linear-gradient(145deg,#eaf3f8,#dfeef5)}.login-button{border-radius:15px;background:linear-gradient(145deg,#294b61,#172f3e);box-shadow:0 8px 22px #19303f2e}@media(prefers-reduced-motion:no-preference){.content>*{animation:premium-enter .22s ease both}.renewal-clients{animation:premium-rise .2s ease both}.action-sheet{animation:premium-rise .2s ease}}@keyframes premium-enter{0%{opacity:.72;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes premium-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:430px){.expense-form{grid-template-columns:1fr}.expense-form .expense-note{grid-column:auto}.quick-action{padding:10px 8px}.quick-action small{font-size:8px}}@media(min-width:700px){.client-row.actionable{grid-template-columns:42px minmax(0,1fr) 90px auto auto}.client-row.actionable .pill,.client-row.actionable .action-button{grid-column:auto}}.client-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.client-add-button{display:inline-flex;align-items:center;gap:6px}.client-row-actions{grid-column:2 / -1;display:flex;justify-content:flex-end;gap:7px}.client-row-actions .action-button{grid-column:auto}.edit-client-button{display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid rgba(49,95,125,.12);border-radius:11px;color:#31566d;background:#fff;font-size:11px;font-weight:800;cursor:pointer}.edit-client-button:disabled{opacity:.42;cursor:default}.client-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;justify-content:flex-end;background:#121d256b;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.client-drawer{width:min(94vw,520px);height:100%;overflow-y:auto;padding:max(22px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));background:#fcfdfdfa;border-left:1px solid rgba(255,255,255,.72);box-shadow:-24px 0 60px #14222b38;animation:drawer-in .22s ease both}.client-drawer .sheet-head{position:sticky;top:calc(-1*max(22px,env(safe-area-inset-top)));z-index:2;margin:calc(-1*max(22px,env(safe-area-inset-top))) -20px 0;padding:max(22px,env(safe-area-inset-top)) 20px 14px;background:#fcfdfdf0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.client-drawer .sheet-head h3{margin:4px 0 0;font-size:24px;letter-spacing:-.03em}.client-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:15px;padding:15px;border:1px solid rgba(55,75,89,.09);border-radius:19px;background:#f5f8f9}.client-form label{display:grid;align-content:start;gap:5px}.client-form label span{color:#6d7a84;font-size:11px;font-weight:800}.client-form input,.client-form select,.client-form textarea{width:100%;min-width:0;padding:11px 12px;border:1px solid rgba(55,75,89,.12);border-radius:12px;color:#16202a;background:#fff;font:inherit}.client-form textarea{resize:vertical;line-height:1.45}.client-form input:focus,.client-form select:focus,.client-form textarea:focus{outline:0;border-color:#315f7d5c;box-shadow:0 0 0 3px #315f7d12}.client-form-wide,.immutable-note{grid-column:1 / -1}.immutable-note{margin:-3px 1px 2px;color:#71808a;font-size:11px;line-height:1.4}.archive-zone{margin-top:18px;padding:13px;border:1px solid #efd4d4;border-radius:15px;background:#fff5f5}.archive-zone>button,.archive-zone div div button{display:inline-flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid #e8c6c6;border-radius:11px;color:#8a3d3d;background:#fff;font-size:12px;font-weight:800;cursor:pointer}.archive-zone p{margin:0 0 10px;color:#794646;font-size:12px;font-weight:700}.archive-zone div div{display:flex;gap:8px}.archive-zone .archive-confirm{color:#fff;background:#963f3f;border-color:#963f3f}@keyframes drawer-in{0%{opacity:.65;transform:translate(28px)}to{opacity:1;transform:none}}@media(max-width:520px){.client-drawer{width:94vw}.client-form{grid-template-columns:1fr}.client-form-wide,.immutable-note{grid-column:auto}.client-head-actions .counter{display:none}}@media(min-width:700px){.client-row-actions{grid-column:auto}.content{padding:28px}.kpi-grid,.analysis-grid{grid-template-columns:repeat(4,1fr)}.client-row{grid-template-columns:42px minmax(0,1fr) 90px auto}.pill{grid-column:auto;justify-self:end}.forecast-row{grid-template-columns:1.05fr repeat(4,1fr);align-items:center}.forecast-row .month{grid-column:auto}}.home-surface{position:relative;isolation:isolate}.home-surface:before,.home-surface:after{content:"";position:absolute;z-index:-1;pointer-events:none;border-radius:999px;filter:blur(42px);opacity:.62}.home-surface:before{width:230px;height:230px;top:18px;right:-86px;background:#489dbc2e}.home-surface:after{width:190px;height:190px;top:360px;left:-96px;background:#56977a24}.home-surface :is(.today-panel.card,.professional-details,.discovery-card,.kpi,.break-even,.workflow-latest){border-color:#52708424;background:linear-gradient(145deg,#ffffffe0,#f6fafcbd);box-shadow:0 18px 46px #1f364614,inset 0 1px #ffffffeb;-webkit-backdrop-filter:blur(18px) saturate(135%);backdrop-filter:blur(18px) saturate(135%)}.home-surface .today-panel{position:relative;overflow:hidden}.home-surface .today-panel:before{content:"";position:absolute;inset:0 0 auto 0;height:72px;pointer-events:none;background:linear-gradient(180deg,#ffffff6b,#fff0)}.home-surface .professional-details{box-shadow:0 16px 38px #1f364612,inset 0 1px #ffffffe0}.home-surface .professional-details>summary{position:relative;z-index:1}.home-surface .quick-action,.home-surface .today-refresh,.home-surface .today-quick-actions button{border-color:#52708424;background:#ffffffb8;box-shadow:inset 0 1px #ffffffdb,0 8px 22px #1f36460e}.home-surface .quick-action svg{background:#e5f0f6d1;box-shadow:inset 0 1px #ffffffd1}.home-surface .search-box,.home-surface .quick-command-form input{border-color:#52708426;background:#ffffffad;box-shadow:inset 0 1px #ffffffdb,0 8px 20px #1f36460b}.home-surface .search-box input{background:transparent}.home-surface .quick-command-form button{box-shadow:0 9px 22px #315f7d29,inset 0 1px #ffffff29}.home-surface .kpi{position:relative}.home-surface .kpi:before{content:"";position:absolute;top:0;left:16px;right:16px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.92),transparent);pointer-events:none}.home-surface .today-event,.home-surface .daily-summary>div,.home-surface .next-appointment{border-color:#5270841f;background:#fafcfdc2;box-shadow:inset 0 1px #ffffffc7}.home-surface .section-title{padding-inline:2px}.payment-profile-warning{grid-column:1 / -1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid rgba(175,126,49,.22);border-radius:14px;color:#624819;background:#fff6dde0}.payment-profile-warning>div{display:grid;gap:2px;min-width:0}.payment-profile-warning strong{font-size:13px}.payment-profile-warning span{font-size:11px;line-height:1.4}.payment-profile-warning button{min-height:44px;padding:9px 11px;border:1px solid rgba(122,88,30,.18);border-radius:11px;color:#624819;background:#ffffffc2;font-weight:800;cursor:pointer}.payment-profile-warning button:disabled{opacity:.46;cursor:default}[data-theme=dark] .home-surface:before{background:#53a4c22e}[data-theme=dark] .home-surface:after{background:#4a8b6c24}[data-theme=dark] .home-surface :is(.today-panel.card,.professional-details,.discovery-card,.kpi,.break-even,.workflow-latest){border-color:#8ba9bb29;background:linear-gradient(145deg,#1c2d38e6,#15242ed1);box-shadow:0 18px 46px #0000002e,inset 0 1px #ffffff0e}[data-theme=dark] .home-surface .today-panel:before{background:linear-gradient(180deg,#ffffff0b,#fff0)}[data-theme=dark] .home-surface :is(.quick-action,.today-refresh,.today-quick-actions button,.search-box,.quick-command-form input,.today-event,.daily-summary>div,.next-appointment){border-color:#8ba9bb26;background:#192a35d1;box-shadow:inset 0 1px #ffffff0b}[data-theme=dark] .payment-profile-warning{color:#f4d9a6;border-color:#caa0593d;background:#493a20db}[data-theme=dark] .payment-profile-warning button{color:#f4d9a6;border-color:#dcb46b33;background:#ffffff0f}@media(max-width:600px){.home-surface:before{width:190px;height:190px;right:-92px}.home-surface:after{width:150px;height:150px;left:-90px}.home-surface :is(.today-panel.card,.professional-details,.discovery-card,.kpi,.break-even,.workflow-latest){-webkit-backdrop-filter:blur(14px) saturate(128%);backdrop-filter:blur(14px) saturate(128%)}.payment-profile-warning{grid-template-columns:auto minmax(0,1fr)}.payment-profile-warning button{grid-column:1 / -1;width:100%}}@media(prefers-reduced-motion:no-preference){.home-surface :is(.quick-action,.kpi-link,.today-event,.today-refresh){transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}.home-surface .quick-action:not(:disabled):hover,.home-surface .kpi-link:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 20px 44px #1f364618,inset 0 1px #ffffffeb}}@media(prefers-reduced-motion:reduce){.home-surface:before,.home-surface:after,.home-surface .today-panel:before,.home-surface .kpi:before{display:none}.home-surface :is(.quick-action,.kpi-link,.today-event,.today-refresh){transition:none!important;animation:none!important}}
