
* { box-sizing: border-box; }
html, body { margin: 0; background: var(--app); color: var(--hi); font-family: var(--font-body);
  font: var(--t-body) var(--font-body); word-break: keep-all; }
body { min-height: 100vh; display: flex; flex-direction: column; }
a { color: var(--info); }
button, select, input { font: inherit; color: inherit; }
select, input[type="search"], input[type="date"] { min-height: var(--btn); background: var(--s2); color: var(--hi);
  border: 1px solid var(--line-strong); border-radius: var(--r-ctrl); padding: 0 var(--sp3); max-width: 100%; }
:focus-visible { outline: 3px solid var(--select); outline-offset: 2px; }
.skip { position: absolute; left: -9999px; }
.skip:focus { left: var(--sp4); top: var(--sp4); background: var(--s2); padding: var(--sp2); z-index: 30; }
.num { font-variant-numeric: tabular-nums; white-space: nowrap; }


h1, .display { font: var(--fw-display) var(--t-h1) var(--font-display); letter-spacing: var(--tr-display); margin: 0 0 var(--sp3); }
h2 { font: 700 20px/28px var(--font-body); margin: 0 0 var(--sp3); }
h3 { font: 700 16px/24px var(--font-body); margin: 0 0 var(--sp2); }
.caption { font: 500 var(--t-caption) var(--font-body); color: var(--low); }
.small { font: 500 var(--t-small) var(--font-body); color: var(--mid); }

.appbar { display: flex; align-items: center; gap: var(--sp6); padding: var(--sp3) var(--gutter);
  border-bottom: 1px solid var(--line); background: var(--app); position: sticky; top: 0; z-index: var(--z-overlay); }
.brand { display: flex; flex-direction: column; line-height: 1.1; }
.brand .product { font: var(--fw-display) 20px/24px var(--font-display); letter-spacing: var(--tr-display); }
.menu { display: flex; gap: var(--sp2); }
.menu a { color: var(--mid); text-decoration: none; padding: 0 var(--sp4); height: var(--btn);
  display: inline-flex; align-items: center; border-radius: var(--r-pill); font-weight: 600; }
.menu a[aria-current="page"] { background: var(--s3); color: var(--hi); }
.store { margin-left: auto; color: var(--mid); font-size: 14px; }
.foot { color: var(--low); font-size: 14px; padding: var(--sp3) var(--gutter); border-top: 1px solid var(--line);
  position: relative; z-index: var(--z-panel); background: var(--app); }


.scene { position: relative; flex: 1; isolation: isolate; }
.layer-bg { position: fixed; inset: 0; z-index: var(--z-scene); overflow: hidden; pointer-events: none; }


.layer-char { position: fixed; inset: 0; z-index: var(--z-char); pointer-events: none; overflow: hidden; }
.layer-info { position: relative; z-index: var(--z-panel); padding: var(--sp5) var(--gutter) var(--sp7) var(--gutter);
  width: 100%; max-width: 1760px; margin: 0; }
.layer-info:focus { outline: none; }
.panel, .state { background: var(--glass); backdrop-filter: blur(6px); }


.tabs { display: flex; gap: var(--sp2); flex-wrap: wrap; margin-bottom: var(--sp4); }
.tab, .seg button, .chip, .btn { min-height: var(--btn); padding: 0 var(--sp4); border-radius: var(--r-pill);
  border: 1px solid var(--line-strong); background: var(--s1); cursor: pointer; text-decoration: none; color: var(--hi);
  display: inline-flex; align-items: center; }
.tab[aria-selected="true"], .seg button[aria-pressed="true"] { background: var(--s3); border-color: var(--select); }
.tab[aria-disabled="true"] { color: var(--low); cursor: not-allowed; border-style: dashed; }
.btn[disabled] { opacity: .5; cursor: not-allowed; }
.seg { display: inline-flex; gap: var(--sp1); }
.chips { display: flex; gap: var(--sp2); flex-wrap: wrap; margin-bottom: var(--sp4); }
.chip { min-height: var(--chip); cursor: default; color: var(--mid); white-space: nowrap; }
.btn.primary { background: var(--signal); color: var(--on-signal); border-color: var(--signal); font-weight: 700; }
.panel { border: 1px solid var(--glass-line); border-radius: var(--r-panel); padding: var(--sp5); margin-bottom: var(--sp5); }
.statement { font: var(--fw-display) var(--t-statement) var(--font-display); letter-spacing: var(--tr-display); margin: 0 0 var(--sp4); }
.statement.entry { font: var(--fw-display) var(--t-entry) var(--font-display); color: var(--signal); }
.controls { display: flex; gap: var(--sp4); flex-wrap: wrap; align-items: center; margin-bottom: var(--sp4); }
.keynums, .grade-row { display: flex; gap: var(--sp5); flex-wrap: wrap; margin-top: var(--sp4); }

#dash-goal { margin-bottom: var(--sp4); }
.keynum { display: flex; flex-direction: column; gap: 2px; background: var(--s2); border-radius: var(--r-ctrl); padding: var(--sp3) var(--sp4); }
.keynum .num { font: 700 var(--t-tnum) var(--font-body); font-size: 18px; }
.grade { display: inline-flex; width: 28px; height: 28px; align-items: center; justify-content: center; border-radius: var(--r-tag);
  border: 1px solid var(--signal); color: var(--signal); font-weight: 800; }


.chart { display: grid; grid-template-columns: repeat(var(--n, 6), minmax(0, 1fr)); gap: var(--sp3); height: 260px;
  align-items: end; border-bottom: 1px solid var(--line-strong); padding-top: var(--sp6); }
.chart-dense { gap: 2px; height: 180px; padding-top: var(--sp3); }
.bar { display: flex; flex-direction: column; justify-content: flex-end; align-items: center; height: 100%;
  background: none; border: 0; padding: 0; cursor: pointer; position: relative; color: var(--hi); }
div.bar { cursor: default; }
.bar .fill { width: 100%; max-width: 72px; background: var(--bar); border-radius: var(--r-tag) var(--r-tag) 0 0; min-height: 2px; }
.bar .val { font-weight: 700; margin-bottom: var(--sp1); font-variant-numeric: tabular-nums; white-space: nowrap; }
.bar.is-max .fill { outline: 2px solid var(--signal); outline-offset: 0; }
.bar[aria-pressed="true"] .fill { background: var(--select); }
.bar .tag { position: absolute; top: calc(-1 * var(--sp5)); font-size: 14px; color: var(--signal);
  border: 1px solid var(--signal); border-radius: var(--r-tag); padding: 0 var(--sp1); white-space: nowrap; }
.bar.no-record .fill { background: repeating-linear-gradient(45deg, var(--bar-dim) 0 4px, transparent 4px 8px); height: 24px; }
.chart-dense .bar.no-record .fill { height: 12px; }
.axis { display: grid; grid-template-columns: repeat(var(--n, 6), minmax(0, 1fr)); gap: var(--sp3); margin-top: var(--sp2); }
.axis-sparse { gap: 2px; }
.axis span { text-align: center; font-size: 14px; color: var(--mid); white-space: normal; overflow-wrap: anywhere; line-height: 1.25; }
.axis-sparse span { font-size: 14px; overflow: visible; }
.axis span.sel { color: var(--select); font-weight: 700; }

.pair-bars { display: flex; gap: var(--sp7); align-items: flex-end; height: 300px; padding-top: var(--sp6); flex-wrap: wrap; }
.pair { display: flex; flex-direction: column; align-items: center; gap: var(--sp1); height: 100%; justify-content: flex-end; min-width: 160px; }
.pair-col { height: 180px; width: 96px; display: flex; align-items: flex-end; border-bottom: 1px solid var(--line-strong); }
.pair-col .fill { width: 100%; background: var(--bar); border-radius: var(--r-tag) var(--r-tag) 0 0; }
.pair.is-cmp .pair-col .fill { background: var(--info); }
.pair .val { font-weight: 700; }
.pair-boards { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: var(--sp5); }
.pair-board { background: var(--s1); border-radius: var(--r-ctrl); padding: var(--sp4); }
.cmp-picker { display: flex; gap: var(--sp3); flex-wrap: wrap; align-items: center; margin-bottom: var(--sp4); }

.meta { margin-top: var(--sp4); display: grid; grid-template-columns: max-content 1fr; gap: var(--sp1) var(--sp4); font: 500 var(--t-small) var(--font-body); }
.meta dt { color: var(--low); }
.meta dd { margin: 0; color: var(--mid); }
details.expand { margin-top: var(--sp4); background: var(--s2); border-radius: var(--r-ctrl); padding: var(--sp3) var(--sp4); }
details.expand summary { cursor: pointer; font-weight: 600; min-height: var(--btn); display: flex; align-items: center; }
details.expand dl { margin: var(--sp2) 0 0; display: grid; grid-template-columns: max-content 1fr; gap: var(--sp1) var(--sp4); }
details.expand dd { margin: 0; }

table.dense { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; font-size: var(--t-tnum); }
table.dense th, table.dense td { height: var(--row); padding: 0 var(--sp3); border-bottom: 1px solid var(--line); text-align: left; }
table.dense th { background: var(--s2); color: var(--mid); font-weight: 600; position: sticky; top: 0; }
table.dense td.r, table.dense th.r { text-align: right; }
table.dense tr[aria-selected="true"] td { background: color-mix(in srgb, var(--select) 14%, transparent); }
table.dense tr[aria-selected="true"] td:first-child { box-shadow: inset 3px 0 0 var(--select); }
table.dense tr[tabindex] { cursor: pointer; }
.raw-cell { font-size: 14px; color: var(--mid); word-break: break-all; white-space: normal; }
.table-wrap { overflow-x: auto; max-width: 100%; }
.pager { display: flex; gap: var(--sp3); align-items: center; margin-top: var(--sp3); }


.depth { margin: var(--sp3) 0; }
.depth-bar { display: flex; gap: var(--sp3); align-items: center; flex-wrap: wrap; margin-top: var(--sp4); }
.pane-da { background: var(--s1); border-radius: var(--r-ctrl); padding: var(--sp3); min-width: 0; }
.pane-da-head { display: flex; justify-content: space-between; align-items: center; gap: var(--sp3); }
.fs-close { display: none; }

.depth[data-mode="side"] .depth-track { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp5); }
.depth[data-mode="side"][data-open="1"] .depth-track { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); }
.depth[data-mode="side"][data-open="0"] .pane-da { display: none; }

.depth[data-mode="swipe"] .depth-track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: var(--sp4); scrollbar-width: thin; }
.depth[data-mode="swipe"] .pane { flex: 0 0 100%; scroll-snap-align: start; min-width: 0; }

.depth[data-mode="accordion"][data-open="0"] .pane-da { display: none; }
.depth[data-mode="accordion"] .pane-da { margin-top: var(--sp4); }
.pane-da.fullscreen { position: fixed; inset: 0; z-index: var(--z-overlay); overflow: auto; border-radius: 0; padding: var(--sp4); background: var(--app); }
.pane-da.fullscreen .fs-close { display: inline-flex; }

.depth[data-mode="pages"][data-open="0"] .pane-da { display: none; }
.depth[data-mode="pages"][data-open="1"] .pane-na { display: none; }


.period-bar { display: flex; gap: var(--sp3); align-items: center; flex-wrap: wrap; margin-bottom: var(--sp4);
  background: var(--glass); border: 1px solid var(--glass-line); border-radius: var(--r-panel); padding: var(--sp3) var(--sp4); }
.period-label { font-weight: 700; }
.custom-range { display: inline-flex; gap: var(--sp2); align-items: center; flex-wrap: wrap; }
.custom-range[hidden] { display: none; }

.side { position: fixed; right: 0; top: 0; bottom: 0; width: 380px; max-width: 100%; background: var(--s2);
  border-left: 1px solid var(--line-strong); padding: var(--sp5); overflow: auto; z-index: var(--z-overlay); }
.side[hidden] { display: none; }
.side ol { padding-left: var(--sp5); }
.side .raw { font-size: 14px; color: var(--low); font-variant-numeric: tabular-nums; word-break: break-all; }
.radio-group { border: 1px solid var(--line); border-radius: var(--r-ctrl); margin: 0 0 var(--sp4); padding: var(--sp3); }
.radio-group legend { font-weight: 700; padding: 0 var(--sp1); }
.radio { display: flex; gap: var(--sp2); align-items: center; min-height: var(--btn); cursor: pointer; }
.radio input { width: 20px; height: 20px; accent-color: var(--select); }

.state { border: 1px dashed var(--line-strong); border-radius: var(--r-panel); padding: var(--sp5); color: var(--mid); margin-bottom: var(--sp5); }
.state strong { color: var(--hi); display: block; margin-bottom: var(--sp1); }
.tag-warn { color: var(--warn); background: var(--warn-bg); border-radius: var(--r-tag); padding: 2px var(--sp2); font-size: 14px; }
.tag-synth { color: var(--corr); background: var(--corr-bg); border-radius: var(--r-tag); padding: 2px var(--sp2); font-size: 14px; }
.grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp5); }
.grid2 > .panel, .grid2 > .state { margin-bottom: 0; }
.store-wrap > .grid2 { margin-bottom: var(--sp5); }
.kpi .big { font: var(--fw-display) var(--t-figure) var(--font-display); font-variant-numeric: tabular-nums; white-space: nowrap; }
.kpi .big small { font-size: 0.43em; margin-left: 2px; }
.top-list { list-style: none; padding: 0; margin: 0 0 var(--sp4); display: grid; gap: var(--sp2); }
.top-list li { display: grid; grid-template-columns: 32px 1fr auto auto; gap: var(--sp3); align-items: center; }
.refs { margin-top: var(--sp5); }



@media (max-width: 1279px) {
  .appbar { flex-wrap: wrap; gap: var(--sp3); }
  .store-name { display: none; }
}

