:root{--green:#247b51;--danger:#b93727}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body)}.admin-layout{min-height:100vh}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:246px;background:#fff;border-right:1px solid var(--line);padding:26px 18px;display:flex;flex-direction:column;z-index:2}.brand{display:flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none;font-size:20px;font-weight:700;letter-spacing:-1px}.brand-mark{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:var(--orange);color:#fff;font-weight:700;font-style:italic}.admin-label{margin:54px 12px 13px;font-size:10px;font-weight:700;letter-spacing:.14em;color:#a09a90}.admin-sidebar nav{display:grid;gap:6px}.nav-link{display:flex;align-items:center;gap:11px;padding:13px 12px;border-radius:10px;color:#625d55;text-decoration:none;font-size:14px;font-weight:600}.nav-link span{width:18px;color:#8a847b}.nav-link:hover,.nav-link.is-active{background:#fff0e9;color:#d5320b}.nav-link.is-active span{color:var(--orange)}.sidebar-bottom{margin-top:auto}.sidebar-bottom p{border-top:1px solid var(--line);padding:18px 8px 14px;color:#8b857d;font-size:12px;line-height:1.55}.sign-out{display:flex;justify-content:space-between;width:100%;padding:12px 8px;border:0;background:none;color:#6d6d70;font:600 13px inherit;cursor:pointer}.admin-main{margin-left:246px}.topbar{height:58px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;color:#8b857b;font-size:10px;letter-spacing:.13em;font-weight:700}.identity{letter-spacing:0;text-transform:none;color:#423d36;font-size:12px}.content{width:min(1120px,calc(100% - 80px));margin:44px auto 80px}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}.eyebrow{margin:0 0 9px;color:var(--orange);font-size:10px;font-weight:700;letter-spacing:.15em}.page-heading h1{margin:0;font-family:var(--body);font-size:clamp(34px,4.2vw,54px);letter-spacing:-.055em;font-weight:800}.title-dot{color:var(--orange)}.subtitle{margin:9px 0 0;color:var(--muted);font-size:15px}.button{border:0;border-radius:9px;padding:12px 16px;font:700 12px var(--body);cursor:pointer;transition:transform .16s,background .16s}.button:hover{transform:translateY(-1px)}.button-light{background:#fff;border:1px solid var(--line);color:var(--ink)}.button-dark{background:var(--ink);color:#fff}.button:disabled{opacity:.5;cursor:wait;transform:none}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:25px}.stat-card{padding:19px 20px;background:#fff;border:1px solid var(--line);border-radius:13px;display:grid;gap:6px}.stat-card>span{font-size:12px;color:var(--muted);font-weight:600}.stat-card strong{font-size:36px;line-height:1;font-weight:700;letter-spacing:-.05em}.stat-card small{font-size:11px;color:#989187}.stat-total{background:#fff2eb;border-color:#f3cabb}.requests-panel{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden}.panel-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:23px 24px 17px}.panel-heading h2{margin:0;font-size:21px;letter-spacing:-.04em}.search-box{height:40px;width:min(300px,44%);display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:#999}.search-box input{width:100%;border:0;outline:0;background:transparent;font:13px var(--body);color:var(--ink)}.status-tabs{display:flex;gap:4px;overflow:auto;padding:0 20px;border-bottom:1px solid var(--line)}.status-tab{white-space:nowrap;display:flex;gap:7px;align-items:center;border:0;border-bottom:2px solid transparent;padding:13px 10px 12px;background:none;color:#7e786f;font:600 12px var(--body);cursor:pointer}.status-tab.is-active{border-bottom-color:var(--orange);color:var(--ink)}.status-tab span{font-size:10px;color:#a7a197}.request-list{min-height:190px}.request-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(130px,1fr) 112px auto;gap:14px;align-items:center;padding:16px 24px;border-bottom:1px solid #ededed;cursor:pointer;transition:background .15s}.request-row:hover{background:#fdfaf7}.request-row:last-child{border-bottom:0}.restaurant-name{font-size:14px;font-weight:700;letter-spacing:-.02em}.restaurant-meta{display:block;margin-top:4px;color:#8a847b;font-size:11px}.contact-cell{min-width:0;color:#5f5a52;font-size:12px;overflow:hidden;text-overflow:ellipsis}.contact-cell a{color:inherit;text-decoration:none}.contact-cell a:hover{color:var(--orange)}.status-pill{justify-self:start;display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:20px;background:#f4f1ec;color:#746e64;font-size:10px;font-weight:700}.status-pill:before{content:'';width:6px;height:6px;border-radius:50%;background:#9c958b}.status-pill.pending{background:#fff1e9;color:#c74320}.status-pill.pending:before{background:#f16a3f}.status-pill.contacted{background:#edf4fa;color:#417197}.status-pill.contacted:before{background:#5b9ac2}.status-pill.approved{background:#eaf5ee;color:var(--green)}.status-pill.approved:before{background:#4a9d70}.status-pill.declined{background:#fbefed;color:var(--danger)}.status-pill.declined:before{background:#c85244}.row-arrow{color:#b6afa5;font-size:18px}.empty-state,.loading-state{display:grid;place-items:center;align-content:center;gap:8px;text-align:center;min-height:190px;padding:28px;color:#89837a;font-size:13px}.empty-state strong{font-size:16px;color:var(--ink)}.empty-state p{margin:0}.spinner{width:20px;height:20px;border:2px solid #e8e0d7;border-top-color:var(--orange);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.notice{margin-bottom:15px;padding:13px 15px;border-radius:9px;background:#edf6ef;color:#34684b;font-size:13px}.notice.is-error{background:#fff0ed;color:#9b2f24}.privacy-note{display:flex;align-items:center;gap:8px;margin:15px 3px;color:#8a847a;font-size:11px}.privacy-note span{font-size:17px}.detail-dialog,.confirm-dialog{position:fixed;border:1px solid var(--line);border-radius:18px;padding:27px;background:#fff;color:var(--ink);box-shadow:0 24px 90px #241b1433}.detail-dialog{inset:0 0 0 auto;margin:0 0 0 auto;width:min(520px,100%);height:100dvh;max-height:none;border-radius:18px 0 0 18px;overflow-y:auto}.detail-dialog::backdrop,.confirm-dialog::backdrop{background:#1f1b17aa;backdrop-filter:blur(2px)}.dialog-close-form{position:absolute;right:18px;top:16px}.dialog-close{width:34px;height:34px;border:0;border-radius:50%;background:#f5f2ee;font-size:23px;cursor:pointer}.detail-kicker{margin:11px 0;color:var(--orange);font-size:10px;letter-spacing:.14em;font-weight:700}.detail-dialog h2,.confirm-dialog h2{margin:0 42px 8px 0;font-family:var(--body);font-size:32px;font-weight:700;letter-spacing:-.05em;line-height:1.05}.detail-location{margin:0;color:var(--muted);font-size:14px}.detail-status{margin:18px 0}.detail-fields{display:grid;gap:0;margin:22px 0;border-top:1px solid var(--line)}.detail-field{padding:13px 0;border-bottom:1px solid var(--line)}.detail-field dt{margin-bottom:4px;color:#989187;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.detail-field dd{margin:0;color:#333;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.detail-field dd a{color:var(--orange)}.detail-actions{display:grid;gap:9px;margin-top:20px}.detail-actions .button{width:100%;padding:14px}.danger-button{border:1px solid #f0d3cf;background:#fff8f7;color:#a93b30}.invite-state{padding:13px;border-radius:9px;background:#eaf5ee;color:#39704e;font-size:12px;line-height:1.5}.confirm-dialog{width:min(510px,calc(100% - 32px));margin:auto;padding:31px}.confirm-dialog>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.6}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}body:has(dialog[open]){overflow:hidden}[hidden]{display:none!important}@media(max-width:900px){.admin-sidebar{width:205px}.admin-main{margin-left:205px}.content{width:calc(100% - 42px)}.request-row{grid-template-columns:minmax(150px,1.2fr) minmax(100px,1fr) 100px auto;padding:14px 17px}.contact-cell.email-cell{display:none}}@media(max-width:640px){.admin-sidebar{position:static;width:auto;height:60px;padding:0 17px;border-right:0;border-bottom:1px solid var(--line);display:flex;flex-direction:row;align-items:center;justify-content:space-between}.brand{font-size:18px}.admin-label,.admin-sidebar nav,.sidebar-bottom p{display:none}.sidebar-bottom{margin:0}.sign-out{width:auto;padding:8px 3px;gap:9px}.admin-main{margin:0}.topbar{height:45px;padding:0 18px}.content{width:calc(100% - 30px);margin:27px auto 48px}.page-heading{align-items:start}.page-heading h1{font-size:35px;max-width:290px}.subtitle{font-size:13px;max-width:280px}.page-heading>.button{padding:10px;font-size:0}.page-heading>.button span{font-size:18px}.stats-grid{gap:8px;margin-bottom:16px}.stat-card{padding:14px 12px;gap:5px}.stat-card>span{font-size:10px;line-height:1.3;min-height:26px}.stat-card strong{font-size:28px}.stat-card small{font-size:9px;line-height:1.35}.panel-heading{align-items:start;flex-direction:column;padding:18px 16px 13px}.panel-heading h2{font-size:19px}.search-box{width:100%}.status-tabs{padding:0 10px}.status-tab{padding:12px 8px;font-size:11px}.request-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:15px}.request-row .contact-cell{display:none}.restaurant-name{font-size:13px}.restaurant-meta{font-size:10px}.row-arrow{grid-column:2;grid-row:1}.status-pill{grid-column:1;grid-row:2}.detail-dialog{width:100%;border-radius:18px 18px 0 0;height:min(90dvh,760px);inset:auto 0 0;margin:auto auto 0;padding:24px}.detail-dialog h2{font-size:29px}.confirm-dialog{padding:25px 20px}.dialog-actions{flex-direction:column-reverse}.dialog-actions .button{width:100%}}
.brand-logo { display:block; width:132px; height:auto; border-radius:2px; }
