.nav { display:flex; gap:16px; margin-left:auto; }
.nav a { color:var(--muted); font-weight:700; }
.nav a:hover, .nav a.active { color:var(--cyan); }
.nav a.active { text-decoration:underline; text-underline-offset:5px; }
input[type="datetime-local"], input[type="number"], textarea, select {
    width:100%; border:1px solid var(--line); border-radius:9px; padding:11px 12px;
    color:var(--text); background:#07171b; outline:none; font:inherit;
}
textarea { resize:vertical; }
textarea:focus, input[type="datetime-local"]:focus, input[type="number"]:focus, select:focus { border-color:var(--cyan); box-shadow:0 0 0 3px rgba(101,246,255,.08); }
.compact { font-size:.9rem; line-height:1.45; }
.day-head { display:flex; align-items:center; justify-content:space-between; text-align:center; padding:16px 22px; }
.day-head h1 { margin:0; font-size:clamp(1.25rem,3vw,2rem); }
.day-arrow { width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; font-size:1.25rem; }
.day-stats { margin:16px 0 20px; grid-template-columns:repeat(4,1fr); }
.day-stats .stat { min-width:0; }
.stat-sub { margin-top:8px; color:var(--muted); font-size:.78rem; line-height:1.4; }
.energy-stat strong { color:var(--warn); }
.energy-lines { display:grid; gap:5px; margin-top:10px; font-size:.78rem; }
.energy-lines div { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.energy-lines span { color:var(--muted); }
.energy-lines b { color:var(--text); font-weight:800; }
.feed-layout { display:grid; grid-template-columns:minmax(0, 3fr) minmax(500px, 2fr); gap:22px; align-items:start; }
.feed-layout > * { min-width:0; }
.side-stack { display:grid; gap:20px; position:sticky; top:18px; min-width:0; }
.timeline { position:relative; }
.event-card { display:grid; grid-template-columns:62px 32px minmax(0,1fr); gap:12px; position:relative; padding:16px 0; }
.event-card:not(:last-child) { border-bottom:1px solid var(--line); }
.event-card::after { content:""; position:absolute; left:78px; top:48px; bottom:-17px; width:1px; background:var(--line); }
.event-card:last-child::after { display:none; }
.event-time { display:flex; flex-direction:column; align-items:flex-end; gap:3px; color:var(--muted); font-size:.78rem; padding-top:5px; }
.event-time strong { color:var(--text); font-size:1rem; }
.event-marker { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; border:1px solid var(--cyan); color:var(--cyan); background:#07171b; z-index:1; }
.type-activity .event-marker { color:var(--danger); border-color:var(--danger); }
.type-note .event-marker { color:var(--warn); border-color:var(--warn); }
.type-sleep .event-marker { color:#a98cff; border-color:#a98cff; }
.type-wake .event-marker { color:#ffd36b; border-color:#ffd36b; }
.type-meal .event-marker { color:#8dffb1; border-color:#8dffb1; font-size:.9rem; }
.type-beer .event-marker { color:#ffcf5a; border-color:#ffcf5a; font-size:.9rem; }
.type-media .event-marker { color:#ff9fea; border-color:#ff9fea; }
.event-content { min-width:0; }
.event-head { display:flex; align-items:center; justify-content:space-between; gap:10px; position:relative; margin-bottom:8px; }
.event-meta { display:flex; align-items:center; gap:8px; color:var(--muted); font-size:.8rem; min-width:0; }
.event-tools { display:flex; align-items:center; gap:4px; flex:0 0 auto; }
.event-delete-form { margin:0; }
.event-icon-button {
    display:grid; place-items:center; width:28px; height:28px; min-height:0; padding:0;
    border:1px solid var(--line); border-radius:7px; background:transparent; color:var(--muted);
    cursor:pointer; font-size:1rem; line-height:1; user-select:none;
}
.event-icon-button:hover { border-color:var(--cyan); color:var(--cyan); }
.event-delete-icon { color:var(--danger); border-color:rgba(255,102,125,.35); }
.event-delete-icon:hover { border-color:var(--danger); color:var(--danger); }
.event-editor-icon { position:relative; }
.event-editor-icon > summary::-webkit-details-marker { display:none; }
.event-editor-icon > form {
    position:absolute; z-index:20; right:0; top:34px; width:min(400px, calc(100vw - 48px));
    padding:14px; border:1px solid var(--line); border-radius:10px; background:#07171b;
    box-shadow:0 16px 44px rgba(0,0,0,.45);
}
.event-content h3 { font-size:1.15rem; margin:0 0 8px; }
.event-kpis { display:flex; flex-wrap:wrap; gap:8px; margin:10px 0; }
.event-kpis span { border:1px solid var(--line); border-radius:8px; padding:5px 8px; color:var(--muted); font-size:.83rem; background:rgba(4,14,17,.45); }
.event-kpis .warn-text { color:var(--warn); }
.meal-summary-kpis { margin:6px 0; }
.inline-link { display:inline-block; margin-top:8px; font-weight:700; }
.route-map-frame { display:block; width:100%; height:340px; border:1px solid var(--line); border-radius:12px; background:#091519; margin:12px 0 4px; }
img.timeline-media { display:block; width:100%; max-height:620px; object-fit:contain; border:1px solid var(--line); border-radius:12px; background:#03090b; margin:12px 0 4px; }
video.timeline-media { display:block; width:auto; height:auto; max-width:100%; max-height:min(72vh,720px); object-fit:contain; border:1px solid var(--line); border-radius:12px; background:#03090b; margin:12px auto 4px; }
.media-placeholder { padding:24px; border:1px dashed var(--line); border-radius:12px; color:var(--muted); background:#07171b; }
.note-body { color:#cce2e5; line-height:1.55; margin:8px 0 0; }
.match { color:var(--green); font-size:.85rem; margin:8px 0; }
.activity-stats { grid-template-columns:repeat(3,1fr); }
.chart-wrap { height:240px; border:1px solid var(--line); border-radius:12px; padding:10px; background:#07171b; margin-bottom:22px; }
#heartChart { width:100%; height:220px; display:block; }
.sleep-stat { border-color:rgba(169,140,255,.3); }
.sleep-actions { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.sleep-actions form { margin:0; }
.sleep-actions-hud { margin-top:10px; }
.sleep-button, .wake-button { width:100%; min-height:34px; padding:6px 7px; font-size:.72rem; }
.sleep-button { background:#a98cff; border-color:#a98cff; }
.wake-button { background:#ffd36b; border-color:#ffd36b; color:#071013; }
.sleep-button:disabled, .wake-button:disabled { cursor:default; opacity:.45; filter:none; }
.quick-consumption { padding:12px; }
.quick-consumption-buttons { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.quick-consumption-toggle {
    width:100%; min-height:48px; padding:0 10px; border-radius:9px; color:#071013;
    cursor:pointer; font-weight:800; text-align:center;
}
.meal-quick-toggle { border-color:var(--green); background:var(--green); }
.beer-quick-toggle { border-color:var(--warn); background:var(--warn); }
.quick-consumption-toggle.active { box-shadow:0 0 0 3px rgba(101,246,255,.12); }
.quick-consumption-panel { margin-top:12px; padding-top:12px; border-top:1px solid var(--line); }
.quick-consumption-panel[hidden] { display:none !important; }
.beer-inline-form { display:grid; grid-template-columns:minmax(0,1fr) 52px 38px; gap:7px; align-items:center; margin:0; }
.beer-inline-form select, .beer-inline-form input { min-width:0; }
.beer-quantity { padding-left:6px !important; padding-right:6px !important; text-align:center; }
.beer-add-button { width:38px; min-height:38px; padding:0; font-size:1.35rem; }
#meal-form button:disabled { cursor:wait; opacity:.65; }
.compact-button { min-height:36px; padding:7px 10px; }
.meal-product-rows { display:grid; gap:8px; margin-bottom:9px; }
.meal-product-row { display:grid; grid-template-columns:minmax(0,1fr) 120px 36px; gap:7px; align-items:center; }
.meal-product-amount-wrap { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px; align-items:center; }
.meal-product-unit { color:var(--muted); font-size:.8rem; min-width:28px; }
.meal-product-remove { width:36px; height:36px; padding:0; background:transparent; color:var(--danger); border-color:rgba(255,102,125,.5); }
.meal-event-details { margin-top:8px; }
.meal-event-details > summary { display:inline-flex; align-items:center; color:var(--cyan); cursor:pointer; font-weight:800; font-size:.86rem; user-select:none; }
.meal-event-details > summary::-webkit-details-marker { display:none; }
.meal-event-details > summary::after { content:" ↓"; }
.meal-event-details[open] > summary::after { content:" ↑"; }
.meal-event-expanded { padding-top:10px; }
.meal-calorie-estimate { margin-top:14px; padding:14px; border:1px solid rgba(141,255,177,.28); border-radius:10px; background:rgba(141,255,177,.035); }
.meal-calorie-total { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; margin-bottom:10px; }
.meal-calorie-total strong { color:var(--green); font-size:1.12rem; }
.meal-calorie-total span { color:var(--muted); font-size:.82rem; }
.meal-calorie-estimate p { line-height:1.45; }
.calorie-ingredients { display:grid; gap:7px; margin:10px 0; }
.calorie-ingredients > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:3px 12px; padding:8px; border:1px solid var(--line); border-radius:8px; background:rgba(4,14,17,.45); }
.calorie-ingredients span { color:var(--muted); font-size:.82rem; }
.calorie-ingredients small { grid-column:1 / -1; color:var(--muted); line-height:1.35; }
.meal-calorie-action { margin:8px 0 0; }
.meal-calorie-button { min-height:34px; padding:6px 10px; background:transparent; color:var(--green); border-color:rgba(141,255,177,.5); font-size:.82rem; }
.meal-calorie-button:hover { border-color:var(--green); }
.upload-progress { display:block; width:100%; height:12px; margin:10px 0; }
.upload-status { min-height:22px; margin:8px 0; }
#s3-media-form button:disabled { cursor:wait; opacity:.65; }
.page-heading { margin-bottom:20px; }
.page-heading h1 { margin-bottom:8px; }
.page-heading p { margin-bottom:0; }
.imports-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:start; }
.catalog-section { display:grid; grid-template-columns:minmax(300px, .8fr) minmax(0, 1.2fr); gap:20px; align-items:start; margin-bottom:24px; scroll-margin-top:20px; }
.catalog-amount-grid { display:grid; grid-template-columns:1fr 1fr 1.2fr; gap:10px; }
.catalog-amount-grid.beer-grid { grid-template-columns:1fr 1fr; }
.catalog-list form { margin:0; }
.catalog-toggle { min-height:34px; padding:6px 10px; white-space:nowrap; }
.catalog-disabled { opacity:.48; }
@media (max-width:1100px) {
    .feed-layout { grid-template-columns:1fr; }
    .side-stack { position:static; }
    .activity-stats { grid-template-columns:repeat(2,1fr); }
    .day-stats { grid-template-columns:repeat(2,1fr); }
    .imports-grid, .catalog-section { grid-template-columns:1fr; }
}
@media (max-width:620px) {
    .topbar { flex-wrap:wrap; }
    .nav { order:3; width:100%; margin:0; overflow-x:auto; padding-bottom:4px; }
    .nav a { white-space:nowrap; }
    .day-head { padding:14px 12px; }
    .day-arrow { width:36px; height:36px; }
    .day-head h1 { max-width:calc(100% - 88px); }
    .event-card { grid-template-columns:48px 28px minmax(0,1fr); gap:8px; }
    .event-card::after { left:61px; }
    .route-map-frame { height:280px; }
    .day-stats { grid-template-columns:1fr; }
    .timeline-media { max-height:420px; }
    .sleep-actions { grid-template-columns:1fr 1fr; }
    .quick-consumption-buttons { grid-template-columns:1fr 1fr; }
    .beer-inline-form { grid-template-columns:minmax(0,1fr) 46px 36px; }
    .meal-product-row { grid-template-columns:1fr 36px; }
    .meal-product-amount-wrap { grid-column:1 / -1; grid-row:2; }
    .meal-product-remove { grid-column:2; grid-row:1; }
    .catalog-amount-grid, .catalog-amount-grid.beer-grid { grid-template-columns:1fr; }
    .calorie-ingredients > div { grid-template-columns:1fr; }
    .calorie-ingredients small { grid-column:1; }
}
.table-wrap { overflow-x:auto; }
.catalog-list table { min-width:760px; }
.barcode-card { margin-top:14px; padding-top:14px; border-top:1px solid var(--line); }
.barcode-thumb { max-width:120px; max-height:120px; border-radius:10px; border:1px solid var(--line); margin:8px 0; }
.catalog-section > .panel,
.catalog-amount-grid > *,
.barcode-card,
.barcode-card .field {
    min-width:0;
}
.catalog-section > .panel { max-width:100%; overflow-wrap:anywhere; }
.catalog-amount-grid { grid-template-columns:repeat(auto-fit, minmax(min(100%, 160px), 1fr)); align-items:end; }
.barcode-product-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(min(100%, 180px), 1fr));
    gap:12px;
    align-items:end;
    min-width:0;
}
.barcode-card input,
.barcode-card select,
.catalog-amount-grid input,
.catalog-amount-grid select {
    width:100%;
    min-width:0;
    max-width:100%;
}
.barcode-card label,
.catalog-amount-grid label { overflow-wrap:anywhere; hyphens:auto; }
.nutrition-serving-field[hidden] { display:none !important; }
@media (max-width:700px) {
    .barcode-product-grid { grid-template-columns:1fr; }
}
.energy-lines .energy-subline { padding-left:14px; font-size:.74rem; }
.profile-resting-result { margin-top:18px; padding:14px; border:1px solid rgba(255,255,255,.12); border-radius:14px; background:rgba(255,255,255,.04); font-weight:700; }
.catalog-tabs { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 20px; }
.catalog-subtabs { margin-top:0; }
.catalog-tab { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:9px 14px; border:1px solid var(--line); border-radius:999px; color:var(--cyan); background:rgba(4,14,17,.45); font-weight:800; }
.catalog-tab.active, .catalog-tab:focus { border-color:var(--cyan); background:rgba(101,246,255,.14); text-decoration:none; }
.catalog-add-grid { display:grid; grid-template-columns:minmax(0, 1.1fr) minmax(300px, .9fr); gap:20px; align-items:start; }
.catalog-form-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap:12px; align-items:end; min-width:0; }
.catalog-editor { border:1px solid var(--line); border-radius:14px; padding:18px; margin:0 0 20px; background:rgba(4,14,17,.36); scroll-margin-top:20px; }
.catalog-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.catalog-source { color:var(--muted); margin:12px 0; font-weight:700; }
.catalog-lookup-form { border-bottom:1px solid var(--line); padding-bottom:16px; margin-bottom:16px; }
.catalog-product-form { margin-top:0; }
.catalog-list { max-width:100%; overflow-wrap:anywhere; }
.catalog-list td { vertical-align:top; }
.catalog-list .catalog-actions { flex-wrap:nowrap; }
.catalog-unknown { display:flex; align-items:center; gap:8px; margin:0 0 15px; }
.catalog-unknown input { width:auto; }
@media (max-width:900px) { .catalog-add-grid { grid-template-columns:1fr; } }
@media (max-width:620px) { .catalog-list .catalog-actions { flex-wrap:wrap; } }

.catalog-layout{display:grid;grid-template-columns:minmax(320px,0.95fr) minmax(0,1.35fr);gap:1rem;align-items:start}.catalog-layout .panel{min-width:0}.catalog-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.catalog-form-grid .field input,.catalog-form-grid .field select,.catalog-lookup-form input{box-sizing:border-box;width:100%;background:var(--surface-input);font:inherit;min-height:42px;padding:.55rem .7rem;border:1px solid var(--line);border-radius:.65rem}.catalog-form-grid .field input:focus,.catalog-form-grid .field select:focus,.catalog-lookup-form input:focus{outline:2px solid rgba(77,139,245,.35);border-color:#4d8bf5}.catalog-lookup-form{display:flex;gap:.75rem;align-items:end;margin-bottom:1rem}.catalog-lookup-form .field{flex:1}.segmented-control{display:flex;flex-wrap:wrap;border:1px solid var(--line);border-radius:.8rem;overflow:hidden;margin-bottom:1rem}.segmented-control label{flex:1;min-width:90px;cursor:pointer}.segmented-control input{position:absolute;opacity:0}.segmented-control span{display:block;text-align:center;padding:.65rem .8rem;border-right:1px solid var(--line);background:rgba(127,127,127,.06)}.segmented-control label:last-child span{border-right:0}.segmented-control input:checked+span{background:rgba(101,246,255,.16);color:var(--cyan)}.segmented-control input:focus-visible+span{outline:3px solid rgba(77,139,245,.45);outline-offset:-3px}.catalog-list .table-wrap,#catalog-list .table-wrap{overflow-x:auto}.catalog-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.catalog-filters{flex-wrap:wrap}.meal-product-row{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:.5rem;align-items:center;margin-bottom:.6rem}.meal-product-amount-wrap{display:flex;gap:.35rem;align-items:center}.meal-product-amount{max-width:7rem}.meal-product-mode{max-width:6rem}.meal-product-preview{grid-column:1/-1}@media (max-width:900px){.catalog-layout{grid-template-columns:1fr}.catalog-form-grid{grid-template-columns:1fr}.catalog-lookup-form{flex-direction:column;align-items:stretch}}@media (max-width:390px){.segmented-control label{min-width:33.333%}.meal-product-row{grid-template-columns:1fr}.meal-product-amount-wrap{width:100%}}

.catalog-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:start;max-width:100%;overflow-x:clip}.catalog-layout>.panel{min-width:0}.catalog-lookup-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:end;margin-bottom:1rem}.catalog-lookup-row .field{min-width:0}.catalog-lookup-row button{white-space:nowrap;min-height:42px}.catalog-table-wrap,.catalog-list .table-wrap,#catalog-list .table-wrap{overflow-x:visible}.catalog-table{width:100%;table-layout:fixed;min-width:0;border-collapse:collapse}.catalog-table th,.catalog-table td{white-space:normal;overflow-wrap:anywhere;word-break:normal}.catalog-table th:first-child{width:38px}.catalog-table th:nth-child(4){width:18%}.catalog-table th:nth-child(5){width:25%}.catalog-table th:nth-child(6){width:120px}.catalog-type-icon{display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem}.catalog-name-cell,.catalog-brand-cell,.catalog-package-cell,.catalog-nutrition-cell{white-space:pre-line}.catalog-actions-vertical{display:grid;gap:6px;align-items:start}.catalog-actions-vertical .button,.catalog-actions-vertical button{width:100%;min-height:30px;padding:5px 8px;font-size:.78rem}.badge{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:3px 7px;margin-bottom:6px;font-size:.75rem;color:var(--muted)}.energy-balance{display:block}.energy-balance-negative{color:var(--green)}.energy-balance-warning{color:var(--warn)}.energy-balance-danger{color:var(--danger)}.energy-balance-unknown{color:var(--muted)}.meal-type-time-grid{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:.75rem;align-items:end}.meal-type-time-grid select,.meal-type-time-grid input{min-height:42px}.day-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}.day-head-center{min-width:0;text-align:center}.day-head-center h1{max-width:none;margin:0}.day-current-context{margin-top:6px;color:var(--muted);font-weight:700;overflow-wrap:anywhere}.weather-current{color:var(--text)}
@media (max-width:900px){.catalog-layout{grid-template-columns:1fr}.catalog-lookup-row{grid-template-columns:1fr}.catalog-table thead{display:none}.catalog-table,.catalog-table tbody,.catalog-table tr,.catalog-table td{display:block;width:100%}.catalog-table tr{border:1px solid var(--line);border-radius:12px;padding:10px;margin-bottom:10px;background:rgba(255,255,255,.03)}.catalog-table td{border:0;padding:5px 0}.catalog-table td:nth-child(2)::before{content:'Название: ';color:var(--muted)}.catalog-table td:nth-child(3)::before{content:'Бренд: ';color:var(--muted)}.catalog-table td:nth-child(4)::before{content:'Упаковка: ';color:var(--muted)}.catalog-table td:nth-child(5)::before{content:'КБЖУ: ';color:var(--muted)}.meal-type-time-grid{grid-template-columns:1fr}}
@media (max-width:620px){.day-head{grid-template-columns:36px minmax(0,1fr) 36px}.day-head h1{max-width:none;font-size:1.2rem}.day-current-context{font-size:.85rem}}
.meal-product-row{display:grid;grid-template-columns:260px minmax(220px,1fr) 96px 72px 36px;gap:.5rem;align-items:center}.meal-category.segmented-control{margin:0;flex-wrap:nowrap}.meal-category.segmented-control label{min-width:auto}.meal-category.segmented-control span{padding:.45rem .5rem;font-size:.78rem}.meal-product-amount{width:72px;max-width:72px}.meal-product-mode{width:96px;max-width:96px}.meal-product-remove{width:36px;height:36px;padding:0;background:transparent;color:var(--danger);border-color:rgba(255,102,125,.5)}.dish-editor{grid-column:1/-1;border:1px solid var(--line);border-radius:12px;padding:12px}.dish-component-row{display:grid;grid-template-columns:minmax(180px,1fr) 90px 110px 36px;gap:.5rem;align-items:center;margin:.5rem 0}.dish-remove{width:36px;height:36px;padding:0}@media(max-width:900px){.meal-product-row{grid-template-columns:1fr 72px 36px}.meal-category,.meal-product-select{grid-column:1/-1}.meal-product-mode{grid-column:1}.meal-product-remove{grid-column:3;grid-row:3}.dish-component-row{grid-template-columns:1fr 80px 100px 36px}}

/* Spartan dark HUD normalization */
.side-stack,.quick-consumption,.quick-consumption-panel,.meal-form-panel,.meal-product-rows,.meal-product-row{min-width:0;max-width:100%}.side-stack{overflow-x:clip}.quick-consumption-panel,.meal-form-panel,.meal-form-panel form{width:100%;max-width:100%}.meal-form-panel input,.meal-form-panel select,.meal-form-panel textarea{box-sizing:border-box;min-width:0;max-width:100%}.quick-consumption-toggle{background:linear-gradient(145deg,var(--surface-elevated),var(--surface-primary));color:var(--text);border-color:var(--line-bright);box-shadow:inset 0 0 20px rgba(101,246,255,.025)}.meal-quick-toggle{border-color:rgba(141,255,177,.55)}.activity-quick-toggle{border-color:rgba(101,246,255,.55);background:linear-gradient(145deg,var(--surface-elevated),var(--surface-primary))}.quick-consumption-toggle.active{color:var(--text);border-color:var(--cyan);box-shadow:0 0 0 2px rgba(101,246,255,.12),0 0 22px rgba(101,246,255,.12)}.quick-consumption-toggle:disabled{background:var(--surface-primary);color:var(--muted);border-color:var(--line);opacity:.58}.meal-type-icon{display:inline-flex;align-items:center;justify-content:center;color:currentColor;vertical-align:-.16em}.meal-type-icon svg{display:block;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.meal-type-label{margin-left:.35rem}.meal-category.segmented-control{margin:0;flex-wrap:nowrap}.meal-category.segmented-control label{min-width:0}.meal-category.segmented-control span{display:flex;align-items:center;justify-content:center;gap:.2rem;height:42px;padding:.35rem .45rem}.meal-category .meal-type-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.meal-product-row{grid-template-columns:140px minmax(150px,1fr) 88px 68px 36px;margin-bottom:.6rem}.meal-product-row>.meal-row-token{display:none}.meal-product-select-wrap{min-width:0}.meal-row-note{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meal-row-note:empty{display:none}.meal-product-remove{grid-column:5}.segmented-control{border-color:var(--line);background:var(--surface-primary)}.segmented-control span{border-color:var(--line);background:rgba(101,246,255,.035);color:var(--muted)}.segmented-control input:checked+span{background:rgba(101,246,255,.16);color:var(--cyan);box-shadow:inset 0 0 18px rgba(101,246,255,.08)}.catalog-form-grid .field input,.catalog-form-grid .field select,.catalog-lookup-form input{background:var(--surface-input);border-color:var(--line);color:var(--text)}.catalog-lookup-row{align-items:end}.catalog-lookup-row .field{margin-bottom:0}.catalog-lookup-row input,.catalog-lookup-row button{min-height:42px}.catalog-actions-row{width:100%}.catalog-ai-button{margin-left:auto}.catalog-tab{gap:.4rem}.catalog-type-icon{color:var(--cyan)}
@media(max-width:900px){.meal-product-row{grid-template-columns:minmax(0,1fr) 76px 36px}.meal-category,.meal-product-select-wrap,.meal-product-select{grid-column:1/-1}.meal-category .meal-type-label{position:static;width:auto;height:auto;clip:auto;overflow:visible}.meal-product-mode{grid-column:1}.meal-product-amount{grid-column:2}.meal-product-remove{grid-column:3;grid-row:3}.catalog-actions-row{flex-direction:column;align-items:stretch}.catalog-actions-row .button,.catalog-actions-row button{width:100%}.catalog-ai-button{margin-left:0}.catalog-lookup-row{grid-template-columns:1fr}.catalog-lookup-row button{width:100%}}