@media (max-width: 767px) {
  html { scroll-padding-bottom: 96px; scroll-padding-top: 120px; }
  .appbar { gap: var(--sp3); flex-wrap: wrap; }
  .menu { position: fixed; bottom: 0; left: 0; right: 0; background: var(--s1); border-top: 1px solid var(--line);
    justify-content: space-around; padding: var(--sp1) 0; z-index: var(--z-overlay); }
  .menu a { padding: 0 var(--sp2); font-size: 14px; }
  .store { display: flex; margin-left: auto; }
  .store-name { display: none; }
  .settings-btn { margin-left: 0; }
  .layer-info { padding: var(--sp4) var(--gutter) 112px; }
  .foot { padding-bottom: 80px; }
  .chart { gap: var(--sp1); height: 220px; }
  .axis { gap: var(--sp1); }
  .axis span { font-size: 14px; }
  .bar .val { font-size: 14px; }
  .bar .tag { font-size: 14px; }
  .grid2 { grid-template-columns: 1fr; }
  .pair-bars { gap: var(--sp4); }
  .pair { min-width: 120px; }
  .side { z-index: 20; padding-bottom: 96px; width: 100%; top: auto; height: 80vh; border-left: 0; border-top: 1px solid var(--line-strong); border-radius: var(--r-panel) var(--r-panel) 0 0; }
  .top-list li { grid-template-columns: 28px 1fr auto; }
  .top-list li .caption { display: none; }
}

:root[data-device="pos"] .menu { position: static; background: none; border: 0; }
:root[data-device="pos"] .menu a { height: var(--btn); padding: 0 var(--sp5); font-size: 18px; }
:root[data-device="pos"] .bar .val { font-size: 18px; }
:root[data-device="pos"] .bar .tag { font-size: 14px; }
:root[data-device="pos"] .grid2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
:root[data-device="pos"] .store { display: block; }
:root[data-device="pos"] .appbar { flex-wrap: wrap; gap: var(--sp3); }
@media (max-width: 1199px) { :root[data-device="pos"] .store-name { display: none; } :root[data-device="pos"] .menu a { padding: 0 var(--sp3); } }
@media (prefers-reduced-motion: reduce) { .depth-track { scroll-behavior: auto; } }


.octagon-frame { fill: none; stroke: var(--line-strong); stroke-width: 1.5; stroke-dasharray: 5 4; }
.octagon-spoke { stroke: var(--line-strong); stroke-width: 1; opacity: .6; }
.octagon-svg { width: min(100%, 320px); height: auto; display: block; margin: 0 auto; }
.mkt-day-line { margin: var(--sp2) 0; }
.btn[aria-current="step"] { background: var(--s3); border-color: var(--select); }
#mkt-summary .keynum { min-width: 150px; }


.store { display: flex; gap: var(--sp2); align-items: center; }
.demo-badge { border: 1.5px solid var(--warn); color: var(--warn); border-radius: var(--r-pill); padding: 2px var(--sp3); font-size: 14px; font-weight: 700; white-space: nowrap; }
.real-badge { border: 1.5px solid var(--info); color: var(--info); border-radius: var(--r-pill); padding: 2px var(--sp3); font-size: 14px; white-space: nowrap; }
.rec-list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sp2); }
.rec-list li { display: flex; justify-content: space-between; gap: var(--sp3); align-items: center; background: var(--s2); border-radius: var(--r-ctrl); padding: var(--sp2) var(--sp3); }
.inf-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--sp5); }
.inf-card { position: relative; }
.inf-head { display: flex; gap: var(--sp3); align-items: center; margin-bottom: var(--sp3); }
.initials { width: 48px; height: 48px; border-radius: 50%; background: var(--s3); border: 1px solid var(--line-strong); display: inline-flex; align-items: center; justify-content: center; font-weight: 800; }
.octagon-svg text { font: 600 21px var(--font-body); fill: var(--mid); }
.octagon-half { stroke: var(--line-strong); stroke-width: 1.5; }
.octagon-example { fill: color-mix(in srgb, var(--info) 18%, transparent); stroke: var(--info); stroke-width: 2; stroke-dasharray: 6 4; }
.octagon-svg { width: min(100%, 300px); }
.bar.is-sel .fill { background: var(--select); }


.layer-bg, .layer-char { transition: filter 280ms ease-out, opacity 280ms ease-out; }
.scene[data-depth="detail"] .layer-bg { filter: blur(var(--scene-blur-detail)) brightness(var(--scene-dim-detail)); }
.scene[data-depth="dense"] .layer-bg { filter: blur(var(--scene-blur-dense)) brightness(var(--scene-dim-dense)); }
.panel { backdrop-filter: blur(var(--glass-blur)); box-shadow: 0 8px 24px rgb(0 0 0 / 0.25); }
:root[data-device="pos"] .panel { background: var(--s1); backdrop-filter: none; }




:root { --appbar-h: 72px; }


.react { display: flex; align-items: center; gap: var(--sp3); margin: 0 0 var(--sp3); }
.react .face { width: 56px; height: 56px; border-radius: 50%; overflow: hidden; flex: none; background: var(--s3); border: 2px solid var(--glass-line); }
.react .face img { width: 100%; height: 100%; display: block; }
.react .react-text { font-weight: 600; color: var(--hi); }
@media (max-width: 767px) { .react .face { width: 48px; height: 48px; } }


.cond { margin-bottom: var(--sp4); }
.cond-line { display: flex; align-items: center; gap: var(--sp3); flex-wrap: wrap; background: var(--glass); border: 1px solid var(--glass-line);
  border-radius: var(--r-panel); padding: var(--sp2) var(--sp2) var(--sp2) var(--sp4); }
