/* Brand DNA. Family tokens only (lm-app-tokens.css): no new colours, one shadow, Noto Sans, the family type scale.
   Layout follows the family reference pages: one charcoal band per page (hero on home; page head on sub pages)
   with a faint grid, then light surface sections with white cards. Colour layers: coral speaks, violet operates,
   the data palette draws. */
.bd-main{background:var(--lm-surface);color:var(--lm-ink);font:var(--lm-t-body);overflow-x:clip;position:relative;min-height:60vh}
.bd-main *{box-sizing:border-box}
html:lang(ja) .bd-main{word-break:normal;line-break:strict}

/* ---------- the one dark band ---------- */
.bd-band{position:relative;isolation:isolate;color:var(--lm-white)}
.bd-band::before{content:"";position:absolute;top:0;bottom:0;left:-100vw;right:-100vw;z-index:-1;pointer-events:none;
  background:
    radial-gradient(640px 380px at 72% 55%,rgba(255,91,96,.16),transparent 65%),
    linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px) 0 0/48px 48px,
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px) 0 0/48px 48px,
    var(--lm-charcoal)}
.bd-band .lm-eyebrow,.bd-band .eb,.bd-band .bd-eb{font:var(--lm-t-eyebrow);color:var(--lm-coral);margin:0 0 12px}
.bd-band .lm-h1,.bd-band .bd-title{font:var(--lm-t-h1);letter-spacing:var(--lm-tracking-head);color:var(--lm-white);margin:0 0 16px;word-break:keep-all}
.bd-band .lm-lead,.bd-band .lead{font:var(--lm-t-lead);color:var(--lm-line);max-width:var(--lm-text-col);margin:0}
@media (max-width:600px){.bd-band .lm-h1,.bd-band .bd-title{font:var(--lm-t-h1-m)}}

/* hero (shell hooks) on the band */
.bd-main .lm-hero{align-items:center}
.bd-main .lm-hero .lm-lead{margin:0 0 24px}
.bd-main .lm-benefits{display:flex;flex-wrap:wrap;gap:8px}
.bd-main .lm-benefits li{font:var(--lm-t-label);color:var(--lm-white);padding:6px 14px 6px 10px;border-radius:var(--lm-r-pill);box-shadow:inset 0 0 0 var(--lm-bw) rgba(255,255,255,.28);gap:8px}
.bd-main .lm-benefits svg{color:var(--lm-coral);width:18px;height:18px}
.bd-main .lm-hero .lm-btn--outline{color:var(--lm-white);box-shadow:inset 0 0 0 var(--lm-bw) rgba(255,255,255,.4)}
.bd-main .lm-hero .lm-btn--outline:hover{background:rgba(255,255,255,.08)}
.bd-main .lm-hero .lm-datameta{color:var(--lm-muted)}
.bd-main.is-sub .lm-hero{display:none}

/* signature: the family frame, set a little off-axis like the reference cards, with two quote bubbles */
.bd-sigwrap{position:relative;padding:44px 0 40px;min-width:0}
.bd-main .lm-sigcard{transform:rotate(-1.5deg);position:relative;z-index:1}
.bd-main .lm-sigcard__body{min-height:280px}
.bd-bub{position:absolute;z-index:2;max-width:min(78%,300px);background:var(--lm-white);color:var(--lm-ink);border-radius:var(--lm-r);
  padding:8px 14px;font:var(--lm-t-small);box-shadow:var(--lm-shadow)}
