.konto-main{padding:48px 0 80px}
.konto-card,.konto-item{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:28px}
.konto-card{max-width:460px}
.konto-card h1,.konto-head h1{font-size:42px;letter-spacing:-.05em;line-height:1;margin:8px 0 16px}
.konto-lead{color:var(--muted);margin:0 0 22px}
.konto-card label,.konto-password label{display:grid;gap:8px;margin:0 0 16px;font-size:13px;font-weight:700}
.konto-card input,.konto-password input{width:100%;min-height:48px;border:1px solid #425249;border-radius:4px;background:#101714;color:var(--text);padding:12px 14px;font:inherit}
.konto-error{color:#f0c9c2;margin:0 0 14px}
.konto-note{color:var(--accent);margin:0 0 14px}
.konto-logout{margin-left:auto}
.konto-app{display:grid;gap:18px}
.konto-head{display:flex;justify-content:space-between;gap:18px;align-items:end;flex-wrap:wrap}
.konto-tabs{display:flex;gap:8px}
.konto-tabs button{min-height:44px;padding:10px 16px;border:1px solid #425249;border-radius:4px;background:transparent;color:var(--text);font:inherit;font-weight:700}
.konto-tabs button[aria-selected="true"]{background:#3c5a50;border-color:#3c5a50;color:#f4f7f5}
.konto-list{display:grid;gap:12px}
.konto-item{padding:18px}
.konto-item header{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.konto-item h2{font-size:20px;margin:0}
.konto-meta{color:var(--muted);font-size:13px;margin:6px 0 0}
.konto-badge{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.konto-badge.is-failed{color:#f0c9c2}
.konto-item p{margin:12px 0 0}
.konto-item a{color:var(--accent)}
.konto-empty{color:var(--muted)}
.konto-password{max-width:none}
.konto-password summary{cursor:pointer;font-size:18px;font-weight:700}
.konto-password form{margin-top:18px}
.konto-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.konto-stat{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:16px 18px}
.konto-stat span{display:block;color:var(--muted);font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.konto-stat strong{display:block;margin-top:6px;font-size:32px;letter-spacing:-.05em;line-height:1}
.konto-stage{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:16px;align-items:start}
.konto-map{height:520px;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:#101714}
.konto-side{display:grid;gap:12px}
.konto-visitors{display:grid;gap:8px;max-height:250px;overflow:auto}
.konto-visitor{display:grid;gap:2px;width:100%;text-align:left;background:#101714;color:inherit;border:1px solid var(--line);border-radius:8px;padding:12px 14px;font:inherit;cursor:pointer}
.konto-visitor strong{font-size:15px}
.konto-visitor span{color:var(--muted);font-size:12px}
.konto-visitor.is-selected{border-color:#8cac94}
.konto-live{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:#b4e9cf;box-shadow:0 0 0 4px #b4e9cf2e;vertical-align:1px}
.konto-badge.is-quiet{color:var(--muted)}
.konto-trail{list-style:none;margin:14px 0 0;padding:0}
.konto-trail li{display:grid;grid-template-columns:28px 1fr;gap:10px;padding:12px 0;border-top:1px solid var(--line)}
.konto-trail span{color:var(--accent);font-weight:700}
.konto-trail strong,.konto-trail small{display:block}
.konto-trail small{color:var(--muted);font-size:12px}
.leaflet-control-attribution{background:#101714cc!important;color:#9aa7a0!important}
.leaflet-control-attribution a{color:#b4e9cf!important}
.leaflet-bar a{background:#18211d!important;color:#eef1ea!important;border-color:#293530!important}
@media(max-width:800px){
  .konto-stage,.konto-stats{grid-template-columns:1fr}
  .konto-map{height:320px}
  .konto-visitors{max-height:none}
}
@media(max-width:640px){
  .konto-main{padding-top:28px}
  .konto-card,.konto-item{padding:18px}
  .konto-card h1,.konto-head h1{font-size:34px}
  .konto-tabs{width:100%}
  .konto-tabs button{flex:1;padding:10px 8px}
  .konto-card .btn,.konto-password .btn{width:100%}
  .konto-logout{min-height:44px}
}
