.admin{max-width:1080px;margin:0 auto;padding:0 20px 60px}.admin-head{display:flex;align-items:center;gap:14px;padding:20px 0 14px}.admin-head h1{margin:0;font-size:20px;font-weight:600}.admin-head .spacer{flex:1}.tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);max-width:430px;margin-bottom:20px}.tab{padding:9px 6px;border:none;border-radius:9px;background:transparent;color:var(--text-soft);font-size:14.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tab.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #00000014}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:22px}.kpi{padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.kpi .label{color:var(--text-soft);font-size:12.5px;text-transform:uppercase;letter-spacing:.04em}.kpi .value{margin-top:5px;font-size:25px;font-weight:600;font-variant-numeric:tabular-nums}.kpi .sub{margin-top:3px;color:var(--text-soft);font-size:13px}.kpi.warn{border-color:#c9a227;background:color-mix(in srgb,#c9a227 8%,var(--surface))}.panel{padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface);margin-bottom:18px;overflow-x:auto}.panel h2{margin:0 0 4px;font-size:16px;font-weight:600}.panel .desc{margin:0 0 16px;color:var(--text-soft);font-size:13.5px}table.data{width:100%;border-collapse:collapse;font-size:14.5px}table.data th{padding:8px 10px;border-bottom:1px solid var(--line);color:var(--text-soft);font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;text-align:left;white-space:nowrap}table.data td{padding:9px 10px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;white-space:nowrap}table.data tr:last-child td{border-bottom:none}table.data td.name{white-space:normal;min-width:180px}table.data tr.clickable{cursor:pointer}table.data tr.clickable:hover td{background:var(--surface-2)}.num{text-align:right}.muted{color:var(--text-soft)}.nodata{color:var(--text-soft);font-style:italic}.pill{display:inline-block;padding:2px 9px;border-radius:20px;font-size:12.5px;font-weight:500;background:var(--surface-2);color:var(--text-soft)}.pill.low{background:color-mix(in srgb,#c9a227 18%,transparent);color:#8a6d0b}.pill.open{background:color-mix(in srgb,#4a7fb5 18%,transparent);color:#2f5f8f}@media(prefers-color-scheme:dark){.pill.low{color:#e0bd4a}.pill.open{color:#8fc0ec}}.entry-card{display:flex;gap:15px;padding:15px 0;border-bottom:1px solid var(--line)}.entry-card:last-child{border-bottom:none}.entry-card img{width:108px;height:108px;object-fit:cover;border-radius:12px;background:var(--surface-2);flex-shrink:0;cursor:zoom-in}.entry-card .body{flex:1;min-width:0}.item-edit{display:grid;grid-template-columns:minmax(110px,2fr) 68px 46px 68px 58px 56px 54px 32px;gap:6px;align-items:center;margin-bottom:5px}.item-edit input{width:100%;padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:var(--bg);font-size:14px;font-variant-numeric:tabular-nums}.item-edit input:focus{outline:none;border-color:var(--accent)}.item-edit .head{color:var(--text-soft);font-size:11.5px;text-transform:uppercase}.admin-btn{padding:9px 15px;border:1px solid var(--line);border-radius:9px;background:var(--surface);font-size:14.5px;font-weight:500}.admin-btn:hover{background:var(--surface-2)}.admin-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.admin-btn.danger{color:#b4453c}.admin-btn:disabled{opacity:.5}.login-box{max-width:360px;margin:16vh auto 0;padding:26px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.chart-wrap{width:100%;overflow-x:auto}.legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:13px;color:var(--text-soft)}.legend i{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:6px;vertical-align:-1px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#141210e0;display:flex;align-items:center;justify-content:center;z-index:60;cursor:zoom-out;padding:24px}.lightbox img{max-width:100%;max-height:100%;border-radius:10px}.field-row{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:5px}.field label{color:var(--text-soft);font-size:12.5px}.field input,.field select{padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:var(--bg);font-size:14.5px}.field input:focus{outline:none;border-color:var(--accent)}@media(max-width:720px){.admin{padding:0 14px calc(48px + env(safe-area-inset-bottom,0px))}.tabs{max-width:none}.kpis{grid-template-columns:1fr 1fr;gap:9px}.kpi{padding:12px 13px}.kpi .label{font-size:11px;letter-spacing:.03em}.kpi .value{font-size:22px;margin-top:3px}.kpi .sub{font-size:11.5px;line-height:1.35}.panel{padding:14px;border-radius:14px;margin-bottom:14px}.panel h2{font-size:15.5px}.panel .desc{font-size:13px;margin-bottom:12px}table.data{display:block;font-size:15px}table.data thead{display:none}table.data tbody{display:block}table.data tr{display:block;padding:11px 12px;margin-bottom:8px;border:1px solid var(--line);border-radius:11px;background:var(--bg)}table.data tr:last-child{margin-bottom:0}table.data td{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:3px 0;border:none;white-space:normal;text-align:left}table.data td:before{content:attr(data-label);flex-shrink:0;color:var(--text-soft);font-size:12.5px;text-transform:uppercase;letter-spacing:.03em}table.data td:not([data-label]){justify-content:flex-end;padding-top:8px}table.data td:not([data-label]):before{content:none}table.data td.primary{justify-content:flex-start;font-size:16.5px;font-weight:600;padding-bottom:7px;margin-bottom:5px;border-bottom:1px solid var(--line)}table.data tr.leer{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:9px 12px;background:transparent;border-style:dashed}table.data tr.leer td.primary{font-size:14.5px;font-weight:500;color:var(--text-soft);padding:0;margin:0;border:none}table.data tr.leer td{padding:0}table.data tr.leer td:before{content:none}table.data tr.clickable:active{background:var(--surface-2)}.entry-card{flex-direction:column;gap:12px}.entry-card img{width:100%;height:190px}.item-edit{grid-template-columns:1fr 1fr 1fr 1fr;grid-template-areas:"name name name loeschen" "menge einheit . ." "kcal protein fett kh";gap:7px 6px;padding:11px;margin-bottom:9px;border:1px solid var(--line);border-radius:10px}.item-edit.head{display:none}.item-edit>*:nth-child(1){grid-area:name}.item-edit>*:nth-child(2){grid-area:menge}.item-edit>*:nth-child(3){grid-area:einheit}.item-edit>*:nth-child(4){grid-area:kcal}.item-edit>*:nth-child(5){grid-area:protein}.item-edit>*:nth-child(6){grid-area:fett}.item-edit>*:nth-child(7){grid-area:kh}.item-edit>*:nth-child(8){grid-area:loeschen;justify-self:end}.item-edit input{font-size:16px;padding:9px 8px}.field-row{gap:8px}.field{flex:1 1 130px;min-width:0}.field input,.field select{width:100%;font-size:16px}.admin-btn{padding:11px 14px;font-size:15px}.login-box{margin-top:8vh}.legend{font-size:12px;gap:10px 14px}}.cell{display:block;min-width:0}.cell>span{display:none}.cell>input{width:100%}@media(max-width:720px){.cell{display:flex;flex-direction:column;gap:3px}.cell>span{display:block;color:var(--text-soft);font-size:10.5px;text-transform:uppercase;letter-spacing:.03em}}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.range-tabs{display:flex;gap:4px}.range-tabs .tab{padding:7px 13px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:14px}.range-tabs .tab.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:none}.calib-toggle{display:flex;align-items:center;gap:8px;margin-left:auto;color:var(--text-soft);font-size:14px;cursor:pointer}.calib-toggle input{width:17px;height:17px}.unit-btn{width:100%;padding:7px 4px;font-size:13.5px}.remove-item{padding:6px 11px}@media(max-width:720px){.toolbar{gap:10px}.range-tabs{flex:1 1 100%}.range-tabs .tab{flex:1;padding:9px 6px}.calib-toggle{margin-left:0;font-size:13.5px}.unit-btn{padding:9px 4px;font-size:15px}.remove-item{padding:8px 13px;font-size:17px}}
