:root{--bg: #0f0f0f;--card: #1a1a1a;--text: #f5f5f5;--muted: #a0a0a0;--accent: #e8a54b}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,sans-serif}.app{max-width:420px;margin:0 auto;padding:20px}.hero-logo{display:flex;justify-content:center;align-items:center;margin:8px auto 20px;padding:8px 0 4px}.hero-logo img{width:min(92vw,340px);height:auto;border-radius:50%;display:block;box-shadow:0 0 0 1px #e8a54b40,0 12px 40px #0000008c,0 0 48px #e8a54b2e}.search-bar{width:100%;padding:14px 16px;border-radius:12px;border:none;background:#1a1a1a;color:var(--text);font-size:16px;margin:12px 0 20px;box-sizing:border-box}.search-row{display:flex;gap:8px;align-items:center;margin:12px 0 20px}.search-row .search-bar{margin:0;flex:1}.search-map-btn{flex-shrink:0;padding:14px 16px;border:none;border-radius:12px;background:var(--accent);color:#111;font-weight:600;cursor:pointer}.search-map-btn:disabled{opacity:.45;cursor:default}.map-canvas{width:100%;height:320px;border-radius:16px;margin-top:8px;background:#1a1a1a;overflow:hidden}.map-notice{background:#1a1a1a;border:1px solid rgba(232,165,75,.35);border-radius:12px;padding:16px;margin:12px 0;color:var(--muted);font-size:14px;line-height:1.55}.map-notice strong{display:block;color:var(--accent);margin-bottom:8px}.map-notice ol{margin:8px 0 12px 18px;padding:0}.map-notice code{color:var(--text);font-size:12px}.btn{background:var(--accent);color:#111;border:none;border-radius:10px;padding:12px 16px;font-weight:600;cursor:pointer}.listings{display:flex;flex-direction:column;gap:16px}.card{background:var(--card);border-radius:16px;overflow:hidden}.card img{width:100%;height:160px;object-fit:cover}.card-body{padding:12px 14px 16px}.card h3{margin:0 0 4px;font-size:17px}.host{margin:0;color:var(--muted);font-size:14px}.meta{display:flex;justify-content:space-between;margin-top:10px}.price{font-weight:600;color:var(--accent)}.empty{text-align:center;color:var(--muted);padding:40px 0}.quote{background:linear-gradient(180deg,#161616,#111);border:1px solid rgba(232,165,75,.22);border-radius:14px;padding:18px 16px;margin:8px 0 20px;color:var(--muted);font-size:14px;line-height:1.65;text-align:center}.about-page{padding-bottom:40px}.about-page h1{margin:4px 0 12px;text-align:center}.about-brand{text-align:center;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:600;margin:8px 0 0}.about-headline{color:var(--accent);font-size:1.15rem;line-height:1.4;text-align:center;margin:0 0 8px;font-weight:600}.about-tagline{text-align:center;color:var(--text);font-weight:500;margin:0 0 24px}.about-page h2{color:var(--accent);font-size:1.05rem;margin:28px 0 12px;line-height:1.35}.about-page p{color:var(--muted);line-height:1.7;margin:0 0 14px;font-size:15px}.about-emphasis{color:var(--text)!important;font-weight:500}.about-closing{text-align:center;margin:28px 0 20px}.about-closing p{color:var(--accent)!important;font-size:1.05rem;font-weight:600;margin:0 0 6px}.about-finale{text-align:center;color:var(--text)!important;font-style:italic;margin-top:8px!important}.screen-pad{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}.screen-pad-plain{padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}.tab-bar{position:fixed;bottom:0;left:0;right:0;z-index:20;background:#111;border-top:1px solid #222;display:flex;padding-bottom:env(safe-area-inset-bottom,0px)}.tab{flex:1;text-align:center;text-decoration:none;color:#8a8a8a;font-size:11px;font-weight:600;padding:14px 2px 12px;border-top:3px solid transparent}.tab.active{color:#f59e0b;border-top-color:#f59e0b}.refresh-bar{position:sticky;top:0;z-index:30;text-align:center;padding:8px;color:#f59e0b;background:#161616;font-size:13px}.diet-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.meal-card{cursor:pointer}.card-photo{position:relative}.card-photo img{display:block;width:100%;height:168px;object-fit:cover}.fav-btn{position:absolute;top:8px;right:8px;width:40px;height:40px;border:none;border-radius:999px;background:#00000073;font-size:18px;cursor:pointer}.verified{font-size:12px;color:#f59e0b}.reply{font-size:12px;color:#a3a3a3;margin:4px 0 0}.empty-state{text-align:center;color:var(--muted);background:#1a1a1a;border-radius:16px;padding:28px 18px;line-height:1.5}.empty-state strong{display:block;color:var(--text);margin-bottom:6px}.empty-state p{margin:0 0 14px}.detail-photo{width:100%;height:200px;object-fit:cover;border-radius:16px;display:block;margin-bottom:16px}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:8px}.calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}.calendar-shift{padding:6px 14px}.calendar-weekday{text-align:center;color:var(--muted);font-size:12px}.calendar-day{padding:10px 0;border-radius:8px;border:none;font-size:15px;background:#1a1a1a;color:#fff;cursor:pointer}.calendar-day:disabled{background:#111;color:#8a8a8a;cursor:default}.calendar-day.selected{background:#f59e0b;color:#111}.suggestion-list{position:absolute;top:100%;left:0;right:0;background:#1a1a1a;border-radius:12px;margin-top:4px;z-index:10;overflow:hidden}.suggestion-list button{display:block;width:100%;text-align:left;background:transparent;color:inherit;border:none;border-bottom:1px solid #222;padding:12px 16px;cursor:pointer;font:inherit}.form-error{color:#fca5a5;margin:0 0 12px}.star-row{display:flex;gap:4px;margin-top:8px}.star-btn{background:none;border:none;color:#f59e0b;font-size:28px;cursor:pointer;padding:4px}.meal-card:focus-visible,.thread-row:focus-visible,.suggestion-list button:focus-visible,.star-btn:focus-visible{outline:2px solid #f59e0b;outline-offset:2px}.thread-row{cursor:pointer}.text-btn{background:none;border:none;color:#f59e0b;font-size:16px;margin-bottom:12px;cursor:pointer;padding:8px 0}.thread{background:#1a1a1a;border-radius:12px;padding:16px;margin:16px 0;min-height:120px}.bubble{background:#111;border-radius:12px;padding:10px 12px;margin:0 0 8px}.bubble.mine{background:#3a2a14;margin-left:24px}.sub{color:var(--muted);line-height:1.5}
