:root{--bg:#f5f8f7;--card:#fff;--line:#dbe5e2;--ink:#17262b;--mute:#5f7279;--pri:#0f766e;--pri-d:#0b5d57;--ok:#1a7f4b;--warn:#b7791f;--bad:#c0392b}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.8 Vazirmatn,Tahoma,"Segoe UI",sans-serif}
a{color:var(--pri);text-decoration:none}a:hover{text-decoration:underline}
.top{background:var(--pri);color:#fff;display:flex;align-items:center;gap:14px;padding:0 16px;min-height:56px;flex-wrap:wrap}
.top a{color:#d7f0ec}.top a.on,.top a:hover{color:#fff;text-decoration:none}
.top .brand{font-weight:700;font-size:18px;color:#fff;margin-inline-end:auto}
.top form{margin:0}.top button{background:none;border:1px solid #5fb1a9;color:#e6f6f3;padding:4px 12px;border-radius:8px;cursor:pointer;font:inherit}
main{max-width:760px;margin:20px auto;padding:0 14px}
h1{font-size:22px;margin:0 0 14px}h2{font-size:17px;margin:0 0 10px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:14px}
.hero{text-align:center;padding:36px 8px}.hero h1{font-size:28px}.hero p{color:var(--mute);max-width:520px;margin:0 auto 20px}
label{display:block;margin:8px 0 4px;color:var(--mute);font-size:14px}
input,select,textarea{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;width:100%}
input[type=checkbox]{width:auto;margin-inline-end:6px}
input:focus,textarea:focus{outline:2px solid #9fd5cf;border-color:var(--pri)}
button.btn,a.btn{font:inherit;padding:10px 20px;border-radius:10px;border:1px solid var(--pri);background:var(--pri);color:#fff;cursor:pointer;display:inline-block;text-align:center}
a.btn:hover{text-decoration:none;background:var(--pri-d)}
button.btn.sec,a.btn.sec{background:#fff;color:var(--pri)}
button.btn:disabled,a.btn.off{opacity:.5;cursor:not-allowed}
.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}
.flash{padding:10px 14px;border-radius:10px;margin-bottom:14px;background:#d9f2e4;color:var(--ok)}
.err{padding:10px 14px;border-radius:10px;margin:8px 0;background:#fbe0dc;color:var(--bad)}
.kv{display:grid;grid-template-columns:130px 1fr;gap:4px 12px}.kv dt{color:var(--mute)}.kv dd{margin:0}
.mono{font-family:Consolas,monospace;direction:ltr;unicode-bidi:embed;display:inline-block;word-break:break-all}
.badge{display:inline-block;padding:1px 10px;border-radius:99px;font-size:13px;background:#e8eeec;color:var(--ink)}
.b-active{background:#d9f2e4;color:var(--ok)}.b-conflict,.b-revoked{background:#fbe0dc;color:var(--bad)}
.b-suspended,.b-expired,.b-grace_expired,.b-silent,.b-pending{background:#fbefd5;color:var(--warn)}
.b-approved{background:#d9f2e4;color:var(--ok)}.b-rejected{background:#fbe0dc;color:var(--bad)}
.lic{display:block;color:inherit}.lic:hover{text-decoration:none;border-color:var(--pri)}
.lic .kv{margin-top:6px}
.codes{background:#f0fbf8;border-color:#a7dcd4}.qr{text-align:center}.qr svg{max-width:100%;height:auto}
textarea.mono{width:100%}
.login{max-width:400px;margin:6vh auto}
table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:start;padding:6px 8px;border-bottom:1px solid var(--line)}
footer{text-align:center;color:var(--mute);font-size:13px;padding:20px 0}
@media (max-width:520px){.kv{grid-template-columns:1fr}.kv dt{margin-top:6px}.hero h1{font-size:23px}}
