:root{--ink:#172e50;--muted:#687b96;--green:#2463d4;--line:#dce4ef;--bg:#edf2f8;--navy:#122945;--blue:#2463d4}
body{background:linear-gradient(180deg,#e5edf7 0,#f3f6fa 400px);min-height:100vh;font-size:13px;-webkit-font-smoothing:antialiased}
main{width:calc(100% - 96px);max-width:1280px;padding:20px 0 8px;margin:auto}
.toolbar{display:grid;grid-template-columns:auto auto 140px minmax(200px,1fr) auto;align-items:center;gap:16px;padding:13px 18px;background:linear-gradient(115deg,#122945,#1b3d66);border:1px solid #294667;border-radius:13px;box-shadow:0 6px 18px #142e5012;color:#fff}
.brand{font-size:25px;white-space:nowrap;line-height:1.4;letter-spacing:-1px}.brand span{color:#80b9ff}.brand small{display:block;font-size:10px;margin:2px 0 0;letter-spacing:0;color:#adc2dd}
.toolbar label{display:block;font-size:10px;color:#c5d5eb;min-width:0}.toolbar select{width:100%;margin:3px 0 0;background:#203f64;border-color:#456184;color:#f1f6ff;padding:7px 9px;font-size:12px;min-height:35px}.toolbar select:disabled{opacity:.65}.toolbar option{background:#fff;color:var(--ink)}.saved-label select{max-width:none;min-width:0}
button,.upload{transition:background .15s,box-shadow .15s,border-color .15s;min-height:34px;border-radius:7px;font-size:12px;padding:7px 12px;font-weight:400}
.toolbar .upload{display:flex;align-items:center;justify-content:center;min-height:37px;background:#3278ee;color:#fff;border:1px solid #5b94f2;font-size:12px;cursor:pointer;white-space:nowrap;padding:7px 14px;box-shadow:0 2px 7px #08193225}
.toolbar .secondary{background:transparent;border:1px solid #476180;color:#dce8fa;font-size:11px}.toolbar .secondary:hover:not(:disabled){background:#294b73}
button:hover,.upload:hover{filter:none}button:hover:not(:disabled){box-shadow:0 2px 5px #172e5010}.secondary{background:#f3f7ff;border:1px solid #dbe5f6;color:#315c9d}.secondary:hover:not(:disabled){background:#e9f0fd}
input,select{background:#fbfcff;color:var(--ink);border:1px solid #d9e2ee;font-size:12px}input::placeholder{color:#8b9ab0}input:focus,select:focus{outline:2px solid #b3cdfb;outline-offset:1px;border-color:#5a8ee5}button:focus-visible,.upload:focus-within{outline:3px solid #82acf2;outline-offset:2px}
#status,#cacheStatus{font-size:10px;line-height:1.7;margin:5px 3px;color:#71839d}#cacheStatus{color:#466b9d}#status:empty,#cacheStatus:empty,#error:empty,#pager:empty{display:none}
.panel{padding:14px 16px;margin:12px 0;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 3px 14px #253d5d04}
.filters{display:grid;grid-template-columns:95px 145px 145px minmax(190px,1.3fr) minmax(130px,1fr) auto auto;gap:10px;align-items:end;padding:13px 16px}.filters label{font-size:10px;color:#58708f;min-width:0}.filters input,.filters select{width:100%;max-width:100%;padding:8px 9px;margin-top:4px;height:37px;min-height:37px}.filters .search input{min-width:0}.date-field{min-width:0}.date-field input{padding-right:33px;letter-spacing:.3px}.calendar-trigger{right:3px;bottom:1px;min-height:32px;padding:0 7px;color:var(--blue)}#apply{background:var(--blue);height:37px;box-shadow:0 2px 4px #2463d41c}#apply:hover{background:#1d53ba}#reset{height:37px}
.presets{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:9px 2px 12px;font-size:11px;color:#687b96}.presets button{min-height:28px;padding:3px 12px;background:#fff;color:#3e5f8c;border:1px solid #d9e3f0;font-size:11px}.presets button:hover{background:#e7efff;border-color:#aac5f2}.presets small{margin:0 7px;font-size:10px;color:#8b99ac}
#error{font-size:11px;background:#fff5f0;border:1px solid #f3dbce;border-radius:7px;padding:7px 12px;margin:10px 0}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 12px}.card{position:relative;padding:14px 16px 12px;border:1px solid #d9e3f1;border-radius:10px;background:#fff;box-shadow:0 3px 12px #1c3c6405;font-size:11px;color:#59708e;overflow:hidden;min-height:120px}.card::before{content:'';display:block;width:24px;height:3px;border-radius:2px;background:#6994db;margin-bottom:9px}.card strong{color:#172e50;font-size:25px;letter-spacing:-.35px;margin:5px 0 8px;line-height:1.6}.card small{font-size:10px;line-height:1.7;color:#7a8da6;display:block}.card.featured{background:linear-gradient(115deg,#122945,#244c7c);border-color:#24456e;color:#dbe9fc;box-shadow:0 4px 12px #17375e16}.card.featured::before{background:#7eafff}.card.featured strong{color:white}.card.featured small{color:#b5cbe6}.card.refund strong{color:#2463d4}.card.refund::before{background:#76a8ff}
.sectionhead{gap:12px;padding:0 1px 2px}.sectionhead h2{font-size:15px;color:#1c3659;display:flex;align-items:center;gap:8px}.sectionhead h2::before{content:'';width:3px;height:16px;border-radius:2px;background:#3278ee}.sectionhead p{font-size:10px;margin:3px 10px 0;color:#8090a6}.sectionhead button{font-size:11px;min-height:32px;padding:5px 12px}
nav{gap:4px;margin:12px 0 10px;padding:4px;background:#f3f6fb;border:1px solid #e7edf6;border-radius:8px;display:inline-flex;max-width:100%;flex-wrap:wrap}nav button{font-size:11px;padding:5px 14px;min-height:31px;color:#647b99;border:1px solid transparent;border-radius:6px}nav button.active{background:white;color:#245ab1;border-color:#dbe5f5;box-shadow:0 1px 4px #1e41660a;font-weight:bold}nav button:hover:not(.active){background:#e9eff9}
.tablewrap{border:1px solid #e3eaf3;border-radius:8px;scrollbar-width:thin;scrollbar-color:#bdcce0 #f3f6fb}table{font-variant-numeric:tabular-nums}th{background:#edf3fc;color:#4a6386;font-size:10px;font-weight:bold;z-index:1;white-space:nowrap}td,th{padding:9px 11px;border-bottom:1px solid #eaf0f7}td{font-size:11px;color:#304b70}tbody tr:nth-child(even){background:#f9fbfe}tbody tr:hover{background:#edf4ff}tbody tr:last-child td{border-bottom:0}.num{font-size:14px;letter-spacing:.15px;color:#223f65}.note{min-width:240px;line-height:1.9}.empty{padding:34px 15px;background:#fbfcff;color:#8797ad;font-size:12px}#pager{gap:10px;margin-top:10px;font-size:11px}#pager button{padding:4px 12px;min-height:29px}.guide{padding:9px 14px;margin-top:10px;background:#f8faff;box-shadow:none;border-color:#dfe7f2}.guide summary{font-size:10px;color:#5f7697}.guide p{font-size:11px;margin:8px 0}footer{padding:6px 16px 18px;font-size:10px;color:#94a1b4}
.calendar{border-color:#d4dff0;box-shadow:0 14px 50px #132e5026}.calendar-head button,.calendar-foot button{background:#edf3ff;color:#2463d4}.calendar-grid button:hover{background:#eaf1ff}.calendar-grid .selected{background:#2463d4;color:#fff}.calendar-grid .today{box-shadow:inset 0 0 0 1px #2463d4}.calendar-grid .selected:hover{background:#1f55b7}
@media(min-width:1600px){main{max-width:1360px}}
@media(max-width:1200px){main{width:calc(100% - 56px)}.filters{grid-template-columns:repeat(4,minmax(0,1fr))}.filters .search{grid-column:span 2}.toolbar{gap:10px;grid-template-columns:auto auto 125px minmax(150px,1fr) auto}.toolbar .secondary{padding:7px 8px}.card strong{font-size:25px}}
@media(max-width:900px){.toolbar{grid-template-columns:auto auto 1fr auto}.toolbar .saved-label{grid-column:1 / -1;display:flex;align-items:center;gap:12px}.toolbar .saved-label select{flex:1;margin:0}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.card{min-height:108px}.toolbar .retention{max-width:160px}.card strong{font-size:25px}}
@media(max-width:600px){main{width:calc(100% - 24px);padding-top:12px}.toolbar{padding:10px 12px;gap:9px;grid-template-columns:auto 1fr auto}.toolbar .upload{grid-column:2 / -1;justify-self:end;min-height:33px}.toolbar .retention{grid-column:1 / 3;max-width:none;display:flex;gap:10px;align-items:center}.toolbar .retention select{width:90px;margin:0}.toolbar .secondary{grid-column:3;font-size:10px}.toolbar .saved-label{grid-column:1 / -1}.brand{font-size:23px}.brand small{display:none}.toolbar .saved-label select{min-width:0}.panel{padding:11px}.filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.filters .search,.filters .gateway-field{grid-column:span 2}.filters .date-field{width:auto}.filters label:has(#sheet){grid-column:span 2}.filters .gateway-field select{width:100%}.presets small{flex-basis:100%;margin:1px 0}.stats{gap:8px}.card{padding:11px;min-height:112px}.card strong{font-size:21px;letter-spacing:-.5px}.card small{font-size:9px}.sectionhead p{font-size:9px}nav{display:flex}nav button{padding:4px 9px;font-size:10px}.calendar{width:min(320px,calc(100vw - 16px))}td,th{padding:8px 10px}.presets{gap:5px}.presets button{padding:3px 10px}}
@media(prefers-reduced-motion:reduce){button,.upload{transition:none}}
@media(max-width:600px){.toolbar #deleteSaved{grid-row:2}.toolbar .saved-label{grid-row:3}}

.date-field input{font-size:13px}.calendar-grid button{font-size:14px}
