@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Libre+Caslon+Display&display=swap');
:root{--green:#194f36;--green-dark:#103c28;--green-wash:#eef4e8;--gold:#e7bd62;--cream:#f6f1e6;--paper:#fbfaf6;--ink:#17231c;--muted:#637068;--line:#dce2da;--danger:#9f3528;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none}[hidden]{display:none!important}*{box-sizing:border-box}body{min-width:320px;margin:0;background:var(--paper);line-height:1.6}.admin-header{display:flex;align-items:center;justify-content:space-between;min-height:84px;padding:14px clamp(20px,4vw,58px);border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{display:grid;width:48px;height:48px;place-items:center;border:2px solid var(--green);border-radius:50%;color:var(--green);font-family:var(--serif);font-size:1.8rem}.brand strong,.brand small{display:block}.brand strong{font-family:var(--serif);font-size:1.45rem;line-height:1}.brand small{margin-top:4px;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}main{width:min(calc(100% - 40px),1180px);margin:auto;padding:clamp(50px,8vw,100px) 0}.center-card{padding:48px;text-align:center;color:var(--muted)}.login-layout{display:grid;grid-template-columns:1fr minmax(360px,.72fr);gap:clamp(50px,9vw,130px);align-items:center;min-height:calc(100vh - 250px)}.eyebrow{margin:0 0 12px;color:var(--green);font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.login-copy h1,.dashboard-heading h1{margin:0;font-family:var(--serif);font-weight:500;line-height:.95}.login-copy h1{max-width:660px;font-size:clamp(3rem,6vw,6rem)}.login-copy>p:last-child,.dashboard-heading>div>p:last-child{max-width:560px;color:var(--muted)}.login-card{padding:clamp(28px,5vw,52px);border:1px solid var(--line);border-radius:8px;background:var(--green-wash)}form{display:grid;gap:22px}label{display:grid;gap:8px}label span{font-weight:800}input{width:100%;padding:14px;border:1px solid var(--line);border-radius:5px;background:#fff;font:inherit}input:focus{outline:2px solid rgba(25,79,54,.18);border-color:var(--green)}button{font:inherit}.primary-button,.secondary-button,.approve-button,.reject-button,.text-button{min-height:44px;padding:10px 16px;border-radius:5px;font-weight:800;cursor:pointer}.primary-button,.approve-button{border:0;background:var(--green);color:#fff}.secondary-button{border:1px solid var(--green);background:transparent;color:var(--green)}.reject-button{border:1px solid #d8a29b;background:#fff;color:var(--danger)}.text-button{border:0;background:transparent;color:var(--green)}button:disabled{cursor:wait;opacity:.55}.dashboard-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}.dashboard-heading h1{font-size:clamp(3rem,6vw,5.6rem)}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:40px 0}.summary-grid article{display:flex;flex-direction:column;padding:24px;border:1px solid var(--line);background:#fff}.summary-grid strong{font-family:var(--serif);font-size:2.5rem}.summary-grid span{color:var(--muted);font-size:.82rem}.reviews-list{display:grid;gap:18px}.review-item{padding:clamp(22px,4vw,36px);border:1px solid var(--line);border-radius:7px;background:#fff}.review-item>header,.review-item>footer{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.review-item h2{margin:6px 0 0;font-family:var(--serif);font-size:1.8rem;font-weight:500}.review-email{color:var(--muted);font-size:.85rem}.review-stars{color:#946d24;letter-spacing:.1em}.status-badge{padding:5px 10px;border-radius:99px;background:#fff1c9;color:#684b12;font-size:.7rem;font-weight:800;text-transform:uppercase}.status-badge.approved{background:#e2f2e6;color:var(--green)}.review-copy{margin:28px 0;color:#33443a;font-size:1.04rem;white-space:pre-wrap}.review-item>footer{align-items:center;padding-top:20px;border-top:1px solid var(--line)}.review-date{color:var(--muted);font-size:.82rem}.review-actions{display:flex;gap:10px}.message{margin:20px 0;padding:14px 16px;border-left:4px solid var(--green);background:#fff}.message.error{border-color:var(--danger);color:#7a271a}.empty-state{padding:50px;border:1px dashed var(--line);text-align:center;color:var(--muted)}
@media(max-width:760px){.login-layout{grid-template-columns:1fr;min-height:0}.dashboard-heading,.review-item>header,.review-item>footer{align-items:stretch;flex-direction:column}.summary-grid{grid-template-columns:1fr}.review-actions{display:grid;grid-template-columns:1fr 1fr}.review-actions button{width:100%}}
@media(max-width:440px){main{width:min(calc(100% - 24px),1180px)}.admin-header{padding-inline:14px}.brand small{display:none}.review-actions{grid-template-columns:1fr}}
