/* M213 加仓纪律：weekly budget and averaging-down pauses. */
html[data-home-view="holdings"] .home-add-discipline { display: none; }
html[data-home-view="holdings"] .home-verdict { display: none; }
.home-add-discipline .home-section-head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-2); flex-wrap: wrap; }
.home-add-discipline .home-section-head h2 { margin: 0; font-size: 1rem; font-weight: 650; }
.home-add-discipline .home-section-head small { color: var(--color-text-muted); font-size: .75rem; }
.add-discipline-weekly { display: grid; gap: 4px; margin-top: var(--space-2); padding: var(--space-2) var(--space-3); border-radius: 10px;
  --discipline-tone: var(--color-text-muted); background: color-mix(in srgb, var(--discipline-tone) 10%, transparent); }
.add-discipline-weekly[data-tone="ok"] { --discipline-tone: var(--color-positive); }
.add-discipline-weekly[data-tone="caution"] { --discipline-tone: var(--color-attention); }
.add-discipline-weekly[data-tone="danger"] { --discipline-tone: var(--color-negative); }
.add-discipline-weekly strong { color: var(--discipline-tone); font-size: .9375rem; }
.add-discipline-weekly small { color: var(--color-text); font-size: .8125rem; line-height: 1.55; }
.add-discipline-bar { display: block; height: 6px; border-radius: 3px; background: color-mix(in srgb, var(--color-text-muted) 20%, transparent); overflow: hidden; }
.add-discipline-bar i { display: block; height: 100%; background: var(--discipline-tone); }
.add-discipline-brakes { list-style: none; margin: var(--space-2) 0 0; padding: 0; }
.add-discipline-brakes li { display: grid; gap: 2px; padding: 6px 0; border-top: 1px solid var(--color-border); }
.add-discipline-brakes a { display: flex; align-items: center; min-height: var(--touch-target); color: var(--color-negative); text-decoration: none; font-size: .875rem; gap: 6px; }
.add-discipline-brakes a b { color: var(--color-text); }
.add-discipline-brakes small { color: var(--color-text-muted); font-size: .75rem; }
.add-discipline-clear { margin: var(--space-2) 0 0; color: var(--color-text-muted); font-size: .8125rem; }
body.home-page #homeHoldingList .home-compact-holding .home-compact-holding-exception[data-add-brake] { color: var(--color-negative); }
/* M215 加仓优先 */
.add-priority-title { margin: var(--space-3) 0 0; font-size: .9375rem; font-weight: 650; }
.add-priority-note { display: block; color: var(--color-text-muted); font-size: .75rem; line-height: 1.5; }
.add-priority-list { margin: var(--space-1) 0 0; padding: 0; list-style: none; counter-reset: rank; }
.add-priority-list > li { counter-increment: rank; padding: 6px 0; border-top: 1px solid var(--color-border); }
.add-priority-list > li > a { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 8px; min-height: var(--touch-target); color: var(--color-text); text-decoration: none; }
.add-priority-list > li > a::before { content: counter(rank) "."; color: var(--color-text-muted); font-variant-numeric: tabular-nums; }
.add-priority-list > li > a span { color: var(--color-text-muted); font-size: .8125rem; font-variant-numeric: tabular-nums; }
.add-priority-list > li[data-ready="true"] > a b { color: var(--color-positive); }
.home-add-discipline .add-priority-missing { display: block; margin: 0; font-size: .75rem; line-height: 1.5; color: var(--color-negative); }
.home-add-discipline .add-priority-missing[data-ok="true"] { color: var(--color-positive); }
.add-priority-ready { margin: var(--space-2) 0 0; padding: var(--space-2) var(--space-3); border-radius: 10px; font-size: .875rem;
  color: var(--color-positive); background: color-mix(in srgb, var(--color-positive) 12%, transparent); }
.add-priority-index { counter-reset: none; } .add-priority-index > li > a::before { content: none; }
/* M226 collapsed lists while adding is frozen */
.add-discipline-later { margin-top: var(--space-2); }
.add-discipline-later > summary { min-height: var(--touch-target, 44px); display: flex; align-items: center; gap: 6px; cursor: pointer; color: var(--color-text-muted); font-size: .8125rem; line-height: 1.4; list-style: none; }
.add-discipline-later > summary::-webkit-details-marker { display: none; }
.add-discipline-later > summary::after { content: '展开'; margin-left: auto; color: var(--color-accent); white-space: nowrap; }
.add-discipline-later[open] > summary::after { content: '收起'; }
.add-discipline-later > summary:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; border-radius: var(--radius-control, 6px); }

/* M226 today's verdict */
.home-verdict { padding: var(--space-3); border-radius: var(--radius-card, 14px); background: var(--color-surface); border: 1px solid var(--color-border); border-left: 4px solid var(--color-text-muted); }
.home-verdict[data-tone="danger"] { border-left-color: var(--color-negative); }
.home-verdict[data-tone="caution"] { border-left-color: var(--color-attention); }
.home-verdict[data-tone="ok"] { border-left-color: var(--color-positive); }
.home-verdict-main { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin: 0; font-size: .875rem; line-height: 1.5; }
.home-verdict-main > b { font-size: 1.0625rem; font-weight: 700; color: var(--color-text); white-space: nowrap; }
.home-verdict[data-tone="danger"] .home-verdict-main > b { color: var(--color-negative); }
.home-verdict[data-tone="ok"] .home-verdict-main > b { color: var(--color-positive); }
.home-verdict-main > span { color: var(--color-text-muted); }
.home-verdict-lines { list-style: none; margin: var(--space-2) 0 0; padding: 0; display: grid; gap: 2px; font-size: .8125rem; line-height: 1.5; }
.home-verdict-lines a { display: block; padding: 6px 0; color: var(--color-text); text-decoration: none; }
.home-verdict-lines li[data-tone="danger"] a { color: var(--color-negative); }
.home-verdict-lines li[data-tone="caution"] a { color: var(--color-attention); }
.home-verdict-lines a:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; border-radius: var(--radius-control, 6px); }
/* M243 defense mode */
.defense-mode { display: grid; gap: 4px; margin-top: var(--space-2); padding: var(--space-2) var(--space-3); border-radius: 10px;
  --defense-tone: var(--color-text-muted); background: color-mix(in srgb, var(--defense-tone) 10%, transparent); border-left: 4px solid var(--defense-tone); }
