:root{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color-scheme:dark;
  --bg:#07090d;
  --bg2:#0b0f15;
  --panel:#111318;
  --panel2:#171a20;
  --panel3:#0a0c10;
  --line:#30252a;
  --line-soft:#231a1e;
  --gold:#ff2836;
  --gold2:#ff5963;
  --gold3:#a8000c;
  --text:#f4f6f8;
  --muted:#98a3b2;
  --muted2:#6f7a89;
  --green:#63d19e;
  --red:#ff3b46;
  --amber:#f2c15c;
  --shadow:0 22px 70px rgba(0,0,0,.42);
  --radius:20px;
}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  color:var(--text);
  background:
    radial-gradient(circle at 12% -4%,rgba(255,32,46,.18),transparent 30%),
    radial-gradient(circle at 100% 10%,rgba(145,0,18,.16),transparent 28%),
    linear-gradient(180deg,#07090d 0%,#0a0e14 42%,#07090d 100%);
  padding-bottom:84px;
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.3;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,#000,transparent 72%);
}
a{color:inherit}button,input,select{font:inherit}.muted{color:var(--muted)}.gold{color:var(--gold2)}

.topbar{
  position:sticky;top:0;z-index:60;height:68px;
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:10px max(14px,env(safe-area-inset-left));
  background:rgba(7,9,13,.87);backdrop-filter:blur(18px) saturate(130%);
  border-bottom:1px solid rgba(255,45,58,.24);
  box-shadow:0 10px 32px rgba(0,0,0,.24);
}
.brand{display:flex;align-items:center;gap:11px;min-width:0;text-decoration:none}
.brand-mark,.login-logo{
  position:relative;display:grid;place-items:center;flex:0 0 auto;
  background:linear-gradient(145deg,#ff4a55 0%,#e20f20 48%,#79000a 100%);
  color:#090a0c;font-weight:950;letter-spacing:-.05em;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 0 0 1px rgba(255,60,72,.30),0 8px 26px rgba(235,12,29,.28);
}
.brand-mark{width:40px;height:40px;border-radius:13px;font-size:16px}
.brand-mark::after,.login-logo::after{content:"";position:absolute;inset:5px;border:1px solid rgba(10,10,10,.34);border-radius:inherit}
.brand-copy{min-width:0}.brand strong{display:block;color:var(--gold2);font-size:14px;letter-spacing:.18em;line-height:1.05}.brand small{display:block;color:var(--muted);font-size:10px;letter-spacing:.08em;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:48vw}
.top-actions{display:flex;align-items:center;gap:8px}.status,.role-pill,.mini-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;border:1px solid var(--line);font-size:11px;padding:6px 9px;background:#101721;color:#d7dee7}.status::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 10px rgba(99,209,158,.6)}.status.offline::before{background:var(--red);box-shadow:none}.status.offline{color:#ffb5b9}
.install-btn,.icon-btn{border:1px solid var(--line);background:linear-gradient(180deg,#151d28,#10161f);color:var(--text);border-radius:12px;padding:9px 11px;cursor:pointer}.install-btn{color:var(--gold2);font-weight:800}.icon-btn{font-size:19px;line-height:1}

.drawer{
  position:fixed;top:76px;right:12px;z-index:80;width:min(330px,calc(100vw - 24px));display:none;
  padding:10px;background:rgba(13,18,25,.98);border:1px solid rgba(255,45,58,.24);border-radius:18px;box-shadow:var(--shadow);backdrop-filter:blur(18px)
}.drawer.open{display:block;animation:drawerIn .16s ease-out}.drawer a{display:flex;align-items:center;gap:10px;text-decoration:none;padding:12px 13px;border-radius:11px;color:#d9e0e8;font-size:14px}.drawer a:hover,.drawer a:active{background:#17202b;color:#fff}.drawer .who{padding:10px 13px 14px;border-bottom:1px solid var(--line-soft);margin-bottom:6px}.drawer .who strong{display:block;font-size:15px}.drawer .who span{display:block;margin-top:4px;font-size:11px;color:var(--gold2);letter-spacing:.04em}.drawer .logout{color:#ffb1b6;margin-top:4px}
@keyframes drawerIn{from{transform:translateY(-6px);opacity:0}to{transform:none;opacity:1}}

.container{width:min(1180px,100%);margin:0 auto;padding:28px 18px 40px}
.hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:3px 0 18px}.hero-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--gold);font-weight:800;margin-bottom:7px}.hero h1,h1{margin:0;font-size:clamp(28px,5vw,42px);line-height:1.02;letter-spacing:-.045em}.hero p{margin:7px 0 0}
h2{font-size:18px;margin:28px 0 12px;letter-spacing:-.02em}

.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.card{
  position:relative;overflow:hidden;min-height:112px;padding:18px;
  background:linear-gradient(155deg,rgba(24,32,43,.97),rgba(13,18,25,.98));
  border:1px solid var(--line);border-radius:18px;box-shadow:0 13px 36px rgba(0,0,0,.16)
}.card::after{content:"";position:absolute;width:100px;height:100px;border-radius:50%;right:-45px;top:-55px;background:radial-gradient(circle,rgba(255,40,54,.20),transparent 68%)}
.card span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.09em;font-weight:750}.card strong{display:block;color:#fff;font-size:31px;line-height:1;margin-top:12px;letter-spacing:-.04em}.card .unit{display:inline;color:var(--muted);font-size:11px;margin-left:5px;text-transform:none;letter-spacing:0}
.card.gold-card{border-color:rgba(255,45,58,.48);background:linear-gradient(150deg,rgba(88,8,16,.46),rgba(15,18,22,.98))}.card.alert-card{border-color:rgba(255,125,134,.23)}

.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0 24px}.quick{position:relative;display:flex;align-items:center;gap:12px;text-decoration:none;background:linear-gradient(180deg,#131a24,#0f151d);border:1px solid var(--line);padding:14px;border-radius:15px;transition:.18s ease}.quick:hover,.quick:active{transform:translateY(-1px);border-color:rgba(255,45,58,.58);background:#18212c}.quick b{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:rgba(255,40,54,.13);border:1px solid rgba(255,45,58,.28);color:var(--gold2);font-size:16px}.quick span{font-size:12px;color:#d6dde6;line-height:1.25}

.panel{background:linear-gradient(180deg,rgba(17,23,32,.98),rgba(12,17,24,.98));border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 14px 40px rgba(0,0,0,.12)}.panel-head{padding:15px 16px;border-bottom:1px solid var(--line-soft);display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-head strong{font-size:14px}.panel-head span{font-size:11px}
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
table{width:100%;border-collapse:collapse;background:transparent}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid #202936;font-size:13px;white-space:nowrap}th{background:#0d1218;color:#8896a7;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:850}tbody tr:hover{background:rgba(255,255,255,.018)}tr:last-child td{border-bottom:none}

.grid-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;align-items:end;background:linear-gradient(180deg,#111821,#0d131b);padding:16px;border-radius:18px;border:1px solid var(--line);margin:18px 0;box-shadow:0 12px 30px rgba(0,0,0,.12)}.grid-form label,.login-card label{display:flex;flex-direction:column;gap:7px;color:#b9c4d0;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.075em}
input,select{width:100%;border:1px solid #313d4d;border-radius:12px;padding:12px 13px;background:#090e14;color:var(--text);outline:none;min-height:44px}input:focus,select:focus{border-color:rgba(255,45,58,.82);box-shadow:0 0 0 3px rgba(255,45,58,.12)}input::placeholder{color:#586473}
button,.button{border:0;background:linear-gradient(145deg,#ff3846,#bd000f);color:#090a0c;border-radius:12px;padding:12px 15px;cursor:pointer;font-weight:900;text-decoration:none;text-align:center;min-height:44px;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 7px 20px rgba(207,0,18,.24)}button.secondary,.button.secondary{background:#161f2a;color:#e5edf6;border:1px solid var(--line);box-shadow:none}.small{min-height:34px;padding:7px 10px;font-size:11px;border-radius:9px}

.login-wrap{min-height:calc(100vh - 56px);display:grid;place-items:center;padding:24px 12px}.login-card{position:relative;overflow:hidden;width:min(445px,100%);padding:30px 26px;background:linear-gradient(160deg,rgba(18,25,34,.98),rgba(8,12,17,.99));border:1px solid rgba(255,45,58,.30);border-radius:24px;box-shadow:0 28px 90px rgba(0,0,0,.58)}.login-card::before{content:"";position:absolute;width:230px;height:230px;right:-105px;top:-130px;border-radius:50%;background:radial-gradient(circle,rgba(255,38,52,.28),transparent 67%)}.login-logo{width:70px;height:70px;border-radius:21px;font-size:28px;margin-bottom:20px}.login-card h1{font-size:42px}.login-sub{font-size:13px;color:var(--muted);margin:8px 0 22px}.login-card form{display:grid;gap:14px}.login-footer{margin-top:22px;padding-top:16px;border-top:1px solid var(--line-soft);font-size:10px;color:var(--muted2);letter-spacing:.08em;text-transform:uppercase}

.alert{padding:12px 14px;background:rgba(92,23,31,.55);border:1px solid rgba(255,125,134,.32);border-radius:12px;color:#ffc0c5;font-size:13px}.success{padding:12px 14px;background:rgba(20,75,52,.48);border:1px solid rgba(99,209,158,.32);border-radius:12px;color:#b8f0d6;font-size:13px;margin:12px 0}.result{margin:18px 0;padding:16px;border-left:3px solid var(--gold);background:linear-gradient(90deg,rgba(255,31,47,.12),rgba(18,25,35,.98));border-radius:12px;color:#e9eef5;line-height:1.55}.command-form{display:flex;gap:10px;margin:14px 0}.command-form input{flex:1;font-size:15px}.command-help{background:#0b1017;border:1px solid var(--line);border-radius:15px;padding:15px}pre{margin:0;background:transparent;color:#cad5e1;overflow:auto;white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.75}.section-actions{display:flex;gap:10px;flex-wrap:wrap}.empty{padding:25px;color:var(--muted);text-align:center}.form-note{font-size:11px;color:var(--muted);margin-top:-6px}.mt14{margin-top:14px}

.bottom-nav{position:fixed;left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));z-index:70;height:67px;display:none;grid-template-columns:repeat(5,1fr);padding:5px;background:rgba(10,14,20,.94);border:1px solid rgba(255,45,58,.20);border-radius:19px;box-shadow:0 18px 50px rgba(0,0,0,.48);backdrop-filter:blur(18px)}.bottom-nav a{text-decoration:none;color:#7f8b9a;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:9px;border-radius:13px}.bottom-nav a b{font-size:18px;font-weight:500}.bottom-nav a:hover,.bottom-nav a:active,.bottom-nav a.active{color:var(--gold2);background:rgba(255,40,54,.11)}

@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){body{padding-bottom:92px}.container{padding:19px 12px 30px}.topbar{height:61px;padding:8px 12px}.brand-mark{width:38px;height:38px}.brand small{max-width:47vw}.install-btn,.status{display:none}.bottom-nav{display:grid}.command-form{flex-direction:column}.panel{overflow:hidden}.table-wrap{overflow-x:auto}table{min-width:690px}.grid-form{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column;margin-bottom:14px}.hero h1{font-size:31px}.cards{gap:9px}.card{padding:15px;min-height:100px}.card strong{font-size:26px}.quick-grid{grid-template-columns:1fr 1fr}.quick{padding:12px}.drawer{top:69px}.login-wrap{padding:18px 12px}.login-card{padding:26px 20px}.login-card h1{font-size:38px}}
@media(max-width:410px){.cards{grid-template-columns:1fr 1fr}.quick-grid{grid-template-columns:1fr}.brand small{max-width:41vw}.card strong{font-size:24px}}


/* DZSIN v0.3.1 — BLACK / RED GOLD DEFEND THEME */
body{
  background:
    linear-gradient(135deg,transparent 0 68%,rgba(155,0,14,.08) 68% 69%,transparent 69% 73%,rgba(255,28,43,.05) 73% 74%,transparent 74%),
    radial-gradient(circle at 82% 8%,rgba(255,26,42,.15),transparent 25%),
    radial-gradient(circle at 7% 0%,rgba(135,0,12,.16),transparent 29%),
    linear-gradient(180deg,#050608 0%,#090b0f 43%,#050608 100%);
}
body::before{opacity:.46;background-image:linear-gradient(rgba(255,45,58,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,45,58,.018) 1px,transparent 1px),linear-gradient(135deg,transparent 0 84%,rgba(255,38,51,.05) 84% 85%,transparent 85%)}
.topbar{background:rgba(5,6,8,.91);box-shadow:0 10px 34px rgba(0,0,0,.35),0 1px 18px rgba(190,0,18,.05)}
.brand strong{color:#fff;letter-spacing:.15em}.brand small{color:#aeb6c1}.brand-mark{color:#050608;text-shadow:0 1px rgba(255,255,255,.12)}
.drawer{box-shadow:0 22px 80px rgba(0,0,0,.65),0 0 36px rgba(190,0,18,.08)}
.hero-kicker,.gold{color:var(--gold2)}
.card{background:linear-gradient(155deg,rgba(20,22,28,.98),rgba(8,10,14,.99));box-shadow:0 15px 42px rgba(0,0,0,.25)}
.card:hover{border-color:rgba(255,45,58,.30)}
.quick{background:linear-gradient(180deg,#13161c,#0b0d11)}
.quick:hover,.quick:active{background:linear-gradient(180deg,#1b1418,#0f0c10);box-shadow:0 0 24px rgba(210,0,20,.10)}
.panel{background:linear-gradient(180deg,rgba(16,18,23,.99),rgba(7,9,12,.99));box-shadow:0 16px 48px rgba(0,0,0,.24)}
th{background:#090b0f;color:#98a2af}tbody tr:hover{background:rgba(255,39,52,.035)}
.grid-form{background:linear-gradient(180deg,#12151a,#090b0f)}
input,select{background:#07090c;border-color:#34282d}input:focus,select:focus{background:#090b0f}
button,.button{border:1px solid rgba(255,88,98,.32);text-shadow:0 1px 2px rgba(0,0,0,.35)}
button:hover,.button:hover{filter:brightness(1.08);box-shadow:0 8px 28px rgba(214,0,20,.30)}
button.secondary,.button.secondary{background:#14171d;border-color:#342a2e;color:#f0f3f7;text-shadow:none}
.result{border-left-color:#ff2637;box-shadow:inset 18px 0 45px rgba(153,0,14,.05)}
.command-help{background:#080a0e;border-color:#2c2227}
.bottom-nav{background:rgba(5,7,10,.96);box-shadow:0 18px 56px rgba(0,0,0,.62),0 0 24px rgba(190,0,18,.06)}
.bottom-nav a.active{color:#ff4a55;text-shadow:0 0 12px rgba(255,30,45,.35)}
.login-card{background:linear-gradient(160deg,rgba(19,20,25,.99),rgba(5,7,10,.99));box-shadow:0 30px 95px rgba(0,0,0,.68),0 0 50px rgba(180,0,17,.08)}
.login-logo{box-shadow:0 0 0 1px rgba(255,75,84,.30),0 10px 30px rgba(220,0,20,.26)}
@media(max-width:700px){.topbar{border-bottom-color:rgba(255,45,58,.28)}.card{border-color:#2d2529}.card.gold-card{box-shadow:inset 0 0 35px rgba(190,0,18,.07),0 13px 36px rgba(0,0,0,.22)}}

/* K1TEAM mobil fejléc javítás */
.brand-copy{min-width:0;flex:1}.brand-copy small{display:block!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;font-size:10px!important;letter-spacing:.10em!important}

/* DZSIN - Felhasználók mobil admin nézet */
@media (max-width: 760px) {

  .user-admin-table {
    width: 100%;
  }

  .user-admin-table thead,
  .user-admin-table > tbody > tr:first-child {
    display: none;
  }

  .user-admin-table,
  .user-admin-table tbody,
  .user-admin-table tr,
  .user-admin-table td {
    display: block;
    width: 100%;
  }

  .user-admin-table tr {
    margin: 0 0 18px 0;
    padding: 16px;
    border: 1px solid rgba(255,60,80,.22);
    border-radius: 18px;
    box-sizing: border-box;
  }

  .user-admin-table td {
    padding: 7px 0;
    border: 0;
    box-sizing: border-box;
    overflow-wrap: anywhere;
  }

  .user-admin-table td:nth-child(1)::before {
    content: "Felhasználó: ";
    opacity: .65;
  }

  .user-admin-table td:nth-child(2)::before {
    content: "Név: ";
    opacity: .65;
  }

  .user-admin-table td:nth-child(3)::before {
    content: "Szerepkör: ";
    opacity: .65;
  }

  .user-admin-table td:nth-child(4)::before {
    content: "Terület: ";
    opacity: .65;
  }

  .user-admin-table td:nth-child(5)::before {
    content: "Állapot: ";
    opacity: .65;
  }

  .user-admin-table form {
    display: block;
    width: 100%;
    margin-top: 8px;
  }

  .user-admin-table input[type="password"] {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 8px;
  }

  .user-admin-table button {
    width: 100%;
    min-height: 48px;
    white-space: normal;
  }
}

/* ===== DZSIN FELHASZNÁLÓ ADMIN KÁRTYÁK ===== */

.user-card-list {
  display: grid;
  gap: 18px;
  margin-top: 24px;
  padding-bottom: 140px;
}

.user-card {
  width: 100%;
  box-sizing: border-box;
  padding: 20px;
  border: 1px solid rgba(255, 55, 75, .25);
  border-radius: 20px;
  background: rgba(12, 15, 21, .96);
  overflow: hidden;
}

.user-card-row {
  margin-bottom: 14px;
}

.user-card-label {
  margin-bottom: 4px;
  color: #9299a6;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.user-card-value {
  font-size: 1rem;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.user-card form {
  display: block;
  width: 100%;
  margin: 14px 0 0;
}

.user-card input[type="password"] {
  display: block;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box;
  margin: 0 0 10px;
}

.user-card button {
  display: block;
  width: 100% !important;
  max-width: none !important;
  min-height: 52px;
  box-sizing: border-box;
  margin: 0 !important;
}

.user-card .self-account {
  margin-top: 14px;
  padding: 15px;
  text-align: center;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  color: #aeb4bf;
  background: rgba(255,255,255,.025);
}

@media (max-width: 760px) {
  .user-card {
    padding: 18px;
  }

  .user-card-list {
    padding-bottom: 170px;
  }
}
