:root{color-scheme:light;--ink:#382b1e;--muted:#756a5e;--amber:#e9a421;--paper:#fffcf6;--line:#eadfce;--soft:#fff2d4;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);line-height:1.55}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #a95800;outline-offset:4px}.site-header,.site-footer,main{width:min(1080px,calc(100% - 40px));margin:auto}.site-header{display:flex;justify-content:space-between;align-items:center;padding:27px 0;border-bottom:1px solid var(--line);gap:20px}.wordmark{font-size:1.4rem;font-weight:750;letter-spacing:-.06em;text-decoration:none}.wordmark span{color:#cc7f00}nav{display:flex;align-items:center;gap:24px;font-size:.9rem}nav form{margin:0}main{min-height:68vh;padding:48px 0 64px}.intro{max-width:680px;padding:32px 0 48px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.73rem;font-weight:750;color:#986300}h1{font-size:clamp(2rem,5vw,3.75rem);line-height:1.12;letter-spacing:-.045em;margin:14px 0 24px;font-weight:650}h2{font-size:1.4rem;letter-spacing:-.025em;margin:0 0 18px}p{margin:0 0 18px}.intro>p:not(.eyebrow){font-size:1.08rem;color:var(--muted)}.site-footer{padding:22px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.82rem}.restaurant-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.restaurant-card,.panel{border:1px solid var(--line);border-radius:14px;background:#fff;padding:26px}.restaurant-card{display:flex;justify-content:space-between;gap:15px;align-items:center;text-decoration:none;font-weight:650}.restaurant-card:hover{background:var(--soft);border-color:#d9ad55}.empty{background:var(--soft);padding:28px;border-radius:12px;color:var(--muted)}.muted,small{color:var(--muted)}.admin-title{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:32px}.admin-title h1{font-size:2.4rem;margin:0 0 12px}.admin-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:24px;align-items:start}.form-stack{display:grid;gap:18px}.field{display:grid;gap:7px;font-size:.92rem;font-weight:600}input{min-width:0;width:100%;padding:11px 12px;border:1px solid #c9bdac;border-radius:7px;background:#fff;color:var(--ink)}small{font-size:.78rem;font-weight:400}.button,button{display:inline-flex;justify-content:center;align-items:center;border:1px solid #dfa021;background:#f6bd48;color:#382b1e;padding:11px 18px;border-radius:7px;font-weight:650;cursor:pointer;text-decoration:none}.button:hover,button:hover{background:#f2b02c}.text-button{background:none;border:0;padding:0;font-weight:400}.text-button:hover{background:none;text-decoration:underline}.notice{padding:16px 20px;border:1px solid #dfbd78;border-radius:9px;background:var(--soft);margin-bottom:24px}.error{background:#fff1eb;border-color:#dfa28d;color:#833b24}.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.75rem;font-weight:600;background:#f0ece6;color:#65594b}.badge.active{background:#e8f2df;color:#46612a}.badge.suspended{background:#fce9de;color:#8a4423}.restaurant-list{list-style:none;margin:0;padding:0}.restaurant-list li{padding:20px 0;border-bottom:1px solid var(--line)}.restaurant-list li:last-child{border:0}.row{display:flex;justify-content:space-between;gap:15px;align-items:center}.restaurant-name{font-weight:650}.restaurant-meta{font-size:.82rem;color:var(--muted);margin-top:5px}.login-panel{max-width:440px;margin:16px auto}.login-panel h1{font-size:2rem;margin-top:0}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.links{display:grid;gap:12px;margin:24px 0}.spaced{margin-top:24px}code{overflow-wrap:anywhere;font-size:.85em}button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:760px){.admin-grid,.detail-grid{grid-template-columns:1fr}.site-header{align-items:flex-start}.site-header,main,.site-footer{width:calc(100% - 32px)}nav{gap:16px}main{padding-top:32px}.intro{padding-top:16px}h1{font-size:2.6rem}.panel{padding:22px}.row{align-items:start}.admin-title{display:block}}
