:root{--bg:#faf7f2;--surface:#fff;--text:#26221c;--muted:#8b8378;--border:#e8e1d5;--accent:#b5502e;--accent-soft:#f6e5dc;--accent-contrast:#fff;--good:#3e7d4f;--good-soft:#e4efe6;--bad:#a03d33;--bad-soft:#f6e3e0;--gold:#9a6b1f;--gold-soft:#f6ecd7;--radius:14px;--radius-small:9px;--tap:56px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font);overscroll-behavior-y:none;touch-action:manipulation;min-height:100dvh;font-size:16px;line-height:1.45}h1{margin:0 0 var(--space-2);font-size:26px}h2{margin:0 0 var(--space-2);font-size:18px}p{margin:0 0 var(--space-2)}a{color:var(--accent)}code{background:var(--border);border-radius:4px;padding:1px 5px;font-size:14px}.app{max-width:640px;margin:0 auto}.page{padding:calc(var(--space-4) + env(safe-area-inset-top)) var(--space-4) calc(84px + env(safe-area-inset-bottom))}.page--centred{text-align:center;justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;min-height:80dvh;display:flex}.page--flow{padding-bottom:var(--space-5)}.page__head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.page__head h1{margin:0}.brand{letter-spacing:-.02em;font-weight:800}.section{margin-top:var(--space-5)}.stack{gap:var(--space-3);flex-direction:column;display:flex}.stack--centred{text-align:center;align-items:stretch;margin-top:20dvh}.row{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.row--actions{margin:var(--space-4) 0}.list{gap:var(--space-2);flex-direction:column;display:flex}.muted{color:var(--muted)}.error{color:var(--bad)}.hint{color:var(--muted);font-size:14px}.hint--good{color:var(--good)}.linklike{color:var(--accent);font:inherit;padding:var(--space-1) 0;text-align:left;cursor:pointer;background:0 0;border:none;text-decoration:none}.vibe-note{background:var(--gold-soft);border-radius:var(--radius-small);padding:var(--space-2) var(--space-3);font-size:15px}.tag{background:var(--accent-soft);color:var(--accent);margin-left:var(--space-2);vertical-align:middle;border-radius:999px;padding:1px 8px;font-size:12px;display:inline-block}.invite-code{letter-spacing:.2em;text-align:center;background:var(--bg);border:1px dashed var(--border);border-radius:var(--radius-small);padding:var(--space-3);-webkit-user-select:all;user-select:all;font-family:ui-monospace,Menlo,monospace;font-size:32px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3) var(--space-4)}.field{gap:var(--space-1);flex-direction:column;display:flex}.field>span{color:var(--muted);font-size:13px}.field--grow{flex:1}.input{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-small);width:100%;padding:12px;font-size:16px}.input:focus{outline:2px solid var(--accent);outline-offset:0;border-color:#0000}.input--code{letter-spacing:.3em;text-align:center;font-family:ui-monospace,Menlo,monospace;font-size:24px}.input--big{padding:14px;font-size:20px}.check{align-items:center;gap:var(--space-2);display:flex}.check input{width:20px;height:20px}.btn{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-small);cursor:pointer;text-align:center;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:default}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn--big{min-height:var(--tap);width:100%;font-size:17px}.btn--small{min-height:36px;padding:6px 12px;font-size:14px}.btn--ghost{color:var(--muted);background:0 0;border-color:#0000}.btn--danger{color:var(--bad)}.chips{gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.chip{font:inherit;background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:999px;min-height:36px;padding:6px 14px;font-size:14px}.chip.is-selected{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.chip--when{background:var(--gold-soft);border-color:#0000;align-self:flex-start}.seg{gap:var(--space-1);background:var(--border);border-radius:var(--radius-small);padding:3px;display:flex}.seg--tabs{margin-bottom:var(--space-3)}.seg__btn{font:inherit;border-radius:calc(var(--radius-small) - 3px);cursor:pointer;min-height:40px;color:var(--muted);background:0 0;border:none;flex:1;font-size:15px;font-weight:600}.seg__btn.is-selected{background:var(--surface);color:var(--text)}.verdicts{gap:var(--space-2);flex-direction:column;display:flex}.verdict-btn{font:inherit;min-height:var(--tap);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;width:100%;font-size:18px;font-weight:700}.verdict-btn:active{transform:scale(.99)}.verdict-btn.is-selected{outline:3px solid var(--accent)}.verdict-btn--the_one.is-selected,.verdict-btn--the_one:active{background:var(--gold-soft)}.verdicts--compact{flex-flow:wrap}.verdicts--compact .verdict-btn{border-radius:999px;flex:auto;width:auto;min-height:40px;padding:6px 10px;font-size:14px}.verdicts--compact .verdict-btn.is-selected{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);outline:none}.verdict-pair__tags{gap:var(--space-2);margin:var(--space-1) 0;flex-wrap:wrap;display:flex}.verdict-tag{background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:13px}.verdict-tag b{margin-right:2px;font-weight:700}.verdict-tag--tappable{font:inherit;cursor:pointer;font-size:13px}.verdict-tag--empty{color:var(--accent);border-style:dashed}.verdict-tag--pending{color:var(--muted);border-style:dashed}.verdict-tag--the_one{background:var(--gold-soft);color:var(--gold);border-color:#0000}.verdict-tag--order_again{background:var(--good-soft);color:var(--good);border-color:#0000}.verdict-tag--solid{background:var(--surface)}.verdict-tag--meh{color:var(--muted)}.verdict-tag--never_again{background:var(--bad-soft);color:var(--bad);border-color:#0000}.restaurant-card{color:inherit;text-decoration:none;display:block}.restaurant-card__top{justify-content:space-between;gap:var(--space-2);display:flex}.restaurant-card__name{font-weight:700}.restaurant-card__meta{font-size:14px}.option{font:inherit;text-align:left;cursor:pointer;width:100%;min-height:var(--tap)}.dish{gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--border);display:flex}.dish__photo{object-fit:cover;border-radius:var(--radius-small);flex-shrink:0;width:72px;height:72px}.dish__body{flex:1;min-width:0}.dish__name{font-weight:700}.dish__note{font-size:14px}.dish__edit{margin-top:var(--space-2)}.visit{margin-bottom:var(--space-3)}.visit__head{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.visit__receipt{border-radius:var(--radius-small);max-width:120px;margin:var(--space-2) 0}.wtt{gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.wtt__photo{object-fit:cover;border-radius:var(--radius-small);flex-shrink:0;width:56px;height:56px}.wtt__body{flex:1;min-width:0}.photo-input__thumb{object-fit:cover;border-radius:var(--radius-small);width:96px;height:96px;margin-bottom:var(--space-2);display:block}.searchbar{margin-bottom:var(--space-3)}.bottomnav{background:var(--surface);border-top:1px solid var(--border);padding:var(--space-2) var(--space-2) calc(var(--space-2) + env(safe-area-inset-bottom));justify-content:space-around;max-width:640px;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0}.bottomnav a{text-align:center;color:var(--muted);padding:var(--space-2) 0;border-radius:var(--radius-small);flex:1;justify-content:center;align-items:center;min-height:44px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.bottomnav a.active{color:var(--accent)}.bottomnav__log{background:var(--accent);margin:0 var(--space-3);border-radius:999px;color:var(--accent-contrast)!important}.sheet-overlay{z-index:50;background:#140f0a80;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);border-radius:var(--radius) var(--radius) 0 0;padding:var(--space-4);width:100%;max-width:640px;max-height:90dvh;overflow-y:auto}.sheet__actions{margin-top:var(--space-3)}.share-card{color:#26221c;border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4);background:#fffdf9}.share-card__brand{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:12px;font-weight:800}.share-card__head h2{margin:var(--space-1) 0;font-size:24px}.share-card__meta{color:var(--muted);margin:0 0 var(--space-3)}.share-card__dish{gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--border);align-items:center;display:flex}.share-card__dish img{object-fit:cover;border-radius:var(--radius-small);flex-shrink:0;width:64px;height:64px}.share-card__dish-text{flex-direction:column;display:flex}.share-card__dish-text span{color:var(--gold);font-size:13px}.share-card__vibe{color:var(--muted);margin-top:var(--space-3);font-size:14px}.share-card__link{color:var(--muted);word-break:break-all;margin-top:var(--space-2);font-size:11px}.share-card__footer{color:var(--muted);margin-top:var(--space-3);font-size:12px;font-style:italic}
