/* Panel administracyjny BMW MINI Serwis */
:root{
  --blue:#1c69d4; --blue-dark:#0e4da0; --blue-light:#4d9bff;
  --bg:#0b0f14; --surface:#131a23; --surface2:#1a232e;
  --border:rgba(255,255,255,.09); --text:#dfe6ef; --muted:#93a1b3; --white:#fff;
  --radius:12px;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}
a{color:var(--blue-light);text-decoration:none}

.login-body{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;
  background:radial-gradient(circle at 70% 20%,rgba(28,105,212,.18),transparent 45%),var(--bg)}
.login-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);
  border-radius:16px;padding:34px 30px;display:flex;flex-direction:column;gap:14px;box-shadow:0 20px 50px rgba(0,0,0,.5)}
.login-logo{height:56px;object-fit:contain;margin:0 auto 6px}
.login-card h1{font-size:1.3rem;text-align:center;color:var(--white);margin-bottom:6px}
.login-card label,.card label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;color:var(--muted)}
.back-link{text-align:center;color:var(--muted);font-size:.85rem;margin-top:6px}
.login-captcha{display:flex;justify-content:center;margin:2px 0}
.form-captcha{margin:2px 0}

input,textarea,select{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:8px;
  color:var(--text);padding:11px 13px;font-family:inherit;font-size:.95rem}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--blue-light);box-shadow:0 0 0 3px rgba(28,105,212,.18)}
textarea{resize:vertical}
.check{flex-direction:row!important;align-items:center;gap:10px!important;color:var(--text)!important}
.check input{width:auto}

.btn-admin{display:inline-block;border:1px solid transparent;border-radius:8px;padding:11px 20px;
  font-weight:600;font-size:.92rem;cursor:pointer;font-family:inherit;transition:.15s}
.btn-admin-primary{background:linear-gradient(135deg,var(--blue-light),var(--blue));color:#fff}
.btn-admin-primary:hover{filter:brightness(1.08)}
.btn-admin-ghost{background:var(--surface2);color:var(--text);border-color:var(--border)}
.btn-admin-ghost:hover{border-color:var(--blue-light)}
.btn-admin-danger{background:#3a1414;color:#ff9ba0;border-color:#e01a2255}
.btn-admin-danger:hover{background:#e01a22;color:#fff}
.btn-sm{padding:7px 13px;font-size:.82rem}

.adm-top{background:#070a0e;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}
.adm-top-in{max-width:1000px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:14px}
.adm-logo{height:38px}
.adm-title{font-weight:700;color:var(--white)}
.adm-top-right{margin-left:auto;display:flex;align-items:center;gap:14px}
.adm-user{color:var(--muted);font-size:.9rem}
.adm-link{color:var(--muted);font-size:.9rem}
.adm-wrap{max-width:1000px;margin:0 auto;padding:24px 20px}
.adm-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:22px;border-bottom:1px solid var(--border);padding-bottom:12px}
.adm-tabs a{padding:9px 16px;border-radius:8px;color:var(--muted);font-weight:600}
.adm-tabs a:hover{background:var(--surface);color:var(--text)}
.adm-tabs a.active{background:var(--blue);color:#fff}
.badge{background:#fff;color:var(--blue);border-radius:20px;padding:1px 8px;font-size:.75rem;font-weight:700}

.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:26px;display:flex;flex-direction:column;gap:14px}
.card h2{color:var(--white);font-size:1.15rem;margin-top:8px}
.card h2:first-child{margin-top:0}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hint{color:var(--muted);font-size:.85rem;font-weight:400}
.save-bar{margin-top:8px}

.repeater{display:flex;flex-direction:column;gap:10px}
.rep-row{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:start}
.svc-row{grid-template-columns:150px 1fr auto}
.svc-row textarea{grid-column:1 / 3}
.rep-del{background:#3a1414;color:#ff9ba0;border:1px solid #e01a2255;border-radius:8px;width:40px;height:42px;font-size:1.3rem;cursor:pointer;line-height:1}
.rep-del:hover{background:#e01a22;color:#fff}

.alert{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-weight:500}
.alert-ok{background:rgba(26,127,55,.15);border:1px solid #1a7f3766;color:#7ee2a0}
.alert-err{background:rgba(224,26,34,.12);border:1px solid #e01a2266;color:#ff9ba0}

.msg{border:1px solid var(--border);border-radius:10px;padding:16px;margin-top:12px;background:var(--surface2)}
.msg-unread{border-color:var(--blue-light);box-shadow:0 0 0 1px rgba(77,155,255,.3) inset}
.msg-head{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:.9rem;color:var(--muted)}
.msg-head strong{color:var(--white)}
.msg-date{margin-left:auto}
.msg-subj{margin-top:8px;color:var(--text);font-weight:600}
.msg-body{margin-top:8px;color:var(--text)}
.msg-actions{margin-top:12px;display:flex;gap:8px}

/* Slajder */
.slide-upload{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.slide-upload input[type=file]{flex:0 0 auto;width:auto}
.slide-upload input[type=text]{flex:1;min-width:200px}
.slide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.slide-item{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px}
.slide-item img{width:100%;height:130px;object-fit:cover;border-radius:6px}
.slide-item .mini{font-size:.75rem;color:var(--muted);gap:4px}
.slide-item .mini input{padding:7px 9px}
.slide-del-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}

@media(max-width:640px){
  .grid2{grid-template-columns:1fr}
  .rep-row,.svc-row{grid-template-columns:1fr 1fr auto}
  .svc-row{grid-template-columns:1fr auto}
  .svc-row select,.svc-row textarea{grid-column:1 / 2}
}
