/* Gehosted.DE – Polished UI + Brand + Dark/Light */
:root{ --brand:#0ea5e9; --brand-2:#22d3ee; --radius:18px; --shadow:0 10px 30px rgba(0,0,0,.18); --speed:.22s; }
html[data-theme="dark"]{ --bg:#0b1220; --bg-2:#0e1626; --panel:#0f172a; --surface:rgba(255,255,255,.04); --text:#e5e7eb; --muted:#9aa6be; --border:rgba(148,163,184,.18); --brand-glow:0 12px 28px rgba(14,165,233,.28); }
html[data-theme="light"]{ --bg:#f6f7fb; --bg-2:#eef2f9; --panel:#ffffff; --surface:rgba(2,6,23,.04); --text:#0f172a; --muted:#52607a; --border:rgba(15,23,42,.08); --brand-glow:0 10px 24px rgba(14,165,233,.22); }
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  background:linear-gradient(180deg, var(--bg), var(--bg-2)); color:var(--text);
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  transition: background-color var(--speed), color var(--speed);
}
.container{width:min(1200px,92vw);margin:0 auto;padding:1rem}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}

.topbar{
  position:sticky;top:0;z-index:20; display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;
  padding:.7rem 1rem; background:linear-gradient(180deg, rgba(3,6,19,.45), rgba(3,6,19,.2)); backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid var(--border);
}
html[data-theme="light"] .topbar{background:linear-gradient(180deg, rgba(255,255,255,.7), rgba(255,255,255,.5));}
.brand{display:flex;align-items:center;gap:.6rem}
.brand img{height:46px}
.brand span{font-weight:800;letter-spacing:.2px}
.nav a{margin-right:1rem;color:var(--muted);font-weight:600}
.nav a:hover{color:var(--text)}

.theme-toggle{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem;border-radius:999px;background:var(--panel);border:1px solid var(--border)}
.theme-toggle button{border:none;background:transparent;color:var(--muted);cursor:pointer;font-weight:700;padding:.35rem .7rem;border-radius:999px;transition:background var(--speed), color var(--speed), transform var(--speed)}
.theme-toggle button.active{background:var(--surface);color:var(--text);transform:translateY(-1px)}

.actions{display:flex;align-items:center;gap:.6rem}
.user-chip{padding:.25rem .6rem;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-weight:600}

.btn{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1rem;border:1px solid var(--border);border-radius:12px;background:var(--panel);color:var(--text);cursor:pointer;
     transition:transform var(--speed), box-shadow var(--speed), border-color var(--speed); font-weight:700; letter-spacing:.2px}
.btn:hover{transform:translateY(-1px);box-shadow:var(--brand-glow);border-color:rgba(14,165,233,.45)}
.btn.primary{background:linear-gradient(180deg, rgba(14,165,233,.95), rgba(14,165,233,.8)); color:#fff; border-color:transparent}
.btn.ghost{background:transparent}

.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;box-shadow:var(--shadow)}
h1,h2{letter-spacing:-.01em;margin:.5rem 0 1rem}
.muted{color:var(--muted)}

.toolbar{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin:1rem 0}
.search{display:flex;align-items:center;gap:.6rem;padding:.6rem .9rem;border:1px solid var(--border);border-radius:12px;background:var(--panel);min-width:260px;flex:1}
.search input{border:none;background:transparent;color:var(--text);outline:none;width:100%}
.breadcrumb{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}
.breadcrumb a{padding:.35rem .6rem;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-weight:600}
.breadcrumb a.active{color:#fff;background:linear-gradient(180deg, rgba(14,165,233,.25), rgba(34,211,238,.18));border-color:rgba(14,165,233,.45)}
html[data-theme="light"] .breadcrumb a.active{color:#0f172a}

.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.9rem}
@media(min-width:700px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1000px){.grid{grid-template-columns:repeat(4,1fr)}}

.tile{display:flex;flex-direction:column;gap:.7rem;padding:.8rem;background:var(--panel);border:1px solid var(--border);border-radius:16px;overflow:hidden;
      transition:transform var(--speed), box-shadow var(--speed), border-color var(--speed)}
.tile:hover{transform:translateY(-3px);box-shadow:var(--brand-glow);border-color:rgba(14,165,233,.45)}
.thumb{height:160px;border-radius:12px;overflow:hidden;background:#0c1322;display:grid;place-items:center}
html[data-theme="light"] .thumb{background:#e9eef8}
.thumb img,.thumb video{width:100%;height:100%;object-fit:cover}
.thumb .icon{font-size:46px;opacity:.9}
.tile .name{font-weight:800;letter-spacing:.1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tile .meta{color:var(--muted);font-size:.92rem}
.tile .row{display:flex;gap:.5rem;flex-wrap:wrap}
.badge{font-size:.8rem;color:var(--muted);border:1px dashed var(--border);border-radius:999px;padding:.2rem .5rem}

.list{width:100%;border-collapse:collapse;margin-top:1rem}
.list th,.list td{padding:.6rem;border-bottom:1px solid var(--border)}
.list .actions .btn{padding:.45rem .7rem}

.alert{border-radius:12px;padding:.7rem .9rem;margin:.6rem 0}
.alert.ok{background:rgba(16,185,129,.15);border:1px solid rgba(16,185,129,.35)}
.alert.error{background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.35)}

.footer{padding:2rem 1rem;text-align:center;color:var(--muted)}
.center{display:grid;place-items:center;height:100vh}
.login{width:min(420px,92vw);text-align:center}
.login .logo{height:54px;margin-bottom:.6rem}
label{display:block;margin:.6rem 0}
input,select,textarea{width:100%;padding:.75rem .9rem;border-radius:12px;border:1px solid var(--border);background:#fff1;color:var(--text);outline:none}
input:focus,textarea:focus,select:focus{box-shadow:0 0 0 2px rgba(14,165,233,.35) inset;border-color:rgba(14,165,233,.55)}
