:root{color-scheme:dark;--bg:#111316;--panel:#1b1e23;--panel2:#242830;--text:#f1f3f5;--muted:#a9b0ba;--line:#343a44;--accent:#89b4fa;--danger:#ff8585;--ok:#8bd49c;--radius:12px;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.45}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,.button,input,textarea{font:inherit}.topbar{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 1.4rem;background:var(--panel);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.topbar h1{font-size:1.25rem;margin:0}.topbar nav{display:flex;gap:.9rem;flex-wrap:wrap}.layout{display:grid;grid-template-columns:240px minmax(0,1fr);max-width:1400px;margin:auto}.sidebar{padding:1rem;border-right:1px solid var(--line);min-height:calc(100vh - 70px)}.content{padding:1rem 1.4rem}.search{display:grid;gap:.5rem;margin-bottom:1rem}.filter-link{display:flex;justify-content:space-between;padding:.55rem .7rem;border-radius:8px;color:var(--text);margin:.15rem 0}.filter-link:hover,.filter-link.active{background:var(--panel2);text-decoration:none}.editor{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:.8rem 1rem;margin-bottom:1rem}.editor summary{cursor:pointer;font-weight:700}.editor form{margin-top:1rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}.wide{grid-column:1/-1}label{display:grid;gap:.35rem;font-weight:600}small,.muted{color:var(--muted);font-weight:400}input,textarea{width:100%;padding:.68rem .75rem;background:#101216;color:var(--text);border:1px solid var(--line);border-radius:8px}textarea{resize:vertical}.checkbox{display:flex;align-items:center;gap:.5rem}.checkbox input{width:auto}.actions,.card-actions{display:flex;gap:.6rem;align-items:center;margin-top:1rem;flex-wrap:wrap}button,.button{display:inline-block;border:0;border-radius:8px;padding:.6rem .85rem;background:var(--accent);color:#111;font-weight:700;cursor:pointer;text-decoration:none}.button:hover{text-decoration:none}.secondary{background:var(--panel2);color:var(--text)}.danger{background:transparent;color:var(--danger);border:1px solid #6b3535}.cards{display:grid;gap:.85rem}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:1rem}.card-head{display:flex;justify-content:space-between;gap:1rem}.card h2{font-size:1.05rem;margin:0 0 .15rem}.url{font-size:.86rem;color:var(--muted);word-break:break-all}.star{font-size:1.45rem;background:transparent;color:#ffd166;padding:.15rem}.meta{display:flex;gap:.45rem;flex-wrap:wrap}.badge,.tag{font-size:.8rem;padding:.2rem .5rem;border-radius:99px;background:var(--panel2);color:var(--muted)}.notice{padding:.8rem 1rem;border-radius:8px;margin-bottom:1rem}.notice.success{background:#193522;color:var(--ok)}.notice.error{background:#3b1e22;color:#ffb0b0}.empty{text-align:center;color:var(--muted);padding:3rem}.auth-page{min-height:100vh;display:grid;place-items:center;padding:1rem}.auth-card{width:min(430px,100%);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem}.wide-card{width:min(620px,100%)}.auth-card form{display:grid;gap:1rem}@media(max-width:760px){.topbar{position:static;align-items:flex-start;flex-direction:column}.layout{display:block}.sidebar{min-height:auto;border-right:0;border-bottom:1px solid var(--line)}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.content{padding:1rem}.topbar nav{font-size:.9rem}.card-actions form{display:inline}.sidebar .filter-link{display:inline-flex;margin:.15rem}.search{grid-template-columns:1fr auto}}

/* URL-Dateien und Links per Drag & Drop */
.drop-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  padding: 2rem;
  background: rgba(10, 12, 15, 0.82);
  backdrop-filter: blur(4px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
}
.drop-overlay.is-visible {
  opacity: 1;
  pointer-events: auto;
}
.drop-overlay__box {
  width: min(620px, 92vw);
  padding: 2.2rem;
  border: 2px dashed currentColor;
  border-radius: 18px;
  text-align: center;
  background: #1b1e24;
  box-shadow: 0 20px 70px rgba(0, 0, 0, 0.45);
}
.drop-overlay__box strong {
  display: block;
  margin-bottom: 0.45rem;
  font-size: clamp(1.25rem, 3vw, 2rem);
}
.drop-overlay__box span {
  color: #b7bec9;
}
.editor.drop-success {
  outline: 2px solid #7fba45;
  outline-offset: 4px;
}
