:root{--bg:#14110f;--surface:#1d1a17;--surface-2:#262220;--line:#332e2a;--text:#ece6df;--muted:#a39a8f;--accent:#c9764a;--yes:#5b9d6b;--sometimes:#c79a3e;--no:#c25b4e;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}.app{max-width:720px;margin:0 auto;padding:0 16px 64px}header{padding:24px 0 12px}header h1{letter-spacing:-.01em;margin:0;font-size:1.5rem}.sub{color:var(--muted);margin:4px 0 0;font-size:.82rem}.tabs{background:var(--bg);border-bottom:1px solid var(--line);z-index:10;-webkit-overflow-scrolling:touch;gap:6px;padding:10px 0;display:flex;position:sticky;top:0;overflow-x:auto}.tabs button{border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;white-space:nowrap;border-radius:999px;flex:none;padding:7px 13px;font-size:.85rem}.tabs button.active{background:var(--accent);border-color:var(--accent);color:#15110e;font-weight:600}main{padding-top:16px}.cards{flex-direction:column;gap:14px;display:flex}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px}.card-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.card h2{margin:0;font-size:1.05rem;line-height:1.3}.time{color:var(--muted);white-space:nowrap;font-size:.75rem}.tags{flex-wrap:wrap;gap:5px;margin:8px 0;display:flex}.tag{color:var(--accent);border:1px solid var(--line);border-radius:6px;padding:2px 7px;font-size:.68rem}.note{color:var(--text);margin:6px 0 10px;font-size:.9rem;line-height:1.45}.ideas{margin:4px 0 0;padding-left:18px}.ideas li{color:var(--muted);margin:8px 0;font-size:.88rem;line-height:1.5}.ideas strong{color:var(--text)}details{border-top:1px solid var(--line);padding-top:8px}summary{cursor:pointer;color:var(--accent);font-size:.85rem}details h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:12px 0 4px;font-size:.78rem}details ul,details ol{margin:0;padding-left:18px}details li{margin:3px 0;font-size:.88rem;line-height:1.4}.check input,.chat-input input{background:var(--surface-2);border:1px solid var(--line);width:100%;color:var(--text);border-radius:10px;padding:12px 14px;font-size:1rem}.check input{margin-bottom:14px}.empty{color:var(--muted);font-size:.9rem}.food-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.food{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:10px;padding:12px 14px}.food.yes{border-left-color:var(--yes)}.food.sometimes{border-left-color:var(--sometimes)}.food.no{border-left-color:var(--no)}.food-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.food-name{font-size:.95rem;font-weight:600}.food-reason{color:var(--muted);margin:6px 0 0;font-size:.85rem;line-height:1.45}.badge{text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:.7rem;font-weight:700}.badge.yes{color:var(--yes);background:#5b9d6b33}.badge.sometimes{color:var(--sometimes);background:#c79a3e33}.badge.no{color:var(--no);background:#c25b4e33}.ask-hint{color:var(--muted);margin-top:0;font-size:.85rem}.chat-log{flex-direction:column;gap:8px;min-height:120px;margin-bottom:12px;display:flex}.bubble{white-space:pre-wrap;border-radius:12px;max-width:85%;padding:10px 13px;font-size:.9rem;line-height:1.45}.bubble.user{background:var(--accent);color:#15110e;align-self:flex-end}.bubble.assistant{background:var(--surface-2);border:1px solid var(--line);align-self:flex-start}.bubble.error{border:1px solid var(--no);color:var(--no);background:#c25b4e26;align-self:flex-start}.chat-input{gap:8px;display:flex}.chat-input input{flex:1}.chat-input button{background:var(--accent);color:#15110e;cursor:pointer;border:none;border-radius:10px;padding:0 18px;font-weight:600}.chat-input button:disabled{opacity:.5}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:10px;margin-bottom:8px;padding:12px 14px}.faq summary{color:var(--text);font-size:.92rem;font-weight:600}.faq p{color:var(--muted);margin:10px 0 0;font-size:.88rem;line-height:1.5}