.bd-bub small{display:block;font:var(--lm-t-caption);color:var(--lm-ink-3)}
.bd-bub b{color:var(--lm-red-deep)}
.bd-bub.b1{left:-16px;top:0}.bd-bub.b2{right:-12px;bottom:0}
.bd-sig{display:block;width:100%;height:auto}
.bd-sig text{font-family:var(--lm-font)}
.bd-rung{stroke-dasharray:260;stroke-dashoffset:260;animation:bd-grow .6s var(--lm-ease-out) forwards}
@keyframes bd-grow{to{stroke-dashoffset:0}}
@media (max-width:900px){.bd-sigwrap{padding:8px 0 0}#sig-bubs{display:flex;flex-direction:column;gap:10px;margin-top:20px}.bd-bub{position:relative;left:auto!important;right:auto!important;top:auto;bottom:auto;max-width:100%}}

/* sub-page head and run screen sit on the band */
.bd-dnahead,.bd-run{max-width:var(--lm-container);margin:0 auto;padding:56px var(--lm-gutter) 48px}
.bd-run{max-width:880px;padding-bottom:var(--lm-section)}
.bd-actions{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 0}
.bd-bar{height:8px;background:rgba(255,255,255,.12);border-radius:var(--lm-r-sm);overflow:hidden;margin:8px 0 0}
.bd-bar i{display:block;height:100%;background:var(--lm-grad-cta);transition:width .6s var(--lm-ease)}
.bd-runlead{font:var(--lm-t-body-lg,var(--lm-t-body));color:rgba(255,255,255,.78);margin:12px 0 0}
.bd-stages{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:8px}
.bd-stages li{display:flex;gap:12px;align-items:center;font:var(--lm-t-body);color:var(--lm-muted);padding:10px 14px;border-radius:var(--lm-r);box-shadow:inset 0 0 0 var(--lm-bw) rgba(255,255,255,.14)}
.bd-stages li i{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font:var(--lm-t-chip);font-style:normal;box-shadow:inset 0 0 0 var(--lm-bw-strong) rgba(255,255,255,.3)}
.bd-stages li.on{color:var(--lm-white);box-shadow:inset 0 0 0 var(--lm-bw-strong) var(--lm-coral)}
.bd-stages li.on i{box-shadow:inset 0 0 0 var(--lm-bw-strong) var(--lm-coral);animation:bd-pulse 1.2s infinite}
.bd-stages li.ok{color:var(--lm-line)}.bd-stages li.ok i{background:var(--lm-coral);color:var(--lm-white);box-shadow:none}
@keyframes bd-pulse{50%{opacity:.45}}
.bd-band .bd-err{color:var(--lm-coral)}

/* ---------- light sections ---------- */
.bd-view{position:relative}
.bd-sec{max-width:var(--lm-container);margin:0 auto;padding:var(--lm-section) var(--lm-gutter)}
.bd-paper{font:var(--lm-t-small);color:var(--lm-ink)}
.bd-paper.alt{background:var(--lm-band)}
.bd-paper .bd-sec{padding-top:48px}
.bd-eyebrow{font:var(--lm-t-eyebrow);color:var(--lm-red-deep);margin:0 0 8px}
.bd-h2,.bd-paper h2,.bd-chapter h2{font:var(--lm-t-h2);color:var(--lm-ink);margin:0 0 16px}
.bd-paper h2{margin-top:48px}.bd-paper h2:first-child{margin-top:0}
.bd-paper h3{font:var(--lm-t-label);color:var(--lm-ink-2);margin:0 0 8px}
.bd-paper .lead{font:var(--lm-t-body);color:var(--lm-ink-2);margin:0 0 12px}
.bd-paper a{color:var(--lm-red-deep)}
.bd-main a.lm-btn,.bd-main .bd-btn,.bd-main .btn,.bd-paper .list a{text-decoration:none}

/* start form */
.bd-chapter{display:flex;gap:16px;align-items:center;margin:0 0 24px}
.bd-chapter__mark{width:40px;height:40px;border-radius:var(--lm-r);background:var(--lm-grad-tile);color:var(--lm-white);display:grid;place-items:center;flex:none}
.bd-chapter__mark svg{width:24px;height:24px}
.bd-chapter h2{margin:0}
.bd-chapter p{margin:4px 0 0;font:var(--lm-t-small);color:var(--lm-ink-3)}
.bd-ask{background:var(--lm-white);border-radius:var(--lm-r-lg);box-shadow:var(--lm-shadow);padding:32px}
.bd-ask__q{font:var(--lm-t-h3);color:var(--lm-ink-2);margin:0 0 16px}
.bd-field{display:flex;gap:10px}
.bd-field input{flex:1;min-width:0;height:48px;padding:0 16px;font:var(--lm-t-body);color:var(--lm-ink);background:var(--lm-white);border:var(--lm-bw) solid var(--lm-line);border-radius:var(--lm-r-sm);transition:border-color var(--lm-dur-color) ease,box-shadow var(--lm-dur-color) ease}
.bd-field input:hover{border-color:var(--lm-line-strong)}
.bd-field input:focus,.bd-opt select:focus,.bd-opt input:focus,.bd-main textarea:focus{outline:none;border-color:var(--lm-violet);box-shadow:0 0 0 3px var(--lm-violet-soft)}
.bd-field button,.btn,.bd-btn.coral{height:48px;padding:0 24px;border:0;border-radius:var(--lm-r);background:var(--lm-violet);color:var(--lm-white);font:700 16px/24px var(--lm-font);cursor:pointer;transition:background-color var(--lm-dur-btn) var(--lm-ease)}
.bd-field button:hover,.btn:hover,.bd-btn.coral:hover{background:var(--lm-violet-hover)}
.bd-field button:disabled,.btn:disabled{opacity:.4;cursor:not-allowed}
.btn.small{height:32px;padding:0 12px;font:var(--lm-t-label)}
.btn.ghost{background:transparent;color:var(--lm-ink);box-shadow:inset 0 0 0 var(--lm-bw) var(--lm-line-strong)}
.btn.ghost:hover{background:var(--lm-line-soft)}
.bd-help{font:var(--lm-t-small);color:var(--lm-ink-3);margin:12px 0 0}
.bd-ex{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0 0;font:var(--lm-t-caption);color:var(--lm-ink-3)}
.bd-ex button{font:var(--lm-t-chip);padding:6px 10px;border-radius:var(--lm-r-sm);border:0;background:var(--lm-line-soft);color:var(--lm-ink-2);cursor:pointer;transition:background-color var(--lm-dur-color) ease}
.bd-ex button:hover{background:var(--lm-violet-soft);color:var(--lm-violet)}
.bd-opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin:24px 0 0}
.bd-field input::placeholder,.bd-opt input::placeholder,.bd-set__add input::placeholder{color:#A8ADB8;opacity:1;font-weight:400}
.bd-opt label{display:block;font:var(--lm-t-label);color:var(--lm-ink-2);margin:0 0 6px}
.bd-opt select,.bd-opt input{width:100%;height:48px;padding:0 12px;font:var(--lm-t-body);color:var(--lm-ink);background:var(--lm-white);border:var(--lm-bw) solid var(--lm-line);border-radius:var(--lm-r-sm)}
.bd-check{display:flex;gap:8px;align-items:center;font:var(--lm-t-small);color:var(--lm-ink-2);margin-top:20px}
.bd-check input{width:18px;height:18px;accent-color:var(--lm-violet)}
.bd-pricebar{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;margin:20px 0 0;font:var(--lm-t-small);color:var(--lm-ink-3)}
.bd-pricebar b{font:var(--lm-t-h3);color:var(--lm-ink)}
.bd-err{font:var(--lm-t-label);color:var(--lm-red-deep);margin:12px 0 0;min-height:1em}
.bd-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:32px 0 0}
.bd-steps div{border-top:var(--lm-bw) solid var(--lm-line);padding:12px 0 0;font:var(--lm-t-small);color:var(--lm-ink-3)}
.bd-steps b{display:block;font:var(--lm-t-h3);color:var(--lm-coral);margin-bottom:4px}
@media (max-width:760px){.bd-steps{grid-template-columns:1fr 1fr}.bd-ask{padding:20px}.bd-field{flex-direction:column}}

