.meal-pick,.meal-account{font:inherit;font-size:.75rem;border:1px solid var(--line,#ddd);border-radius:6px;background:var(--bg,#fff);color:var(--ink,#222);padding:5px 8px;cursor:pointer;white-space:nowrap}.meal-pick[aria-pressed=true]{background:#e3eddb;color:#264c25}.meal-account{font-size:.85rem;justify-self:end}.meal-dialog{width:min(540px,calc(100% - 32px));max-height:85dvh;box-sizing:border-box;border:1px solid var(--line,#ddd);border-radius:14px;padding:24px;background:var(--bg,#fff);color:var(--ink,#222);font:inherit}.meal-dialog::backdrop{background:#0006}.meal-dialog h2{font-size:1.3rem}.meal-dialog h3{font-size:1rem}.meal-dialog button{font:inherit;cursor:pointer;padding:8px 12px;margin:6px 6px 6px 0;border:1px solid var(--line,#ccc);border-radius:7px;background:var(--bg,#fff);color:inherit}.meal-dialog button:disabled{opacity:.5}.meal-close{float:right}.meal-dialog form>label{display:block;margin:14px 0}.meal-dialog input:not([type=checkbox]):not([type=radio]),.meal-dialog textarea{display:block;box-sizing:border-box;width:100%;font:inherit;padding:10px;border:1px solid #999;border-radius:6px;background:var(--bg,#fff);color:inherit}.meal-consent{font-size:.85rem}.meal-muted{font-size:.8rem;color:var(--muted,#666)}.meal-entry{padding:16px 0;border-top:1px solid var(--line,#ddd)}.meal-entry fieldset{border:0;padding:0;display:flex;flex-wrap:wrap;gap:12px}.meal-entry legend{font-size:.85rem;margin-bottom:6px}.meal-entry details{margin:14px 0}.meal-entry summary{cursor:pointer;font-size:.85rem}.meal-error{color:#b53c2d}.meal-status:not(:empty){position:fixed;bottom:20px;left:50%;transform:translateX(-50%);max-width:85vw;padding:12px 18px;border-radius:10px;background:var(--ink,#222);color:var(--bg,#fff);z-index:100}.meal-dialog a{color:inherit}@media(max-width:600px){.dishes li{flex-wrap:wrap}.meal-pick{margin-left:auto}.meal-dialog{padding:16px}}@media(prefers-color-scheme:dark){.meal-pick[aria-pressed=true]{background:#29422b;color:#deefd9}}
/* Account navigation and compact diary. */
/* Keep the menu readable even when every marker and a personal hint is present. */
#cards .card .dishes li{flex-wrap:wrap;gap:6px 10px}
#cards .card .dishes li::before{content:none}
#cards .card .dish-name{flex:0 0 100%;min-width:0;max-width:100%}
#cards .card .meal-suggestion{flex:1 1 130px;min-width:0}
#cards .card .meal-pick{flex-shrink:0;margin-left:auto}
#cards .card .price{flex-shrink:0}

header.site{position:relative;padding-top:18px;padding-bottom:20px}
header.site .logo{padding-bottom:14px;margin-bottom:18px;padding-right:125px;box-sizing:border-box}
header.site .brand-note{display:none}
header.site .meal-account{position:absolute;right:32px;top:18px;min-height:34px;display:inline-flex;align-items:center;text-decoration:none;padding:0 10px;background:var(--card,#fff);color:var(--text,#292c27)}
header.site .eyebrow{display:none}
header.site .tagline{margin-top:8px;line-height:1.5}
header.site #dateline{margin-top:8px}
header.site .locbar{padding:12px 16px}
.meal-page-body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 system-ui,sans-serif}
.meal-page-body *{box-sizing:border-box}
.meal-page-body .wrap{margin-inline:auto}
.meal-page-body .logo{display:flex;align-items:center;color:var(--accent);font-weight:800}
.meal-page-body .logo img{display:block}
.meal-page-body header.site{display:block;padding-bottom:0}
.meal-page-body .meal-account{display:none}
.meal-nav{display:flex;gap:24px;padding-block:8px}
.meal-nav a{color:inherit;text-decoration:none;padding-block:8px}
.meal-nav a[aria-current]{border-bottom:2px solid var(--accent)}
#meal-page{width:calc(100% - 48px);max-width:1120px;max-height:none;margin:16px auto 48px;border:0;padding:0;border-radius:0;background:transparent;color:var(--text)}
#meal-page .meal-close{float:none;display:inline-block;font-size:.85rem;margin:8px 0}
#meal-page h2{margin:10px 0 20px;font-size:1.5rem}
#meal-page .meal-entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,1fr) auto;align-items:start;gap:20px;padding:16px 0}
.meal-info p,.meal-info h3{margin:0 0 5px;overflow-wrap:anywhere}
.meal-entry form{min-width:0}
.meal-entry fieldset{margin:0;gap:6px}
.meal-entry fieldset label{display:inline-flex;align-items:center;gap:4px;cursor:pointer;font-size:.8rem;padding:6px;border:1px solid var(--border);border-radius:6px}
.meal-entry fieldset label:has(input:checked){background:var(--badge-bg);border-color:var(--accent)}
.meal-entry input[type=radio]{margin:0;accent-color:var(--accent)}
.meal-entry details{margin:8px 0 0}
.meal-save-status{display:block;font-size:.75rem;color:var(--muted);min-height:1.5em;margin-top:4px}
#meal-page .meal-remove{font-size:.75rem;margin:0;padding:6px;background:transparent;color:var(--muted)}
.meal-profile-controls{margin-top:32px}
.meal-dialog button[hidden]{display:none}
@media(max-width:680px){header.site .meal-account{right:18px;top:18px}header.site .locbar{margin-top:12px}#meal-page{width:calc(100% - 36px)}#meal-page .meal-entry{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}.meal-entry form{grid-column:1/-1;grid-row:2}#meal-page .meal-remove{grid-column:2;grid-row:1}}
.meal-page-body header.site .meal-account{display:none}
#cards .card .meal-history{flex:1 1 130px;min-width:0}
.meal-history.meal-warn{color:#b53c2d;font-weight:600}
@media(prefers-color-scheme:dark){.meal-history.meal-warn{color:#f08a7a}}
.rest-note{display:block;width:100%;text-align:left;font:inherit;font-size:.8rem;font-style:italic;color:var(--muted,#666);background:none;border:0;padding:2px 0;margin:2px 0 4px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rest-note:hover{color:var(--ink,#222)}.rest-note-empty{font-style:normal;opacity:.7;font-size:.75rem;margin-top:8px}
.rest-note-edit{margin:4px 0 8px}.rest-note-edit textarea{display:block;box-sizing:border-box;width:100%;font:inherit;font-size:.85rem;padding:6px 8px;border:1px solid var(--line,#ccc);border-radius:6px;background:var(--bg,#fff);color:inherit}
.rest-note-list{margin:18px 0}.rest-note-row{padding:8px 0;border-top:1px solid var(--line,#ddd)}
.meal-fav{font:inherit;font-size:.8rem;border:1px solid var(--line,#ccc);border-radius:6px;background:var(--bg,#fff);color:inherit;cursor:pointer;padding:4px 10px}
.meal-fav[aria-pressed=true],.meal-entry .meal-fav[aria-pressed=true]{background:#c0392b;color:#fff;border-color:#c0392b;font-weight:600}
@media(prefers-color-scheme:dark){.meal-fav[aria-pressed=true],.meal-entry .meal-fav[aria-pressed=true]{background:#a8322a;color:#fff;border-color:#e57368}}
.card-more{position:absolute;top:10px;right:10px;z-index:3}
.card-more.beside-copy{right:98px}
.card-more>summary{list-style:none;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;color:var(--muted,#666);font-size:1.2rem;line-height:1}
.card-more>summary::-webkit-details-marker{display:none}
.card-more>summary:hover,.card-more[open]>summary{background:var(--accent-soft,#eee)}
.card-more-list{position:absolute;right:0;top:46px;width:230px;padding:10px;background:var(--card,#fff);border:1px solid var(--border,#ddd);border-radius:10px;box-shadow:0 6px 20px #0002}
.card-more-list button{font:inherit;font-size:.9rem;width:100%;text-align:left;padding:8px 10px;border:0;border-radius:6px;background:none;color:inherit;cursor:pointer}
.card-more-list button:hover{background:var(--accent-soft,#eee)}
.card-more-list p{margin:6px 10px 0}
.dishes li.dish-disliked{background:rgba(181,60,45,.07);border-radius:6px;box-shadow:inset 3px 0 rgba(181,60,45,.55);padding-left:9px;padding-right:6px}
@media(prefers-color-scheme:dark){.dishes li.dish-disliked{background:rgba(240,138,122,.1);box-shadow:inset 3px 0 rgba(240,138,122,.6)}}
.salad-box{margin:10px 0;padding:8px 10px;border:1px dashed var(--line,#ccc);border-radius:8px;font-size:.9rem}
.salad-box summary{cursor:pointer}.salad-q{margin:0 0 6px}
.salad-row{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.salad-row button[aria-pressed=true]{border-color:#688d45;font-weight:600}
.salad-row button.salad-good[aria-pressed=true]{background:#e3eddb;color:#264c25}
.salad-row button.salad-medium[aria-pressed=true]{background:#e7e9ec;color:#222;border-color:#888}
.salad-row button.salad-bad[aria-pressed=true]{background:#fbe4e0;color:#9c2f22;border-color:#c0392b}
@media(prefers-color-scheme:dark){.salad-row button.salad-good[aria-pressed=true]{background:#29422b;color:#deefd9}.salad-row button.salad-medium[aria-pressed=true]{background:#33373b;color:#eee}.salad-row button.salad-bad[aria-pressed=true]{background:#4a2420;color:#f6c1b8}}
.salad-box input{margin-top:4px}
.rest-salad{margin:0;font-size:.82rem;color:var(--muted,#666)}
.rest-salad-bad{color:#b53c2d;font-weight:600}
@media(prefers-color-scheme:dark){.rest-salad-bad{color:#f08a7a}}

/* Diary entry, one clean row (Darko 2026-10-01) */
#meal-page .meal-entry{grid-template-columns:minmax(180px,1fr) minmax(320px,1.3fr) minmax(220px,1fr);gap:12px 24px;padding:18px 0;align-items:start}
.meal-entry .meal-info h3{margin:2px 0 4px}
.meal-entry fieldset.rate{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;border:0;padding:0;margin:0}
.meal-entry fieldset.rate legend{float:none;display:block;font-size:.8rem;color:var(--muted);margin:0;padding:0;flex:0 0 100%}
.rate-seg{display:inline-flex;border:1px solid var(--border);border-radius:999px;overflow:hidden;flex:0 0 auto}
.meal-entry .rate-seg label{border:0;border-radius:0;padding:7px 14px;font-size:.85rem;white-space:nowrap;margin:0;background:transparent}
.meal-entry .rate-seg label+label{border-left:1px solid var(--border)!important}
.meal-entry .rate-seg label:has(input:checked){border-color:var(--border)!important;font-weight:600}
.meal-entry .rate-seg input{position:absolute;opacity:0;pointer-events:none}
.meal-entry .rate-seg label:hover{background:var(--accent-soft,#f4eee9)}
.meal-entry .rate-seg label.rate-bad:has(input:checked){background:#fbe4e0;color:#9c2f22}
.meal-entry .rate-seg label.rate-medium:has(input:checked){background:#e7e9ec;color:#222}
.meal-entry .rate-seg label.rate-good:has(input:checked){background:#e3eddb;color:#264c25}
.meal-entry .meal-fav{border-radius:999px;padding:7px 12px;font-size:.85rem;white-space:nowrap;flex:0 0 auto;margin:0}
.meal-entry .salad-box{margin:0}
.meal-entry > .rest-note-details,.meal-entry > .meal-remove{grid-column:1/-1}
#meal-page .meal-remove{justify-self:start;width:auto;border:0;padding:4px 0;text-decoration:underline}
@media(prefers-color-scheme:dark){.meal-entry .rate-seg label.rate-bad:has(input:checked){background:#4a2420;color:#f6c1b8}.meal-entry .rate-seg label.rate-good:has(input:checked){background:#29422b;color:#deefd9}.meal-entry .rate-seg label.rate-medium:has(input:checked){background:#33373b;color:#eee}}
@media(max-width:900px){#meal-page .meal-entry{grid-template-columns:1fr}.meal-entry fieldset.rate{flex-wrap:wrap}}

.meal-nav{flex-wrap:wrap;column-gap:20px;row-gap:0}
.admin-page{width:min(900px,calc(100% - 32px));max-height:none;margin:16px auto}
.admin-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-bottom:12px}.admin-table th,.admin-table td{text-align:left;padding:6px;border-bottom:1px solid var(--line,#ddd);overflow-wrap:anywhere}
.admin-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:12px 0}.admin-metrics div{border:1px solid var(--line,#ddd);border-radius:10px;padding:10px}.admin-metrics strong{display:block;font-size:1.6rem}
.admin-hourly{display:flex;align-items:flex-end;gap:2px;height:90px}.admin-hourly div{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%}.admin-hourly span{width:100%;background:var(--accent);min-height:1px;border-radius:2px 2px 0 0}.admin-hourly small{font-size:.6rem;color:var(--muted,#777)}
.auth-form{display:grid;gap:4px;margin-top:8px}
.meal-dialog .auth-form>label{margin:10px 0 0;font-weight:600;font-size:.9rem}
.meal-dialog .auth-form input{margin-top:6px;padding:12px 14px;border-radius:10px;font-size:1rem}
.meal-dialog .auth-form input:focus{outline:3px solid #a6b89366;border-color:var(--accent,#426b3a)}
.auth-pass{position:relative}.meal-dialog .auth-pass input{padding-right:84px}
.meal-dialog .auth-show{position:absolute;right:6px;top:50%;transform:translateY(-50%);margin:3px 0 0;padding:6px 10px;border:0;background:transparent;font-size:.85rem;color:var(--muted,#666)}
.auth-hint{margin:4px 0 0;font-size:.85rem;color:#8a5a00}
.meal-dialog .auth-link{margin:0;padding:0;border:0;background:none;text-decoration:underline;color:inherit;font-weight:600}
.auth-create{margin-top:12px;padding:12px 14px;border-radius:10px;background:#e3eddb55;border:1px solid var(--line,#ddd)}.auth-new{margin:0 0 6px}.auth-create .meal-muted{margin:0}
.meal-dialog .auth-primary{width:100%;margin:16px 0 4px;padding:13px;border:0;border-radius:10px;background:var(--accent,#426b3a);color:#fff;font-weight:700;font-size:1rem}
.meal-dialog .auth-later{display:block;margin:6px auto 0;border:0;background:none;color:var(--muted,#666);font-size:.9rem}
.auth-dish{font-weight:600;margin:4px 0}
@media(prefers-color-scheme:dark){.auth-hint{color:#f0c36b}.meal-dialog .auth-primary{color:#172518}.auth-create{background:#29422b55}}
