:root{--bg:#FBF8F2;--bg2:#F4EEE2;--ink:#1E2621;--ink2:#404944;--jade:#2B5B47;--sage:#3D735B;--vm:#C35B3B;--gold:#D4AF37;--line:rgba(43,91,71,.12);--serif:"Noto Serif",serif;--sans:"Plus Jakarta Sans",sans-serif;--shadow:0 12px 36px -8px rgba(30,38,33,.08),0 2px 8px -2px rgba(30,38,33,.04)}*{box-sizing:border-box;margin:0}body{background:var(--bg);color:var(--ink);font:400 1rem/1.6 var(--sans);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.25}h2{font-size:1.75rem}h3{font-size:1.25rem;font-weight:500}p{color:var(--ink2)}.wrap{max-width:1360px;margin:auto;padding:0 clamp(1.25rem,5vw,5rem)}.muted{font-size:.875rem;color:var(--ink2)}.boot{padding:4rem 1rem;text-align:center}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;border-radius:4px;font:600 .85rem var(--sans);border:1px solid var(--jade);background:var(--jade);color:var(--bg);cursor:pointer}.btn:hover{background:var(--sage)}.btn.vm{background:var(--vm);border-color:var(--vm)}.btn.vm:hover{background:#a84c30}.btn.ghost{background:transparent;color:var(--jade)}.btn.ghost:hover{background:var(--bg2)}.btn:disabled{opacity:.6;cursor:wait}.tabs{display:flex;gap:.5rem;flex-wrap:wrap}.tabs button{padding:.45rem 1.1rem;border-radius:999px;border:1px solid var(--line);background:var(--bg2);font:600 .85rem var(--sans);color:var(--ink2);cursor:pointer}.tabs button.on{background:var(--jade);color:var(--bg);border-color:var(--jade)}.panel{background:var(--bg);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}#toast{position:fixed;left:50%;bottom:1.5rem;z-index:80;transform:translate(-50%,2rem);width:min(92%,26rem);background:var(--jade);color:#fff;padding:1rem 1.25rem;border-radius:8px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:all .4s;font-size:.9rem}#toast.show{opacity:1;transform:translate(-50%)}.adm{background:var(--bg2);min-height:100vh}.box{max-width:26rem;margin:10vh auto;padding:2rem}.adm form{display:grid;gap:1rem}.adm label{display:grid;gap:.25rem;font-size:.8rem;font-weight:600;color:var(--jade)}.adm input:not([type=checkbox]):not([type=range]),.adm select,.adm textarea{font:400 .95rem var(--sans);padding:.6rem;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink)}.adm .checks{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.adm .checks label{display:flex;gap:.4rem;align-items:center;font-weight:500}.ah{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem clamp(1rem,4vw,3rem);background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.ah>span{display:flex;gap:.9rem;align-items:center;font-size:.85rem;flex-wrap:wrap}.adm .wrap{padding-block:1.5rem 4rem}.adm .tabs{margin-bottom:1.5rem}.adm h3{margin:2rem 0 .5rem}.adm h3 small{font:.85rem var(--sans);color:var(--ink2)}.bar{margin-bottom:.5rem}.arow{display:grid;grid-template-columns:auto 4.5rem 1fr auto;gap:1rem;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:.6rem;margin-top:.5rem}.arow .th{width:4.5rem;height:3.4rem;border-radius:4px;object-fit:cover;background:var(--bg2);display:grid;place-items:center;font:1.5rem var(--serif);color:var(--jade)}.arow b{display:block}.arow .acts{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end}.arow button,.tbl button,.ocard button{padding:.35rem .65rem;border:1px solid var(--line);border-radius:4px;background:#fff;font:600 .75rem var(--sans);cursor:pointer}.arow button:hover,.tbl button:hover,.ocard button:hover{background:var(--jade);color:#fff}.arow.dim{opacity:.55}.arow button.danger,.ocard button.danger{color:var(--vm)}.arow button.danger:hover,.ocard button.danger:hover{background:var(--vm);color:#fff}.drag{cursor:grab;font-size:1.2rem;color:var(--ink2);padding:0 .3rem;-webkit-user-select:none;user-select:none;touch-action:none}.drag-ghost{opacity:.4;background:var(--bg2)}.err{color:var(--vm);font-size:.85rem;min-height:1.2em}dialog{width:min(40rem,94vw);max-height:92vh;border:0;border-radius:8px;padding:1.5rem;background:var(--bg)}dialog::backdrop{background:#141c1780}fieldset{border:1px solid var(--line);border-radius:6px;padding:1rem;display:grid;gap:.75rem}legend{font:600 .85rem var(--sans);color:var(--jade);padding:0 .4rem}#prev,#oldImg{width:100%;max-width:320px;border-radius:6px;aspect-ratio:4/3;object-fit:cover}@media(max-width:600px){.arow{grid-template-columns:auto 3.5rem 1fr}.arow .acts{grid-column:1/-1;justify-content:flex-start}}.cnt{font-weight:400;color:var(--ink2);font-size:.72rem}.cnt.bad{color:var(--vm);font-weight:600}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.hint{font-size:.78rem;color:var(--ink2)}.adm .panel{padding:1.25rem;margin-bottom:1.25rem;display:grid;gap:1rem}.adm .panel h3{margin:0}.adm .row{display:flex;gap:.75rem;justify-content:flex-end;flex-wrap:wrap;align-items:center}.adm select{max-width:100%}.rolebadge{display:inline-block;padding:.15rem .6rem;border-radius:999px;background:var(--jade);color:var(--bg);font-size:.72rem;font-weight:600;letter-spacing:.02em}.who{font-size:.8rem;color:var(--ink2);display:inline-flex;gap:.5rem;align-items:center}.opts{display:flex;gap:1rem;flex-wrap:wrap}.opts label{display:flex;gap:.4rem;align-items:center;font-weight:500}.tbl{width:100%;border-collapse:collapse;font-size:.9rem}.tbl td,.tbl th{padding:.55rem .4rem;border-bottom:1px solid var(--line);text-align:left}.langsw{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}.langsw button{border:0;background:transparent;padding:.25rem .65rem;font:600 .75rem var(--sans);cursor:pointer;color:var(--ink2)}.langsw button.on{background:var(--jade);color:var(--bg)}.ogrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:1rem}.ocard{background:var(--bg);border:1px solid var(--line);border-left:5px solid var(--jade);border-radius:8px;padding:1rem;display:grid;gap:.6rem}.ocard.st-new{border-left-color:var(--vm)}.ocard.st-preparing{border-left-color:var(--gold)}.ocard.st-done,.ocard.st-cancelled{opacity:.65;border-left-color:#999}.ocard ul{list-style:none;padding:0;display:grid;gap:.15rem;font-size:.9rem}.ocard .ohead{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.ocard .oft{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;justify-content:space-between}.paytag{font-size:.72rem;font-weight:600;padding:.1rem .5rem;border-radius:4px;background:#c35b3b1f;color:var(--vm)}.paytag.ok{background:#2b5b471f;color:var(--jade)}.qgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1rem}.qcard{border:1px solid var(--line);border-radius:8px;padding:1rem;text-align:center;display:grid;gap:.4rem;justify-items:center;break-inside:avoid}.qcard img{width:100%;max-width:14rem}.qcard small{word-break:break-all;color:var(--ink2);font-size:.65rem}@media print{body.printing .adm-shell,body.printing #toast{display:none!important}body.printing dialog#qdlg{position:static;width:auto;max-height:none;box-shadow:none;padding:0}body.printing .noprint{display:none!important}}.themes{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.6rem;margin:.75rem 0}.theme{display:flex;align-items:center;gap:.6rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:8px;background:var(--bg);font:500 .82rem var(--sans);color:var(--ink);cursor:pointer;text-align:left}.theme.on{border-color:var(--jade);box-shadow:0 0 0 2px var(--jade) inset}.tsw{display:flex}.tsw i{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.12);margin-right:-4px}.tprev{display:flex;flex-direction:column;gap:.4rem;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:8px;margin:.75rem 0}.tbtn{color:#fff;font:600 .78rem var(--sans);padding:.35rem .8rem;border-radius:4px}.tchip{font:500 .74rem var(--sans);padding:.3rem .7rem;border-radius:999px}.badge{display:inline-block;padding:.1rem .55rem;border-radius:999px;font:600 .7rem var(--sans);background:var(--bg2);color:var(--ink2)}.badge.live{background:var(--jade);color:#fff}.badge.holiday{background:var(--vm);color:#fff}.star{background:none;border:0;cursor:pointer;font-size:1.15rem;line-height:1;color:var(--ink2)}.star.on{color:var(--gold)}.pausebtn.on{background:var(--vm);border-color:var(--vm);color:#fff}