.cond-sum { flex: 1 1 auto; min-width: 0; font-weight: 600; display: flex; gap: var(--sp2); align-items: center; flex-wrap: wrap; }
.cond-drawer { margin-top: var(--sp2); background: var(--glass); border: 1px solid var(--glass-line); border-radius: var(--r-panel); padding: var(--sp3) var(--sp4); }
.cond-drawer[hidden] { display: none; }
.cond-drawer .period-bar { background: none; border: 0; padding: 0; margin: 0; }
.page-head .subnav { margin-bottom: var(--sp2); }
.subnav .tabs { margin-bottom: var(--sp2); }
@media (max-width: 767px) {
  .subnav .tabs { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
  .subnav .tab { white-space: nowrap; flex: none; }
  .page-head h1 { margin-bottom: var(--sp2); }
  .menu a { min-height: 56px; }
}

.subnav-dock { position: fixed; left: 0; right: 0; bottom: 0; z-index: var(--z-overlay); background: var(--s1);
  border-top: 1px solid var(--line-strong); padding: var(--sp2) var(--gutter); }
.subnav-dock .tabs { margin: 0; flex-wrap: nowrap; overflow-x: auto; gap: var(--sp2); }
.subnav-dock .tab { flex: 1 1 0; justify-content: center; white-space: nowrap; font-weight: 700; min-height: 64px; }
:root[data-device="pos"] .layer-info { padding-bottom: 120px; }
:root[data-device="pos"] .foot { padding-bottom: 96px; }


.source-line { font: 500 var(--t-caption) var(--font-body); color: var(--mid); margin: var(--sp3) 0 0; }
.pos-only { display: none; }
:root[data-device="pos"] .pos-only { display: inline; }


.chart-tags { display: flex; gap: var(--sp2); flex-wrap: wrap; margin: var(--sp2) 0 0; }
.ctag { font-size: 14px; font-weight: 700; border-radius: var(--r-tag); padding: 2px var(--sp2); border: 1.5px solid var(--signal); color: var(--signal); }
.ctag.sel { border-color: var(--select); color: var(--select); }


.table-wrap[data-raw="0"] .raw-col { display: none; }
.raw-col, .raw-col .raw-cell { white-space: nowrap; word-break: normal; }
.raw-bar { display: flex; gap: var(--sp3); align-items: center; flex-wrap: wrap; margin-bottom: var(--sp2); }
.raw-toggle[aria-pressed="true"] { border-color: var(--select); background: var(--s3); }


.octagon-svg { width: min(100%, 420px); }
.octagon-frame.inner { opacity: .5; }
.octagon-spoke.account, .oct-axis.account, .oct-half.account { stroke: var(--info); }
.octagon-spoke.fit { stroke: var(--signal); }
.octagon-svg text.oct-axis.account, .octagon-svg text.oct-half.account { fill: var(--info); stroke: none; }
.octagon-svg text.oct-axis.fit, .octagon-svg text.oct-half.fit { fill: var(--signal); stroke: none; }
.octagon-svg text.oct-half { font-weight: 800; }
.octagon-half { stroke: var(--hi); stroke-width: 2; }
.octagon-example.account { fill: color-mix(in srgb, var(--info) 22%, transparent); stroke: var(--info); stroke-dasharray: none; }
.octagon-example.fit { fill: color-mix(in srgb, var(--signal) 22%, transparent); stroke: var(--signal); stroke-dasharray: none; }
.oct-legend { display: flex; gap: var(--sp3); flex-wrap: wrap; margin: 0 0 var(--sp2); }
.oct-legend .lg { font-weight: 700; padding: 2px var(--sp3); border-radius: var(--r-pill); border: 1.5px solid; }
.oct-legend .lg.account { color: var(--info); }
.oct-legend .lg.fit { color: var(--signal); }
.inf-card.is-cmp { border-color: var(--select); }
#inf-compare-table th[scope="row"] { color: var(--mid); font-weight: 600; text-align: left; white-space: nowrap; }

.grid2 > #dash-sales { grid-column: 1 / -1; }
:root[data-device="pos"] .chart { height: 200px; }
@media (max-width: 767px) {
  .cond-line { flex-wrap: nowrap; }
  .cond-sum { font-size: 15px; }
  .cond-line .btn { flex: none; }
}

.grid2 > #store-kpi { grid-column: 1 / -1; }
.kpi .big { font-size: clamp(40px, 7vw, 64px); }
:root[data-device="pos"] .kpi .big { font-size: clamp(44px, 5.5vw, 64px); }
.bar.no-record .val { white-space: normal; text-align: center; line-height: 1.2; font-weight: 600; color: var(--mid); }
.chart .bar .val { font-size: clamp(14px, 1.6vw, 17px); }
.asof { border: 1.5px solid var(--line-strong); color: var(--mid); border-radius: var(--r-pill); padding: 2px var(--sp3); font-size: 14px; white-space: nowrap; }
@media (max-width: 767px) { .asof { display: none; } }
.store-wrap > .grid2 { grid-template-columns: minmax(0, 1fr); }


.layer-bg, .layer-char { top: var(--appbar-h); }
.bg-plate, .bg-front, .char { position: absolute; max-width: none; display: block; }
.bg-plate[hidden], .bg-front[hidden] { display: none; }
.bg-dim { position: absolute; top: 0; bottom: 0; right: 0; left: calc(var(--panel-x, 0px) - 48px);
  background: linear-gradient(90deg, transparent, rgb(0 0 0 / .22) 48px); }
.scene[data-plate="narrow"] .bg-dim { left: 0; top: calc(var(--panel-y, 0px) - 48px);
  background: linear-gradient(180deg, transparent, rgb(0 0 0 / .22) 48px); }
.char img { display: block; width: 100%; height: 100%; }

.char-fade { position: absolute; left: 0; width: 100vw; pointer-events: none; } 
.scene[data-plate="narrow"]:has(#char-fade) .bg-dim { display: none; }
.char.fx img { filter: drop-shadow(-2px -1px 2px color-mix(in srgb, var(--scene-glow) 55%, transparent)); }
.scene:not([data-depth="entry"]) .layer-char, .scene:not([data-bg-ready]) .layer-char { opacity: 0; }
.scene[data-depth="entry"][data-plate="wide"] .layer-info { padding-left: max(var(--gutter), var(--panel-x, 0px)); }

.scene[data-plate] .layer-info { transition: padding 280ms ease-out; }
.scene[data-depth="entry"][data-plate="narrow"] .layer-info { padding-top: max(var(--sp4), var(--panel-y, 0px)); }

.scene .panel, .scene .state, .scene .cond-line, .scene .cond-drawer { background: color-mix(in srgb, var(--s1) 96%, transparent); }

@media (max-width: 767px) {
  .page-head h1 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  #dash-sales { order: -1; }
  #main .controls:has(> .seg) { flex-wrap: nowrap; gap: var(--sp2); overflow-x: auto; scrollbar-width: none; } 
  .controls .seg button { padding: 0 var(--sp3); white-space: nowrap; }
  .chart { height: 120px; } 
  .statement.entry { font-size: 26px; line-height: 34px; }
}

.notice-strip { background: color-mix(in srgb, var(--s1) 96%, transparent); border: 1px solid var(--glass-line);
  border-radius: var(--r-ctrl); padding: var(--sp2) var(--sp4); color: var(--mid); }

.chip { white-space: normal; overflow-wrap: anywhere; max-width: 100%; height: auto; }
.axis-sparse span { white-space: nowrap; overflow-wrap: normal; } 
.scene[data-plate="narrow"] .page-head h1 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.table-wrap { max-width: 100%; overflow-x: auto; }

@media (max-width: 767px) {
  #mkt-compare-table td { white-space: nowrap; } 
}

.status-tag { display: inline-block; font-size: 14px; font-weight: 700; color: var(--mid); background: var(--s2);
  border-radius: var(--r-tag); padding: 2px var(--sp2); margin-left: var(--sp1); white-space: nowrap; }
.item-detail summary { min-height: var(--btn); display: inline-flex; align-items: center; cursor: pointer; color: var(--info); font-weight: 600; }
.item-detail p { margin: 0 0 var(--sp2); }
#ops-close .controls { flex-wrap: wrap; overflow: visible; }
#ops-close .controls .btn, #ops-close .seg button { white-space: nowrap; }
#ops-close .seg { flex-wrap: wrap; }

summary.btn-primary { display: inline-flex; align-items: center; min-height: var(--btn); padding: 0 var(--sp5); border-radius: var(--r-pill);
  background: var(--signal); color: var(--on-signal); font-weight: 800; cursor: pointer; }
.compare-pair { margin: var(--sp3) 0; }
#target-denominator { font-size: 16px; font-weight: 600; color: var(--hi); }
#dash-actions .rec-list a { display: inline-flex; align-items: center; min-height: var(--btn); font-weight: 700; }
#hours-pop a { display: inline-flex; align-items: center; min-height: var(--btn); font-weight: 700; }

.blocker-line { display: block; }
.panel, .state, .mkt-perf, .grid2 > * { min-width: 0; } 

.axis-sparse span:first-child { text-align: left; }
.axis-sparse span:last-child { text-align: right; direction: rtl; }
.chart-wrap { min-width: 0; }



.scene[data-plate="narrow"] #main > .page-head, .scene[data-plate="narrow"] #main > .cond {
  background: color-mix(in srgb, var(--s1) 96%, transparent); margin: 0; padding: var(--sp3) var(--sp3) var(--sp2); }
.scene[data-plate="narrow"] #main > .page-head { border-radius: var(--r-panel) var(--r-panel) 0 0; }
.scene[data-plate="narrow"] #main > .page-head + .cond { padding-top: 0; }
.scene[data-plate="narrow"] #main > .page-head + :not(.cond), .scene[data-plate="narrow"] #main > .cond + * { margin-top: 0; border-top-left-radius: 0; border-top-right-radius: 0; }
.scene[data-plate="narrow"] #main > .page-head .subnav, .scene[data-plate="narrow"] #main > .page-head .tabs { margin-bottom: 0; }

@media (max-width: 767px) { #ops-source, #ops-synth { display: none; } }

.month-chart .bar.is-partial .fill { background: repeating-linear-gradient(135deg, var(--bar) 0 6px, var(--bar-dim) 6px 12px); outline: 2px solid var(--signal); }

.cond-sum .nowrap { white-space: nowrap; }

@media (min-width: 768px) and (max-width: 1199px) {
  :root:not([data-device="pos"]) .settings-btn { position: relative; width: var(--btn); min-width: var(--btn); padding: 0; overflow: hidden; white-space: nowrap; text-indent: 200px; }
  :root:not([data-device="pos"]) .settings-btn::before { content: "⚙" / ""; position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; text-indent: 0; font-size: 22px; }
  :root:not([data-device="pos"]) .appbar { flex-wrap: nowrap; gap: var(--sp3); }
}

#dash-proposal { container-type: inline-size; }
@container (max-width: 1099px) { .compare-pair { grid-template-columns: minmax(0, 1fr); } }

.pair-board .chart { height: 180px; }

.bg-dim { right: auto; width: 48px; background: linear-gradient(90deg, transparent, rgb(0 0 0 / .22)); }
.scene[data-plate="narrow"] .bg-dim { right: 0; width: auto; bottom: auto; height: 48px; }

:root[data-device="pos"] .item-detail summary { min-height: var(--btn); } 


.scene:not([data-plate="narrow"]) #dash-sentence { display: none; }

.scene[data-plate="narrow"] #hours-panel:not([data-deep]) { display: flex; flex-direction: column; }
.scene[data-plate="narrow"] #hours-panel:not([data-deep]) > * { order: 3; }
.scene[data-plate="narrow"] #hours-panel:not([data-deep]) > #face-react, .scene[data-plate="narrow"] #hours-panel:not([data-deep]) > h2, .scene[data-plate="narrow"] #hours-panel:not([data-deep]) > #statement, .scene[data-plate="narrow"] #hours-panel:not([data-deep]) > #notice { order: 0; } 
.scene[data-plate="narrow"] #hours-panel:not([data-deep]) > #hours { order: 1; }
.scene[data-plate="narrow"] #hours-panel:not([data-deep]) > .controls:not(:has(#btn-source)) { order: 2; }


.menu .m-short { display: none; }
@media (max-width: 767px) { :root.short-menu .menu .m-long { display: none; } :root.short-menu .menu .m-short { display: inline; } }

@media (min-width: 768px) and (max-width: 1199px) { :root:not([data-device="pos"]) .appbar .asof, :root:not([data-device="pos"]) .appbar .store-name { display: none; } }
.cond-sum { min-width: 0; } .cond-sum .nowrap { display: inline-block; }


.inf-av { --av: 64px; position: relative; flex: none; width: var(--av); height: var(--av); border-radius: 50%; background: var(--s3);
  display: inline-flex; align-items: center; justify-content: center; box-shadow: 0 0 0 2px var(--s1), 0 0 0 4px var(--line-strong); }
.inf-av img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; object-position: center; display: block; }
.inf-av .av-letter { color: var(--select); font-weight: 800; font-size: calc(var(--av) * .4); line-height: 1; }
.inf-av.is-picked { box-shadow: 0 0 0 2px var(--s1), 0 0 0 5px var(--select); }
.inf-av .av-check { position: absolute; right: -2px; bottom: -2px; width: 20px; height: 20px; border-radius: 50%; background: var(--select);
  color: var(--on-select); font-size: 13px; font-weight: 900; display: flex; align-items: center; justify-content: center; }
.av-head { --av: 72px; } .av-row { --av: 32px; }
.inf-card .inf-head { display: flex; align-items: center; gap: 12px; }
.inf-card .inf-head h3 { font-size: 17px; font-weight: 700; margin: 0; }
.inf-card .inf-head .caption { font-size: 14px; }
th.inf-th { text-align: center; vertical-align: top; }
th.inf-th .inf-av { display: flex; margin: 4px auto 8px; }
.inf-th-name { display: block; max-width: 12em; margin: 0 auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 767px) {
  .inf-av { --av: 52px; } .av-head { --av: 56px; } .av-row { --av: 28px; }
  .inf-card .inf-head { gap: 10px; }
  .inf-av .av-check { width: 18px; height: 18px; font-size: 12px; }
}
.inf-av .av-check::after { content: ""; width: 5px; height: 9px; margin-top: -2px; border: solid var(--on-select); border-width: 0 2px 2px 0; transform: rotate(45deg); } 



.scrim { position: fixed; inset: 0; background: rgb(0 0 0 / .5); z-index: 19; }
.side { z-index: 20; background: var(--s1); }
.side-head { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: var(--sp3);
  background: var(--s1); padding: var(--sp2) 0; margin: 0 0 var(--sp2); border-bottom: 1px solid var(--line); }
.side-head h2 { margin: 0; }
.side .raw { word-break: keep-all; }
@media (max-width: 767px) { .side { background: var(--s1); } }

@media (max-width: 767px) { .scene .layer-info { padding-bottom: calc(112px + 64px); } }

@media (max-width: 767px) { .subnav .tab { padding: 0 var(--sp3); } }

@media (max-width: 767px) { #ops-today .keynums { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp2); } }

#inf-compare, #inf-compare-table { scroll-margin-top: calc(var(--appbar-h) + 12px); }
#inf-compare-table td { white-space: normal; overflow-wrap: anywhere; min-width: 8em; }

#inf-search { flex-wrap: wrap; }
#inf-search input[type="search"] { min-width: 14em; flex: 1 1 14em; }

@media (max-width: 767px) { .cond-actions { position: sticky; bottom: 72px; z-index: 2; background: var(--s1); padding: var(--sp2) 0; } }

.btn.btn-primary { background: var(--signal); color: var(--on-signal); border-color: var(--signal); font-weight: 800; }
.cond-drawer .chips .chip { border: 0; background: none; padding: 0; min-height: auto; color: var(--mid); cursor: default; }

.grid2 > :last-child:nth-child(odd) { grid-column: 1 / -1; }
@media (min-width: 768px) and (max-width: 1199px) { .inf-cards > :last-child:nth-child(odd) { grid-column: 1 / -1; } }

.scene[data-menu="ops"] .tab[aria-selected="true"] { background: var(--select); color: var(--on-select); border-color: var(--select); }

.subnav-dock::before, .menu::before { content: ""; position: absolute; left: 0; right: 0; bottom: 100%; height: 28px; pointer-events: none;
  background: linear-gradient(transparent, var(--s1)); }
:root:not([data-device="pos"]) .menu::before { display: none; }
@media (max-width: 767px) { :root .menu::before { display: block; } }
:root[data-device="pos"] .menu::before { display: none; }
@media (min-width: 768px) { .side { top: var(--appbar-h); } } 



.pane-na.with-brief { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: var(--sp5); align-items: start; }
.depth[data-open="1"] .pane-na.with-brief { display: block; }
.depth[data-open="1"] .pane-na.with-brief .brief-table { display: none; }
.depth[data-mode="pages"][data-open="1"] .pane-na.with-brief { display: none; }
.brief-table .table-wrap { margin: 0; }

.grid2 > #dash-sales:has(#dash-month-table[open]) { grid-column: 1 / -1; }
#dash-month-table .table-wrap { overflow-x: auto; }

.brand { min-width: 0; } .brand #brand-store { word-break: keep-all; }


#inf-menu { flex-wrap: wrap; align-items: center; }
#inf-lists .chips { display: flex; flex-wrap: wrap; gap: var(--sp2); }
#inf-lists .chip { min-height: 48px; }
#inf-lists .chip[aria-pressed="true"] { background: var(--select); color: var(--on-select); border-color: var(--select); }
.inf-card.is-out { opacity: .72; }
.inf-manage { display: grid; gap: var(--sp2); margin-top: var(--sp3); }
.inf-manage textarea { width: 100%; min-height: 72px; font: inherit; font-size: max(14px, 1em); color: var(--high); background: var(--s2); border: 1px solid var(--line); border-radius: 8px; padding: var(--sp2); }
.inf-manage select, #inf-menu select { min-height: 48px; }
:root[data-device="pos"] #inf-lists .chip, :root[data-device="pos"] .inf-manage select, :root[data-device="pos"] #inf-menu select { min-height: 64px; }


.octagon-spoke.is-empty { stroke-dasharray: 4 4; opacity: .35; }
.octagon-svg text.oct-axis-note { fill: var(--mid); stroke: none; }



.nobr { white-space: nowrap; }

table.dense th, table.dense td { white-space: nowrap; }
#inf-compare-table td { white-space: normal; overflow-wrap: normal; word-break: keep-all; min-width: 10em; }
.table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }

.depth[data-mode="swipe"] .depth-track { align-items: flex-start; overflow-y: hidden; }

:root[data-device="pos"] .pane-na.with-brief { grid-template-columns: minmax(0, 62fr) minmax(0, 38fr); gap: var(--sp4); }
:root[data-device="pos"] .with-brief .chart { gap: var(--sp1); }
:root[data-device="pos"] .with-brief .bar .val { font-size: 15px; }
:root[data-device="pos"] .with-brief .bar.no-record .val { font-size: 14px; }
.pager .btn { white-space: nowrap; }

.pair-bars { flex-wrap: nowrap; height: auto; justify-content: flex-start; }
.pair { min-width: 0; flex: 0 1 200px; height: auto; }
.pair .val { white-space: nowrap; }
@media (max-width: 767px) { .pair { flex: 1 1 0; } .pair .val { font-size: 14px; } .pair-col { width: 72px; } }

.btn[hidden], .chip[hidden], .tab[hidden] { display: none; }

.scene[data-menu="ops"] #main > .grid2 { margin-bottom: var(--sp5); }
#ops-rules { background: color-mix(in srgb, var(--s1) 96%, transparent); border: 1px solid var(--glass-line); border-radius: var(--r-ctrl);
  padding: var(--sp3) var(--sp4) var(--sp3) calc(var(--sp4) + 18px); margin: 0 0 var(--sp4); color: var(--mid); }

@media (max-width: 767px) { .side { bottom: 66px; top: 18vh; height: auto; padding-bottom: var(--sp5); } }

.cond-drawer label { display: block; margin: var(--sp2) 0 var(--sp1); }
.cond-drawer select { width: min(100%, 480px); }
.cond-drawer .cond-actions { margin-top: var(--sp3); }

.ops-title-row { display: flex; align-items: center; justify-content: space-between; gap: var(--sp4); flex-wrap: wrap; }
.ops-title-row h1 { margin: 0; }
.ops-role-chips { margin: 0; }
.ops-role-chips .tab { min-height: 56px; }
:root[data-device="pos"] .ops-role-chips .tab { min-height: var(--btn); } 

@media (min-width: 768px) and (max-width: 1199px) and (orientation: portrait) {
  :root:not([data-device="pos"]) #brand-store { display: flex; flex-direction: column; line-height: 1.15; }
  :root:not([data-device="pos"]) #brand-store .b-sep { display: none; }
  :root:not([data-device="pos"]) #brand-store .b-month { font: 500 14px/18px var(--font-body); color: var(--mid); letter-spacing: 0; }
}
#brand-store .b-name, #brand-store .b-month { white-space: nowrap; }

.inf-pick { margin: var(--sp1) 0 0; }
.inf-pick .chip { cursor: pointer; color: var(--hi); min-height: 48px; }
.inf-pick .chip[aria-pressed="true"] { background: var(--select); color: var(--on-select); border-color: var(--select); }
:root[data-device="pos"] .inf-pick .chip { min-height: var(--btn); } 
.inf-card.is-out { opacity: 1; }
.inf-out-tag { vertical-align: middle; }
.inf-btn-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp2); margin: var(--sp3) 0 0; }
.inf-btn-row .btn { justify-content: center; white-space: nowrap; }

#main .panel, #main .state, #main .inf-card, #main .depth { scroll-margin-top: calc(var(--appbar-h) + 12px); }
.ops-head-chips { margin-bottom: var(--sp2); } 
.ops-head-chips .ops-title-row { margin-bottom: var(--sp2); }


.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.panel.deep { padding: 22px; }
.scene[data-plate="wide"] .layer-info:has(> .panel.deep) { padding-left: max(var(--gutter), 4vw); padding-right: max(var(--gutter), 4vw); }
.deep-crumb { display: flex; align-items: center; gap: var(--sp2); font-size: 15px; color: var(--mid); margin: -4px 0 var(--sp3); white-space: nowrap; flex-wrap: wrap; }
.deep-back { min-width: 48px; min-height: 48px; display: inline-flex; align-items: center; justify-content: center; border-radius: var(--r-ctrl);
  border: 1px solid var(--line-strong); color: var(--hi); font-weight: 800; padding: 0 var(--sp3); background: var(--s2); text-decoration: none; }
