/* Unified presentation layer. Excel cell formatting remains owned by excel-view. */
#trendChart{overflow:auto;position:relative}#trendChart svg{width:100%;max-width:100%;min-width:0;height:auto;max-height:230px;cursor:crosshair}#trendChart svg text{font:12px sans-serif;fill:#4a5c6e}#trendChart .sw-cursor{stroke:#b9c3cf;stroke-width:1;stroke-dasharray:3 3}#trendChart .sw-tooltip{position:absolute;transform:translate(-50%,-115%);background:#233852;color:#fff;padding:5px 9px;border-radius:5px;font-size:12px;line-height:1.5;white-space:nowrap;pointer-events:none;box-shadow:0 2px 8px #0003;z-index:5}#trendChart .sw-tooltip strong{display:block;font-weight:600;font-size:11px;color:#c7d2e0}#trendChart .sw-tooltip.below{transform:translate(-50%,15px)}#trendChart .sw-tooltip span{display:block}#selectedScope{scroll-margin-top:20px}
.yoy-line-budget{stroke:var(--muted);stroke-width:1.5;stroke-dasharray:1 3;stroke-linecap:round;fill:none}
.yoy-bar-current{fill:var(--hot);stroke:#fff;stroke-width:.5}.yoy-bar-prior{fill:var(--sub);stroke:#fff;stroke-width:.5}
/* 2026-10-12 黒田さん指示: 累計残高・移動合計グラフに期首の基準線を表示 */
.trend-ref-line{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 2}
.trend-ref-label{font:11px sans-serif;fill:var(--muted)}
.brand-mark{overflow:hidden;background:#fff}.brand-mark img{width:100%;height:100%;object-fit:cover;display:block}
/* 2026-10-11 黒田さん指示: 水色・オレンジをもっと使う。達成=スチールブルー/未達=水色/最下位1店だけオレンジ */
.bar-fill{background:var(--accent)}.bar-fill.low{background:var(--sub)}.bar-fill.worst{background:var(--hot)}
.insight-fill{background:var(--accent)}.insight-fill.low{background:var(--sub)}.insight-fill.worst{background:var(--hot)}.insight-fill.negative{background:var(--red)}
#insightSummary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:7px;background:white;overflow:hidden;margin:0 0 14px}
#insightSummary .metric{border:0;border-radius:0;border-right:1px solid var(--line);min-height:0;padding:9px 13px;background:transparent}
#insightSummary .metric:last-child{border-right:0}
#insightSummary .metric-label{font-size:12px;font-weight:500;line-height:1.5;color:var(--muted)}
#insightSummary .metric-value{font-size:26px;margin-top:3px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
#insightSummary .metric-value small{font-size:13px}
#insightSummary .metric-note{font-size:10px;line-height:1.6;margin-top:3px}
@media(max-width:1150px){#insightSummary{grid-template-columns:repeat(3,minmax(0,1fr))}#insightSummary .metric{border-bottom:1px solid var(--line)}#insightSummary .metric:nth-child(3n){border-right:0}}
@media(max-width:760px){#insightSummary{grid-template-columns:repeat(2,minmax(0,1fr))}#insightSummary .metric-value{font-size:22px}#insightSummary .metric:nth-child(2n){border-right:0}}
.trend-legend{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--ink)}.trend-dot{width:22px;height:0;border-top:3px solid;display:inline-block;margin-left:10px;vertical-align:middle}.trend-dot:first-child{margin-left:0}.trend-dot.current{border-top-color:var(--hot)}.trend-dot.prior{border-top-style:dashed;border-top-color:var(--sub)}.trend-dot.budget{border-top-style:dotted;border-top-width:3px;border-top-color:var(--muted)}
/* 2026-10-12 黒田さん指示: 棒グラフをタップすると下の枠がその月の値に切り替わる。枠は今期・(予算・)昨年・対比の固定レイアウト */
.trend-summary{display:grid;grid-template-columns:repeat(var(--trend-cols,3),minmax(0,1fr));margin:8px 2px 0;border:1px solid var(--line);border-radius:7px;background:white;overflow:hidden}
.trend-summary-head{grid-column:1/-1;font-size:14px;font-weight:600;color:var(--muted);padding:6px 10px 0}
.trend-summary-item{padding:3px 10px 7px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:1px;min-width:0}
.trend-summary-item:last-child{border-right:0}
.trend-summary-caption{font-size:13px;color:var(--muted);display:inline-flex;align-items:center;gap:5px}
.trend-summary-caption .trend-dot{margin-left:0;width:14px}
.trend-summary-item strong{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.trend-summary-sub{font-size:13px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}
@media(max-width:480px){.trend-summary-item{padding:3px 8px 6px}.trend-summary-item strong{font-size:17px}.trend-summary-sub{font-size:11px}}
#trendPanel .panel-heading{flex-wrap:wrap}#trendPanel .panel-heading label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--muted);font-weight:600}#trendPanel .panel-heading label:first-of-type{margin-left:auto}#trendPanel .panel-heading select{min-width:120px}
/* 2026-10-11 黒田さん指示: 項目ごとに実績・昨年実績・昨対比が右に並ぶ一覧表 */
.yoy-table{width:100%;border-collapse:collapse;background:white;border:1px solid var(--line);border-radius:7px;overflow:hidden;font-size:18px;font-variant-numeric:tabular-nums}
@media(max-width:480px){.yoy-table{font-size:13px}.yoy-table th,.yoy-table td{padding:9px 8px}}
.yoy-table caption{caption-side:top;text-align:left;font-size:13px;color:var(--muted);padding:12px 16px 0}
.yoy-table th,.yoy-table td{padding:14px 16px;text-align:right;border-bottom:1px solid var(--line);font-weight:600}
.yoy-table th:first-child,.yoy-table td:first-child{text-align:left;font-weight:600}
.yoy-table thead th{font-size:13px;font-weight:500;color:var(--muted);background:var(--soft)}
.yoy-table tbody tr:last-child td{border-bottom:0}
.yoy-table tbody tr:nth-child(even){background:var(--paper)}
.row-trend{cursor:pointer}.row-trend:hover,.row-trend:focus-visible{background:var(--soft)!important}
/* #insightMetricsは今は表1枚+注記のみ。.insight-metricsの3列グリッドのままだと表と注記が横に並んで右側が空く */
#daily .selected-overview #insightMetrics{display:block}
#daily #storeTable th,#daily #storeTable td{padding:9px 11px;font-size:13px;line-height:1.5}#daily #storeTable th{font-size:12px}#daily #storeTable .table-link{font-size:13px}#daily #storeTable .input-status{font-size:12px}#daily #storeComparison .panel-heading{margin-bottom:12px;padding-bottom:10px}#daily #storeComparison h2{font-size:17px}
.yoy-badge{font-size:11px;font-weight:600;white-space:nowrap}.yoy-up{color:var(--green)}.yoy-down{color:var(--red)}.yoy-flat{color:var(--muted)}
#storeTable td .num-main{display:inline-block;width:3.6em;text-align:right}#storeTable td .num-sub{display:inline-block;width:3.6em;text-align:right;margin-left:4px}
:root{--paper:#E6EBEE;--ink:#1E3442;--muted:#6B7F8B;--line:#DDE4E8;--accent:#2B5F7E;--accent-dark:#2B5F7E;--soft:#E8F0F3;--red:#ac533d;--amber:#91651d;--green:#2f7d4f;--sub:#3FA9C6;--hot:#E9772E}
body{line-height:1.55}.sidebar{background:#152d3d;color:#c4d4df;border:0;width:238px;padding:30px 16px;z-index:20}.brand{color:white;font-size:13px}.brand small,.side-label,.side-footer{color:#9bb3c3}.brand-mark{border-radius:8px;flex-shrink:0}.side-label{margin:38px 14px 12px}.nav{font-size:14px;color:#c4d4df;padding:12px 13px;border-radius:6px;white-space:nowrap;min-height:46px}.nav.active{background:#1b3a4d;color:white;box-shadow:inset 3px 0 var(--hot)}.nav:hover{background:#1b3346;color:white}.side-footer>a{color:#c4d4df}.sidebar-toggle{background:#1b3346;color:#d9e7ef;border-color:#2c4a5e}.sidebar.collapsed{background:#152d3d}
main{margin-left:238px;width:calc(100% - 238px);max-width:none;padding:0 30px}.topbar{height:60px;border-color:var(--line);font-size:12px}.top-actions{gap:9px}.topbar #syncStatus{font-size:12px}.page-title{margin:23px 0 19px}.page-title h1{font-size:28px;letter-spacing:.015em}.page-title p:not(.eyebrow){font-size:13px;margin-top:6px;line-height:1.65}.eyebrow{font-size:10px}.period-badge{background:#e5edf2;border-color:#dce5eb;border-radius:5px;font-size:12px}.button,select{font-size:13px;border-radius:5px;border-color:#d6e1e8;padding:7px 10px}select{min-width:130px}.toolbar{background:white;padding:13px 16px;border:1px solid var(--line);border-radius:7px;gap:16px;margin-bottom:10px;align-items:center}.toolbar label{font-size:12px;flex-direction:row;align-items:center;gap:8px}.coverage{font-size:12px;margin-bottom:16px}.scope-heading{font-size:13px;font-weight:650;margin:18px 0 10px;color:var(--ink)}
#dailyMetrics,#financeMetrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:7px;background:white;overflow:hidden;margin-bottom:20px}#dailyMetrics .metric,#financeMetrics .metric{border:0;border-radius:0;border-right:1px solid var(--line);min-height:0;padding:16px 18px;background:transparent}#dailyMetrics .metric:last-child,#financeMetrics .metric:last-child{border-right:0}#dailyMetrics .metric-label,#financeMetrics .metric-label{font-size:13px;font-weight:500;line-height:1.5;color:var(--muted)}#dailyMetrics .metric-value,#financeMetrics .metric-value{font-size:30px;margin-top:7px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}#dailyMetrics .metric-value small,#financeMetrics .metric-value small{font-size:13px}#dailyMetrics .metric-note,#financeMetrics .metric-note{font-size:11px;line-height:1.6;margin-top:5px}
.panel{padding:18px;border-radius:10px;border-color:var(--line);margin-bottom:18px;box-shadow:none;min-width:0}.panel-heading{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.panel-heading h2,#finance .panel-heading h2{font-size:17px;line-height:1.5}.panel-heading p,#finance .panel-heading p,#finance .unit{font-size:12px;line-height:1.6;margin-top:4px}.unit{font-size:11px}.footnote{font-size:11px;line-height:1.75;margin-top:12px}.tag{font-size:10px}table,.table-link{font-size:13px}th{font-size:12px;padding:10px 12px;background:#f5f8fa}td{padding:11px 12px;border-color:#eaf0f3}tbody tr:nth-child(even){background:#fafcfd}tbody tr:hover{background:#eef4f7}tbody tr.selected-store{background:#fdf1e6}tfoot{background:#f0f6f7}th small,.source-ref{font-size:10px}.table-link{color:var(--hot)}.table-scroll{max-width:100%}#storeTable{min-width:720px}[id="storeTable"] tbody tr{background-color:#fff}#storeTable th:first-child,#storeTable td:first-child{position:sticky;left:0;background-color:inherit;z-index:1}#storeTable tr.selected-store td:first-child{background:#fdf1e6;box-shadow:inset 3px 0 var(--hot)}#storeTable td.input-status{font-size:12px}.table-mode{display:flex;gap:3px;background:#f1f5f7;border-radius:5px;padding:3px;margin-left:auto}.table-mode button{background:none;color:var(--muted);border:0;padding:6px 10px;font-size:12px;border-radius:4px;white-space:nowrap}.table-mode button[aria-pressed=true]{background:white;color:var(--hot);box-shadow:0 1px 3px #15304316;font-weight:600}.table-top-scroll{height:13px;position:static;border:0;background:#edf3f6}.table-top-scroll::-webkit-scrollbar{height:12px}
#selectedStoreSection{border-left:3px solid var(--hot);padding-left:16px;margin:24px 0}#selectedStoreSection>.scope-heading{font-size:17px;margin-bottom:10px}#daily #selectedStoreSection .insight-heading{margin:0 0 10px;justify-content:flex-end}#selectedStoreSection .insight-heading h2{display:none}#selectedStoreSection .insight-heading select{font-size:13px;padding:6px 9px}.selected-overview{display:flex;flex-direction:column;gap:14px}.selected-overview>.panel{margin:0 0 14px}.selected-overview #insightMetrics{margin:0 0 14px}#daily .selected-overview .insight-chart svg{height:175px;min-width:0;width:100%}#detailPanel{scroll-margin-top:15px}#detailPanel .panel-heading h2{font-size:17px}#detailPanel .sw-charts{gap:12px}#detailPanel .sw-card h3{font-size:13px}.detail-controls,.excel-controls{gap:12px}.detail-controls label,.excel-controls label{font-size:12px}.detail-tabs button{font-size:13px;padding:8px 11px}
.analysis-disclosure{margin:18px 0;border:1px solid var(--line);border-radius:7px;background:#fff;padding:0 16px}.analysis-disclosure>summary{cursor:pointer;font-size:13px;font-weight:600;padding:14px 0;color:var(--ink)}.analysis-disclosure>summary:focus-visible{outline:3px solid var(--sub)}.analysis-disclosure[open]>summary{border-bottom:1px solid var(--line);margin-bottom:14px}.analysis-disclosure .panel{box-shadow:none}.group-description{font-size:12px;line-height:1.7;color:var(--muted);margin:0 0 14px}.analysis-disclosure .chart-grid{grid-template-columns:1fr 1fr;gap:14px}.analysis-disclosure .ranking{max-height:260px}.analysis-disclosure .panel-heading h2{font-size:16px}.analysis-disclosure>.panel{margin-bottom:14px}.analysis-disclosure .insight-bar-row{font-size:12px}
#finance .finance-grid{display:block}#finance .finance-grid>div{display:grid;grid-template-columns:1fr 1fr;gap:14px}#finance .finance-grid>div>.panel:last-child{grid-column:1/-1}#finance table:not(.excel-table){font-size:13px;line-height:1.6}#finance #statementPanel th,#finance #statementPanel td{font-size:14px;padding:11px 14px;line-height:1.6}#finance #statementPanel th{font-size:12px}#finance #storeMix th,#finance #storeMix td{font-size:12px;padding:9px 11px;line-height:1.5}#storeMix .panel-heading{display:flex;flex-wrap:wrap;align-items:flex-start}#storeMix .statement-tools{flex-wrap:wrap;gap:10px}#storeMix .statement-tools label{font-size:12px}#storeMix .statement-tools select{font-size:12px;padding:6px 9px}.notice{font-size:12px;padding:12px 16px;border-radius:6px}.warning-item,.reconcile-row,.period-row,.method{font-size:12px}.period-row{grid-template-columns:100px 145px 1fr}footer{font-size:10px}.original-status{font-size:12px}
@media(min-width:1700px){main{padding:0 44px}.panel{padding:20px}}
@media(max-width:1150px){.sidebar{width:208px;padding-left:12px;padding-right:12px}.nav{font-size:13px;gap:8px}.brand{font-size:12px}main{margin-left:208px;width:calc(100% - 208px);padding:0 20px}#dailyMetrics .metric,#financeMetrics .metric{padding:14px 12px}#dailyMetrics .metric-value,#financeMetrics .metric-value{font-size:25px}.selected-overview{grid-template-columns:1fr}.selected-overview #insightMetrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.selected-overview #insightMetrics .metric{border-bottom:0;border-right:1px solid var(--line)}}
@media(max-width:760px){.sidebar,.sidebar.collapsed{position:relative;width:100%;padding:16px 14px 10px}.sidebar.collapsed .hide-collapsed{display:initial}.sidebar.collapsed .side-label,.sidebar.collapsed .side-footer{display:none}.sidebar.collapsed .nav{justify-content:flex-start;padding:10px 12px;gap:8px}.brand small{display:block}.sidebar.collapsed .brand{justify-content:flex-start}nav{overflow-x:auto;gap:5px;margin-top:12px;padding-bottom:5px}.nav{flex:0 0 auto;width:auto;justify-content:flex-start;font-size:12px;padding:10px 12px;margin:0;min-height:40px}.nav span[aria-hidden]{font-size:15px}.sidebar-toggle{display:none}main,body.sidebar-collapsed main{margin:0;width:100%;padding:0 14px}.topbar{min-height:56px;height:auto;padding:10px 0}.top-actions{flex-wrap:wrap}.topbar #syncStatus{font-size:10px}.button,select{font-size:12px}.page-title{margin:18px 0 16px}.page-title h1{font-size:24px}.page-title p:not(.eyebrow){font-size:12px}.toolbar{padding:12px;gap:10px}.toolbar label{flex-direction:column;align-items:stretch;min-width:120px;gap:4px}.coverage{font-size:11px}#dailyMetrics,#financeMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}#dailyMetrics .metric,#financeMetrics .metric{padding:14px;border-bottom:1px solid var(--line)}#dailyMetrics .metric-value,#financeMetrics .metric-value{font-size:26px}#dailyMetrics .metric-label,#financeMetrics .metric-label{font-size:12px}.panel{padding:14px}.panel-heading{gap:10px}.table-mode{margin-left:0;max-width:100%;overflow:auto}.panel-heading h2,#finance .panel-heading h2{font-size:16px}#selectedStoreSection{padding-left:10px}.selected-overview #insightMetrics{grid-template-columns:1fr}.selected-overview #insightMetrics .metric{border:0;border-bottom:1px solid var(--line)}.selected-overview .metric-value{font-size:25px}.analysis-disclosure{padding:0 12px}.analysis-disclosure .chart-grid{grid-template-columns:1fr}#finance .finance-grid>div{display:block}.period-row{grid-template-columns:85px 1fr}.period-row p{grid-column:1/-1}.statement-tools{max-width:100%}footer{gap:15px;flex-wrap:wrap}#detailPanel .detail-controls,#detailPanel .excel-controls{flex-wrap:wrap}}
@media print{.sidebar,.topbar,.table-mode,.toolbar .button,.sidebar-toggle{display:none!important}main,body.sidebar-collapsed main{margin:0;width:100%;padding:0}.analysis-disclosure:not([open]){display:none}.selected-overview{display:block}#dailyMetrics,#financeMetrics{grid-template-columns:repeat(4,1fr)}.panel{break-inside:avoid}.table-scroll{overflow:visible}body{background:white}}

/* Compact default: keep the comparison table visible; reveal detail on demand. */
.topbar{height:32px}.page-title{margin:7px 0}.page-title h1{font-size:25px;line-height:1.15}.eyebrow{display:none}.page-title p:not(.eyebrow){margin-top:3px;font-size:12px}.period-badge{padding:4px 10px}.toolbar,#daily .toolbar{padding:8px 12px;gap:12px;margin-bottom:6px}.toolbar label{font-size:11px;gap:6px}.button,select{padding:5px 9px}.coverage,#daily .coverage{margin:4px 0;font-size:11px}.scope-heading{margin:9px 0 6px;font-size:12px}#dailyMetrics,#financeMetrics{margin-bottom:10px}#dailyMetrics .metric,#financeMetrics .metric{padding:9px 13px}#dailyMetrics .metric-label,#financeMetrics .metric-label{font-size:12px}#dailyMetrics .metric-value,#financeMetrics .metric-value{font-size:26px;margin-top:3px}#dailyMetrics .metric-note,#financeMetrics .metric-note{font-size:10px;margin-top:3px}.panel{padding:12px 14px;margin-bottom:10px}.panel-heading{margin-bottom:8px;padding-bottom:7px}.panel-heading h2,#finance .panel-heading h2{font-size:15px}#daily #storeComparison .panel-heading{margin-bottom:6px;padding-bottom:6px}#daily #storeComparison h2{font-size:15px}#daily #storeTable th,#daily #storeTable td{padding:5px 10px;font-size:13px;line-height:1.45}#daily #storeTable th{font-size:11px}#daily #storeTable .input-status{font-size:11px}.table-mode{padding:4px;gap:4px}.table-mode button{padding:9px 15px;font-size:14px}.analysis-disclosure{margin:9px 0;padding:0 12px}.analysis-disclosure>summary{padding:10px 0;font-size:12px}.analysis-disclosure[open]>summary{margin-bottom:8px}.compact-notes{border:0;border-radius:0;border-top:1px solid var(--line);margin:5px 0 0;padding:0;background:transparent}.compact-notes>summary{font-size:11px;font-weight:400;color:var(--muted);padding:6px 0 0}.compact-notes .footnote{margin:5px 0}.compact-notes[open]>summary{border:0;margin:0}
#selectedStoreSection{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:6px;background:#fff;padding:0 12px;margin:10px 0}#selectedScope{display:list-item;cursor:pointer;padding:10px 0;font-size:13px;font-weight:600;margin:0}#selectedScope::after{content:'開閉';float:right;font-size:10px;font-weight:400;color:var(--muted);padding:1px 6px;background:#f0f5f7;border-radius:3px}#selectedStoreSection[open]>summary{border-bottom:1px solid var(--line);margin-bottom:8px}.selected-overview{grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:10px}.selected-overview>.panel,.selected-overview #insightMetrics{margin-bottom:8px}.selected-overview #insightMetrics .metric{padding:8px 12px}.selected-overview .metric-value{font-size:21px}.selected-overview .metric-label{font-size:11px}.selected-overview .metric-note{font-size:10px}#daily #selectedStoreSection #trendChart svg{max-height:200px}#daily #selectedStoreSection .insight-heading{margin:0 0 6px}.notice{padding:9px 12px;margin-bottom:10px}.group-description{margin-bottom:8px;font-size:11px}#finance #statementPanel th,#finance #statementPanel td{padding:7px 11px;font-size:13px}#finance #storeMix td,#finance #storeMix th{padding:5px 9px}.footnote{margin-top:8px}.bottom,footer{padding-top:3px;padding-bottom:12px}
@media(max-width:760px){.topbar{min-height:42px;padding:6px 0}.page-title{margin:12px 0}.page-title h1{font-size:22px}.toolbar label{flex-direction:column;align-items:stretch}.toolbar,#daily .toolbar{padding:9px;gap:8px}#dailyMetrics .metric,#financeMetrics .metric{padding:9px 11px}#dailyMetrics .metric-value,#financeMetrics .metric-value{font-size:24px}.panel{padding:10px}.selected-overview{grid-template-columns:1fr}.selected-overview #insightMetrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.selected-overview #insightMetrics .metric{padding:7px;border:0;border-right:1px solid var(--line)}.selected-overview .metric-value{font-size:19px}.selected-overview .metric-value small{font-size:10px}.selected-overview .metric-note{overflow-wrap:anywhere}.table-mode{max-width:100%}.sidebar,.sidebar.collapsed{padding-top:12px}nav{margin-top:8px}}
