/* The diner's menu — small, fast, readable on a phone at a dim table. */
.tcm{--m-ink:#14503A;--m-tint:#EEF2EE;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#111512;background:#fff;font-size:15px;line-height:1.45}
.tcm-charcoal{--m-ink:#1E2320;--m-tint:#F1F1EF}
.tcm-tomato{--m-ink:#A8321E;--m-tint:#FBEFEA}
.tcm-harbour{--m-ink:#1D4A73;--m-tint:#EDF2F8}
.tcm-head{background:var(--m-ink);color:#fff;padding:20px 16px 18px;display:flex;gap:12px;align-items:center;position:relative}
.tcm-logo{width:44px;height:44px;object-fit:cover;background:#fff;border-radius:4px;flex:none}
.tcm h1.tcm-name{font-family:"Archivo",Inter,system-ui,sans-serif;font-stretch:75%;font-weight:800;text-transform:uppercase;letter-spacing:-.01em;font-size:24px;line-height:1.05;margin:0;overflow-wrap:anywhere}
.tcm-sub{margin:4px 0 0;opacity:.85;font-size:13px}
.tcm-table{margin-left:auto;align-self:flex-start;background:#F2B230;color:#111512;font:600 12px/1 "IBM Plex Mono",ui-monospace,monospace;padding:6px 8px;border-radius:2px;white-space:nowrap}
.tcm-tabs{position:sticky;top:0;z-index:2;display:flex;gap:4px;overflow-x:auto;background:#fff;border-bottom:2px solid var(--m-ink);padding:8px 12px;scrollbar-width:none}
.tcm-tabs::-webkit-scrollbar{display:none}
.tcm-tabs a{flex:none;text-decoration:none;color:var(--m-ink);font-weight:600;font-size:13px;padding:6px 10px;border:2px solid transparent;border-radius:2px;white-space:nowrap}
.tcm-tabs a.on{border-color:var(--m-ink);background:var(--m-tint)}
.tcm-tools{padding:12px 16px 0;display:grid;gap:8px}
.tcm-tools input{font:inherit;padding:10px 12px;border:2px solid #D5DBD6;border-radius:4px;width:100%;box-sizing:border-box}
.tcm-tools input:focus{outline:none;border-color:var(--m-ink)}
.tcm-filters{display:flex;gap:6px;flex-wrap:wrap}
.tcm-filters button{font:600 12px/1 Inter,system-ui,sans-serif;padding:7px 10px;border:2px solid #D5DBD6;background:#fff;border-radius:99px;color:#111512;cursor:pointer}
.tcm-filters button[aria-pressed=true]{border-color:var(--m-ink);background:var(--m-ink);color:#fff}
.tcm-cat{padding:18px 16px 4px;scroll-margin-top:52px}
.tcm .tcm-cat h2{font-family:"Archivo",Inter,system-ui,sans-serif;font-stretch:75%;font-weight:800;text-transform:uppercase;font-size:18px;letter-spacing:.02em;color:var(--m-ink);margin:0 0 6px;padding-bottom:6px;border-bottom:2px solid var(--m-ink)}
.tcm-cat ul{list-style:none;margin:0;padding:0}
.tcm-dish{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #D5DBD6}
.tcm-dish:last-child{border-bottom:0}
.tcm-dish img{width:96px;height:72px;object-fit:cover;border-radius:4px;flex:none;background:var(--m-tint)}
.tcm-body{flex:1;min-width:0}
.tcm-row{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.tcm-row strong{font-weight:650;overflow-wrap:anywhere}
.tcm-price{font:500 14px/1.2 "IBM Plex Mono",ui-monospace,monospace;font-variant-numeric:tabular-nums;white-space:nowrap}
.tcm-dish p{margin:3px 0 0;color:#4a524c;font-size:13.5px}
.tcm-tags{display:flex;gap:4px;margin-top:6px}
.tcm-tags span{font:600 10.5px/1 "IBM Plex Mono",ui-monospace,monospace;border:1.5px solid var(--m-ink);color:var(--m-ink);padding:3px 5px;border-radius:2px}
.tcm-empty,.tcm-none{padding:24px 16px;color:#4a524c}
.tcm-foot{padding:20px 16px 28px;text-align:center;font-size:12px;color:#6b736d}
.tcm-dish[hidden],.tcm-cat[hidden]{display:none}
