/* Taste Pure identity: black, gold, white. RTL. */
:root{
  --bg:#000;--card:#141414;--field:#0A0A0A;--line:#2C2C2C;--gold:#C0973E;--gold-2:#D9B25F;--on-gold:#101010;
  --text:#fff;--muted:#A8A8A8;--bad:#FF8F80;--good:#7FD69B;--warn:#F2C46B;--r:14px;
  font-family:"IBM Plex Sans Arabic",system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--text)}
body{font-size:16px;line-height:1.6;-webkit-tap-highlight-color:transparent}
a{color:var(--gold)}
h1,h2,h3{margin:0 0 .5rem;line-height:1.3;font-weight:600}
h2{font-size:1.15rem;color:var(--gold)}
h3{font-size:1rem}
.muted{color:var(--muted)}.small{font-size:.85rem}.bad{color:var(--bad)}.good{color:var(--good)}.warn{color:var(--warn)}
.num{font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}

/* header */
.top{position:sticky;top:0;z-index:5;background:#000;border-bottom:2px solid var(--gold);display:flex;align-items:center;gap:12px;padding:10px 16px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.brand img{height:34px;width:auto;display:block}
.brand b{font-size:1.05rem;letter-spacing:.2px}
.brand span{display:block;font-size:.75rem;color:var(--gold)}
.top .sp{flex:1}
.top .who{font-size:.85rem;color:var(--muted)}

.wrap{max-width:560px;margin:0 auto;padding:16px}
.wrap.wide{max-width:1180px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:14px}
.card.gold{border-color:var(--gold)}

/* forms */
label{display:block;font-size:.9rem;color:var(--muted);margin:10px 0 4px}
input,select,textarea{width:100%;background:var(--field);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:11px 12px;font:inherit;font-size:16px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold)}
textarea{min-height:76px;resize:vertical}
.row{display:flex;gap:10px;flex-wrap:wrap}.row>*{flex:1 1 140px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--gold);color:var(--on-gold);border:1px solid var(--gold);border-radius:12px;
  padding:12px 18px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;min-height:46px}
.btn:hover{background:var(--gold-2)}
.btn.ghost{background:transparent;color:var(--gold)}
.btn.ghost:hover{background:rgba(192,151,62,.12)}
.btn.danger{background:transparent;color:var(--bad);border-color:#5a2f2a}
.btn.sm{padding:6px 12px;min-height:34px;font-size:.85rem;border-radius:9px}
.btn.block{width:100%}
.btn.big{min-height:72px;font-size:1.25rem;border-radius:16px}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.btns{display:grid;grid-template-columns:1fr 1fr;gap:12px}

/* messages */
.msg{border-radius:12px;padding:12px 14px;margin-bottom:14px;border:1px solid var(--line);background:var(--card)}
.msg.ok{border-color:#2f5d3d;color:var(--good)}
.msg.err{border-color:#6b3a33;color:var(--bad)}
.msg.info{border-color:var(--gold);color:var(--text)}

/* status / chips */
.chip{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:2px 10px;font-size:.8rem;color:var(--muted);white-space:nowrap}
.chip.gold{border-color:var(--gold);color:var(--gold)}
.chip.good{border-color:#2f5d3d;color:var(--good)}
.chip.bad{border-color:#6b3a33;color:var(--bad)}
.chip.warn{border-color:#6a5524;color:var(--warn)}
.status{display:flex;align-items:center;gap:10px;font-size:1.05rem}
.dot{width:10px;height:10px;border-radius:50%;background:var(--muted)}
.dot.on{background:var(--good)}.dot.off{background:var(--bad)}

.list{list-style:none;margin:0;padding:0}
.list li{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}
.list li:last-child{border-bottom:0}

/* rating */
.rate{display:flex;gap:6px;direction:ltr;justify-content:flex-end}
.rate button{width:40px;height:40px;border-radius:10px;border:1px solid var(--line);background:var(--field);color:var(--muted);font:inherit;font-weight:600;cursor:pointer}
.rate button.on{background:var(--gold);color:var(--on-gold);border-color:var(--gold)}
.q{padding:10px 0;border-bottom:1px solid var(--line)}
.q:last-child{border-bottom:0}
.q p{margin:0 0 6px}

/* progress */
.bar{height:8px;background:var(--field);border:1px solid var(--line);border-radius:99px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--gold)}
.bar i.late{background:var(--bad)}

/* tables (admin) */
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r)}
table{width:100%;border-collapse:collapse;font-size:.9rem;background:var(--card)}
th,td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:right;vertical-align:top}
th{color:var(--gold);font-weight:600;background:#0c0c0c;white-space:nowrap;position:sticky;top:0}
tr:last-child td{border-bottom:0}
tr.off td{opacity:.5}
td .chip{margin:1px 0}

/* admin nav */
.nav{display:flex;gap:4px;overflow-x:auto;padding:0 16px;background:#000;border-bottom:1px solid var(--line);scrollbar-width:none}
.nav a{padding:11px 12px;color:var(--muted);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent;font-size:.92rem}
.nav a.on{color:var(--gold);border-color:var(--gold)}
.filters{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:14px}
.filters>*{flex:0 1 auto}.filters input,.filters select{width:auto;min-width:150px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:14px}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:14px}
.kpi b{display:block;font-size:1.8rem;color:var(--gold);line-height:1.2}
.kpi span{color:var(--muted);font-size:.85rem}
.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px;max-height:220px;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--field)}
.checks label{display:flex;gap:8px;align-items:center;margin:0;color:var(--text);font-size:.9rem}
.checks input{width:auto}
.code{font-family:ui-monospace,Consolas,monospace;font-size:1.1rem;color:var(--gold);letter-spacing:2px;direction:ltr;display:inline-block}
.inline{display:inline}
.spin{width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:s .7s linear infinite}
@keyframes s{to{transform:rotate(360deg)}}
.hidden{display:none!important}
.foot{color:var(--muted);text-align:center;font-size:.8rem;padding:20px 0 30px}
@media (max-width:520px){.btns{grid-template-columns:1fr}.rate button{width:36px;height:40px}}
