:root{--color-primary:#7bc8b7;--color-secondary:#91bee6;--color-accent:#f6d89e;--color-lavender:#e6d4f0;--color-surface:#fffdf9;--color-surface-soft:#f6faf8;--color-outline:#d8d8d5;--color-muted:#767676;--color-text:#292929;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-6:48px;--radius-medium:16px;--radius-large:24px;--radius-login:32px;color:var(--color-text);background:var(--color-surface);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}body{background:var(--color-surface);min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button:focus-visible,input:focus-visible{outline:3px solid var(--color-secondary);outline-offset:2px}.login-page{min-height:100vh;padding:var(--space-4) var(--space-2);place-items:center;display:grid}.login-shell{text-align:center;width:min(100%,420px)}.login-logo{width:min(280px,68vw);height:auto;margin:0 auto var(--space-3);display:block}.login-intro{margin-bottom:var(--space-3)}.login-intro h1{margin:0 0 var(--space-1);font-size:clamp(1.5rem,3vw,1.875rem);line-height:1.2}.login-intro p{color:var(--color-muted);margin:0;line-height:1.5}.login-card{text-align:left;border:1px solid var(--color-outline);border-radius:var(--radius-login);box-shadow:none;background:#fff;gap:12px;padding:20px 24px;display:grid}.login-field{gap:var(--space-1);font-weight:700;display:grid}.login-field input{width:100%;min-height:52px;padding:0 var(--space-2);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-outline);border-radius:var(--radius-medium)}.login-submit{color:#173a33;background:var(--color-primary);border-radius:var(--radius-large);cursor:pointer;border:0;min-height:52px;margin-top:4px;font-weight:700}.login-submit:hover{filter:brightness(.97)}.login-forgot{padding:var(--space-1);color:#315f7f;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;justify-self:center;font-weight:600;text-decoration:underline}.admin-layout{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{padding:var(--space-4) var(--space-2);background:var(--color-surface-soft);border-right:1px solid var(--color-outline)}.admin-nav{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.admin-nav-item{align-items:center;gap:var(--space-2);width:100%;min-height:48px;padding:0 var(--space-2);color:var(--color-text);border-radius:var(--radius-medium);cursor:pointer;text-align:left;background:0 0;border:0;display:flex}.admin-nav-item:hover{background:#7bc8b71f}.admin-nav-item--active{background:#7bc8b73d;font-weight:700}.admin-main{width:100%;max-width:1200px;padding-inline:var(--space-4)}.admin-header{border-bottom:1px solid var(--color-outline);align-items:center;min-height:112px;display:flex}.admin-header h1,.admin-content h2{margin:0;line-height:1.15}.admin-header h1{font-size:clamp(2rem,5vw,3rem)}.admin-content{padding-block:var(--space-6)}.admin-content h2{margin-bottom:var(--space-2);font-size:clamp(1.5rem,4vw,2rem)}.admin-content p{max-width:640px;color:var(--color-muted);margin:0;line-height:1.6}.admin-eyebrow{margin:0 0 var(--space-1);color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.875rem;font-weight:700}@media (width<=720px){.login-page{padding:var(--space-3) var(--space-2)}.login-card{padding:var(--space-3);border-radius:var(--radius-large)}.admin-layout{grid-template-columns:1fr}.admin-sidebar{padding:var(--space-2);border-right:0;border-bottom:1px solid var(--color-outline)}.admin-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-main{padding-inline:var(--space-2)}.admin-content{padding-block:var(--space-4)}}.location-review-detail{max-width:760px;margin-top:var(--space-4);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-outline);border-radius:var(--radius-large)}.location-review-detail-header{padding-bottom:var(--space-3);border-bottom:1px solid var(--color-outline)}.location-review-detail h3{margin:0 0 var(--space-1);font-size:1.5rem;line-height:1.2}.location-review-detail-header p:last-child{color:var(--color-muted);margin:0}.location-review-detail section{padding-block:var(--space-3)}.location-review-detail h4{margin:0 0 var(--space-2);font-size:1rem}.location-review-detail ul{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.location-review-detail li{padding:var(--space-1) var(--space-2);color:var(--color-text);background:#91bee629;border-radius:999px;font-size:.875rem}.location-review-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-outline);flex-wrap:wrap;display:flex}.location-review-actions p{color:var(--color-muted);text-align:right;flex-basis:100%;margin:0;font-size:.875rem}.location-review-actions button{min-height:48px;padding:0 var(--space-3);border:1px solid var(--color-outline);border-radius:var(--radius-medium);cursor:pointer;font-weight:700}.location-review-reject{color:var(--color-text);background:var(--color-surface)}.location-review-approve{color:var(--color-text);background:var(--color-primary);border-color:var(--color-primary)!important}.location-review-actions button:hover{filter:brightness(.97)}.location-review-actions button:disabled{cursor:not-allowed;opacity:.5}.location-review-actions button:disabled:hover{filter:none}@media (width<=560px){.location-review-detail{padding:var(--space-2)}.location-review-actions{flex-direction:column-reverse}.location-review-actions button{width:100%}}.location-review-list{margin-top:var(--space-4);max-width:760px}.location-review-items{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.location-review-item{background:var(--color-surface);border:1px solid var(--color-outline);border-radius:var(--radius-medium);overflow:hidden}.location-review-button{gap:var(--space-2);width:100%;min-height:88px;padding:var(--space-2) var(--space-3);color:var(--color-text);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;display:grid}.location-review-button:hover{background:var(--color-surface-soft)}.location-review-main{gap:4px;min-width:0;display:grid}.location-review-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.location-review-main span,.location-review-date{color:var(--color-muted);font-size:.875rem}.location-review-arrow{color:var(--color-muted);font-size:1.5rem;line-height:1}@media (width<=560px){.location-review-button{grid-template-columns:minmax(0,1fr) auto}.location-review-date{display:none}}