.defense-mode[data-tone="danger"] { --defense-tone: var(--color-negative); }
.defense-mode strong { color: var(--defense-tone); font-size: .9375rem; }
.defense-mode small { display: block; color: var(--color-text); font-size: .8125rem; line-height: 1.55; }
.defense-mode-list { margin: 2px 0 0; padding: 0; list-style: none; }
.defense-mode-list li { border-top: 1px solid var(--color-border); }
.defense-mode-list a { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; min-height: var(--touch-target, 44px); padding: 6px 0; color: var(--color-text); text-decoration: none; font-size: .875rem; }
.defense-mode-list a span { color: var(--color-negative); font-size: .8125rem; font-variant-numeric: tabular-nums; }
.defense-mode-list a:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; border-radius: var(--radius-control, 6px); }
.defense-mode-warn { margin: 2px 0 0; color: var(--color-negative); font-size: .8125rem; font-weight: 600; }
.defense-mode-quiet { margin: var(--space-2) 0 0; color: var(--color-text-muted); font-size: .75rem; line-height: 1.5; }
/* M244 rule-based price per holding card */
body.home-page #homeHoldingList .home-compact-holding .holding-price-level { color: var(--color-text); font-variant-numeric: tabular-nums; }
body.home-page #homeHoldingList .home-compact-holding .holding-price-level[data-price-side="reduce"] { color: var(--color-negative); }
body.home-page #homeHoldingList .home-compact-holding .holding-price-level[data-ready="true"] { color: var(--color-positive); }
.holding-price-level small { color: var(--color-text-muted); font-size: .75rem; }
body.home-page #homeHoldingList .home-compact-holding .holding-price-level[data-price-side="hold"] { color: var(--color-text-muted); }
/* M245 add caps by risk bucket (持仓 → 板块) */
.sector-caps { margin: var(--space-2) 0; padding: var(--space-2) var(--space-3); border-radius: 10px; background: var(--color-surface); border: 1px solid var(--color-border); }
.sector-caps > summary { min-height: var(--touch-target, 44px); display: flex; align-items: center; cursor: pointer; font-size: .875rem; font-weight: 600; line-height: 1.4; }
.sector-caps > summary:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; border-radius: var(--radius-control, 6px); }
.sector-caps ul { list-style: none; margin: 0; padding: 0; }
.sector-caps li { display: grid; gap: 2px; padding: 6px 0; border-top: 1px solid var(--color-border); font-size: .8125rem; }
.sector-caps li span { color: var(--color-text-muted); font-variant-numeric: tabular-nums; }
.sector-caps li[data-over="true"] b, .sector-caps li[data-over="true"] small { color: var(--color-negative); }
.sector-caps li small { font-size: .75rem; }
.sector-caps-note { display: block; margin-top: var(--space-2); color: var(--color-text-muted); font-size: .75rem; line-height: 1.5; }
/* M251 urgent-first card: status, top three, the rest folded */
.add-discipline-weekline { display: block; margin-top: var(--space-2); font-size: .8125rem; color: var(--color-text-muted); }
.add-discipline-weekline[data-tone="danger"] { color: var(--color-negative); }
.add-discipline-weekline[data-tone="caution"] { color: var(--color-attention); }
.add-discipline-urgent { margin: var(--space-1) 0 0; padding: 0 0 0 1.4em; }
.add-discipline-urgent > li { padding: 6px 0; border-top: 1px solid var(--color-border); font-size: .875rem; line-height: 1.45; }
.add-discipline-urgent > li > a, .add-discipline-urgent > li > b { display: inline-flex; flex-wrap: wrap; gap: 4px; min-height: 32px; align-items: center; color: var(--color-text); text-decoration: none; }
.add-discipline-urgent > li[data-tone="danger"] > a, .add-discipline-urgent > li[data-tone="danger"] > b { color: var(--color-negative); }
.add-discipline-urgent > li[data-tone="ok"] > a { color: var(--color-positive); }
.add-discipline-urgent > li > a b { color: var(--color-text); }
.add-discipline-urgent > li > small { display: block; color: var(--color-text-muted); font-size: .75rem; }
.add-discipline-more { margin-top: var(--space-2); }
.add-discipline-more > summary { min-height: var(--touch-target, 44px); display: flex; align-items: center; gap: 6px; cursor: pointer; color: var(--color-text-muted); font-size: .8125rem; line-height: 1.4; list-style: none; }
.add-discipline-more > summary::-webkit-details-marker { display: none; }
.add-discipline-more > summary::after { content: '展开'; margin-left: auto; color: var(--color-accent); white-space: nowrap; }
.add-discipline-more[open] > summary::after { content: '收起'; }
.add-discipline-more > summary:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; border-radius: var(--radius-control, 6px); }
.add-discipline-notes small { display: block; margin-top: var(--space-1); color: var(--color-text-muted); font-size: .75rem; line-height: 1.5; }
