@charset "UTF-8";
.sidebar .brand strong{font-size:24px;white-space:nowrap}
:root{--bg:#fff8f6;--surface:#fff;--text:#3d2833;--muted:#8f8490;--rose:#c07880;--rose-dark:#a15b67;--line:#eee1e1;--soft:#f6e9e9;--font:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.6 var(--font);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;background:none;color:inherit}button:disabled{opacity:.45;cursor:default}a{color:var(--rose-dark)}h1,h2,h3,p{margin:0}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c0788060;outline-offset:3px}
.admin-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:28px 16px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{padding:0 16px;margin-bottom:36px}.brand strong{display:block;font-size:29px;line-height:1.4;letter-spacing:-1px}.brand span{display:block;font-size:15px;color:#65515d;margin-top:2px}.side-nav{display:grid;gap:10px}.side-nav button{display:flex;align-items:center;gap:18px;padding:14px 18px;text-align:left;border-radius:9px;font-size:15px}.side-nav button svg{width:21px;height:21px}.side-nav button.active{background:#f8ecec;color:#8b5361}.sidebar-footer{margin-top:auto;border-top:1px solid var(--line);padding:20px 16px 0}.operator{display:flex;gap:12px;align-items:center;font-size:13px}.operator small{display:block;color:var(--muted);font-size:11px}.logout-button{display:flex;align-items:center;gap:13px;padding:19px 0 0;font-size:13px}.admin-main{padding:38px 40px 50px;min-width:0}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}.page-heading h1{font-size:32px;line-height:1.3;letter-spacing:-.6px}.page-heading p{font-size:15px;color:var(--muted);margin-top:7px}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;border-radius:7px;padding:11px 19px;font-size:14px;font-weight:500;white-space:nowrap;min-height:43px}.button.primary{background:var(--rose);color:#fff}.button.secondary{border:1px solid var(--rose);color:var(--rose-dark);background:#fff}.button.neutral{border:1px solid var(--line);background:#fff;color:#73626c}.link-button{font-size:13px;color:var(--rose-dark);text-decoration:underline;text-underline-offset:3px;padding:5px 0}.source-notice{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fbf1f1;border-radius:9px;padding:12px 17px;font-size:13px;color:#786b74;margin-bottom:24px}.source-notice svg{width:18px;height:18px}.table-panel{background:#fff;border:1px solid var(--line);border-radius:11px;overflow:hidden}.filter-toolbar{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;padding:24px}.field{display:flex;flex-direction:column;gap:7px;min-width:145px;flex:1}.field.search-field{flex:1.6;min-width:210px}.field label{font-size:13px;font-weight:550}.field input,.field select{width:100%;min-height:43px;padding:9px 12px;border:1px solid #e4dce1;border-radius:6px;background:#fff;color:var(--text);font-size:13px;min-width:0}.field input::placeholder{color:#a59da7}.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;white-space:nowrap}.data-table th{font-size:13px;font-weight:550;text-align:left;background:#fbf4f3;padding:16px 24px;color:#503d49;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.data-table td{font-size:13px;padding:20px 24px;border-bottom:1px solid #f2e8e9;vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fffcfb}.data-table td small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.data-table .numeric{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.data-table .reference-cell{min-width:150px}.state-badge{display:inline-block;white-space:nowrap;font-size:11px;font-weight:500;padding:4px 9px;line-height:1.7;border-radius:5px;background:#f0edf0;color:#8b7e87}.state-badge.reached,.state-badge.success{background:#e6f3e9;color:#397253}.state-badge.below,.state-badge.failed{background:#fff0d4;color:#9a6d30}.table-footer{display:flex;justify-content:space-between;gap:18px;align-items:center;border-top:1px solid var(--line);padding:20px 24px;font-size:12px;color:var(--muted);flex-wrap:wrap}.pagination{display:flex;gap:10px;align-items:center}.pagination button{width:32px;height:32px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);border-radius:5px}.pagination svg{width:16px;height:16px}.pagination .page-number{background:var(--rose);color:#fff;padding:5px 11px;border-radius:5px;font-size:12px}.muted{color:var(--muted)}.empty-state{text-align:center;padding:65px 20px;color:var(--muted)}.empty-state h3{font-size:16px;color:var(--text);margin-bottom:7px}.loading{padding:30px;color:var(--muted)}.error-panel{padding:24px;color:#a05842;background:#fff;border:1px solid #efd8c9;border-radius:10px}.error-panel button{margin-top:12px}.error-text{color:#a05842;font-size:13px;min-height:22px}.metric-rail{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:11px;padding:26px 0;margin-bottom:28px}.metric{padding:0 26px;border-right:1px solid var(--line)}.metric:last-child{border:0}.metric span{display:block;color:var(--muted);font-size:13px}.metric strong{display:block;font-size:35px;font-weight:600;line-height:1.5;font-variant-numeric:tabular-nums}.metric small{font-size:11px;color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:center;margin:25px 0 14px}.section-head h2{font-size:18px}.import-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);gap:26px}.form-panel,.explain-panel{border:1px solid var(--line);border-radius:11px;background:#fff;padding:26px}.form-panel h2,.explain-panel h2{font-size:19px;margin-bottom:20px}.form-panel .field{margin-bottom:18px}.upload-zone{border:1px dashed #d7bbc4;border-radius:9px;padding:24px 18px;background:#fffafa;margin-top:5px}.upload-zone input{max-width:100%;font-size:12px}.form-panel .button{margin-top:15px}.file-description{margin-top:12px;font-size:12px;color:var(--muted)}.explain-panel p,.explain-panel li{font-size:13px;line-height:1.9;color:#7f6c78}.explain-panel ul{padding-left:20px;margin:12px 0}.import-receipt{background:#edf6ef;border:1px solid #d9e9dd;color:#447555;padding:15px;margin-top:18px;border-radius:8px;font-size:13px}.rules-layout{display:grid;grid-template-columns:1fr 1fr;gap:22px}.rule-block{background:#fff;border:1px solid var(--line);border-radius:11px;padding:26px}.rule-block h2{font-size:18px;margin-bottom:12px}.rule-number{font-size:26px;color:var(--rose-dark);font-weight:600;margin-bottom:13px}.rule-block p{font-size:13px;color:var(--muted);line-height:1.9}.rule-note{padding:20px 0;color:var(--muted);font-size:13px;line-height:1.9}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login-panel{width:410px;max-width:100%;background:#fff;border:1px solid var(--line);border-radius:18px;padding:36px}.login-panel .brand{padding:0;margin-bottom:28px}.login-panel h1{font-size:22px;margin-bottom:24px}.login-panel .field{margin:17px 0}.login-panel .button{width:100%;margin-top:14px}.login-panel .caption{font-size:12px;color:var(--muted);margin:20px 0 0;line-height:1.9}.login-demo{display:block;text-align:center;margin-top:18px;font-size:13px}
#admin-detail{padding:0;border:1px solid var(--line);border-radius:14px;width:min(850px,calc(100% - 28px));max-height:90svh;color:var(--text);background:var(--bg)}#admin-detail::backdrop{background:#3d283340;backdrop-filter:blur(2px)}.detail-header{display:flex;align-items:center;justify-content:space-between;padding:23px 28px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1}.detail-header h2{font-size:22px}.close-detail{padding:7px;display:grid;place-items:center}.detail-body{padding:24px 28px}.detail-meta{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;gap:16px}.detail-meta h3{font-size:18px;margin-bottom:6px}.detail-meta p{font-size:12px;color:var(--muted)}.detail-count{font-size:33px;font-weight:600;white-space:nowrap}.detail-count small{font-size:13px;color:var(--muted);font-weight:400}.detail-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px;margin-bottom:20px}.detail-fields div{font-size:12px}.detail-fields span{display:block;color:var(--muted);margin-bottom:4px}.detail-tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);margin-bottom:20px}.detail-tabs button{font-size:13px;padding:10px 0;border-bottom:2px solid transparent}.detail-tabs button.active{color:var(--rose-dark);border-color:var(--rose)}.event-table{min-width:460px}.event-table td,.event-table th{padding:12px 15px;font-size:12px}.event-table .revoked{color:var(--muted);text-decoration:line-through}.detail-note{font-size:12px;color:var(--muted);line-height:1.9;margin:18px 0}.admin-day-summary{border:1px solid var(--line);border-radius:11px;background:#fff;padding:20px}.admin-day-summary h3{font-size:16px;margin-bottom:18px}.summary-method+.summary-method{border-top:1px solid var(--line);margin-top:15px;padding-top:15px}.summary-method-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.summary-method-heading strong{font-size:13px}.summary-method p{font-size:13px;margin-top:9px;color:#7f6c78}.summary-method b{color:var(--text)}.summary-method small{display:block;font-size:11px;color:var(--muted);margin-top:6px}.summary-slots{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;margin-top:9px;color:var(--muted)}.summary-date-form{display:flex;align-items:flex-end;gap:14px;margin-bottom:18px}.summary-date-form .field{max-width:220px}.summary-footer{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin-top:16px}.mobile-table-hint{display:none}#admin-toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:#3d2833ed;color:#fff;padding:12px 20px;border-radius:10px;font-size:13px;opacity:0;pointer-events:none;z-index:20;max-width:calc(100% - 36px);text-align:center}#admin-toast.visible{opacity:1}.read-only-note{color:var(--muted);font-size:12px}
@media(max-width:1100px){.admin-shell{grid-template-columns:200px minmax(0,1fr)}.admin-main{padding:30px 24px}.sidebar{padding:25px 12px}.filter-toolbar{gap:12px;padding:20px}.data-table td,.data-table th{padding-left:18px;padding-right:18px}}
@media(max-width:760px){.admin-shell{display:block}.sidebar{position:static;height:auto;padding:17px 18px;border-bottom:1px solid var(--line);border-right:0}.brand{margin:0;padding:0;display:flex;align-items:baseline;gap:10px}.brand strong{font-size:24px}.brand span{font-size:12px}.side-nav{display:flex;overflow-x:auto;gap:4px;margin-top:18px;padding-bottom:2px}.side-nav button{white-space:nowrap;padding:9px 12px;gap:7px;font-size:12px;flex-shrink:0}.side-nav button svg{width:16px;height:16px}.sidebar-footer{padding:12px 0 0;margin-top:14px;display:flex;justify-content:space-between;align-items:center}.operator svg{display:none}.operator{font-size:12px;gap:0}.operator small{display:none}.logout-button{padding:0;font-size:12px;gap:6px}.logout-button svg{width:16px;height:16px}.admin-main{padding:24px 16px}.page-heading h1{font-size:25px}.page-heading p{font-size:12px}.page-heading .button{font-size:12px;padding:9px 12px}.source-notice{font-size:11px;padding:11px 12px}.filter-toolbar{padding:16px;gap:12px}.field,.field.search-field{min-width:calc(50% - 12px);flex:1}.field.search-field{flex-basis:100%}.filter-toolbar .button{flex:1}.mobile-table-hint{display:block;font-size:11px;color:var(--muted);padding:0 16px 12px}.data-table td,.data-table th{padding:15px 16px;font-size:12px}.table-footer{padding:16px}.table-footer>p{font-size:11px}.metric-rail{grid-template-columns:1fr 1fr;padding:0}.metric{padding:17px 20px;border-bottom:1px solid var(--line)}.metric:nth-child(2){border-right:0}.metric:nth-child(3),.metric:nth-child(4){border-bottom:0}.metric strong{font-size:29px}.import-layout,.rules-layout{grid-template-columns:1fr}.form-panel,.explain-panel,.rule-block{padding:22px}.detail-header{padding:18px}.detail-body{padding:18px}.detail-fields{grid-template-columns:1fr}.detail-meta h3{font-size:16px}.detail-count{font-size:28px}.admin-day-summary{padding:16px}.summary-method-heading strong{font-size:12px}.summary-date-form .field{min-width:0;flex:1}.login-panel{padding:28px}.login-panel .brand{display:block}.login-panel .brand strong{font-size:29px}.login-panel .brand span{font-size:14px}.login-panel .field{min-width:0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.pagination select{font:12px var(--font);color:var(--muted);border:1px solid var(--line);border-radius:5px;padding:7px;background:#fff}
.pagination>span{white-space:nowrap}.pagination button{flex-shrink:0}
@media(max-width:760px){.pagination{gap:6px;flex-wrap:wrap}}

.overview-filter-panel{margin-bottom:24px}.date-shortcuts{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.date-shortcuts button{padding:8px 12px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--rose-dark);font-size:12px;white-space:nowrap}.filter-description{padding:0 24px 18px;color:var(--muted);font-size:12px;line-height:1.8}.filter-error{flex-basis:100%;font-size:13px;color:#a05842}.filter-error:empty{display:none}.filter-actions{display:flex;gap:10px}.users-filter-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.users-filter-toolbar .field{min-width:0}.users-filter-toolbar .filter-actions,.users-filter-toolbar .filter-error{grid-column:1/-1}.sort-heading{display:inline-flex;align-items:center;gap:7px;font-weight:550;padding:0}.sort-heading.selected{color:var(--rose-dark)}.sort-heading span{font-size:14px}.user-id{font-family:ui-monospace,SFMono-Regular,monospace;font-size:11px!important}.users-table{min-width:1050px}
@media(max-width:760px){.users-filter-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.users-filter-toolbar .search-field{grid-column:1/-1}.filter-description{padding:0 16px 16px;font-size:11px}.overview-filter-panel .date-shortcuts{flex-basis:100%}.filter-actions .button{flex:1}}

@media(max-width:380px){.users-filter-toolbar .date-field,.users-filter-toolbar .time-field{grid-column:1/-1}.overview-filter-panel .field{flex-basis:100%}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.compact-admin-view .page-heading{margin-bottom:18px}.compact-admin-view .source-notice{padding:8px 12px;margin-bottom:22px;background:#fbf3f2;border-color:#f0e6e5;font-size:12px}.compact-admin-view .source-notice svg{width:16px;height:16px}.overview-summary-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.overview-summary-toolbar>div{display:flex;align-items:center;gap:18px}.overview-summary-toolbar h2{font-size:17px;font-weight:600}.statistics-note{position:relative;font-size:12px;color:var(--muted)}.statistics-note summary{display:flex;align-items:center;gap:5px;cursor:pointer;list-style:none;white-space:nowrap}.statistics-note summary::-webkit-details-marker{display:none}.statistics-note svg{width:14px;height:14px}.statistics-note p{position:absolute;top:30px;left:0;width:260px;padding:13px 16px;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 6px 20px #3d28330b;z-index:2;line-height:1.8}.range-control{display:flex;align-items:center;gap:10px;min-height:43px;padding:10px 13px;border:1px solid #e7dce1;border-radius:8px;background:#fff;font-size:13px;white-space:nowrap;text-align:left}.range-control>svg:first-child{color:#9a7986;width:17px;height:17px}.range-control>svg:last-child{width:14px;height:14px;margin-left:7px;color:var(--muted)}.range-control>span{display:flex;align-items:center;gap:10px;min-width:0}.range-context{font-size:12px;color:var(--muted)}.range-label{font-size:13px}.range-control.has-range{border-color:#d7b8c0;color:#8d5665}.metric-rail.metric-cards{border:0;border-radius:0;padding:0;background:transparent;gap:15px;margin-bottom:28px}.metric-cards .metric{border:1px solid #eee1e1;border-radius:12px;background:#fff;padding:21px 22px;box-shadow:0 3px 12px #7e525004;min-width:0}.metric-title{display:flex;justify-content:space-between;align-items:center;gap:8px}.metric-title span{font-size:13px;color:#71616d}.metric-title i{display:grid;place-items:center;width:31px;height:31px;background:#fbf0f1;border-radius:9px;color:#b87c8a;flex-shrink:0}.metric-title svg{width:17px;height:17px}.metric-cards .metric strong{font-size:38px;line-height:1.45;margin:7px 0 3px;letter-spacing:-1px;font-weight:600}.metric-cards .metric small{font-size:11px;color:#9a8d97}.compact-admin-view .section-head h2{font-size:17px}.compact-admin-view .rule-note{font-size:12px}
.compact-user-filter{padding:18px 20px;border-bottom:1px solid var(--line)}.compact-filter-row{display:grid;grid-template-columns:minmax(210px,1fr) auto auto auto auto;gap:12px;align-items:center}.unified-search{position:relative;min-width:0}.unified-search>svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:#9a8b97;pointer-events:none}.unified-search input{width:100%;height:43px;padding:10px 12px 10px 39px;border:1px solid #e7dce1;border-radius:8px;background:#fff;font-size:13px;min-width:0}.unified-search input::placeholder{color:#aa9da7}.compact-filter-row .button{padding:10px 19px}.reset-filter{font-size:13px;color:#8a7d88;padding:9px 4px}.advanced-toggle{display:flex;align-items:center;gap:6px;color:#8b7482;font-size:12px;padding:9px 2px;white-space:nowrap}.advanced-toggle svg{width:15px;height:15px}.advanced-toggle b{display:grid;place-items:center;background:#f6e6eb;color:#a15b67;width:17px;height:17px;font-size:10px;border-radius:50%;font-weight:500}.advanced-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px 0 0;margin-top:17px;border-top:1px solid var(--line)}.advanced-panel[hidden]{display:none}.advanced-panel .field{min-width:0}.advanced-panel p{grid-column:1/-1;font-size:11px;color:var(--muted)}.compact-user-filter .filter-error:not(:empty){margin-top:12px}
#range-picker{padding:0;border:1px solid var(--line);border-radius:15px;width:min(570px,calc(100% - 24px));max-height:90svh;color:var(--text);background:#fff;box-shadow:0 18px 65px #3d28331f}#range-picker::backdrop{background:#3d283332}.range-header{padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.range-header h2{font-size:19px;font-weight:600}.range-header p{font-size:11px;color:var(--muted);margin-top:3px}.range-body{display:grid;grid-template-columns:110px minmax(0,1fr);gap:22px;padding:18px 22px}.range-presets{display:flex;flex-direction:column;gap:7px;border-right:1px solid var(--line);padding-right:15px}.range-presets button{text-align:left;font-size:12px;border-radius:6px;padding:8px 10px;color:#806b77;white-space:nowrap}.range-presets button:hover,.range-presets button:focus-visible{background:#faf0f2;color:var(--rose-dark)}.calendar-month{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.calendar-month h3{font-size:15px;font-weight:550}.calendar-month button{width:31px;height:31px;border:1px solid var(--line);border-radius:6px;display:grid;place-items:center}.calendar-month svg{width:14px;height:14px}.calendar-week,.range-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.calendar-week{margin-bottom:8px;color:#a1959f;font-size:11px}.calendar-week span{padding:3px 0}.calendar-day,.calendar-blank{height:35px;min-width:0}.calendar-day{font-size:12px;border-radius:6px;font-variant-numeric:tabular-nums}.calendar-day:hover{background:#faf0f2}.calendar-day.in-range{background:#fbecf0;border-radius:3px;color:#a26071}.calendar-day.selected{background:var(--rose);color:#fff;font-weight:600}.calendar-day.today:not(.selected){color:var(--rose-dark);text-decoration:underline;text-underline-offset:4px}.range-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 22px;border-top:1px solid var(--line);background:#fffcfc}.range-selection{min-width:0}.range-selection strong{display:block;font-size:12px;font-weight:550}.range-selection span{display:block;font-size:11px;color:var(--muted);margin-top:3px}.range-actions{display:flex;gap:8px;flex-shrink:0}.range-actions .button{font-size:12px;padding:9px 13px;min-height:37px}
@media(max-width:1100px){.compact-filter-row{grid-template-columns:minmax(190px,1fr) auto auto auto;gap:10px}.compact-filter-row .advanced-toggle{grid-column:1/-1;justify-self:end;padding:0}.metric-cards .metric{padding:18px 16px}.metric-cards .metric strong{font-size:34px}}
@media(max-width:760px){.compact-admin-view .source-notice{font-size:11px;margin-bottom:18px}.overview-summary-toolbar{align-items:flex-start;margin-bottom:15px;gap:12px}.overview-summary-toolbar>div{display:block}.overview-summary-toolbar h2{font-size:15px}.statistics-note{margin-top:4px;font-size:11px}.statistics-note p{width:210px}.overview-summary-toolbar .range-context{display:none}.range-control{font-size:12px;padding:9px 11px;gap:7px;max-width:100%}.range-control>span{display:block}.range-context{display:block;margin-bottom:1px;font-size:10px}.range-label{font-size:12px}.range-control>svg:last-child{margin-left:0}.range-control.has-range>span .range-label{font-size:11px}.metric-rail.metric-cards{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:24px}.metric-cards .metric{padding:16px 17px}.metric-title span{font-size:12px}.metric-title i{width:26px;height:26px;border-radius:7px}.metric-title svg{width:15px;height:15px}.metric-cards .metric strong{font-size:32px;margin-top:5px}.metric-cards .metric small{font-size:10px}.compact-user-filter{padding:15px 16px}.compact-filter-row{grid-template-columns:minmax(0,1fr) auto auto;gap:11px}.compact-filter-row .unified-search{grid-column:1/-1}.compact-filter-row .range-control{min-width:0;width:100%;justify-content:space-between}.compact-filter-row .range-label{white-space:normal;line-height:1.4}.compact-filter-row .button{padding:10px 16px}.compact-filter-row .advanced-toggle{grid-column:1/-1;font-size:11px}.advanced-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.advanced-panel .field:first-child{grid-column:1/-1}.range-body{grid-template-columns:1fr;gap:16px;padding:15px 18px}.range-presets{flex-direction:row;flex-wrap:wrap;gap:6px;border:0;padding:0}.range-presets button{border:1px solid var(--line);padding:6px 9px;font-size:11px}.calendar-day,.calendar-blank{height:34px}.range-header{padding:17px 18px}.range-header h2{font-size:17px}.range-footer{display:block;padding:13px 18px}.range-actions{justify-content:flex-end;margin-top:12px}.calendar-month{margin-bottom:12px}}
@media(max-width:380px){.range-control.has-range>span .range-label{font-size:10px}.compact-filter-row .range-control{grid-column:1/-1}.compact-filter-row .button{grid-column:1;justify-self:start}.compact-filter-row .advanced-toggle{grid-column:3;grid-row:3;justify-self:end}.metric-cards .metric{padding:14px 12px}.metric-title span{font-size:11px}.metric-title i{width:23px;height:23px}.metric-cards .metric strong{font-size:30px}.overview-summary-toolbar .range-control{padding:9px;gap:6px}.overview-summary-toolbar .range-control>svg:last-child{display:none}}

.range-error{color:#a05842;font-size:11px;max-width:245px;margin-top:5px}.range-error:empty{display:none}

/* Phase-two overview cards also need a grid when the legacy metric rail is absent. */
.metric-cards:not(.metric-rail){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}
@media(max-width:1100px){.metric-cards:not(.metric-rail){grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.metric-cards:not(.metric-rail){grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