.deep-crumb b { color: var(--hi); }
.deep-face { display: flex; align-items: center; gap: 14px; margin-bottom: 14px; }
.deep-fc { width: 56px; height: 56px; border-radius: 50%; flex: none; overflow: hidden; background: var(--s3); }
.deep-fc img { width: 100%; height: 100%; display: block; border-radius: 50%; }
.deep-say { position: relative; margin: 0; background: var(--s3); border: 1px solid var(--glass-line); border-radius: 12px; padding: 8px 14px; font-size: 16px; font-weight: 700; line-height: 24px; color: var(--hi); }
.deep-say::before { content: ""; position: absolute; left: -7px; top: 50%; margin-top: -6px; border: 6px solid transparent; border-right-color: var(--s3); border-left: 0; }
.deep-who { display: block; font-size: 14px; font-weight: 600; color: var(--low); line-height: 18px; }
.deep-title { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; font-size: 21px; line-height: 30px; margin: 0 0 4px; }
.deep-tag { display: inline-flex; align-items: center; border-radius: var(--r-pill); padding: 2px 10px; font-size: 14px; font-weight: 700; line-height: 22px; white-space: nowrap; }
.deep-tag.sel { background: var(--select); color: var(--on-select); }
.deep-tag.est { border: 1.5px solid var(--line-strong); color: var(--mid); }
.deep-tag.sm { padding: 0 8px; }
.deep .statement { font: var(--fw-display) 30px/40px var(--font-display); color: var(--signal); margin: 2px 0 4px; }
.deep-figure { font: var(--fw-display) 56px/60px var(--font-display); font-variant-numeric: tabular-nums; white-space: nowrap; margin: 0; }
.deep-figure small { font-size: 24px; margin-left: 4px; }
.deep-sub { font-size: 15px; color: var(--mid); margin: 0; }
.deep-cols { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 22px; align-items: start; }
.deep-col { display: flex; flex-direction: column; min-width: 0; }
.deep-chips { display: flex; gap: var(--sp2); flex-wrap: wrap; align-items: center; margin: var(--sp2) 0 6px; }
.deep-chips .chip { cursor: pointer; color: var(--hi); font-weight: 700; }
.deep-chips .chip[aria-pressed="true"] { background: var(--select); color: var(--on-select); border-color: var(--select); }
.deep-chips .seg { border: 1px solid var(--line-strong); border-radius: var(--r-pill); padding: 3px; background: var(--s1); align-items: center; }
.deep-chips .seg > em { font-style: normal; font-size: 14px; color: var(--low); font-weight: 700; padding: 0 8px 0 10px; }
.deep-chips .seg button { border: 0; background: none; }
.deep-chips .seg button[aria-pressed="true"] { background: var(--hi); color: var(--on-select); }
.deep-chart { margin-top: 30px; }
.deep-bars { display: flex; align-items: flex-end; gap: 12px; border-bottom: 2px solid var(--line-strong); padding: 0 4px; height: 300px; }
.deep-bars .bar { flex: 1; position: relative; height: 100%; display: flex; align-items: flex-end; background: none; border: 0; padding: 0; color: var(--hi); cursor: default; }
.deep-bars button.bar { cursor: pointer; }
.deep-bars .bar .b { width: 100%; background: var(--bar); border-radius: 6px 6px 0 0; display: block; }
.deep-bars .bar.is-max .b { outline: 2px solid var(--signal); outline-offset: 2px; }
.deep-bars .bar.is-sel .b { background: var(--select); }
.deep-bars .bar.is-est .b { background: repeating-linear-gradient(135deg, var(--bar) 0 6px, var(--bar-dim) 6px 12px); }
.deep-bars .bar .v { position: absolute; left: 50%; transform: translateX(-50%); font-size: 15px; font-weight: 700; white-space: nowrap; font-variant-numeric: tabular-nums; }
.deep-bars .bar.no-record .v { color: var(--mid); font-weight: 600; font-size: 14px; }
.deep-bars .bar .selmk { position: absolute; left: 50%; transform: translateX(-50%); font-size: 14px; font-weight: 800; line-height: 20px; padding: 0 7px; border-radius: var(--r-pill); background: var(--select); color: var(--on-select); white-space: nowrap; }
.deep-xlab { display: flex; gap: 12px; padding: 6px 4px 0; }
.deep-xlab span { flex: 1; text-align: center; font-size: 14px; color: var(--mid); white-space: nowrap; }
.deep-xlab span.on { color: var(--hi); font-weight: 800; }
.deep-tw { min-width: 0; overflow-x: auto; }
.deep-tbl, .deep-dt { width: 100%; border-collapse: collapse; font-size: 16px; font-variant-numeric: tabular-nums; }
.deep-tbl th, .deep-dt th { font-size: 14px; color: var(--low); font-weight: 700; text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--line-strong); white-space: nowrap; }
.deep-tbl td { padding: 0 10px; height: 46px; border-bottom: 1px solid var(--line); white-space: nowrap; }
.deep-tbl .n, .deep-dt .n { text-align: right; font-weight: 700; white-space: nowrap; }
.deep-tbl tr.on td, .deep-dt tr.on td { background: color-mix(in srgb, var(--select) 16%, transparent); }
.deep-tbl tr.on td:first-child, .deep-dt tr.on td:first-child { box-shadow: inset 3px 0 0 var(--select); }
.deep-tbl tr[tabindex], .deep-dt tr[tabindex] { cursor: pointer; }
.dense-tw { border: 1px solid var(--line); border-radius: var(--r-ctrl); margin-top: 10px; }
.deep-dt th { padding: 8px 12px; background: var(--s1); position: sticky; top: 0; }
.deep-dt td { padding: 0 12px; height: 52px; border-bottom: 1px solid var(--line); white-space: nowrap; }
.deep-dt tbody tr:nth-child(even) td { background: color-mix(in srgb, var(--s2) 70%, transparent); }
.deep-dt .mut { color: var(--mid); font-weight: 500; }
.deep-dt .st { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; }
.st.done { color: var(--ok); } .st.todo { color: var(--signal); }
.up { color: var(--ok); } .dn { color: var(--warn); }
.cell-sm { display: block; font-size: 14px; font-weight: 600; color: var(--low); line-height: 16px; }
.deep-dt .cell-sm { display: inline; margin-left: 6px; }
.bar2 { display: inline-block; height: 10px; border-radius: 3px; background: var(--bar); vertical-align: middle; margin-right: 8px; }
tr.on .bar2 { background: var(--select); }
.deep-note { font-size: 14px; color: var(--low); margin: 10px 0 0; }
.deep-rows { display: grid; gap: var(--sp2); margin-top: 14px; }
.deep-row { display: flex; align-items: center; gap: 12px; min-height: 62px; padding: 0 16px; border: 1px solid var(--line-strong); border-radius: var(--r-ctrl);
  background: var(--s2); color: var(--hi); text-decoration: none; font-size: 17px; }
.deep-row .ds { font-weight: 500; font-size: 14px; color: var(--mid); }
.deep-row .go { margin-left: auto; color: var(--signal); font-size: 20px; }
details.deep-row { display: block; padding: 0; min-height: 0; }
details.deep-row > summary { display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 0 16px; cursor: pointer; list-style: none; font-size: 16px; }
details.deep-row > summary::-webkit-details-marker { display: none; }
details.deep-row > summary::after { content: "›"; margin-left: auto; color: var(--signal); font-size: 20px; transform: rotate(90deg); }
details.deep-row[open] > summary::after { transform: rotate(-90deg); }
details.deep-row > :not(summary) { padding: 0 16px 12px; margin: 0; }
.deep-scope { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0 0 10px; padding: 8px 12px; border-radius: var(--r-ctrl);
  background: color-mix(in srgb, var(--info) 12%, transparent); border: 1px solid color-mix(in srgb, var(--info) 45%, transparent); font-size: 15px; color: var(--mid); }
.deep-scope b { color: var(--info); font-weight: 800; }
.deep-limit { font-size: 14px; line-height: 21px; color: var(--mid); margin: 10px 0 0; padding: 8px 12px; border-left: 3px solid var(--line-strong); }
.deep-src { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 14px; color: var(--low); margin-top: 8px; }
.deep-src .btn { margin-left: auto; }
.deep-foot { font-size: 15px; color: var(--mid); margin: 14px 0 0; }
.deep-lt { position: fixed; z-index: var(--z-overlay); left: 0; right: 0; bottom: 0; display: flex; gap: 16px; align-items: center; padding: 8px 24px; min-height: 44px;
  background: color-mix(in srgb, var(--s1) 94%, transparent); border-top: 2px solid var(--signal); font-size: 15px; color: var(--mid); white-space: nowrap; overflow: hidden; }
.deep-lt b { color: var(--hi); }
body:has(> #deep-lt) .layer-info { padding-bottom: 80px; } body:has(> #deep-lt) .foot { padding-bottom: 60px; }
:root[data-device="pos"] .deep-lt { display: none; }

.deep-meter { display: flex; gap: 6px; margin: 12px 0 4px; height: 16px; }
.deep-meter i { flex: 1; border-radius: 4px; background: var(--bar-dim); }
.deep-meter i.on { background: var(--bar); }
.deep-handover { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 14px; padding: 8px 14px; border: 1px dashed var(--line-strong); border-radius: var(--r-ctrl); font-size: 15px; color: var(--mid); }
.deep-handover b { color: var(--hi); }
.deep-handover .deep-tag { margin-left: auto; }
.deep-checks { display: grid; gap: 6px; margin-top: 10px; }
.deep-check { display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 0 16px; border: 1px solid var(--line-strong); border-radius: var(--r-ctrl);
  background: var(--s2); font: inherit; font-weight: 700; font-size: 16px; color: var(--hi); text-align: left; width: 100%; }
button.deep-check { cursor: pointer; }
.deep-check .ck { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; font-size: 14px; flex: none; }
.deep-check.done { background: transparent; border-color: var(--line); color: var(--mid); }
.deep-check.done .ck { background: var(--ok); color: var(--on-signal); }
.deep-check.todo .ck { border: 2px solid var(--signal); }
.deep-check.is-now { border-color: var(--select); }
.deep-check .ds { font-weight: 500; font-size: 14px; color: var(--mid); }
.deep-check .who2 { font-size: 14px; color: var(--low); font-weight: 600; }
.deep-check .when { margin-left: auto; font-size: 14px; font-weight: 600; color: var(--low); font-variant-numeric: tabular-nums; }
.deep-check .go { margin-left: auto; color: var(--signal); font-size: 20px; }
.deep-card { border: 1px solid var(--line-strong); border-radius: var(--r-ctrl); background: var(--s2); padding: 14px 16px; margin-bottom: 14px; }
.deep-card h3 { margin: 0 0 6px; font-size: 17px; }
.deep-card ol { margin: 6px 0 0; padding-left: 22px; font-size: 15px; color: var(--mid); }
.deep-btns { display: flex; gap: 10px; margin-top: 10px; }
.deep-btns .btn { flex: 1; justify-content: center; border-radius: var(--r-ctrl); min-height: 52px; font-weight: 800; }
.deep-btns .btn.btn-primary { flex: 1.4; }
.deep-msg { margin: 6px 0 0; }

.pf2 { display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--s3); position: relative; flex: none;
  box-shadow: 0 0 0 2px var(--s1), 0 0 0 4px var(--line-strong); font-size: 15px; font-weight: 800; color: var(--select); margin: 0 12px 0 4px; vertical-align: middle; }
