:root{--bg:#0e1416;--bg2:#141c1f;--line:#24323a;--text:#e3ecee;--dim:#8fa3a8;--accent:#4FD1C5;--onaccent:#06201e;--warn:#e0b45a;--bad:#e07a7a;--good:#4FD1C5;--code:#0a1012;color-scheme:dark}@media(prefers-color-scheme:light){:root{--bg:#f4f8f8;--bg2:#fff;--line:#cfdcdf;--text:#142024;--dim:#52666c;--accent:#0f8f84;--onaccent:#fff;--warn:#8a6414;--bad:#b03a3a;--good:#0f8f84;--code:#e8f0f1;color-scheme:light}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 Inter,system-ui,sans-serif}a{color:var(--accent)}.wrap{max-width:860px;margin:0 auto;padding:0 16px}header{border-bottom:1px solid var(--line);padding:18px 0}header .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.brand{font:700 30px Rajdhani,Inter,sans-serif;letter-spacing:.04em;text-decoration:none;color:var(--text)}.brand img{display:block;height:auto;width:240px;max-width:100%}@media(max-width:600px){.brand img{width:180px}}h1{font:700 32px Rajdhani,Inter,sans-serif;letter-spacing:.06em;text-transform:uppercase;margin:28px 0 8px}h1:after,h2:after{content:"";display:block;width:40px;height:3px;background:var(--accent);margin-top:6px;border-radius:2px}h2{font:700 24px Rajdhani,Inter,sans-serif;letter-spacing:.06em;text-transform:uppercase;margin:28px 0 14px}.dim{color:var(--dim)}.card{background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:16px 18px;margin:0 0 12px}label{display:block;font-weight:600;margin:0 0 4px}input[type=text],input[type=password]{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--text);font:inherit}.field{margin:0 0 14px}button,.btn{font:700 18px Rajdhani,Inter,sans-serif;letter-spacing:.06em;border-radius:8px;border:2px solid var(--accent);padding:9px 22px;cursor:pointer;background:var(--accent);color:var(--onaccent);min-height:44px}button.sec{background:transparent;color:var(--accent)}button:disabled{opacity:.45;cursor:not-allowed}:focus-visible{outline:3px solid var(--warn);outline-offset:2px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.grow{flex:1 1 200px;min-width:0}.pill{display:inline-block;border-radius:99px;padding:1px 10px;font-size:13px;font-weight:600;border:1px solid var(--line);white-space:nowrap}.pill.on{border-color:var(--warn);color:var(--warn)}.pill.ok{border-color:var(--good);color:var(--good)}.pill.no{border-color:var(--bad);color:var(--bad)}.rolebtn{width:100%;text-align:left;font:inherit;letter-spacing:0;color:var(--text);background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:14px 18px;margin:0 0 12px;display:block;min-height:0}.rolebtn:hover:not(:disabled),.rolebtn:focus-visible{border-color:var(--accent)}.rolebtn b{font-size:18px}.reasons{margin:6px 0 0;padding-left:20px;font-size:14px;color:var(--text)}.reasons li{margin:2px 0}.rolebtn:disabled{opacity:1}.checks{list-style:none;margin:0;padding:0}.checks li{display:flex;gap:10px;padding:8px 0;border-top:1px solid var(--line)}.checks li:first-child{border-top:0}.mark{flex:0 0 22px;font-weight:700;text-align:center}.pass .mark{color:var(--good)}.fail .mark{color:var(--bad)}.fail span.t{color:var(--text)}.pass span.t{color:var(--dim)}.targets{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.target{background:var(--bg2);border:2px solid var(--line);border-radius:10px;padding:14px 16px;text-align:left;color:var(--text);font:inherit;letter-spacing:0;display:block;min-height:0}.target b{font:700 20px Rajdhani,Inter,sans-serif;letter-spacing:.04em;display:block}.target[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.target:disabled{opacity:.5}.tip{margin:14px 0;padding:12px 16px;border-left:3px solid var(--accent);background:#4fd1c514;border-radius:0 8px 8px 0}.err{margin:14px 0;padding:12px 16px;border-left:3px solid var(--bad);background:#e07a7a1a;border-radius:0 8px 8px 0}.mock{background:var(--warn);color:#000;text-align:center;font-size:13px;padding:2px}.cc-hidden{display:none!important}footer{border-top:1px solid var(--line);padding:24px 0 36px;text-align:center;color:var(--dim);font-size:14px;margin-top:40px}@media(max-width:480px){h1{font-size:26px}button,.btn{width:100%}.row button{width:auto}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.mt{margin-top:16px}label.plain{font-weight:400;margin:0}.login-h{margin-top:0}
