:root{--bg:#0e0a1a;--c:#191330;--b:#2b2350;--t:#ece8f7;--m:#9b93b8;--p:#8b5cf6;--y:#facc15}
@media(prefers-color-scheme:light){:root{--bg:#f6f4fc;--c:#fff;--b:#e2dcf3;--t:#1c1533;--m:#6b6488}}
*{box-sizing:border-box}[hidden]{display:none!important}
body{margin:0;background:var(--bg);color:var(--t);font:15px/1.9 Vazirmatn,Tahoma,sans-serif}
header{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;border-bottom:1px solid var(--b);position:sticky;top:0;background:var(--bg);flex-wrap:wrap;gap:8px;z-index:9}
header img{height:40px}header b,a{color:var(--y);text-decoration:none}nav a{color:var(--m);margin-inline-start:16px}nav a:hover{color:var(--y)}
main{max-width:940px;margin:24px auto;padding:0 16px;min-height:70vh}
.card{background:var(--c);border:1px solid var(--b);border-radius:16px;padding:20px;margin-bottom:16px;overflow-x:auto}
h2{margin:0 0 12px;font-size:18px}label{display:block;font-size:13px;color:var(--m);margin:10px 0 4px}
input,select,textarea{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--b);background:var(--bg);color:var(--t);font:inherit}
input:focus,select:focus,textarea:focus{outline:2px solid var(--p);border-color:transparent}
.g{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 14px}
button,.btn{background:var(--y);color:#1c1533;border:0;border-radius:10px;padding:10px 22px;font:inherit;font-weight:700;cursor:pointer;display:inline-block;margin-top:14px}
button.s,.btn.s{background:var(--p);color:#fff}button.d{background:#ef4444;color:#fff}
td button{margin:0;padding:2px 12px}.err{color:#f87171}.ok{color:#4ade80}.m{color:var(--m)}
table{width:100%;border-collapse:collapse;font-size:13px}td,th{padding:8px;border-bottom:1px solid var(--b);text-align:right;vertical-align:top}th{color:var(--m);font-weight:500}
.tag{padding:2px 10px;border-radius:99px;font-size:12px;background:var(--b)}.approved{color:#4ade80}.rejected{color:#f87171}.pending{color:var(--y)}
#map{border-radius:12px;direction:ltr}footer{text-align:center;color:var(--m);padding:20px;font-size:12px;direction:ltr}
@media print{:root{--bg:#fff;--c:#fff;--b:#ccc;--t:#000;--m:#555}header nav,footer,.noprint{display:none}.card{break-inside:avoid}}
