.command-card-icon svg,.search-icon svg,.panel-toggle svg{display:block}.empty-state{text-align:center;height:100%;padding:var(--spacing-xl);flex-direction:column;justify-content:flex-start;align-items:center;padding-top:15vh;display:flex}.empty-state-icon{margin-bottom:var(--spacing-md);width:auto;max-width:360px;height:100px}@media (max-width:768px){.empty-state{padding-top:10vh;padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.empty-state-icon{max-width:260px;height:72px}}@media (max-width:400px){.empty-state{padding-top:8vh}.empty-state-icon{max-width:220px;height:64px}}.empty-state-title{font-size:var(--font-xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.welcome-version{color:var(--color-text-tertiary);background:var(--color-bg-tertiary);margin:var(--spacing-sm)0 var(--spacing-xs);font-size:11px;font-weight:var(--font-medium);letter-spacing:.5px;border-radius:10px;padding:2px 8px;display:inline-block}.welcome-changelog-link{margin-bottom:var(--spacing-lg);font-size:var(--font-xs);color:var(--color-accent);cursor:pointer;text-decoration:none;display:inline-block}.welcome-changelog-link:hover{color:var(--color-accent-hover);text-decoration:underline}.empty-state-desc{font-size:var(--font-base);color:var(--color-text-secondary);max-width:400px;margin-bottom:var(--spacing-xl)}.command-cards{gap:var(--spacing-sm);padding:var(--spacing-md)0;grid-template-columns:repeat(2,1fr);display:grid}.command-card{justify-content:flex-start;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm)var(--spacing-md);background-color:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);flex-direction:row;display:flex}.command-card:hover{background-color:var(--color-bg-tertiary);border-color:var(--color-border)}.command-card.active{background-color:var(--color-accent-light);border-color:var(--color-accent)}.command-card.active .command-card-icon,.command-card.active .command-card-label{color:var(--color-accent)}.command-card-icon{font-size:var(--icon-base);color:var(--color-text-secondary);flex-shrink:0}.command-card-label{font-size:var(--font-sm);font-weight:var(--font-medium);color:var(--color-text-primary);text-align:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.panel-right.collapsed .command-cards{gap:var(--spacing-sm);padding:var(--spacing-sm);flex-direction:column;display:flex}.panel-right.collapsed .command-card{justify-content:center;align-items:center;width:40px;height:40px;margin:0 auto;padding:0;display:flex}.panel-right.collapsed .command-card-icon{margin:0}.panel-right.collapsed .command-card-icon svg{width:var(--icon-base);height:var(--icon-base)}.panel-right.collapsed .command-card-label{display:none}.context-card{padding:var(--spacing-md);background-color:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);margin-bottom:var(--spacing-sm)}.context-card-title{font-size:var(--font-sm);font-weight:var(--font-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.context-card-item{font-size:var(--font-sm);color:var(--color-text-secondary);padding:var(--spacing-sm)0;border-bottom:1px solid var(--color-border-light)}.context-card-item:last-child{border-bottom:none;padding-bottom:0}.patient-context-buttons{gap:var(--spacing-sm);flex-direction:column;display:flex}.patient-action-btn{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm)var(--spacing-md);background-color:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);flex-direction:row;display:flex}.patient-action-btn:hover{background-color:var(--color-bg-tertiary);border-color:var(--color-border)}.patient-action-btn-icon{color:var(--color-text-secondary);flex-shrink:0;align-items:center;display:flex}.patient-action-btn-content{justify-content:space-between;align-items:center;gap:var(--spacing-sm);flex-direction:row;flex:1;min-width:0;display:flex}.patient-action-btn-label{font-size:var(--font-sm);font-weight:var(--font-medium);color:var(--color-text-primary)}.patient-action-btn-desc{font-size:var(--font-xs);color:var(--color-text-tertiary);opacity:0;transition:opacity var(--transition-fast);white-space:nowrap}.patient-action-btn:hover .patient-action-btn-desc{opacity:1}.ai-assistant-header{font-size:var(--font-sm);font-weight:var(--font-semibold);color:var(--color-text-tertiary);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:.02em;justify-content:space-between;align-items:center;display:flex}.action-card{padding:var(--spacing-md)var(--spacing-lg);background:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:var(--spacing-md);display:flex}.action-card:hover{background:var(--color-bg-hover);border-color:var(--color-accent);transform:translateY(-1px)}.action-card-icon{color:var(--color-accent);flex-shrink:0;display:flex}.action-card-title{font-weight:var(--font-medium);font-size:var(--font-base);color:var(--color-text-primary);align-items:center;gap:6px;display:flex}.welcome-command-grid{width:100%;max-width:440px}.welcome-single-row{gap:var(--spacing-md);margin-top:var(--spacing-md);grid-template-columns:1fr;display:grid}.welcome-action-card{align-items:flex-start;min-height:78px}.welcome-action-copy{text-align:left;flex-direction:column;gap:2px;min-width:0;display:flex}.welcome-action-card .action-card-title{line-height:1.25}.welcome-action-desc{color:var(--color-text-tertiary);margin:0;font-size:12px;line-height:1.35}.badge-count{color:var(--color-text-inverse);background:var(--color-red-500);border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:600;display:inline-flex}.section-header{margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:center;display:flex}.section-title{font-size:var(--font-title);font-weight:var(--font-semibold)}.section-subtitle{font-size:var(--font-sm);color:var(--color-text-tertiary);margin-bottom:var(--spacing-md);font-weight:var(--font-medium);align-items:center;display:flex}.section-subtitle:before,.section-subtitle:after{content:"";background:var(--color-border);flex:1;height:1px}.section-subtitle:before{margin-right:12px}.section-subtitle:after{margin-left:12px}@media (max-width:768px){.section-subtitle{margin:16px 0 12px;font-size:0}.section-subtitle:before,.section-subtitle:after{margin:0}}.card-grid-2{gap:var(--spacing-md);grid-template-columns:repeat(2,1fr);display:grid}.card-grid-3{gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);display:grid}@media (max-width:768px){.card-grid-2,.card-grid-3{gap:var(--spacing-sm)}.card-grid-2 .quick-action-btn,.card-grid-3 .quick-action-btn{min-height:60px;padding:12px 8px;font-size:13px}.card-grid-2 .quick-action-btn svg,.card-grid-3 .quick-action-btn svg{width:var(--font-title);height:var(--font-title)}.action-card{gap:var(--spacing-sm);padding:10px 12px}.action-card-icon svg{width:18px;height:18px}.action-card-title{font-size:14px;font-weight:600}.welcome-action-card{min-height:72px}.welcome-action-desc{font-size:11px}.revenue-report{padding:0 var(--spacing-sm);gap:var(--spacing-sm)}.revenue-report .section-header{margin-bottom:var(--spacing-md)}.filter-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.filter-tabs-right{flex-shrink:0;gap:8px}.filter-checkbox-label{white-space:nowrap}.filter-tab{white-space:nowrap;padding:5px 10px;font-size:11px}}@media (max-width:400px){.card-grid-2,.card-grid-3{gap:8px}.card-grid-2 .quick-action-btn,.card-grid-3 .quick-action-btn{padding:10px 6px;font-size:12px}}.card-grid-auto{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.data-card{background:var(--color-bg-primary);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-md);overflow:hidden}.data-card-title{font-weight:var(--font-semibold);font-size:var(--font-lg);margin-bottom:var(--spacing-xs)}.data-card-desc{font-size:var(--font-sm);color:var(--color-text-tertiary);margin-top:2px}.list-item{padding:var(--spacing-md)var(--spacing-lg);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.list-item:first-child{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.list-item:last-child{border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg);border-bottom:none}.list-item-content{flex:1}.list-item-actions{align-items:center;gap:var(--spacing-lg);display:flex}.price{font-weight:var(--font-semibold);color:var(--color-accent)}.search-clear-btn{cursor:pointer;color:var(--color-text-tertiary);background:0 0;border:none;align-items:center;padding:4px;transition:color .2s;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.search-clear-btn:hover{color:var(--color-text-primary)}.search-results-container{margin:0 var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:200px;box-shadow:var(--shadow-md);margin-top:4px;overflow-y:auto}.search-result-item{cursor:pointer;border-bottom:1px solid var(--color-border-light);align-items:center;padding:10px 12px;transition:background .2s;display:flex}.search-result-item:hover{background:var(--color-bg-hover)}.search-result-item:last-child{border-bottom:none}.patient-item-left{flex:1;align-items:center;gap:8px;padding-left:8px;padding-right:12px;display:flex}.patient-item-right{flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding-left:12px;display:flex}.patient-item-time{flex-direction:column;flex:1;align-items:flex-end;gap:2px;padding-right:12px;display:flex}.patient-item-divider{background:var(--color-border);width:1px;height:36px}.patient-item-divider-sm{background:var(--color-border);width:1px;height:28px}.patient-item{justify-content:space-between;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs)var(--spacing-sm);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;display:flex}.patient-item:hover{background-color:var(--color-bg-secondary);border-color:var(--color-border-light);box-shadow:0 0 0 1px var(--color-border)}.patient-item.active{background-color:var(--color-accent-light)}.patient-item-selected{background-color:var(--color-bg-secondary);border:1px solid var(--color-accent);border-radius:var(--radius-md);box-shadow:0 0 0 2px var(--glow-border-color)}.patient-item-selected:hover{background-color:var(--color-accent-light)}.patient-day-window{flex-direction:column;gap:0;display:flex}.patient-day-window-stage{isolation:isolate;background:var(--color-bg-primary);display:grid;position:relative;overflow:hidden}.patient-day-window-stage>*{grid-area:1/1}.patient-day-window-layer{--patient-day-shift-distance:92px;--patient-day-shift-overshoot:3px;--patient-day-shift-settle:0px;--patient-day-shift-duration:.38s;background:var(--color-bg-primary);backface-visibility:hidden;contain:paint;will-change:transform;transform:translateZ(0)}.patient-day-window-layer.is-outgoing,.patient-day-window-layer.is-incoming{pointer-events:none}.patient-day-window-layer.is-outgoing{z-index:1}.patient-day-window-layer.is-incoming{z-index:2}.patient-day-window-layer.tier-short{--patient-day-shift-distance:92px;--patient-day-shift-overshoot:0px;--patient-day-shift-settle:0px;--patient-day-shift-duration:.36s}.patient-day-window-layer.tier-medium{--patient-day-shift-distance:156px;--patient-day-shift-overshoot:1.8px;--patient-day-shift-settle:.45px;--patient-day-shift-duration:.52s}.patient-day-window-layer.tier-long{--patient-day-shift-distance:min(68vh,360px);--patient-day-shift-overshoot:2.8px;--patient-day-shift-settle:.7px;--patient-day-shift-duration:.76s}.patient-day-window-layer.is-outgoing.dir-up{animation:patient-day-out-up var(--patient-day-shift-duration)cubic-bezier(.2,.84,.18,1)both}.patient-day-window-layer.is-incoming.dir-up{animation:patient-day-in-up var(--patient-day-shift-duration)cubic-bezier(.18,.84,.22,1)both}.patient-day-window-layer.is-outgoing.dir-down{animation:patient-day-out-down var(--patient-day-shift-duration)cubic-bezier(.2,.84,.18,1)both}.patient-day-window-layer.is-incoming.dir-down{animation:patient-day-in-down var(--patient-day-shift-duration)cubic-bezier(.18,.84,.22,1)both}@keyframes patient-day-out-up{0%{transform:translateY(0)}to{transform:translateY(calc(-1*var(--patient-day-shift-distance)))}}@keyframes patient-day-in-up{0%{transform:translateY(var(--patient-day-shift-distance))}86%{transform:translateY(calc(-1*var(--patient-day-shift-overshoot)))}95%{transform:translateY(var(--patient-day-shift-settle))}to{transform:translateY(0)}}@keyframes patient-day-out-down{0%{transform:translateY(0)}to{transform:translateY(var(--patient-day-shift-distance))}}@keyframes patient-day-in-down{0%{transform:translateY(calc(-1*var(--patient-day-shift-distance)))}86%{transform:translateY(var(--patient-day-shift-overshoot))}95%{transform:translateY(calc(-1*var(--patient-day-shift-settle)))}to{transform:translateY(0)}}.patient-day-group{padding:var(--spacing-sm)0;flex-direction:column;gap:6px;display:flex}.patient-day-group+.patient-day-group{border-top:1px solid var(--color-border-light)}.patient-day-header{color:var(--color-text-secondary);justify-content:space-between;align-items:center;padding:4px 12px;font-size:11px;font-weight:600;display:flex}.patient-day-header-center{padding:6px 12px}.patient-day-header-center .patient-day-relative-tag,.patient-day-header-center .patient-day-date-badge{min-height:28px;padding:0 11px;font-size:13px}.patient-day-center-title{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.patient-day-relative-tag,.patient-day-date-badge{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:26px;padding:0 10px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.patient-day-relative-tag{background:var(--color-info-soft);color:var(--color-blue-500)}.patient-day-relative-tag.is-past{background:var(--color-warning-soft);color:var(--color-amber-700)}.patient-day-relative-tag.is-future{background:var(--color-success-soft);color:var(--color-success-dark)}.patient-day-back-today{white-space:nowrap;cursor:pointer;background:var(--color-info-soft);min-height:26px;color:var(--color-blue-500);border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.patient-day-back-today:hover{background:var(--color-info-strong)}.patient-panel-shortcut-bar{padding:0 var(--spacing-lg)var(--spacing-sm);background:var(--color-bg-secondary);justify-content:center;display:flex}.patient-panel-shortcut-bar .patient-day-back-today{white-space:nowrap}.patient-day-date-badge{background:var(--color-bg-tertiary);border:1px solid var(--color-border-light);color:var(--color-text-primary);font-variant-numeric:tabular-nums;letter-spacing:.01em}.patient-day-weekday{color:var(--color-text-secondary);white-space:nowrap;font-weight:600}.patient-day-summary{color:var(--color-text-tertiary);white-space:nowrap;align-items:center;gap:4px;font-weight:600;display:flex}.patient-day-summary-count{font-variant-numeric:tabular-nums}.patient-day-header-adjacent{color:var(--color-text-tertiary)}.patient-day-count{font-weight:500}@media (max-width:520px){.patient-day-summary-text{display:none}.patient-day-relative-tag,.patient-day-date-badge{min-height:24px;padding:0 9px;font-size:11px}}.patient-day-empty{color:var(--color-text-tertiary);padding:8px 12px;font-size:12px}.patient-day-empty-adjacent{color:var(--color-text-tertiary)}.patient-item.patient-item-compact{column-gap:var(--spacing-6);grid-template-rows:auto auto;grid-template-columns:16px max-content 1ch 1fr;align-items:center;row-gap:2px;min-width:0;display:grid}.patient-time-icon{flex-shrink:0;grid-area:1/1}.patient-time-icon-morning{color:#f97316}.patient-time-icon-afternoon{color:#eab308}.patient-time-icon-night{color:#8b5cf6}.patient-time-icon-unknown{color:var(--color-text-tertiary)}.patient-time-text{font-variant-numeric:tabular-nums;color:inherit;text-align:left;white-space:nowrap;grid-area:1/2;font-size:14px;font-weight:600}.patient-compact-divider{color:var(--color-text-tertiary);grid-area:1/3;justify-self:center}.patient-name-compact{min-width:0;color:inherit;white-space:nowrap;text-overflow:ellipsis;flex:1;grid-area:1/4;font-size:14px;font-weight:600;overflow:hidden}.patient-meta-compact{color:var(--color-text-tertiary);white-space:nowrap;text-overflow:ellipsis;grid-area:2/2/auto/5;font-size:11px;overflow:hidden}.patient-item-adjacent,.patient-item-adjacent .patient-time-icon{color:var(--color-text-tertiary)}.patient-avatar{border-radius:var(--radius-full);background-color:var(--color-accent);width:36px;height:36px;color:var(--color-text-inverse);font-weight:var(--font-semibold);font-size:var(--font-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.patient-info-card{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm)var(--spacing-md);background:var(--color-accent-light);border:1px solid var(--color-accent);border-radius:var(--radius-lg);display:flex}.patient-info-card-content{flex:1;min-width:0}.patient-info-card-name{font-size:var(--font-sm);font-weight:var(--font-semibold);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.patient-info-card-meta{font-size:var(--font-xs);color:var(--color-text-tertiary)}.patient-list-collapsed{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);flex-direction:column;display:flex}.patient-list-collapsed .patient-avatar{width:36px;height:36px;font-size:var(--font-sm);cursor:pointer;transition:transform var(--transition-fast);background-color:unset}.patient-list-collapsed .patient-avatar:hover{transform:scale(1.08)}.patient-info{flex:1;min-width:0}.patient-name{font-weight:var(--font-medium);font-size:var(--font-base);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;line-height:var(--leading-normal);overflow:hidden}.patient-meta{font-size:var(--font-sm);color:var(--color-text-tertiary);line-height:var(--leading-normal)}.panel-left.collapsed .patient-info{display:none}.patient-name-block{flex:1;min-width:0}.patient-name-large{font-size:var(--font-lg);color:var(--color-text-primary);font-weight:700;line-height:1.1}.patient-meta-block{align-items:flex-start;gap:var(--spacing-xs);margin-left:var(--spacing-sm);padding-left:var(--spacing-sm);border-left:1px solid var(--color-border);flex-direction:column;flex-shrink:0;min-width:120px;display:flex}.patient-meta-top{align-items:center;gap:var(--spacing-sm);font-size:var(--font-sm);color:var(--color-text-primary);font-weight:600;display:flex}.patient-meta-sub{font-size:var(--font-xs);color:var(--color-text-secondary)}.patient-status-dot{background:var(--color-accent);border-radius:50%;width:6px;height:6px;display:inline-block}.patient-avatar-sm{width:28px;height:28px;font-size:var(--font-sm)}.patient-dot{background:var(--color-blue-500);opacity:.8;border-radius:50%;flex-shrink:0;width:6px;height:6px}.patient-name-primary,.patient-name-search{color:var(--color-text-primary);font-size:14px;font-weight:600}.patient-info-secondary{color:var(--color-text-secondary);font-size:12px}.patient-info-tertiary{color:var(--color-text-tertiary);font-size:11px}.patient-list-header{color:var(--color-text-tertiary);align-items:center;gap:4px;padding:8px 16px;font-size:12px;font-weight:600;display:flex}.date-tag{background:var(--color-info-soft);color:var(--color-blue-500);cursor:pointer;white-space:nowrap;border-radius:4px;padding:2px 6px}.date-tag.date-tag-lg{border-radius:6px;padding:3px 10px;font-size:14px}.date-tag.date-tag-static{cursor:default}.date-tag.date-tag-static:hover{background:var(--color-info-soft)}.date-tag:hover{background:var(--color-info-strong)}.revisit-badge{background:var(--color-accent-light);color:var(--color-accent);border-radius:10px;padding:1px 6px;font-size:10px;font-weight:500}.patient-selection-container{max-width:500px;padding:var(--spacing-lg);margin:0 auto}.patient-selection-search{margin-bottom:var(--spacing-md);position:relative}.patient-selection-actions{gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);display:flex}.patient-selection-recent{margin-top:var(--spacing-lg)}.patient-selection-list{gap:var(--spacing-sm);flex-direction:column;max-height:400px;display:flex;overflow-y:auto}.patient-selection-item{padding:var(--spacing-md);background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;gap:4px;display:flex}.patient-selection-item:hover{background:var(--color-bg-tertiary);border-color:var(--color-accent)}.patient-selection-name{color:var(--color-text-primary);font-weight:600}.patient-selection-info{font-size:var(--font-sm);color:var(--color-text-secondary)}.empty-state-mini{padding:var(--spacing-lg);text-align:center;color:var(--color-text-tertiary);font-size:var(--font-sm)}.stage-view{background:var(--color-bg-secondary);flex-direction:column;height:100%;animation:.15s ease-out fade-in;display:flex}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.stage-header{padding:6px var(--spacing-md);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.stage-patient-info{padding:4px var(--spacing-md);background:var(--color-accent-light);border-bottom:1px solid var(--color-border);font-size:var(--font-xs)}.stage-patient-name{color:var(--color-text-primary);font-weight:600}.stage-patient-meta{color:var(--color-text-tertiary)}.stage-header-left{align-items:center;gap:var(--spacing-sm);display:flex}.stage-header-separator{color:var(--color-text-tertiary);font-size:var(--font-base);font-weight:500}.stage-patient-tag{font-size:var(--font-sm);color:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-md);box-shadow:0 0 0 2px var(--glow-border-color);background:0 0;align-items:center;gap:6px;padding:2px 8px 2px 10px;font-weight:500;display:inline-flex}.patient-tag-clear{width:16px;height:16px;color:var(--color-accent);cursor:pointer;border-radius:var(--radius-full);opacity:.6;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:14px;font-weight:600;line-height:1;display:inline-flex}.patient-tag-clear:hover{opacity:1;background:var(--color-accent-light)}.patient-tag-clear.btn-icon:hover{transform:none}.patient-tag-clear.btn-icon{border:none;width:16px;height:16px;padding:0!important}.patient-tag-clear.btn-icon svg{width:12px;height:12px}.stage-title{font-size:var(--font-base);color:var(--color-text-primary);margin:0;font-weight:600}.stage-header-actions{align-items:center;gap:var(--spacing-md);margin-left:auto;margin-right:var(--spacing-md);display:flex}.stage-header-actions .appointment-header-actions,.stage-header-actions .record-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.workspace-page-header{justify-content:space-between;align-items:flex-end;gap:var(--spacing-md);margin-bottom:var(--spacing-md);display:flex}.workspace-page-header-main{flex-direction:column;gap:6px;min-width:0;display:flex}.workspace-page-title{color:var(--color-text-primary);margin:0;font-size:18px;font-weight:700}.workspace-page-subtitle{color:var(--color-text-tertiary);margin:0;font-size:12px;line-height:1.45}.workspace-page-header-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;display:flex}.doctor-scope-dropdown{position:relative}.doctor-scope-trigger{background:color-mix(in srgb,var(--color-bg-secondary)88%,#d977061f);min-height:34px;color:var(--color-text-primary);box-shadow:var(--shadow-soft);border-color:#d9770640;border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.doctor-scope-trigger.btn-outline:hover:not(:disabled),.doctor-scope-trigger.btn-outline:active:not(:disabled){background:color-mix(in srgb,var(--color-bg-secondary)80%,#d977062e);border-color:#d9770659;transform:none}.doctor-scope-trigger.is-proxy{background:color-mix(in srgb,var(--color-bg-secondary)80%,#d977062e);color:#92400e;border-color:#d9770659}.doctor-scope-trigger-icon{flex:none;justify-content:center;align-items:center;display:inline-flex}.doctor-scope-trigger-label{text-overflow:ellipsis;white-space:nowrap;max-width:12em;overflow:hidden}.doctor-scope-menu{flex-direction:column;gap:4px;min-width:228px;padding:6px;display:flex}.doctor-scope-menu-section{letter-spacing:.02em;color:var(--color-text-tertiary);padding:6px 10px 2px;font-size:11px;font-weight:600}.doctor-scope-menu-hint{color:var(--color-text-tertiary);padding:10px;font-size:12px;line-height:1.4}.doctor-scope-menu-item{border-radius:10px;justify-content:flex-start;gap:8px;width:100%}.doctor-scope-menu-item.is-active{background:var(--color-accent-light);color:var(--color-accent)}.stage-close{background:color-mix(in srgb,var(--color-bg-secondary)85%,#d9770614);border-radius:var(--radius-sm);color:#b45309;cursor:pointer;width:28px;height:28px;transition:all var(--transition-fast);border:1.5px solid #d977064d;justify-content:center;align-items:center;display:flex}.stage-close.btn-icon{border-radius:var(--radius-sm);color:#b45309;border:1.5px solid #d977064d;width:28px;height:28px;padding:0!important}.stage-close.btn-icon svg{fill:currentColor;stroke:currentColor;width:18px;height:18px}.stage-close:hover{background:color-mix(in srgb,var(--color-bg-secondary)70%,#d9770633);color:#92400e;border-color:#d9770680;transform:none}.stage-content{padding:var(--spacing-lg);flex:1;overflow-y:auto}.stage-content-shell{width:100%;min-width:0;margin:0 auto}@media (min-width:769px){.stage-content-shell--standard{max-width:var(--stage-content-max-standard)}.stage-content-shell--wide{max-width:var(--stage-content-max-wide)}.stage-content-shell--full{max-width:none}}.stage-view-visit-panel .stage-content{overflow:hidden}.stage-form{max-width:600px;margin:0 auto}.stage-form-full{max-width:100%;padding:0 var(--spacing-md)}.history-container{gap:var(--spacing-md);height:100%;display:flex}.history-timeline{gap:var(--spacing-xs);flex-direction:column;flex:1;display:flex;overflow-y:auto}.history-detail{padding:var(--spacing-md);background:var(--color-bg-secondary);border-radius:var(--radius-lg);flex:1;display:none;overflow-y:auto}@media (min-width:768px){.history-timeline{flex:0 0 45%;max-width:45%}.history-detail{display:block}.timeline-item-content{display:none}}.history-empty,.history-error,.history-loading{justify-content:center;align-items:center;gap:var(--spacing-md);height:100%;color:var(--color-text-tertiary);flex-direction:column;display:flex}.history-detail-empty{height:100%;color:var(--color-text-tertiary);justify-content:center;align-items:center;display:flex}.timeline-item{background:var(--color-bg-secondary);border-radius:var(--radius-md);border:1px solid var(--color-border-light);transition:all var(--transition-fast);flex-shrink:0;overflow:hidden}.timeline-item:hover{border-color:var(--color-border);background:var(--color-bg-hover)}.timeline-item.selected{border-color:var(--color-accent);background:var(--color-accent-light)}.timeline-item-header{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm)var(--spacing-md);cursor:pointer;min-height:40px;display:flex}.expand-icon{color:var(--color-text-tertiary);flex-shrink:0;align-items:center;display:flex}@media (min-width:768px){.expand-icon{display:none}}.timeline-date{align-items:center;gap:var(--spacing-xs);flex-shrink:0;min-width:90px;display:flex}.timeline-date .date{font-size:var(--font-sm);font-weight:var(--font-semibold);color:var(--color-text-primary)}.timeline-date .time{font-size:var(--font-xs);color:var(--color-text-tertiary)}.timeline-type{font-size:var(--font-sm);color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.timeline-amount{font-size:var(--font-sm);font-weight:var(--font-semibold);color:var(--color-text-primary);flex-shrink:0}.timeline-badge{width:20px;height:20px;font-size:var(--font-xs);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.timeline-badge.payment-paid{background:var(--color-success-light);color:var(--color-success)}.timeline-badge.payment-partial{background:var(--color-warning-light);color:var(--color-warning)}.timeline-badge.payment-unpaid{background:var(--color-error-light);color:var(--color-error)}.timeline-item-content{padding:var(--spacing-md);border-top:1px solid var(--color-border-light);background:var(--color-bg-primary)}.visit-detail{gap:var(--spacing-md);flex-direction:column;display:flex}.detail-title{font-size:var(--font-lg);font-weight:var(--font-semibold);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border-light);margin:0}.detail-section{gap:var(--spacing-sm);flex-direction:column;display:flex}.detail-section h4{align-items:center;gap:var(--spacing-xs);font-size:var(--font-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary);margin:0;display:flex}.detail-row{gap:var(--spacing-md);font-size:var(--font-sm);display:flex}.detail-row .label{color:var(--color-text-tertiary);flex:0 0 60px}.detail-row .value{color:var(--color-text-primary);flex:1}.detail-row .value.amount{font-weight:var(--font-medium)}.detail-row.outstanding .value{color:var(--color-error);font-weight:var(--font-semibold)}.detail-empty{padding:var(--spacing-md);color:var(--color-text-tertiary);font-size:var(--font-sm);text-align:center}.time-icon-morning{stroke:var(--color-orange-500)}.time-icon-afternoon{stroke:var(--color-yellow-500)}.time-icon-evening{stroke:var(--color-purple-500)}.time-row{align-items:center;gap:16px;display:flex}.time-text{color:var(--color-text-primary);font-size:14px}.chat-messages-container{flex-direction:column;flex:1;gap:10px;padding:12px;display:flex;overflow-y:auto}.chat-message-row-user{align-self:flex-end;max-width:85%}.chat-message-row-ai{align-self:flex-start;max-width:90%}.chat-bubble-user{background:var(--color-accent);color:var(--color-text-inverse);white-space:pre-wrap;border-radius:14px 14px 4px;padding:10px 14px;font-size:13px}.chat-bubble-ai{background:var(--color-bg-tertiary);color:var(--color-text-primary);white-space:pre-wrap;border-radius:14px 14px 14px 4px;padding:10px 14px;font-size:13px;line-height:1.5}.chat-action-buttons{border-top:1px solid var(--color-border-light);flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px;display:flex}.chat-action-btn{background:var(--color-accent-light);color:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);padding:4px 10px;font-size:12px}.chat-action-btn:hover{background:var(--color-accent);color:var(--color-text-inverse)}.ai-status-indicator{align-items:center;gap:4px;display:flex}.ai-status-dot{border-radius:50%;width:6px;height:6px}.ai-status-dot-online{background:var(--color-green-500)}.ai-status-dot-offline{background:var(--color-red-500)}.empty-state-icon-faded{opacity:.5}.revenue-report{gap:var(--spacing-md);flex-direction:column;display:flex}.month-selector{gap:var(--spacing-sm);display:flex}.month-selector .form-select{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--font-sm);cursor:pointer;padding:6px 12px}.revenue-report .report-col-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.revenue-report .report-col-count{text-align:right;width:80px}.revenue-report .report-col-money{text-align:right;width:100px}.revenue-report .report-col-cost{text-align:right;width:100px;color:var(--color-text-tertiary)}.revenue-report .report-col-percent{text-align:right;width:80px}.revenue-report .report-col-mini{text-align:right;width:64px}.revenue-report .inline-stats{margin-bottom:8px}.revenue-report-substats{font-size:var(--font-sm);color:var(--color-text-secondary);margin-bottom:12px}.revenue-report-controls{border-bottom:1px solid var(--color-border-light);background:var(--color-bg-secondary);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 16px;display:flex}.revenue-report-control{align-items:center;gap:6px;display:inline-flex}.revenue-report-control-label{font-size:var(--font-xs);color:var(--color-text-tertiary);white-space:nowrap}.revenue-report .revenue-report-select-mini{font-size:var(--font-xs);padding:6px 10px}.revenue-report .revenue-report-input-mini{width:92px;font-size:var(--font-xs);padding:6px 10px}.revenue-report-commission{font-size:var(--font-xs);font-variant-numeric:tabular-nums;font-weight:600}.data-table{border-radius:var(--radius-md);border:1px solid var(--color-border-light);flex-direction:column;display:flex;overflow:hidden}.data-table-header{padding:var(--spacing-sm)var(--spacing-md);background:linear-gradient(135deg,var(--color-gray-50)0%,var(--color-gray-200)100%);font-size:var(--font-xs);font-weight:var(--font-semibold);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-light);display:flex}[data-theme=dark] .data-table-header{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border-bottom-color:var(--color-border)}@media (prefers-color-scheme:dark){:root:not([data-theme]) .data-table-header{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border-bottom-color:var(--color-border)}}.data-table-row{padding:var(--spacing-md)var(--spacing-md);border-bottom:1px solid var(--color-border-light);font-size:var(--font-sm);color:var(--color-text-primary);transition:background var(--transition-fast);background:var(--color-bg-primary);align-items:center;display:flex}.data-table-row:nth-child(2n){background:var(--color-bg-secondary)}.data-table-row:hover{background:var(--color-accent-light)}.data-table-row:last-child{border-bottom:none}.data-card-header{color:var(--color-text-primary);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light);padding:12px 16px;font-size:14px;font-weight:600}.report-section{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:12px;margin-top:16px;overflow:hidden}.report-section-header{color:var(--color-text-primary);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light);padding:12px 16px;font-size:14px;font-weight:600}.empty-state-compact{text-align:center;color:var(--color-text-tertiary);padding:32px 16px;font-size:14px}.onboarding-card{background:linear-gradient(135deg,var(--color-accent-light),var(--color-bg-secondary));border:1px solid var(--color-accent);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-soft)}.onboarding-header{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);color:var(--color-accent);display:flex}.onboarding-header h4{font-size:var(--font-lg);color:var(--color-text-primary);margin:0}.onboarding-content p{color:var(--color-text-secondary);font-size:var(--font-sm);margin-bottom:var(--spacing-md)}.onboarding-checklist{gap:var(--spacing-sm);flex-direction:column;display:flex}.onboarding-step{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm)var(--spacing-md);background:var(--color-bg-primary);border-radius:var(--radius-md);border:1px solid var(--color-border-light);display:flex}.onboarding-step.done{background:var(--color-success-faint);border-color:var(--color-green-500)}.onboarding-step.pending{background:var(--color-bg-primary)}.step-icon{width:28px;height:28px;font-weight:var(--font-semibold);font-size:var(--font-sm);border-radius:50%;justify-content:center;align-items:center;display:flex}.onboarding-step.pending .step-icon{background:var(--color-accent);color:var(--color-text-inverse)}.onboarding-step.done .step-icon{background:var(--color-green-500);color:var(--color-text-inverse)}.step-content{flex:1}.step-title{font-weight:var(--font-medium);color:var(--color-text-primary);font-size:var(--font-sm)}.step-desc{font-size:var(--font-xs);color:var(--color-text-tertiary)}.onboarding-step .btn-sm{font-size:var(--font-xs);padding:4px 12px}.markdown-window-overlay{background:var(--color-overlay-strong);z-index:1000;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.markdown-window{background:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal-xl);flex-direction:column;width:90%;max-width:700px;max-height:80vh;animation:.2s slideUp;display:flex}.markdown-window-header{padding:var(--spacing-md)var(--spacing-lg);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.markdown-window-header h3{font-size:var(--font-lg);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0}.markdown-window-close{color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;font-size:20px;transition:all .15s}.markdown-window-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.markdown-window-body{padding:var(--spacing-lg);flex:1;overflow-y:auto}.markdown-content{color:var(--color-text-primary);line-height:1.6}.markdown-content h2{font-size:var(--font-lg);margin:0 0 var(--spacing-md)0;color:var(--color-text-primary)}.markdown-content table{border-collapse:collapse;width:100%;margin:var(--spacing-md)0;font-size:var(--font-sm)}.markdown-content th,.markdown-content td{padding:var(--spacing-sm)var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border)}.markdown-content th{background:var(--color-bg-secondary);font-weight:var(--font-medium);color:var(--color-text-secondary)}.markdown-content tr:hover td{background:var(--color-bg-secondary)}.markdown-content code{background:var(--color-bg-tertiary);border-radius:var(--radius-sm);padding:2px 6px;font-family:monospace;font-size:.9em}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.markdown-window-footer{gap:var(--spacing-md);padding:var(--spacing-md)var(--spacing-lg);border-top:1px solid var(--color-border);background:var(--color-bg-secondary);border-radius:0 0 var(--radius-lg)var(--radius-lg);justify-content:flex-end;display:flex}.markdown-action-btn{padding:var(--spacing-sm)var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-sm);font-weight:var(--font-medium);cursor:pointer;border:none;transition:all .15s}.markdown-action-btn.btn-success{background:var(--color-success);color:var(--color-text-inverse)}.markdown-action-btn.btn-success:hover{background:var(--color-success-dark);transform:translateY(-1px)}.markdown-action-btn.btn-danger{background:var(--color-error);color:var(--color-text-inverse)}.markdown-action-btn.btn-danger:hover{background:var(--color-error-dark);transform:translateY(-1px)}.markdown-action-btn.btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border)}.markdown-action-btn.btn-secondary:hover{background:var(--color-bg-hover)}@media (max-width:768px){.stage-view{flex-direction:column;display:flex;z-index:100!important;background:var(--color-bg-primary)!important;border-radius:0!important;width:100vw!important;height:100vh!important;margin:0!important;position:fixed!important;inset:0!important}.stage-view .stage-header{z-index:10;box-shadow:var(--shadow-soft);flex-shrink:0;gap:8px;padding:10px 12px;position:sticky;top:0}.stage-view .stage-title{font-size:14px}.stage-header-actions{gap:8px;margin-right:8px}.workspace-page-header{flex-direction:column;align-items:stretch}.workspace-page-header-actions{justify-content:flex-start}.doctor-scope-trigger-label{max-width:none}.management-filter-checkbox{white-space:nowrap;gap:4px;font-size:12px}.admin-only-text{font-size:11px}.stage-header-actions button{padding:6px 10px;font-size:12px}.stage-view .stage-content{-webkit-overflow-scrolling:touch;flex:1;padding:0;overflow:hidden auto}.stage-form{padding:0 16px}.stage-form-full{padding:0 var(--spacing-sm)}.center-traditional-content:has(.stage-view){display:block!important;position:static!important}}