:root{--bg:#151515;--card:#e4c49f0d;--ink:#eaeaea;--muted:#e4c49f99;--accent:#e4c49f;--btn-bg:#e4c49f26;--line:#e4c49f4d;--line-soft:#e4c49f26;--footer-text:#e4c49f66;--footer-link:#e4c49f80;--danger:#ac4142;--warn:#f4bf75;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);min-height:100svh;color:var(--ink);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;font:16px/1.5 Monaco,Bitstream Vera Sans Mono,Lucida Console,Terminal,monospace;display:flex}#root{flex-direction:column;flex:1;display:flex}.app{flex:1;width:100%;max-width:560px;margin:0 auto;padding:20px 16px 24px}.header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:20px;display:flex}.header h1{color:var(--accent);letter-spacing:-.01em;margin:0;font-size:20px;font-weight:650}.header-right{align-items:center;gap:10px;display:flex}.lang{color:var(--muted);cursor:pointer;letter-spacing:.05em;background:0 0;border:none;padding:2px 4px;font-size:12px}.lang.active{color:var(--ink);text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);font-weight:650;text-decoration-thickness:2px}.menu-wrap{position:relative}.burger{padding:4px 8px;font-size:18px;line-height:1.2}.menu{background:var(--bg);border:1px dashed var(--line);z-index:20;min-width:210px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #00000073}.menu-langs{gap:4px;display:flex}.menu-langs .lang{flex:1;padding:8px 10px;font-size:14px}.menu-langs .lang:hover{background:var(--btn-bg)}.menu-item{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:none;padding:8px 10px;font-size:14px;text-decoration:none;display:block}.menu-item:hover{background:var(--btn-bg)}.menu-item.warn{color:var(--warn);font-weight:600}.menu-sep{background:var(--line);height:1px;margin:6px 4px}.menu-email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:220px;padding:8px 10px 2px;font-size:13px;overflow:hidden}.dot{border-radius:50%;flex:none;width:8px;height:8px}.dot.ok{background:var(--accent)}.dot.busy{background:var(--warn);animation:1.2s ease-in-out infinite pulse}.dot.err{background:var(--danger)}.dot.off{background:var(--muted)}.dot.warn{background:var(--warn)}@keyframes pulse{50%{opacity:.35}}button{font:inherit}.btn-primary{background:var(--btn-bg);color:var(--accent);border:1px solid var(--accent);cursor:pointer;padding:8px 18px;font-weight:600}.btn-primary:disabled{opacity:.45;cursor:default}.add-icon{font-size:18px;line-height:1;display:none}@media (width<=430px){.add-label{display:none}.add-icon{display:inline}.btn-primary{padding:8px 14px}}.btn-ghost{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:13px}.btn-ghost:hover{color:var(--ink);background:var(--btn-bg)}.btn-ghost.warn{color:var(--warn);font-weight:600}.entry-form{background:var(--card);border:1px dashed var(--line);margin-bottom:28px;padding:12px}.entry-form textarea,.entry.editing textarea{width:100%;color:var(--ink);font:inherit;resize:none;background:0 0;border:none;outline:none;min-height:48px;max-height:240px;padding:2px;overflow-y:auto}.entry-form textarea::placeholder{color:var(--muted)}.suggest-wrap{position:relative}.suggest{z-index:20;background:var(--bg);border:1px dashed var(--line);max-height:210px;margin:2px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #00000073}.suggest-item{cursor:pointer;overflow-wrap:anywhere;align-items:baseline;gap:6px;padding:7px 8px;font-size:14px;display:flex}.suggest-item.active,.suggest-item:hover{background:var(--btn-bg)}.suggest-item.banned{color:var(--danger)}.suggest-text{flex:1}.suggest-ban{flex:none;font-size:13px}.form-row{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-top:8px;display:flex}input[type=datetime-local],input[type=date],.dialog input[type=text],.dialog input[type=password]{border:1px solid var(--line);background:var(--bg);max-width:100%;color:var(--ink);font:inherit;color-scheme:inherit;padding:6px 8px;font-size:13px}.dialog-row input[type=text],.dialog-row input[type=password]{flex:1;min-width:0}.form-row .spacer{flex:1}.day{margin-bottom:22px}.day-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 6px 4px;font-size:12px;font-weight:650}.day-list{background:var(--card);border:1px dashed var(--line);margin:0;padding:0;list-style:none}.entry{padding:8px 14px 10px}.entry-head{align-items:center;gap:8px;display:flex}.entry-rule{border-top:1px solid var(--line);flex:1}.entry-time{color:var(--muted);flex:none;font-size:13px}.entry-kcal{color:var(--muted);flex:none;font-size:12px}.entry-text{white-space:pre-wrap;overflow-wrap:anywhere}.entry-line{align-items:baseline;gap:6px;display:flex}.entry-line+.entry-line{border-top:1px dotted var(--line-soft);margin-top:3px;padding-top:3px}.entry-line-text{flex:1}.entry-line.banned .entry-line-text{color:var(--danger)}.ban-btn{opacity:0;padding:0 4px;font-size:13px;transition:opacity .15s}.entry-line:hover .ban-btn,.ban-btn:focus-visible{opacity:1}.ban-btn.active{opacity:1;color:var(--danger)}.entry-actions{opacity:0;gap:2px;transition:opacity .15s;display:flex}.entry:hover .entry-actions,.entry:focus-within .entry-actions{opacity:1}@media (hover:none){.entry-actions{opacity:.6}.ban-btn{opacity:.5}.ban-btn.active{opacity:1}}.icon-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:2px 6px;font-size:14px;line-height:1.4}.icon-btn:hover{color:var(--ink);background:var(--btn-bg)}.icon-btn.danger:hover{color:var(--danger)}.entry.editing textarea{border:1px solid var(--line);padding:8px}.empty{text-align:center;color:var(--muted);padding:32px 0}.psheet{display:none}.overlay{z-index:30;background:#0000008c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dialog{background:var(--bg);border:1px dashed var(--line);width:100%;max-width:340px;padding:16px;box-shadow:0 8px 24px #00000073}.dialog h2{color:var(--accent);margin:0 0 14px;font-size:16px}.dialog-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:14px;display:flex}.dialog input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px;margin:0}.dialog-hint{color:var(--muted);margin:2px 0 0;font-size:12px}.dialog-hint a{color:var(--accent)}.dialog .form-row{margin-top:14px}.notice{background:var(--card);border:1px solid var(--warn);color:var(--warn);cursor:pointer;margin-bottom:16px;padding:8px 12px;font-size:14px}.notice.ok{border-color:var(--accent);color:var(--accent)}.forbidden{background:var(--card);border:1px dashed var(--danger);margin-bottom:28px}.forbidden-toggle{width:100%;color:var(--danger);font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.forbidden-chevron{color:var(--muted);margin-left:auto}.forbidden-list{margin:0;padding:2px 12px 10px;list-style:none;display:none}.forbidden.open .forbidden-list{display:block}.forbidden-item{align-items:baseline;gap:6px;padding:3px 0;display:flex}.forbidden-item+.forbidden-item{border-top:1px dotted var(--line-soft)}.forbidden-text{overflow-wrap:anywhere;flex:1}.site-footer{border-top:1px dashed var(--line);text-align:center;margin-top:40px;padding:20px 0}.site-footer p{color:var(--footer-text);margin:0;font-size:14px}.site-footer a{color:var(--footer-link);text-decoration:none;transition:color .2s}.site-footer a:hover{color:var(--accent)}@page{margin:12mm}@media print{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff}body{color:#000;background:#fff;min-height:0;display:block}#root{display:block}.app,.site-footer{display:none!important}.psheet{color:#000;font:11pt/1.4 Segoe UI,Arial,Helvetica,sans-serif;display:block}.psheet-title{margin:0 0 4mm;font-size:17pt}.psheet-forbidden{border:1px solid #999;margin:0 0 5mm;padding:2mm 2.5mm;font-size:10pt}.pcolumns{columns:82mm;column-rule:1px dotted #bbb;column-fill:auto;column-gap:8mm}.pday{break-inside:avoid;margin:0 0 5mm}.pday-label{break-after:avoid;break-inside:avoid;border-bottom:1px solid #999;margin:0 0 1.5mm;padding-bottom:.8mm;font-size:11.5pt;font-weight:700}.pentry{break-inside:avoid;grid-template-columns:17mm 1fr;gap:0 3mm;padding:1.2mm 0;display:grid}.pentry+.pentry{border-top:1px dotted #ccc}.pentry-time{color:#333;font-size:10pt}.pentry-kcal{color:#777;font-size:8pt;display:block}.pentry-line{overflow-wrap:anywhere}.pentry-line.banned .pentry-text{text-decoration:line-through}}
