:root{--ink:#1c2421;--muted:#56635d;--line:#d5ded8;--accent:#2f6b4f;--accent-hover:#24543e;--accent-ink:#fff;--bg:#f5f7f4;--card:#fff;--danger:#b42318;color:var(--ink);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;line-height:1.5}main{max-width:880px;margin:0 auto;padding:24px 16px 64px}a{color:var(--accent)}h1{line-height:1.2}.site-header{justify-content:space-between;align-items:center;gap:16px;max-width:880px;margin:0 auto;padding:16px;display:flex}.site-header nav{align-items:center;gap:16px;display:flex}.brand{color:var(--ink);font-size:1.25rem;font-weight:700;text-decoration:none}.hero{padding:48px 0}.hero h1{margin:0 0 16px;font-size:clamp(2rem,5vw,3rem)}.hero p{color:var(--muted);max-width:40em;font-size:1.125rem}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;margin:16px 0;padding:20px}.narrow{max-width:420px;margin:32px auto}.card>h1:first-child,.card>h2:first-child{margin-top:0}form{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}form.inline{align-items:center;gap:8px;display:inline-flex}form.row{flex-wrap:wrap;align-items:end;gap:8px;display:flex}form.row label{flex:220px}label{gap:4px;min-width:0;font-weight:600;display:grid}input{font:inherit;border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;min-width:0;padding:8px 10px}input[type=file]{padding:6px}button,.button{font:inherit;cursor:pointer;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);border-radius:8px;padding:8px 16px;font-weight:600;text-decoration:none;display:inline-block}button:not(.link):not(.danger):hover,.button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button.link:hover{text-decoration:underline}button.danger:hover{background:#fef3f2}button:focus-visible,.button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 40%, transparent);outline-offset:2px}button:disabled{opacity:.6;cursor:progress}button.link{color:var(--accent);background:0 0;border:0;padding:0;font-weight:400}button.danger{color:var(--danger);border-color:var(--danger);background:0 0}form button{justify-self:start}.hint{color:var(--muted);margin:0;font-size:.875rem}.error{color:var(--danger);background:#fef3f2;border:1px solid #fecdca;border-radius:8px;padding:8px 12px}.menus{padding:0;list-style:none}.menu{align-items:start;gap:20px;display:flex}.menu>div{flex:1;min-width:0}.menu h2{margin:0 0 4px}.menu p{overflow-wrap:anywhere;margin:0 0 12px}.menu form{margin-top:12px}.qr{background:#fff;flex:none}main.menu-page{max-width:1200px;padding:0}.menu-title{text-align:center;margin:16px;font-size:1.25rem}#menu canvas{width:100%;height:auto;display:block}.loading{text-align:center;color:var(--muted)}@media (max-width:560px){.menu{flex-direction:column}}
