/* Verwaltung — Hotel am Glockenturm */
:root{
  --adm-ink:#241d18;
  --adm-muted:#7a6f64;
  --adm-line:#e4dccd;
  --adm-bg:#f6f1e7;
  --adm-card:#ffffff;
  --adm-burgundy:#6a1f23;
  --adm-burgundy-d:#4a1518;
  --adm-champagne:#b8924f;
  --adm-ok-bg:#e8f3e8; --adm-ok-ink:#2f5d33;
  --adm-err-bg:#f7e6e6; --adm-err-ink:#8a2b2b;
  --adm-radius:10px;
  --adm-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
}
*{box-sizing:border-box;}
body{
  margin:0;font-family:var(--adm-sans);color:var(--adm-ink);
  background:var(--adm-bg);line-height:1.55;font-size:16px;
}

/* Kopfzeile */
.adm-top{background:var(--adm-ink);color:#f3ece0;}
.adm-top-inner{
  max-width:1080px;margin:0 auto;padding:.85rem 1.25rem;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
}
.adm-brand{font-weight:600;letter-spacing:.02em;display:flex;align-items:baseline;gap:.5rem;}
.adm-brand small{color:var(--adm-champagne);font-weight:400;font-size:.72em;text-transform:uppercase;letter-spacing:.14em;}
.adm-nav{display:flex;align-items:center;gap:1.25rem;}
.adm-nav a{color:#f3ece0;text-decoration:none;font-size:.92rem;}
.adm-nav a:hover{color:#fff;text-decoration:underline;}
.adm-logout{color:var(--adm-champagne)!important;}

/* Layout */
.adm-main{max-width:1080px;margin:1.75rem auto;padding:0 1.25rem;}
.adm-foot{max-width:1080px;margin:2rem auto;padding:1rem 1.25rem;color:var(--adm-muted);font-size:.82rem;border-top:1px solid var(--adm-line);}

/* Karten */
.adm-card{
  background:var(--adm-card);border:1px solid var(--adm-line);
  border-radius:var(--adm-radius);padding:1.5rem;margin-bottom:1.5rem;
  box-shadow:0 1px 2px rgba(0,0,0,.03);
}
.adm-card-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.35rem;}
.adm-card h1{font-size:1.3rem;margin:0;}
.adm-narrow{max-width:430px;margin-left:auto;margin-right:auto;}
.adm-muted{color:var(--adm-muted);font-size:.9rem;}
.adm-empty{color:var(--adm-muted);padding:1rem 0;}

/* Formulare */
.adm-form label{display:block;margin:0 0 1rem;font-size:.9rem;font-weight:500;}
.adm-form input[type=text],
.adm-form input[type=password]{
  display:block;width:100%;margin-top:.35rem;padding:.6rem .7rem;
  font:inherit;color:var(--adm-ink);background:#fff;
  border:1px solid var(--adm-line);border-radius:8px;
}
.adm-form input:focus{outline:none;border-color:var(--adm-champagne);box-shadow:0 0 0 3px rgba(184,146,79,.2);}

/* Buttons */
.adm-btn{
  display:inline-block;cursor:pointer;font:inherit;font-size:.9rem;
  padding:.55rem .95rem;border:1px solid var(--adm-line);border-radius:8px;
  background:#fff;color:var(--adm-ink);text-decoration:none;line-height:1.2;
  transition:background .15s,border-color .15s;
}
.adm-btn:hover{background:#f3ece0;}
.adm-btn-primary{background:var(--adm-burgundy);border-color:var(--adm-burgundy);color:#fff;}
.adm-btn-primary:hover{background:var(--adm-burgundy-d);}
.adm-btn-small{padding:.35rem .65rem;font-size:.82rem;}
.adm-btn-danger{color:var(--adm-burgundy);}
.adm-btn-danger:hover{background:var(--adm-err-bg);}

/* Hinweise */
.adm-flash{padding:.7rem .9rem;border-radius:8px;margin:0 0 1rem;font-size:.92rem;}
.adm-flash-ok{background:var(--adm-ok-bg);color:var(--adm-ok-ink);}
.adm-flash-error{background:var(--adm-err-bg);color:var(--adm-err-ink);}

/* Tabelle */
.adm-table{width:100%;border-collapse:collapse;margin-top:1rem;}
.adm-table th,.adm-table td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--adm-line);vertical-align:middle;}
.adm-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--adm-muted);font-weight:600;}
.adm-table code{background:#f3ece0;padding:.1rem .4rem;border-radius:5px;font-size:.85em;}
.adm-row-actions{display:flex;gap:.4rem;justify-content:flex-end;align-items:center;}
.adm-row-actions form{margin:0;}

/* Upload */
.adm-upload{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin:1rem 0;}
.adm-upload input[type=file]{font:inherit;font-size:.85rem;}

/* Medien-Raster */
.adm-media-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
  gap:1rem;margin-top:1rem;
}
.adm-media{
  margin:0;border:1px solid var(--adm-line);border-radius:8px;overflow:hidden;
  background:#fff;display:flex;flex-direction:column;
}
.adm-media>img{width:100%;height:110px;object-fit:cover;display:block;background:#f3ece0;}
.adm-fileicon{
  display:flex;align-items:center;justify-content:center;height:110px;
  background:#f3ece0;color:var(--adm-burgundy);font-weight:700;letter-spacing:.05em;font-size:1.05rem;
}
.adm-media figcaption{padding:.5rem .6rem;display:flex;flex-direction:column;gap:.1rem;border-top:1px solid var(--adm-line);}
.adm-media-name{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.adm-media-size{font-size:.72rem;color:var(--adm-muted);}
.adm-media-actions{display:flex;gap:.35rem;padding:.45rem .6rem;flex-wrap:wrap;}
.adm-media-actions form{margin:0;}

/* Editor */
.adm-editor-wrap{border:1px solid var(--adm-line);border-radius:8px;overflow:hidden;margin:.35rem 0 0;}
.adm-toolbar{display:flex;flex-wrap:wrap;gap:.25rem;padding:.45rem .55rem;background:#faf6ee;border-bottom:1px solid var(--adm-line);}
.adm-tool{
  cursor:pointer;font:inherit;font-size:.85rem;min-width:2rem;
  padding:.3rem .55rem;border:1px solid var(--adm-line);border-radius:6px;background:#fff;color:var(--adm-ink);
}
.adm-tool:hover{background:#f3ece0;}
.adm-tool-sep{width:1px;align-self:stretch;background:var(--adm-line);margin:.1rem .25rem;}
.adm-editor{
  min-height:240px;padding:1rem 1.1rem;background:#fff;outline:none;
  font-size:1rem;line-height:1.65;
}
.adm-editor:focus{box-shadow:inset 0 0 0 2px rgba(184,146,79,.18);}
.adm-editor h3{font-size:1.15rem;margin:1rem 0 .4rem;}
.adm-editor p{margin:0 0 .8rem;}
.adm-editor a{color:var(--adm-burgundy);}
.adm-editor img{max-width:100%;height:auto;border-radius:6px;}
.adm-actions{display:flex;gap:.6rem;align-items:center;margin-top:1rem;}

/* Medienauswahl-Overlay */
.adm-picker{
  position:fixed;inset:0;background:rgba(20,17,15,.55);
  display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;z-index:50;
}
.adm-picker[hidden]{display:none;}
.adm-picker-box{
  background:#fff;border-radius:var(--adm-radius);max-width:720px;width:100%;
  max-height:84vh;overflow:auto;padding:1.25rem;box-shadow:0 12px 40px rgba(0,0,0,.3);
}
.adm-picker-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;}
.adm-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem;margin-top:.75rem;}
.adm-picker-item{
  cursor:pointer;border:1px solid var(--adm-line);border-radius:8px;background:#fff;
  padding:0;overflow:hidden;display:flex;flex-direction:column;text-align:left;
}
.adm-picker-item:hover{border-color:var(--adm-champagne);box-shadow:0 0 0 2px rgba(184,146,79,.2);}
.adm-picker-item>img{width:100%;height:84px;object-fit:cover;background:#f3ece0;}
.adm-picker-item .adm-fileicon{height:84px;font-size:.95rem;}
.adm-picker-name{font-size:.74rem;padding:.4rem .5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

@media (max-width:560px){
  .adm-card{padding:1.1rem;}
  .adm-row-actions{flex-direction:column;align-items:stretch;}
}
