:root{--ink:#172321;--muted:#66736f;--paper:#f4f6f5;--white:#fff;--forest:#175c50;--teal:#247b6c;--mint:#e9f3f0;--sand:#f5efe5;--amber:#c98231;--rose:#d76860;--line:#dfe5e2;--shadow:0 12px 32px rgba(20,42,38,.08);--radius:12px}
html{font-size:16px}body{background:var(--paper);font-family:Inter,'DM Sans',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}.prototype-bar{display:none}.app-shell{height:100vh}.sidebar{width:232px;flex-basis:232px;padding:20px 12px 12px;background:#142a27;border:0;color:#edf5f2}.brand{padding:0 9px 18px}.brand-mark{width:36px;height:36px;border-radius:9px;background:#2e8a78;box-shadow:none;font:700 17px Inter,'DM Sans',sans-serif}.brand strong{font:700 16px Inter,'DM Sans',sans-serif;letter-spacing:-.02em}.brand small,.sidebar .profile-card small,.sidebar .sidebar-plan small{color:#89a29c;font-size:10px}.mode-switch{margin:0 4px 14px;background:#203936}.mode-button{color:#91aaa4;font-size:10px;padding:8px 5px}.mode-button.active{background:#f5f8f7;color:#173f38;box-shadow:none}.main-nav,.patient-nav{padding-right:3px}.nav-item{border-radius:8px;padding:9px 10px;margin:2px 0;color:#b8cbc6}.nav-item span{font-size:15px;color:#77938c}.nav-item b{font-size:12px;font-weight:500}.nav-item:hover{background:#1e3935;color:white}.nav-item.active{background:#eef5f2;color:#173f38;font-weight:650}.nav-item.active span{color:#247b6c}.nav-item em{font-size:9px;background:#d68a37}.nav-label{color:#607c75;font-size:8px;margin:17px 10px 6px}.sidebar-plan{display:none}.profile-card{border-color:#2b413e;padding:12px 7px 2px}.profile-card strong{font-size:11px}.profile-card button{color:#8fa59f}.sidebar .avatar{background:#d8e9e4;color:#174b42}
.main-area{background:var(--paper)}.topbar{height:64px;padding:0 28px;background:rgba(255,255,255,.94);border-color:var(--line);backdrop-filter:blur(16px)}.search{height:38px;background:#f4f6f5;border-color:transparent;border-radius:8px}.search:focus-within{background:white;border-color:#b7cbc5;box-shadow:0 0 0 3px rgba(36,123,108,.08)}.search input{font-size:12px}.timezone-button,.icon-button{border-radius:8px}.timezone-button{height:38px}.primary-button,.secondary-button,.soft-button{border-radius:8px;font-size:11px;padding:10px 14px;box-shadow:none}.primary-button{background:#175c50}.primary-button:hover{background:#104c42;transform:none}.secondary-button{border-color:#d8dfdc}.secondary-button:hover{background:#f6f8f7}.soft-button{background:#e9f3f0;color:#1f6e61}.view{max-width:1480px;padding:26px 32px 56px}.page-head{margin-bottom:20px;align-items:center}.eyebrow{font-size:9px;letter-spacing:.11em;color:#357b6f}.page-head h1{font:700 clamp(25px,3vw,32px) Inter,'DM Sans',sans-serif;letter-spacing:-.04em;margin:5px 0}.page-head p{font-size:13px}.head-actions{gap:7px}.segmented{border-radius:8px}.segmented button{border-radius:6px;font-size:10px}.segmented button.active{background:#1c554b}
.card{border-color:#dfe5e2;border-radius:12px;box-shadow:none}.welcome-card{min-height:184px;padding:25px 27px;background:white;color:var(--ink);border-left:4px solid #247b6c}.welcome-card:after{display:none}.welcome-card .eyebrow{color:#357b6f!important}.welcome-card h2{font:700 27px Inter,'DM Sans',sans-serif;letter-spacing:-.04em;margin:9px 0 8px}.welcome-card p{color:var(--muted);font-size:13px;line-height:1.55}.welcome-actions{margin-top:20px}.welcome-actions .primary-button{background:#175c50;color:white}.welcome-actions .soft-button{background:#e9f3f0;color:#1f6e61}.today-card{padding:21px}.card-title h3{font-size:14px}.card-title a,.text-link{font-size:11px}.next-time{font:700 25px Inter,'DM Sans',sans-serif;letter-spacing:-.03em}.next-type{font-size:11px}.metrics{gap:12px;margin:16px 0}.metric{padding:17px}.metric-top{font-size:11px}.metric-icon{border-radius:7px}.metric-value{font:700 24px Inter,'DM Sans',sans-serif;letter-spacing:-.035em;margin:13px 0 4px}.metric-foot{font-size:10px}.chart-card,.activity-card{padding:20px}.activity strong{font-size:11px}.activity p{font-size:10px}.activity time{font-size:9px}
.toolbar{gap:8px}.field{height:40px;border-radius:8px;font-size:12px}.count-chip{font-size:11px}.table-card{border-radius:10px}.data-table th{background:#f7f9f8;font-size:9px;padding:12px 15px}.data-table td{padding:13px 15px;font-size:11px}.person strong{font-size:12px}.person small{font-size:10px}.badge{border-radius:6px;font-size:9px;padding:4px 7px}.row-action{border-radius:6px;padding:5px 7px}.row-action:hover{background:#edf2f0}.avatar{border-radius:9px}.modal-backdrop{background:rgba(12,25,23,.55);backdrop-filter:blur(5px)}.modal{border-radius:14px;box-shadow:0 24px 70px rgba(10,28,24,.25)}.modal h2{font:700 23px Inter,'DM Sans',sans-serif;letter-spacing:-.035em}.modal p{font-size:11px}.form-group label{font-size:11px}.form-group input,.form-group select,.form-group textarea{border-radius:8px;font-size:12px;padding:10px 11px}.toast{border-radius:8px;font-size:11px}
.entity-card h3,.booking-type h3,.empty-state h2,.patient-hero h2,.report-title h2,.patient-form-head h2,.patient-detail-head h2,.agenda-editor h3,.dsm-hero h2{font-family:Inter,'DM Sans',sans-serif!important;letter-spacing:-.03em}.entity-card p,.booking-type>p{font-size:10px}.entity-facts span{font-size:9px}.entity-facts strong{font-size:11px}.section-note strong{font-size:10px}.section-note p{font-size:9px}.currency-amount,.patient-amount b,.patient-date strong,.patient-summary-card strong,.session-kpis strong,.patient-detail-metrics strong{font-family:Inter,'DM Sans',sans-serif!important;letter-spacing:-.025em}.payment-tabs button,.patient-admin-tabs button{font-size:11px}.patient-summary-card small{font-size:9px}.patient-filterbar .field{font-size:11px}.patient-create-form .form-group label{font-size:11px}.patient-create-form .form-group input,.patient-create-form .form-group select,.patient-create-form .form-group textarea{font-size:12px}.field-help{font-size:9px}.patient-section-title strong{font-size:13px}.patient-section-title small{font-size:9px}.agenda-rule-strip span{font-size:9px}.agenda-navigation strong{font-size:12px}.agenda-editor-form>label,.editor-two label{font-size:10px}.agenda-editor-form input,.agenda-editor-form select,.agenda-editor-form textarea{font-size:11px}.calendar-item span{font-size:9px}.session-flow-note p,.section-heading p{font-size:9px}.session-flow-note strong{font-size:11px}.payment-origin{font-size:9px}.dsm-hero p{font-size:11px}.dsm-search input{font-size:11px}.report-step-head h3{font-size:13px}.report-step-head p,.report-template small{font-size:9px}
.package-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:7px;background:#e4f2ed;color:#176253;font-size:9px;font-weight:700;white-space:nowrap}.package-badge b{font-size:12px}.package-badge.amber{background:#fff4df;color:#9a641f}.package-badge.danger{background:#fdecea;color:#ae433d}.package-badge.gray{background:#eef1f0;color:#70807b}.package-cell{display:flex;align-items:center;gap:7px;border:0;background:transparent;padding:0;cursor:pointer}.package-cell small{color:#28786b;font-weight:650}.package-alert{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 15px;margin-bottom:14px;border:1px solid #ead8b9;border-radius:10px;background:#fffaf0}.package-alert>div{display:flex;align-items:center;gap:11px}.package-alert>div>span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#f5e6c9;color:#9a641f;font-weight:800}.package-alert strong{display:block;font-size:11px}.package-alert p{margin:2px 0 0;color:#765f3d;font-size:9px}.agenda-package-notice{display:flex;align-items:flex-start;gap:9px;padding:11px;border-radius:9px;margin:-2px 0 2px}.agenda-package-notice>span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-weight:800;flex:0 0 auto}.agenda-package-notice strong,.agenda-package-notice small{display:block}.agenda-package-notice strong{font-size:10px}.agenda-package-notice small{font-size:8px;line-height:1.45;margin-top:2px}.agenda-package-notice.paid{background:#e8f4ef;color:#175f51}.agenda-package-notice.paid>span{background:#cfe9df}.agenda-package-notice.due{background:#fff5e6;color:#8e5e21}.agenda-package-notice.due>span{background:#f5e2bd}.calendar-item.prepaid-appointment{box-shadow:inset 0 0 0 1px rgba(17,96,81,.18)}.calendar-item .paid-mark{background:#176253!important;color:#fff!important;border-radius:50%;font-style:normal;width:15px;height:15px;display:grid;place-items:center;right:4px;top:4px}.legend-prepaid{color:#176253;font-weight:700}
.package-ledger{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:23px}.package-ledger-card{padding:16px}.package-ledger-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.package-ledger-head h3{font-size:13px;margin:4px 0}.package-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0 10px}.package-numbers span{font-size:8px;color:var(--muted)}.package-numbers b{display:block;font-size:17px;color:var(--ink);margin-bottom:2px}.package-progress{height:6px;border-radius:99px;background:#e8edeb;overflow:hidden}.package-progress i{display:block;height:100%;border-radius:inherit;background:#2a8776}.package-ledger-foot{display:flex;align-items:center;justify-content:space-between;margin-top:11px}.package-ledger-foot small{font-size:8px;color:var(--muted)}.package-ledger-foot button{border:0;background:transparent;color:#176253;font-size:9px;font-weight:700;cursor:pointer}.package-section-heading{margin-top:22px}.package-modal-head,.package-ledger-head{display:flex;justify-content:space-between}.package-modal-layout{display:grid;grid-template-columns:1.25fr .85fr;gap:22px;margin-top:20px}.package-history{border-left:1px solid var(--line);padding-left:20px}.package-history h3{font-size:12px;margin:0 0 10px}.package-history-item{padding:11px 0;border-bottom:1px solid var(--line)}.package-history-item>div:first-child{display:inline-flex;flex-direction:column;max-width:68%}.package-history-item>div:first-child strong{font-size:10px}.package-history-item small{font-size:8px;color:var(--muted);margin-top:3px}.package-history-item>.package-badge{float:right}.package-history-stats{display:flex;gap:11px;clear:both;padding-top:8px;font-size:8px;color:var(--muted)}.package-empty{text-align:center;padding:25px 8px;color:var(--muted)}.package-empty>span{display:grid;place-items:center;width:38px;height:38px;margin:0 auto 9px;border-radius:10px;background:var(--mint);color:var(--forest);font-weight:800}.package-empty strong{font-size:11px;color:var(--ink)}.package-empty p{font-size:9px}.package-automation-note{display:flex;gap:10px;align-items:center;padding:11px 13px;margin-top:17px;border-radius:9px;background:#edf5f2}.package-automation-note>span{font-size:18px;color:#227365}.package-automation-note strong,.package-automation-note small{display:block}.package-automation-note strong{font-size:10px}.package-automation-note small{font-size:8px;color:var(--muted);margin-top:2px}.patient-package-card .card-title small{display:block;font-size:8px;color:var(--muted);margin-top:3px}.patient-package-balance{display:flex;align-items:baseline;gap:8px;margin:17px 0 9px}.patient-package-balance strong{font-size:28px}.patient-package-balance span{font-size:9px;color:var(--muted)}.package-mini-stats{display:flex;justify-content:space-between;font-size:8px;color:var(--muted);margin:8px 0 14px}.package-empty-inline{font-size:9px;color:var(--muted);line-height:1.5;min-height:70px}
.whatsapp-reminder-button,.whatsapp-primary{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:8px;background:#1f9d72;color:white;font-size:9px;font-weight:750;padding:7px 9px;cursor:pointer;white-space:nowrap}.whatsapp-reminder-button:hover,.whatsapp-primary:hover{background:#16845f}.whatsapp-primary{font-size:11px;padding:10px 15px}.collection-modal-head{display:flex;gap:12px;align-items:flex-start}.collection-modal-head>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#e2f4ec;color:#16845f;font-size:18px}.collection-modal-head h2{margin:4px 0}.debt-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:18px 0}.debt-summary>div{background:#f8faf9;padding:11px}.debt-summary small,.debt-summary strong{display:block}.debt-summary small{font-size:8px;color:var(--muted);margin-bottom:4px}.debt-summary strong{font-size:11px}.collection-toggle{display:flex;gap:9px;align-items:flex-start;padding:11px 0;cursor:pointer}.collection-toggle strong,.collection-toggle small{display:block}.collection-toggle strong{font-size:10px}.collection-toggle small{font-size:8px;color:var(--muted);margin-top:2px}.collection-channels{display:grid;gap:7px;margin-top:13px}.collection-channels button{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);border-radius:9px;background:#fff;padding:10px;cursor:pointer}.collection-channels button.selected{border-color:#74b6aa;background:#eef7f4}.collection-channels button>span{font-size:15px;color:#247b6c}.collection-channels strong,.collection-channels small{display:block}.collection-channels strong{font-size:10px}.collection-channels small{font-size:8px;color:var(--muted);margin-top:2px}
.daily-revenue{padding:18px;margin:14px 0}.daily-revenue-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.daily-revenue-head h3{font-size:16px;margin:4px 0}.daily-revenue-head p{font-size:9px;color:var(--muted);margin:0}.daily-revenue-head label{font-size:9px;font-weight:700}.daily-revenue-head input{display:block;height:36px;margin-top:5px;border:1px solid var(--line);border-radius:8px;padding:0 10px;font:inherit;color:var(--ink);background:#fff}.daily-revenue-totals{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0 12px}.daily-revenue-totals article{padding:11px;border:1px solid var(--line);border-radius:9px;background:#f7f9f8;opacity:.62}.daily-revenue-totals article.has-value{background:#edf6f3;border-color:#cde3dc;opacity:1}.daily-revenue-totals small,.daily-revenue-totals strong{display:block}.daily-revenue-totals small{font-size:8px;color:var(--muted);margin-bottom:5px}.daily-revenue-totals strong{font-size:14px;letter-spacing:-.02em}.daily-revenue-detail{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:11px;border-top:1px solid var(--line)}.daily-revenue-detail strong,.daily-revenue-detail small{display:block}.daily-revenue-detail strong{font-size:10px}.daily-revenue-detail small{font-size:8px;color:var(--muted);margin-top:3px}
.forecast-card{padding:18px;margin:14px 0 20px;border-left:3px solid #397f73}.forecast-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.forecast-head h3,.payment-range-toolbar h3{font-size:16px;margin:4px 0}.forecast-head p,.payment-range-toolbar p{font-size:9px;color:var(--muted);margin:0}.date-range{display:flex;align-items:flex-end;gap:7px}.date-range label{font-size:8px;font-weight:700;color:var(--muted)}.date-range input{display:block;height:36px;margin-top:5px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 9px;color:var(--ink);font:500 10px Inter,sans-serif}.date-range>span{padding-bottom:10px;color:var(--muted)}.date-range.compact input{height:34px}.forecast-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.forecast-overview article{padding:11px 13px;border-radius:9px;background:#f3f6f5}.forecast-overview small,.forecast-overview strong{display:block}.forecast-overview small{font-size:8px;color:var(--muted)}.forecast-overview strong{font-size:20px;margin-top:4px}.forecast-currencies{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.forecast-currencies article{min-height:88px;padding:12px;border:1px solid var(--line);border-radius:9px}.forecast-currencies small,.forecast-currencies strong,.forecast-currencies span,.forecast-currencies em{display:block}.forecast-currencies small{font-size:8px;color:var(--muted)}.forecast-currencies strong{font-size:14px;margin-top:5px}.forecast-currencies span{font-size:8px;color:var(--muted);margin-top:9px}.forecast-currencies em{font-size:8px;color:#267567;font-style:normal;margin-top:3px}.forecast-list{margin-top:13px;border-top:1px solid var(--line)}.forecast-list>div{display:grid;grid-template-columns:95px 1fr auto;gap:12px;align-items:center;padding:9px 3px;border-bottom:1px solid #edf0ef}.forecast-list span,.forecast-list small{font-size:8px;color:var(--muted)}.forecast-list strong{font-size:10px}.forecast-empty{padding:18px;margin-top:12px;border-radius:9px;background:#f6f8f7;text-align:center;color:var(--muted);font-size:9px}.payment-range-toolbar{display:grid;grid-template-columns:1fr auto;gap:13px 20px;padding:16px;margin-bottom:10px}.payment-range-totals{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding-top:12px;border-top:1px solid var(--line)}.payment-range-totals span{padding:8px 10px;border-radius:8px;background:#f5f8f7}.payment-range-totals small,.payment-range-totals strong{display:block}.payment-range-totals small{font-size:8px;color:var(--muted)}.payment-range-totals strong{font-size:11px;margin-top:3px}
@media(max-width:760px){.sidebar{top:0}.view{padding:20px 14px 45px}.topbar{padding:0 12px}.page-head h1{font-size:26px}.page-head p{font-size:12px}.welcome-card{padding:21px}.welcome-card h2{font-size:23px}.metrics{grid-template-columns:1fr 1fr}.metric{padding:14px}.metric-value{font-size:20px}}
@media(max-width:900px){.package-ledger{grid-template-columns:1fr 1fr}.package-modal-layout{grid-template-columns:1fr}.package-history{border-left:0;border-top:1px solid var(--line);padding:16px 0 0}}
@media(max-width:900px){.forecast-currencies{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.package-alert{align-items:flex-start;flex-direction:column}.package-ledger{grid-template-columns:1fr}.debt-summary{grid-template-columns:1fr}.package-modal-head{gap:10px}.whatsapp-reminder-button{font-size:0}.whatsapp-reminder-button span{font-size:12px}.daily-revenue-head,.forecast-head{align-items:flex-start;flex-direction:column}.daily-revenue-totals{grid-template-columns:1fr 1fr}.daily-revenue-detail{align-items:flex-start;flex-direction:column}.forecast-overview{grid-template-columns:1fr 1fr}.forecast-currencies{grid-template-columns:1fr 1fr}.forecast-list>div{grid-template-columns:65px 1fr}.forecast-list small{grid-column:2}.payment-range-toolbar{grid-template-columns:1fr}.payment-range-totals{grid-template-columns:1fr 1fr}.date-range{width:100%}.date-range label{flex:1}.date-range input{width:100%}}
@media(max-width:420px){.metrics{grid-template-columns:1fr}.page-head{margin-bottom:16px}}