.pf2::after { content: ""; position: absolute; inset: 4px; border-radius: 50%; border: 1.5px dashed color-mix(in srgb, var(--select) 55%, transparent); }
@media (max-width: 767px) {
  .panel.deep { padding: 16px; }
  .deep-crumb .deep-path { display: none; }
  .deep-fc { width: 48px; height: 48px; }
  .deep-say { font-size: 15px; line-height: 22px; padding: 7px 12px; }
  .deep-title { font-size: 19px; line-height: 26px; }
  .deep .statement { font-size: 24px; line-height: 32px; }
  .deep-figure { font-size: 44px; line-height: 48px; }
  .deep-bars { height: 200px; gap: 8px; }
  .deep-bars .bar .v { font-size: 14px; }
  .deep-xlab { gap: 8px; }
  .deep-tbl { margin-top: 18px; font-size: 15px; } .deep-tbl td { height: 48px; }
  .deep-check .ds, .deep-check .who2 { display: none; }
  .deep-scope { font-size: 14px; padding: 6px 10px; }
  .deep-stack > * + * { margin-top: var(--sp4); }
}
:root[data-device="pos"] .deep-back, :root[data-device="pos"] .deep-row, :root[data-device="pos"] .deep-check, :root[data-device="pos"] .deep-btns .btn { min-height: 64px; }
:root[data-device="pos"] .deep-bars { height: 220px; }
:root[data-device="pos"] .deep .statement { font-size: 26px; line-height: 36px; }
@media (max-width: 1599px) { .deep-dt { font-size: 15px; } .deep-dt td, .deep-dt th { padding-left: 9px; padding-right: 9px; } }
@media (max-width: 767px) { .deep-bars { height: 140px; } .deep-chart { margin-top: 26px; } }
:root[data-device="pos"] .deep-bars { height: 180px; }
.deep caption { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (min-width: 768px) { .deep-bars { height: 220px; } }
.hours-dense .table-wrap { max-width: 820px; border: 1px solid var(--line); border-radius: var(--r-ctrl); }
table.dense tr[aria-selected="true"] .bar2 { background: var(--select); }
@media (max-width: 767px) { .pf2 { width: 32px; height: 32px; font-size: 14px; margin: 0 8px 0 2px; } #inf-table td, #inf-table th { padding-left: 8px; padding-right: 8px; } #inf-table { font-size: 15px; } }

.panel.deep { min-height: calc(100vh - var(--appbar-h) - 24px - 64px); margin-bottom: 0; }
.scene[data-plate="wide"] .layer-info:has(> .panel.deep) { padding-left: max(var(--gutter), 3vw); padding-right: max(var(--gutter), 3vw); }
:root[data-device="pos"] .panel.deep { min-height: calc(100vh - var(--appbar-h) - 24px - 96px); }
@media (max-width: 767px) { .panel.deep { min-height: calc(100vh - var(--appbar-h) - 16px - 80px); } }

.scene[data-plate="wide"] .layer-info:has(> .panel.deep) { padding: 16px max(var(--gutter), 2vw) 64px; }
.scene[data-plate="wide"] .panel.deep { min-height: calc(100vh - var(--appbar-h) - 16px - 52px); }
:root[data-device="pos"] .scene[data-plate="wide"] .panel.deep { min-height: calc(100vh - var(--appbar-h) - 16px - 92px); }

.deep-crumb .deep-switch { margin: 0 0 0 auto; flex-wrap: nowrap; }
.deep-switch .tab { font-weight: 800; }
.deep-switch .tab[aria-selected="true"] { background: var(--select); color: var(--on-select); border-color: var(--select); }
:root[data-device="pos"] .deep-switch .tab { min-height: var(--btn); padding: 0 var(--sp6); }
.deep-pane[hidden] { display: none; }
:root[data-device="pos"] .deep-face { margin-bottom: 8px; } :root[data-device="pos"] .deep-crumb { margin-bottom: 8px; }
:root[data-device="pos"] .deep-pane table.dense td, :root[data-device="pos"] .deep-pane .deep-tbl td { height: 48px; }
:root[data-device="pos"] .deep-pane table.dense th { height: 44px; }

.deep .chart-tags.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; margin: 0; }
@media (min-width: 768px) { .scene[data-plate="wide"] .deep-bars { height: 190px; } .deep-chart { margin-top: 24px; } }
.deep .brief-table table.dense td, .deep-col table.dense td { height: 40px; }
.deep-col table.dense th { height: 40px; }
details.deep-row > summary { min-height: 48px; }
.deep-rows { margin-top: 10px; gap: 6px; }
.deep-limit { margin-top: 8px; padding: 6px 12px; }
.scene[data-plate="wide"] .deep-check { min-height: 46px; }
.scene[data-plate="wide"] button.deep-check { min-height: 48px; } 
:root[data-device="pos"] .scene[data-plate="wide"] button.deep-check { min-height: 56px; }
.scene[data-plate="wide"] .deep-checks { gap: 6px; }

@media (max-width: 767px) { .deep-dt .cell-sm { display: block; margin: 0; } }

.oct-pending { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp3); margin: var(--sp3) 0; }
.oct-pend-box { display: flex; flex-direction: column; gap: var(--sp1); padding: var(--sp3) var(--sp4); border-radius: var(--r-ctrl); background: var(--s2); border: 1.5px solid; }
.oct-pend-box.account { border-color: var(--info); } .oct-pend-box.account strong { color: var(--info); }
.oct-pend-box.fit { border-color: var(--signal); } .oct-pend-box.fit strong { color: var(--signal); }
@media (max-width: 767px) { .deep-dt { font-size: 15px; } .deep-dt td, .deep-dt th { padding-left: 7px; padding-right: 7px; } .deep-dt .deep-tag.sm { padding: 0 5px; } .deep-dt td.n .cell-sm { white-space: nowrap; } .panel.deep { padding: 14px; } }
@media (max-width: 767px) { .scene .layer-info:has(> .panel.deep) { padding-left: 10px; padding-right: 10px; } .panel.deep { padding: 12px; } .deep-dt td, .deep-dt th { padding-left: 6px; padding-right: 6px; } }

:root[data-device="pos"] .deep-pane table.dense td, :root[data-device="pos"] .deep-pane .deep-tbl td { height: 42px; }
:root[data-device="pos"] .deep-pane table.dense th { height: 40px; }
:root[data-device="pos"] .deep-scope { margin-bottom: 6px; padding: 6px 12px; }

.scene[data-plate="wide"]:not([data-device]) .deep-col .brief-table table.dense td, .scene[data-plate="wide"] .deep-col table.dense td { height: 37px; }
.scene[data-plate="wide"] .deep-col table.dense th { height: 36px; }
.scene[data-plate="wide"] .deep-col details.deep-row > summary { min-height: 44px; }
.scene[data-plate="wide"] .deep-col button.deep-row { min-height: 46px; }
.scene[data-plate="wide"] .deep-col .deep-src { margin-top: 6px; }
.scene[data-plate="wide"] .deep-col .deep-src .btn { min-height: 44px; }
:root[data-device="pos"] .scene[data-plate="wide"] .deep-col .deep-src .btn { min-height: var(--btn); }


.octagon-svg {
  --oct-max-w: 420px;
  --oct-ring: var(--line-strong); --oct-ring-w: 1.5; --oct-ring-dash: 5 4; --oct-ring-fill: none; --oct-ring-inner-op: .5;
  --oct-spoke-w: 1; --oct-spoke-op: .6; --oct-spoke-empty-dash: 4 4; --oct-spoke-empty-op: .35;
  --oct-account: var(--info); --oct-fit: var(--signal);
  --oct-fill-mix: 22%; --oct-line-w: 2; --oct-line-dash: none;
  --oct-overlay-fill-mix: 0%; --oct-overlay-w: 2; --oct-overlay-dash: 6 4;
  --oct-mid: var(--hi); --oct-mid-w: 2;
  --oct-text: var(--mid); --oct-axis-size: 21px; --oct-axis-weight: 600; --oct-half-weight: 800; --oct-note: var(--mid);
  width: min(100%, var(--oct-max-w)); height: auto; display: block; margin: 0 auto;
}
.octagon-svg .octagon-frame { fill: var(--oct-ring-fill); stroke: var(--oct-ring); stroke-width: var(--oct-ring-w); stroke-dasharray: var(--oct-ring-dash); opacity: 1; }
.octagon-svg .octagon-frame.inner { opacity: var(--oct-ring-inner-op); }
.octagon-svg .octagon-spoke { stroke: var(--oct-ring); stroke-width: var(--oct-spoke-w); opacity: var(--oct-spoke-op); }
.octagon-svg .octagon-spoke.account { stroke: var(--oct-account); }
.octagon-svg .octagon-spoke.fit { stroke: var(--oct-fit); }
.octagon-svg .octagon-spoke.is-empty { stroke-dasharray: var(--oct-spoke-empty-dash); opacity: var(--oct-spoke-empty-op); }
.octagon-svg text { font: var(--oct-axis-weight) var(--oct-axis-size) var(--font-body); fill: var(--oct-text); }
.octagon-svg text.oct-axis.account, .octagon-svg text.oct-half.account { fill: var(--oct-account); stroke: none; }
.octagon-svg text.oct-axis.fit, .octagon-svg text.oct-half.fit { fill: var(--oct-fit); stroke: none; }
.octagon-svg text.oct-half { font-weight: var(--oct-half-weight); }
.octagon-svg text.oct-axis-note { fill: var(--oct-note); stroke: none; }
.octagon-svg .octagon-half { stroke: var(--oct-mid); stroke-width: var(--oct-mid-w); }
.octagon-svg .octagon-example.account { fill: color-mix(in srgb, var(--oct-account) var(--oct-fill-mix), transparent); stroke: var(--oct-account); stroke-width: var(--oct-line-w); stroke-dasharray: var(--oct-line-dash); }
.octagon-svg .octagon-example.fit { fill: color-mix(in srgb, var(--oct-fit) var(--oct-fill-mix), transparent); stroke: var(--oct-fit); stroke-width: var(--oct-line-w); stroke-dasharray: var(--oct-line-dash); }
.octagon-svg .octagon-example.is-overlay { fill: color-mix(in srgb, currentColor var(--oct-overlay-fill-mix), transparent); stroke-width: var(--oct-overlay-w); stroke-dasharray: var(--oct-overlay-dash); }


