/* Calm, layered clinic workspace. Typography remains in readability.css. */
.dashboard{--line:#cbdde1;--border:#cbdde1;--workspace-base:#e7eff2;--card-shadow:0 8px 24px #173a5010}
.dashboard .main{background:radial-gradient(ellipse at 95% 0,#d2e9e5 0,transparent 48%),radial-gradient(ellipse at 0 65%,#dce7f1 0,transparent 55%),var(--workspace-base)}
.dashboard .sidebar{background:linear-gradient(180deg,#f2f8f8,#e5f0ef);border-color:#c7dcdf}
.dashboard .topbar{background:#f2f7f8ed;border-color:#ccdee2}
.dashboard .workspace{background:#d6eae7;border-color:#bcd7d2;border-radius:15px}
.dashboard .side-nav button{color:#415d6c;border-radius:11px}
.dashboard .side-nav button.active{background:#123b50;color:#fff;border-color:#123b50;box-shadow:0 6px 14px #153b5020}
.dashboard .side-nav button.active svg{stroke:#8fe3d5}
.dashboard .side-nav button.active .count{background:#28586a;color:#d9f6ef}
.dashboard .side-nav button:hover:not(.active){background:#dcece9}
.dashboard .help-card{background:#d5e9e5;border-color:#b7d6d0}
.dashboard .panel{background:#f3f8f9;border-color:#c8dce0;border-radius:18px;box-shadow:var(--card-shadow)}
.dashboard .panel-title{padding-bottom:17px;border-bottom:1px solid #cbdee2;margin-bottom:20px}
.dashboard .panel-title h2{gap:9px;align-items:center}
.dashboard .panel-title h2>svg{width:29px;height:29px;padding:6px;background:#d3e9e5;border-radius:9px;box-sizing:content-box;stroke:#087568;flex-shrink:0}
.dashboard .panel-title button,.dashboard .panel-title select{background:#e0edeF;border-color:#bfd5da;color:#254d60;min-height:36px;border-radius:9px}
.dashboard .section-visual-header,.dashboard.route-plans .records-toolbar{background:linear-gradient(110deg,#17465b,#0b263d);border:1px solid #28556a;box-shadow:0 10px 30px #163c5018;border-radius:20px;min-height:155px;padding:27px 30px;isolation:isolate;overflow:hidden}
.dashboard .section-visual-header:after,.dashboard.route-plans .records-toolbar:after{content:'';position:absolute;width:260px;height:260px;left:-100px;top:-120px;border:40px solid #76cfc217;border-radius:50%;z-index:-1;pointer-events:none}
.dashboard .section-visual-header h2,.dashboard.route-plans .records-toolbar h2{color:#fff;font-size:25px}
.dashboard .section-visual-header p,.dashboard.route-plans .records-toolbar p{color:#d0e4ec;font-size:15px;line-height:1.85}
.dashboard .section-visual-header .eyebrow{color:#aee2da;font-size:12px;letter-spacing:1px}
.dashboard .large-section-icon{width:65px;height:65px;background:#25586b;border-color:#4a7b87;box-shadow:0 8px 18px #051b3326;transform:rotate(-6deg);border-radius:19px}
.dashboard .large-section-icon svg{stroke:#a1e7da;width:32px;height:32px}
.dashboard .section-visual-header .number-pill,.dashboard.route-plans .records-toolbar .number-pill{background:#305d6c;color:#e0fbf4;border-color:#4a7a83}
.dashboard .section-visual-header .outline{background:#234f62;color:#e3f6f1;border-color:#487787}
.dashboard .insight-stat{border-radius:17px;background:#d9ece7;border-color:#bad8d0;box-shadow:var(--card-shadow);padding:21px}
.dashboard .insight-stat.stat-0{background:linear-gradient(120deg,#153f55,#0d2b42);border-color:#24566b}
.dashboard .insight-stat.stat-0 .stat-top,.dashboard .insight-stat.stat-0 .stat-foot,.dashboard .insight-stat.stat-0 small{color:#d0e7ed}
.dashboard .insight-stat.stat-0 .stat-value{color:#fff}
.dashboard .insight-stat.stat-0 .iconbox{background:#285b6c;border-color:#4b7c84;color:#9fe6d9}
.dashboard .insight-stat.stat-0 .stat-foot{border-color:#3b6476}.dashboard .insight-stat.stat-0 .stat-foot span{color:#9fe6d9}
.dashboard .insight-stat.stat-1{background:linear-gradient(125deg,#d8ede7,#cce7e0)}
.dashboard .insight-stat.stat-2{background:linear-gradient(125deg,#e0eaf3,#d2e2ef);border-color:#bdd0df}
.dashboard .insight-stat.stat-3{background:linear-gradient(125deg,#e6e8f3,#dcdfee);border-color:#c9cce0}
.dashboard .stat-top{color:#385969;font-weight:500}.dashboard .stat-foot{color:#3d5c6b;border-color:#bcd3d6}
.dashboard .stat-decoration{opacity:.16}.dashboard .stat-sparkline{opacity:.18}
.dashboard .workflow-shortcuts{gap:14px}
.dashboard .workflow-shortcuts>button,.dashboard .workflow-shortcuts>a{background:#dcece9;border:1px solid #bfd9d2;border-radius:14px;box-shadow:0 3px 10px #19394f08;transition:transform .2s,background .2s}
.dashboard .workflow-shortcuts>:nth-child(even){background:#dfeaf2;border-color:#c0d4e2}
.dashboard .workflow-shortcuts>button:hover,.dashboard .workflow-shortcuts>a:hover{transform:translateY(-3px);background:#cce7df}
.dashboard .workflow-shortcuts>button>span,.dashboard .workflow-shortcuts>a>span{background:#f0f8f5;border-color:#b8d7ce;border-radius:12px}
.dashboard .agenda-home{background:#e4f0ec}.dashboard .day-completion{background:#e3edf4;border-color:#c2d6e3}
.dashboard .home-visit{background:#f4f9f7;border:1px solid #cbdfd7;border-radius:12px;padding:14px 12px;margin:10px 0;transition:background .2s}
.dashboard .home-visit:hover{background:#d8eae4}
.dashboard .home-visit:last-child{border-bottom:1px solid #cbdfd7}
.dashboard .revenue-visual{background:linear-gradient(140deg,#e9f2f6,#dfeaf1)}
.dashboard .chart-top{padding:15px;background:#d2e4ec;border:1px solid #bbd3df;border-radius:12px;margin-bottom:24px;flex-wrap:wrap;gap:15px}
.dashboard .recent-collections{background:#e3efec}
.dashboard .collection-item{background:#eff7f3;border:1px solid #cbded7;border-radius:11px;margin:10px 0;padding:14px 11px}
.dashboard .collection-icon{background:#d0e7df;border-color:#b9d7cc}
.dashboard .account-metric{background:#dce9f1;border-color:#bed2df;border-radius:17px;box-shadow:var(--card-shadow);position:relative;overflow:hidden}
.dashboard .account-metric:nth-child(2){background:#d9ece4;border-color:#b9d7c9}
.dashboard .account-metric.due-metric{background:#e1e4f0;border-color:#c6cbe0}
.dashboard .account-metric .iconbox{background:#edf5f8;border-color:#b9cfda;width:48px;height:48px;border-radius:14px}
.dashboard .account-metric:nth-child(2) .iconbox{background:#edf7f0;color:#087568;border-color:#b7d8c4}
.dashboard .account-metric.due-metric .iconbox{background:#f1f2f9;border-color:#c5cbe0;color:#4e5c82}
.dashboard .account-metric strong{color:#163c52;font-weight:600}
.dashboard .metric-caption{color:#415d6c}
.dashboard .patient-grid{gap:20px}
.dashboard .patient-card{background:linear-gradient(145deg,#e1eeeb,#edf5f3);border-color:#bdd8cf;padding:23px;transition:transform .2s,box-shadow .2s}
.dashboard .patient-card:nth-child(3n+2){background:linear-gradient(145deg,#dde9f2,#edf3f7);border-color:#bfd1e0}
.dashboard .patient-card:nth-child(3n){background:linear-gradient(145deg,#e5e7f1,#f0f1f8);border-color:#cbcee2}
.dashboard .patient-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #1b43571a}
.dashboard .patient-card:before{height:5px;background:linear-gradient(90deg,#163f55,#138c7e)}
.dashboard .patient-card .avatar{width:49px;height:49px;background:#bfded4;border:3px solid #f2faf6;color:#145648;font-size:21px;box-shadow:0 4px 12px #1c574e14}
.dashboard .patient-card h3{font-size:21px;margin-top:17px}
.dashboard .patient-card-counts{padding:11px 0;border-top:1px solid #c5dbd6}
.dashboard .patient-card-counts>span{background:#f3f9f7;border:1px solid #c7dcd5;padding:5px 8px;border-radius:7px;font-size:13px}
.dashboard .patient-card-account{background:#183f53;border:1px solid #2d5b6d;padding:14px;border-radius:11px;margin:13px 0}
.dashboard .patient-card-account>span{color:#d1e6ed}.dashboard .patient-card-account strong,.dashboard .patient-card-account strong.has-due,.dashboard .patient-card-account small{color:#fff}
.dashboard .patient-open{background:#d3e6e0;border-color:#b2cfc6;color:#164d44}
.dashboard .profile-header{background:linear-gradient(120deg,#d5e9e3,#dce7f1);border-color:#b8d2d4}
.dashboard .profile-avatar{background:#17495b;color:#d9f5ee;border:4px solid #eaf6f1;box-shadow:0 8px 16px #183e5318}
.dashboard .profile-tabs{background:#d7e5e9;border:1px solid #bdd3da;border-radius:13px;padding:6px;gap:5px}
.dashboard .profile-tabs button{border-radius:9px;border-bottom:0;color:#375b6d}
.dashboard .profile-tabs button.active{background:#16475a;color:#fff;box-shadow:0 4px 10px #17455920}
.dashboard .profile-tabs button.active svg{stroke:#b8ede0}
.dashboard .patient-information{background:#e4efe9}
.dashboard .patient-information dl>div{background:#eff7f2;border:1px solid #c9dcd1;margin:8px 0;border-radius:10px;padding:13px}
.dashboard .clinical-note{background:#d5e6df;border:1px solid #bfd5ca;border-radius:12px;padding:16px;margin-top:15px}
.dashboard .clinical-note:nth-of-type(even){background:#dce7ee;border-color:#c0d3de}
.dashboard .clinical-note strong{display:block;color:#174e49;border-right:3px solid #178d79;padding-right:9px;font-size:15px}
.dashboard .profile-recent>.panel:first-child{background:#e3ecf4}.dashboard .profile-recent>.panel:last-child{background:#e4efe9}
.dashboard .profile-plan-prompt,.dashboard .next-visit{background:#d3e9e0;border-color:#b5d3c5;border-radius:13px}
.dashboard .treatment-plan-card{background:linear-gradient(130deg,#dfede7,#edf4f2);border-color:#bdd6cb;border-radius:18px;box-shadow:var(--card-shadow)}
.dashboard .plan-symbol{background:#c4e1d4;border-color:#a9cbbb}
.dashboard .plan-budget{background:#cfe3db;border-color:#b6d0c5;border-radius:12px;padding:16px}
.dashboard .plan-payment-split{background:#eaf4ef;border:1px solid #c2d9cd;border-radius:10px;padding:13px}
.dashboard .plan-card-actions button{background:#d5e8df;border-color:#b2d0c1}
.dashboard .plans-empty-state{background:radial-gradient(ellipse at 50% 0,#cce8df,#e1ecf1);border:1px dashed #9cbdba;box-shadow:var(--card-shadow);padding:65px 25px}
.dashboard .plans-empty-icon{background:#bcded2;border-color:#98c7b8;box-shadow:0 8px 25px #16514412}
.dashboard .session-summary .panel{background:#d5e9e2;border-color:#b5d4c7;position:relative;overflow:hidden;min-height:140px}
.dashboard .session-summary .panel:nth-child(2){background:#dbe7f1;border-color:#bed1df}
.dashboard .session-summary .panel:nth-child(3){background:#e2e4f0;border-color:#c7cbe0}
.dashboard .session-summary .summary-icon{position:absolute;left:20px;bottom:20px;width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:#f1f7f480;border:1px solid #b4cec8}
.dashboard .session-summary .summary-icon svg{width:28px;height:28px;stroke:#397b70}
.dashboard .session-summary strong{font-size:32px;color:#153f52}
.dashboard .table-panel,.dashboard .ledger-payments{background:#e8f0f3}
.dashboard table{border-collapse:separate;border-spacing:0;background:#eff5f6;border-radius:12px;overflow:hidden}
.dashboard table thead{background:#234c60}
.dashboard table th{background:#234c60;color:#e4f4f4;border-color:#3d6576;font-weight:500;padding-top:14px;padding-bottom:14px}
.dashboard table tbody tr:nth-child(even){background:#dfeceF}
.dashboard table td{border-color:#cbdde1}
.dashboard table tbody tr:hover{background:#d1e7e2}
.dashboard .row-menu{background:#d3e6e1;border:1px solid #adcfc4;border-radius:8px;color:#18574c;min-height:34px;padding:6px 10px}
.dashboard .appointment-filters{background:#d6e6eb;border:1px solid #bed4dc;border-radius:12px;padding:16px}
.dashboard .filter-count{background:#bddbd3;color:#164f45;border-radius:30px;padding:6px 10px}
.dashboard .status{border-radius:20px;border:1px solid #c0d6da;background:#e4edf2;color:#365d73}
.dashboard .status.completed,.dashboard .status.done,.dashboard .status.arrived{background:#d4eadc;border-color:#b0d0bc;color:#205b3c}
.dashboard .status.rescheduled,.dashboard .status.waiting{background:#e3e0f2;border-color:#cbc4e1;color:#564779}
.dashboard .status.cancelled,.dashboard .status.absent{background:#f0e1e5;border-color:#ddc4cb;color:#754557}
.dashboard .finance-note{background:#d2e5df;border-color:#afcec2;color:#245b50;border-radius:12px;padding:16px}
.dashboard .activity-item{background:#dfebeF;border:1px solid #c4d8de;border-radius:12px;padding:17px;margin:10px 0}
.dashboard .activity-item strong{background:#c4ddd7;color:#1f594d;border-radius:8px;padding:3px 12px}
.dashboard .clinic-settings-panel{background:#e2eeea}.dashboard .backup-panel{background:#e0eaf2}
.dashboard .clinic-settings-panel input,.dashboard .clinic-settings-panel textarea{background:#f0f7f4;border-color:#b8d2c6;border-radius:10px}
.dashboard .settings-readonly{background:#cee2d8;border-color:#afcebc}
.dashboard .backup-download{background:#cee6dd;border-color:#acd0bf}.dashboard .backup-download small{color:#355d50}
.dashboard .restore-file-label{background:#edf3f7;border-color:#9fbdcd;color:#375e74}
.dashboard .calendar-board{background:#e8f1f3;border-color:#bdd5dc;border-radius:18px;box-shadow:var(--card-shadow)}
.dashboard .calendar-toolbar{background:#d8e9e8;border-color:#bed6d4}
.dashboard .calendar-filterbar{background:#e3edf1;border-color:#c2d7de}
.dashboard .calendar-agenda{background:#dcebe5;border-color:#b6d3c4;border-radius:18px}
.dashboard .agenda-item{background:#eff6f2;border-color:#c0d9cb;border-radius:12px;padding:15px;margin-bottom:12px}
.dashboard .week-day-column{background:#edf4f6}.dashboard .week-day-column.today-column{background:#e5f2ed}
.dashboard .time-gutter,.dashboard .time-gutter>span{background:#dce9ee}
.dashboard .week-heading{background:#d6e6eb}.dashboard .today-heading{background:#c9e5dc}
.dashboard .month-cell{background:#edf4f6;border-color:#c5dbe0}.dashboard .month-cell.outside-month{background:#dde8ed}
.dashboard .month-cell.is-today{background:#d2eae1}
.dashboard .time-slot{border-top-color:#ccdee3}
.dashboard .calendar-event{box-shadow:0 2px 5px #1c534816;border-radius:7px}
.dashboard .day-completion>a{color:#08685e}
.dashboard .week-day-title>span,.dashboard .week-day-title small,.dashboard .week-day-title>button{color:#365667}
.dashboard .today-heading>button{color:#0b2038}
.dashboard .settings-readonly>span,.dashboard .settings-readonly b{color:#365849}
.dashboard .backup-download b{color:#185d4d}
.dashboard.route-plans>.sidebar~.main .records-toolbar{background:linear-gradient(110deg,#17465b,#0b263d);border-color:#28556a}
.dashboard .profile-back,.dashboard .next-visit b,.dashboard .paid-money{color:#075f55}
@media(max-width:760px){
 .dashboard .section-visual-header,.dashboard.route-plans .records-toolbar{padding:23px 20px;gap:15px;min-height:145px;border-radius:17px}
 .dashboard .section-visual-header h2,.dashboard.route-plans .records-toolbar h2{font-size:22px}
 .dashboard .section-visual-header p{font-size:14px}
 .dashboard .large-section-icon{width:48px;height:48px;border-radius:14px}.dashboard .large-section-icon svg{width:27px;height:27px}
 .dashboard .panel-title h2>svg{width:18px;height:18px;padding:5px;border-radius:7px}
 .dashboard .workflow-shortcuts{gap:10px}.dashboard .home-visit{padding:13px 9px}
 .dashboard .insight-stat{padding:17px}.dashboard .stat-top{font-size:13px;gap:6px}
 .dashboard .patient-card{padding:21px}.dashboard .patient-card h3{font-size:21px}
 .dashboard .session-summary .panel{min-height:128px;padding:17px}
 .dashboard .session-summary .summary-icon{width:37px;height:37px;left:13px;bottom:15px;border-radius:10px}
 .dashboard .session-summary .summary-icon svg{width:22px;height:22px}
 .dashboard .session-summary strong{font-size:27px}
 .dashboard .chart-top{padding:12px}.dashboard .profile-tabs{border-radius:10px}
 .dashboard .patient-information dl>div{padding:12px;flex-wrap:wrap}
 .dashboard .account-metric .iconbox{width:39px;height:39px;border-radius:12px}
}
@media(prefers-reduced-motion:reduce){.dashboard .patient-card,.dashboard .workflow-shortcuts>*{transition:none;transform:none!important}}
