@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap";:root{font-family:Noto Sans JP,Yu Gothic UI,sans-serif;color:#14243b;background:#edf3f9;font-size:14px;--navy:#061d39;--blue:#0969c8;--line:#d8e3ef;--muted:#6c829a;--red:#c8102e;--surface:#fff}*{box-sizing:border-box}body{margin:0;background:#edf3f9}button,input,select{font:inherit}button{cursor:pointer}.app-shell{display:flex;min-height:100vh}.tool-dock{position:fixed;inset:12px auto 12px 12px;z-index:10;display:flex;width:104px;flex-direction:column;border-radius:24px;background:#f8fbff;padding:10px;box-shadow:0 12px 32px #12365b1a;color:var(--navy)}.dock-brand{display:flex;height:72px;align-items:center;justify-content:center;gap:6px;border-radius:17px;background:#eef5fc;box-shadow:inset 2px 2px 5px #b8c9da66,inset -2px -2px 5px #fff;line-height:1.05}.dock-brand b{font:800 9px/1.05 DM Mono;letter-spacing:.05em}.dock-mark{display:grid;height:31px;width:31px;place-items:center;border-radius:10px;background:var(--navy);color:#fff;font-size:11px;font-weight:800}.tool-dock nav{display:grid;gap:7px;padding:12px 0}.dock-item,.dock-command{position:relative;display:flex;min-height:65px;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:0;border-radius:17px;background:transparent;color:#58718b;transition:.18s ease}.dock-item>span,.dock-command>span{font-size:20px;line-height:1}.dock-item b,.dock-command b{font-size:10px}.dock-item small,.dock-command small{font-size:8px;color:#91a3b6}.dock-item:hover,.dock-command:hover{transform:translateY(-2px);color:var(--blue);box-shadow:0 7px 16px #12365b1a}.dock-item.active{background:#e6f1fc;color:var(--blue);box-shadow:inset 2px 2px 5px #b8c9da55,inset -2px -2px 5px #fff}.dock-command{margin-top:auto;border-top:1px solid var(--line);border-radius:0;padding-top:12px}.dock-footer{display:grid;gap:2px;border-top:1px solid var(--line);padding:12px 3px 3px;text-align:center}.dock-footer span{font:9px DM Mono;color:var(--blue)}.dock-footer b{font:9px DM Mono;color:var(--navy)}.dock-footer small{font-size:8px;color:var(--muted)}.main{min-width:0;flex:1;margin-left:128px;padding:0 32px 30px 26px}.topbar{display:flex;justify-content:space-between;gap:20px;margin:0 -32px 0 -26px;border-bottom:1px solid var(--line);background:#fff;padding:27px 32px 22px 26px;box-shadow:0 2px 9px #12365b08}.breadcrumb{display:flex;gap:9px;margin-bottom:10px;color:#7890a8;font-size:10px}.breadcrumb i{font-style:normal;color:#b0bdca}.breadcrumb strong{color:var(--blue)}.topbar h1{margin:0;color:var(--navy);font-size:26px;letter-spacing:.02em}.topbar p{margin:7px 0 0;color:var(--muted);font-size:12px}.header-actions{display:flex;align-items:center;gap:8px}.header-actions button{border:1px solid #bfd1e4;border-radius:8px;background:#fff;color:#164a7f;padding:9px 13px;font-size:11px;font-weight:700}.header-actions button:hover{border-color:var(--blue);background:#eaf4ff}.icon-action{display:flex;align-items:center;gap:5px}.filter-drawer{display:grid;grid-template-columns:1.1fr 1.05fr 1.2fr 1fr 1.1fr 1fr 1.2fr;gap:10px;margin:20px 0 16px;border:1px solid var(--line);border-radius:13px;background:#f8fbff;padding:14px;box-shadow:0 4px 15px #12365b08}.filter-title{display:grid;align-content:center;gap:2px;border-right:1px solid var(--line)}.filter-title span,.eyebrow{font:700 10px DM Mono;letter-spacing:.13em;color:var(--blue)}.filter-title strong{font-size:13px;color:var(--navy)}.filter-title small{font-size:9px;color:var(--muted)}.filter-drawer label{display:grid;min-width:0;gap:6px;color:#536b84;font-size:10px;font-weight:800}.filter-drawer input,.filter-drawer select,.analysis-controls select{min-width:0;height:37px;border:1px solid #c8d8e8;border-radius:7px;background:#fff;padding:7px 9px;color:#1d3855;outline:none}.filter-drawer input:focus,.filter-drawer select:focus,.analysis-controls select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0969c81f}.range-input{display:flex;align-items:center;gap:4px}.range-input input{width:100%;padding:7px 4px}.range-input i{font-style:normal;color:#8799ab}.segmented{display:flex;min-width:0}.segmented button{min-width:0;flex:1;border:1px solid #c8d8e8;background:#fff;padding:8px 3px;color:#59718b;font-size:10px;font-weight:700}.segmented button+button{border-left:0}.segmented button.selected{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 4px 10px #0969c833}.summary{display:grid;grid-template-columns:repeat(3,1fr) 1.3fr;gap:11px;margin-bottom:17px}.metric-card,.quality-note{display:grid;gap:6px;border:1px solid var(--line);border-radius:11px;background:var(--surface);padding:14px 17px;box-shadow:0 4px 15px #12365b0b}.metric-card span,.quality-note span{color:#71869d;font-size:10px;font-weight:700}.metric-card strong{color:var(--navy);font:500 23px DM Mono}.metric-card em{margin-left:4px;font:500 10px Noto Sans JP;font-style:normal}.metric-card small,.quality-note small{color:#8295a9;font-size:9px}.quality-note{border-left:4px solid var(--blue)}.quality-note strong{color:var(--navy);font-size:14px}.content-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(285px,1fr);gap:15px;margin-bottom:16px}.panel{min-width:0;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 4px 15px #12365b0a}.panel-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;border-bottom:1px solid #eaf0f6;padding:15px 18px 12px}.panel-heading h2{margin:6px 0 0;color:var(--navy);font-size:14px}.muted{color:#8497aa;font-size:9px}.chart{display:flex;height:286px;padding:12px 18px 19px}.y-axis{display:flex;width:38px;flex-direction:column;justify-content:space-between;padding:5px 0 27px;color:#8496a7;text-align:right;font:9px DM Mono}.plot{position:relative;min-width:0;flex:1;margin-left:12px;padding-bottom:28px}.gridlines{position:absolute;top:3px;right:0;bottom:28px;left:0;display:flex;flex-direction:column;justify-content:space-between}.gridlines i{border-top:1px solid #e7eef5}.plot svg{position:absolute;top:3px;right:0;bottom:28px;left:0;width:100%;height:calc(100% - 31px);overflow:visible;color:var(--blue)}.plot svg circle{cursor:pointer;fill:var(--blue);transition:r .18s ease,fill .18s ease}.plot svg circle:focus{filter:drop-shadow(0 0 4px #0969c888);outline:none}.x-axis{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:6px;overflow:hidden}.x-axis span{color:#778a9e;white-space:nowrap;font:9px DM Mono}.x-axis span.active{color:var(--blue);font-weight:800}.chart-tooltip{position:absolute;top:9px;z-index:4;display:grid;min-width:105px;gap:3px;transform:translate(-50%);border:1px solid #397cb8;border-radius:8px;background:var(--navy);padding:8px 10px;color:#fff;pointer-events:none;box-shadow:0 8px 18px #071f3b35}.chart-tooltip b{color:#b9dcff;font-size:9px}.chart-tooltip strong{font:500 15px DM Mono}.chart-tooltip small{margin-left:2px;font:10px Noto Sans JP}.scroll-region{overflow:auto;min-height:0}.ranking-panel{display:flex;min-height:0;flex-direction:column}.ranking-scroll{height:286px}.ranking-scroll ol{margin:0;padding:3px 18px 12px;list-style:none}.ranking-scroll li{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:8px;border-bottom:1px solid #edf2f7;padding:10px 0}.ranking-scroll li:hover{background:#f3f8fe}.ranking-scroll li>b{color:#91a5b9;font:11px DM Mono}.ranking-scroll li>span{min-width:0;overflow:hidden;color:#274968;font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.ranking-scroll li>strong{color:var(--navy);font:500 13px DM Mono}.ranking-scroll li small{margin-left:3px;font:9px Noto Sans JP}.staff-meta{display:block;margin-top:2px;color:#7690aa;font-size:9px;font-weight:500}.detail-panel{display:flex;min-height:0;flex-direction:column;overflow:hidden}.table-wrap{max-height:430px;overflow:auto;padding:0 10px 10px}table{width:100%;border-collapse:collapse;min-width:680px;font-size:10px}th,td{border:1px solid #dfe8f1;padding:8px;text-align:right;white-space:nowrap}thead th{position:sticky;top:0;z-index:2;background:#edf5fc;color:#496883;text-align:center;font-weight:800}tbody th{background:#fbfdff;color:#254766;text-align:left;font-weight:700}.total-cell{font:600 11px DM Mono}.grand-total th,.grand-total td{position:sticky;bottom:0;z-index:1;background:#e5f1fc;color:#123d69;font-weight:800}.grand-total td{font-family:DM Mono}.analysis-view{display:grid;gap:16px;padding-top:20px}.analysis-hero{display:flex;justify-content:space-between;gap:18px;border:1px solid #cfe0ef;border-radius:13px;background:linear-gradient(105deg,#eaf4ff,#fff 65%);padding:19px 20px}.analysis-hero h2{margin:7px 0 5px;color:var(--navy);font-size:20px}.analysis-hero p{margin:0;color:var(--muted);font-size:11px}.analysis-controls{display:flex;align-items:end;gap:8px}.analysis-controls label{display:grid;gap:5px;color:#536b84;font-size:10px;font-weight:800}.analysis-controls select{height:36px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.analysis-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:15px}.annual-chart{height:245px;padding:22px 22px 18px}.annual-bars{display:flex;height:100%;align-items:end;justify-content:space-between;gap:8px;border-bottom:1px solid #dce7f1}.annual-bar{position:relative;display:flex;height:100%;min-width:34px;flex:1;flex-direction:column;align-items:center;justify-content:end;gap:5px;border:0;background:transparent;padding:0;color:#6e849a}.annual-bar span{display:block;width:22px;min-height:5px;border-radius:5px 5px 0 0;background:#a9cceb;transition:.2s ease}.annual-bar:hover span,.annual-bar.selected span{background:var(--blue);box-shadow:0 -4px 12px #0969c833}.annual-bar b{font:10px DM Mono;color:var(--navy)}.annual-bar small{font:9px DM Mono}.insight-panel{min-width:0}.callout{display:flex;align-items:flex-start;gap:8px;margin:16px 18px 12px;border-left:4px solid var(--blue);background:#edf6ff;padding:11px}.callout p{margin:0;color:#49647e;font-size:10px;line-height:1.65}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:800;white-space:nowrap}.badge-blue{background:#dceeff;color:#0960af}.badge-red{background:#ffe5e8;color:#ad2036}.badge-neutral{background:#edf1f5;color:#61778b}.badge-green{background:#e0f5eb;color:#16734c}.insight-list{display:grid;gap:0;margin:0 18px 15px;border-top:1px solid #e2ebf3}.insight-list div{display:flex;justify-content:space-between;border-bottom:1px solid #edf2f7;padding:9px 0}.insight-list span{color:#8092a4;font-size:10px}.insight-list strong{color:var(--navy);font-size:10px}.analysis-table .table-wrap{max-height:360px}.analysis-table table{min-width:700px}.state-card,.loading-state{max-width:520px;margin:80px auto;border:1px solid var(--line);border-radius:13px;background:#fff;padding:30px;text-align:center;color:var(--muted)}.state-card h1{color:var(--navy);font-size:20px}.state-card button{border:0;border-radius:7px;background:var(--blue);padding:9px 16px;color:#fff}.skeleton-title,.skeleton-row{height:18px;margin:10px auto;border-radius:7px;background:#e6eef6}.skeleton-title{width:42%;height:32px}.skeleton-row{width:80%;height:64px}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:start center;background:#061d3966;padding-top:100px}.command-palette{width:min(560px,calc(100% - 28px));border:1px solid #c9dbea;border-radius:16px;background:#fff;padding:16px;box-shadow:0 24px 70px #061d3966}.command-header{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line);padding:3px 4px 13px}.command-header h2{margin:6px 0 0;color:var(--navy);font-size:16px}.command-header button{border:0;background:transparent;color:#6f8296;font-size:22px}.command-item{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:7px;width:100%;border:1px solid transparent;border-radius:10px;background:#fff;padding:13px 11px;text-align:left}.command-item:hover,.command-item.selected{border-color:#bdd8ef;background:#eef7ff}.command-item>span{grid-row:span 2;color:var(--blue);font-size:20px;text-align:center}.command-item b{color:var(--navy);font-size:12px}.command-item small{color:var(--muted);font-size:10px}.command-item kbd{grid-row:span 2;border:1px solid #ccdbe8;border-radius:4px;padding:3px 5px;color:#8195a9;font-size:9px}.command-hint{margin:12px 3px 0;color:#8094a7;font-size:9px}@media(max-width:1200px){.filter-drawer{grid-template-columns:repeat(4,1fr)}.filter-title{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--line);padding-bottom:8px}.analysis-hero{display:grid}.analysis-controls{justify-content:start}}@media(max-width:800px){.tool-dock{inset:auto 10px 10px 10px;width:auto;height:68px;flex-direction:row;border-radius:18px;padding:6px}.dock-brand{display:none}.tool-dock nav{display:flex;flex:1;gap:5px;padding:0}.dock-item,.dock-command{min-height:55px;flex:1;border:0;padding:3px}.dock-command{margin:0;border:0;padding:3px}.dock-footer{display:none}.main{margin-left:0;padding:0 14px 88px}.topbar{margin:0 -14px;padding:20px 14px}.topbar h1{font-size:21px}.header-actions button:not(.icon-action){display:none}.filter-drawer{grid-template-columns:1fr 1fr;padding:10px}.filter-title{grid-column:1/-1}.search-label{grid-column:span 2}.summary,.metric-grid{grid-template-columns:1fr 1fr}.content-grid,.analysis-grid{grid-template-columns:1fr}.analysis-controls{display:grid;grid-template-columns:1fr 1fr}.chart{height:250px}.analysis-table .table-wrap{max-height:300px}}@media(max-width:430px){.summary,.metric-grid,.filter-drawer{grid-template-columns:1fr}.search-label{grid-column:auto}.range-input input{width:100%}.analysis-controls{grid-template-columns:1fr}.command-palette{padding:12px}}.logistics-x{display:block!important}.logistics-x span{position:absolute;white-space:nowrap;transform:translate(-50%)}.logistics-x span:first-child{transform:none}.logistics-x span:last-child{transform:translate(-100%)}@media(min-width:801px){.app-shell{zoom:1.1}}@media(max-width:800px){.app-shell{zoom:1.06}}.filter-reset{align-self:end;min-height:37px;border:1px solid #f0c8b8;border-radius:9px;background:#fff8f4;color:#b35a42;padding:7px 12px;font-size:10px;font-weight:800}.filter-reset:hover{background:#ffede5;border-color:#e9a48d}.filter-reset:focus-visible{outline:3px solid #ffb39b;outline-offset:2px}.filter-drawer{position:sticky;top:0;z-index:6;background:#f8fbffcc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chart-save{float:right;margin:0 14px 10px;border:1px solid #d9e5ef;border-radius:999px;background:#fff;color:#50718f;padding:6px 11px;font-size:10px;font-weight:800}.chart-save:hover{border-color:#9acfc7;background:#f1fbf9;color:#18776e}.legend-toggle{display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;border-radius:999px;background:transparent;color:#607990;padding:5px 8px;font-size:10px}.legend-toggle:hover,.legend-toggle:focus-visible{border-color:#d9e5ef;background:#fff}.legend-toggle.hidden{opacity:.4;text-decoration:line-through}.legend-toggle i{display:inline-block;width:18px;height:5px;border-radius:99px}.panel,.chart,.comparison-chart,.logistics-chart,.annual-chart{box-shadow:none;border-radius:8px;background:#fff;border-color:#dfe6ed}.chart-panel .panel-heading,.comparison-panel .panel-heading,.logistics-analysis .panel-heading{background:#fff}.chart:hover,.comparison-chart:hover,.logistics-chart:hover{box-shadow:none;border-color:#b9c8d5}.metric-card,.quality-note{box-shadow:none;border-radius:8px}.metric-card:after{display:none}.filter-drawer{box-shadow:none;border-radius:8px;background:#fff}.filter-reset,.trim-toggle,.chart-save,.legend-toggle,.logistics-samples span{border-radius:6px;background:#fff;box-shadow:none}.annual-bar span,.annual-bar.selected span{background:#6fb8b0!important;box-shadow:none}.annual-bar:hover{transform:none;filter:none}.annual-bar.selected:after{height:2px;bottom:-5px}.panel-heading:before{height:22px;top:15px}.logistics-legend i,.comparison-legend i,.legend-toggle i{height:3px}.chart-tooltip,.comparison-tooltip{border-radius:6px;box-shadow:0 4px 12px #20334a22}.plot svg polyline,.comparison-plot svg polyline,.logistics-chart svg polyline{filter:none}.table-tools{display:flex;justify-content:flex-end;border-bottom:1px solid #edf2f7;padding:8px 14px}.table-tools button{border:1px solid #d9e5ef;border-radius:999px;background:#fff8f4;color:#b35a42;padding:6px 11px;font-size:10px;font-weight:800}.table-tools button:hover{background:#ffede5;border-color:#e9a48d}.trim-toggle{align-self:end;min-height:37px;border:1px solid #b9ded9;border-radius:9px;background:#f1fbf9;color:#18776e;padding:7px 12px;font-size:10px;font-weight:800}.trim-toggle:hover{background:#ddf5f0;border-color:#72bdb5}.metric-mode{display:grid;align-self:end;gap:5px;color:#536b84;font-size:10px;font-weight:800}.metric-mode select{min-height:37px;border:1px solid #c8d8e8;border-radius:7px;background:#fff;color:#1d3855;padding:7px 9px;font-size:11px}.metric-mode select:focus-visible{outline:3px solid #64b4ff;outline-offset:2px}.cohort-samples{display:flex;flex-wrap:wrap;gap:6px;padding:8px 18px 0;color:#71869a;font:10px DM Mono}.cohort-samples span{border:1px solid #dfe6ed;border-radius:5px;padding:4px 7px;background:#fff}.cohort-count-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:18px 18px 0;border-top:1px solid #edf2f7;padding-top:13px;color:#2d4258}.cohort-count-heading strong{font-size:11px}.cohort-count-heading span{color:#8493a1;font-size:9px}.cohort-count-chart{height:230px;margin-top:0}.metric-switch{align-items:center}.metric-switch button{border:1px solid #dfe6ed;background:#fff;color:#65778a;padding:5px 8px;font-size:9px}.metric-switch button:first-child{border-radius:5px 0 0 5px}.metric-switch button:last-of-type{border-radius:0 5px 5px 0}.metric-switch button+button{border-left:0}.metric-switch button.active{background:#20334a;border-color:#20334a;color:#fff}@media print{body{background:#fff}.tool-dock,.header-actions,.filter-drawer,.trim-toggle,.table-tools,.kpi-context,.dock-command{display:none!important}.main{margin:0;padding:0}.topbar{margin:0;border:0;box-shadow:none;padding:0 0 14px}.panel{break-inside:avoid;box-shadow:none;border-color:#d9e2eb}.chart,.comparison-chart,.logistics-chart{overflow:visible}.table-wrap{max-height:none!important;overflow:visible}.table-wrap table{min-width:0;width:100%;font-size:9px}.table-wrap th,.table-wrap td{padding:5px}.table-wrap thead th:first-child,.table-wrap tbody th,.grand-total th,.grand-total td{position:static}.scroll-region{height:auto;overflow:visible}.ranking-scroll{height:auto}.ranking-scroll ol{columns:2}.footer{display:none}}.chart,.comparison-chart,.logistics-chart{background:#fffdf9;border:1px solid #f2e7dc;border-radius:18px}.gridlines i,.logistics-chart{background-color:#fffdf9}.gridlines i{border-color:#f2e7dc}.plot svg,.comparison-plot svg,.logistics-chart svg{filter:none}.plot svg polyline,.comparison-plot svg polyline,.logistics-chart svg polyline{stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.plot svg circle{stroke:#fff;stroke-width:2}.chart-tooltip,.comparison-tooltip{border:0;border-radius:12px;background:#20334a;box-shadow:0 8px 20px #20334a26}.x-axis span,.comparison-xaxis span,.logistics-x{color:#83909c}.comparison-legend,.logistics-legend{gap:10px}.comparison-legend i,.logistics-legend i{border-radius:99px;height:5px}.logistics-samples span{border-color:#f2ded6;background:#fff8f4}.annual-chart{background:#fffdf9;border:1px solid #f2e7dc;border-radius:18px}.annual-bar span{border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#ff9f80,#ffcf9c)!important;box-shadow:0 5px 10px #ff9f8030}.annual-bar.selected span{background:linear-gradient(180deg,#6cc7c0,#a6e1d1)!important}.annual-bar:hover{transform:translateY(-3px)}.chart-panel,.comparison-panel,.logistics-analysis{overflow:hidden}.chart-panel .panel-heading,.comparison-panel .panel-heading,.logistics-analysis .panel-heading{background:linear-gradient(90deg,#fffaf5,#fff 72%)}.plot svg polyline,.comparison-plot svg polyline,.logistics-chart svg polyline{filter:drop-shadow(0 2px 1px #20334a18)}.plot svg circle:hover{r:7}.chart:hover,.comparison-chart:hover,.logistics-chart:hover{border-color:#f1c9b7;box-shadow:0 10px 24px #e6a98b22}.logistics-chart svg{background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(50% - 1px),#f2e7dc 50%,transparent calc(50% + 1px))}.logistics-x span,.x-axis span,.comparison-xaxis span{font-size:10px;font-weight:600}.annual-chart{padding:18px 14px 14px}.annual-bar{transition:transform .2s ease,filter .2s ease}.annual-bar:hover{filter:saturate(1.12)}.chart-panel,.comparison-panel,.analysis-grid>.panel,.logistics-analysis{animation:panel-rise .34s ease both}.comparison-panel{animation-delay:.04s}.analysis-grid>.panel{animation-delay:.08s}.logistics-analysis:nth-child(2){animation-delay:.12s}@keyframes panel-rise{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.plot svg polyline,.comparison-plot svg polyline,.logistics-chart svg polyline{stroke-dasharray:1400;animation:line-draw 1s cubic-bezier(.2,.7,.2,1) both}@keyframes line-draw{0%{stroke-dashoffset:1400;opacity:.25}to{stroke-dashoffset:0;opacity:1}}.annual-bar.selected{position:relative}.annual-bar.selected:after{content:"";position:absolute;right:10%;bottom:-7px;left:10%;height:3px;border-radius:99px;background:#66c9bf}.chart-tooltip,.comparison-tooltip{animation:tooltip-in .15s ease both}@keyframes tooltip-in{0%{opacity:0;transform:translate(-50%,3px)}to{opacity:1;transform:translate(-50%)}}.kpi-context-grid{scroll-snap-type:x proximity}.analysis-view .analysis-hero{gap:14px}.analysis-view .analysis-controls{flex-wrap:wrap}@media(max-width:800px){.summary,.metric-grid,.kpi-context-grid{display:flex;gap:10px;overflow-x:auto;margin-right:-12px;padding:2px 12px 8px 0;scrollbar-width:none}.summary::-webkit-scrollbar,.metric-grid::-webkit-scrollbar,.kpi-context-grid::-webkit-scrollbar{display:none}.summary>.metric-card,.summary>.quality-note,.metric-grid>.metric-card,.kpi-context-grid>.metric-card{min-width:172px;flex:0 0 172px;scroll-snap-align:start}.metric-card,.quality-note{padding:13px 14px}.analysis-view .analysis-hero{display:flex;flex-direction:column;padding:16px 14px}.analysis-view .analysis-hero h2{font-size:18px}.analysis-view .analysis-hero p{display:none}.analysis-view .analysis-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.analysis-view .analysis-controls label{font-size:10px}.analysis-view .analysis-controls label:nth-child(3),.analysis-view .analysis-controls label:nth-child(4){grid-column:span 2}.analysis-view .analysis-controls select{width:100%;min-height:42px}.content-grid,.analysis-grid{gap:12px}.chart-panel,.comparison-panel,.logistics-analysis,.analysis-table{border-radius:16px}.panel-heading{padding:13px 14px 10px}.panel-heading h2{font-size:13px}.chart,.comparison-chart{height:270px;border-radius:14px}.logistics-chart{height:270px;margin:0 12px;padding-left:38px;border-radius:14px}.logistics-y{left:0;width:31px}.logistics-x{left:38px;font-size:9px}.comparison-legend,.logistics-legend{padding:10px 14px 0;gap:8px;font-size:9px}.logistics-note,.cohort-footnote,.logistics-samples{margin-left:14px;margin-right:14px}.analysis-table .panel-heading{position:sticky;top:0;z-index:2;background:#fffdf9}.table-wrap{max-height:360px}.table-wrap table{min-width:max(720px,calc(220px + var(--period-count, 12) * 66px))}.table-wrap thead th:first-child,.table-wrap tbody th{position:sticky;left:0;z-index:1;background:#fffdf9;box-shadow:5px 0 8px -8px #20334a}.table-wrap thead th:first-child{z-index:3}.grand-total th,.grand-total td{position:sticky;bottom:0;z-index:2;background:#fffdf9}.grand-total th{left:0;z-index:4}.kpi-context{margin-top:10px}.kpi-context-head{gap:10px;align-items:flex-start;flex-direction:column}.kpi-tags{width:100%;overflow-x:auto;display:flex;scrollbar-width:none}.kpi-tags button{flex:0 0 auto;padding:9px 14px}.logistics-chart svg{min-width:520px}.logistics-chart{overflow-x:auto}.logistics-chart .logistics-x{min-width:520px}}.insight-panel{display:none!important}.comparison-panel{margin-bottom:0}.comparison-legend{display:flex;flex-wrap:wrap;gap:16px;padding:12px 18px 0;color:#607990;font-size:10px}.comparison-legend span{display:inline-flex;align-items:center;gap:6px}.comparison-legend i,.comparison-tooltip i{display:inline-block;width:18px;height:3px}.comparison-chart{display:flex;height:315px;padding:12px 18px 20px}.comparison-axis{display:flex;width:42px;flex-direction:column;justify-content:space-between;padding:5px 0 28px;color:#8496a7;text-align:right;font:9px DM Mono}.comparison-plot{position:relative;min-width:0;flex:1;margin-left:12px;padding-bottom:28px}.comparison-plot svg{position:absolute;top:3px;right:0;bottom:28px;left:0;width:100%;height:calc(100% - 31px);overflow:visible}.comparison-plot svg polyline{vector-effect:non-scaling-stroke}.comparison-plot svg rect{cursor:crosshair}.comparison-xaxis{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;overflow:hidden}.comparison-xaxis span{color:#778a9e;font:9px DM Mono;white-space:nowrap}.comparison-xaxis .hidden{visibility:hidden}.comparison-tooltip{position:absolute;top:8px;z-index:4;display:grid;min-width:160px;gap:4px;transform:translate(-50%);border:1px solid #397cb8;border-radius:8px;background:var(--navy);padding:8px 10px;color:#fff;pointer-events:none;box-shadow:0 8px 18px #071f3b35}.comparison-tooltip b{margin-bottom:2px;color:#b9dcff;font-size:9px}.comparison-tooltip span{display:flex;align-items:center;gap:5px;font-size:9px}.comparison-tooltip strong{margin-left:auto;font:500 10px DM Mono}@media(max-width:800px){.comparison-chart{height:270px}.comparison-tooltip{min-width:130px}}.logistics-analysis{padding-bottom:14px}.logistics-legend{display:flex;gap:18px;flex-wrap:wrap;padding:12px 18px 0;color:#607990;font-size:10px}.logistics-legend span{display:inline-flex;align-items:center;gap:6px}.logistics-legend i{display:inline-block;width:22px;height:3px}.logistics-legend .p25{background:#c8102e}.logistics-legend .median{background:#0969c8}.logistics-legend .p75{background:#0c9270}.logistics-chart{position:relative;display:flex;height:290px;margin:0 18px;padding:18px 0 30px 42px}.logistics-chart svg{width:100%;height:100%;overflow:visible;background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(50% - 1px),#e7eef5 50%,transparent calc(50% + 1px))}.logistics-y{position:absolute;left:0;top:18px;bottom:30px;display:flex;width:35px;flex-direction:column;justify-content:space-between;text-align:right;color:#8496a7;font:9px DM Mono}.logistics-x{position:absolute;left:42px;right:0;bottom:6px;display:flex;justify-content:space-between;color:#778a9e;font:9px DM Mono}.logistics-note{margin:0 18px;color:#72869a;font-size:10px;line-height:1.6}.logistics-samples{display:flex;flex-wrap:wrap;gap:6px;margin:10px 18px 0}.logistics-samples span{border:1px solid #d9e5ef;border-radius:999px;background:#f7fbff;padding:3px 7px;color:#6d8297;font:9px DM Mono}.logistics-chart.monthly{height:250px}.analysis-view>.metric-grid:not(.kpi-context-grid){display:none}.kpi-context{display:grid;gap:10px}.kpi-context-head{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid #cfe0ef;border-radius:12px;background:#fff;padding:12px 16px}.kpi-context-head>div:first-child{display:grid;gap:3px}.kpi-context-head strong{color:var(--navy);font-size:13px}.kpi-context-head small{color:var(--muted);font-size:9px}.kpi-tags{display:flex;gap:5px}.kpi-tags button{border:1px solid #c8d8e8;border-radius:999px;background:#fff;padding:7px 12px;color:#607990;font-size:10px;font-weight:800}.kpi-tags button:hover,.kpi-tags button.active{border-color:var(--blue);background:var(--blue);color:#fff}.kpi-context-grid{margin:0}@media(max-width:800px){.kpi-context-head{align-items:stretch;flex-direction:column}.kpi-tags{overflow:auto}.kpi-tags button{white-space:nowrap}}.summary{grid-template-columns:1fr}.summary>.metric-card:nth-child(1),.summary>.metric-card:nth-child(2),.summary>.quality-note{display:none}@keyframes kpi-enter{0%{opacity:0;transform:translateY(6px) scale(.99)}to{opacity:1;transform:none}}@keyframes chart-draw{0%{stroke-dashoffset:1200}to{stroke-dashoffset:0}}.kpi-context-grid .metric-card{animation:kpi-enter .24s ease both}.kpi-context-grid .metric-card:nth-child(2){animation-delay:.04s}.kpi-context-grid .metric-card:nth-child(3){animation-delay:.08s}.kpi-context-grid .metric-card:nth-child(4){animation-delay:.12s}.logistics-analysis svg polyline{stroke-dasharray:1200;animation:chart-draw .8s ease both}.kpi-tags button{transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease}.kpi-tags button:active{transform:scale(.96)}.ranking-scroll li,.table-wrap tbody tr{content-visibility:auto;contain-intrinsic-size:40px}.table-wrap{contain:layout paint}.chart{overflow-x:auto}.chart .plot{width:max(100%,calc(var(--period-count, 12) * 56px));min-width:max(100%,calc(var(--period-count, 12) * 56px));flex:0 0 max(100%,calc(var(--period-count, 12) * 56px))}.comparison-chart{overflow-x:auto}.comparison-chart .comparison-plot{width:max(100%,calc(var(--period-count, 12) * 56px));min-width:max(100%,calc(var(--period-count, 12) * 56px));flex:0 0 max(100%,calc(var(--period-count, 12) * 56px))}.table-wrap{overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.table-wrap table{min-width:max(680px,calc(220px + var(--period-count, 12) * 70px))}@media(max-width:800px){.main,.chart,.comparison-chart{padding-left:12px;padding-right:12px}.chart .plot{min-width:max(100%,calc(var(--period-count, 12) * 58px));flex-basis:max(100%,calc(var(--period-count, 12) * 58px))}.comparison-chart .comparison-plot{min-width:max(100%,calc(var(--period-count, 12) * 64px));flex-basis:max(100%,calc(var(--period-count, 12) * 64px))}.table-wrap table{min-width:max(680px,calc(180px + var(--period-count, 12) * 66px))}.table-wrap th,.table-wrap td{padding:9px 8px;font-size:11px}.filter-drawer input,.filter-drawer select,.analysis-controls select{min-height:42px;font-size:14px}.segmented button{min-height:42px;font-size:12px}}.detail-panel .table-wrap table{width:max-content;min-width:100%}.detail-panel .table-wrap thead th:not(:first-child),.detail-panel .table-wrap tbody td{min-width:70px}.panel-heading .muted,.analysis-hero p,.insight-panel .callout,.insight-panel .insight-list{display:none}.analysis-view .analysis-table tbody tr,.analysis-view .ranking-data-scroll tbody tr{content-visibility:visible!important;contain:none!important}.analysis-view .analysis-table .table-wrap{contain:none!important}.analysis-view .insight-panel{display:block!important}.analysis-view .insight-panel .insight-list{display:grid!important}.analysis-view>.insight-panel{display:none!important}.individual-heading{padding:14px 18px 10px;border-bottom:1px solid #d8e3ef}.individual-heading .panel-heading{border:0;padding:0}.individual-heading label{display:inline-grid;gap:4px;margin-top:10px;color:#536b84;font-size:10px;font-weight:800}.individual-heading select{height:34px;min-width:220px;border:1px solid #c8d8e8;border-radius:7px;background:#fff;padding:6px 8px;color:#1d3855}.individual-insights{display:grid;grid-template-columns:repeat(3,1fr) 2fr;align-items:stretch;border-bottom:1px solid #e2ebf3;padding:0 18px}.individual-insights>.metric-card{padding:11px 14px 9px 0;border-right:1px solid #e2ebf3}.individual-insights>.metric-card+.metric-card{padding-left:14px}.individual-buckets{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:11px 14px}.individual-buckets span,.individual-transfer{display:grid;gap:3px;color:#71869d;font-size:9px}.individual-buckets b,.individual-transfer b{color:#14243b;font-size:10px}.individual-transfer{grid-column:1/-1;border-top:1px solid #edf2f7;padding:8px 0}@media(max-width:800px){.individual-heading{padding:12px 14px 8px}.individual-heading select{width:100%;min-width:0}.individual-insights{grid-template-columns:repeat(3,180px);overflow-x:auto;padding:0 14px}.individual-buckets{grid-column:1/-1;grid-template-columns:repeat(5,140px);overflow-x:auto;padding-left:0;padding-right:0}.individual-transfer{grid-column:1/-1}}.insight-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;border-bottom:1px solid #d8e3ef;padding:14px 18px 10px}.insight-heading .panel-heading{border:0;padding:0}.insight-heading>label{display:grid;gap:4px;min-width:180px;color:#536b84;font-size:10px;font-weight:800}.insight-heading select{height:34px;border:1px solid #c8d8e8;border-radius:7px;background:#fff;padding:6px 8px;color:#1d3855}.insight-panel .insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:0 18px}.insight-panel .insight-grid .metric-card{border-right:1px solid #e2ebf3;border-radius:0;padding:12px 18px 10px 0}.insight-panel .insight-grid .metric-card+.metric-card{padding-left:18px}.insight-panel .insight-list{grid-template-columns:repeat(5,1fr);margin:0 18px 10px;border-top:1px solid #e2ebf3}.insight-panel .insight-list div{display:grid;gap:4px;padding:8px 10px;border-right:1px solid #edf2f7}.insight-panel .insight-list div:last-child{border-right:0}.insight-panel .insight-list strong{font-size:11px}@media(max-width:800px){.insight-heading{align-items:stretch;flex-direction:column;gap:8px;padding:12px 14px 8px}.insight-heading>label{min-width:0}.insight-panel .insight-grid{overflow-x:auto;grid-template-columns:repeat(3,180px);padding:0 14px}.insight-panel .insight-list{grid-template-columns:repeat(5,150px);overflow-x:auto;margin-left:14px;margin-right:14px}.insight-panel .insight-grid .metric-card{padding-left:0!important}.insight-panel .insight-list div{padding-left:0}}.analysis-hero{padding:15px 18px}.analysis-hero h2{margin-bottom:0}.comparison-legend,.logistics-legend{padding-top:8px}.logistics-cohort .cohort-chart{height:270px}.logistics-legend .cohort-0{background:#0969c8}.logistics-legend .cohort-1{background:#c8102e}.logistics-legend .cohort-2{background:#0c9270}.logistics-legend .cohort-3{background:#8b5cf6}.logistics-legend .cohort-4{background:#d97706}.cohort-footnote{margin:0 18px 14px;color:#72869a;font-size:10px}.panel{transition:border-color .2s ease,box-shadow .2s ease}.panel:hover{border-color:#c6d9eb;box-shadow:0 8px 24px #12365b12}.panel-heading{position:relative}.panel-heading:before{content:"";width:3px;height:28px;position:absolute;left:0;top:15px;border-radius:0 3px 3px 0;background:var(--blue)}.panel-heading h2{letter-spacing:.01em}.metric-card{position:relative;overflow:hidden}.metric-card:after{content:"";position:absolute;right:0;top:0;width:3px;height:100%;background:#dceeff}.metric-card strong{letter-spacing:-.03em}.filter-drawer{box-shadow:0 8px 22px #12365b0b}.filter-drawer label>span,.filter-drawer label>select,.filter-drawer label>input,.filter-drawer .segmented{transition:transform .18s ease}.filter-drawer label:focus-within>span{color:var(--blue)}.table-wrap::-webkit-scrollbar,.comparison-chart::-webkit-scrollbar,.chart::-webkit-scrollbar{height:8px;width:8px}.table-wrap::-webkit-scrollbar-thumb,.comparison-chart::-webkit-scrollbar-thumb,.chart::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:8px;background:#b8cadb;background-clip:padding-box}.table-wrap::-webkit-scrollbar-track,.comparison-chart::-webkit-scrollbar-track,.chart::-webkit-scrollbar-track{background:#f3f7fb}.dock-item:focus-visible,.dock-command:focus-visible,.segmented button:focus-visible,.header-actions button:focus-visible,.filter-drawer input:focus-visible,.filter-drawer select:focus-visible,.analysis-controls select:focus-visible{outline:3px solid #64b4ff;outline-offset:2px}.grand-total th,.grand-total td{box-shadow:0 -1px #c2d9ed}.x-axis span,.comparison-xaxis span{font-variant-numeric:tabular-nums}.comparison-chart,.chart{scrollbar-color:#b8cadb #f3f7fb;scrollbar-width:thin}.extended-analysis{border:1px solid #dfe6ed;border-radius:8px;background:#fff}.extended-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px}.subpanel{min-width:0;border:1px solid #e4ebf1;border-radius:7px;padding:12px;background:#fff}.subpanel.wide{grid-column:1/-1}.subpanel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.subpanel h3{margin:0;color:#173653;font-size:12px}.subpanel-head span{color:#7d91a3;font-size:9px}.choice-row{display:flex;flex-wrap:wrap;gap:7px;max-height:72px;overflow:auto;margin-bottom:8px}.choice-row label{font-size:10px;color:#526b82;white-space:nowrap}.choice-row input{margin-right:3px;accent-color:#0b6f8a}.mini-lines{display:block;width:100%;height:130px}.subpanel table{width:100%;min-width:0;border-collapse:collapse;font-size:10px}.subpanel th,.subpanel td{padding:6px;border:1px solid #e4ebf1;text-align:right;white-space:nowrap}.subpanel th:first-child,.subpanel td:first-child{text-align:left}.subpanel thead th{background:#f3f7fa;color:#526c84}.subpanel tbody th{background:#fbfdff;color:#274968}.table-scroll{max-height:260px;overflow:auto}.micro-note{margin:8px 0 0;color:#8395a5;font-size:9px;line-height:1.5}.stat-pairs,.quality-grid,.summary-strip{display:grid;grid-template-columns:1fr 1fr;gap:7px}.stat-pairs div,.quality-grid span,.quality-grid strong,.summary-strip div{border-bottom:1px solid #edf1f4;padding:5px}.stat-pairs span,.summary-strip span{display:block;color:#8497a7;font-size:9px}.stat-pairs strong,.summary-strip strong{color:#173653;font-size:12px}.quality-grid{grid-template-columns:1fr auto;align-items:center}.quality-grid strong{text-align:right}.meeting-summary{display:grid;gap:10px}.meeting-summary>button{justify-self:start;border:1px solid #aac4d8;border-radius:5px;background:#fff;color:#0b6f8a;padding:7px 12px;font-size:10px;font-weight:700}.empty-inline{color:#8295a6;font-size:10px}@media(max-width:800px){.extended-grid{grid-template-columns:1fr;padding:10px}.subpanel.wide{grid-column:auto}.extended-analysis{border-radius:16px}.subpanel{padding:10px}.choice-row{max-height:96px}.mini-lines{height:120px}.meeting-summary .summary-strip{overflow-x:auto;display:flex}.summary-strip div{min-width:120px}}.preset-row{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.preset-row button{border:1px solid #c9d8e8;border-radius:4px;background:#fff;color:#526f86;padding:4px 6px;font-size:9px}.preset-row button:hover{border-color:#0b6f8a;color:#0b6f8a}.audit-list{display:grid;grid-template-columns:auto 1fr;gap:5px;margin-top:8px;padding-top:7px;border-top:1px solid #edf1f4;font-size:9px}.audit-list strong{color:#6f8597}.audit-list span{color:#274968;overflow-wrap:anywhere}.icon-only{display:inline-grid;place-items:center;min-width:32px;width:32px;height:32px;padding:0!important;border:1px solid #c8d8e8!important;border-radius:6px!important;background:#fff!important;color:#315d7d!important;font-size:16px!important;font-weight:700;line-height:1}.icon-only:hover,.icon-only:focus-visible{border-color:#0b6f8a!important;background:#eef8fa!important;color:#0b6f8a!important;outline:none;box-shadow:0 0 0 3px #0b6f8a1f}.chart-panel,.comparison-panel{position:relative}.chart-save.icon-only{position:absolute;top:55px;right:18px;z-index:2}.filter-reset.icon-only{justify-self:end}.preset-row .icon-only{min-width:28px;width:28px;height:28px;font-size:14px!important}.header-actions .icon-only{min-width:34px;width:34px}.header-actions .icon-only{display:inline-grid}@media(max-width:800px){.header-actions .icon-only{display:inline-grid}}.chart-save.icon-only svg{display:block}.chart-save.icon-only{display:inline-grid;place-items:center}.chart .plot{min-width:0}@media(max-width:800px){.chart{overflow-x:auto;overflow-y:hidden;padding-right:0}.chart .plot{min-width:max(520px,calc(var(--period-count) * 66px))}.chart .x-axis{overflow:visible}.chart-panel .chart-save.icon-only{right:14px}.comparison-chart{overflow-x:auto}.comparison-chart .comparison-plot{min-width:max(520px,calc(var(--period-count) * 66px))}}.plot svg polyline,.comparison-plot svg polyline,.logistics-chart svg polyline,.mini-lines polyline{stroke-dasharray:none!important;stroke-dashoffset:0!important;animation:none!important;filter:none!important}.plot svg,.comparison-plot svg,.logistics-chart svg{preserve-aspect-ratio:xMidYMid meet}.plot svg polyline,.comparison-plot svg polyline,.logistics-chart svg polyline{stroke-width:2.5}.plot svg circle{stroke-width:1;stroke:#fff}.plot svg circle:hover{r:4}.app-shell{background:#f6f7f5;color:#18252b}.tool-dock{inset:0 auto 0 0;width:88px;border-radius:0;background:#182b32;padding:14px 10px;box-shadow:none;color:#eef4f1}.dock-brand{height:54px;border-radius:0;background:transparent;box-shadow:none;border-bottom:1px solid #ffffff20}.dock-brand b{display:none}.dock-mark{height:30px;width:30px;border-radius:50%;background:#8bc9bd;color:#182b32}.dock-item,.dock-command{min-height:58px;border-radius:0;color:#aabdb9}.dock-item:hover,.dock-command:hover{transform:none;background:#ffffff0d;box-shadow:none;color:#fff}.dock-item.active{background:#8bc9bd;color:#182b32;box-shadow:none}.dock-item small,.dock-command small{display:none}.dock-item b,.dock-command b{font-size:9px;font-weight:600}.dock-command,.dock-footer{border-top:1px solid #ffffff20}.dock-footer span,.dock-footer b,.dock-footer small{color:#b7ccc7}.main{margin-left:88px;padding:0 44px 36px;background:#f6f7f5}.topbar{margin:0 -44px;padding:24px 44px 20px;background:#f6f7f5;border-bottom:1px solid #d8dfdc;box-shadow:none}.breadcrumb{margin-bottom:8px;color:#81918f}.breadcrumb strong{color:#0b6f8a}.topbar h1{font-size:24px;font-weight:650;letter-spacing:-.04em;color:#182b32}.topbar p{color:#71817f}.header-actions{gap:4px}.header-actions button,.icon-only{border:0!important;border-radius:0!important;background:transparent!important;color:#42625f!important}.header-actions button:hover,.icon-only:hover,.icon-only:focus-visible{background:#e3efec!important;color:#0b6f8a!important;box-shadow:none!important}.filter-drawer{margin:18px 0 22px;padding:0 0 14px;background:transparent;border-bottom:1px solid #d8dfdc!important}.filter-title{border:0}.filter-title span,.eyebrow{color:#0b6f8a;letter-spacing:.16em;font-size:9px}.filter-title strong{font-size:12px;font-weight:650}.filter-drawer input,.filter-drawer select,.analysis-controls select{height:34px;border:0;border-bottom:1px solid #bfcac7;border-radius:0;background:transparent;padding-left:0;color:#243b3d}.filter-drawer input:focus,.filter-drawer select:focus,.analysis-controls select:focus{border-color:#0b6f8a;box-shadow:none}.segmented button{border:0!important;border-bottom:1px solid #bfcac7!important;border-radius:0!important;background:transparent;color:#6f817e}.segmented button.selected{background:transparent;color:#0b6f8a;border-bottom:2px solid #0b6f8a!important;box-shadow:none}.preset-row{gap:10px}.preset-row button{border:0;background:transparent;color:#70817e;padding:3px 0}.summary{gap:0;margin-bottom:24px;border-bottom:1px solid #d8dfdc}.metric-card,.quality-note{padding:12px 18px 14px 0;border-right:1px solid #d8dfdc!important}.metric-card strong{font-size:25px;color:#182b32}.quality-note{padding-left:18px}.content-grid,.analysis-grid{gap:28px}.panel,.extended-analysis,.subpanel{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.panel-heading{padding:0 0 11px;border-bottom:1px solid #d8dfdc}.panel-heading:before{display:none}.panel-heading h2{margin-top:5px;font-size:14px;font-weight:650;letter-spacing:-.02em}.chart,.comparison-chart,.logistics-chart,.annual-chart{border:0!important;border-radius:0!important;background:transparent!important}.chart{padding-left:0;padding-right:0}.plot svg,.comparison-plot svg,.logistics-chart svg{color:#0b6f8a}.gridlines i{border-color:#e1e8e5}.ranking-scroll{height:310px}.ranking-scroll li{border-bottom:1px solid #e1e8e5;padding:10px 0}.ranking-scroll li:hover{background:transparent}.detail-panel .table-wrap,.analysis-table .table-wrap{padding-left:0;padding-right:0}.table-wrap th,.table-wrap td{border-left:0;border-right:0;border-color:#dfe6e3}.thead th,thead th{background:transparent}.grand-total th,.grand-total td{background:#e9f1ef}.extended-grid{padding:22px 0 0}.subpanel{border-bottom:1px solid #d8dfdc!important;padding:0 0 18px!important}.subpanel table{margin-top:5px}.subpanel table th,.subpanel table td{border-color:#dfe6e3}.subpanel thead th{background:transparent}.chart-save.icon-only{top:0;right:0}.annual-bar span,.annual-bar.selected span{background:#7dbeb3!important;box-shadow:none}.annual-bar:hover span{background:#0b6f8a!important}.chart-tooltip,.comparison-tooltip{border-radius:0;box-shadow:none;background:#182b32}.scroll-region{scrollbar-width:thin;scrollbar-color:#b6c7c3 transparent}@media(max-width:800px){.tool-dock{inset:auto 0 0;width:100%;height:58px;padding:0;background:#182b32}.tool-dock nav{gap:0}.dock-item,.dock-command{min-height:58px}.dock-item b,.dock-command b{font-size:8px}.dock-footer{display:none}.main{margin-left:0;padding:0 16px 76px}.topbar{margin:0 -16px;padding:18px 16px 16px}.topbar h1{font-size:20px}.filter-drawer{margin-top:14px}.summary{overflow-x:auto;margin-right:-16px;padding-right:16px}.metric-card,.quality-note{min-width:160px;border-right:1px solid #d8dfdc!important}.content-grid,.analysis-grid{gap:22px}.chart{height:260px}.ranking-scroll{height:280px}.panel-heading{padding-bottom:9px}.extended-grid{gap:18px}.subpanel.wide{grid-column:auto}.chart .plot{min-width:max(520px,calc(var(--period-count) * 66px))}}.chart,.comparison-chart{overflow:hidden!important}.chart .plot,.comparison-chart .comparison-plot{width:auto!important;min-width:0!important;flex:1 1 auto!important}.plot svg,.comparison-plot svg{width:100%!important;height:100%!important;top:3px!important;right:0!important;bottom:28px!important;left:0!important}.x-axis,.comparison-xaxis{overflow:hidden!important}.x-axis span.hidden,.comparison-xaxis span.hidden{visibility:hidden}.x-axis span.hidden,.comparison-xaxis span.hidden{display:none}.filter-drawer>.filter-reset{width:34px!important;min-width:34px!important;height:34px!important;align-self:end;justify-self:start!important;padding:0!important}.filter-drawer{margin-bottom:12px!important}.summary{margin-bottom:16px!important}.chart{height:258px!important}@media(max-width:800px){.filter-drawer{gap:8px;margin-bottom:10px!important}.summary{margin-bottom:14px!important}.chart{height:238px!important}}.chart,.comparison-chart{overflow-x:auto!important;overflow-y:hidden!important}@media(min-width:801px){.chart .plot,.comparison-chart .comparison-plot{width:min(1080px,calc(100vw - 260px))!important;min-width:720px!important;max-width:1080px!important;flex:0 1 auto!important}.plot svg,.comparison-plot svg{width:100%!important;height:100%!important}}@media(min-width:801px){.chart .plot,.comparison-chart .comparison-plot{width:100%!important;min-width:0!important;max-width:none!important;flex:1 1 auto!important}}@media(min-width:801px){.filter-drawer{grid-template-columns:180px repeat(6,minmax(120px,1fr));grid-template-rows:auto auto;align-items:end;column-gap:20px;row-gap:12px;padding:16px 20px}.filter-title{grid-column:1;grid-row:1 / span 2;align-self:stretch}.filter-drawer>label{min-width:0}.filter-drawer>.search-label{grid-column:2 / span 3;grid-row:2}.filter-drawer>.filter-reset{grid-column:6;grid-row:2;justify-self:end;align-self:end}}@media(min-width:801px){body{zoom:1.1}}.chart .plot,.comparison-chart .comparison-plot{width:100%!important;min-width:0!important;flex:1 1 auto!important}.plot svg,.comparison-plot svg{width:100%!important}.x-axis,.comparison-xaxis{overflow:visible!important}@media(max-width:800px){.chart .plot,.comparison-chart .comparison-plot{width:max(520px,calc(var(--period-count, 12) * 66px))!important;min-width:max(520px,calc(var(--period-count, 12) * 66px))!important;flex-basis:max(520px,calc(var(--period-count, 12) * 66px))!important}}@media(max-width:800px){.chart,.comparison-chart{padding-right:0!important}.chart .plot,.comparison-chart .comparison-plot{min-width:0!important;flex-basis:auto!important}}.icon-only,.chart-save.icon-only{border:0!important;background:transparent!important;box-shadow:none!important;color:#506b82!important}.icon-only:hover,.icon-only:focus-visible,.chart-save.icon-only:hover,.chart-save.icon-only:focus-visible{border:0!important;background:#e8f3f5!important;box-shadow:none!important;color:#0b6f8a!important}.panel,.metric-card,.quality-note,.filter-drawer,.extended-analysis,.subpanel{border:0!important;box-shadow:none!important}.panel{border-radius:0!important}.metric-card,.quality-note,.filter-drawer{border-radius:0!important;background:transparent!important;padding-left:0;padding-right:0}.chart,.comparison-chart,.logistics-chart,.annual-chart{border:0!important;border-radius:0!important;box-shadow:none!important}.extended-analysis{border-radius:0!important}.subpanel{border-radius:0!important;background:transparent!important;padding-left:0;padding-right:0}.subpanel table th,.subpanel table td{border-left:0;border-right:0}.ranking{display:flex;flex-direction:column;min-height:0}.ranking ol{overflow:auto;min-height:0;flex:1}.detail{display:flex;flex-direction:column}.detail .table-wrap{max-height:430px;overflow:auto}.detail thead th{position:sticky;top:0;z-index:2}.detail .grand-total th,.detail .grand-total td{position:sticky;bottom:0;z-index:1;background:#f4f6f8}.staff-meta{display:block;color:#7b8794;font-size:11px;font-weight:500;white-space:nowrap;margin-top:3px}:root{font-family:Noto Sans JP,Yu Gothic UI,sans-serif;color:#14243b;background:#f2f6fb;font-size:14px;--qb-navy:#071f3b;--qb-blue:#0969c8;--qb-blue-dark:#064d99;--qb-blue-soft:#e8f2ff;--qb-line:#dbe5f0;--qb-muted:#60748b;--qb-red:#c8102e}body{background:#f2f6fb}.app-shell{min-height:100vh;background:#f2f6fb}.sidebar{width:238px;background:linear-gradient(180deg,#071f3b,#0b2d52);padding:22px 14px 18px;box-shadow:8px 0 28px #08234314}.brand{font-family:DM Mono,Yu Gothic UI,sans-serif;font-size:17px;letter-spacing:.12em;line-height:1.2;margin:5px 12px 42px}.brand span{color:#7da4cf;font-size:10px;letter-spacing:.25em}.sidebar nav{gap:7px}.sidebar nav a{border-left:3px solid transparent;border-radius:8px;color:#bdd0e4;padding:13px 14px;font-size:13px;transition:background .2s ease,color .2s ease}.sidebar nav a:hover{background:#ffffff14;color:#fff}.sidebar nav a.active{background:#0d6dca;border-left-color:#64b4ff;color:#fff;box-shadow:0 7px 18px #005ab840}.sidebar-footer{border-top:1px solid rgba(170,202,232,.2);padding:18px 10px 0}.sidebar-footer small{color:#86a4c2}.sidebar-footer strong{color:#e4f0fc;font-size:11px}.main{max-width:none;padding:0 34px 36px;overflow:hidden}.topbar{margin:0 -34px;padding:28px 34px 24px;background:#fff;border-bottom:1px solid var(--qb-line);box-shadow:0 2px 10px #16395b08}.breadcrumb{color:#6c829a;font-size:11px;margin-bottom:10px}.topbar h1{color:var(--qb-navy);font-size:27px;font-weight:800;letter-spacing:.02em}.subtitle{color:#6a7e94}.header-actions button{border:1px solid #bfd1e4;border-radius:7px;background:#fff;color:#164a7f;padding:10px 15px;cursor:pointer;transition:all .2s ease}.header-actions button:hover{border-color:var(--qb-blue);color:var(--qb-blue);background:var(--qb-blue-soft)}.filters{position:relative;grid-template-columns:1.05fr 1fr 1.15fr 1.15fr 1.15fr 1.15fr 1.1fr;padding:20px 0 18px;gap:10px}.filters:before{content:"表示条件";grid-column:1/-1;color:var(--qb-navy);font-size:12px;font-weight:800;margin-bottom:2px}.filters label{gap:7px;color:#536b84;font-size:11px}.filters input,.filters select{border:1px solid #c9d8e8;border-radius:7px;padding:10px 11px;background:#fff;color:#1b3655;min-height:40px;outline:none;transition:border .2s,box-shadow .2s}.filters input:focus,.filters select:focus{border-color:var(--qb-blue);box-shadow:0 0 0 3px #0969c81f}.filters input[type=month]{width:112px}.segmented button{background:#fff;border:1px solid #c9d8e8;color:#59718b;padding:9px 8px;min-height:40px;cursor:pointer}.segmented button:first-child{border-radius:7px 0 0 7px}.segmented button:last-child{border-radius:0 7px 7px 0}.segmented button.selected{background:var(--qb-blue);border-color:var(--qb-blue);color:#fff;box-shadow:0 4px 10px #0969c833}.summary{border:0;background:transparent;gap:12px;margin-bottom:20px}.summary>div{border:1px solid var(--qb-line);border-radius:11px;background:#fff;padding:16px 18px;box-shadow:0 4px 15px #11365b0d}.summary>div:last-child{border-right:1px solid var(--qb-line)}.summary span{color:#6a8098}.summary strong{color:var(--qb-navy);font-size:23px}.quality-note{border-left:4px solid var(--qb-blue)!important}.content-grid{gap:16px}.panel{border:1px solid var(--qb-line);border-radius:12px;box-shadow:0 4px 15px #11365b0b}.panel-heading{padding:17px 20px 14px;border-bottom:1px solid #edf2f7}.eyebrow{color:var(--qb-blue);font-size:10px;font-weight:700}.panel h2{color:var(--qb-navy);font-size:15px}.legend i{background:var(--qb-blue)}.chart{height:305px}.gridlines i{border-color:#e6edf5}.ranking{min-height:0}.ranking ol{padding:4px 20px 14px}.ranking li{padding:12px 0;border-bottom-color:#edf2f7}.ranking li b{color:#7690ab}.ranking li span{color:#234363}.ranking li strong{color:var(--qb-navy)}.staff-meta{color:#6e88a3}.table-wrap{padding:0 12px 12px}table{font-size:11px}th,td{border-color:#e1eaf3;padding:10px 9px}thead th{background:#eef5fc;color:#486682;font-weight:700}tbody th{background:#fbfdff;color:#234363}.grand-total th,.grand-total td{background:#e7f1fc;color:#123d69}.detail .grand-total th,.detail .grand-total td{background:#e7f1fc}footer{color:#71869c}@media(max-width:1300px){.filters{grid-template-columns:repeat(4,1fr)}.filters:before{grid-column:1/-1}}@media(max-width:700px){.main{padding:0 16px 24px}.topbar{margin:0 -16px;padding:22px 16px}.filters{grid-template-columns:1fr 1fr}.filters:before{grid-column:1/-1}.filters input[type=month]{width:105px}.summary{gap:8px}.summary>div{padding:13px}.content-grid{gap:12px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.plot svg circle{cursor:pointer;transition:r .18s ease,fill .18s ease}.plot svg circle:focus{outline:none;filter:drop-shadow(0 0 .2rem rgba(9,105,200,.55))}.chart-tooltip{position:absolute;top:10px;z-index:4;transform:translate(-50%);display:grid;gap:3px;min-width:105px;padding:9px 11px;background:#071f3b;color:#fff;border:1px solid #2b73b9;border-radius:8px;box-shadow:0 8px 18px #071f3b2e;pointer-events:none}.chart-tooltip:after{content:"";position:absolute;left:50%;bottom:-6px;width:10px;height:10px;background:#071f3b;border-right:1px solid #2b73b9;border-bottom:1px solid #2b73b9;transform:translate(-50%) rotate(45deg)}.chart-tooltip b{font-size:10px;color:#b8d8f6}.chart-tooltip strong{font-family:DM Mono,monospace;font-size:16px}.chart-tooltip small{font-family:Noto Sans JP,sans-serif;font-size:10px;margin-left:2px}.x-axis span.active{color:#0969c8;font-weight:800}.ranking li:hover{background:#f4f9ff}.ranking li{transition:background .18s ease}
