/* ch7.css — chapter 7 widgets. --lk-* tokens only. */
.c7-btns{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;margin:.2rem 0 .8rem}
.c7-btns button{font-family:var(--lk-utility);font-size:.82rem;font-weight:600;cursor:pointer;padding:.35rem .8rem;border-radius:3px;border:1px solid var(--lk-cobalt);background:var(--lk-paper-light);color:var(--lk-cobalt)}
.c7-btns button[aria-pressed="true"]{background:var(--lk-cobalt);color:var(--lk-paper-light)}
.c7-btns button:disabled{opacity:.4;cursor:not-allowed}
.c7-btns button:focus-visible{outline:2px solid var(--lk-cobalt);outline-offset:2px}
.c7-sep{width:1px;height:1.4rem;background:var(--lk-rule-soft);margin:0 .2rem}
.c7-mats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:.9rem}
.c7-mlabel{font:600 .75rem var(--lk-mono);color:var(--lk-ink);margin-bottom:.3rem}
.c7-grid{display:grid;gap:2px;aspect-ratio:1;border:1px solid var(--lk-rule);padding:2px;background:var(--lk-paper)}
.c7-cell{display:block;border:0;padding:0;min-width:0;min-height:0;background:var(--lk-paper-light);outline:1px solid var(--lk-rule-soft);transition:background .14s}
.c7-cell.strip{background:var(--lk-hl)}
.c7-cell.done{background:var(--lk-hl);outline-color:var(--lk-cobalt)}
.c7-cell.now{background:var(--lk-cobalt)}
button.c7-cbtn{cursor:pointer}
button.c7-cbtn:hover{background:var(--lk-hl)}
button.c7-cbtn.own{background:var(--lk-vermilion)}
button.c7-cbtn:focus-visible{outline:2px solid var(--lk-cobalt);outline-offset:1px;position:relative;z-index:1}
body.lk .c7-check{flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.5rem;align-self:end}
.c7-check span{flex:1;min-width:0}
.c7-check input{accent-color:var(--lk-cobalt);width:1rem;height:1rem}
@media(max-width:560px){
  .c7-mats{gap:.5rem}
  .c7-mlabel{font-size:.62rem}
  #w-tilewalk .w-out,#w-tilecalc .w-out{grid-template-columns:repeat(2,minmax(0,1fr))}
  #w-tilewalk .w-stat .v,#w-tilecalc .w-stat .v{font-size:1rem}
}
@media(prefers-reduced-motion:reduce){.c7-cell{transition:none}}
