/* Verwaltung – ergaenzt site.css */
.admin{padding-block:30px 80px}
.admin-head{display:flex;gap:18px;align-items:center;flex-wrap:wrap;justify-content:space-between}
.admin-head .brand{display:flex;gap:18px;align-items:center}
.admin-head h1{margin:0;font-weight:300;font-size:clamp(28px,3.4vw,40px)}
.admin-head h1 b{font-weight:700}
.admin-head .who{display:flex;gap:14px;align-items:center;font-size:15px;color:var(--ink-soft)}
.cols{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:44px;align-items:start;margin-top:36px}
.panel h2{margin:0 0 14px;font-size:20px;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:8px;display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.panel p.hint{margin:0 0 6px;font-size:15px;color:var(--ink-soft)}
.drop{display:grid;place-items:center;text-align:center;gap:6px;border:2px dashed #b9b6a8;padding:28px 18px;cursor:pointer;background:var(--paper);transition:background .15s,border-color .15s}
.drop.over,.drop:hover{background:var(--sulfur-wash);border-color:var(--ink)}
.drop strong{font-weight:700}
.drop small{color:var(--ink-soft)}
.picked{display:flex;gap:14px;align-items:center;margin-top:12px}
.picked img{width:84px;height:64px;object-fit:contain;background:var(--shade)}
.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin-top:18px}
.form .full{grid-column:1/-1}
label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600}
input[type=text],input[type=password],input[type=number],select,textarea{border:1px solid #b9b6a8;border-radius:2px;padding:8px 10px;font-weight:400;font-size:16px;background:var(--paper);width:100%}
input:focus,select:focus,textarea:focus{border-color:var(--ink);outline:2px solid var(--sulfur);outline-offset:0}
textarea{resize:vertical;min-height:90px;line-height:1.4}
.check{flex-direction:row;align-items:center;gap:8px;font-weight:400}
.formacts{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.msg{font-size:14px;font-weight:600;margin:0}
.msg.err{color:var(--danger)}
.tabs{display:flex;gap:18px;margin-bottom:10px}
.tabs button{background:none;border:0;padding:2px 0;font-weight:400;color:var(--ink-soft)}
.tabs button[aria-pressed="true"]{color:var(--ink);font-weight:700;box-shadow:inset 0 -.42em 0 var(--sulfur)}

.mlist{list-style:none;margin:10px 0 0;padding:0}
.mrow{border-bottom:1px solid var(--hair);background:var(--paper)}
.mhead{display:grid;grid-template-columns:22px 72px minmax(0,1fr) 54px 130px auto;gap:12px;align-items:center;padding:10px 4px}
.mrow.dragging{opacity:.4}
.mrow.over{box-shadow:inset 0 3px 0 var(--sulfur)}
.handle{cursor:grab;color:var(--ink-soft);font-size:18px;text-align:center;user-select:none}
.mhead img,.mhead .noimg{width:72px;height:54px;object-fit:contain;background:var(--shade);display:block}
.mt{min-width:0}
.mt b{font-weight:700;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mt span{font-size:14px;color:var(--ink-soft)}
.mrow.off .mt,.mrow.off img{opacity:.45}
.pill{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:1px 7px;border-radius:2px;background:var(--shade);color:var(--ink-soft);margin-left:6px;vertical-align:2px}
.macts{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.ibtn{border:1px solid #b9b6a8;background:var(--paper);padding:4px 9px;border-radius:2px;font-size:14px;font-weight:400}
.ibtn:hover{border-color:var(--ink)}
.ibtn.danger:hover{background:var(--danger);border-color:var(--danger);color:var(--paper)}
.confirm{display:flex;gap:6px;align-items:center;font-size:14px;font-weight:600}
.edit{padding:4px 4px 22px 118px}
.edit .form{margin-top:4px}

.login{max-width:420px;margin:60px auto;display:flex;flex-direction:column;gap:22px;align-items:center}
.login form{width:100%;display:flex;flex-direction:column;gap:14px}
.login h1{margin:0;font-weight:300;font-size:30px;text-align:center}
.login h1 b{font-weight:700}

@media (max-width:860px){
  .cols{grid-template-columns:minmax(0,1fr)}
  .edit{padding-left:4px}
}
@media (max-width:560px){
  .form{grid-template-columns:minmax(0,1fr)}
  .mhead{grid-template-columns:22px 60px minmax(0,1fr)}
  .mhead img,.mhead .noimg{width:60px;height:46px}
  .mhead .myear,.mhead .mcat{display:none}
  .macts{grid-column:2/-1;justify-content:flex-start}
}