.octagon-svg.oct-next { width: auto; max-width: 100%; height: auto; display: block; margin: var(--sp2) auto; }
.oct-next .oct-band { fill: var(--hi); stroke: none; }
.oct-next .oct-ring { fill: none; stroke: var(--line-strong); }
.oct-next .oct-ring.outer { stroke-opacity: 1; }
.oct-next .oct-spoke { stroke: var(--line-strong); }
.oct-next .oct-divider { stroke: var(--line-strong); }
.oct-next .oct-fill.account { fill: var(--info); stroke: none; }
.oct-next .oct-fill.fit { fill: var(--signal); stroke: none; }
.oct-next .oct-line { fill: none; stroke-linejoin: round; stroke-linecap: round; }
.oct-next .oct-line.account { stroke: var(--info); }
.oct-next .oct-line.fit { stroke: var(--signal); }
.oct-next .oct-dot { stroke: var(--s1); stroke-width: 2; }
.oct-next .oct-dot.account { fill: var(--info); }
.oct-next .oct-dot.fit { fill: var(--signal); }
.octagon-svg.oct-next text.oct-axis { fill: var(--mid); font-weight: 500; font-family: var(--font-body); }
.octagon-svg.oct-next text.oct-val { fill: var(--hi); font-weight: 700; font-family: var(--font-body); font-variant-numeric: tabular-nums; }
.octagon-svg.oct-next text.oct-half { fill: var(--hi); font-weight: 700; font-family: var(--font-body); }
.oct-next .oct-half-bar.account { fill: var(--info); }
.oct-next .oct-half-bar.fit { fill: var(--signal); }
.oct-next .oct-shape { animation: oct-grow 240ms cubic-bezier(.2, .8, .2, 1) both; }
@keyframes oct-grow { from { transform: scale(0); } to { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .oct-next .oct-shape { animation: none; } }
.oct-next .oct-dot { stroke: none; } 
.oct-next .oct-base { fill: var(--s1); fill-opacity: 1; stroke: none; } 
:root[data-color="na"] .oct-next .oct-base, :root[data-color="ga"] .oct-next .oct-base, :root:not([data-color]) .oct-next .oct-base { fill: var(--app); } 

@media (min-width: 768px) { body:has(> #deep-lt) .side { bottom: 48px; } }


.cmp-stack { list-style: none; margin: var(--sp3) 0 0; padding: 0; }
.cmp-stack li { display: flex; flex-direction: column; gap: 2px; padding: 10px 0; border-bottom: 1px solid var(--line); font-variant-numeric: tabular-nums; }
@media (max-width: 767px) {
  .deep-tbl td:first-child { white-space: normal; }
  .deep-tbl th, .deep-tbl td { padding-left: 8px; padding-right: 8px; }
  table.dense .bar2 { display: none; }
}


#main h1.display:not(.panel *):not(.state *):not(.deep *) { color: #FFF1E6; }

.dash-body > .grid2 + .grid2 { margin-top: var(--sp4); } 

@font-face { font-family: "Black Han Sans"; src: url("/fonts/BlackHanSans-Regular.ttf") format("truetype"); font-weight: 400; font-style: normal; font-display: swap; }

@font-face { font-family: "Nanum Myeongjo"; src: url("/fonts/NanumMyeongjo-ExtraBold.ttf") format("truetype"); font-weight: 800; font-style: normal; font-display: swap; }
:root[data-font="na"] body { font-synthesis-weight: none; }

:root[data-device="pos"] .inf-card .btn { padding-left: 8px; padding-right: 8px; white-space: nowrap; font-size: 15px; letter-spacing: -0.02em; } 

:root[data-device="pos"] body:has(> #deep-lt) .foot, :root[data-device="pos"] body:has(> .subnav-dock) .foot { padding-bottom: 104px; }

:root[data-device="pos"] body:not(:has(> #deep-lt, > .subnav-dock)) .foot { padding-bottom: var(--sp3); }


:root[data-char="hide"] #char-slot, :root[data-char="hide"] .deep-fc, :root[data-char="hide"] .react .face { display: none !important; }
:root[data-motion="less"] *, :root[data-motion="less"] *::before, :root[data-motion="less"] *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }

#ops-problem label[for] { display: block; }
#ops-problem input[type="text"] { display: block; width: 100%; min-height: 48px; margin: 6px 0 10px; padding: 0 12px; font: inherit; font-size: 16px;
  color: var(--hi); background: var(--s2); border: 1px solid var(--line-strong); border-radius: var(--r-ctrl); box-sizing: border-box; }
#ops-problem input[type="text"]::placeholder { color: var(--low); }

.ops-demo-form, [data-block] li { overflow-wrap: anywhere; }

.ops-demo-form { border-top: 1px solid var(--line); margin-top: var(--sp3); padding-top: var(--sp3); }
.ops-demo-form input[type="text"], .ops-demo-form select { min-height: 48px; padding: 0 12px; font: inherit; font-size: 16px; color: var(--hi); background: var(--s2);
  border: 1px solid var(--line-strong); border-radius: var(--r-ctrl); box-sizing: border-box; flex: 1 1 140px; min-width: 0; }
.ops-demo-form input[type="text"]::placeholder { color: var(--low); }
.ops-demo-form .seg { margin: 6px 0; }
:root[data-device="pos"] .ops-demo-form input[type="text"], :root[data-device="pos"] .ops-demo-form select { min-height: 64px; }

.side { padding-top: 0; }
.side-head { padding-top: var(--sp5); }
#dash-opinion { display: block; width: 100%; min-height: 64px; margin: 6px 0 10px; padding: 10px 12px; font: inherit; font-size: 16px; box-sizing: border-box;
  color: var(--hi); background: var(--s2); border: 1px solid var(--line-strong); border-radius: var(--r-ctrl); resize: vertical; }
#dash-opinion::placeholder { color: var(--low); }
#dash-decide-msg label { display: block; }

#mkt-day-pick { flex-wrap: nowrap; align-items: center; }
#mkt-day-pick select { flex: none; width: auto; min-width: 0; min-height: 48px; } 
@media (max-width: 767px) {
  #mkt-day-pick { gap: 6px; }
  #mkt-day-pick select { flex: 1 1 auto; }
  #mkt-day-pick label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  #mkt-day-pick .btn { padding-left: 10px; padding-right: 10px; white-space: nowrap; flex: none; }
}
.state .caption { white-space: nowrap; }
:root[data-device="pos"] #mkt-day-pick select { min-height: 64px; } 

#mkt-notes input[type="text"], #mkt-notes select { min-height: 48px; padding: 0 12px; font: inherit; font-size: 16px; color: var(--hi); background: var(--s2);
  border: 1px solid var(--line-strong); border-radius: var(--r-ctrl); box-sizing: border-box; }
#mkt-notes input[type="text"] { flex: 1 1 240px; min-width: 0; }
:root[data-device="pos"] #mkt-notes input[type="text"], :root[data-device="pos"] #mkt-notes select { min-height: 64px; }
:root[data-viewer="consultant"] #dash-proposal .controls, :root[data-viewer="consultant"] #dash-decide-msg { display: none; } 
@media (max-width: 767px) { #dash-opinion-fail { display: block; margin-top: 8px; } } 

@media (max-width: 767px) {
  .scene[data-plate="narrow"] #hours-panel:not([data-deep]) > .controls:not(:has(#btn-source)) { order: 1; }
  .scene[data-plate="narrow"] #hours-panel:not([data-deep]) > #hours { order: 2; }
  .scene[data-plate="narrow"] #hours-panel:not([data-deep]) > #statement, .scene[data-plate="narrow"] #hours-panel:not([data-deep]) > #notice { order: 3; }
  .scene[data-plate="narrow"] #hours-panel:not([data-deep]) > * { order: 4; }
  .scene[data-plate="narrow"] #hours-panel:not([data-deep]) > #face-react, .scene[data-plate="narrow"] #hours-panel:not([data-deep]) > h2 { order: 0; }
}
:root[data-view-staff="1"] .menu a:not([data-menu="ops"]) { display: none; } 

.chart-big { width: min(1200px, 96vw); max-width: 96vw; height: min(760px, 92vh); border: 1px solid var(--line-strong); border-radius: var(--r-panel);
  background: var(--s1); color: var(--hi); padding: var(--sp5); box-sizing: border-box; }
.chart-big::backdrop { background: rgba(0, 0, 0, 0.6); }
.chart-big-head { display: flex; align-items: center; justify-content: space-between; gap: var(--sp3); margin-bottom: var(--sp4); }
.chart-big-head h2 { margin: 0; }
.chart-big[open] { display: flex; flex-direction: column; }

.chart-big .deep-chart { flex: 1; min-height: 0; display: flex; flex-direction: column; margin-top: 40px; }
.chart-big .deep-bars { flex: 1; min-height: 0; height: auto; }
.chart-big .caption { margin: var(--sp3) 0 0; }
.chart-big-head h2 { min-width: 0; }
#chart-big-close { flex: none; white-space: nowrap; border-radius: var(--r-pill); min-height: 48px; padding: 0 18px; } 
@media (max-width: 767px) { .chart-big { padding: var(--sp4); height: min(640px, 88vh); } .chart-big .deep-bars { gap: 6px; } }

.all-data { list-style: none; margin: var(--sp3) 0; padding: 0; display: grid; gap: var(--sp2); }
#all-data-find { width: 100%; min-height: 48px; padding: 0 12px; font: inherit; font-size: 16px; color: var(--hi); background: var(--s2);
  border: 1px solid var(--line-strong); border-radius: var(--r-ctrl); box-sizing: border-box; }
:root[data-device="pos"] #all-data-find { min-height: 64px; }

.dash-right-col { display: flex; flex-direction: column; gap: var(--sp4); min-width: 0; }
.dash-right-col > #dash-proposal { flex: none; }
.dash-right-col > #dash-digest { flex: 1 1 auto; margin-bottom: 0; }
.digest-head { display: block; background: none; border: 0; padding: 0; margin: 0 0 var(--sp2); font: inherit; font-size: var(--t-h2, 20px); font-weight: 700; color: var(--hi); cursor: pointer; text-align: left; min-height: 32px; }
.digest-list { list-style: none; margin: 0 0 var(--sp4); padding: 0; display: grid; gap: 6px; font-size: 15px; }
.digest-list li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }
.digest-list .blocker-line { flex-basis: 100%; }

.cmp-paired { display: grid; gap: var(--sp3); margin-top: var(--sp3); }
.cmp-row { border-bottom: 1px solid var(--line); padding-bottom: var(--sp2); }
.cmp-row-name { margin: 0 0 4px; font-weight: 700; }
.cmp-line { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 8px; align-items: baseline; padding: 2px 0; }
.cmp-line .cmp-name { font-size: 15px; color: var(--mid); }
.cmp-line .cmp-val { font-weight: 700; text-align: right; }
.cmp-track { grid-column: 1 / -1; height: 10px; background: color-mix(in srgb, var(--line) 60%, transparent); border-radius: 5px; overflow: hidden; }
.cmp-track .fill { display: block; height: 100%; background: var(--bar); border-radius: 5px; }
.cmp-line.is-cmp .cmp-track .fill { background: var(--info); }
.cmp-paired[data-open="0"] .cmp-line.is-cmp { display: none; }

.has-ico { display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.has-ico .btn-ico { flex: none; }
a.deep-row.has-ico, button.deep-row.has-ico { justify-content: flex-start; }

.dash-row2 { display: grid; grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); gap: var(--sp4); align-items: start; }
.dash-body > .grid2 + .dash-row2, .dash-body > .dash-row2 + .grid2 { margin-top: var(--sp4); }
.dash-row2 > .panel { margin-bottom: 0; }
#dash-digest { padding-top: 16px; padding-bottom: 16px; }
#dash-digest .digest-head { margin: 0 0 6px; }
#dash-digest .digest-line { margin: 0 0 12px; font-size: 15px; display: flex; flex-wrap: wrap; gap: 6px; align-items: baseline; }
#dash-digest .digest-line:last-child { margin-bottom: 0; }

:root[data-form="tablet"] .dash-row2 { grid-template-columns: minmax(0, 60fr) minmax(0, 40fr); }
:root[data-form="tablet"] .dash-digest-on #dash-strategy p, :root[data-form="tablet"] .dash-digest-on #dash-proposal p { margin-top: 0; margin-bottom: calc(var(--sp4) / 2); }
:root[data-form="tablet"] .dash-digest-on #dash-strategy .statement, :root[data-form="tablet"] .dash-digest-on #dash-proposal .statement { margin-bottom: calc(var(--sp4) / 2); }
:root[data-form="tablet"] .dash-digest-on #dash-strategy details.expand, :root[data-form="tablet"] .dash-digest-on #dash-proposal details.expand { background: none; padding: 0; margin-top: calc(var(--sp4) / 2); }
:root[data-form="tablet"] .dash-digest-on .tag-synth { margin-top: calc(var(--sp2) / 2); }

.dash-row2 > #dash-sales { container-type: inline-size; }
:root[data-form="tablet"] .dash-row2 > #dash-sales .big { font-size: clamp(44.8px, calc((100cqw - 2 * var(--sp5)) / 6.6), 56px); line-height: 1.1; }

#dash-digest .digest-headrow { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0 0 6px; }
#dash-digest .digest-head { min-height: 48px; margin: 0; }
#dash-digest .digest-side { display: none; }
:root[data-form="tablet"] #dash-digest .digest-side { display: inline-flex; }
:root[data-form="tablet"] #dash-digest .digest-line > .status-tag, :root[data-form="tablet"] #dash-digest .digest-line > .num { display: none; }

:root[data-form="tablet"] #dash-digest { padding-top: 12px; padding-bottom: 12px; }
:root[data-form="tablet"] #dash-digest .digest-line { margin-bottom: 6px; }
:root[data-form="tablet"] #dash-digest .digest-headrow { margin-bottom: 3px; }

#dash-digest .digest-group { display: block; width: 100%; text-align: left; background: none; border: 0; padding: 4px 0; margin: 0; font: inherit; color: var(--hi);
  cursor: pointer; border-radius: var(--r-ctrl); min-height: 48px; }
#dash-digest .digest-group + .digest-group { border-top: 1px solid var(--line); margin-top: 12px; padding-top: 12px; }
#dash-digest .digest-group:focus-visible { outline: 3px solid var(--select); outline-offset: 2px; }
#dash-digest .digest-group:active { background: color-mix(in srgb, var(--select) 12%, transparent); }
#dash-digest .digest-group .digest-headrow { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0 0 6px; }
#dash-digest .digest-group .digest-head { font-size: var(--t-h2, 20px); font-weight: 700; min-height: 0; }
#dash-digest .digest-group .digest-line { display: flex; flex-wrap: wrap; gap: 6px; align-items: baseline; font-size: 15px; margin: 0; }
:root[data-form="tablet"] #dash-digest { padding-top: 8px; padding-bottom: 8px; }
:root[data-form="tablet"] #dash-digest .digest-group { padding: 4px 0; min-height: 48px; }
:root[data-form="tablet"] #dash-digest .digest-group + .digest-group { margin-top: 0; padding-top: 4px; }
:root[data-form="tablet"] #dash-digest .digest-group .digest-headrow { margin: 0; line-height: 20px; height: 20px; }
:root[data-form="tablet"] #dash-digest .digest-group .digest-head { font-size: 17px; line-height: 20px; }
:root[data-form="tablet"] #dash-digest .digest-group .digest-line { line-height: 20px; }
:root[data-form="tablet"] #dash-digest .digest-side .status-tag { font-size: 12px; line-height: 20px; height: 20px; padding: 0 8px; display: inline-flex; align-items: center; }
:root[data-form="tablet"] #dash-digest .digest-group .digest-line { margin: 0; } 
#dash-digest .digest-group .digest-line { margin-bottom: 0; }

@media (max-width: 767px) { .chart.chart-dense { gap: 1px; } .axis.axis-sparse { gap: 1px; } } 
.axis-sparse { overflow: hidden; }
.axis-sparse .ax-last { direction: rtl; text-align: right; }

@media (max-width: 767px) { .deep-dt td:not(.n) { white-space: normal; } .deep-dt th, .deep-dt td { padding-left: 6px; padding-right: 6px; } }

.pair-boards { grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr)); }

:root[data-device="pos"] .pane-na.with-brief { grid-template-columns: minmax(0, 62fr) minmax(220px, 38fr); }

@font-face { font-family: "Athena Dash"; src: url("/fonts/pretendard/PretendardVariable.subset.91.woff2") format("woff2-variations"); font-weight: 45 920; font-display: swap; unicode-range: U+2013-2014; }
:root[data-font="da"] { --font-display: "Athena Dash", "Nanum Myeongjo", "Batang", serif; }

@media (max-width: 767px) {
  .axis:not(.axis-sparse) { gap: 0; }
  .axis:not(.axis-sparse) span { white-space: nowrap; overflow-wrap: normal; letter-spacing: -0.03em; justify-self: center; width: max-content; }
}
@media (max-width: 374px) { .axis:not(.axis-sparse) span { letter-spacing: -0.05em; } } 
#cmp-pair-toggle { margin-bottom: var(--sp3); } 

.chart-big .deep-bars .bar.is-sel .b { background: var(--bar); outline: 2px solid var(--signal); outline-offset: 2px; }

:root[data-device="pos"] .grid2 .pane-na.with-brief { grid-template-columns: minmax(0, 1fr); }
:root[data-device="pos"] .grid2 .with-brief .axis:not(.axis-sparse) { gap: 0; }
:root[data-device="pos"] .grid2 .with-brief .axis:not(.axis-sparse) span { white-space: nowrap; overflow-wrap: normal; letter-spacing: -0.03em; justify-self: center; width: max-content; }
.page-404 { padding: 16px; max-width: 480px; margin: 0 auto; box-sizing: border-box; } 
@media (min-width: 768px) { .page-404 { padding-top: 64px; } }

@media (max-width: 1199px) { :root[data-device="pos"] .grid2 .with-brief .axis:not(.axis-sparse) span { white-space: normal; width: min-content; justify-self: center; text-align: center; letter-spacing: 0; } } 

