/* ===========================================================================
   sales.uxpo.co console — BarberOne register: black stage, one accent used
   sparingly, big honest numbers, soft cards, thin dividers, generous air.
   Thumb-reach; targets ≥48dp.
   =========================================================================== */
:root{
  --bg:#000; --card:#0e0e10; --card2:#131316;
  --ink:#f5f6f7; --body:#a6adb4; --sec:#63696f;
  --accent:#e8842c; --accent-soft:rgba(232,132,44,.14);
  --green:#34c759; --red:#ff453a; --amber:#ffd60a;
  --line:rgba(255,255,255,.07); --line2:rgba(255,255,255,.13);
  --f:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;
  --ease:cubic-bezier(.32,.72,0,1);
  --r:16px;
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
/* THE FIX for the phantom "DO NOT CONTACT" row: author display rules
   (.metarow{display:flex} etc.) beat the UA's [hidden]{display:none}, so
   hidden elements were rendering anyway. Restore hidden's authority. */
[hidden]{display:none!important}
html{background:#000}
body{background:radial-gradient(80% 50% at 50% 0%,#101010 0%,#000 65%);color:var(--ink);
  font-family:var(--f);-webkit-font-smoothing:antialiased;min-height:100svh;line-height:1.5}
.grain{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.03;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}
.wrap{position:relative;z-index:2;max-width:480px;margin:0 auto;padding:20px 18px calc(28px + env(safe-area-inset-bottom))}

.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.top .pills{display:flex;gap:8px}
.bhead{display:flex;justify-content:space-between;align-items:baseline;padding:14px 4px 6px;
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--sec);font-weight:700}
.bhead small{letter-spacing:0;text-transform:none;font-weight:500}
.results .r .ltag{color:var(--accent);font-weight:600}
.wordmark{font-size:20px;letter-spacing:-.01em;color:#fff}.wordmark b{font-weight:800}

input,button{font-family:var(--f);font-size:16px}
.searchrow input{width:100%;min-height:54px;padding:0 18px;border-radius:14px;border:1px solid var(--line2);
  background:var(--card);color:var(--ink);transition:border-color .2s}
.searchrow input::placeholder{color:var(--sec)}
.searchrow input:focus{outline:none;border-color:rgba(255,255,255,.3)}

.results{margin-top:10px}
.results .r{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;text-align:left;
  padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);
  margin-bottom:8px;cursor:pointer;min-height:52px;font-size:15.5px;transition:transform .12s var(--ease)}
.results .r small{color:var(--sec);font-size:12.5px;white-space:nowrap}
.results .r:active{transform:scale(.985)}
.results .r.g small{white-space:normal}
.results .r.g small b{color:var(--accent);font-weight:600}
.results .r.note{cursor:default;font-size:14px;color:var(--body)}
.vchips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.vchip{border:1px solid var(--line2);border-radius:100px;background:var(--card);color:var(--ink);
  padding:11px 16px;font-size:14px;cursor:pointer;min-height:44px;transition:transform .12s var(--ease)}
.vchip:active{transform:scale(.96)}

/* ---- the lead card ---- */
.card{margin-top:16px;background:var(--card);border:1px solid var(--line);border-radius:22px;overflow:hidden;
  animation:rise .45s var(--ease)}
@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.thumb{display:block;position:relative;text-decoration:none}
.thumb img{width:100%;aspect-ratio:21/9;object-fit:cover;display:block;
  filter:saturate(.95) brightness(.9)}
.thumbtag{position:absolute;right:12px;bottom:12px;background:rgba(0,0,0,.55);backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.2);color:#fff;font-size:12px;font-weight:600;padding:6px 12px;border-radius:100px}
.cardbody{padding:20px 18px 18px}
h1{font-size:23px;letter-spacing:-.02em;line-height:1.15;font-weight:700}
.subtitle{margin-top:4px;color:var(--sec);font-size:13.5px}

.ratingrow{display:flex;align-items:center;gap:14px;margin-top:16px}
.bignum{font-size:44px;font-weight:800;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.starcol{display:flex;flex-direction:column;gap:2px;flex:1}
.stars{color:var(--accent);font-size:14px;letter-spacing:2.5px}
.revs{color:var(--sec);font-size:12.5px}
.stagepill{flex:0 0 auto;font-size:12px;font-weight:600;color:var(--accent);background:var(--accent-soft);
  border-radius:100px;padding:6px 13px}

/* ---- build-stage bar: how built is this demo, at a glance ---- */
.buildbar{display:flex;align-items:center;gap:6px;margin-top:14px;flex-wrap:wrap}
.bstep{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:var(--sec);
  border:1px solid var(--line);border-radius:100px;padding:5px 11px;transition:color .3s,border-color .3s,background .3s}
.bstep.on{color:var(--accent);border-color:rgba(232,132,44,.4);background:var(--accent-soft)}
.bstep.busy{animation:bpulse 1.2s ease-in-out infinite}
@keyframes bpulse{50%{opacity:.35}}
.buildbar i{flex:0 0 7px;height:1px;background:var(--line2)}

.metarows{margin-top:16px;border-top:1px solid var(--line)}
.metarow{display:flex;justify-content:space-between;align-items:center;min-height:44px;
  border-bottom:1px solid var(--line);font-size:14px}
.metarow span{color:var(--sec)}
.metarow b,.metarow a{color:var(--ink);font-weight:600;text-decoration:none;font-variant-numeric:tabular-nums}
.metarow b.dim{color:var(--sec);font-weight:500}
.metarow b.ok{color:var(--green)}
.metarow b.warn{color:var(--amber)}
.metarow.danger b{color:var(--red)}

.strip{display:flex;gap:8px;margin-top:16px}
.strip input{flex:1;min-height:48px;padding:0 14px;border-radius:12px;border:1px solid var(--line2);
  background:var(--card2);color:var(--ink);font-size:15px}
.strip input::placeholder{color:var(--sec)}
.strip input:focus{outline:none;border-color:rgba(255,255,255,.3)}

.pill{min-height:44px;padding:0 16px;border-radius:100px;border:1px solid var(--line2);background:transparent;
  color:var(--body);cursor:pointer;font-size:14px;transition:transform .12s var(--ease)}
.pill:active{transform:scale(.96)}

.sendrow{display:flex;gap:8px;margin-top:10px}
.sendrow:first-of-type{margin-top:16px}
.btn{flex:1;min-height:52px;border-radius:14px;border:1px solid var(--line2);background:var(--card2);
  color:var(--ink);font-weight:600;font-size:14.5px;letter-spacing:.02em;cursor:pointer;
  transition:transform .12s var(--ease),opacity .15s}
.btn:active{transform:scale(.98)}
.btn.primary{background:var(--accent);border:0;color:#151007;box-shadow:0 8px 26px var(--accent-soft)}
.btn.ghost{color:var(--body)}
.btn:disabled{opacity:.3;cursor:not-allowed}
.btn.wide{width:100%;margin-top:14px}

.statusline{min-height:24px;margin-top:12px;font-size:14px;color:var(--sec);text-align:center}
.statusline .sent{color:var(--body)}
.statusline .delivered{color:var(--green);font-weight:600}
.statusline .err{color:var(--red)}

.divider{height:1px;background:var(--line);margin:18px -18px 0}

.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}
.oc{min-height:52px;border-radius:12px;border:1px solid var(--line);background:var(--card2);color:var(--body);
  font-size:13px;cursor:pointer;transition:transform .12s var(--ease)}
.oc:active{transform:scale(.96)}
.oc.good{color:var(--green)}
.oc.danger{color:var(--red)}
.oc.done{background:var(--accent-soft);color:var(--accent);border-color:transparent}

.oprow{display:flex;gap:8px;margin-top:14px}
.oprow .pill{flex:1;font-size:13px}

.counterview{margin-top:14px;border:1px solid var(--line);border-radius:14px;padding:4px 14px;background:var(--card2)}
.counterview .row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13.5px;color:var(--body)}
.counterview .row:last-child{border-bottom:0}
.counterview .row b{color:var(--ink);white-space:nowrap}
.counterview .est{color:var(--accent)}
.counterview .note{font-size:11.5px;color:var(--sec)}

.foot{margin-top:24px;text-align:center;color:var(--sec);font-size:11.5px;letter-spacing:.04em}
