/* Laki Kane Secret Shopper pages. Colours and fonts come from the Brand library (set as CSS variables on load). */
[hidden]{display:none!important}
:root{--bg:#0F2219;--surface:#18392B;--text:#EAF1EC;--muted:#A9C0B3;--accent:#F2B25C;--btn-text:#1B1206;--line:rgba(255,255,255,.14);
  --display:"Bricolage Grotesque",Georgia,serif;--body:"Figtree","Segoe UI",system-ui,sans-serif;color-scheme:dark}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--text)}
body{font:400 16px/1.6 var(--body);padding:24px max(16px,env(safe-area-inset-right,0px)) 56px max(16px,env(safe-area-inset-left,0px))}
.wrap{max-width:560px;margin:0 auto;display:grid;gap:22px}
.logo{display:flex;align-items:center;min-height:44px}.logo img{height:44px;width:auto}
.word{font:700 15px var(--display);letter-spacing:.32em;color:var(--accent)}
h1,h2,h3{font-family:var(--display);line-height:1.15;margin:0;text-wrap:balance}
h1{font-size:clamp(30px,7vw,40px)}h2{font-size:22px}h3{font-size:17px}
p{margin:0}
.muted{color:var(--muted)}.small{font-size:13.5px}
.card{background:var(--surface);border-radius:16px;padding:20px;display:grid;gap:14px}
.facts{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:15px}
.facts dt{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);padding-top:3px}
.facts dd{margin:0}
label.lb{display:block;font-weight:600;font-size:15px;margin-bottom:6px}
input[type=text],input[type=email],input[type=tel],input[type=number],input[type=time],textarea{width:100%;font:inherit;color:var(--text);background:rgba(0,0,0,.18);border:1px solid var(--line);border-radius:10px;padding:11px 12px}
textarea{min-height:84px;resize:vertical}
input:focus,textarea:focus,button:focus-visible,.pill:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.btn{display:block;width:100%;text-align:center;font:700 16px var(--body);background:var(--accent);color:var(--btn-text);border:0;border-radius:12px;padding:14px;cursor:pointer;text-decoration:none}
.btn.ghost{background:none;color:var(--text);border:1px solid var(--line)}
.btn[disabled]{opacity:.5;cursor:default}
.row{display:flex;gap:10px;flex-wrap:wrap}.row>*{flex:1 1 140px}
.pills{display:flex;gap:8px;flex-wrap:wrap}
.pill{position:relative;border:1px solid var(--line);border-radius:99px;padding:7px 13px;font-size:14px;cursor:pointer;user-select:none}
.pill input{position:absolute;opacity:0;inset:0;cursor:pointer}
.pill:has(input:checked){background:var(--accent);color:var(--btn-text);border-color:var(--accent)}
.faces{display:flex;justify-content:space-between;gap:6px}
.face{flex:1;display:grid;justify-items:center;gap:2px;border:1px solid var(--line);border-radius:12px;padding:8px 2px;cursor:pointer;position:relative;font-size:11px;color:var(--muted)}
.face span{font-size:26px;line-height:1.1}
.face input{position:absolute;opacity:0;inset:0;cursor:pointer}
.face:has(input:checked){border-color:var(--accent);background:rgba(255,255,255,.06);color:var(--text)}
.q{display:grid;gap:8px;padding:14px 0;border-top:1px solid var(--line)}
.q:first-of-type{border-top:0;padding-top:0}
.err{background:#4a1f1a;color:#ffd9d2;border-radius:10px;padding:10px 12px;font-size:14.5px}
.ok{background:rgba(255,255,255,.06);border-left:3px solid var(--accent);border-radius:0 10px 10px 0;padding:10px 12px}
.steps{display:flex;gap:4px}.steps i{flex:1;height:4px;border-radius:4px;background:var(--line)}.steps i.on{background:var(--accent)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
footer{font-size:12.5px;color:var(--muted)}
@media (prefers-reduced-motion:no-preference){.card{animation:in .25s ease-out}@keyframes in{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}}