.grid2:has(#dash-proposal-detail[open]) { align-items: start; }

#mkt-products select { min-height: 48px; padding: 0 12px; font: inherit; font-size: 16px; color: var(--hi); background: var(--s2); border: 1px solid var(--line-strong); border-radius: var(--r-ctrl); max-width: 100%; }
:root[data-device="pos"] #mkt-products select { min-height: 64px; }
#mkt-products .controls { align-items: center; }
#mkt-goal input[type="text"], #mkt-goal select { min-height: 48px; padding: 0 12px; font: inherit; font-size: 16px; color: var(--hi); background: var(--s2); border: 1px solid var(--line-strong); border-radius: var(--r-ctrl); box-sizing: border-box; }
#mkt-goal input[type="text"] { flex: 1 1 200px; min-width: 0; }
:root[data-device="pos"] #mkt-goal input[type="text"], :root[data-device="pos"] #mkt-goal select { min-height: 64px; }

#mkt-products { min-width: 0; max-width: 100%; box-sizing: border-box; }
#mkt-products .table-wrap { overflow-x: auto; max-width: 100%; }
#mkt-products-table caption { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
#mkt-products-table th:first-child, #mkt-products-table td:first-child { position: sticky; left: 0; z-index: 1; background: var(--s1); }
#mkt-products .statement .nowrap { white-space: nowrap; display: inline-block; }
#mkt-products-table th:first-child { background: var(--s2); z-index: 2; }
.scene[data-plate="narrow"] #hours-panel:not([data-deep]) > #board-question { order: 0; } 

.cond-drawer .chips .chip.tag-warn { color: var(--warn); background: var(--warn-bg); padding: 2px var(--sp2); border-radius: var(--r-tag); font-size: inherit; }


@media (min-width: 1024px) and (max-width: 1199px) { .deep-dt td, .deep-dt th { padding-left: 5px; padding-right: 5px; } }

.scroll-frame { position: relative; min-width: 0; max-width: 100%; }
.scroll-fade { position: absolute; top: 0; right: 0; bottom: 0; width: 24px; pointer-events: none; z-index: 3; background: linear-gradient(to right, transparent, var(--s1)); }
.scroll-fade[hidden] { display: none; }
.is-scroll table th:first-child, .is-scroll table td:first-child { position: sticky; left: 0; z-index: 2; background: var(--s1); }
.is-scroll table thead th:first-child, .is-scroll table.dense th:first-child { background: var(--s2); z-index: 4; }
.is-scroll .deep-dt thead th:first-child { background: var(--s1); }
.is-scroll .deep-dt tbody tr:nth-child(even) td:first-child { background: color-mix(in srgb, var(--s2) 70%, var(--s1)); }
.is-scroll tr.on td:first-child { background: color-mix(in srgb, var(--select) 16%, var(--s1)); }
.table-cap { position: sticky; left: 0; margin: 0 0 var(--sp2); white-space: normal; }

.is-scroll table th:first-child, .is-scroll table td:first-child { box-shadow: inset -1px 0 0 var(--line-strong); }
.is-scroll tr.on td:first-child { box-shadow: inset 3px 0 0 var(--select), inset -1px 0 0 var(--line-strong); }


@media (max-width: 374px) { table.dense th, table.dense td, .deep-dt th, .deep-dt td, .deep-tbl th, .deep-tbl td { padding-left: 5px; padding-right: 5px; } }

.is-scroll table tr > :not(:first-child) { scroll-snap-align: start; }

.is-scroll.sticky-col-2 table th:first-child, .is-scroll.sticky-col-2 table td:first-child { position: static; box-shadow: none; background: transparent; }
.is-scroll.sticky-col-2 table th:nth-child(2), .is-scroll.sticky-col-2 table td:nth-child(2) { position: sticky; left: 0; z-index: 2; background: var(--s1); box-shadow: inset -1px 0 0 var(--line-strong); }
.is-scroll.sticky-col-2 table thead th:nth-child(2), .is-scroll.sticky-col-2 table.dense th:nth-child(2) { background: var(--s2); z-index: 4; }
.is-scroll.sticky-col-2 table tr > :nth-child(2) { scroll-snap-align: none; } 

.table-cap .nowrap { white-space: nowrap; }
:root[data-device="pos"] .grid2 .with-brief .chart .bar:last-child .val, :root[data-device="pos"] .grid2 .with-brief .chart .bar:last-child .tag { align-self: flex-end; }

.is-scroll.sticky-col-2 table tr > :first-child { scroll-snap-align: start; }

.is-scroll.snap-end-last table tr > :last-child { scroll-snap-align: end; }

.pager { position: sticky; left: 0; flex-wrap: wrap; row-gap: var(--sp2); }
.pager .small { white-space: nowrap; }

#ops-rcpt-demo .rcpt-row{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap;margin-top:8px}
#ops-rcpt-demo .rcpt-pic svg{display:block;max-width:100%;height:auto;border-radius:4px}
#ops-rcpt-demo .rcpt-out{flex:1 1 220px;min-width:0}
#ops-rcpt-demo .rcpt-out ul{margin:0 0 8px;padding-left:18px}
#ops-rcpt-demo input{min-height:48px;font-size:16px;padding:0 12px;border-radius:10px;border:1px solid var(--line,#888);background:transparent;color:inherit;max-width:160px}
:root[data-device="pos"] #ops-rcpt-demo input { min-height: var(--btn); } 

.month-cards { display: grid; gap: 12px; }
.month-card { border: 1px solid var(--line); border-radius: 12px; padding: 12px 14px; background: var(--s1); }
.month-card.on { border-color: var(--accent, var(--line)); }
.month-card h3 { margin: 0 0 6px; font-size: var(--t-body, 16px); display: flex; gap: 8px; align-items: center; }
.month-card .meta { margin-top: 0; grid-template-columns: max-content 1fr; }
.month-card .meta dd.n { text-align: left; }

.is-scroll.sticky-col-2 table.dense th:first-child { background: var(--s2); }
.is-scroll.sticky-col-2 .deep-dt thead th:first-child { background: var(--s1); }

.item-links a { display: inline-flex; align-items: center; min-height: 48px; }
:root[data-device="pos"] .item-links a { min-height: 56px; }

#ops-rcpt-demo .seg { flex-wrap: wrap; }
#ops-rcpt-demo .seg button { white-space: nowrap; }

.mkt-exec-strip { display: grid; gap: 6px; margin: var(--sp2) 0 var(--sp3); }
.mkt-exec-strip .run-row { display: flex; align-items: center; gap: var(--sp3); min-height: 28px; }
.mkt-exec-strip .run-name { flex: 0 0 9.5em; }
.mkt-exec-strip .run-track { position: relative; flex: 1 1 auto; min-height: 14px; border-radius: 7px; background: var(--s2); }
.mkt-exec-strip .run-track .caption { position: static; padding-left: 8px; }
.mkt-exec-strip .bar-run { position: absolute; top: 0; bottom: 0; border-radius: 7px; background: color-mix(in srgb, var(--select) 55%, transparent); }
.mkt-exec-strip .run-row.is-sel .bar-run { background: var(--select); }
.mkt-exec-strip .run-row.is-sel .run-name { font-weight: 700; }
#mkt-exec-list { list-style: none; padding: 0; margin: 0 0 var(--sp3); display: grid; gap: var(--sp2); }
#mkt-exec-list .btn { margin-right: var(--sp2); }
.mkt-prepost p { margin: 2px 0; }
#mkt-cmp-mode { margin-bottom: var(--sp3); }

@media (max-width: 600px) { #mkt-exf input[type="text"], #mkt-exf select { flex-basis: 100%; } }

.mkt-exec-strip .bar-post { position: absolute; top: -3px; bottom: -3px; width: 4px; margin-left: -2px; border-radius: 2px; background: var(--signal); }
.mkt-unit { border-top: 1px solid var(--line); padding-top: var(--sp2); margin-top: var(--sp2); }
.mkt-unit p { margin: 2px 0; }
#mkt-exec-kind { margin-bottom: var(--sp2); }

#mkt-exec-list .exec-desc { display: block; margin-top: 4px; }
.mkt-exec-strip .run-axis { min-height: 20px; }
.mkt-exec-strip .axis-track { background: none; min-height: 20px; }
.mkt-exec-strip .axis-track .ax { position: absolute; top: 0; white-space: nowrap; color: var(--low); }
.mkt-exec-strip .axis-track .ax0 { left: 0; }
.mkt-exec-strip .axis-track .ax1 { left: 50%; transform: translateX(-50%); }
.mkt-exec-strip .axis-track .ax2 { right: 0; }

.cond-drawer label[hidden] { display: none; }
#mkt-units-table td, #mkt-units-table th { white-space: normal; overflow-wrap: anywhere; }

#ops-review-form input[type="text"] { flex-basis: 100%; }
#ops-to-mgr-pre { display: inline-flex; align-items: center; min-height: 48px; }
:root[data-device="pos"] #ops-to-mgr-pre { min-height: 56px; }

#src-links .src-link { display: inline-flex; align-items: center; min-height: 48px; overflow-wrap: anywhere; }
:root[data-device="pos"] #src-links .src-link { min-height: 56px; }

.item-detail summary { position: relative; }
.item-detail summary::after { content: ""; position: absolute; top: 0; bottom: 0; left: -2px; right: -2px; }   
@media (max-width: 767px) {
  .menu a { position: relative; }
  .menu a::after { content: ""; position: absolute; top: 0; bottom: 0; left: -4px; right: -4px; }             
  
  .chart button.bar::after { content: ""; position: absolute; top: 0; bottom: 0; left: -1.5px; right: -1.5px; }
}

.side ol { margin-bottom: 120px; }
#dash-strategy-list details.expand { margin-top: var(--sp2); padding-bottom: var(--sp2); }
#dash-strategy-list details.expand > p { margin: 0 0 var(--sp1); }
#dash-strategy-list summary .go { margin-left: auto; color: var(--signal); font-size: 20px; padding-left: var(--sp3); }
#dash-strategy-list details[open] > summary .go { transform: rotate(90deg); }
#mkt-units-table td, #mkt-units-table th { overflow-wrap: normal; word-break: keep-all; }
#mkt-units-table td:nth-child(n+2):nth-child(-n+4) { white-space: nowrap; }

:root[data-device="pos"] #main :is(p, li, span, small) > a:not(.btn):not(.deep-row) { position: relative; }
:root[data-device="pos"] #main :is(p, li, span, small) > a:not(.btn):not(.deep-row)::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 56px; transform: translateY(-50%); }

:root[data-device="pos"] #main .state > a:not(.btn) { position: relative; }
:root[data-device="pos"] #main .state > a:not(.btn)::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 56px; transform: translateY(-50%); }
#src-links .src-link { display: inline-block; min-height: 0; padding: 12px 0; }  
#src-links .nowrap { white-space: nowrap; }

#dash-proposal-detail, #dash-proposal, #dash-strategy-list details { scroll-margin-top: calc(var(--appbar-h, 72px) + 16px); }

@media (max-width: 767px) { .chart button.bar::after { left: -1.95px; right: -1.95px; } }  
.scene[data-plate="wide"] .deep-col .deep-src .btn { min-height: 48px; }

@media (max-width: 767px) { #dash-proposal-detail, #dash-proposal, #dash-strategy-list details { scroll-margin-top: 16px; } }

.scene[data-plate="wide"] .deep-col details.deep-row > summary, .scene[data-plate="wide"] .deep-col button.deep-row { position: relative; }
.scene[data-plate="wide"] .deep-col details.deep-row > summary::before, .scene[data-plate="wide"] .deep-col button.deep-row::before { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 48px; transform: translateY(-50%); }
.scene[data-snap] .layer-info, .scene[data-snap] .layer-bg, .scene[data-snap] .layer-char { transition: none !important; }  

@media (max-width: 767px) { .deep-bars button.bar::after { content: ""; position: absolute; top: 0; bottom: 0; left: -3.5px; right: -3.5px; } }

:root[data-device="pos"] .item-detail summary::after { left: -3px; right: -3px; }

@media (max-width: 1199px) { :root[data-device="pos"][data-pos-bar-fit] .pane-na.with-brief { grid-template-columns: minmax(0, 1fr); } }

.char.pose-x { transition: opacity 150ms ease-out; }
.char.pose-in { opacity: 0; }
.char.nod img { animation: char-nod 640ms ease-in-out 1; }
@keyframes char-nod { 0%, 100% { transform: translateY(0); } 40% { transform: translateY(3px); } 75% { transform: translateY(-1px); } }
@media (prefers-reduced-motion: reduce) { .char.pose-x { transition: none; } .char.nod img { animation: none; } }

.char-tools > * { position: absolute; z-index: var(--z-brief); }
.char-tools[data-form="wide"] > * { position: fixed; }
.char-hit { cursor: pointer; }
.char-full { white-space: nowrap; }
.scene:not([data-depth="entry"]) .char-tools, .scene:not([data-bg-ready]) .char-tools, :root[data-char="hide"] .char-tools { visibility: hidden; }

.fb-dlg { width: min(1200px, calc(100vw - 32px)); max-width: none; height: min(900px, calc(100vh - 24px)); max-height: none; border: 1px solid var(--line-strong);
  border-radius: var(--r-panel); background: var(--s1); color: var(--hi); padding: var(--sp4) var(--sp5); box-sizing: border-box; overflow: hidden; }
.fb-dlg[open] { display: flex; flex-direction: column; gap: var(--sp2); }
.fb-dlg::backdrop { background: rgba(0, 0, 0, 0.6); }
.fb-head { display: flex; align-items: center; justify-content: space-between; gap: var(--sp3); flex: none; }
.fb-head h2 { margin: 0; min-width: 0; flex: none; }
#fb-close { flex: none; white-space: nowrap; border-radius: var(--r-pill); }
.fb-stage { position: relative; flex: 1; min-height: 0; overflow: hidden; border-radius: var(--r-ctrl); background: var(--s2); }

.fb-plate { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: blur(12px) brightness(var(--scene-dim-detail)); transform: scale(1.08); }
.fb-fig { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }

.fb-shadow { position: absolute; pointer-events: none; border-radius: 50%; background: radial-gradient(closest-side, rgb(0 0 0 / .82), rgb(0 0 0 / .5) 55%, transparent); }
.fb-cap { margin: 0 auto 0 0; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fb-tabs { margin: 0; flex: none; flex-wrap: nowrap; }
.fb-strip { flex: none; display: flex; align-items: flex-start; gap: var(--sp2); height: 100px; overflow-x: auto; overflow-y: hidden; margin: 0; padding: 2px 2px 0; list-style: none; box-sizing: border-box; }
.fb-strip[hidden] { display: none; }
.fb-thumb { flex: none; display: flex; flex-direction: column; align-items: center; gap: 2px; min-width: 80px; min-height: var(--btn); padding: 2px var(--sp2);
  background: var(--s2); color: var(--mid); border: 1px solid var(--line); border-radius: var(--r-ctrl); cursor: pointer; }
.fb-thumb img { width: 64px; height: 56px; object-fit: contain; display: block; }
.fb-thumb[aria-pressed="true"] { border-color: var(--select); background: var(--s3); }
.fb-face { flex: none; display: flex; flex-direction: column; align-items: center; gap: 2px; min-width: 72px; }
.fb-face img { width: 60px; height: 60px; border-radius: 50%; border: 2px solid var(--glass-line); background: var(--s3); display: block; }
.fb-thumb .caption, .fb-face .caption { text-align: center; line-height: 1.25; white-space: nowrap; } 
@media (max-width: 767px) { .fb-dlg { width: calc(100vw - 16px); height: calc(100vh - 16px); padding: var(--sp3); } .fb-strip { height: 96px; }
  .fb-thumb, .fb-face { min-width: 72px; } .fb-thumb img { width: 56px; height: 52px; } .fb-face img { width: 56px; height: 56px; } }



:root[data-form="pc"] .scene[data-depth="entry"][data-plate="wide"] .layer-info { max-width: none; padding-right: max(var(--gutter), calc(100% - var(--panel-x, 0px) - 1240px)); }

:root[data-form="pc"] .scene[data-plate="wide"]:not([data-depth="entry"]) .layer-info { margin: 0 auto; }

:root[data-form="pc"] .dash-row2 > #dash-sales .big { font-size: min(clamp(40px, 7vw, 64px), calc(100cqw / 6.8)); } 

:root[data-form="pc"] #mkt-summary, :root[data-form="pos"] #mkt-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sp4); } 
:root[data-form="pc"] #mkt-summary .keynum, :root[data-form="pos"] #mkt-summary .keynum { min-width: 0; }
:root[data-form="pos"] #mkt-inf-line, :root[data-form="pc"] #mkt-inf-line { display: flex; align-items: center; gap: var(--sp3); flex-wrap: wrap; }
:root[data-form="pos"] #mkt-inf-line .btn, :root[data-form="pc"] #mkt-inf-line .btn { margin-left: auto; flex: none; }

:root[data-form="pc"] #dash-strategy p, :root[data-form="pc"] #dash-strategy li, :root[data-form="pc"] #dash-proposal p, :root[data-form="pc"] #dash-proposal li { max-width: 46em; }

:root[data-form="pc"] .fb-strip { justify-content: safe center; }

:root[data-form="pc"] body:has(> .deep-lt) .deep-foot { display: none; }


@media (max-width: 767px) { .subnav .tabs[data-more="1"] { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 56px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 56px), transparent); } }

@media (max-width: 767px) {
  :root:not([data-device="pos"]) .settings-btn { position: relative; width: var(--btn); min-width: var(--btn); padding: 0; overflow: hidden; white-space: nowrap; text-indent: 200px; }
  :root:not([data-device="pos"]) .settings-btn::before { content: "⚙" / ""; position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; text-indent: 0; font-size: 22px; }
}



:root[data-form="pc"] .dash-digest-on > .dash-row2 + .grid2 { grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); gap: var(--sp4); }


:root[data-form="pc"] .dash-body > .grid2:has(#dash-proposal-detail[open], #dash-strategy-detail[open]) > :is(#dash-strategy, #dash-proposal) { grid-column: 1 / -1; }
@container (min-width: 900px) { #dash-proposal .pp-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; row-gap: 16px; } }
#dash-proposal .pp-grp > h3:first-child { margin-top: 0; }

body:has(#source-panel:not([hidden])) .char-tools, body:has(#settings:not([hidden])) .char-tools { visibility: hidden; }

@media (max-width: 767px) { .side.settings { padding-bottom: 96px; } }

.deep-lt { background: var(--s1); }

@media (max-width: 1199px) { :root[data-device="pos"] .store-wrap > .grid2 { grid-template-columns: minmax(0, 1fr); } }
:root[data-form="pc"] .bar.no-record .val, :root[data-device="pos"] .bar.no-record .val { white-space: nowrap; }

:root[data-form="pc"] .dash-digest-on > .grid2:first-child { grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); gap: var(--sp4); }
:root[data-form="pc"] .dash-digest-on > .dash-row2 { align-items: stretch; }

@media (min-width: 1680px) { :root[data-form="pc"] .scene[data-plate="wide"] .panel.deep { min-height: 0; } :root[data-form="pc"] .scene[data-plate="wide"] .deep-bars { height: clamp(220px, 32vh, 420px); } }

#dash-proposal-detail > .react { margin-top: 12px; }

@media (max-width: 767px) { .subnav .tabs[data-bleed] { margin-right: calc(-1 * var(--bleed, 0px)); padding-right: max(0px, var(--bleed, 0px)); } }

@media (max-width: 1199px) { :root[data-device="pos"] #dash-month-dense th, :root[data-device="pos"] #dash-month-dense td:nth-last-child(-n+3) { white-space: normal; word-break: keep-all; } }

@media (min-width: 1920px) { :root[data-form="pc"] #ops-today .keynums { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); } }


@media (max-width: 767px) { #main .page-head:has([id^="ops-sec-"]) .subnav .tabs { flex-wrap: wrap; overflow-x: visible; } }

@media (max-width: 767px) { .ops-head-chips .ops-title-row { margin-bottom: var(--sp4); padding-bottom: var(--sp3); border-bottom: 1px solid var(--line-strong); }
  .ops-role-chips .tab { min-height: 48px; font-size: 15px; } 
  .scene[data-menu="ops"] .ops-role-chips .tab[aria-selected="true"] { background: transparent; color: var(--signal); border-color: var(--signal); } }

@media (max-width: 767px) { #apt-body .table-wrap { max-width: 100%; overflow-x: auto; } #apt-table { width: 100%; } #apt-table th, #apt-table td { padding-left: 6px; padding-right: 6px; } }

@media (max-width: 767px) { #apt-body .scroll-frame { margin-right: 0 !important; max-width: 100% !important; } }


.sales-l, .sales-r { display: contents; }

:root .dash-body > .dash-row2.dash-row2-solo { grid-template-columns: minmax(0, 1fr); }
:root[data-form="pc"] .dash-row2-solo > #dash-sales:has(> .sales-l) { container-type: normal; display: grid; grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); column-gap: var(--sp4); align-items: start; }
:root[data-form="pc"] .dash-row2-solo .sales-l, :root[data-form="pc"] .dash-row2-solo .sales-r { display: block; min-width: 0; }

:root[data-form="pc"] .dash-row2-solo .sales-l { container-type: inline-size; } 
:root[data-form="pc"] .dash-row2-solo .sales-r > :first-child { margin-top: 0; }

.grid2 > #dash-area { display: flex; flex-direction: column; }
.grid2 > #dash-area .statement .num { display: block; margin-top: var(--sp2); font-size: clamp(40px, 4vw, 56px); line-height: 1.1; }
.grid2 > #dash-area > :last-child { margin-top: auto; margin-bottom: 0; padding-top: var(--sp4); }

:root[data-form="pos"] .dash-body > .grid2 > #dash-sales ~ #dash-area { grid-column: auto; }

@media (max-width: 1199px) { :root[data-device="pos"] .store-wrap > .grid2 .with-brief .axis:not(.axis-sparse) span { white-space: nowrap; width: max-content; letter-spacing: -0.03em; } }

.scene[data-menu="mkt"][data-plate="wide"][data-depth="entry"] .page-head h1.display { position: relative; width: fit-content; isolation: isolate; }
.scene[data-menu="mkt"][data-plate="wide"][data-depth="entry"] .page-head h1.display::before { content: ""; position: absolute; inset: -6px -30px -6px -14px; z-index: -1; border-radius: 16px; background: color-mix(in srgb, var(--s1) 72%, transparent); filter: blur(10px); }

.depth[data-mode="swipe"]:not(:has(> .depth-track > .with-brief)) .pane { flex: 0 0 calc(100% - 40px); } 

:root[data-form="tablet"] .dash-row2-solo > #dash-sales .big { font-size: 44.8px; }

:root[data-form="tablet"] #mkt-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp4); }
:root[data-form="tablet"] #mkt-summary .keynum { min-width: 0; }

@media (max-width: 429px) { .cond-sum .tag-warn { padding-inline: 4px; letter-spacing: -0.03em; word-break: keep-all; } } 
:root[data-form="tablet"] .dash-body .panel :is(.statement, h3) { text-wrap: balance; }
:root[data-form="tablet"] .dash-body .panel :is(p, li, .caption) { text-wrap: pretty; }
:root[data-form="pos"] #ops-pre-links { margin-top: var(--sp4); }

@media (max-width: 767px) {
  #main .subnav .tabs:has(#tab-area) .tab { flex: 1 1 auto; justify-content: center; padding: 0 var(--sp2); }
  #main .subnav .tabs + .tabs { margin-top: var(--sp1); }
  
  .scene[data-depth="entry"][data-plate="narrow"] #main > .page-head:has(#tab-area) { padding-bottom: var(--sp1); }
  .scene[data-depth="entry"][data-plate="narrow"] #main > .page-head:has(#tab-area) .cond { margin-bottom: var(--sp2); }
  .scene[data-depth="entry"][data-plate="narrow"] #main > .page-head:has(#tab-area) .cond-sum { row-gap: 0; line-height: 24px; }
  .scene[data-depth="entry"][data-plate="narrow"] #hours-panel { padding-top: var(--sp4); }
  .scene[data-depth="entry"][data-plate="narrow"] #hours-panel > #board-title { margin-bottom: var(--sp1); }
  .scene[data-depth="entry"][data-plate="narrow"] #hours-panel > #board-title + * { margin-top: 0; margin-bottom: var(--sp2); }
  .scene[data-depth="entry"][data-plate="narrow"] #hours-panel > .controls { margin-bottom: var(--sp3); }
  .scene[data-depth="entry"][data-plate="narrow"] #hours-panel > .controls + * { margin-top: 0; }
}

:root[data-device="pos"] #main > .page-head:has(#tab-area) { display: flex; align-items: center; justify-content: space-between; gap: var(--sp4); flex-wrap: wrap; margin-top: calc(-1 * var(--sp4)); margin-bottom: var(--sp2); }
:root[data-device="pos"] #main > .page-head:has(#tab-area) h1 { margin: 0; }
:root[data-device="pos"] .store .demo-badge { margin-left: var(--sp2); } 
:root[data-device="pos"] #main > .page-head:has(#tab-area) :is(.subnav, .tabs) { margin: 0; }

.consult-btn { flex: none; white-space: nowrap; }
@media (min-width: 768px) and (max-width: 899px) { 
  :root:not([data-device="pos"]) .appbar:has(.consult-btn) { gap: var(--sp2); }
  :root:not([data-device="pos"]) .appbar:has(.consult-btn) .menu { gap: 0; }
  :root:not([data-device="pos"]) .appbar:has(.consult-btn) .menu a { padding: 0 var(--sp2); }
  :root:not([data-device="pos"]) .appbar:has(.consult-btn) .consult-btn { padding: 0 var(--sp3); font-size: 15px; }
}
@media (max-width: 767px) { 
  :root:not([data-device="pos"]) .appbar:has(.consult-btn) { flex-wrap: nowrap; gap: var(--sp2); }
  :root:not([data-device="pos"]) .appbar:has(.consult-btn) #brand-store { display: flex; flex-direction: column; line-height: 1.15; }
  :root:not([data-device="pos"]) .appbar:has(.consult-btn) #brand-store .b-sep { display: none; }
  :root:not([data-device="pos"]) .appbar:has(.consult-btn) #brand-store .b-month { font: 500 14px/18px var(--font-body); color: var(--mid); letter-spacing: 0; }
  :root:not([data-device="pos"]) .appbar:has(.consult-btn) .consult-btn { padding: 0 var(--sp2); font-size: 14px; }
}

:root[data-form="tablet"] #mkt-summary .caption { text-wrap: balance; }
.scene[data-menu="mkt"][data-plate="narrow"] #main > .page-head { background: var(--s1); }


.scene[data-plate="wide"] .bg-dim {
  --seam-r: clamp(80px, 11vw, 300px);
  left: calc(var(--panel-x, 0px) - var(--seam-r)); right: 0; width: auto;
  background: linear-gradient(90deg,
    color-mix(in srgb, var(--s1) 0%, transparent) 0,
    color-mix(in srgb, var(--s1) 5%, transparent) calc(var(--seam-r) * .25),
    color-mix(in srgb, var(--s1) 18%, transparent) calc(var(--seam-r) * .5),
    color-mix(in srgb, var(--s1) 42%, transparent) calc(var(--seam-r) * .75),
    color-mix(in srgb, var(--s1) 72%, transparent) var(--seam-r)); }
.scene[data-plate="wide"] .bg-front {
  -webkit-mask-image: linear-gradient(90deg, #000 calc(var(--panel-x, 0px) * .86), transparent var(--panel-x, 0px));
  mask-image: linear-gradient(90deg, #000 calc(var(--panel-x, 0px) * .86), transparent var(--panel-x, 0px)); }

:root[data-color="da"] .scene[data-plate="wide"] .bg-dim {
  background: linear-gradient(90deg,
    color-mix(in srgb, var(--hi) 0%, transparent) 0,
    color-mix(in srgb, var(--hi) 30%, transparent) var(--seam-r)); }


.inf-result { margin-top: var(--sp5); }
.inf-result-top { display: flex; align-items: center; gap: var(--sp3); flex-wrap: wrap; }
.inf-result-top h2 { margin: 0; }
.inf-result h3 { font-size: 17px; font-weight: 700; margin: var(--sp5) 0 0; }
.inf-result .inf-head { margin-top: var(--sp4); margin-bottom: 0; }
.inf-result .inf-head h3 { margin: 0; }
.inf-result .meta { grid-template-columns: max-content minmax(0, 1fr); }
.inf-result-nums .keynum { min-width: 104px; }
.inf-result-caveats { margin: var(--sp3) 0; padding-left: 1.2em; color: var(--mid); }
.inf-result-caveats li + li { margin-top: 2px; }
@media (max-width: 767px) {
  .inf-result-nums { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sp2); }
  .inf-result-nums .keynum { min-width: 0; padding: var(--sp2) var(--sp3); }
}

.price-line { color: var(--mid); margin: var(--sp3) 0 0; }
.price-line a { color: var(--select); text-decoration: underline; text-underline-offset: 3px; }
.apply-card .price-line { margin-top: var(--sp3); }
#settings .price-line { border-top: 1px solid var(--line); padding-top: var(--sp3); }

.tag-synth:empty, .tag-warn:empty { display: none; }
