:root{--brand:#b4501f;--brand-dark:#8a3c16;--brand-soft:#f6e2d4;--paper:#f6f0e4;--card:#fffdf8;--ink:#2b2222;--muted:#7a6e68;--line:#e4dccd;--ok:#2f6b3f;--warn:#9a6a00;--bad:#b3261e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--paper);font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:var(--brand)}button,input,select,textarea,.button{font:inherit;touch-action:manipulation}input,select,textarea{border:1px solid var(--line);background:var(--card);width:100%;color:var(--ink);border-radius:10px;padding:.7rem .8rem}input.invalid{border-color:var(--bad);box-shadow:0 0 0 1px var(--bad)}button,.button{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:10px;padding:.65rem .9rem;text-decoration:none;display:inline-block}button:disabled{opacity:.55;cursor:default}button.primary,.button.primary{background:var(--brand);border-color:var(--brand);color:#fff}button.link{color:var(--brand);background:0 0;border:none;padding:.3rem}button.link.inline{font-size:inherit;padding:0}button.danger,.danger{color:var(--bad)}button.primary.danger{background:var(--bad);border-color:var(--bad);color:#fff}label{color:var(--muted);margin:.7rem 0;font-size:.9rem;display:block}label>input,label>select,label>textarea{color:var(--ink);margin-top:.3rem;font-size:1rem}textarea{resize:vertical;line-height:1.4}label.check{color:var(--ink);align-items:center;gap:.6rem;font-size:1rem;display:flex}label.check input{width:auto;margin:0}.muted{color:var(--muted);font-size:.9em}.small{font-size:.85rem}.error{color:var(--bad)}.warn{color:var(--warn);font-size:.9rem}.ok-text{color:var(--ok);font-size:.9rem}.hint{color:var(--muted);margin:.25rem 0 0;font-size:.85rem}.loading{text-align:center;color:var(--muted);padding:2rem}.notice{background:#fff3cd;border-radius:10px;padding:.7rem .9rem;font-size:.92rem}.error-box{color:var(--bad);background:#fde8e6;border-radius:10px;margin-top:.6rem;padding:.7rem .9rem}h2{margin:1.2rem 0 .3rem;font-size:1.05rem}h3{color:var(--muted);margin:1rem 0 .4rem;font-size:.95rem}details>summary{cursor:pointer;color:var(--brand);padding:.4rem 0}.screen{flex-direction:column;min-height:100dvh;display:flex}header.bar{z-index:5;padding:calc(env(safe-area-inset-top) + .6rem) 1rem .6rem;background:var(--brand);color:#fff;justify-content:space-between;align-items:center;gap:.6rem;display:flex;position:sticky;top:0}header.bar strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}main{padding:1rem;padding-bottom:calc(5rem + env(safe-area-inset-bottom));flex:1;width:100%;max-width:40rem;margin:0 auto}main.wide{max-width:80rem}nav.tabs{z-index:5;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}nav.tabs a{text-align:center;color:var(--muted);flex:1;padding:.9rem 0;font-size:.92rem;text-decoration:none}nav.tabs a.active{color:var(--brand);font-weight:600}.badge{color:#fff;white-space:nowrap;background:#fff3;border-radius:99px;padding:.25rem .6rem;font-size:.8rem;text-decoration:none}.badge.offline{background:#8a6d1d}.badge.error{background:var(--bad)}.banner{background:#fff3cd;justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 1rem;display:flex}.row{align-items:center;gap:.5rem;display:flex}.row>input{flex:1;min-width:0}.row.wrap{flex-wrap:wrap}.between{justify-content:space-between}.grow{flex:1;min-width:0}.buttons{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.segmented{border:1px solid var(--line);border-radius:10px;margin-bottom:1rem;display:flex;overflow:hidden}.segmented button{border:none;border-radius:0;flex:1;padding:.6rem .3rem}.segmented button.active{background:var(--brand);color:#fff}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chips button{border-radius:99px;padding:.35rem .75rem;font-size:.88rem}.chips button.active{background:var(--brand);border-color:var(--brand);color:#fff}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1rem}.card+.card{margin-top:.8rem}.card>h2:first-child{margin-top:0}.list{margin:.5rem 0;padding:0;list-style:none}.list>li{border-bottom:1px solid var(--line)}.list>li:last-child{border-bottom:none}.list>li.entry{align-items:flex-start;gap:.8rem;padding:.6rem .2rem;display:flex}.entry-text{flex:1;min-width:0}.list>li.entry>.entry-action{text-align:right;white-space:nowrap;flex:none;width:auto;padding:0 .2rem}.side{text-align:right;font-variant-numeric:tabular-nums;flex-direction:column;flex:none;align-items:flex-end;width:6.5rem;font-size:.92rem;display:flex}.tag{background:var(--brand);color:#fff;vertical-align:.1em;white-space:nowrap;border-radius:99px;margin-left:.4rem;padding:.1rem .5rem;font-size:.72rem}.tag.soft{background:var(--brand-soft);color:var(--brand-dark)}.dish-row{text-align:left;width:100%;color:inherit;background:0 0;border:none;border-radius:0;grid-template-columns:2.6rem minmax(0,1fr) auto;align-items:start;gap:.6rem;padding:.6rem .2rem;display:grid}.dish-row .no{text-align:center;color:var(--brand);font-variant-numeric:tabular-nums;padding-top:.05rem;font-weight:600}.dish-row .name{min-width:0}.dish-row .name b{font-weight:600}.dish-row .facts{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;display:block;overflow:hidden}.dish-row .price{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.dish-row.on{background:var(--brand-soft);border-radius:10px}.dish-row.on .no{background:var(--brand);color:#fff;border-radius:6px;padding:.05rem 0}.dish-row.archived{opacity:.55}sup.codes{color:var(--muted);margin-left:.2rem;font-size:.68rem}.auth{max-width:25rem;padding:calc(env(safe-area-inset-top) + 2rem) 1rem 2rem;flex-direction:column;min-height:100dvh;margin:0 auto;display:flex}.auth .card{margin-top:1rem}.auth h1{color:var(--brand);align-items:center;gap:.7rem;margin:0;font-size:1.6rem;display:flex}.auth h1 img{border-radius:10px;width:44px;height:44px}.auth h2{margin-top:0}.auth .tagline{margin:.3rem 0 0}.auth form>button.primary,.auth .wide{width:100%;margin-top:.6rem}.auth .or{text-align:center;border-top:1px solid var(--line);margin:1.2rem 0 .6rem;padding-top:1rem}.auth .center{text-align:center}.auth footer{text-align:center;margin-top:auto;padding-top:2rem}.reveal{margin-top:.3rem;display:block;position:relative}.reveal>input{color:var(--ink);margin-top:0;padding-right:3rem;font-size:1rem}.reveal>button{color:var(--muted);padding:.4rem;line-height:0;position:absolute;top:50%;right:.3rem;transform:translateY(-50%)}.choice{gap:.5rem;display:flex}.choice label{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:10px;flex:1;margin:0;padding:.7rem;font-size:.95rem}.choice label.on{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.choice input{width:auto;margin:0 .4rem 0 0}.choice.vertical{flex-direction:column}.choice.vertical label{align-items:flex-start;display:flex}.choice.vertical label .hint{display:block}.account section{margin-bottom:1.4rem}.account .row>button{flex:none}.team .member{flex-direction:column;gap:.4rem;padding:.7rem .2rem;display:flex}.team .actions{flex-wrap:wrap;gap:.4rem;display:flex}.team .actions button{padding:.4rem .6rem;font-size:.85rem}.team .member>.row{align-items:flex-start;gap:.6rem}.team fieldset{border:none;min-width:0;margin:.8rem 0 0;padding:0}.team legend{color:var(--muted);margin-bottom:.3rem;padding:0;font-size:.9rem}.team .side{text-align:left;align-items:flex-start}.access-form{background:#f3ece0;border-radius:12px;padding:.2rem .8rem .8rem}.linkbox{background:#f3ece0;border-radius:12px;margin:.8rem 0;padding:.8rem}.linkbox input{margin:.5rem 0;font-size:.85rem}.split{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:1.5rem;display:grid}.side-pane{max-height:calc(100dvh - 7rem);position:sticky;top:5rem;overflow:auto}@media (max-width:899px){.split{display:block}.side-pane{max-height:none;position:static}}.menus .new{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.menus .new button{text-align:left;padding:.9rem .6rem}.menus .new button b{display:block}.menu-row{align-items:flex-start;gap:.8rem;padding:.7rem .2rem;display:flex}.menu-row>a{min-width:0;color:inherit;flex:1;text-decoration:none}.menu-row .actions{flex:none;gap:.2rem;display:flex}.menu-row .actions button{padding:.35rem .55rem;font-size:.85rem}.editor .head input.title{font-size:1.25rem;font-weight:600}.editor .head .row input{font-size:.95rem}.toolbar{top:calc(env(safe-area-inset-top) + 3.1rem);z-index:4;background:var(--paper);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.4rem;margin:0 -1rem .8rem;padding:.5rem 1rem;display:flex;position:sticky}.toolbar button{padding:.5rem .75rem;font-size:.92rem}.toolbar .state{color:var(--muted);margin-right:auto;font-size:.85rem}.toolbar .state.dirty{color:var(--warn)}main.wide .toolbar{border-radius:0 0 12px 12px;margin-left:0;margin-right:0}.picker .search{font-size:1.05rem}.picker .filters{margin:.6rem 0}.picker .results{max-height:none}.picker .count{color:var(--muted);justify-content:space-between;align-items:center;margin:.3rem 0;font-size:.85rem;display:flex}.quick-hint{margin:.4rem 0 0;font-size:.85rem}.section-card{padding:.6rem .8rem}.section-card+.section-card{margin-top:.8rem}.section-card.set{border-color:var(--brand)}.section-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;display:grid}.section-head input{font-weight:600}.section-extra{grid-template-columns:minmax(0,1fr) 7rem;gap:.5rem;margin-top:.4rem;display:grid}.item{border-bottom:1px solid var(--line);grid-template-columns:2.2rem minmax(0,1fr) 6rem auto;align-items:center;gap:.5rem;padding:.45rem 0;display:grid}.item:last-child{border-bottom:none}.item.set{grid-template-columns:2.2rem minmax(0,1fr) auto}.item .no{text-align:center;color:var(--brand);font-variant-numeric:tabular-nums;cursor:grab;-webkit-user-select:none;user-select:none;font-weight:600}.item .name{min-width:0}.item .name .catalog{color:var(--warn);font-size:.78rem;display:block}.item .name .facts{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;display:block;overflow:hidden}.item input.price{text-align:right;font-variant-numeric:tabular-nums;padding:.45rem .5rem}.item .moves{align-items:center;gap:.1rem;display:flex}.item .moves button{color:var(--muted);background:0 0;border:none;padding:.3rem .45rem;font-size:1rem}.item .moves button:hover{color:var(--brand)}.grip{width:2.4rem;height:2.4rem;color:var(--muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.grip:hover,.grip:focus-visible{color:var(--brand);background:var(--brand-soft);outline:none}.lifted{z-index:6;background:var(--card);cursor:grabbing;border-radius:10px;position:relative;box-shadow:0 8px 24px #28190f38}.lifted .grip{cursor:grabbing;color:var(--brand)}.drop-before{box-shadow:inset 0 3px 0 var(--brand)}.drop-end>[data-sort-row]:last-of-type{box-shadow:inset 0 -3px 0 var(--brand)}.drop-empty{outline:2px dashed var(--brand);outline-offset:2px;border-radius:8px}.sort-group{min-height:2.5rem}.category-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 2rem auto auto;align-items:center;gap:.4rem;padding:.3rem 0;display:grid}.category-row input{padding:.5rem .6rem}.category-row .count{text-align:right;font-variant-numeric:tabular-nums}.toolbar .back{color:var(--brand);white-space:nowrap;margin-right:.4rem;font-weight:600;text-decoration:none}.empty{color:var(--muted);padding:.8rem 0;font-size:.92rem}.options .row{gap:1rem}.layouts{flex-direction:column;gap:.4rem;margin:.4rem 0 .8rem;display:flex}.layouts button{text-align:left}.layouts button.active{background:var(--brand);border-color:var(--brand);color:#fff}.layouts button .hint{color:inherit;opacity:.8}.tag-choice{flex-wrap:wrap;gap:.2rem 1rem;display:flex}.tag-choice label.check{margin:.2rem 0;font-size:.92rem}.overlay{z-index:20;background:#1e140f73;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.dialog{background:var(--card);border-radius:16px;width:100%;max-width:30rem;max-height:90dvh;padding:1.1rem;overflow:auto;box-shadow:0 10px 40px #00000040}.dialog h2{margin-top:0}.dialog .diff{border-bottom:1px solid var(--line);color:var(--ink);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;margin:0;padding:.4rem 0;font-size:.95rem;display:grid}.dialog .diff input{width:auto;margin:0}.dialog .diff .prices{font-variant-numeric:tabular-nums;white-space:nowrap}.preview{z-index:20;padding:calc(env(safe-area-inset-top) + .5rem) .5rem calc(env(safe-area-inset-bottom) + .5rem);background:#1e140f99;flex-direction:column;display:flex;position:fixed;inset:0}.preview .preview-bar{color:#fff;justify-content:space-between;align-items:center;gap:.5rem;padding:0 .2rem .5rem;display:flex}.preview iframe{background:#fff;border:none;border-radius:10px;flex:1;width:100%;max-width:52rem;margin:0 auto}.toast{left:1rem;right:1rem;bottom:calc(4.8rem + env(safe-area-inset-bottom));z-index:30;background:var(--ink);color:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;max-width:36rem;margin:0 auto;padding:.8rem 1rem;display:flex;position:fixed}.toast button{color:#fff;background:0 0;border-color:#fff6}.print-sheet{left:16px;right:16px;bottom:calc(5rem + env(safe-area-inset-bottom));z-index:50;background:var(--card);border:1px solid var(--line);border-radius:14px;gap:.6rem;max-width:30rem;margin:0 auto;padding:1rem;display:grid;position:fixed;box-shadow:0 8px 30px #0000002e}.print-sheet p{margin:0}.filters-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.filters-row>input{flex:2;min-width:12rem}.dish-form textarea{min-height:5rem}.codes-grid{grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.1rem .8rem;margin-top:.3rem;display:grid}.codes-grid label.check{margin:.15rem 0;font-size:.92rem}.codes-grid label.check b{min-width:1.4rem;color:var(--brand);display:inline-block}.two{grid-template-columns:7rem minmax(0,1fr);gap:.8rem;display:grid}.two>label{margin-top:.3rem}.allergen-table{border-collapse:collapse;width:100%}.allergen-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:.25rem .2rem}.allergen-table td input,.allergen-table td select{padding:.45rem .5rem}.allergen-table td.code{width:5rem}.allergen-table td.kind{width:9.5rem}.allergen-table td.act{text-align:center;width:2.5rem}.import .upload{margin:1rem 0 .3rem;display:block}.summary{grid-template-columns:1fr 1fr;gap:.3rem 1rem;padding:0;list-style:none;display:grid}.problems li{padding:.35rem 0;font-size:.9rem}.web-qr{width:11rem;max-width:60%;margin:0 auto}.web-qr svg{width:100%;height:auto;display:block}.web-url{text-align:center;overflow-wrap:anywhere;margin:.4rem 0}.web-views{border-top:1px solid var(--line);margin:.8rem 0;padding-top:.6rem}.web-views-title{margin:0 0 .4rem;font-weight:600}.web-views-axis{justify-content:space-between;font-size:.75rem;display:flex}.web-views-stats{text-align:center;color:var(--muted);grid-template-columns:repeat(3,1fr);font-size:.8rem;display:grid}.web-views-stats b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.4rem;display:block}.web-views-bars{border-bottom:1px solid var(--line);align-items:flex-end;gap:2px;height:3rem;margin:.5rem 0 .2rem;display:flex}.web-views-bars span{flex:1;align-items:flex-end;height:100%;display:flex}.web-views-bars i{background:var(--brand);border-radius:2px 2px 0 0;width:100%;display:block}.status-line{background:var(--card);border:1px solid var(--line);border-radius:10px;margin:.6rem 0;padding:.6rem .8rem;font-size:.92rem}.status-line.on{border-color:var(--ok)}.status-line.outdated{border-color:var(--warn);background:#fff8e6}.word-styles{background:var(--card);border:1px solid var(--line);border-radius:10px;margin:.6rem 0;padding:.6rem .8rem;font-size:.9rem}@media (max-width:899px){.item{grid-template-columns:1.8rem minmax(0,1fr) 4.6rem auto;gap:.35rem}.item.set{grid-template-columns:1.8rem minmax(0,1fr) auto}.item .moves button{padding:.3rem .2rem}.grip{width:2.2rem}.toolbar{gap:.3rem}.toolbar button{padding:.4rem .55rem;font-size:.85rem}}
