/*
 * Hybula Looking Glass (lg.as47526.net) — Design von handily networks über Bootstrap 5
 * (LG_CSS_OVERRIDES in config.php). Basis wie DropMSG/Password Pusher.
 */


@import url(fonts.css);

:root,
[data-bs-theme="dark"]{
  --hn-ink:#0a0f1a;--hn-ink-2:#0f1626;--hn-ink-3:#141d31;--hn-line:#1f2a44;
  --hn-text:#e7ecf5;--hn-text-dim:#93a0b8;
  --hn-amber:#ffb454;--hn-amber-dim:#b97f33;--hn-green:#4ade80;
  --hn-sans:"Source Sans 3 Variable","Source Sans 3",system-ui,sans-serif;
  --hn-disp:"Space Grotesk",var(--hn-sans);

  color-scheme:dark;
  --bs-body-font-family:var(--hn-sans);
  --bs-body-font-size:1rem;
  --bs-body-bg:var(--hn-ink);--bs-body-bg-rgb:10,15,26;
  --bs-body-color:var(--hn-text);--bs-body-color-rgb:231,236,245;
  --bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;
  --bs-secondary-color:var(--hn-text-dim);
  --bs-secondary-bg:var(--hn-ink-3);--bs-secondary-bg-rgb:20,29,49;
  --bs-tertiary-bg:var(--hn-ink-2);--bs-tertiary-bg-rgb:15,22,38;
  --bs-border-color:var(--hn-line);
  --bs-border-radius:10px;--bs-border-radius-sm:8px;--bs-border-radius-lg:14px;
  --bs-primary:var(--hn-amber);--bs-primary-rgb:255,180,84;
  --bs-link-color:var(--hn-amber);--bs-link-color-rgb:255,180,84;
  --bs-link-hover-color:#ffc985;--bs-link-hover-color-rgb:255,201,133;
  --bs-focus-ring-color:rgba(255,180,84,.35);
  --bs-form-valid-color:var(--hn-green);
  --bs-heading-color:var(--hn-text);
}

body{
  background:
    radial-gradient(600px 320px at 85% 0,rgba(255,180,84,.06),transparent 70%),
    radial-gradient(500px 300px at 0 100%,rgba(74,222,128,.04),transparent 70%),
    var(--hn-ink);
  background-attachment:fixed;
}
::selection{background:var(--hn-amber);color:var(--hn-ink)}
:focus-visible{outline:2px solid var(--hn-amber);outline-offset:2px}
h1,h2,h3,h4,h5{font-family:var(--hn-disp);font-weight:600;letter-spacing:-.01em}

/* Navigation wie der Header der Website */
.navbar.bg-body-tertiary{
  background:rgba(10,15,26,.85)!important;
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--hn-line);
  padding-top:12px;padding-bottom:12px;
}
.hn-brand{display:flex;align-items:center;gap:10px;font-family:var(--hn-disp);font-weight:600;font-size:1.2rem;color:var(--hn-text)}
.hn-brand:hover,.hn-brand:focus{color:var(--hn-text)}
.hn-brand img{display:block}
.navbar .navbar-text,.navbar label,.navbar .form-check-label{color:var(--hn-text-dim)}

/* Schaltflächen: primär Amber, sonst ruhige Konturen */
.btn{font-family:var(--hn-disp);font-weight:600;border-radius:10px;transition:background .2s,border-color .2s,color .2s}
.btn-primary{
  --bs-btn-color:var(--hn-ink);--bs-btn-bg:var(--hn-amber);--bs-btn-border-color:var(--hn-amber);
  --bs-btn-hover-color:var(--hn-ink);--bs-btn-hover-bg:#ffc070;--bs-btn-hover-border-color:#ffc070;
  --bs-btn-active-color:var(--hn-ink);--bs-btn-active-bg:#f0a43f;--bs-btn-active-border-color:#f0a43f;
  --bs-btn-disabled-color:var(--hn-ink);--bs-btn-disabled-bg:var(--hn-amber-dim);--bs-btn-disabled-border-color:var(--hn-amber-dim);
  box-shadow:0 8px 28px rgba(255,180,84,.18);
}
.btn-secondary,.btn-outline-secondary{
  --bs-btn-color:var(--hn-text);--bs-btn-bg:var(--hn-ink-3);--bs-btn-border-color:var(--hn-line);
  --bs-btn-hover-color:var(--hn-text);--bs-btn-hover-bg:var(--hn-ink-3);--bs-btn-hover-border-color:var(--hn-amber-dim);
  --bs-btn-active-color:var(--hn-text);--bs-btn-active-bg:#1a2540;--bs-btn-active-border-color:var(--hn-amber-dim);
  --bs-btn-disabled-color:var(--hn-text-dim);--bs-btn-disabled-bg:var(--hn-ink-2);--bs-btn-disabled-border-color:var(--hn-line);
}
.dropdown-menu{--bs-dropdown-bg:var(--hn-ink-2);--bs-dropdown-border-color:var(--hn-line);--bs-dropdown-link-hover-bg:var(--hn-ink-3);--bs-dropdown-link-active-bg:var(--hn-amber);--bs-dropdown-link-active-color:var(--hn-ink)}

