/* 口コミ39 店舗アプリ (mobile first). Builds on k39.css; no inline styles (CSP). */
body.storeapp{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}
.apphead{position:sticky;top:0;z-index:5;background:var(--card);border-bottom:1px solid var(--line);padding:.5rem 1rem;display:flex;gap:.6rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.apptitle{font-weight:700}
.apphead select{max-width:60vw;padding:.35em .5em}
.appmain{padding-top:.4rem}
.appnav{position:fixed;left:0;right:0;bottom:0;z-index:5;display:grid;grid-template-columns:repeat(5,1fr);background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px)}
.appnav a{text-align:center;padding:.7em .2em;font-size:.78rem;color:var(--soft);text-decoration:none}
.appnav a.on{color:var(--accent);font-weight:700}
.kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}
@media (min-width:640px){.kpis{grid-template-columns:repeat(4,1fr)}}
.kpi{border:1px solid var(--line);border-radius:12px;padding:.6em .7em;background:var(--card)}
.kpi b{display:block;font-size:1.35rem;line-height:1.3}
.kpi span{color:var(--soft);font-size:.78rem}
.resp{border:1px solid var(--line);border-radius:12px;padding:.7em;margin:.6em 0;background:var(--card)}
.resp dl{margin:.3em 0;display:grid;grid-template-columns:auto 1fr;gap:.1em .6em;font-size:.88rem}
.resp dt{color:var(--soft)}.resp dd{margin:0}
.chip{display:inline-block;font-size:.75rem;border:1px solid var(--line);border-radius:999px;padding:0 .55em;margin:.1em .2em .1em 0}
.chip.confirmed{border-color:var(--ok);color:var(--ok)}.chip.drafted{border-color:var(--warn);color:var(--warn)}
.qrbox{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.storeline{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}
.storename{font-weight:700;font-size:1rem}
.menutag{border-top:1px dashed var(--line);margin-top:.4rem;padding-top:.3rem}
.chip.menu{border-color:var(--ok);color:var(--ok)}
.mfix{display:flex;flex-wrap:wrap;gap:.2rem .8rem;margin-top:.3rem}
.mfix .row,.mfix .hint{flex-basis:100%}
label.chk{display:inline-flex;align-items:center;gap:.25rem;font-weight:400;margin:0}
table.menu input{width:100%;min-width:7em}
tr.retired td{opacity:.55}
table.data td.num,table.data th.num{text-align:right}
table.data tr.low td{color:var(--soft)}
.mitem{display:inline-flex;align-items:center;gap:.3rem}
