/* Coffee and restaurant browse pages (places.js) */
.cxp-root{display:flex;flex-direction:column;gap:var(--sp-12);}
.cxp-head p{max-width:62ch;}
.cxp-bar{display:flex;gap:var(--sp-8);flex-wrap:wrap;}
.cxp-search{flex:1 1 240px;min-width:0;height:42px;padding:0 var(--sp-16);border-radius:var(--r-pill);border:1px solid var(--hairline);background:var(--card);color:var(--bone);font:inherit;font-size:14px;}
.cxp-search:focus{outline:2px solid var(--signal);outline-offset:1px;}
.cxp-sort{height:42px;padding:0 var(--sp-12);border-radius:var(--r-pill);border:1px solid var(--hairline);background:var(--card);color:var(--bone);font-family:var(--font-mono);font-size:12px;}
.cxp-filters{display:flex;flex-direction:column;gap:var(--sp-8);}
.cxp-frow{display:flex;gap:var(--sp-8);align-items:flex-start;}
.cxp-flabel{flex:0 0 64px;padding-top:6px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ash);}
.cxp-chips{display:flex;flex-wrap:wrap;gap:6px;min-width:0;}
.cxp-clear{align-self:flex-start;background:none;border:0;color:var(--signal-text);font-family:var(--font-mono);font-size:12px;cursor:pointer;padding:4px 0;text-decoration:underline;}
.cxp-count{font-family:var(--font-mono);font-size:12px;color:var(--fog);}
.cxp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--sp-12);}
.cxp-card{appearance:none;text-align:left;font:inherit;color:inherit;cursor:pointer;border:1px solid transparent;min-height:0;flex:0 0 auto;}
.cxp-card:hover{background:var(--card-hover,var(--canvas-raised));border-color:var(--hairline);}
.cxp-card:focus-visible{outline:2px solid var(--signal);outline-offset:2px;}
.cxp-cardtop{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-8);font-family:var(--font-mono);font-size:12px;}
.cxp-rate{color:var(--bone);}.cxp-rate small{color:var(--ash);font-size:11px;margin-left:2px;}
.cxp-rate.big{font-size:20px;}.cxp-rate.big small{font-size:13px;}
.cxp-star{color:#f2b01e;}
.cxp-status{font-size:11px;padding:2px 8px;border-radius:var(--r-pill);border:1px solid var(--hairline);color:var(--fog);white-space:nowrap;}
.cxp-status.on{color:#1a8a4a;border-color:currentColor;}
:root[data-theme="dark"] .cxp-status.on,body[data-world] .cxp-status.on{color:#4cd98a;}
.cxp-name{margin:2px 0 0;font-size:18px;line-height:1.25;}
.cxp-ar{color:var(--fog);font-size:14px;}.cxp-ar.big{font-size:20px;margin-top:2px;}
.cxp-sub{font-size:13px;color:var(--fog);}
.cxp-bits{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px;}
.cxp-bits span,.cxp-tags span{font-size:12px;padding:3px 10px;border-radius:var(--r-pill);background:var(--canvas-raised);color:var(--bone);}
.cxp-tags{display:flex;flex-wrap:wrap;gap:6px;}
.cxp-tags i{font-style:normal;color:var(--ash);margin-left:4px;font-family:var(--font-mono);font-size:11px;}
.cxp-more{align-self:center;}
.cxp-back{align-self:flex-start;background:none;border:0;color:var(--signal-text);font-family:var(--font-mono);font-size:13px;cursor:pointer;padding:var(--sp-4) 0;}
.cxp-detail{background:var(--card);border-radius:var(--r-card);padding:var(--sp-24);display:flex;flex-direction:column;gap:var(--sp-12);}
.cxp-detail h2{margin:0;font-size:32px;line-height:1.1;letter-spacing:-.02em;font-weight:600;color:var(--bone);}
.cxp-detail .eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--signal-text);}
.cxp-ratingrow{display:flex;align-items:center;gap:var(--sp-12);flex-wrap:wrap;color:var(--fog);font-size:14px;}
.cxp-actions{display:flex;flex-wrap:wrap;gap:var(--sp-8);}
.cxp-btn{display:inline-flex;align-items:center;height:38px;padding:0 var(--sp-16);border-radius:var(--r-pill);border:1px solid var(--hairline);color:var(--bone);text-decoration:none;font-size:13px;font-weight:600;background:transparent;}
.cxp-btn:hover{background:var(--canvas-raised);}
.cxp-btn.primary{background:var(--signal);border-color:var(--signal);color:#fff;}
:root[data-theme="dark"] .cxp-btn.primary{color:#141414;}
.cxp-lead{margin:0;color:var(--bone);font-size:16px;line-height:1.55;max-width:70ch;}
.cxp-cols{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:var(--sp-24);}
@media (max-width:820px){.cxp-cols{grid-template-columns:1fr;}.cxp-detail{padding:var(--sp-16);}.cxp-detail h2{font-size:26px;}.cxp-frow{flex-direction:column;gap:4px;}.cxp-flabel{padding-top:0;flex:none;}}
.cxp-sec{display:flex;flex-direction:column;gap:var(--sp-8);margin-bottom:var(--sp-16);}
.cxp-sec h3{margin:0;font-size:13px;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ash);font-weight:600;}
.cxp-sec p{margin:0;color:var(--bone);font-size:14px;line-height:1.5;}
.cxp-hint{color:var(--ash)!important;font-size:12px!important;}
.cxp-sec a{color:var(--signal-text);}
.cxp-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.cxp-bars li{display:grid;grid-template-columns:minmax(90px,150px) 1fr 34px;gap:var(--sp-8);align-items:center;font-size:13px;color:var(--bone);}
.cxp-bt{height:8px;border-radius:99px;background:var(--canvas-raised);overflow:hidden;display:block;}
.cxp-bt i{display:block;height:100%;background:var(--signal);border-radius:99px;}
.cxp-bn{font-family:var(--font-mono);font-size:11px;color:var(--ash);text-align:right;}
.cxp-hours{border-collapse:collapse;width:100%;font-size:13px;}
.cxp-hours th{text-align:left;font-weight:500;color:var(--fog);padding:5px 0;width:38%;}
.cxp-hours td{color:var(--bone);padding:5px 0;}
.cxp-hours tr.today th,.cxp-hours tr.today td{color:var(--signal-text);font-weight:700;}
.cxp-foot{margin:0;font-size:12px;color:var(--ash);border-top:1px solid var(--hairline);padding-top:var(--sp-12);}

/* ======================================================================== Culterix Coffee and Culterix Food worlds */
body[data-world="coffee"],:root[data-theme="dark"] body[data-world="coffee"],:root[data-theme="light"] body[data-world="coffee"]{
  --canvas:#120d0a;--canvas-flat:#120d0a;--canvas-raised:#231a13;--card:#1c140f;--card-hover:#2a1f17;
  --bone:#f6ede3;--paper:#f6ede3;--fog:#c4b5a5;--ash:#9c8b7a;--placeholder:#7b6c5e;--hairline:rgba(246,237,227,.12);
  --signal:#D9A066;--signal-soft:rgba(217,160,102,.18);--signal-text:#E9BB8C;--world:#D9A066;--sp-panel:#17100b;
  background:#120d0a;color:#f6ede3;color-scheme:dark;
}
body[data-world="food"],:root[data-theme="dark"] body[data-world="food"],:root[data-theme="light"] body[data-world="food"]{
  --canvas:#130b0b;--canvas-flat:#130b0b;--canvas-raised:#261615;--card:#1e1211;--card-hover:#2c1a18;
  --bone:#fbeeea;--paper:#fbeeea;--fog:#cdb5b0;--ash:#a48d88;--placeholder:#806a66;--hairline:rgba(251,238,234,.12);
  --signal:#E0523F;--signal-soft:rgba(224,82,63,.2);--signal-text:#F2897B;--world:#E0523F;--sp-panel:#190f0e;
  background:#130b0b;color:#fbeeea;color-scheme:dark;
}
body:is([data-world="coffee"],[data-world="food"]) .app{background:var(--canvas);}
body:is([data-world="coffee"],[data-world="food"]) .nav{background:var(--canvas);border-bottom:0;padding:10px 16px 6px;}
body:is([data-world="coffee"],[data-world="food"]) .worlds{background:var(--canvas);border-bottom:0;padding:4px 16px 10px;gap:8px;overflow-x:auto;scrollbar-width:none;}
body:is([data-world="coffee"],[data-world="food"]) .worlds a{border:0;border-radius:999px;background:var(--canvas-raised);color:var(--bone);padding:8px 16px;font-size:13.5px;font-weight:600;white-space:nowrap;}
body:is([data-world="coffee"],[data-world="food"]) .worlds a:hover{background:var(--card-hover);}
body:is([data-world="coffee"],[data-world="food"]) .worlds a[aria-current="page"]{background:var(--bone);color:var(--canvas);}
body:is([data-world="coffee"],[data-world="food"]) :is(.text-size-toggle,.theme-toggle,.account-btn){background:var(--canvas-raised);border:0;color:var(--bone);}
body:is([data-world="coffee"],[data-world="food"]) .layout{padding:0 8px 8px;gap:8px;background:var(--canvas);}
body:is([data-world="coffee"],[data-world="food"]) .nav-menu-dropdown{background:var(--sp-panel);border-right:0;}
@media (min-width:720px){
  body:is([data-world="coffee"],[data-world="food"]) :is(.nav-menu-dropdown,.nav-menu-dropdown.is-open){background:var(--sp-panel);border:0;border-radius:8px;padding:12px 8px;flex-basis:260px;width:260px;}
}
body:is([data-world="coffee"],[data-world="food"]) .drawer-title{font:700 12px var(--font-sans);text-transform:none;letter-spacing:.02em;color:var(--ash);}
body:is([data-world="coffee"],[data-world="food"]) .tab-group-label{font:700 13px var(--font-sans);letter-spacing:.01em;text-transform:none;color:var(--ash);padding:14px 12px 6px;}
body:is([data-world="coffee"],[data-world="food"]) .tab{font:600 15px var(--font-sans);color:var(--fog);padding:9px 12px;gap:14px;border-radius:6px;background:transparent;}
body:is([data-world="coffee"],[data-world="food"]) .tab:hover{color:var(--bone);background:rgba(255,255,255,.04);}
body:is([data-world="coffee"],[data-world="food"]) .tab[aria-selected="true"]{color:var(--bone);background:rgba(255,255,255,.08);}
body:is([data-world="coffee"],[data-world="food"]) .tab[aria-selected="true"] .wi{color:var(--signal);}
body:is([data-world="coffee"],[data-world="food"]) .sidebar-divider{background:rgba(255,255,255,.08);}
body:is([data-world="coffee"],[data-world="food"]) .nav-menu-dropdown > a{font:600 13px var(--font-sans);color:var(--ash);padding:6px 12px;}
body:is([data-world="coffee"],[data-world="food"]) .nav-menu-dropdown > a:hover{color:var(--bone);}
body:is([data-world="coffee"],[data-world="food"]) .main-col{background:var(--sp-panel);border-radius:8px;}
body:is([data-world="coffee"],[data-world="food"]) .feed{padding:8px 12px 24px;scroll-snap-type:none;}
body:is([data-world="coffee"],[data-world="food"]) .cxp-btn.primary,body:is([data-world="coffee"],[data-world="food"]) .cxp-bt i{color:#140c08;}
body:is([data-world="coffee"],[data-world="food"]) .cxp-btn.primary{background:var(--signal);border-color:var(--signal);}
body:is([data-world="coffee"],[data-world="food"]) .cxp-bt i{background:var(--signal);}