/* Eingabefelder */
.form-control,.form-select,.input-group-text{background-color:var(--hn-ink-2);border-color:var(--hn-line);color:var(--hn-text)}
.form-control:focus,.form-select:focus{background-color:var(--hn-ink-2);border-color:var(--hn-amber-dim);box-shadow:0 0 0 .2rem rgba(255,180,84,.2);color:var(--hn-text)}
.form-control::placeholder{color:var(--hn-text-dim);opacity:.8}
.form-check-input{background-color:var(--hn-ink-2);border-color:var(--hn-line)}
.form-check-input:checked{background-color:var(--hn-amber);border-color:var(--hn-amber)}
#message,#prettyprint,#plaintext{font-size:1rem;line-height:1.55}
#message{min-height:14rem}
.nav-tabs{--bs-nav-tabs-border-color:var(--hn-line);--bs-nav-tabs-link-active-bg:var(--hn-ink-2);--bs-nav-tabs-link-active-border-color:var(--hn-line) var(--hn-line) var(--hn-ink-2);--bs-nav-tabs-link-active-color:var(--hn-text);--bs-nav-link-color:var(--hn-text-dim);--bs-nav-link-hover-color:var(--hn-text)}

/* Hinweise: getönte Flächen statt Bootstrap-Bunt */
.alert{border-radius:12px;border-width:1px}
.alert-info{--bs-alert-bg:rgba(255,180,84,.07);--bs-alert-border-color:rgba(255,180,84,.3);--bs-alert-color:var(--hn-text);--bs-alert-link-color:var(--hn-amber)}
.alert-success{--bs-alert-bg:rgba(74,222,128,.07);--bs-alert-border-color:rgba(74,222,128,.3);--bs-alert-color:var(--hn-text);--bs-alert-link-color:var(--hn-green)}
.alert-danger{--bs-alert-bg:rgba(248,113,113,.08);--bs-alert-border-color:rgba(248,113,113,.35);--bs-alert-color:var(--hn-text)}
.alert-warning{--bs-alert-bg:rgba(255,180,84,.1);--bs-alert-border-color:rgba(255,180,84,.4);--bs-alert-color:var(--hn-text)}
#pastelink a,#pasteurl{color:var(--hn-amber);word-break:break-all}

/* Fußzeile im Stil der Website */
.hn-footer{border-top:1px solid var(--hn-line);margin-top:48px;padding:28px 0 24px;color:var(--hn-text-dim);font-size:.92rem}
.hn-footer a{color:var(--hn-text-dim);text-decoration:none}
.hn-footer a:hover{color:var(--hn-amber)}
.hn-footer-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 48px;align-items:start}
.hn-footer-grid p{max-width:640px;margin:0}
.hn-footer-grid nav{display:flex;gap:20px;flex-wrap:wrap}
.hn-footer-name{font-family:var(--hn-disp);font-weight:600;color:var(--hn-text);font-size:1.05rem;margin-bottom:6px!important}
.hn-footer-grid p a{color:var(--hn-text)}
.hn-footer-meta{margin:20px 0 0;font-size:.8rem;opacity:.75}
@media(max-width:720px){.hn-footer-grid{grid-template-columns:1fr}}

@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Looking Glass */
.hn-logo{display:flex;align-items:center;gap:12px;font-family:var(--hn-disp);font-weight:600;font-size:1.5rem;color:var(--hn-text)}
.hn-logo small{font-size:.9rem;color:var(--hn-text-dim);font-weight:600;margin-left:6px}
a:has(.hn-logo){text-decoration:none}
.card{--bs-card-bg:var(--hn-ink-2);--bs-card-border-color:var(--hn-line);--bs-card-cap-bg:var(--hn-ink-3);--bs-card-color:var(--hn-text);border-radius:14px}
.card-header{font-family:var(--hn-disp);font-weight:600}
.btn-outline-secondary{--bs-btn-color:var(--hn-text);--bs-btn-border-color:var(--hn-line);--bs-btn-hover-bg:var(--hn-ink-3);--bs-btn-hover-border-color:var(--hn-amber-dim);--bs-btn-hover-color:var(--hn-text)}
pre,code,#outputContent,.output{font-family:var(--hn-mono)!important;background:var(--hn-ink-2);color:var(--hn-text)}
.text-muted{color:var(--hn-text-dim)!important}
#colorModeToggle,[data-bs-theme-value],.theme-toggle,button[onclick*="ColorMode"]{display:none!important}
footer.border-top{border-color:var(--hn-line)!important}
.hn-footer{color:var(--hn-text-dim);font-size:.9rem;text-align:center;padding:8px 0 32px}
.hn-footer a{color:var(--hn-text-dim);text-decoration:none}
.hn-footer a:hover{color:var(--hn-amber)}
#outputCard{background:var(--hn-ink)!important;border:1px solid var(--hn-line)!important;border-radius:12px}
#outputCard pre,#outputContent{background:transparent!important;color:var(--hn-text)!important;font-size:.9rem;white-space:pre-wrap;overflow-wrap:anywhere}

/* ALTCHA-Widget (lg-altcha.js) im Design von handily networks */
.hn-altcha altcha-widget{display:block;--altcha-max-width:100%;--altcha-border-width:1px;--altcha-border-radius:10px;--altcha-border-color:var(--hn-line);
  --altcha-color-base:var(--hn-ink);--altcha-color-base-content:var(--hn-text);--altcha-color-neutral:var(--hn-ink-2);--altcha-color-neutral-content:var(--hn-text-dim);
  --altcha-color-primary:var(--hn-amber);--altcha-color-primary-content:var(--hn-ink);--altcha-color-success:var(--hn-green);--altcha-color-success-content:var(--hn-ink);
  --altcha-color-error:var(--hn-amber);--altcha-color-error-content:var(--hn-ink);--altcha-checkbox-border-color:var(--hn-amber);--altcha-spinner-color:var(--hn-amber);--altcha-shadow:none}
