/* ══ общая палитра админки и входа — те же токены, что в кабинете ══ */
:root{
  --bg:#f1f4fa; --surface:#fff; --surface-2:#f6f8fd; --surface-3:#e9eef7;
  --ink:#08101f; --ink-2:#1d2841; --muted:#54607b; --faint:#8791a8;
  --line:rgba(10,20,45,.10); --line-2:rgba(10,20,45,.055); --line-3:rgba(10,20,45,.16);
  --brand-a:#2c877e; --brand-b:#43e8d8; --brand:#1c7d73; --brand-deep:#12574f;
  --brand-grad:linear-gradient(118deg,#2c877e 0%,#43e8d8 100%);
  --brand-tint:rgba(44,135,126,.09);
  --dark:#0a1120; --dark-2:#101a2e; --dark-line:rgba(255,255,255,.09);
  --dark-text:#dfe7f5; --dark-faint:#8b9ab7;
  --pos:#0d9a6d; --neg:#d0472a; --warn:#bd840d;
  --r-xs:8px; --r-sm:11px; --r:14px; --r-lg:18px; --r-xl:24px;
  --f-body:'Golos Text',ui-sans-serif,system-ui,-apple-system,sans-serif;
  --f-disp:'Unbounded',ui-sans-serif,system-ui,sans-serif;
  --e1:0 1px 2px rgba(10,20,45,.04);
  --e2:0 1px 2px rgba(10,20,45,.04),0 12px 28px -20px rgba(10,20,45,.34);
  --e3:0 2px 6px rgba(10,20,45,.05),0 28px 56px -28px rgba(10,20,45,.42);
  --hairline:inset 0 0 0 1px var(--line);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font-family:var(--f-body);
  font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:var(--brand);text-decoration:none}
h1,h2,h3,h4{font-family:var(--f-disp);font-weight:600;letter-spacing:-.02em;margin:0}
button,input,select,textarea{font:inherit;color:inherit}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border:0;cursor:pointer;border-radius:var(--r-sm);padding:11px 18px;
  font-weight:600;font-size:13.5px;letter-spacing:-.01em;transition:.16s;white-space:nowrap}
.btn-brand{background:var(--brand-a);color:#fff;box-shadow:0 10px 26px -14px rgba(29,125,126,.6)}
.btn-brand:hover{background:var(--brand-deep)}
.btn-ghost{background:var(--surface);color:var(--ink-2);box-shadow:var(--hairline)}
.btn-ghost:hover{background:var(--surface-2)}
.btn-quiet{background:transparent;color:var(--muted);padding:8px 10px}
.btn-quiet:hover{color:var(--ink);background:var(--surface-2)}
.btn-danger{background:rgba(208,71,42,.09);color:var(--neg);box-shadow:inset 0 0 0 1px rgba(208,71,42,.2)}
.btn-danger:hover{background:rgba(208,71,42,.15)}
.btn:disabled{opacity:.5;cursor:default}
.btn-sm{padding:7px 12px;font-size:12.5px;border-radius:var(--r-xs)}

label.f{display:block;margin-bottom:14px}
label.f>span{display:block;font-size:12px;font-weight:600;color:var(--muted);
  margin-bottom:6px;letter-spacing:.01em}
.inp{width:100%;background:var(--surface);border:0;box-shadow:var(--hairline);
  border-radius:var(--r-sm);padding:10px 13px;font-size:14px;transition:.15s;outline:0}
.inp:focus{box-shadow:inset 0 0 0 1.5px var(--brand-a),0 0 0 4px var(--brand-tint)}
textarea.inp{min-height:88px;resize:vertical;line-height:1.55}
select.inp{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2354607b' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 10px center;background-size:16px;padding-right:34px}
.hint{font-size:12px;color:var(--faint);margin-top:5px}
.row{display:grid;gap:14px}
@media(min-width:620px){.row.c2{grid-template-columns:1fr 1fr}.row.c3{grid-template-columns:repeat(3,1fr)}}

.chip{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;
  padding:4px 9px;border-radius:99px;letter-spacing:.01em}
.chip.ok{background:rgba(13,154,109,.11);color:#0a7c58}
.chip.warn{background:rgba(189,132,13,.12);color:#946606}
.chip.wait{background:var(--brand-tint);color:var(--brand-deep)}
.chip.off{background:rgba(10,20,45,.06);color:var(--muted)}

.card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--hairline),var(--e1);padding:20px}
