:root{color:#17202a;font-synthesis:none;--app-primary:#146c5a;--app-primary-dark:#0d5144;--app-sidebar:#20272d;--app-border:#dce2e7;--app-muted:#64717d;--app-surface:#fff;--el-color-primary:#146c5a;--el-color-primary-light-3:#4f9486;--el-color-primary-light-5:#8ab6ad;--el-color-primary-light-7:#bdd4cf;--el-color-primary-light-9:#e8f0ee;--el-border-radius-base:6px;--el-font-family:"Microsoft YaHei", "PingFang SC", Arial, sans-serif;--el-text-color-primary:#17202a;--el-text-color-regular:#394550;--el-text-color-secondary:#64717d;--el-border-color:#dce2e7;--el-fill-color-light:#f5f7f8;background:#f4f6f8;font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}body{color:#17202a;background:#f4f6f8;min-width:320px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh}.app-sidebar{z-index:30;background:var(--app-sidebar);color:#fff;flex-direction:column;width:232px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.app-brand{border-bottom:1px solid #ffffff1a;align-items:center;gap:11px;min-height:68px;padding:12px 20px;display:flex}.app-brand-mark{background:#1f8a70;border-radius:6px;flex:0 0 38px;place-items:center;width:38px;height:38px;font-size:18px;font-weight:700;display:grid}.app-brand-name{font-size:15px;font-weight:700}.app-brand-subtitle{color:#b8c1c8;margin-top:1px;font-size:11px}.app-navigation{flex:1;padding:16px 12px}.nav-group+.nav-group{margin-top:22px}.nav-group-label{color:#8f9aa3;padding:0 10px 7px;font-size:11px}.nav-item{color:#d9dfe3;border-radius:6px;align-items:center;gap:11px;min-height:42px;margin:3px 0;padding:9px 11px;font-size:14px;transition:background-color .15s,color .15s;display:flex}.nav-item:hover,.nav-item.is-active{color:#fff;background:#ffffff1a}.nav-item.is-active{box-shadow:inset 3px 0 #39b58f}.nav-item .el-icon{width:18px;font-size:18px}.app-sidebar-footer{color:#9ba5ad;border-top:1px solid #ffffff1a;padding:14px 20px;font-size:11px}.app-main{min-height:100vh;margin-left:232px}.app-topbar{z-index:20;border-bottom:1px solid var(--app-border);background:#fffffff5;justify-content:space-between;align-items:center;height:68px;padding:0 28px;display:flex;position:sticky;top:0}.app-topbar-left,.app-user-trigger{align-items:center;gap:10px;display:flex}.app-topbar-system{color:var(--app-muted);font-size:13px}.app-user-trigger{cursor:pointer;color:#26313a}.app-content{width:100%;max-width:1680px;margin:0 auto;padding:24px 28px 36px}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.page-title{color:#17202a;margin:0;font-size:24px;font-weight:700}.page-subtitle{color:var(--app-muted);margin:5px 0 0;font-size:13px}.page-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.page-alert{margin-bottom:16px}.panel-card{border:1px solid var(--app-border)!important;border-radius:7px!important;box-shadow:0 1px 2px #1c27310d!important}.panel-card+.panel-card{margin-top:16px}.panel-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.panel-title{margin:0;font-size:16px;font-weight:700}.panel-note{color:var(--app-muted);margin:4px 0 0;font-size:12px}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px;display:grid}.stats-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{border:1px solid var(--app-border);border-left:4px solid var(--stat-color,var(--app-primary));background:var(--app-surface);border-radius:7px;min-height:142px;padding:20px;transition:border-color .15s,box-shadow .15s;display:block;box-shadow:0 1px 4px #1c27310a}.stat-card:hover{border-color:var(--stat-color,var(--app-primary));box-shadow:0 3px 10px #1c273112}.stat-label{color:#4e5a64;font-size:14px}.stat-value{color:#11181e;margin:9px 0 8px;font-size:38px;font-weight:750;line-height:1.1}.stat-hint{color:var(--app-muted);font-size:12px}.dashboard-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card.is-compact{min-height:112px;padding:16px 18px}.stat-card.is-compact .stat-value{margin:5px 0;font-size:31px}.stat-card .stat-value.is-money{overflow-wrap:anywhere;font-size:26px}.filter-bar{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.filter-field{min-width:180px}.filter-keyword{min-width:230px}.field-label{color:#394550;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.schedule-floor+.schedule-floor{margin-top:18px}.schedule-legend,.schedule-row{grid-template-columns:minmax(170px,1.25fr) repeat(2,minmax(160px,1fr)) minmax(190px,1.2fr);gap:10px;display:grid}.schedule-legend{color:var(--app-muted);padding:0 12px 9px;font-size:12px}.schedule-row{border-top:1px solid #e7ebee;padding:10px 12px}.venue-summary,.period-cell{background:#fff;border:1px solid #dfe5e9;border-radius:6px;min-height:70px;padding:11px 12px}.venue-name{font-weight:700}.venue-meta,.period-meta{color:var(--app-muted);margin-top:4px;font-size:12px}.period-cell{flex-direction:column;justify-content:center;display:flex}.period-cell.is-free{color:#0d634f;background:#f2f8f6;border-color:#b7d8cf}.period-cell.is-booked{color:#7d3927;background:#fff7f4;border-color:#f0c9bd}.period-label{font-size:12px}.period-value{margin-top:3px;font-weight:700}.custom-slot+.custom-slot{margin-top:5px}.venue-state-legend{color:var(--app-muted);flex-wrap:wrap;gap:18px;margin-top:16px;font-size:12px;display:flex}.venue-state-legend span{align-items:center;gap:6px;display:inline-flex}.venue-state-legend i{border-radius:4px;width:18px;height:18px}.venue-state-legend .is-free,.venue-state-block.is-free{background:#2f7fd8}.venue-state-legend .is-selected,.venue-state-block.is-selected{background:#f0b429}.venue-state-legend .is-booked,.venue-state-block.is-booked{background:#aeb7c0}.venue-state-legend .schedule-legend-booked,.mobile-month-panel .venue-state-block.is-booked{background:#dc3030}.venue-state-block.is-unavailable{background:#aeb7c0}.venue-state-legend .heat-empty{background:#2767e8}.venue-state-legend .heat-low{background:#ffd6d6}.venue-state-legend .heat-medium{background:#ff9b9b}.venue-state-legend .heat-high{background:#f45b5b}.venue-state-legend .heat-full{background:#b91c1c}.venue-state-legend .heat-past-empty,.venue-state-legend .heat-history{background:#8f99a5}.venue-state-legend .is-selected-outline{background:0 0;border:3px solid #f0b429}.venue-state-grid{grid-template-columns:repeat(12,minmax(110px,1fr));gap:14px 10px;display:grid}.venue-state-item{text-align:center;min-width:0}.venue-state-block{aspect-ratio:1;color:#fff;cursor:pointer;border:0;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:100%;padding:8px 5px;display:flex}.venue-state-block:disabled{cursor:default;opacity:1}.venue-state-icon{font-size:20px}.venue-state-name{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:13px;line-height:1.25;overflow:hidden}.venue-state-status{opacity:.9;font-size:11px}.venue-booking-links{gap:3px;margin-top:5px;font-size:11px;display:grid}.venue-booking-links a{color:#5d6872;overflow-wrap:anywhere}.schedule-period-table-wrap{max-width:100%;overflow-x:auto}.schedule-period-table{border-collapse:separate;border-spacing:0 8px;table-layout:fixed;width:100%;min-width:920px}.schedule-period-table th,.schedule-period-table td{padding:0 6px}.schedule-period-table thead th{color:#53616d;text-align:center;padding-bottom:8px;font-size:12px}.schedule-period-table thead th:first-child{text-align:left;width:170px}.schedule-period-table thead small,.schedule-period-table tbody th small{color:var(--app-muted);margin-top:3px;font-size:10px;font-weight:400;display:block}.schedule-period-table tbody th{text-align:left;border-bottom:1px solid #e5e9ec;padding:10px 8px}.schedule-period-cell{color:#fff;text-align:center;border:2px solid #0000;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:100%;min-height:72px;padding:8px;display:flex}.schedule-period-cell.is-free{background:#2f7fd8}.schedule-period-cell.is-booked{background:#dc3030}.schedule-period-cell.is-unavailable{background:#aeb7c0}.schedule-period-cell.is-selected{background:#2f7fd8;border-color:#f0b429;box-shadow:0 0 0 2px #f0b42959}.schedule-period-cell span,.schedule-period-cell small{opacity:.92;font-size:10px}.schedule-period-cell:disabled{cursor:default;opacity:1}.desktop-month-panel>.el-card__body{padding:0}.mobile-month-overview-panel,.mobile-month-panel{display:none}.month-overview-weekdays,.month-overview-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;display:grid}.month-overview-weekdays{color:var(--app-muted);text-align:center;margin-bottom:9px;font-size:12px;font-weight:600}.month-overview-day-wrap{min-width:0}.month-overview-day{color:#fff;cursor:pointer;text-align:left;border:3px solid #0000;border-radius:7px;flex-direction:column;justify-content:space-between;gap:4px;width:100%;min-height:92px;padding:11px 12px;display:flex}.month-overview-day.heat-empty,.month-summary-cell.heat-empty{color:#fff;background:#2767e8}.month-overview-day.heat-past-empty,.month-summary-cell.heat-past-empty,.month-overview-day.heat-history,.month-summary-cell.heat-history{color:#fff;background:#8f99a5}.month-overview-day.heat-low,.month-summary-cell.heat-low{color:#681c1c;background:#ffd6d6}.month-overview-day.heat-medium,.month-summary-cell.heat-medium{color:#681c1c;background:#ff9b9b}.month-overview-day.heat-high,.month-summary-cell.heat-high{color:#fff;background:#f45b5b}.month-overview-day.heat-very-high,.month-summary-cell.heat-very-high{color:#fff;background:#dc3030}.month-overview-day.heat-full,.month-summary-cell.heat-full{color:#fff;background:#b91c1c}.month-overview-day.is-active,.month-summary-cell.is-active{border-color:#f0b429;box-shadow:0 0 0 1px #7b520047}.month-overview-date{justify-content:space-between;align-items:center;gap:6px;display:flex}.month-overview-date strong{font-size:16px}.month-overview-date small{opacity:.86;font-size:11px}.month-overview-day>b{font-size:21px;line-height:1}.month-overview-day>em{opacity:.9;font-size:11px;font-style:normal}.month-matrix-scroll{max-width:100%;overflow:auto}.month-matrix{border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:100%}.month-matrix th,.month-matrix td{border-bottom:1px solid #e2e7eb;border-right:1px solid #e2e7eb}.month-matrix thead th{z-index:4;color:#33404a;background:#f7f9fa;position:sticky;top:0}.month-matrix thead tr:nth-child(2) th{top:39px}.month-floor-heading{text-align:center;height:39px;padding:8px;font-size:13px}.month-venue-heading{overflow-wrap:anywhere;text-align:center;width:76px;min-width:76px;height:58px;padding:7px 5px;font-size:12px;line-height:1.25}.month-date-column{z-index:3;text-align:left;background:#fff;width:104px;min-width:104px;position:sticky;left:0}.month-matrix thead .month-date-column{z-index:6;background:#f7f9fa;padding:10px 13px}.month-matrix tbody .month-date-column{height:48px;padding:7px 12px}.month-date-column strong{font-size:13px;display:block}.month-date-column span{color:var(--app-muted);font-size:11px}.month-period-column{z-index:3;text-align:left;background:#fff;width:86px;min-width:86px;padding:5px 8px;position:sticky;left:104px}.month-period-column small{color:var(--app-muted);margin-top:2px;font-size:9px;font-weight:400;display:block}.month-matrix thead .month-period-column{z-index:6;text-align:center;background:#f7f9fa}.month-summary-column{z-index:3;text-align:center;background:#fff;width:88px;min-width:88px;padding:5px;position:sticky;left:190px}.month-matrix thead .month-summary-column{z-index:6;background:#f7f9fa;padding:8px 5px;font-size:11px}.month-summary-cell{border:2px solid #0000;border-radius:5px;justify-content:center;align-items:center;gap:4px;width:100%;min-height:36px;display:flex}.month-summary-cell strong{font-size:12px}.month-summary-cell span{opacity:.86;font-size:9px}.month-matrix td{background:#fff;width:76px;min-width:76px;padding:5px}.month-state-cell{color:#53616d;cursor:pointer;background:#fff;border:1px solid #dfe5e9;border-radius:5px;justify-content:center;align-items:center;gap:3px;width:100%;min-height:36px;font-size:11px;display:flex;position:relative}.month-state-cell:hover:not(:disabled){background:#f8fafb;border-color:#8ba2b5}.month-state-cell.is-free{color:#fff;background:#2f7fd8;border-color:#2f7fd8}.month-state-cell.is-booked{color:#fff;background:#dc3030;border-color:#dc3030;font-weight:600}.month-state-cell.is-unavailable{color:#fff;background:#aeb7c0;border-color:#aeb7c0}.month-state-cell.is-selected{color:#fff;background:#2f7fd8;border-color:#f0b429;box-shadow:inset 0 0 0 2px #f0b429}.month-state-cell.is-past-free{color:#8a949d}.month-state-cell:disabled{cursor:default;opacity:1}.month-state-dot{background:#2f7fd8;border-radius:50%;flex:0 0 6px;width:6px;height:6px}.month-state-cell.is-booked .month-state-dot{background:#dc3030}.month-state-cell.is-selected .month-state-dot{background:#d7950b}.month-state-cell.is-past-free .month-state-dot{background:#aab3bb}.month-state-cell b{font-size:9px;position:absolute;top:2px;right:4px}.month-matrix tr.is-today>.month-date-column{color:#176dc1;box-shadow:inset 3px 0 #2f7fd8}.month-matrix tr.is-period-start>*{border-top:2px solid #cfd7dd}.month-matrix tr.is-past td,.month-matrix tr.is-past>.month-date-column{background:#f7f8f9}.month-booking-list{gap:10px;display:grid}.month-booking-item{border:1px solid var(--app-border);color:#26313a;border-radius:7px;grid-template-columns:1fr auto;gap:5px 12px;padding:14px;display:grid}.month-booking-item:hover{border-color:var(--app-primary)}.month-booking-item span{color:#176dc1;font-weight:600}.month-booking-item small{color:var(--app-muted);grid-column:1/-1}.selection-action-bar{z-index:12;border:1px solid var(--app-border);background:#fffffff7;border-radius:7px;justify-content:space-between;align-items:center;gap:16px;max-width:620px;margin:18px auto 0;padding:12px 16px;display:flex;position:sticky;bottom:14px;box-shadow:0 8px 25px #1c273124}.booking-status-tabs{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 20px;display:grid}.form-grid .is-wide{grid-column:1/-1}.booking-form-shell{max-width:1280px;margin:0 auto}.booking-form-card>.el-card__body{padding:0}.form-section{grid-template-columns:190px minmax(0,1fr);gap:28px;padding:24px;display:grid}.form-section+.form-section{border-top:1px solid var(--app-border)}.form-section-heading{align-items:flex-start;gap:10px;display:flex}.form-section-heading>span{color:#2f7fd8;background:#e9f2ff;border-radius:6px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:grid}.form-section-heading h3{margin:1px 0 3px;font-size:15px}.form-section-heading p{color:var(--app-muted);margin:0;font-size:12px}.venue-select-section+.venue-select-section{margin-top:18px}.venue-select-heading{border-left:3px solid var(--app-primary);background:#f5f7f8;justify-content:space-between;align-items:center;margin:0 0 10px;padding:9px 12px;font-size:14px;display:flex}.venue-select-heading span{color:var(--app-muted);font-size:12px;font-weight:400}.form-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.venue-select-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.venue-checkbox{border:1px solid var(--app-border);border-radius:6px;width:100%;min-height:48px;padding:10px 12px;margin:0!important}.venue-checkbox.is-checked{border-color:var(--app-primary);background:#f2f8f6}.mobile-list{display:none}.mobile-record{border-bottom:1px solid #e4e8eb;padding:14px 0}.mobile-record:last-child{border-bottom:0}.mobile-record-title{justify-content:space-between;align-items:center;gap:12px;font-weight:700;display:flex}.mobile-record-line{color:#394550;grid-template-columns:70px minmax(0,1fr);gap:8px;margin-top:7px;font-size:13px;display:grid}.mobile-record-label{color:var(--app-muted)}.record-actions{text-align:right;margin-top:12px}.pagination-bar{border-top:1px solid #e4e8eb;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:16px;display:flex}.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.detail-item{flex-direction:column;gap:5px;min-width:0;display:flex}.detail-item span{color:var(--app-muted);font-size:12px}.detail-item strong{overflow-wrap:anywhere;font-size:14px}.detail-item.is-wide{grid-column:1/-1}.cancellation-alert{margin-top:20px;margin-bottom:0}.section-heading{margin:22px 0 12px}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.slot-grid .panel-card+.panel-card{margin-top:0}.slot-time{color:#394550;margin-bottom:14px;font-weight:600}.consumption-summary{background:#f2f8f6;border-radius:6px;grid-template-columns:1fr auto;gap:5px 12px;margin-bottom:14px;padding:13px;display:grid}.consumption-summary span{color:var(--app-muted);font-size:12px}.consumption-summary strong{font-size:20px}.consumption-summary small{color:var(--app-muted);grid-column:1/-1}.cancel-slot-list{margin-bottom:18px}.cancel-slot{border-bottom:1px solid #e4e8eb;justify-content:space-between;gap:16px;padding:11px 0;display:flex}.danger-panel{max-width:780px;margin:0 auto}.form-panel{max-width:900px;margin:0 auto}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.report-grid .panel-card+.panel-card{margin-top:0}.report-card p{min-height:48px;color:var(--app-muted)}.audit-json{color:#26313a;white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f7f8;border-radius:6px;max-height:58vh;margin:0;padding:14px;font-size:12px;overflow:auto}.login-page{background:#edf1f3;grid-template-columns:minmax(330px,.9fr) minmax(460px,1.1fr);min-height:100vh;display:grid}.login-brand{color:#fff;background:#20272d;flex-direction:column;justify-content:center;padding:64px clamp(36px,7vw,110px);display:flex}.login-brand-mark{background:#1f8a70;border-radius:7px;place-items:center;width:52px;height:52px;font-size:24px;font-weight:700;display:grid}.login-brand h1{margin:22px 0 7px;font-size:30px}.login-brand p{color:#c2cbd1;margin:0;font-size:15px}.login-main{place-items:center;padding:30px;display:grid}.login-panel{border:1px solid var(--app-border);background:#fff;border-radius:8px;width:min(100%,420px);padding:30px;box-shadow:0 12px 32px #20272d1a}.login-panel h2{margin:0;font-size:24px}.login-panel-subtitle{color:var(--app-muted);margin:6px 0 24px;font-size:13px}.login-submit{width:100%;margin-top:6px}.mobile-menu-button{display:none!important}.mobile-drawer .el-drawer__body{background:var(--app-sidebar);padding:0}@media (width<=1520px) and (width>=981px){.venue-state-grid{grid-template-columns:repeat(8,minmax(110px,1fr))}}@media (width<=980px){.app-sidebar{display:none}.app-main{margin-left:0}.mobile-menu-button{display:inline-flex!important}.stats-grid{grid-template-columns:1fr}.stat-card{min-height:120px}.venue-select-grid,.dashboard-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.venue-state-grid{grid-template-columns:repeat(4,minmax(90px,1fr))}}@media (width<=700px){.app-topbar{height:58px;padding:0 14px}.app-topbar-system{display:none}.app-content{padding:17px 14px 26px}.page-header{margin-bottom:15px;display:block}.page-title{font-size:21px}.page-actions{justify-content:flex-start;margin-top:12px}.stat-card{min-height:108px;padding:16px}.stat-value{margin:6px 0;font-size:32px}.filter-bar,.filter-field{width:100%}.schedule-legend{display:none}.schedule-row{padding:12px;display:block}.venue-summary,.period-cell{min-height:auto}.period-cell{margin-top:8px}.form-grid,.venue-select-grid{grid-template-columns:minmax(0,1fr)}.form-section{padding:18px 16px;display:block}.form-section-heading{margin-bottom:16px}.dashboard-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.venue-state-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 8px}.venue-state-block{border-radius:6px;font-size:23px}.venue-state-item>strong{font-size:12px}.stat-card.is-compact{min-height:102px;padding:14px}.stat-card.is-compact .stat-value{font-size:27px}.detail-grid,.slot-grid,.report-grid{grid-template-columns:minmax(0,1fr)}.pagination-bar{flex-direction:column;align-items:flex-start}.cancel-slot{flex-direction:column;gap:3px}.desktop-table{display:none}.mobile-list{display:block}.form-actions{z-index:10;border-top:1px solid var(--app-border);background:#fffffff7;margin:18px -14px -14px;padding:12px 14px;position:sticky;bottom:0}.form-actions .el-button{flex:1}.login-page{background:#fff;min-height:100vh;padding:0;display:block}.login-brand{justify-content:flex-end;min-height:190px;padding:34px 24px 28px}.login-brand-mark{width:44px;height:44px;font-size:20px}.login-brand h1{margin-top:14px;font-size:24px}.login-main{padding:28px 20px;display:block}.login-panel{width:100%;box-shadow:none;border:0;padding:0}.el-card.desktop-month-panel{display:none!important}.mobile-month-overview-panel,.mobile-month-panel{display:block}.mobile-month-panel{margin-top:16px}.mobile-month-overview-panel>.el-card__body{padding:10px}.month-overview-weekdays,.month-overview-calendar{gap:4px}.month-overview-weekdays{margin-bottom:6px;font-size:10px}.month-overview-day{text-align:center;border-width:2px;justify-content:center;align-items:center;gap:2px;min-height:60px;padding:4px 1px}.month-overview-date{display:block}.month-overview-date strong{font-size:13px}.month-overview-date small,.month-overview-day>em{display:none}.month-overview-day>b{font-size:11px;font-weight:750}.mobile-selected-day{color:#26313a;align-items:center;gap:8px;margin:16px 2px 10px;display:flex}.mobile-selected-day .el-icon{color:#2f7fd8}.mobile-selected-day span{color:var(--app-muted);margin-left:auto;font-size:12px}.mobile-period-selector{width:100%;margin-bottom:8px}.schedule-period-table{border-spacing:0;min-width:0}.schedule-period-table thead{display:none}.schedule-period-table tbody,.schedule-period-table tr,.schedule-period-table th,.schedule-period-table td{width:100%;display:block}.schedule-period-table tbody tr{border:1px solid var(--app-border);border-radius:7px;margin-bottom:14px;padding:10px}.schedule-period-table tbody th{border:0}.schedule-period-table td{margin-top:7px;padding:0}.schedule-period-cell{min-height:60px}}.venue-period-summary{color:#53616d;flex-wrap:wrap;gap:5px 14px;font-size:12px;display:flex}.venue-period-editor{gap:12px;display:grid}.venue-period-row{border:1px solid var(--app-border);background:#fafbfc;border-radius:7px;grid-template-columns:auto 64px minmax(150px,220px) auto minmax(150px,220px) 1fr;align-items:center;gap:12px;padding:12px 14px;display:grid}.field-help{color:var(--app-muted);margin:6px 0 0;font-size:12px}.field-error{color:var(--el-color-danger);font-size:12px}.venue-state-legend .is-confirmed,.schedule-period-cell.is-confirmed,.month-state-cell.is-confirmed,.venue-state-block.is-confirmed{color:#fff;background:#14805e;border-color:#14805e}.venue-state-legend .is-held,.schedule-period-cell.is-held,.month-state-cell.is-held,.venue-state-block.is-held{color:#fff;background:#a66b14;border-color:#a66b14}.venue-state-legend .is-unavailable,.venue-state-legend .is-history,.month-state-cell.is-history,.venue-state-block.is-history{color:#fff;background:#aeb7c0;border-color:#aeb7c0}.schedule-period-cell.is-free,.month-state-cell.is-free,.venue-state-block.is-free{color:#176dc1;background:#fff;border-color:#2f7fd8}.month-overview-panel{display:block}.month-overview-day{color:#26313a;background:#fff;border:1px solid #dfe5e9}.month-overview-day.is-history,.month-summary-cell.is-history{color:#fff;background:#aeb7c0;border-color:#aeb7c0}.month-overview-day.is-today:not(.is-active){box-shadow:inset 0 0 0 2px #2f7fd8}.month-count-badges{justify-content:center;align-items:center;gap:6px;min-height:25px;display:flex}.month-count-badges b{color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 6px;font-size:12px;line-height:1;display:inline-flex}.month-count-badges .is-confirmed{background:#14805e}.month-count-badges .is-held{background:#a66b14}.month-count-badges em{color:var(--app-muted);font-size:11px;font-style:normal}.month-matrix-scroll{max-height:min(720px,100vh - 180px)}.month-date-column{width:72px;min-width:72px}.month-period-column{left:72px}.month-summary-column{left:158px}.month-date-link{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;display:block}.month-state-cell.is-confirmed .month-state-dot,.month-state-cell.is-held .month-state-dot{background:#fff}@media (width>=768px){.desktop-month-panel{z-index:10;position:sticky;top:68px}.desktop-month-panel>.el-card__body{background:#fff}.month-matrix-scroll{max-height:calc(100vh - 92px)}}@media (width<=767px){.month-overview-panel>.el-card__body{padding:10px}.venue-period-row{grid-template-columns:auto 1fr}}
