:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#18304b;background:#f5f7fb;font-synthesis:none;--ink:#18304b;--muted:#71859b;--blue:#316bdb;--line:#e7edf4}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:#f5f7fb}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}
button:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #8bb8f1;outline-offset:3px}
.report-shell{width:100%;max-width:1080px;margin:0 auto;padding-left:17px;padding-right:17px}
.report-header{position:relative;z-index:70;background:#fff;border-bottom:1px solid #eaf0f5}.header-inner{position:relative;min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:12px}.header-inner[data-platform-switcher]{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none}.header-brand{display:flex;align-items:center;gap:13px;min-width:0}.header-mark{width:42px;height:42px;flex:none;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#d9ebff,#edf6ff);color:#2163be;font-weight:850;font-size:20px}.header-copy{min-width:0}.header-copy h1{font-size:20px;line-height:1.26;letter-spacing:.01em;margin:0 0 5px;overflow-wrap:anywhere}.header-copy p{color:#788ba0;font-size:12px;margin:0}.header-copy time{color:#486782;font-weight:650}.header-switch-hint{display:inline-flex;align-items:center;gap:4px;margin-top:5px;color:#91a2b3;font-size:10px;line-height:1.2}.header-switch-hint i{width:15px;height:15px;display:grid;place-items:center;border-radius:5px;background:#eef4fa;color:#547a9d;font-style:normal;font-size:10px}.logout-button,.long-image-button{position:relative;z-index:2;min-height:34px;border:1px solid #e3eaf1;border-radius:9px;color:#62768b;background:#fff;padding:8px 11px;font-size:12px;white-space:nowrap}.logout-button:hover,.long-image-button:hover{background:#f4f8fc}.long-image-button{display:inline-flex;align-items:center;gap:5px;color:#2869b5;border-color:#cfe0f1;background:#f4f9ff;font-weight:700}.long-image-button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.long-image-button:disabled{cursor:wait;opacity:.68}.long-image-button.is-exporting svg{animation:long-image-pulse .8s ease-in-out infinite alternate}
.report-body{padding-top:22px;padding-bottom:118px}
.platform-dropdown{position:absolute;z-index:90;top:calc(100% - 2px);left:17px;right:17px;padding:18px;border:1px solid rgba(211,224,237,.95);border-radius:19px;background:rgba(255,255,255,.98);box-shadow:0 24px 60px rgba(24,57,91,.22);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-13px) scaleY(.94);transform-origin:top;clip-path:inset(0 0 100% 0 round 19px)}.header-inner.platform-menu-open .platform-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scaleY(1);clip-path:inset(0 0 0 0 round 19px)}.platform-dropdown-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:1px 2px 14px;border-bottom:1px solid #e9eff5}.platform-dropdown-head>div{display:grid;gap:3px}.platform-dropdown-head span{color:#7f92a5;font-size:10px;font-weight:800;letter-spacing:.14em}.platform-dropdown-head strong{font-size:18px;color:#1d3a56}.platform-dropdown-head small{color:#7590aa;font-size:11px;background:#eef5fb;border-radius:999px;padding:6px 9px}.platform-menu-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px}.platform-menu-item{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:13px;border:1px solid #e5edf4;border-radius:13px;background:#f8fafc;color:#33526f;opacity:0;transform:translateY(-8px)}.platform-menu-item:hover{border-color:#bfd7ed;background:#f0f7fd}.platform-menu-item.current{border-color:#b9d5f0;background:linear-gradient(145deg,#eaf4ff,#f5faff);color:#1d5fa8;box-shadow:0 6px 18px rgba(39,104,170,.09)}.platform-menu-index{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#e8f0f7;color:#64809a;font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}.platform-menu-item.current .platform-menu-index{background:#2e70c9;color:#fff}.platform-menu-copy{min-width:0;display:grid;gap:4px}.platform-menu-copy strong{font-size:13px;line-height:1.35;overflow-wrap:anywhere}.platform-menu-copy small{color:#899aab;font-size:9px;line-height:1.3}.platform-menu-arrow{color:#9babb9;font-size:17px}.platform-menu-item.current .platform-menu-arrow{color:#2e70c9}.header-inner.platform-menu-open .platform-menu-item{animation:platform-item-in .35s cubic-bezier(.2,.8,.25,1) forwards}.header-inner.platform-menu-open .platform-menu-item:nth-child(2){animation-delay:.045s}.header-inner.platform-menu-open .platform-menu-item:nth-child(3){animation-delay:.09s}.header-inner.platform-menu-open .platform-menu-item:nth-child(4){animation-delay:.135s}.header-inner.platform-menu-open .platform-menu-item:nth-child(5){animation-delay:.18s}.header-inner.platform-menu-open .platform-menu-item:nth-child(6){animation-delay:.225s}.header-inner.platform-menu-open .header-mark{transform:rotate(-6deg) scale(1.05);box-shadow:0 8px 18px rgba(45,105,177,.16)}body::before{content:"";position:fixed;z-index:60;inset:0;background:rgba(21,43,66,.18);opacity:0;visibility:hidden;pointer-events:none}body.platform-menu-visible::before{opacity:1;visibility:visible}
.overline{font-size:11px;letter-spacing:.16em;font-weight:800}.total-card{position:relative;overflow:hidden;border-radius:20px;padding:22px 21px 20px;background:linear-gradient(140deg,#173956 0%,#23567f 69%,#35689c 100%);color:white;box-shadow:0 14px 30px rgba(30,78,125,.17)}.total-card::after{content:"";pointer-events:none;position:absolute;width:235px;height:235px;border-radius:50%;right:-130px;top:-150px;border:46px solid rgba(255,255,255,.06)}.total-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.total-top .overline{color:#bad6ec}.row-count{font-size:11px;color:#c8dfef;white-space:nowrap}.total-label{font-size:13px;margin:29px 0 7px;color:#e1edf7}.total-amount{display:block;font-size:clamp(32px,7.8vw,44px);letter-spacing:-.03em;line-height:1.12;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.total-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px;padding-top:19px;border-top:1px solid rgba(255,255,255,.22)}.total-split div{min-width:0}.total-split div+div{border-left:1px solid rgba(255,255,255,.18);padding-left:14px}.total-split span{display:block;font-size:11px;color:#c2d9eb;line-height:1.4;margin-bottom:8px}.total-split strong{font-size:clamp(17px,4.7vw,23px);line-height:1.15;display:block;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.total-split div:last-child strong{color:#f3e1cd}
.order-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:13px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:0 4px 17px rgba(20,51,85,.035);padding:17px 5px}.order-summary div{min-width:0;text-align:center;padding:2px 5px}.order-summary div+div{border-left:1px solid #e9eef3}.order-summary span{display:block;color:#8294a7;font-size:11px;line-height:1.3;margin-bottom:8px}.order-summary strong{font-size:clamp(17px,5vw,24px);font-variant-numeric:tabular-nums;color:#1b3853}
.category-heading{display:flex;align-items:end;justify-content:space-between;margin:31px 2px 14px}.category-heading .overline{color:#8da2b5;margin:0 0 5px}.category-heading h2{font-size:21px;line-height:1.2;margin:0;letter-spacing:.01em}.category-heading>span{font-size:12px;color:#6784a0;border:1px solid #e0eaf3;border-radius:8px;background:#fff;padding:5px 9px}
.category-list{display:grid;gap:13px}.category-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px 18px 16px;box-shadow:0 5px 19px rgba(27,60,93,.04)}.category-card::before{content:"";position:absolute;left:0;top:19px;height:27px;width:3px;background:#3981df;border-radius:0 4px 4px 0}.category-top{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.category-top h3{font-size:18px;margin:0;font-weight:800}.category-top>span{font-size:11px;color:#97a5b3;white-space:nowrap}.category-label{color:#8293a5;font-size:12px;margin:20px 0 5px}.category-amount{display:block;font-size:clamp(25px,6.8vw,33px);font-variant-numeric:tabular-nums;line-height:1.15;letter-spacing:-.02em;overflow-wrap:anywhere;color:#1d4674}.category-amounts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:19px}.category-amounts div{min-width:0;background:#f4f8fc;border-radius:10px;padding:12px}.category-amounts span,.category-orders span{display:block;font-size:10px;color:#8396a8;line-height:1.3;margin-bottom:6px}.category-amounts strong{font-size:clamp(14px,3.9vw,18px);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;color:#234b70}.category-amounts div:last-child strong{color:#a56743}.category-orders{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:15px;padding-top:14px;border-top:1px solid #eaf0f5}.category-orders div{text-align:center;min-width:0}.category-orders div+div{border-left:1px solid #e9eef3}.category-orders strong{display:block;color:#2b485e;font-size:17px;font-variant-numeric:tabular-nums}.data-note{font-size:11px;color:#93a2b2;line-height:1.65;margin:18px 3px 0}
.empty-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:55px 26px;text-align:center;color:#758aa0;box-shadow:0 4px 18px rgba(20,51,85,.04)}.empty-card h2{margin:10px 0 8px;color:#244361;font-size:21px}.empty-card p{margin:0 auto;max-width:320px;font-size:13px;line-height:1.6}.empty-icon{width:54px;height:54px;margin:auto;display:grid;place-items:center;background:#edf5fc;color:#5c8ac1;border-radius:16px;font-size:29px}
.calendar-fab{position:fixed;z-index:40;right:max(18px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));width:62px;height:62px}.calendar-fab summary{width:62px;height:62px;list-style:none;border:3px solid #fff;border-radius:50%;display:grid;place-items:center;background:#2d73d6;color:#fff;box-shadow:0 9px 25px rgba(33,99,187,.27);cursor:pointer}.calendar-fab summary::-webkit-details-marker{display:none}.calendar-fab summary:hover,.calendar-fab[open] summary{background:#205fb8}.calendar-fab svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.calendar-panel{position:absolute;bottom:76px;right:0;width:min(318px,calc(100vw - 32px));padding:20px;background:#fff;border:1px solid #e1eaf3;border-radius:16px;box-shadow:0 18px 50px rgba(27,59,91,.22)}.calendar-panel-head{display:grid;gap:4px;margin-bottom:17px}.calendar-panel-head strong{font-size:17px;color:#203c59}.calendar-panel-head span{font-size:12px;color:#8294a7}.calendar-panel form{display:grid;gap:11px}.calendar-panel label{font-size:12px;color:#5d7690;font-weight:700}.calendar-panel input,.login-form input{width:100%;min-width:0;min-height:46px;border:1px solid #ccdbe8;border-radius:9px;background:#fff;padding:10px 12px;color:#1b334e;font-size:15px}.primary-button{min-height:45px;padding:10px 16px;border:0;border-radius:9px;background:#2f70d0;color:#fff;font-weight:750;font-size:14px}.primary-button:hover{background:#205cba}
.front-login{max-width:430px;margin:0 auto;padding:52px 18px 30px;text-align:center}.login-card{text-align:left;border:1px solid var(--line);border-radius:19px;background:#fff;padding:27px 23px;box-shadow:0 12px 33px rgba(26,57,89,.08)}.login-card .overline{color:#5b91ca;margin:0}.login-card h1{font-size:27px;margin:8px 0 6px}.login-intro{color:#8294a6;font-size:13px;line-height:1.6;margin:0 0 24px}.login-form{display:grid;gap:12px}.login-form label{color:#506982;font-weight:700;font-size:13px}.login-form .primary-button{margin-top:6px}.notice{border:1px solid #bcdacb;border-radius:9px;background:#f0f9f3;color:#226347;font-size:13px;padding:11px;margin:0 0 17px}.notice.error{background:#fff4f3;border-color:#efcbca;color:#a0383c}
@media(min-width:760px){.report-shell{padding-left:30px;padding-right:30px}.header-inner{min-height:96px}.header-copy h1{font-size:24px}.platform-dropdown{left:30px;right:30px;padding:21px}.report-body{padding-top:27px}.total-card{padding:27px 30px 25px}.total-label{margin-top:34px}.order-summary{padding:20px 5px}.category-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.category-heading{margin-top:36px}}
@media(max-width:759px){.platform-menu-list{grid-template-columns:1fr}.platform-dropdown{max-height:calc(100dvh - 105px);overflow:auto;overscroll-behavior:contain}.platform-menu-item{padding:11px 12px}}
@media(max-width:365px){.report-shell{padding-left:12px;padding-right:12px}.total-card{padding:18px 16px}.category-card{padding:17px 14px}.total-split{gap:8px}.total-split div+div{padding-left:9px}.header-copy h1{font-size:18px}.row-count{font-size:10px}}
@media(prefers-reduced-motion:no-preference){.calendar-fab summary{transition:transform .18s ease,background .18s ease}.calendar-fab summary:hover{transform:translateY(-2px)}}

/* Floating date and range picker. */
[hidden]{display:none!important}
.header-copy .report-range{color:#486782;font-weight:650}
.calendar-fab .calendar-trigger{width:62px;height:62px;border:3px solid #fff;border-radius:50%;display:grid;place-items:center;background:#2d73d6;color:#fff;box-shadow:0 9px 25px rgba(33,99,187,.27)}
.calendar-fab .calendar-trigger:hover,.calendar-fab .calendar-trigger[aria-expanded="true"]{background:#205fb8}
.calendar-panel{width:min(356px,calc(100vw - 32px));padding:19px 17px 17px;max-height:calc(100dvh - 105px);overflow-y:auto;overscroll-behavior:contain}
.calendar-panel-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px}
.calendar-panel-head strong{font-size:17px}
.calendar-close{border:0;background:#f2f6fb;color:#58728d;width:30px;height:30px;border-radius:9px;font-size:23px;line-height:1}
.calendar-modes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:4px;gap:3px;border-radius:11px;background:#f1f5f9}
.calendar-modes button{border:0;background:transparent;border-radius:8px;padding:9px 3px;color:#6d8094;font-size:12px;font-weight:750;white-space:nowrap}
.calendar-modes button.active{background:#fff;color:#225baa;box-shadow:0 2px 7px rgba(41,75,110,.12)}
.calendar-nav{display:flex;align-items:center;justify-content:space-between;margin:15px 0 9px}
.calendar-nav strong{font-size:15px;color:#23415f}
.calendar-nav button{width:34px;height:34px;border:1px solid #e5edf5;border-radius:9px;background:#fff;color:#436483;font-size:25px;line-height:1}
.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
.calendar-weekdays{margin:0 0 4px;color:#9aacbd;font-size:11px;line-height:30px}
.calendar-day{aspect-ratio:1;min-width:0;border:0;border-radius:10px;background:transparent;color:#274660;font-size:13px;font-variant-numeric:tabular-nums}
.calendar-day.outside{color:#bbc6d1}
.calendar-day.selected,.calendar-month.selected{background:#dcecff;color:#1d5ab2;font-weight:800}
.calendar-day:hover,.calendar-month:hover{background:#e9f3ff;color:#1d5ab2}
.calendar-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:17px 0 11px}
.calendar-month{min-height:52px;border:1px solid #e7edf5;border-radius:11px;background:#fff;color:#365575;font-size:14px;font-weight:650}
.calendar-hint{margin:13px 2px 0;color:#889aac;font-size:11px;line-height:1.5}
.calendar-custom-selection{display:flex;justify-content:space-between;align-items:center;gap:5px;margin-top:12px;border:1px solid #e3edf6;border-radius:10px;padding:11px;color:#315778;font-size:12px;font-variant-numeric:tabular-nums}
.calendar-custom-selection .range-arrow{color:#9badbf}
.calendar-apply{width:100%;margin-top:12px}
.calendar-apply:disabled{cursor:not-allowed;background:#b8c9da}
@media(prefers-reduced-motion:no-preference){.calendar-fab .calendar-trigger{transition:transform .18s ease,background .18s ease}.calendar-fab .calendar-trigger:hover{transform:translateY(-2px)}}

@keyframes platform-item-in{to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){.platform-dropdown{transition:opacity .2s ease,visibility .2s ease,transform .34s cubic-bezier(.16,.82,.26,1),clip-path .36s cubic-bezier(.16,.82,.26,1)}.header-mark{transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease}body::before{transition:opacity .25s ease,visibility .25s ease}.platform-menu-item{transition:border-color .18s ease,background .18s ease,opacity .16s ease,transform .2s ease}.platform-menu-item:hover{transform:translateY(-1px)}}
@media(prefers-reduced-motion:reduce){.platform-dropdown,.platform-menu-item,.header-mark,body::before{transition:none!important;animation:none!important}.header-inner.platform-menu-open .platform-menu-item{opacity:1;transform:none}}

/* Previous-period comparison. Up is red, down is green by product request. */
.comparison-period{display:flex;align-items:center;gap:6px;margin:0 2px 10px;color:#7a8da0;font-size:11px}
.comparison-period::before{content:"";width:5px;height:5px;border-radius:50%;background:#7fa3c8}
.metric-value-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 8px;min-width:0}
.comparison{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:20px;padding:2px 6px;border-radius:999px;font-size:10px;font-weight:800;line-height:1.25;letter-spacing:0;white-space:nowrap;font-variant-numeric:tabular-nums}
.comparison-up{color:#cf3545;background:#fff0f1}
.comparison-down{color:#178554;background:#eaf8f0}
.comparison-flat{color:#78899a;background:#edf2f6}
.total-card .comparison-up{color:#ffd8dc;background:rgba(226,63,79,.25)}
.total-card .comparison-down{color:#b8f1cf;background:rgba(25,151,91,.25)}
.total-card .comparison-flat{color:#d2e0ec;background:rgba(226,237,246,.13)}
.total-card>.metric-value-line{align-items:center}
.total-split .metric-value-line{align-items:center}
.month-cumulative{position:relative;z-index:1;margin-top:23px;padding-top:19px;border-top:1px solid rgba(255,255,255,.22)}
.month-cumulative-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:15px}
.month-cumulative-head>div{display:grid;gap:4px}.month-cumulative-head .overline{color:#fff}.month-cumulative-head small{color:#bcd3e6;font-size:10px;line-height:1.4}
.month-cumulative-head>small{text-align:right}
.month-cumulative-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid rgba(255,255,255,.13);border-radius:13px;background:rgba(9,35,57,.16);padding:14px 4px}
.month-cumulative-grid>div{min-width:0;padding:0 12px}.month-cumulative-grid>div+div{border-left:1px solid rgba(255,255,255,.15)}
.month-cumulative-grid span{display:block;color:#bdd4e7;font-size:10px;line-height:1.35;margin-bottom:7px}
.month-cumulative-grid strong{display:block;color:#fff;font-size:clamp(15px,3.9vw,20px);line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.month-cumulative-grid>div:last-child strong{color:#f3e1cd}.month-cumulative-grid .metric-value-line{align-items:center}
.header-mark{overflow:hidden;background:#fff}.header-mark img{display:block;width:100%;height:100%;object-fit:contain}.month-target{margin:-2px 0 15px}.month-target-copy{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px;color:#d8e8f4;font-size:10px}.month-target-copy strong{color:#fff;font-size:11px;font-variant-numeric:tabular-nums}.month-target-progress{display:block;width:100%;height:9px;border:0;border-radius:999px;overflow:hidden;background:rgba(5,28,47,.35);appearance:none;-webkit-appearance:none}.month-target-progress::-webkit-progress-bar{border-radius:999px;background:rgba(5,28,47,.35)}.month-target-progress::-webkit-progress-value{border-radius:999px;background:linear-gradient(90deg,#55c69b,#a8e6bb)}.month-target-progress::-moz-progress-bar{border-radius:999px;background:linear-gradient(90deg,#55c69b,#a8e6bb)}
.total-top .row-count{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:4px;white-space:normal;text-align:right}
.total-top .row-count .comparison,.category-top>span .comparison{min-height:17px;padding:1px 5px;font-size:9px}
.order-summary .metric-value-line,.category-orders .metric-value-line{justify-content:center;align-items:center}
.category-card>.metric-value-line{align-items:center}
.category-heading>span{display:flex;align-items:center;gap:5px}
.category-heading>span .comparison{min-height:17px;padding:1px 5px;font-size:9px}
.category-top>span{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px;white-space:normal;text-align:right}
@media(max-width:365px){.comparison{padding:2px 5px;font-size:9px}.total-top{align-items:flex-start}.category-top{align-items:flex-start}}
@media(max-width:520px){.month-cumulative-head{display:grid;gap:5px}.month-cumulative-head>small{text-align:left}.month-cumulative-grid{grid-template-columns:1fr 1fr;padding:0;background:transparent;border:0;gap:11px}.month-cumulative-grid>div{padding:12px;border:1px solid rgba(255,255,255,.13);border-radius:11px;background:rgba(9,35,57,.16)}.month-cumulative-grid>div+div{border-left:1px solid rgba(255,255,255,.13)}.month-cumulative-grid>div:first-child{grid-column:1/-1}.month-cumulative-grid>div:first-child strong{font-size:clamp(21px,6vw,27px)}}

/* Default all-platform summary and double-tap header navigation. */
.header-inner[data-platform-switcher]{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none}.header-actions{position:relative;z-index:2;display:flex;align-items:center;gap:7px}.header-actions form{margin:0}.summary-overview{overflow:hidden;border-radius:21px;background:linear-gradient(140deg,#153752 0%,#21587f 62%,#3476a5 100%);color:#fff;box-shadow:0 15px 34px rgba(25,72,112,.18)}.summary-overview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:23px 22px 17px;border-bottom:1px solid rgba(255,255,255,.14)}.summary-overview-head .overline{margin:0 0 5px;color:#b8d7ed}.summary-overview-head h2{margin:0;font-size:22px}.summary-overview-head>span{font-size:11px;color:#d1e4f2;background:rgba(255,255,255,.1);border-radius:999px;padding:6px 9px}.summary-latest,.summary-month{padding:21px 22px}.summary-month{background:rgba(4,29,49,.18);border-top:1px solid rgba(255,255,255,.14)}.summary-block-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.summary-block-head>span{color:#d8e8f4;font-size:13px;font-weight:750}.summary-block-head small{color:#b9d1e2;font-size:10px}.summary-main-amount,.summary-month-amount{display:block;margin-top:9px;font-size:clamp(31px,8vw,47px);line-height:1.1;letter-spacing:-.03em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.summary-month-amount{font-size:clamp(27px,7vw,40px)}.summary-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:18px}.summary-mini-grid>div{min-width:0;padding:11px 12px;border-radius:11px;background:rgba(255,255,255,.08)}.summary-mini-grid span{display:block;margin-bottom:5px;color:#bad1e1;font-size:10px}.summary-mini-grid strong{display:block;font-size:clamp(14px,3.7vw,18px);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.summary-target{margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.15)}.summary-target>div{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;color:#d2e5f2;font-size:10px}.summary-target>div strong{color:#fff;font-size:11px}.summary-target progress,.summary-store-progress progress{display:block;width:100%;height:9px;border:0;border-radius:999px;overflow:hidden;appearance:none;-webkit-appearance:none;background:rgba(3,24,40,.32)}.summary-target progress::-webkit-progress-bar,.summary-store-progress progress::-webkit-progress-bar{border-radius:999px;background:rgba(3,24,40,.32)}.summary-target progress::-webkit-progress-value,.summary-store-progress progress::-webkit-progress-value{border-radius:999px;background:linear-gradient(90deg,#52c697,#b1e9b7)}.summary-target progress::-moz-progress-bar,.summary-store-progress progress::-moz-progress-bar{border-radius:999px;background:linear-gradient(90deg,#52c697,#b1e9b7)}.summary-no-target{margin:17px 0 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.14);color:#bdd1df;font-size:11px}.summary-store-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:30px 2px 13px}.summary-store-heading .overline{margin:0 0 5px;color:#8da2b5}.summary-store-heading h2{margin:0;font-size:21px}.summary-store-heading>span{color:#7f92a4;font-size:11px}.summary-store-grid{display:grid;gap:12px}.summary-store-card{display:block;padding:17px 17px 15px;border:1px solid #e2eaf2;border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(23,55,88,.04);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.summary-store-card:hover{transform:translateY(-2px);border-color:#bcd5ea;box-shadow:0 10px 24px rgba(31,82,126,.09)}.summary-store-top{display:grid;grid-template-columns:30px minmax(0,1fr) 20px;align-items:center;gap:9px}.summary-store-top>span{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#eaf3fb;color:#4e789b;font-size:10px;font-weight:800}.summary-store-top strong{font-size:15px;color:#1f405d}.summary-store-top i{color:#6f91ad;font-size:18px;font-style:normal}.summary-store-values{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.summary-store-values>div{min-width:0;padding:10px 11px;border-radius:10px;background:#f5f8fb}.summary-store-values span{display:block;margin-bottom:5px;color:#8496a8;font-size:10px}.summary-store-values strong{display:block;color:#294d6c;font-size:16px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.summary-store-progress{margin-top:13px}.summary-store-progress>span{display:block;margin-bottom:6px;color:#71879b;font-size:10px}.summary-store-progress progress{height:7px;background:#e9eff4}.summary-store-progress progress::-webkit-progress-bar{background:#e9eff4}.summary-store-no-target{display:block;margin-top:12px;color:#98a7b5;font-size:10px}
@media(min-width:760px){.summary-overview{display:grid;grid-template-columns:1fr 1fr}.summary-overview-head{grid-column:1/-1;padding-left:27px;padding-right:27px}.summary-latest,.summary-month{padding:25px 27px}.summary-month{border-top:0;border-left:1px solid rgba(255,255,255,.14)}.summary-store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:520px){.header-inner{gap:8px}.header-brand{gap:9px}.header-actions{gap:4px}.logout-button,.long-image-button{padding:7px 8px;font-size:11px}.long-image-button{gap:4px}.long-image-button svg{width:14px;height:14px}.summary-overview-head,.summary-latest,.summary-month{padding-left:17px;padding-right:17px}.summary-overview-head h2{font-size:19px}.summary-mini-grid{gap:8px}.summary-mini-grid>div{padding:10px}.summary-store-heading>span{display:none}}

/* Keep the report controls visible and use horizontal gestures for day navigation. */
.report-header{position:sticky;top:0;z-index:70}html,body{touch-action:manipulation}.report-body[data-day-swipe]{touch-action:pan-y pinch-zoom}.report-body.day-swipe-loading{pointer-events:none;opacity:.72;transition:opacity .16s ease}
@keyframes long-image-pulse{to{transform:scale(.82);opacity:.55}}
body.long-image-preview-open{overflow:hidden}.long-image-preview{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:18px;background:rgba(11,29,43,.78);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.long-image-preview-dialog{width:min(100%,780px);max-height:calc(100vh - 36px);display:flex;flex-direction:column;overflow:hidden;border-radius:18px;background:#f4f7fa;box-shadow:0 24px 70px rgba(0,0,0,.3)}.long-image-preview-head{flex:none;display:flex;align-items:center;justify-content:space-between;padding:15px 17px;border-bottom:1px solid #dfe8ef;background:#fff}.long-image-preview-head strong{font-size:17px;color:#24445f}.long-image-preview-head button{width:34px;height:34px;border:0;border-radius:10px;background:#edf3f7;color:#637b8e;font-size:24px;line-height:1}.long-image-preview-dialog>p{flex:none;margin:0;padding:11px 17px;color:#657c8f;background:#edf5fb;font-size:12px}.long-image-preview-scroll{flex:1;min-height:0;overflow:auto;background:#f4f7fa;-webkit-overflow-scrolling:touch}.long-image-preview-scroll>img{display:block;width:100%;height:auto;background:#f4f7fa}.long-image-preview-actions{flex:none;display:flex;gap:9px;padding:12px 17px 15px;border-top:1px solid #dfe8ef;background:#fff}.long-image-preview-actions a,.long-image-preview-actions button{flex:1;min-height:42px;display:grid;place-items:center;border:1px solid #cddce8;border-radius:11px;background:#fff;color:#49667e;font:inherit;font-weight:750;text-decoration:none}.long-image-preview-actions a{border-color:#2d77bd;background:#2d77bd;color:#fff}
@media(max-width:520px){.long-image-preview{padding:8px}.long-image-preview-dialog{max-height:calc(100vh - 16px);border-radius:14px}.long-image-preview-actions{padding-bottom:max(12px,env(safe-area-inset-bottom))}}