/* report building blocks */
.bd-btn{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 18px;border-radius:var(--lm-r-pill);font:var(--lm-t-label);color:var(--lm-white);background:transparent;box-shadow:inset 0 0 0 var(--lm-bw) rgba(255,255,255,.4);border:0;cursor:pointer;transition:background-color var(--lm-dur-btn) var(--lm-ease)}
.bd-btn:hover{background:rgba(255,255,255,.08)}
.bd-paper .bd-btn{color:var(--lm-ink);box-shadow:inset 0 0 0 var(--lm-bw) var(--lm-line-strong)}
.bd-paper .bd-btn:hover{background:var(--lm-line-soft)}
.bd-btn.coral{border-radius:var(--lm-r);box-shadow:none;height:40px}
.bd-paper .card{background:var(--lm-white);border-radius:var(--lm-r);padding:24px;margin:0;box-shadow:var(--lm-shadow);overflow-x:auto}
.bd-paper .grid{display:grid;gap:16px;margin:16px 0}
.bd-paper .g2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.bd-paper .g3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
@media (max-width:600px){.bd-paper .g2,.bd-paper .g3{grid-template-columns:1fr}}
.bd-paper .block{margin:0 0 48px}
.big{font:var(--lm-t-h3);color:var(--lm-ink)}
.muted{color:var(--lm-ink-3)}.small{font:var(--lm-t-small)}.mono{font-family:var(--lm-mono);font-size:12px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;font:var(--lm-t-chip);padding:4px 10px;border-radius:var(--lm-r-sm);background:var(--lm-line-soft);color:var(--lm-ink-2)}
.chip.accent{background:var(--lm-coral-soft);color:var(--lm-red-deep)}
.badge{display:inline-block;font:var(--lm-t-chip);border-radius:var(--lm-r-sm);padding:2px 8px;box-shadow:inset 0 0 0 var(--lm-bw) var(--lm-line);color:var(--lm-ink-2);white-space:nowrap;vertical-align:middle}
.badge.measured::before,.badge.derived::before,.badge.assumption::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;margin:0 6px 1px 0;vertical-align:middle}
.badge.measured{box-shadow:inset 0 0 0 var(--lm-bw) var(--lm-pos)}.badge.measured::before{background:var(--lm-pos)}
.badge.derived{box-shadow:inset 0 0 0 var(--lm-bw) var(--lm-d4)}.badge.derived::before{background:var(--lm-d4)}
.badge.assumption{box-shadow:inset 0 0 0 var(--lm-bw) var(--lm-d5)}.badge.assumption::before{background:var(--lm-d5)}
.badge.confirmed{background:var(--lm-violet);color:var(--lm-white);box-shadow:none}
.kv{display:grid;grid-template-columns:150px 1fr;gap:6px 16px;font:var(--lm-t-small)}.kv>div:nth-child(odd){color:var(--lm-ink-3)}
@media (max-width:600px){.kv{grid-template-columns:1fr}}
.ev{font:var(--lm-t-caption);color:var(--lm-ink-3);margin-top:12px;border-top:var(--lm-bw) solid var(--lm-line-soft);padding-top:8px}
.ev a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--lm-ink-3)}
.bd-paper .card.purpose-hero{background:var(--lm-band);box-shadow:none;position:relative;overflow:hidden}
.purpose-hero::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--lm-grad-tile)}
.purpose-hero .big{font:var(--lm-t-h2);color:var(--lm-ink)}
.tri{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width:760px){.tri{grid-template-columns:1fr}}
.tri>div{background:var(--lm-surface);border-radius:var(--lm-r);padding:16px}.tri b{color:var(--lm-red-deep)}
.mot{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}@media (max-width:900px){.mot{grid-template-columns:1fr 1fr}}
.mot .card{padding:16px}
.score{font:var(--lm-t-h2);color:var(--lm-ink);margin:4px 0}.score small{font:var(--lm-t-small);color:var(--lm-ink-3)}
.meter{height:6px;background:var(--lm-line-soft);border-radius:3px;margin:6px 0 10px}.meter i{display:block;height:100%;border-radius:3px;background:var(--lm-d1)}
.mot .card.low .meter i{background:var(--lm-coral)}
.slider{position:relative;height:6px;background:var(--lm-line-soft);border-radius:3px;margin:12px 0 4px}
.slider i{position:absolute;top:-5px;width:16px;height:16px;border-radius:50%;background:var(--lm-d3);transform:translateX(-50%);box-shadow:0 0 0 3px var(--lm-white)}
.sl-l{display:flex;justify-content:space-between;font:var(--lm-t-caption);color:var(--lm-ink-3)}
.swatches{display:flex;gap:12px;flex-wrap:wrap}.sw{width:92px;font:var(--lm-t-caption)}.sw b{display:block;height:64px;border-radius:var(--lm-r);box-shadow:inset 0 0 0 var(--lm-bw) var(--lm-line);margin-bottom:6px}
.shots{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.shots img{width:100%;border-radius:var(--lm-r);box-shadow:var(--lm-shadow)}
.bd-paper table{width:100%;border-collapse:collapse;font:var(--lm-t-small)}
.bd-paper th,.bd-paper td{text-align:left;padding:10px 12px;border-bottom:var(--lm-bw) solid var(--lm-line-soft);vertical-align:top}
.bd-paper th{font:var(--lm-t-label);color:var(--lm-ink-2);background:var(--lm-surface)}
.bd-paper td .mono{white-space:pre-wrap;word-break:break-word;max-height:140px;overflow:auto;display:block}
.pre{white-space:pre-wrap;background:var(--lm-surface);border-radius:var(--lm-r);padding:16px;font:var(--lm-t-small)}
.bd-main textarea{border:var(--lm-bw) solid var(--lm-line);border-radius:var(--lm-r-sm);padding:12px}
.notice{max-width:var(--lm-container);margin:16px auto;padding:14px 20px;border-radius:var(--lm-r);background:var(--lm-coral-soft);color:var(--lm-ink);font:var(--lm-t-small)}
.hidden{display:none!important}.err{color:var(--lm-red-deep)}
.list .item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 4px;border-bottom:var(--lm-bw) solid var(--lm-line-soft);color:var(--lm-ink);transition:background-color var(--lm-dur-color) ease}
.list .item:hover{background:var(--lm-white)}
.list .item b{font:var(--lm-t-h3)}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 16px}
.tabs button{font:var(--lm-t-label);height:36px;padding:0 16px;border:0;border-radius:var(--lm-r-pill);background:var(--lm-white);color:var(--lm-ink-2);box-shadow:inset 0 0 0 var(--lm-bw) var(--lm-line);cursor:pointer}
.tabs button.on{background:var(--lm-violet);color:var(--lm-white);box-shadow:none}
.bd-empty{display:flex;gap:24px;align-items:center;background:var(--lm-white);border-radius:var(--lm-r);padding:32px;box-shadow:var(--lm-shadow)}
.bd-empty b{font:var(--lm-t-h1);color:var(--lm-line)}
.bd-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--lm-charcoal);color:var(--lm-white);padding:12px 20px;border-radius:var(--lm-r-pill);font:var(--lm-t-label);opacity:0;transition:opacity .25s;z-index:50;pointer-events:none;box-shadow:var(--lm-shadow)}
.bd-toast.on{opacity:1}

