:root{color-scheme:light;--ink:#382940;--purple:#704780;--line:#ded0e4;--paper:#f8f5ef;--muted:#6f6475}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif;font-size:15px;line-height:1.6}header{display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:1180px;margin:auto;padding:24px 32px;border-bottom:1px solid var(--line)}a{color:var(--purple)}.brand{font:700 33px Georgia,serif;text-decoration:none}.brand span{font:18px Arial,sans-serif;letter-spacing:-1px}nav{display:flex;align-items:center;gap:18px}main{max-width:1100px;padding:45px 32px 80px;margin:auto}h1{font:clamp(34px,6vw,54px)/1.1 Georgia,serif;letter-spacing:-1.5px;margin:12px 0 20px}h2{font:24px Georgia,serif;margin-top:0}h3{margin:0 0 7px;font-size:19px}p{margin:8px 0 18px}button,input,select{font:inherit}button,a.primary,a.secondary{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 18px;border:1px solid var(--line);border-radius:9px;text-decoration:none;font-size:13px;font-weight:600;background:transparent;color:var(--purple)}button:hover,a.primary:hover,a.secondary:hover{filter:brightness(.94)}button.primary,a.primary{background:var(--purple);border-color:var(--purple);color:#fff}.quiet{border:0;padding:4px}button:disabled,.disabled{opacity:.5;pointer-events:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bb8dce;outline-offset:3px}.eyebrow{letter-spacing:2px;font-size:10px;font-weight:700;color:var(--purple)}.muted,small{color:var(--muted);font-size:13px}.heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.login-card{max-width:560px;margin:40px auto;text-align:center}.google{margin:18px 0 24px;min-width:270px}.google span{font-size:20px}.login-card small{display:block;max-width:400px;margin:20px auto}.menu-list{display:grid;gap:14px}.menu-card,.panel{border:1px solid var(--line);border-radius:15px;background:#fffaf3;padding:22px}.menu-card{display:flex;align-items:center;justify-content:space-between;gap:25px}.actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.badge{font-size:11px;border:1px solid var(--line);border-radius:20px;padding:3px 10px;display:inline-block;margin-bottom:8px}.badge.active{background:#e9f0df;color:#3d6735}.notice{padding:15px 18px;border-radius:10px;background:#eee6f4;font-size:13px}.notice.error,#message.error{color:#a04128;background:#fff0e5}.empty{padding:45px;text-align:center;border:1px dashed var(--line);border-radius:16px}.admin-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.admin-tabs button[aria-pressed=true]{background:var(--purple);color:#fff}.admin-section{margin-top:25px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.panel p{font-size:13px;color:var(--muted)}label{display:block;font-size:13px;font-weight:700;margin-bottom:17px}input,select{display:block;width:100%;padding:11px 13px;color:var(--ink);background:#fffcf7;border:1px solid var(--line);border-radius:8px;margin-top:5px}.check{display:flex;align-items:center;gap:10px}.check input{width:18px;margin:0}code{font-size:11px;overflow-wrap:anywhere}#admin-message{position:sticky;bottom:10px}.scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{text-align:left;padding:12px 9px;border-bottom:1px solid var(--line);vertical-align:top}td input,td select{min-width:120px}td .actions{min-width:200px}.form-actions{margin-top:24px;display:flex;gap:12px;flex-wrap:wrap}dialog{border:1px solid var(--line);border-radius:16px;background:var(--paper);color:var(--ink);max-width:min(510px,94vw);padding:26px}dialog::backdrop{background:#22142d88}.dialog-close{float:right}.admin-card-note{font-size:12px;color:var(--muted);margin-top:18px}[hidden]{display:none!important}@media(max-width:650px){header{padding:18px 20px}main{padding:30px 20px 60px}.heading,.menu-card{display:block}.heading>.primary{margin-top:15px}.menu-card .actions{margin-top:18px}.settings-grid{grid-template-columns:1fr}.login-card{margin-top:15px}nav{font-size:12px}.panel{padding:18px}}.receipt-review-dialog{width:min(600px,94vw);max-height:92vh;overflow:auto}.receipt-review-dialog textarea{display:block;width:100%;min-height:80px;box-sizing:border-box;margin:15px 0;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fffcf7;color:var(--ink);font:13px Arial,sans-serif}.receipt-review-dialog>button{margin-right:8px;margin-top:10px}.receipt-review-dialog>a{display:block;margin:12px 0}fieldset{border:1px solid var(--line);border-radius:10px;margin:20px 0;padding:16px}fieldset legend{font-weight:700;font-size:14px}fieldset .check{font-size:14px;margin:10px 0}input,select{font-size:16px}button,a.primary,a.secondary{min-height:44px}.settings-fields{border:0;padding:0;margin:0;min-inline-size:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.row-actions{display:flex;flex-wrap:wrap;gap:8px}.technical-details{margin-top:10px;color:var(--muted)}.technical-details summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:13px}.technical-details code{display:block;overflow-wrap:anywhere}#menus-status,#settings-loading{font-size:14px;color:var(--muted)}.menu-card h2{font:700 19px/1.4 Arial,sans-serif;margin:0 0 7px}@media(max-width:650px){.admin-section .scroll{overflow-x:visible}.admin-section table,.admin-section tbody{display:block;width:100%}.admin-section thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.admin-section tbody>tr{display:block;border:1px solid var(--line);border-radius:14px;margin:0 0 16px;padding:8px 16px;background:#fffaf3}.admin-section td{display:block;width:100%;padding:10px 0;font-size:14px;overflow-wrap:anywhere}.admin-section td:before{content:attr(data-label);display:block;color:var(--muted);font-size:12px;font-weight:700;margin-bottom:5px}.admin-section td:last-child{border-bottom:0}.admin-section td input,.admin-section td select{min-width:0;max-width:100%;width:100%}.admin-section td p{margin:5px 0}.row-actions>*{flex:1 1 130px}.admin-section td>button{width:100%}}
