/* Viewing kit (Y136–Y142) – same tokens as app.css (Vilac-style: one accent, soft cards, big touch targets) */
.vk h1{margin-bottom:.2rem}.vk-intro{margin:0}
.vk-local{display:inline-flex;align-items:center;gap:.4rem;margin:.6rem 0 .2rem;padding:.3rem .75rem;border-radius:99px;background:var(--soft);color:var(--acc2);font-size:.9rem;font-weight:600}
.vk-local svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.vk-local a{color:inherit}
.vk-save[hidden]{display:none}.vk-save{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:.8rem 0;padding:.45rem .6rem;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.vk-save-l{color:var(--muted);font-size:.85rem;font-weight:600}.vk-save select{min-height:40px;padding:.3rem .5rem;font-size:.95rem;max-width:min(44vw,18rem)}
.vk-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin:1rem 0}
.vk-grid a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;min-height:96px;padding:.7rem .3rem;border-radius:var(--r);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--fg);text-decoration:none;font-weight:650;font-size:.92rem;text-align:center;line-height:1.2}
.vk-grid a svg{width:34px;height:34px;padding:9px;box-sizing:content-box;border-radius:14px;background:var(--soft);fill:none;stroke:var(--acc);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.vk-grid a:hover,.vk-grid a.on{border-color:var(--acc)}.vk-grid a.on svg{background:var(--acc);stroke:var(--on-acc)}
@media (max-width:899px){body.vk-open .vk-grid,body.vk-open .vk-intro,body.vk-open .vk h1,body.vk-open .crumbs{display:none}.vk-grid{grid-template-columns:repeat(4,1fr);gap:.5rem}.vk-grid a{min-height:86px;font-size:.82rem}}
@media (max-width:360px){.vk-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:900px){.vk{display:grid;grid-template-columns:260px 1fr;column-gap:1.5rem;align-items:start}.vk>*{grid-column:1/-1}
 body.vk-open .vk-grid{grid-column:1;grid-row:span 3;grid-template-columns:1fr 1fr;position:sticky;top:4.5rem;margin-top:1rem}body.vk-open .vk-grid a{min-height:84px}
 body.vk-open .vk-p{grid-column:2}}
.vk-p{padding:1rem 1.1rem 1.2rem}.vk-p>header{display:flex;align-items:center;gap:.7rem;margin-bottom:.3rem}.vk-p h2{margin:0;font-size:1.35rem}.vk-p h2:focus{outline:none}
.vk-back{text-decoration:none;color:var(--acc);font-weight:700;padding:.35rem .7rem;border-radius:99px;background:var(--soft);font-size:.92rem}
@media (min-width:900px){.vk-back{display:none}}
.vk-lead{color:var(--muted);margin:.2rem 0 .8rem}
.vk-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.6rem 0}.vk-row input{flex:1;min-width:12rem}
button.ghost,.ghost{background:transparent;color:var(--acc);border:1.5px solid var(--acc);font-weight:700;border-radius:10px}
button.sm,.sm{min-height:40px;padding:.35rem .8rem;font-size:.92rem}.warnb{color:var(--warn);border-color:var(--warn)}
button:disabled{opacity:.45;cursor:default}
.vk-meter{text-align:center;padding:1rem 0 .4rem}.vk-meter output{display:block;font-size:4.2rem;font-weight:800;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.vk-meter small{color:var(--muted);font-weight:600}.vk-prog{height:6px;border-radius:99px;background:var(--soft);margin:.8rem auto 0;max-width:320px;overflow:hidden}.vk-prog i{display:block;height:100%;width:0;background:var(--acc);transition:width .1s linear}
.vk-big{font-size:1.45rem;font-weight:800;letter-spacing:-.01em;margin:.2rem 0;font-variant-numeric:tabular-nums}.vk-big small{display:block;font-size:.85rem;font-weight:600;color:var(--muted);letter-spacing:0}
output.vk-big{display:inline-block;min-width:6ch}
.vk-res{border-top:1px solid var(--line);margin-top:.8rem;padding-top:.6rem}.vk-res.vk-ask .vk-big{color:var(--warn)}
.vk-dl{display:grid;gap:.1rem;margin:.6rem 0}.vk-dl>div{display:grid;grid-template-columns:minmax(8rem,38%) 1fr;gap:.6rem;padding:.45rem 0;border-bottom:1px dashed var(--line)}.vk-dl dt{color:var(--muted);font-size:.92rem}.vk-dl dd{margin:0;font-weight:600}.vk-dl small{color:var(--muted);font-weight:500}
.vk-saved{display:inline-block;margin:.4rem 0 0;padding:.2rem .6rem;border-radius:99px;background:var(--soft);color:var(--acc2);font-size:.85rem;font-weight:600}
.vk-more{margin:.8rem 0;border:1px solid var(--line);border-radius:12px;padding:.5rem .8rem}.vk-more summary{cursor:pointer;font-weight:650}.vk-more label{margin:.5rem 0}
.vk-pc{margin-top:1.2rem;border-top:1px solid var(--line);padding-top:.6rem}.vk-pc h3,.vk-p h3{font-size:1.05rem;margin:.4rem 0}
.vk-pcf{display:flex;gap:.5rem;align-items:flex-end;margin:.5rem 0}.vk-pcf label{flex:1}.vk-pcf input{width:100%;box-sizing:border-box;text-transform:uppercase}
.vk-dirs{display:grid;grid-template-columns:repeat(8,1fr);gap:.3rem;margin:.6rem 0}.vk-dirs button{padding:.3rem 0;min-height:40px}
.vk-two{display:grid;gap:.8rem}@media (min-width:600px){.vk-two{grid-template-columns:1fr 1fr}}
.vk-plot{display:block;width:min(100%,320px);margin:.6rem auto;overflow:visible}
.vk-plot .ring{fill:none;stroke:var(--line)}.vk-plot .lab{fill:var(--muted);font-size:11px;font-weight:700;text-anchor:middle}
.vk-plot .win{fill:color-mix(in srgb,var(--gold) 22%,transparent)}.vk-plot .face{stroke:var(--gold);stroke-width:2.5;stroke-linecap:round}
.vk-plot polyline{fill:none;stroke-width:2.5;stroke-linecap:round}.vk-plot .d0{stroke:var(--acc)}.vk-plot .d1{stroke:var(--gold);stroke-dasharray:5 4}.vk-plot .d2{stroke:var(--muted);stroke-dasharray:2 4}.vk-plot .now{fill:var(--gold);stroke:var(--card);stroke-width:2}
.vk-seg{display:inline-flex;border:1.5px solid var(--acc);border-radius:10px;overflow:hidden;margin:.3rem 0 .6rem}.vk-seg button{background:transparent;color:var(--acc);border-radius:0;min-height:40px;padding:.35rem .9rem;font-size:.95rem}.vk-seg button.on{background:var(--acc);color:var(--on-acc)}
.vk-bub{display:block;width:min(70vw,240px);margin:.4rem auto}.vk-bub .o{fill:var(--soft);stroke:var(--line);stroke-width:2}.vk-bub .t{fill:none;stroke:var(--acc);stroke-width:2;stroke-dasharray:4 4}.vk-bub .x{stroke:var(--line)}
.vk-bub .b{fill:var(--gold);transition:cx .15s,cy .15s}.vk-bub .b.ok{fill:var(--acc)}
#l-now{display:block;text-align:center}
.vk-file input{font-size:.95rem;padding:.4rem 0}
.vk-step{font-weight:650;margin:.6rem 0}.vk-canvas canvas{display:block;max-width:100%;border-radius:12px;touch-action:manipulation;background:var(--soft)}
.vk-form{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.vk-form label.chk{grid-column:1/-1}.vk-form label{font-size:.9rem}
@media (max-width:420px){.vk-form{grid-template-columns:1fr 1fr}}
.vk-mapw{position:relative;margin:.4rem 0}.vk-map{height:min(58vh,460px);border-radius:12px;border:1px solid var(--line);z-index:0}
.vk-ul{margin:.3rem 0;padding-inline-start:1.1rem}.vk-ul small{display:block;color:var(--muted)}
.vk-btnlink{display:inline-block;margin:.2rem .3rem .2rem 0;padding:.5rem .9rem;border-radius:10px;border:1.5px solid var(--acc);color:var(--acc);font-weight:700;text-decoration:none}
.vk-home{padding:.7rem .9rem}.vk-home header{display:flex;gap:.5rem;align-items:center}.vk-hn{flex:1;font-weight:700;border-color:transparent!important;background:transparent;padding-inline:.2rem!important}
.vk-stars{display:flex}.vk-stars button{background:none;color:var(--line);padding:0 .1rem;min-height:40px;font-size:1.35rem}.vk-stars button.on{color:var(--gold)}
.vk-room{border-top:1px solid var(--line);padding:.4rem 0}.vk-room summary{cursor:pointer;font-weight:650;padding:.3rem 0}.vk-room summary small{color:var(--muted);font-weight:500}
.vk-notes{width:100%;box-sizing:border-box;font:inherit;padding:.5rem .6rem;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--fg)}
.vk-ph{display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0}.vk-ph img{width:88px;height:88px;object-fit:cover;border-radius:10px;background:var(--soft)}
.vk-addph{display:flex;align-items:center;justify-content:center;width:88px;height:88px;border:1.5px dashed var(--acc);border-radius:10px;color:var(--acc);font-size:.88rem;cursor:pointer}.vk-addph input,.vk-imp input{position:absolute;opacity:0;width:1px;height:1px}
.vk-imp{position:relative;display:inline-flex;align-items:center;cursor:pointer}
.vk-scroll{overflow-x:auto}.vk-cmp{border-collapse:collapse;width:100%;min-width:20rem;font-size:.93rem}.vk-cmp th,.vk-cmp td{padding:.45rem .5rem;border-bottom:1px solid var(--line);text-align:start;vertical-align:top}.vk-cmp thead th{font-weight:800}.vk-cmp tbody th{color:var(--muted);font-weight:600;white-space:nowrap}.vk-cmp small{display:block;color:var(--muted)}
.vk-priv{margin-top:1.6rem;padding:1rem 1.1rem;border-radius:var(--r);background:var(--soft)}.vk-priv h2{margin-top:0;font-size:1.15rem}.vk-priv ul{margin:.3rem 0;padding-inline-start:1.1rem}
.vk-ar{position:fixed;inset:0;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:1rem;color:#fff;font-weight:700;text-shadow:0 1px 3px #000}
.vk-ar-x{position:absolute;top:50%;left:50%;width:36px;height:36px;margin:-18px;border:3px solid #fff;border-radius:50%;opacity:.5}.vk-ar.hit .vk-ar-x{opacity:1;border-color:#4cc3a7}
.vk-ar-o{margin-top:2rem;background:rgba(0,0,0,.45);padding:.4rem .8rem;border-radius:10px}.vk-ar-b{display:flex;gap:.6rem;margin-bottom:2rem}
@media print{body.vk-printing header.top,body.vk-printing footer,body.vk-printing .vk>*:not(#p-sheet),body.vk-printing .vk-exp,body.vk-printing .vk-addph,body.vk-printing .vk-back,body.vk-printing [data-delh]{display:none!important}
 body.vk-printing #p-sheet{display:block!important;border:0;box-shadow:none}body.vk-printing details{display:block}body.vk-printing details>*{display:block}}
