:root{color-scheme:dark;--bg: #090b0f;--panel: #141820;--panel-2: #10141b;--line: rgba(255, 255, 255, .08);--text: #f4f7fb;--muted: #8d98a8;--accent: #26d9e8;--accent-soft: rgba(38, 217, 232, .16);--danger: #ff6b73}*{box-sizing:border-box}html{background:var(--bg);overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{border:0;border-radius:8px;background:var(--accent);color:#061115;padding:10px 12px;font-weight:800}.app-shell{width:min(720px,100%);min-height:100vh;margin:0 auto;padding-bottom:calc(76px + env(safe-area-inset-bottom))}main{display:grid;gap:10px;padding:12px}h1,h2,h3,p{margin:0}h2{font-size:15px}h3{font-size:13px;color:var(--muted);font-weight:700}small{color:var(--muted)}.topbar,.screen-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.topbar>div:not(.date-actions),.screen-header>div{min-width:0;flex:1}.topbar h1,.screen-header h1{font-size:21px;line-height:1.05}.topbar p,.screen-header p{margin-top:3px;color:var(--muted);font-size:12px}.screen-header>a,.topbar button,.action-link{min-width:38px;min-height:38px;display:grid;place-items:center;border-radius:8px;background:var(--panel);border:1px solid var(--line);color:var(--accent);font-weight:800}.date-actions{display:flex;align-items:center;gap:7px}.action-link{padding:0 11px;background:var(--accent-soft);border-color:#26d9e85c;color:var(--text);font-size:13px}.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.summary-card,.state-card,.insight-card,.equivalent-block,.week-chart,.month-panel,.hero-metric{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px}.summary-card{min-width:0}.summary-card span,.insight-card span,.hero-metric span{color:var(--muted);font-size:12px;font-weight:700}.summary-card strong{display:block;margin-top:4px;font-size:clamp(17px,5.4vw,22px);line-height:1.05;overflow-wrap:anywhere}.quick-add-panel{display:grid;gap:9px;padding:10px;border-radius:8px;border:1px solid var(--line);background:var(--panel)}.quick-add-panel>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.quick-add-panel p{color:var(--muted);font-size:12px}.quick-add-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.quick-add-form input{min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);color:var(--text);padding:10px;font:inherit}.quick-add-form input::placeholder{color:var(--muted)}.inline-error{color:var(--danger)!important;font-weight:700}.parse-draft{display:grid;gap:8px;padding:9px;border-radius:8px;background:var(--panel-2);border:1px solid var(--line)}.parse-draft-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.parse-draft-heading span{border:1px solid rgba(38,217,232,.36);color:var(--accent);border-radius:999px;padding:2px 7px;font-size:11px;font-weight:800}.parse-draft-drink{display:grid;gap:3px}.parse-draft-drink b,.parse-draft-drink p{overflow-wrap:anywhere}.parse-draft-drink p{color:var(--text);font-size:13px}.parse-assumptions{display:grid;gap:5px}.parse-assumptions span{color:var(--muted);font-size:12px;line-height:1.35}.parse-actions{display:flex;gap:7px;flex-wrap:wrap}.ghost-button{background:transparent;color:var(--muted);border:1px solid var(--line)}.state-card{display:grid;gap:10px;color:var(--muted)}.state-card strong{color:var(--text)}.error-state button{justify-self:start}.empty-state span{color:var(--muted)}.insight-card{display:grid;gap:6px}.insight-card p{line-height:1.35}.equivalent-block{display:grid;gap:8px}.equivalent-list{display:grid;gap:6px}.equivalent-list span{padding:8px 9px;border-radius:8px;background:var(--panel-2);border:1px solid var(--line);color:#dce7ef;font-size:13px}.hero-metric{display:grid;gap:4px}.hero-metric strong{font-size:clamp(23px,8vw,32px);line-height:1}.hero-metric small{color:var(--accent)}.week-chart{display:grid;gap:9px}.chart-bars{height:136px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;align-items:end;border-left:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 2px 0 8px}.chart-day{min-width:0;height:116px;padding:0;background:transparent;color:var(--muted);display:grid;grid-template-rows:1fr 20px;gap:6px;justify-items:stretch}.bar-wrap{min-width:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}.bar-value{min-height:14px;font-size:10px;color:var(--muted);overflow:hidden;max-width:100%}.bar-fill{width:min(100%,24px);min-height:8px;border-radius:6px 6px 0 0;background:#ffffff1f}.chart-day.nonzero .bar-fill{background:var(--accent)}.chart-day.active .bar-fill{box-shadow:0 0 0 2px var(--accent-soft)}.chart-day.active .bar-label,.chart-day.nonzero .bar-value{color:var(--accent)}.bar-label{font-size:12px;font-weight:800}.selected-day-panel{display:grid;grid-template-columns:1fr;gap:4px;padding:8px;border-radius:8px;background:var(--panel-2);border:1px solid var(--line)}.selected-day-panel span{color:var(--muted)}.entries-section{display:grid;gap:8px}.entry-group,.entry-list{display:grid;gap:6px}.entry-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:9px}.entry-row strong{display:block;line-height:1.25;overflow-wrap:anywhere}.entry-row p{margin-top:3px;color:var(--text);font-size:13px}.entry-row small{display:block;margin-top:2px;color:var(--accent)}.danger-button{background:transparent;color:var(--danger);border:1px solid rgba(255,107,115,.45)}.weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.weekdays span{text-align:center;color:var(--muted);font-size:12px;font-weight:800}.calendar-grid,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.day-cell,.month-day{min-width:0;min-height:56px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:6px;display:grid;gap:2px;position:relative;overflow:hidden}.day-main-link{display:grid;gap:1px;min-height:42px}.day-cell span,.month-day span{font-size:12px;font-weight:800}.day-cell b{min-height:16px;overflow:hidden;white-space:nowrap;font-size:13px}.day-cell small,.month-day small{font-size:10px}.empty{opacity:.28}.level-light,.intensity-1{border-color:#26d9e847}.level-noticeable,.intensity-2{border-color:#26d9e87a;background:#26d9e812}.level-heavy,.intensity-3{border-color:#26d9e8b8;background:#26d9e81c}.level-very_heavy,.intensity-4{border-color:var(--accent);background:#26d9e829}.month-panel{display:grid;gap:8px}.month-day{color:var(--text);min-height:62px}.month-day strong{font-size:11px;color:var(--accent);line-height:1.1}.settings-list{display:grid;gap:10px}.settings-list label{display:grid;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:12px}.settings-list input{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--panel-2);color:var(--text)}.tabbar{position:fixed;left:50%;bottom:0;transform:translate(-50%);width:min(720px,100%);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#0d1117;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:10}.tabbar a,.close-mini-app{text-align:center;padding:12px 6px;color:var(--muted);font-weight:800;font-size:12px;background:transparent;border:0;border-radius:0}.close-mini-app{color:var(--danger)}.tabbar a:focus,.tabbar a:hover,.close-mini-app:focus,.close-mini-app:hover{color:var(--accent)}@media (max-width: 420px){main{padding:10px;gap:9px}.summary-grid{gap:7px}.summary-card{padding:9px}.topbar h1,.screen-header h1{font-size:20px}.action-link{padding:0 9px}.day-cell,.month-day{min-height:52px;padding:5px}.calendar-grid,.month-grid,.weekdays{gap:4px}.entry-row{grid-template-columns:1fr}.quick-add-panel>div:first-child{display:grid;gap:3px}.quick-add-form{grid-template-columns:1fr}.quick-add-form button{width:100%}.danger-button{justify-self:start}}.admin-shell{max-width:1180px;min-height:100vh;margin:0 auto;background:#090b0f;color:#f5f7fb;width:100%;overflow-x:hidden}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-header h1,.admin-login h1{margin:0;font-size:28px}.admin-header p,.admin-login p{margin:4px 0 0;color:#97a2b1}.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;position:sticky;top:0;z-index:2;padding:8px 0;background:#090b0f}.admin-tabs button,.admin-header button,.admin-login button{background:#18202b;color:#f5f7fb;border:1px solid rgba(255,255,255,.08);min-height:38px}.admin-tabs button.active{background:#26d9e8;color:#061115}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.admin-card{background:#121821;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:14px;min-width:0}.admin-card h2{margin:0 0 12px;font-size:18px}.admin-card span,.admin-card dt{color:#97a2b1;font-size:12px}.admin-card strong{display:block;margin-top:6px;font-size:24px}.admin-card-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.admin-card-heading h2{margin:0}.admin-card-heading span{flex:none;color:#97a2b1;font-weight:800}.admin-metric{display:grid;align-content:space-between;min-height:92px}.admin-kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:10px;margin:0}.admin-kv div{background:#0d1219;border-radius:8px;padding:10px}.admin-kv dd{margin:4px 0 0;overflow-wrap:anywhere}.admin-object{display:grid;gap:8px}.admin-object span,.admin-meta-grid span{display:grid;gap:2px;color:#cfd7e3}.admin-object b,.admin-meta-grid b{color:#97a2b1;font-size:11px;text-transform:uppercase}.admin-object em,.admin-meta-grid em{color:#f5f7fb;font-style:normal;overflow-wrap:anywhere}.admin-pill{display:inline-flex;width:fit-content;border-radius:999px;padding:3px 8px;background:#26d9e81f;color:#8deef6!important;font-weight:800}.admin-table-card{overflow:hidden}.admin-table-wrap{max-width:100%;max-height:min(68vh,720px);overflow:auto;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#0d1219}.admin-table{width:100%;border-collapse:separate;border-spacing:0;min-width:760px;table-layout:fixed}.admin-table th,.admin-table td{border-bottom:1px solid rgba(255,255,255,.08);padding:8px;text-align:left;vertical-align:top;font-size:12px;overflow-wrap:anywhere}.admin-table th{color:#97a2b1;font-weight:800;position:sticky;top:0;z-index:1;background:#121821}.admin-table tr:last-child td{border-bottom:0}.admin-metadata summary{cursor:pointer;color:#8deef6;font-weight:800}.admin-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:10px 0}.admin-table pre{max-width:min(520px,70vw);max-height:220px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;color:#cfd7e3;background:#090b0f;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:10px}.admin-bars{min-height:178px;display:grid;grid-template-columns:repeat(auto-fit,minmax(34px,1fr));gap:6px;align-items:end;padding:10px 4px 0;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#0d1219}.admin-bar{min-width:0;display:grid;justify-items:center;align-items:end;gap:6px;height:154px}.admin-bar span{width:min(28px,80%);max-height:130px;border-radius:6px 6px 0 0;background:linear-gradient(180deg,#8deef6,#26d9e8)}.admin-bar small{width:100%;color:#97a2b1;font-size:10px;text-align:center;overflow:hidden;text-overflow:ellipsis}.admin-login{display:grid;place-items:center}.admin-login form{width:min(420px,100%);display:grid;gap:12px;background:#121821;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:18px}.admin-login label{display:grid;gap:6px;color:#97a2b1}.admin-login input{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:11px;background:#090b0f;color:#f5f7fb}.admin-error{color:#ff6b73}@media (max-width: 640px){.admin-header{align-items:flex-start;flex-direction:column}.admin-header button{width:100%}.admin-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.admin-tabs button{flex:0 0 auto}.admin-table{min-width:680px}}