@media (prefers-reduced-motion:reduce){
  .bd-main *,.bd-main *::before{animation:none!important;transition:none!important}
  .bd-rung{stroke-dashoffset:0}
}

/* report page: the document sits on the light section; downloads at the end */
.bd-docsec{padding-top:8px}
.bd-docsec .bdoc{padding:0;max-width:none}
.bd-docsec .bd-tabs{top:var(--lm-gnb-h,56px);background:var(--lm-surface)}
.bd-dl{margin:48px 0 0;padding:32px;border-radius:var(--lm-r-lg);background:var(--lm-white);box-shadow:var(--lm-shadow)}
.bd-dlgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0 12px}
@media (max-width:900px){.bd-dlgrid{grid-template-columns:1fr 1fr}}
.bd-dlc{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:var(--lm-r);box-shadow:inset 0 0 0 var(--lm-bw) var(--lm-line);color:var(--lm-ink);text-decoration:none;transition:background-color var(--lm-dur-color) ease}
.bd-dlc:hover{background:var(--lm-violet-soft)}
.bd-dlc b{font:var(--lm-t-h3)}.bd-dlc span{font:var(--lm-t-small);color:var(--lm-ink-3)}.bd-dlc i{font:var(--lm-t-chip);font-style:normal;color:var(--lm-violet)}
.bd-dlc.main{background:var(--lm-violet);color:var(--lm-white);box-shadow:none}.bd-dlc.main span,.bd-dlc.main i{color:var(--lm-white)}
.bd-dlc.main:hover{background:var(--lm-violet-hover)}
.bd-dlrow{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.bd-rend{margin:48px 0 0;padding:32px;border-radius:var(--lm-r-lg);background:var(--lm-white);box-shadow:var(--lm-shadow)}
.bd-rend .bd-dlrow{align-items:center}.bd-rnproj{margin-left:auto;color:var(--lm-ink-3)}
.bd-dlsub{font:var(--lm-t-label);color:var(--lm-ink-2);margin:24px 0 0;padding-top:16px;border-top:var(--lm-bw) solid var(--lm-line-soft)}
.bd-studio{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:12px}
.bd-studio figure{margin:0;background:var(--lm-surface);border-radius:var(--lm-r);overflow:hidden;box-shadow:var(--lm-shadow)}
.bd-studio img,.bd-studio video{width:100%;display:block;max-height:420px;object-fit:contain;background:var(--lm-charcoal)}
.bd-studio figcaption{font:var(--lm-t-caption);padding:6px 10px}
.bd-rbar{transform-box:fill-box;transform-origin:left;animation:bd-rbar .7s var(--lm-ease-out) both}
@keyframes bd-rbar{from{transform:scaleX(0)}}
@media (prefers-reduced-motion:reduce){.bd-rbar{animation:none}}
/* category set: mode switch, candidate picker, position view */
.bd-mode{display:inline-flex;gap:4px;padding:4px;background:var(--lm-surface);border-radius:var(--lm-r-pill);margin:0 0 20px}
.bd-mode button{border:0;background:none;padding:8px 16px;border-radius:var(--lm-r-pill);font:var(--lm-t-label);color:var(--lm-ink-2);cursor:pointer}
.bd-mode button.on{background:var(--lm-violet);color:var(--lm-white)}.bd-mode small{font-weight:400;opacity:.8}
.bd-kind{display:flex;gap:20px;margin:0 0 12px;font:var(--lm-t-small)}.bd-kind input{accent-color:var(--lm-violet)}
.bd-set{margin:20px 0 0;padding:20px;border:var(--lm-bw) solid var(--lm-line);border-radius:var(--lm-r)}
.bd-set__head{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 12px}
.bd-cands{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.bd-cands li{display:grid;grid-template-columns:1fr 150px 110px 110px;gap:12px;align-items:center;padding:8px 12px;border:var(--lm-bw) solid var(--lm-line-soft);border-radius:var(--lm-r-sm)}
.bd-cands li.on{border-color:var(--lm-violet);background:var(--lm-violet-soft)}.bd-cands li.own{border-width:1.5px}
.bd-cand{display:flex;gap:8px;align-items:center;cursor:pointer}.bd-cand input{accent-color:var(--lm-violet)}
.bd-cand__v{font:var(--lm-t-small);text-align:right}.bd-cand__v small{color:var(--lm-muted)}
.bd-cand__s{font:var(--lm-t-caption);color:var(--lm-muted)}
.up{color:#5E8A2E}.down{color:#C81414}
.bd-own{display:inline-block;padding:1px 8px;border-radius:var(--lm-r-pill);background:var(--lm-coral-soft);color:#C81414;font:700 11px/18px var(--lm-font)}
.bd-mkown{border:0;background:none;color:var(--lm-ink-3);font:var(--lm-t-caption);cursor:pointer;text-decoration:underline}
.bd-set__add{display:flex;gap:8px;margin:12px 0}.bd-set__add input{flex:1;height:40px;padding:0 12px;border:var(--lm-bw) solid var(--lm-line);border-radius:var(--lm-r-sm);font:var(--lm-t-small)}
.chip.own{background:var(--lm-coral-soft);color:#C81414}
.bd-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:12px}
.bd-setv .card{margin:0 0 24px}
.bd-setgrid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;align-items:start;margin-top:12px}
.bd-scatter{width:100%;height:auto}.bd-dot{animation:bd-pop .5s var(--lm-ease-out) both}@keyframes bd-pop{from{opacity:0;transform:scale(.6)}}
.bd-dot{transform-box:fill-box;transform-origin:center}
.bd-pt,.bd-fit{width:100%;border-collapse:collapse;font:var(--lm-t-small)}
.bd-pt th,.bd-pt td,.bd-fit th,.bd-fit td{padding:8px;border-bottom:var(--lm-bw) solid var(--lm-line-soft);text-align:left}
.bd-pt td i,.bd-fit td i,.bd-why i,.bd-dnac i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:middle}
.bd-pt tr.own td,.bd-fit tr.own td:first-child{font-weight:700}.bd-fit tr.own{outline:1.5px solid #FF5B60;outline-offset:-1.5px}
.bd-fit th small{display:block;font-weight:400;color:var(--lm-muted);font-size:11px}
.bd-fit td{text-align:center}.bd-fit td:first-child{text-align:left}.bd-fit b.top{text-decoration:underline;text-underline-offset:3px}
.bd-mini{display:inline-block;width:60px;height:6px;background:var(--lm-line-soft);border-radius:3px;margin-right:8px;vertical-align:middle;overflow:hidden}.bd-mini i{display:block;height:100%}
.bd-why{list-style:none;margin:0;padding:0;font:var(--lm-t-small)}.bd-why li{padding:8px 0;border-bottom:var(--lm-bw) solid var(--lm-line-soft)}
.bd-moves{margin:16px 0;padding-left:20px}.bd-moves li{margin:0 0 12px}.bd-moves p{margin:4px 0;color:var(--lm-ink-2)}.bd-moves small{color:var(--lm-muted)}
.bd-diff{border-left:3px solid;padding:4px 0 4px 12px}
.bd-dnas{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:12px}
.bd-dnac{display:flex;flex-direction:column;gap:4px;padding:16px;border:var(--lm-bw) solid var(--lm-line);border-radius:var(--lm-r);text-decoration:none;color:var(--lm-ink)}
.bd-dnac:hover{border-color:var(--lm-violet)}.bd-dnac small{color:var(--lm-muted)}.bd-dnac span:last-child{color:var(--lm-violet);font:var(--lm-t-label)}
.bd-dnac.err{border-style:dashed}
@media (max-width:900px){.bd-setgrid{grid-template-columns:1fr}.bd-cands li{grid-template-columns:1fr auto}.bd-cand__s,.bd-mkown{grid-column:1/-1}}
@media (prefers-reduced-motion:reduce){.bd-dot{animation:none}}
.bd-dnac .bd-own{align-self:flex-start}
/* category set: live progress */
.bd-bar.live i{background-image:linear-gradient(90deg,#C81414,#FF5B60),repeating-linear-gradient(45deg,rgba(255,255,255,.18) 0 10px,transparent 10px 20px);background-blend-mode:overlay;background-size:auto,28px 28px;animation:bd-stripe 1s linear infinite}
@keyframes bd-stripe{to{background-position:0 0,28px 0}}
.bd-setmeta{display:flex;gap:16px;align-items:baseline;margin:10px 0 0;color:var(--lm-muted);font:var(--lm-t-small)}.bd-setmeta b{color:var(--lm-white);font:700 20px/1 var(--lm-font)}
.bd-sphase{list-style:none;display:flex;gap:8px;flex-wrap:wrap;padding:0;margin:20px 0 0}
.bd-sphase li{display:flex;gap:8px;align-items:center;padding:8px 14px;border-radius:var(--lm-r-pill);color:var(--lm-muted);font:var(--lm-t-small);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.bd-sphase li i{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font:700 11px/1 var(--lm-font);font-style:normal;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.3)}
.bd-sphase li.on{color:var(--lm-white);box-shadow:inset 0 0 0 1.5px var(--lm-coral)}.bd-sphase li.on i{box-shadow:inset 0 0 0 1.5px var(--lm-coral);animation:bd-pulse 1.2s infinite}
.bd-sphase li.ok{color:var(--lm-line)}.bd-sphase li.ok i{background:var(--lm-coral);color:#fff;box-shadow:none}
.bd-srows{display:grid;gap:10px;margin:20px 0 0}
.bd-srow{display:grid;grid-template-columns:200px 1fr 260px;gap:16px;align-items:center;padding:12px 16px;border-radius:var(--lm-r);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:box-shadow .3s}
.bd-srow.run{box-shadow:inset 0 0 0 1.5px rgba(255,91,96,.6)}
.bd-srow__n{display:flex;gap:8px;align-items:center;color:var(--lm-white)}.bd-srow__n b{font:700 15px/1.3 var(--lm-font)}
.bd-sdot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.25);flex:none}
.bd-srow.run .bd-sdot{background:#FF5B60;animation:bd-ping 1.4s ease-out infinite}
.bd-srow.done .bd-sdot{background:#8CBD57}.bd-srow.err .bd-sdot{background:#C81414}
@keyframes bd-ping{0%{box-shadow:0 0 0 0 rgba(255,91,96,.6)}100%{box-shadow:0 0 0 10px rgba(255,91,96,0)}}
.bd-srow__bar{height:6px;border-radius:3px;background:rgba(255,255,255,.1);overflow:hidden}
.bd-srow__bar i{display:block;height:100%;width:0;background:#FF5B60;transition:width .8s var(--lm-ease)}
.bd-srow.run .bd-srow__bar i{background-image:repeating-linear-gradient(45deg,#FF5B60 0 8px,#FF7A7E 8px 16px);background-size:22px 22px;animation:bd-stripe2 .8s linear infinite}
@keyframes bd-stripe2{to{background-position:22px 0}}
.bd-srow.done .bd-srow__bar i{background:#8CBD57}
.bd-srow__s{display:flex;flex-direction:column;gap:6px;color:var(--lm-muted);font:var(--lm-t-small)}.bd-srow.run .lab{color:var(--lm-white)}
.ticks{display:flex;gap:4px}.ticks i{flex:1;height:3px;border-radius:2px;background:rgba(255,255,255,.12)}.ticks i.ok{background:rgba(255,91,96,.7)}.ticks i.on{background:#FF5B60;animation:bd-pulse 1.2s infinite}
.bd-srow.done .ticks i{background:#8CBD57}
@media (max-width:900px){.bd-srow{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.bd-bar.live i,.bd-srow .bd-srow__bar i,.bd-sdot,.ticks i{animation:none!important}}
