/** Page layout **/
html, body {
    height: 100%;
}

@media (min-width:768px) {
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-link > a:hover,
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-profile-link:hover {
    transform:none;
    border-color:rgba(163,205,255,.42);
    background:linear-gradient(135deg,rgba(91,139,209,.22),rgba(116,78,185,.17));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 8px 17px rgba(0,0,0,.19);
    color:#fff;
  }
}

/* Password recovery: this page uses its own legacy login-container markup.
 * Keep it deliberately small, clear and usable on phone and desktop. */
body:has(.login-container .button-forgot-pw) #content-wrap {
  display:grid;
  place-items:center;
  min-height:calc(100vh - 118px);
  padding:42px 18px 56px;
  background:
    radial-gradient(circle at 18% 16%, rgba(91,145,211,.14), transparent 32%),
    radial-gradient(circle at 86% 82%, rgba(119,91,196,.13), transparent 36%);
}
body:has(.login-container .button-forgot-pw) .login-container {
  width:min(100%, 430px);
  margin:0 auto;
}
body:has(.login-container .button-forgot-pw) .login-form {
  position:relative;
  overflow:visible;
  padding:30px;
  border:1px solid rgba(188,215,255,.22);
  border-radius:22px;
  background:linear-gradient(145deg, rgba(22,32,54,.98), rgba(10,15,27,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09), 0 25px 60px rgba(0,0,0,.34);
}
body:has(.login-container .button-forgot-pw) .login-form::before {
  content:'ZUGANG WIEDERHERSTELLEN';
  display:block;
  margin:0 0 8px;
  color:#9ecbff;
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
}
body:has(.login-container .button-forgot-pw) .login-form .gdo-form-title {
  margin:0 0 24px;
  color:#f4f8ff;
  font-size:27px;
  font-weight:720;
  line-height:1.1;
  letter-spacing:-.045em;
}
body:has(.login-container .button-forgot-pw) .login-form form {
  display:grid;
  gap:14px;
}
body:has(.login-container .button-forgot-pw) .login-form .gdt-container {
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}
body:has(.login-container .button-forgot-pw) .login-form input[type=text],
body:has(.login-container .button-forgot-pw) .login-form input[type=email] {
  box-sizing:border-box;
  width:100%;
  min-height:52px;
  padding:13px 15px;
  border:1px solid rgba(176,208,255,.22);
  border-radius:13px;
  outline:0;
  background:rgba(10,18,34,.8);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
  color:#f5f8ff;
  font-size:14px;
}
body:has(.login-container .button-forgot-pw) .login-form input::placeholder { color:#9db1d0; opacity:1; }
body:has(.login-container .button-forgot-pw) .login-form input:focus {
  border-color:rgba(143,196,255,.76);
  box-shadow:0 0 0 3px rgba(101,151,233,.14), inset 0 1px 0 rgba(255,255,255,.06);
}
body:has(.login-container .button-forgot-pw) .login-form .or-container {
  display:flex;
  align-items:center;
  gap:10px;
  height:18px;
  color:#a8bad6;
  font-size:11px;
  font-weight:750;
  text-align:center;
}
body:has(.login-container .button-forgot-pw) .login-form .or-container::before,
body:has(.login-container .button-forgot-pw) .login-form .or-container::after {
  content:'';
  flex:1;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(167,198,242,.27));
}
body:has(.login-container .button-forgot-pw) .login-form .or-container::after { transform:scaleX(-1); }
body:has(.login-container .button-forgot-pw) .login-form .form-buttons {
  display:grid;
  grid-template-columns:1fr;
  gap:13px;
  margin-top:12px;
}
body:has(.login-container .button-forgot-pw) .login-form .login-button {
  order:1;
  width:100%;
  min-height:52px;
  margin:0;
  padding:12px 16px;
  border:1px solid rgba(211,229,255,.35);
  border-radius:13px;
  background:linear-gradient(120deg, #5e91d3, #765bc4);
  box-shadow:0 11px 23px rgba(54,83,164,.28), inset 0 1px 0 rgba(255,255,255,.24);
  color:#fff;
  font-size:14px;
  font-weight:750;
  cursor:pointer;
}
body:has(.login-container .button-forgot-pw) .login-form .button-forgot-pw {
  order:2;
  justify-self:center;
  padding:4px 8px;
  color:#b9d7ff;
  font-size:12px;
  text-decoration:none;
}
body:has(.login-container .button-forgot-pw) .login-form .button-forgot-pw:hover { color:#fff; }
body:has(.login-container .button-forgot-pw) .login-form .form-buttons > .gdt-container { display:none; }

@media (max-width:360px) {
  body:has(.login-container .button-forgot-pw) #content-wrap {
    min-height:calc(100vh - 96px);
    padding:58px 14px 34px;
    place-items:start center;
  }
  body:has(.login-container .button-forgot-pw) .login-container { width:100%; }
  body:has(.login-container .button-forgot-pw) .login-form {
    padding:24px 17px 20px;
    border-radius:18px;
  }
  body:has(.login-container .button-forgot-pw) .login-form .gdo-form-title {
    margin-bottom:20px;
    font-size:24px;
  }
}

/* Desktop account area: Bootstrap expands the legacy menu into one overlong row.
 * Keep the same clear control panel as on mobile, anchored below the account button. */
@media (min-width:768px) {
  #page-content-wrapper > .navbar { position:relative; z-index:40; }
  #page-content-wrapper > .navbar #navbarSupportedContent { display:none; }
  #page-content-wrapper > .navbar #navbarSupportedContent.show {
    position:absolute;
    top:58px;
    right:14px;
    z-index:60;
    display:block;
    width:min(520px, calc(100vw - 294px));
    max-height:calc(100vh - 86px);
    margin:0;
    padding:13px;
    overflow:auto;
    border:1px solid rgba(178,213,255,.22);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(23,32,54,.985),rgba(12,17,30,.985));
    box-shadow:0 20px 45px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.10);
    backdrop-filter:blur(18px);
  }
  #page-content-wrapper > .navbar #navbarSupportedContent.show::before {
    content:'KONTO  /  BEREICHE';
    display:block;
    margin:2px 3px 11px;
    color:#a8cff3;
    font-size:9px;
    font-weight:900;
    letter-spacing:.16em;
  }
  #page-content-wrapper > .navbar #navbarSupportedContent.show .navbar-nav,
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-menu {
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:8px;
    width:100%;
    margin:0;
    padding:0;
  }
  #page-content-wrapper > .navbar #navbarSupportedContent.show .nav-item,
  #page-content-wrapper > .navbar #navbarSupportedContent.show .nav-link,
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-link { display:flex; min-width:0; width:100%; padding:0; }
  #page-content-wrapper > .navbar #navbarSupportedContent.show .nav-item:has(.gdt-menu:empty) { display:none; }
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-link > a,
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-profile-link {
    display:flex;
    align-items:center;
    width:100%;
    min-height:48px;
    padding:9px 11px;
    overflow:hidden;
    border:1px solid rgba(182,207,255,.15);
    border-radius:12px;
    background:rgba(255,255,255,.035);
    color:#edf5ff;
    font-size:11px;
    font-weight:780;
    line-height:1.15;
    text-decoration:none;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-profile-link { gap:9px; }
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdo-icon,
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdo-icon * { display:none; }
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-link > a::before,
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-profile-link::before {
    content:'';
    flex:0 0 7px;
    width:7px;
    height:7px;
    margin-right:8px;
    border:1px solid rgba(195,225,255,.72);
    border-radius:50%;
    background:linear-gradient(135deg,#ace1ff,#8476df);
    box-shadow:0 0 9px rgba(126,184,255,.42);
  }
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-profile-link .gdt-avatar { display:none; }
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-profile-link .gdt-nickname { overflow:hidden; color:#f4f8ff; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
  #page-content-wrapper > .navbar #navbarSupportedContent.show .gdt-profile-link .gdt-nickname::after { content:'KONTO'; display:block; margin-top:2px; color:#a5b8df; font-size:7px; font-weight:850; letter-spacing:.13em; }
}

/* #gdo-pagewrap { */
/* 	margin: 2em auto; */
/* 	max-width: 1440px; */
/* } */

.login-container {
    max-width: 580px;
    margin: 170px auto;
    width: 100%;
}

.login-container input {
    width: 100%;
    padding: 5px;
}

.login-container .login-button {
    background-image: linear-gradient(to top, #b712ff 0%, #9c1cd1 100%);
    border-radius: 5px;
    color: #fff;
    padding: 5px 15px;
    float: right;
    border: 0;
    width: auto;
    margin: 15px;
}

.or-container {
    text-align: center;
    line-height: 34px;
}

.button-forgot-pw {
    color: #6741d0;
    margin: 15px;
    font-size: 1.2rem;
}

.login-form h2 {
    font-size: 1.7em;
    font-weight: normal;
    text-align: left;
    margin-bottom: 20px;
    padding: 0 15px;
}

.top-menu {
    float: right;
}

.top-menu li {
    float: left;
}

.top-menu li:first-child:after {
    content: '|';
    padding: 0 5px;
}

.top-menu li a {
    color: #6741d0;
    font-size: 1.2rem;
}

/** Errors and Messages **/
.gdo-error {
    border: 1px solid red;
    background: #fff;
    margin: 15px;
}

.gdo-success {
    border: 1px solid lime;
    background: #fff;
    margin: 15px;
}

.gdo-has-error {
    border: 1px solid red;
    background: #fff;
    margin: 15px;
}

/** Panels **/
.gdo-panel {
    padding: 4px 8px;
}


/** Top Banner **/
#lup-banner {
    width: 100%;
    background: red;
}


/** Top Menu **/
#lup-topmenu {
    background: #333;
    border-bottom: 1px solid #444444;
    background: rgb(76, 76, 76);
    background: -moz-linear-gradient(top, rgba(76, 76, 76, 1) 0%, rgba(89, 89, 89, 1) 13%, rgba(102, 102, 102, 1) 22%, rgba(71, 71, 71, 1) 34%, rgba(44, 44, 44, 1) 46%, rgba(17, 17, 17, 1) 60%, rgba(0, 0, 0, 1) 66%, rgba(43, 43, 43, 1) 85%, rgba(28, 28, 28, 1) 91%, rgba(19, 19, 19, 1) 92%);
    background: -webkit-linear-gradient(top, rgba(76, 76, 76, 1) 0%, rgba(89, 89, 89, 1) 13%, rgba(102, 102, 102, 1) 22%, rgba(71, 71, 71, 1) 34%, rgba(44, 44, 44, 1) 46%, rgba(17, 17, 17, 1) 60%, rgba(0, 0, 0, 1) 66%, rgba(43, 43, 43, 1) 85%, rgba(28, 28, 28, 1) 91%, rgba(19, 19, 19, 1) 92%);
    background: linear-gradient(to bottom, rgba(76, 76, 76, 1) 0%, rgba(89, 89, 89, 1) 13%, rgba(102, 102, 102, 1) 22%, rgba(71, 71, 71, 1) 34%, rgba(44, 44, 44, 1) 46%, rgba(17, 17, 17, 1) 60%, rgba(0, 0, 0, 1) 66%, rgba(43, 43, 43, 1) 85%, rgba(28, 28, 28, 1) 91%, rgba(19, 19, 19, 1) 92%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#4c4c4c', endColorstr='#131313', GradientType=0);
}

#lup-topmenu ul {
    display: block;
}

#lup-topmenu li {
    display: inline-block;
}

#lup-topmenu li a {
    display: inline-block;
    padding: 14px;
    color: #fff;
}

.lup-logo {
    max-width: 150px;
    margin: 10px 0;
}

/** Landing page **/
.lup-landing {
    max-width: 1080px;
    margin: 2.5rem auto;
    padding: 0 1.25rem 3rem;
}

.lup-landing-hero {
    align-items: center;
    background: radial-gradient(circle at 85% 15%, #f1e9ff 0, #fff 42%, #f8f4ff 100%);
    border: 1px solid #e5d8ff;
    border-radius: 24px;
    display: grid;
    gap: 2.5rem;
    grid-template-columns: minmax(160px, 0.7fr) minmax(0, 1.3fr);
    overflow: hidden;
    padding: clamp(1.5rem, 5vw, 4rem);
}

.lup-landing-logo {
    display: block;
    height: auto;
    margin: 0 auto;
    max-width: 100%;
}

.lup-landing-kicker {
    color: #7c3aed;
    font-size: .85rem;
    font-weight: 700;
    letter-spacing: .08em;
    margin: 0 0 .75rem;
    text-transform: uppercase;
}

.lup-landing h1,
.lup-landing h2 {
    color: #271347;
}

.lup-landing h1 {
    font-size: clamp(2.2rem, 5vw, 4.25rem);
    letter-spacing: -.04em;
    line-height: 1.02;
    margin: 0;
}

.lup-landing-lead {
    color: #584d68;
    font-size: 1.2rem;
    line-height: 1.55;
    margin: 1.25rem 0 1.75rem;
    max-width: 43rem;
}

.lup-landing-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}

.lup-landing-actions a {
    border-radius: 999px;
    font-weight: 700;
    padding: .8rem 1.2rem;
    text-decoration: none;
}

.lup-landing-primary {
    background: linear-gradient(135deg, #b712ff, #6741d0);
    box-shadow: 0 8px 20px rgb(103 65 208 / 24%);
    color: #fff;
}

.lup-landing-primary:hover,
.lup-landing-primary:focus-visible {
    color: #fff;
    filter: brightness(1.06);
}

.lup-landing-secondary {
    border: 1px solid #a78bfa;
    color: #5b21b6;
}

.lup-landing-secondary:hover,
.lup-landing-secondary:focus-visible {
    background: #f3e8ff;
    color: #4c1d95;
}

.lup-landing-values {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 1rem;
}

.lup-landing-values article {
    background: #fff;
    border: 1px solid #ece7f5;
    border-radius: 16px;
    padding: 1.4rem;
}

.lup-landing-values h2 {
    font-size: 1.15rem;
    margin: 0 0 .5rem;
}

.lup-landing-values p {
    color: #62596f;
    line-height: 1.5;
    margin: 0;
}

/** Tables **/
.gdt-table thead {

}

.gdt-table thead .gdt-tblorder .sel span {
    color: gold;
}

.gdt-table td {
    padding: 5px;
    border-bottom: 1px solid #dedede;
}

.gdo-jpgraph img {
    width: 100%;
}

.statistics-room {
    text-align: center;
}

.lup-room-statistics {
    float: left;
    width: 100%;
    border-bottom: 1px solid #dedede;
    padding-bottom: 15px;
    margin-bottom: 40px;
}

/** Bars **/
.gdo-bar {
    border: 1px solid #aaa;
    border-radius: 8px;
    padding: 8px;
}

.gdo-bar .gdo-link {
    padding: 0px 6px;
}

.gdo-bar-row {
    margin-bottom: 8px;
}


/** Forms **/
.gdo-form {
    border: 1px solid #aaa;
    border-radius: 8px;
    padding: 8px;
    margin: 4px 0px;
}

#gwfdt-gdo-1 {
    width: 100%;
}

.gdt-editbutton a {
    color: #6741d0;
}

.gdt-editbutton {
    text-align: center;
}

.gdt-table thead {
    background: #333;
    border-bottom: 1px solid #444444;
    background: rgb(76, 76, 76);
    background: -moz-linear-gradient(top, rgba(76, 76, 76, 1) 0%, rgba(89, 89, 89, 1) 13%, rgba(102, 102, 102, 1) 22%, rgba(71, 71, 71, 1) 34%, rgba(44, 44, 44, 1) 46%, rgba(17, 17, 17, 1) 60%, rgba(0, 0, 0, 1) 66%, rgba(43, 43, 43, 1) 85%, rgba(28, 28, 28, 1) 91%, rgba(19, 19, 19, 1) 92%);
    background: -webkit-linear-gradient(top, rgba(76, 76, 76, 1) 0%, rgba(89, 89, 89, 1) 13%, rgba(102, 102, 102, 1) 22%, rgba(71, 71, 71, 1) 34%, rgba(44, 44, 44, 1) 46%, rgba(17, 17, 17, 1) 60%, rgba(0, 0, 0, 1) 66%, rgba(43, 43, 43, 1) 85%, rgba(28, 28, 28, 1) 91%, rgba(19, 19, 19, 1) 92%);
    background: linear-gradient(to bottom, rgba(76, 76, 76, 1) 0%, rgba(89, 89, 89, 1) 13%, rgba(102, 102, 102, 1) 22%, rgba(71, 71, 71, 1) 34%, rgba(44, 44, 44, 1) 46%, rgba(17, 17, 17, 1) 60%, rgba(0, 0, 0, 1) 66%, rgba(43, 43, 43, 1) 85%, rgba(28, 28, 28, 1) 91%, rgba(19, 19, 19, 1) 92%);
    color: #fff;
}

.gdt-table thead th {
    border-right: 1px solid #fff;
    padding: 5px;
}

.gdt-table thead th input {
    width: 100%;
}

.gdt-tblorder a {
    color: #fff;
}

@media (max-width: 768px) {
    .login-container input {
        margin-bottom: 15px;
    }

    .login-container {
        width: 95%;
    }

    .lup-landing {
        margin-top: 1rem;
    }

    .lup-landing-hero,
    .lup-landing-values {
        grid-template-columns: 1fr;
    }

    .lup-landing-logo {
        max-width: 200px;
    }
}

/* LinkUUp back office: the administrative application uses Bootstrap, but it
 * should still feel like one product with the mobile app. */
:root { --lup-admin-bg:#10121c; --lup-admin-surface:#1a1d2b; --lup-admin-panel:rgba(255,255,255,.055); --lup-admin-line:rgba(208,218,255,.13); --lup-admin-text:#f4f3fb; --lup-admin-muted:#b7b3c9; --lup-admin-accent:#9b86ff; --lup-admin-blue:#76bfff; }
body { color:var(--lup-admin-text); background:radial-gradient(circle at 90% 0,rgba(116,95,227,.20),transparent 28%),radial-gradient(circle at 4% 28%,rgba(67,173,230,.11),transparent 25%),linear-gradient(155deg,#171a29,var(--lup-admin-bg) 76%); }
#sidebar-wrapper { border-right-color:var(--lup-admin-line); background:linear-gradient(180deg,#1c2030,#12151f 92%); box-shadow:10px 0 30px rgba(0,0,0,.17); }
#leftnav .list-group-item { border-color:rgba(255,255,255,.055); background:transparent; color:var(--lup-admin-text); }
#leftnav .list-group-item:hover { background:linear-gradient(90deg,rgba(125,103,235,.22),rgba(82,157,215,.08)); }
#leftnav .list-group-item a { color:#dedaf0; font-weight:650; text-decoration:none; transition:color .16s ease,background .16s ease; }
#leftnav .list-group-item a:hover { color:#fff; }
.navbar.navbar-light { min-height:62px; border-color:var(--lup-admin-line); background:rgba(22,25,38,.86); box-shadow:0 7px 21px rgba(0,0,0,.14); backdrop-filter:blur(14px); }
.navbar .navbar-brand,.navbar .nav-link,.navbar a { color:var(--lup-admin-text); }
#sidebarToggle,.btn-primary,.gdt-submit.btn-primary { border:1px solid rgba(188,177,255,.45); border-radius:11px; background:linear-gradient(135deg,#8169df,#4d84c5); box-shadow:inset 0 1px 0 rgba(255,255,255,.27),0 7px 16px rgba(79,89,182,.22); color:#fff; font-weight:750; }
#content-wrap { width:min(100%,1240px); padding:23px 20px 36px; }
#content-wrap > h1,#content-wrap > h2,#content-wrap > h3 { margin:0 0 17px; padding:0; background:transparent; color:#faf9ff; font-weight:780; letter-spacing:-.02em; }
.card,.gdt-form,.gdo-bar,.gdt-table,.gdt-panel { border:1px solid var(--lup-admin-line); border-radius:16px; background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.026)); box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 11px 26px rgba(0,0,0,.14); color:var(--lup-admin-text); }
.card-header,.card-footer { border-color:var(--lup-admin-line); background:rgba(255,255,255,.035); color:var(--lup-admin-text); }
.card-title,.gdt-form-text h3 { color:#faf9ff; font-weight:760; }
.gdt-form { padding:0; overflow:hidden; width: 100%; }.gdt-form form { border:0; border-radius:0; }.gdt-form-inner { padding:19px; }
.form-label,label,.gdt-container label { color:#d8d4e8; font-weight:680; }.form-control,select,textarea,input:not([type=checkbox]):not([type=radio]) { border-color:rgba(193,204,255,.21); border-radius:10px; background:rgba(12,15,24,.58); color:#faf9ff; box-shadow:inset 0 1px 0 rgba(255,255,255,.04); }.form-control:focus,select:focus,textarea:focus,input:focus { border-color:rgba(157,134,255,.68); box-shadow:0 0 0 .18rem rgba(143,119,244,.16); }
.gdt-table { overflow:hidden; border-collapse:separate; border-spacing:0; }.gdt-table thead { background:linear-gradient(110deg,rgba(117,97,211,.48),rgba(57,133,190,.35)); color:#fff; }.gdt-table thead th { padding:12px 10px; border-color:rgba(255,255,255,.12); font-size:11px; letter-spacing:.06em; text-transform:uppercase; }.gdt-table tbody tr { background:rgba(255,255,255,.018); color:#eae8f3; }.gdt-table tbody tr:nth-child(even) { background:rgba(255,255,255,.043); }.gdt-table tbody tr:hover { background:rgba(119,105,211,.15); }.gdt-table td { padding:10px; border-color:rgba(255,255,255,.075); }
.gdt-table a,.gdt-link a,.gdt-editbutton a { color:#bdb0ff; }.gdt-table a:hover,.gdt-link a:hover,.gdt-editbutton a:hover { color:#fff; }
.alert,.gdt-error,.gdo-error,.gdo-success,.gdo-has-error { margin:14px 0; border-radius:13px; color:#f7f5ff; }.alert-danger,.gdt-error,.gdo-error,.gdo-has-error { border-color:rgba(250,119,143,.44); background:rgba(157,49,78,.20); }.alert-success,.gdo-success { border-color:rgba(94,211,161,.40); background:rgba(52,141,105,.19); }
footer { margin-top:0; padding:14px 20px; border-color:var(--lup-admin-line); background:#11131d; color:var(--lup-admin-muted); } footer a { color:#bdb0ff; text-decoration:none; }
@media (max-width:767px) { #content-wrap { padding:16px 12px 26px; }.navbar.navbar-light { min-height:56px; }.gdt-form-inner { padding:14px; }.gdt-table { display:block; overflow-x:auto; white-space:nowrap; } }

/* Staff dashboard, room editor and the charts use a practical visual hierarchy. */
#tabs.gdt-bar { display:flex; flex-wrap:wrap; gap:7px; margin:0 0 18px; padding:9px; border:1px solid var(--lup-admin-line); border-radius:15px; background:rgba(255,255,255,.045); box-shadow:inset 0 1px 0 rgba(255,255,255,.06); }
#tabs.gdt-bar .gdt-divider { display:none; } #tabs.gdt-bar .gdt-link { margin:0; } #tabs.gdt-bar .gdt-link a { display:inline-flex; align-items:center; gap:7px; min-height:34px; padding:7px 11px; border:1px solid transparent; border-radius:10px; color:#cbc5e5; font-size:12px; font-weight:700; text-decoration:none; } #tabs.gdt-bar .gdt-link a:hover { border-color:rgba(176,162,255,.34); background:rgba(126,102,224,.19); color:#fff; }
.lup-admin-hub { overflow:hidden; max-width:980px; margin:4px auto 20px; border:1px solid var(--lup-admin-line); border-radius:21px; background:radial-gradient(circle at 92% 4%,rgba(107,150,238,.20),transparent 29%),linear-gradient(135deg,rgba(118,93,211,.22),rgba(255,255,255,.035) 54%); box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 15px 32px rgba(0,0,0,.17); }
.lup-admin-hub-head { display:flex; align-items:center; gap:15px; padding:22px 22px 18px; }.lup-admin-hub-mark { display:grid; place-items:center; flex:0 0 48px; width:48px; height:48px; border:1px solid rgba(187,205,255,.33); border-radius:15px 15px 15px 6px; background:linear-gradient(145deg,rgba(111,156,237,.62),rgba(113,81,187,.39)); box-shadow:inset 0 1px 0 rgba(255,255,255,.29),0 9px 19px rgba(0,0,0,.16); color:#fff; font-size:21px; }.lup-admin-hub-head small { color:#bdb7e1; font-size:9px; font-weight:850; letter-spacing:.14em; }.lup-admin-hub-head h1 { margin:3px 0 5px; padding:0; color:#fff; font-size:24px; background:transparent; }.lup-admin-hub-head p { margin:0; color:#c4bfd5; font-size:12px; line-height:1.45; }
.lup-admin-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; border-top:1px solid var(--lup-admin-line); background:var(--lup-admin-line); }.lup-admin-action { display:flex; align-items:center; gap:11px; min-height:84px; padding:14px 17px; background:rgba(20,23,35,.82); color:#ebe9f5; text-decoration:none; transition:background .16s ease,transform .16s ease; }.lup-admin-action:hover { background:linear-gradient(130deg,rgba(112,99,202,.28),rgba(74,152,209,.12)); color:#fff; transform:translateY(-1px); }.lup-admin-action > i { display:grid; place-items:center; flex:0 0 32px; width:32px; height:32px; border:1px solid rgba(197,208,255,.22); border-radius:10px; background:rgba(255,255,255,.075); color:#b9cfff; font-size:14px; }.lup-admin-action span { display:grid; gap:3px; min-width:0; }.lup-admin-action strong { font-size:13px; }.lup-admin-action small { overflow:hidden; color:#aaa5bc; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.lup-admin-action b { margin-left:auto; color:#aca4d9; font-size:13px; }.lup-admin-action-primary { background:linear-gradient(135deg,rgba(117,91,218,.54),rgba(68,128,192,.31)); }.lup-admin-action-primary > i { background:rgba(255,255,255,.15); color:#fff; }.lup-admin-action-primary b { display:grid; place-items:center; width:24px; height:24px; border:1px solid rgba(255,255,255,.28); border-radius:8px; color:#fff; }
.lup-room-statistics { display:grid; grid-template-columns:minmax(170px,.33fr) minmax(0,1fr); gap:16px; float:none; width:100%; margin:0 0 18px; padding:16px; border:1px solid var(--lup-admin-line); border-radius:18px; background:linear-gradient(135deg,rgba(255,255,255,.065),rgba(255,255,255,.025)); box-shadow:inset 0 1px 0 rgba(255,255,255,.07); }.lup-room-statistics .statistics-room { display:flex; flex-direction:column; float:none; width:auto; min-height:390px; padding:12px 7px 7px; border:1px solid rgba(255,255,255,.09); border-radius:14px; background:rgba(10,13,21,.27); }.lup-stat-category-icon { display:grid; place-items:center; width:72px; height:72px; margin:3px auto 5px; border:1px solid rgba(255,255,255,.28); border-radius:24px 24px 24px 9px; box-shadow:0 8px 0 rgba(39,34,91,.38),0 17px 24px rgba(0,0,0,.25),inset 0 2px 1px rgba(255,255,255,.42); color:#fff; font-size:33px; text-shadow:0 2px 0 rgba(33,26,79,.35); }.lup-stat-category-icon.category-city { background:linear-gradient(145deg,#8fc8ff,#4779c9); }.lup-stat-category-icon.category-bar,.lup-stat-category-icon.category-pub,.lup-stat-category-icon.category-food { background:linear-gradient(145deg,#f5bf76,#c95d6e); }.lup-stat-category-icon.category-cafe { background:linear-gradient(145deg,#e3ba80,#8f5e77); }.lup-stat-category-icon.category-club { background:linear-gradient(145deg,#f09fe8,#8050c9); }.lup-stat-category-icon.category-culture,.lup-stat-category-icon.category-education { background:linear-gradient(145deg,#8ad9ee,#4082c3); }.lup-stat-category-icon.category-sport,.lup-stat-category-icon.category-outdoors { background:linear-gradient(145deg,#8dd6a4,#4b9f79); }.lup-stat-category-icon.category-health { background:linear-gradient(145deg,#f3a0b8,#bd5279); }.lup-stat-category-icon.category-default,.lup-stat-category-icon.category-business,.lup-stat-category-icon.category-shop,.lup-stat-category-icon.category-hotel,.lup-stat-category-icon.category-town,.lup-stat-category-icon.category-country,.lup-stat-category-icon.category-religion,.lup-stat-category-icon.category-salon { background:linear-gradient(145deg,#a394e7,#596fbf); }.lup-stat-category-name { display:block; color:#aaa4d8; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.lup-room-statistics h2 { overflow:hidden; margin:7px 0; color:#f7f5ff; font-size:15px; text-overflow:ellipsis; white-space:nowrap; }.lup-stat-qrcode { margin-top:auto; padding-top:10px; }.lup-stat-qrcode img { width:96px; height:96px; }.lup-room-statistics .grapics { float:none; width:auto; }.lup-room-statistics .lup-graph-custom-date { display:none; }.lup-room-statistics .lup-room-graph-container { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:12px; }.lup-room-statistics .statistics-usercount,.lup-room-statistics .statistics-messagecount { float:none; width:auto; padding:9px; border:1px solid rgba(255,255,255,.08); border-radius:12px; background:rgba(12,15,24,.32); }.lup-room-statistics .gdo-jpgraph img { display:block; width:100%; border:0; border-radius:9px; box-shadow:none; }
@media (max-width:700px) { .lup-admin-actions { grid-template-columns:1fr; }.lup-room-statistics { grid-template-columns:1fr; }.lup-room-statistics .lup-room-graph-container { grid-template-columns:1fr; }.lup-admin-hub-head { padding:17px 14px; }.lup-admin-hub-head h1 { font-size:20px; } }

/* Bootstrap utility classes otherwise reintroduce white panels and black text
 * on individual back-office pages. Keep the whole administration readable. */
html,body,#wrapper,#page-content-wrapper { min-height:100%; background:var(--lup-admin-bg); }
#page-content-wrapper,.bg-body-tertiary,.bg-light,.bg-white,.list-group,.list-group-flush { background:transparent; }
#content-wrap,#content-wrap p,#content-wrap li,#content-wrap span,#content-wrap td,#content-wrap .card-body,#content-wrap .gdt-panel,#content-wrap .gdt-form-inner { color:var(--lup-admin-text); }
#content-wrap .text-muted,#content-wrap small,#content-wrap .form-text { color:var(--lup-admin-muted); }
#content-wrap .card-body { background:transparent; }
#content-wrap .gdt-panel:not(.gdt-error):not(.gdo-error):not(.gdo-success) { background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025)); }
#content-wrap .gdt-panel h1,#content-wrap .gdt-panel h2,#content-wrap .gdt-panel h3,#content-wrap .gdt-panel h4,#content-wrap .gdt-panel h5 { color:#fff; }
.navbar .navbar-toggler,.navbar .navbar-toggler-icon { filter:invert(1) grayscale(1) brightness(2); }
.gdt-form .gdt-container,.gdt-form .form-label,.gdt-form .inner-form-input { color:var(--lup-admin-text); }
.gdt-form input::placeholder,.gdt-form textarea::placeholder { color:#aaa5bd; opacity:1; }
.gdt-form select option { background:#202438; color:#f8f7ff; }
.gdt-table tbody,.gdt-table tbody td { background-color:transparent; }
.gdt-table tbody td,.gdt-table tbody th { color:#eceaf5; }
.pagination .page-link { border-color:var(--lup-admin-line); background:#202336; color:#dcd7f3; }.pagination .page-item.active .page-link { border-color:#a18cff; background:#7660d1; color:#fff; }

/* The privacy notice is part of the product, not an unrelated bright banner. */
.gdo_dsgvo_overlay { background:#05070d; opacity:.62; }
.gdo_dsgvo_info { left:50%; bottom:18px; width:min(680px,calc(100% - 28px)); padding:16px 18px; border:1px solid rgba(194,205,255,.22); border-radius:16px; background:linear-gradient(135deg,rgba(31,35,54,.98),rgba(18,21,32,.98)); box-shadow:0 18px 52px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.09); color:#eeecf7; text-align:left; transform:translateX(-50%); }
.gdo_dsgvo_info p { margin:0 0 11px; color:#d1ccdf; font-size:12px; line-height:1.45; }.gdo_dsgvo_info > div { text-align:right; }.gdo_dsgvo_info #gdo-dsgvo-accept-button { display:inline-flex; align-items:center; min-height:34px; padding:7px 13px; border:1px solid rgba(187,174,255,.40); border-radius:10px; background:linear-gradient(135deg,#7e67da,#4f86c8); color:#fff; font-size:12px; font-weight:750; text-decoration:none; box-shadow:inset 0 1px 0 rgba(255,255,255,.23); }
@media (max-width:500px) { .gdo_dsgvo_info { bottom:10px; padding:13px 14px; }.gdo_dsgvo_info > div { text-align:left; } }

/* Never fall back to Bootstrap's bright hover paint in the dark back office. */
#leftnav .list-group-item-action:hover,#leftnav .list-group-item-action:focus,
.navbar .nav-link:hover,.navbar .nav-link:focus,.navbar .gdt-link a:hover,.navbar .gdt-link a:focus,
#content-wrap .btn:hover,#content-wrap .btn:focus,#content-wrap button:hover,#content-wrap button:focus,
#content-wrap a.btn:hover,#content-wrap a.btn:focus {
  background-color:rgba(119,101,214,.18);
  background-image:linear-gradient(135deg,rgba(126,103,219,.28),rgba(65,143,204,.14));
  color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 7px 16px rgba(59,77,160,.18);
}
#content-wrap .gdt-link a:hover,#content-wrap .gdt-link a:focus,
#content-wrap .gdt-editbutton a:hover,#content-wrap .gdt-editbutton a:focus,
#content-wrap .gdt-iconbutton:hover,#content-wrap .gdt-iconbutton:focus {
  background-color:rgba(119,101,214,.18);
  background-image:linear-gradient(135deg,rgba(126,103,219,.28),rgba(65,143,204,.14));
  color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 7px 16px rgba(59,77,160,.18);
}

/* Numeric management fields need the same strong contrast as their labels. */
#content-wrap input[type=number],#content-wrap input[type=text],#content-wrap input[type=url],
#content-wrap input[type=date],#content-wrap input[type=time],#content-wrap select,
#content-wrap .form-control {
  color:#fff;
  -webkit-text-fill-color:#fff;
  font-weight:650;
}
#content-wrap input[type=number]::placeholder,#content-wrap input[type=text]::placeholder { color:#aaa6bf; -webkit-text-fill-color:#aaa6bf; }
#content-wrap input[type=number]:disabled,#content-wrap input[type=text]:disabled,#content-wrap select:disabled { color:#c8c3da; -webkit-text-fill-color:#c8c3da; opacity:1; }
#content-wrap input[type=number] { min-width:105px; letter-spacing:.015em; }

/* A persistent, task-oriented LinkUUp admin navigator. */
.lup-admin-nav { display:flex; align-items:center; gap:6px; width:min(100%,1120px); margin:0 auto 19px; padding:8px; border:1px solid rgba(180,191,255,.16); border-radius:18px; background:linear-gradient(110deg,rgba(23,27,45,.96),rgba(33,30,58,.92)); box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 13px 28px rgba(0,0,0,.16); }.lup-admin-nav a { display:inline-flex; align-items:center; gap:8px; min-height:38px; padding:9px 11px; border:1px solid transparent; border-radius:12px; color:#c9c6dc; font-size:12px; font-weight:760; text-decoration:none; transition:background .16s ease,transform .16s ease,border-color .16s ease; }.lup-admin-nav a:not(.lup-admin-nav-brand):hover { border-color:rgba(161,185,255,.31); background:linear-gradient(135deg,rgba(103,132,222,.29),rgba(138,91,210,.18)); color:#fff; transform:translateY(-1px); }.lup-admin-nav a > i { color:#aabdf8; font-size:13px; }.lup-admin-nav-brand { margin-right:auto; padding-left:5px; color:#fff; font-size:14px; letter-spacing:-.02em; }.lup-admin-nav-mark { display:grid; place-items:center; width:31px; height:31px; border:1px solid rgba(197,213,255,.43); border-radius:10px 10px 10px 4px; background:linear-gradient(135deg,#7298ed,#7455c6); box-shadow:0 5px 13px rgba(91,105,212,.28),inset 0 1px 0 rgba(255,255,255,.36); }.lup-admin-nav-mark i { color:#fff; font-size:14px; }.lup-room-statistics .gdo-jpgraph { overflow:hidden; border-radius:9px; background:#171a29; }
/* Responsive LinkUUp administration navigation – never rely on a clipped horizontal strip. */
.lup-admin-nav { flex-wrap:wrap; }
.lup-admin-nav > a:not(.lup-admin-nav-brand) { flex:0 1 auto; white-space:nowrap; }
@media (max-width:1080px) { .lup-admin-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; padding:9px; }.lup-admin-nav > a { justify-content:center; min-width:0; }.lup-admin-nav-brand { grid-column:1 / -1; justify-content:flex-start; margin:0; padding:5px 6px; border-bottom:1px solid rgba(180,198,255,.11); border-radius:0; }.lup-admin-nav > a:not(.lup-admin-nav-brand) { min-height:42px; padding:9px 8px; overflow:hidden; text-overflow:ellipsis; } }
@media (max-width:620px) { .lup-admin-nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin:0 -2px 14px; padding:8px; border-radius:16px; }.lup-admin-nav > a:not(.lup-admin-nav-brand) { justify-content:flex-start; min-height:44px; padding:9px 10px; font-size:11px; }.lup-admin-nav > a:not(.lup-admin-nav-brand) i { width:19px; text-align:center; }.lup-admin-nav-brand { grid-column:1 / -1; min-height:34px; } }

/* Sidebar hover and Bootstrap hint bubbles stay within the dark LinkUUp skin. */
#sidebar-wrapper #leftnav .list-group-item,
#sidebar-wrapper #leftnav .list-group-item-action,
#sidebar-wrapper #leftnav .list-group-item-action:hover,
#sidebar-wrapper #leftnav .list-group-item-action:focus {
  color:#e8e5f3;
  background-color:transparent;
}
#sidebar-wrapper #leftnav .list-group-item-action:hover,
#sidebar-wrapper #leftnav .list-group-item-action:focus {
  background-image:linear-gradient(90deg,rgba(126,104,221,.31),rgba(65,147,210,.13));
  box-shadow:inset 3px 0 0 #9b88ff,inset 0 1px 0 rgba(255,255,255,.08);
}
#sidebar-wrapper #leftnav .list-group-item-action:hover a,
#sidebar-wrapper #leftnav .list-group-item-action:focus a { color:#fff; background:transparent; }
.tooltip .tooltip-inner,.popover,.popover-body { border:1px solid rgba(190,203,255,.24); background:#202438; color:#f6f4ff; box-shadow:0 10px 25px rgba(0,0,0,.35); }
.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before,.bs-tooltip-end .tooltip-arrow::before { border-right-color:#202438; }
.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before,.bs-tooltip-start .tooltip-arrow::before { border-left-color:#202438; }
.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,.bs-tooltip-top .tooltip-arrow::before { border-top-color:#202438; }
.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before,.bs-tooltip-bottom .tooltip-arrow::before { border-bottom-color:#202438; }

/* The active GDO theme renders its navigation as #gdo-left-bar. */
#gdo-left-bar { padding:12px 9px 18px; border-right:1px solid rgba(207,218,255,.12); background:radial-gradient(circle at 50% 0,rgba(113,101,219,.23),transparent 25%),linear-gradient(180deg,#1c2030,#11141e 91%); box-shadow:10px 0 30px rgba(0,0,0,.17); } #gdo-left-bar .gdt-bar { display:grid; gap:6px; } #gdo-left-bar .gdt-link { position:relative; overflow:hidden; margin:0; border:1px solid rgba(207,218,255,.08); border-radius:13px; background:rgba(255,255,255,.025); box-shadow:inset 0 1px 0 rgba(255,255,255,.045); transition:transform .16s ease,border-color .16s ease,background .16s ease; } #gdo-left-bar .gdt-link::before { content:''; position:absolute; top:9px; bottom:9px; left:0; width:2px; border-radius:2px; background:transparent; transition:background .16s ease,box-shadow .16s ease; } #gdo-left-bar .gdt-link a { display:flex; align-items:center; min-height:43px; padding:10px; color:#d8d5e7; font-size:12px; font-weight:740; letter-spacing:.01em; text-decoration:none; } #gdo-left-bar .gdt-link a i { display:grid; place-items:center; width:28px; height:28px; margin-right:9px; border:1px solid rgba(195,205,255,.18); border-radius:9px 9px 9px 4px; background:linear-gradient(145deg,rgba(115,143,231,.34),rgba(109,76,180,.26)); color:#bdd5ff; font-size:13px; box-shadow:inset 0 1px 0 rgba(255,255,255,.18); } #gdo-left-bar .gdt-link:hover { transform:translateX(2px); border-color:rgba(176,165,255,.24); background:linear-gradient(90deg,rgba(114,96,213,.25),rgba(60,141,204,.10)); } #gdo-left-bar .gdt-link:hover::before { background:#a792ff; box-shadow:0 0 11px #9e8aff; } #gdo-left-bar .gdt-link:hover a { color:#fff; }

/* Bootstrap5 sidebar markup: suppress its white list-group hover completely. */
#sidebar-wrapper .list-group-item,#sidebar-wrapper .list-group-item-action { border-color:rgba(207,218,255,.08); background-color:transparent; color:#dedaf0; } #sidebar-wrapper .list-group-item-action:hover,#sidebar-wrapper .list-group-item-action:focus,#sidebar-wrapper .list-group-item:hover,#sidebar-wrapper .list-group-item:focus { border-color:rgba(171,158,255,.28); background-color:rgba(112,95,211,.24); background-image:linear-gradient(90deg,rgba(116,96,216,.30),rgba(61,145,207,.12)); color:#fff; box-shadow:inset 3px 0 0 #9b88ff,inset 0 1px 0 rgba(255,255,255,.08); } #sidebar-wrapper .list-group-item-action:hover a,#sidebar-wrapper .list-group-item:hover a { color:#fff; background:transparent; }

/* Compact language dock – present but no longer taller than the actual navigation. */
#sidebar-wrapper .gdo-lang-switch { display:flex; flex-wrap:wrap; gap:7px; max-height:126px; padding:8px; overflow:hidden; border:1px solid rgba(198,206,255,.14); border-radius:14px; background:rgba(116,99,211,.10); } #sidebar-wrapper .gdo-lang-switch a { display:grid; place-items:center; width:25px; height:21px; padding:0; border:1px solid rgba(255,255,255,.10); border-radius:6px; background:rgba(12,15,27,.26); } #sidebar-wrapper .gdo-lang-switch img { display:block; width:16px; height:auto; } #sidebar-wrapper .gdt-divider:has(+ .gdt-link) { display:none; }

/* Keep sidebar labels readable: no bright hover wash. */
#sidebar-wrapper { --bs-tertiary-bg:rgba(255,255,255,.035); --bs-list-group-action-hover-bg:rgba(255,255,255,.035); --bs-list-group-action-active-bg:rgba(255,255,255,.06); }
#sidebar-wrapper .list-group-item-action:hover,#sidebar-wrapper .list-group-item-action:focus,#sidebar-wrapper .list-group-item:hover,#sidebar-wrapper .list-group-item:focus,#sidebar-wrapper #leftnav .list-group-item:focus-within { border-color:rgba(171,158,255,.16); background-color:rgba(255,255,255,.035); background-image:none; box-shadow:none; } #sidebar-wrapper .list-group-item-action:hover a,#sidebar-wrapper .list-group-item:hover a,#sidebar-wrapper #leftnav .list-group-item:focus-within a { color:#dedaf0; }
#sidebar-wrapper #leftnav .list-group-item.list-group-item-action:not(.active):hover,
#sidebar-wrapper #leftnav .list-group-item.list-group-item-action:not(.active):focus,
#sidebar-wrapper #leftnav .list-group-item:focus-within { color:#f4f2fb; background:#1d2235; background-image:none; }
#sidebar-wrapper #leftnav .list-group-item.list-group-item-action:not(.active):hover *,
#sidebar-wrapper #leftnav .list-group-item.list-group-item-action:not(.active):focus *,
#sidebar-wrapper #leftnav .list-group-item:focus-within * { color:#f4f2fb; }
#sidebar-wrapper #leftnav a:hover,#sidebar-wrapper #leftnav a:focus,#gdo-left-bar .gdt-link a:hover,#gdo-left-bar .gdt-link a:focus { color:#f4f2fb; background:transparent; box-shadow:none; }
#gdo-left-bar .gdt-link:hover { background:linear-gradient(90deg,rgba(114,96,213,.20),rgba(60,141,204,.08)); box-shadow:inset 2px 0 0 rgba(167,146,255,.78); }

/* Language selection is a compact LinkUUp control, not a loose row of flags. */
#gdo-left-bar .gdo-lang-switch {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  margin-top:9px;
  padding:10px;
  border:1px solid rgba(186,207,255,.13);
  border-radius:13px;
  background:linear-gradient(135deg,rgba(88,117,200,.15),rgba(124,77,179,.10));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
}
#gdo-left-bar .gdo-lang-switch::before {
  content:'SPRACHE';
  flex:1 0 100%;
  color:#9faad0;
  font-size:8px;
  font-weight:850;
  letter-spacing:.14em;
}
#gdo-left-bar .gdo-lang-switch a {
  display:grid;
  place-items:center;
  width:31px;
  height:25px;
  padding:0;
  border:1px solid rgba(200,219,255,.17);
  border-radius:8px 8px 8px 4px;
  background:rgba(9,13,24,.34);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
#gdo-left-bar .gdo-lang-switch a:hover,
#gdo-left-bar .gdo-lang-switch a:focus-visible {
  transform:translateY(-2px);
  border-color:rgba(161,208,255,.56);
  background:linear-gradient(145deg,rgba(94,144,220,.34),rgba(120,78,183,.28));
  box-shadow:0 5px 13px rgba(43,58,136,.26),inset 0 1px 0 rgba(255,255,255,.15);
}
#gdo-left-bar .gdo-lang-switch img { display:block; width:18px; height:auto; filter:saturate(.9) contrast(1.06); }

/* Statistics QR access is a compact utility, not a giant empty image panel. */
.lup-stat-qrcode { display:inline-flex; align-items:center; justify-content:center; gap:5px; width:auto; height:30px; margin:auto; padding:0 10px; border:1px solid rgba(190,181,255,.27); border-radius:10px; background:rgba(132,109,226,.12); box-shadow:none; color:#d6cdff; font-size:9px; font-weight:850; letter-spacing:.09em; text-decoration:none; }.lup-stat-qrcode i { color:#b8abff; font-size:15px; filter:none; }.lup-stat-qrcode:hover { transform:none; border-color:rgba(199,190,255,.48); background:rgba(137,114,229,.22); color:#f4f1ff; }

/* New public LinkUUp welcome journey. */
.lup-welcome-new { overflow:hidden; max-width:1120px; margin:0 auto; color:#f7f5ff; }.lup-welcome-hero { position:relative; min-height:570px; padding:96px 9% 58px; overflow:hidden; border:1px solid rgba(198,208,255,.15); border-radius:28px; background:radial-gradient(circle at 74% 29%,rgba(96,178,246,.26),transparent 18%),radial-gradient(circle at 65% 54%,rgba(155,105,244,.24),transparent 31%),linear-gradient(135deg,#21244a,#121622 73%); box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 20px 42px rgba(0,0,0,.23); }.lup-welcome-hero::after { content:''; position:absolute; right:-15%; bottom:-23%; width:62%; height:65%; border:1px solid rgba(185,199,255,.16); border-radius:48% 52% 42% 58%; box-shadow:0 0 0 44px rgba(173,141,255,.04),0 0 0 88px rgba(111,177,246,.035); transform:rotate(-20deg); }.lup-welcome-eyebrow,.lup-welcome-story header > p,.lup-welcome-trust p,.lup-welcome-legal p { position:relative; z-index:1; margin:0 0 13px; color:#c3b5ff; font-size:10px; font-weight:900; letter-spacing:.17em; }.lup-welcome-hero h1 { position:relative; z-index:1; max-width:690px; margin:0; font-size:clamp(34px,5vw,62px); letter-spacing:-.055em; line-height:1.02; }.lup-welcome-hero h1 em { color:#9ed5ff; font-style:normal; }.lup-welcome-lead { position:relative; z-index:1; max-width:520px; margin:23px 0 28px; color:#d2d0e4; font-size:16px; line-height:1.6; }.lup-welcome-actions { position:relative; z-index:1; display:flex; align-items:center; gap:17px; flex-wrap:wrap; }.lup-welcome-start,.lup-welcome-plain { display:inline-flex; align-items:center; gap:8px; min-height:46px; padding:0 17px; border-radius:14px; font-weight:800; text-decoration:none; }.lup-welcome-start { border:1px solid rgba(220,232,255,.39); background:linear-gradient(135deg,#8b73ed,#58a6df); box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 13px 21px rgba(25,57,121,.26); color:#fff; }.lup-welcome-plain { color:#e4e0f3; }.lup-welcome-route { position:absolute; z-index:1; right:10%; bottom:63px; display:flex; align-items:center; gap:9px; color:#b5a9f6; }.lup-welcome-route span { display:block; width:43px; height:1px; background:linear-gradient(90deg,transparent,#a997ff); }.lup-welcome-orbit { position:absolute; border:1px solid rgba(178,206,255,.15); border-radius:50%; }.lup-welcome-orbit-one { top:55px; right:84px; width:240px; height:240px; }.lup-welcome-orbit-two { top:94px; right:123px; width:162px; height:162px; }.lup-welcome-pin { position:absolute; z-index:2; right:162px; top:136px; display:grid; place-items:center; width:68px; height:68px; border:1px solid rgba(233,242,255,.45); border-radius:50% 50% 50% 12px; background:linear-gradient(145deg,#76c8ef,#536cc8); box-shadow:0 12px 0 rgba(46,55,137,.45),0 22px 28px rgba(0,0,0,.28),0 0 34px rgba(115,200,244,.31),inset 0 2px 1px rgba(255,255,255,.45); color:#fff; font-size:31px; transform:rotate(-45deg); }.lup-welcome-pin i { transform:rotate(45deg); }.lup-welcome-pin span { position:absolute; inset:-14px; border:1px solid rgba(174,219,255,.23); border-radius:50%; }.lup-welcome-story { padding:90px 7% 76px; }.lup-welcome-story h2,.lup-welcome-trust h2,.lup-welcome-legal h2 { margin:0; font-size:clamp(28px,4vw,46px); letter-spacing:-.045em; line-height:1.05; }.lup-welcome-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:36px; }.lup-welcome-steps article { position:relative; min-height:205px; padding:20px; border:1px solid rgba(209,217,255,.12); border-radius:20px; background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.015)); }.lup-welcome-steps b { position:absolute; top:18px; right:19px; color:#9185c8; font-size:11px; }.lup-welcome-steps i { display:grid; place-items:center; width:43px; height:43px; border-radius:14px 14px 14px 5px; background:linear-gradient(145deg,#957cf0,#5688cf); box-shadow:inset 0 1px 0 rgba(255,255,255,.32); color:#fff; }.lup-welcome-steps h3 { margin:22px 0 8px; font-size:17px; }.lup-welcome-steps p,.lup-welcome-trust-copy > p:last-child { color:#beb9ce; font-size:13px; line-height:1.55; }.lup-welcome-trust { display:grid; grid-template-columns:1.2fr .8fr; align-items:center; gap:38px; margin:0 4% 80px; padding:43px; border:1px solid rgba(186,203,255,.15); border-radius:26px; background:radial-gradient(circle at 88% 22%,rgba(104,195,234,.23),transparent 31%),linear-gradient(145deg,rgba(86,69,167,.36),rgba(19,25,42,.58)); }.lup-welcome-trust-card { display:grid; justify-items:center; gap:10px; padding:28px; border:1px solid rgba(221,231,255,.20); border-radius:21px; background:rgba(10,15,29,.23); text-align:center; }.lup-welcome-trust-card i { font-size:45px; color:#a9daff; text-shadow:0 0 20px rgba(112,192,255,.44); }.lup-welcome-trust-card strong { font-size:17px; }.lup-welcome-trust-card span { color:#c5c2d3; font-size:12px; }.lup-welcome-legal { display:grid; grid-template-columns:.82fr 1.18fr; gap:35px; margin:0 4% 54px; padding:38px; border-top:1px solid rgba(196,202,255,.18); }.lup-welcome-legal > div > span { display:block; margin-top:14px; color:#bdb8cc; font-size:13px; line-height:1.5; }.lup-welcome-legal nav { display:grid; gap:8px; }.lup-welcome-legal nav a { display:flex; align-items:center; gap:12px; min-height:58px; padding:11px 13px; border:1px solid rgba(205,213,255,.13); border-radius:15px; background:rgba(255,255,255,.035); color:#eeeaf8; text-decoration:none; }.lup-welcome-legal nav a > i:first-child { display:grid; place-items:center; width:31px; height:31px; border-radius:10px; background:rgba(149,126,237,.19); color:#cabcff; }.lup-welcome-legal nav span { display:grid; gap:3px; }.lup-welcome-legal nav small { color:#a9a4ba; }.lup-welcome-legal nav > a > i:last-child { margin-left:auto; color:#a99de5; }
@media (max-width:760px) { .lup-welcome-hero { min-height:620px; padding:74px 28px 40px; }.lup-welcome-pin { right:48px; top:38px; transform:scale(.75) rotate(-45deg); }.lup-welcome-orbit { right:-24px; top:-28px; }.lup-welcome-route { right:28px; bottom:35px; }.lup-welcome-steps,.lup-welcome-trust,.lup-welcome-legal { grid-template-columns:1fr; }.lup-welcome-steps { gap:10px; }.lup-welcome-trust,.lup-welcome-legal { margin-right:0; margin-left:0; padding:27px; }.lup-welcome-story { padding-right:22px; padding-left:22px; } }

/* The welcome page feels alive without turning into a noisy advertising page. */
.lup-welcome-hero::before { content:''; position:absolute; inset:0; pointer-events:none; opacity:.42; background-image:radial-gradient(rgba(204,221,255,.42) .65px,transparent .75px); background-size:22px 22px; mask-image:linear-gradient(90deg,transparent 38%,#000); animation:lup-welcome-drift 18s linear infinite; }
.lup-welcome-orbit-one { animation:lup-welcome-orbit 15s linear infinite; }.lup-welcome-orbit-two { animation:lup-welcome-orbit 10s linear infinite reverse; }
.lup-welcome-pin { animation:lup-welcome-float 3.8s ease-in-out infinite; }.lup-welcome-pin span { animation:lup-welcome-ping 2.7s ease-out infinite; }
.lup-welcome-route { animation:lup-welcome-route-bob 3.8s ease-in-out infinite; }.lup-welcome-route span { background:linear-gradient(90deg,transparent 0 24%,#a997ff 25% 54%,transparent 55% 72%,#a997ff 73%); background-size:22px 1px; animation:lup-welcome-dash 1.6s linear infinite; }
.lup-welcome-start { transition:transform .22s ease,box-shadow .22s ease,filter .22s ease; }.lup-welcome-start:hover { color:#fff; filter:brightness(1.08); transform:translateY(-3px); box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 17px 28px rgba(47,102,183,.38); }.lup-welcome-plain { transition:color .2s ease,transform .2s ease; }.lup-welcome-plain:hover { color:#b5ddff; transform:translateX(4px); }
.lup-welcome-steps article,.lup-welcome-trust,.lup-welcome-legal { transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease; }.lup-welcome-steps article:hover { transform:translateY(-7px); border-color:rgba(178,207,255,.31); box-shadow:0 15px 27px rgba(0,0,0,.20); }.lup-welcome-steps article:hover i { animation:lup-welcome-icon-pop .52s cubic-bezier(.2,.9,.25,1); }
@supports (animation-timeline:view()) { .lup-welcome-story header,.lup-welcome-steps article,.lup-welcome-trust,.lup-welcome-legal { animation:lup-welcome-reveal linear both; animation-timeline:view(); animation-range:entry 8% cover 34%; }.lup-welcome-steps article:nth-child(2) { animation-range:entry 11% cover 37%; }.lup-welcome-steps article:nth-child(3) { animation-range:entry 14% cover 40%; } }
.lup-welcome-trust:hover,.lup-welcome-legal:hover { transform:translateY(-4px); border-color:rgba(174,199,255,.28); box-shadow:0 18px 34px rgba(0,0,0,.18); }.lup-welcome-legal nav a { transition:transform .2s ease,background .2s ease,border-color .2s ease; }.lup-welcome-legal nav a:hover { transform:translateX(6px); border-color:rgba(180,200,255,.30); background:linear-gradient(100deg,rgba(120,100,218,.25),rgba(74,150,208,.12)); }
@keyframes lup-welcome-float { 0%,100% { transform:translateY(0) rotate(-45deg); } 50% { transform:translateY(-12px) rotate(-45deg); } } @keyframes lup-welcome-ping { 0% { transform:scale(.72); opacity:.74; } 72%,100% { transform:scale(1.5); opacity:0; } } @keyframes lup-welcome-orbit { to { transform:rotate(360deg); } } @keyframes lup-welcome-drift { to { background-position:44px 22px; } } @keyframes lup-welcome-route-bob { 50% { transform:translateX(8px); } } @keyframes lup-welcome-dash { to { background-position:22px 0; } } @keyframes lup-welcome-icon-pop { 50% { transform:scale(1.16) rotate(-7deg); } } @keyframes lup-welcome-reveal { from { opacity:.12; transform:translateY(46px) scale(.975); } 55%,to { opacity:1; transform:translateY(0) scale(1); } }
@media (prefers-reduced-motion:reduce) { .lup-welcome-new *, .lup-welcome-new *::before, .lup-welcome-new *::after { scroll-behavior:auto; animation:none; transition:none; } }

/* Welcome: a compact place signal makes the promise tangible without inventing
 * live metrics. It is a visual anchor, while the headline and actions retain
 * the reading priority. */
.lup-welcome-hero { isolation:isolate; background:radial-gradient(circle at 75% 33%,rgba(98,191,246,.22),transparent 17%),radial-gradient(circle at 64% 56%,rgba(155,105,244,.23),transparent 31%),linear-gradient(135deg,#242852,#11151f 73%); }
.lup-welcome-hero > :not(.lup-welcome-console) { z-index:2; }
.lup-welcome-console { position:absolute; z-index:3; top:84px; right:8%; width:min(31vw,312px); overflow:hidden; border:1px solid rgba(196,217,255,.22); border-radius:22px; background:linear-gradient(145deg,rgba(28,35,61,.88),rgba(12,16,30,.84)); box-shadow:0 22px 50px rgba(0,0,0,.27),inset 0 1px 0 rgba(255,255,255,.14); backdrop-filter:blur(12px); }
.lup-welcome-console::before { content:''; position:absolute; inset:0; opacity:.23; background-image:linear-gradient(rgba(179,200,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(179,200,255,.14) 1px,transparent 1px); background-size:24px 24px; mask-image:linear-gradient(#000,transparent 85%); pointer-events:none; }
.lup-welcome-console-head,.lup-welcome-console-foot { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; padding:12px 14px; color:#c6c3dc; font-size:9px; font-weight:850; letter-spacing:.10em; }
.lup-welcome-console-head { border-bottom:1px solid rgba(196,217,255,.11); }.lup-welcome-console-head span { color:#d9e8ff; }.lup-welcome-console-head b { color:#9ee6ca; font-size:8px; }.lup-welcome-console-head b i { display:inline-block; width:6px; height:6px; margin-right:4px; border-radius:50%; background:#6edbaa; box-shadow:0 0 10px #6edbaa; }
.lup-welcome-console-map { position:relative; height:172px; overflow:hidden; }.lup-welcome-console-map::before,.lup-welcome-console-map::after { content:''; position:absolute; left:7%; width:87%; height:1px; background:linear-gradient(90deg,transparent,rgba(151,189,255,.32),transparent); transform:rotate(-17deg); }.lup-welcome-console-map::before { top:51%; }.lup-welcome-console-map::after { top:39%; transform:rotate(28deg); }
.lup-welcome-map-ring { position:absolute; top:50%; left:50%; border:1px solid rgba(142,204,255,.20); border-radius:50%; transform:translate(-50%,-50%); }.lup-welcome-map-ring.ring-a { width:102px; height:102px; }.lup-welcome-map-ring.ring-b { width:166px; height:166px; border-color:rgba(169,131,255,.14); }
.lup-welcome-map-center,.lup-welcome-map-node { position:absolute; z-index:1; display:grid; place-items:center; border-radius:50%; }.lup-welcome-map-center { top:50%; left:50%; width:39px; height:39px; transform:translate(-50%,-50%); background:linear-gradient(145deg,#8d72ed,#55a4db); box-shadow:0 0 0 7px rgba(139,115,237,.12),0 0 24px rgba(89,184,238,.46),inset 0 1px 0 rgba(255,255,255,.45); color:#fff; }.lup-welcome-map-node { width:9px; height:9px; background:#bceaff; box-shadow:0 0 12px rgba(117,199,255,.88); }.lup-welcome-map-node.node-a { top:31px; left:43px; }.lup-welcome-map-node.node-b { right:45px; bottom:36px; background:#e5c4ff; box-shadow:0 0 12px rgba(198,132,255,.78); }.lup-welcome-map-node.node-c { right:72px; top:44px; width:6px; height:6px; }
.lup-welcome-console-foot { gap:8px; justify-content:flex-start; border-top:1px solid rgba(196,217,255,.11); color:#b6b4cb; font-size:8px; }.lup-welcome-console-foot span + span { margin-left:auto; }.lup-welcome-console-foot i { color:#9fcaff; margin-right:4px; }
@media (max-width:760px) { .lup-welcome-console { top:inherit; right:22px; bottom:104px; width:190px; transform:scale(.8); transform-origin:right bottom; }.lup-welcome-console-map { height:128px; }.lup-welcome-map-ring.ring-a { width:75px; height:75px; }.lup-welcome-map-ring.ring-b { width:121px; height:121px; }.lup-welcome-hero h1,.lup-welcome-lead,.lup-welcome-actions { max-width:100%; } }

/* Complete welcome-page redesign: one calm journey instead of isolated cards. */
.lup-arrival { max-width:1180px; margin:0 auto; overflow:hidden; color:#f4f3fb; background:#121520; }.lup-arrival-hero { position:relative; min-height:660px; padding:40px clamp(26px,7vw,86px) 68px; overflow:hidden; isolation:isolate; background:radial-gradient(ellipse at 74% 28%,rgba(65,146,221,.26),transparent 24%),radial-gradient(ellipse at 63% 78%,rgba(121,84,215,.20),transparent 33%),linear-gradient(145deg,#202643 0%,#121521 63%,#0c1019 100%); }.lup-arrival-grid { position:absolute; z-index:-1; right:-6%; bottom:-15%; width:74%; height:73%; transform:perspective(500px) rotateX(59deg) rotateZ(-14deg); transform-origin:bottom; opacity:.46; background-image:linear-gradient(rgba(159,188,255,.17) 1px,transparent 1px),linear-gradient(90deg,rgba(159,188,255,.17) 1px,transparent 1px); background-size:42px 42px; mask-image:linear-gradient(transparent 3%,#000 58%,transparent); }.lup-arrival-horizon { position:absolute; z-index:-1; top:43%; right:-5%; width:71%; height:1px; background:linear-gradient(90deg,transparent,rgba(152,195,255,.66),transparent); box-shadow:0 0 19px rgba(101,174,255,.25); }.lup-arrival-brand { position:relative; z-index:1; display:flex; align-items:center; gap:10px; color:#fff; letter-spacing:.12em; }.lup-arrival-brand b { font-size:14px; }.lup-arrival-brand small { padding-left:10px; border-left:1px solid rgba(255,255,255,.24); color:#aaaac1; font-size:8px; font-weight:800; }.lup-arrival-mark { display:grid; place-items:center; width:34px; height:34px; border:1px solid rgba(197,219,255,.38); border-radius:11px 11px 11px 4px; background:linear-gradient(145deg,rgba(135,114,241,.72),rgba(67,151,212,.68)); box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 9px 18px rgba(0,0,0,.20); color:#fff; }.lup-arrival-copy { position:relative; z-index:1; max-width:650px; margin-top:120px; }.lup-arrival-kicker,.lup-arrival-journey header > p,.lup-arrival-principles-copy > p { margin:0 0 18px; color:#aebdfa; font-size:10px; font-weight:900; letter-spacing:.15em; }.lup-arrival-kicker i { margin-right:7px; color:#9bd9ff; }.lup-arrival-copy h1 { margin:0; color:#fff; font-size:clamp(45px,6vw,78px); letter-spacing:-.065em; line-height:.94; }.lup-arrival-copy h1 em { color:#a7d9ff; font-style:normal; }.lup-arrival-copy > p:not(.lup-arrival-kicker) { max-width:510px; margin:28px 0 31px; color:#c4c6d5; font-size:16px; line-height:1.65; }.lup-arrival-actions { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }.lup-arrival-actions a { display:inline-flex; align-items:center; gap:8px; min-height:47px; color:#d9d8e8; font-size:13px; font-weight:800; text-decoration:none; }.lup-arrival-actions a:first-child { padding:0 19px; border:1px solid rgba(212,229,255,.43); border-radius:14px; background:linear-gradient(135deg,#826be2,#4e9bd0); box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 15px 24px rgba(37,75,146,.27); color:#fff; }.lup-arrival-location { position:absolute; z-index:1; right:13%; bottom:115px; display:grid; justify-items:center; gap:8px; color:#d9efff; text-align:center; }.lup-arrival-location > i { display:grid; place-items:center; width:52px; height:52px; border:1px solid rgba(209,232,255,.48); border-radius:50% 50% 50% 8px; background:linear-gradient(145deg,#7ec9ee,#5c6fc8); box-shadow:0 10px 0 rgba(44,56,133,.44),0 21px 28px rgba(0,0,0,.25),0 0 27px rgba(116,204,255,.33); font-size:22px; transform:rotate(-45deg); }.lup-arrival-location > i::before { transform:rotate(45deg); }.lup-arrival-location b,.lup-arrival-location small { position:relative; font-size:9px; letter-spacing:.10em; }.lup-arrival-location small { color:#a8afc5; font-size:8px; letter-spacing:.04em; }.lup-arrival-pulse { position:absolute; top:-22px; width:94px; height:94px; border:1px solid rgba(152,207,255,.26); border-radius:50%; animation:lup-arrival-pulse 3.2s ease-out infinite; }.lup-arrival-journey { padding:104px clamp(26px,8vw,96px) 92px; background:linear-gradient(180deg,#121520,#161a29); }.lup-arrival-journey header { max-width:540px; }.lup-arrival-journey h2,.lup-arrival-principles h2 { margin:0; color:#f6f5fb; font-size:clamp(31px,4vw,50px); letter-spacing:-.052em; line-height:1.03; }.lup-arrival-journey header > span { display:block; max-width:430px; margin-top:17px; color:#aaaabe; font-size:14px; line-height:1.55; }.lup-arrival-journey ol { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin:53px 0 0; padding:0; list-style:none; border-top:1px solid rgba(189,204,255,.15); }.lup-arrival-journey li { position:relative; min-height:222px; padding:28px 24px 14px 0; border-right:1px solid rgba(189,204,255,.13); }.lup-arrival-journey li + li { padding-left:25px; }.lup-arrival-journey li:last-child { border-right:0; }.lup-arrival-journey li > span { position:absolute; top:-12px; color:#9fa7c5; font-size:10px; font-weight:900; letter-spacing:.12em; }.lup-arrival-journey li > i { display:grid; place-items:center; width:43px; height:43px; border:1px solid rgba(183,208,255,.22); border-radius:13px 13px 13px 5px; background:rgba(125,108,224,.16); color:#b1dfff; }.lup-arrival-journey h3 { margin:22px 0 9px; color:#f1eff8; font-size:19px; }.lup-arrival-journey li p { max-width:240px; margin:0; color:#abaabd; font-size:13px; line-height:1.55; }.lup-arrival-principles { display:grid; grid-template-columns:1fr 1fr; gap:12%; align-items:center; padding:78px clamp(26px,8vw,96px); background:radial-gradient(circle at 80% 39%,rgba(88,155,218,.15),transparent 26%),#10131e; }.lup-arrival-principles-copy > span { display:block; max-width:440px; margin-top:18px; color:#b6b5c5; font-size:14px; line-height:1.65; }.lup-arrival-principles-list { display:grid; gap:1px; overflow:hidden; border:1px solid rgba(197,210,255,.12); border-radius:18px; background:rgba(255,255,255,.08); }.lup-arrival-principles-list > div { display:flex; align-items:center; gap:15px; min-height:76px; padding:13px 16px; background:rgba(24,28,43,.91); }.lup-arrival-principles-list i { display:grid; place-items:center; width:34px; height:34px; border-radius:11px; background:linear-gradient(145deg,rgba(128,109,230,.75),rgba(67,139,202,.64)); color:#fff; }.lup-arrival-principles-list span { display:grid; gap:3px; }.lup-arrival-principles-list b { color:#f2f1f8; font-size:13px; }.lup-arrival-principles-list small { color:#aaa9ba; font-size:11px; }.lup-arrival-footer { display:flex; align-items:center; justify-content:space-between; gap:25px; padding:29px clamp(26px,8vw,96px); border-top:1px solid rgba(190,204,255,.10); background:#0d1018; }.lup-arrival-footer > div { display:flex; align-items:center; gap:10px; }.lup-arrival-footer p { margin:0; color:#f0eff6; font-size:12px; }.lup-arrival-footer small { color:#9797aa; font-size:10px; }.lup-arrival-footer nav { display:flex; gap:18px; flex-wrap:wrap; }.lup-arrival-footer a { color:#bcbaca; font-size:11px; font-weight:700; text-decoration:none; }.lup-arrival-footer a i { margin-left:4px; color:#9ecfff; font-size:9px; transform:rotate(45deg); }
@keyframes lup-arrival-pulse { 0% { transform:scale(.68); opacity:.75; } 72%,100% { transform:scale(1.48); opacity:0; } }
@media (max-width:760px) { .lup-arrival-hero { min-height:650px; padding:28px 26px 44px; }.lup-arrival-brand small { display:none; }.lup-arrival-copy { margin-top:92px; }.lup-arrival-copy h1 { font-size:49px; }.lup-arrival-location { right:36px; bottom:70px; transform:scale(.78); transform-origin:right bottom; }.lup-arrival-journey { padding-top:70px; padding-bottom:62px; }.lup-arrival-journey ol { grid-template-columns:1fr; margin-top:38px; border-top:0; }.lup-arrival-journey li,.lup-arrival-journey li + li { min-height:0; padding:24px 0 24px 58px; border-right:0; border-bottom:1px solid rgba(189,204,255,.13); }.lup-arrival-journey li > span { top:28px; left:0; }.lup-arrival-journey li > i { position:absolute; top:49px; left:0; width:38px; height:38px; }.lup-arrival-journey h3 { margin-top:0; }.lup-arrival-principles { grid-template-columns:1fr; gap:33px; padding-top:62px; padding-bottom:62px; }.lup-arrival-footer { align-items:flex-start; flex-direction:column; }.lup-arrival-footer nav { gap:13px; } }
@media (prefers-reduced-motion:reduce) { .lup-arrival * { animation:none; transition:none; } }

/* The three ideas read as one route, not as separate dashboard tiles. */
.lup-arrival-journey ol { position:relative; border-top:0; }.lup-arrival-journey ol::before { content:''; position:absolute; top:0; right:0; left:0; height:1px; background:linear-gradient(90deg,rgba(142,191,255,.08),rgba(151,181,255,.62) 28%,rgba(185,136,249,.58) 68%,rgba(142,191,255,.08)); box-shadow:0 0 13px rgba(126,160,248,.16); }.lup-arrival-journey li { padding-top:41px; }.lup-arrival-journey li > span { top:-5px; display:grid; place-items:center; width:28px; height:12px; border-radius:999px; background:#171b2a; color:#b9d4ff; }.lup-arrival-journey li > span::after { content:''; position:absolute; top:-5px; width:9px; height:9px; border:2px solid #a4cfff; border-radius:50%; background:#1a1d30; box-shadow:0 0 0 4px rgba(117,150,238,.12),0 0 15px rgba(130,182,255,.42); }.lup-arrival-journey li:nth-child(2) > span::after { border-color:#c4abff; box-shadow:0 0 0 4px rgba(147,108,244,.12),0 0 15px rgba(171,132,255,.40); }.lup-arrival-journey li:nth-child(3) > span::after { border-color:#a8dce8; box-shadow:0 0 0 4px rgba(91,190,221,.11),0 0 15px rgba(125,218,245,.36); }.lup-arrival-journey li:hover > span::after { animation:lup-arrival-route-node .72s ease-out; }
@keyframes lup-arrival-route-node { 50% { transform:scale(1.42); box-shadow:0 0 0 10px rgba(154,184,255,.08),0 0 20px rgba(153,205,255,.72); } }
@media (max-width:760px) { .lup-arrival-journey ol::before { top:28px; bottom:28px; left:13px; width:1px; height:auto; background:linear-gradient(rgba(151,181,255,.62),rgba(185,136,249,.44),rgba(142,191,255,.08)); }.lup-arrival-journey li > span { top:28px; left:0; } }

/* Keep the animated place marker clear of the primary action at every width. */
.lup-arrival-location { right:clamp(34px,9vw,118px); bottom:88px; }
@media (max-width:760px) { .lup-arrival-location { right:30px; bottom:48px; } }

/* On phone screens the next-place marker belongs below the primary action.
 * Keeping it in normal flow prevents the two important controls colliding. */
@media (max-width:760px) {
  .lup-arrival-hero { min-height:0; padding-bottom:38px; }
  .lup-arrival-location { position:relative; right:auto; bottom:auto; display:grid; grid-template-columns:56px minmax(0,1fr); column-gap:13px; justify-items:start; align-items:center; margin:34px 0 0; padding:13px 15px; border:1px solid rgba(184,214,255,.16); border-radius:17px; background:linear-gradient(110deg,rgba(87,125,207,.13),rgba(123,83,184,.08)); box-shadow:inset 0 1px 0 rgba(255,255,255,.07); text-align:left; transform:none; transform-origin:center; animation:none; }
  .lup-arrival-location > i { grid-row:1 / span 2; width:50px; height:50px; border-color:rgba(210,234,255,.48); border-radius:50% 50% 50% 8px; background:linear-gradient(145deg,#7ec9ee,#5c6fc8); box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 12px 20px rgba(20,28,74,.28),0 0 24px rgba(105,194,255,.34); color:#f7fbff; font-size:20px; text-shadow:0 2px 5px rgba(30,45,112,.30); transform:rotate(-45deg); }
  .lup-arrival-location b { align-self:end; font-size:8px; }
  .lup-arrival-location small { align-self:start; font-size:8px; }
  .lup-arrival-location .lup-arrival-pulse { top:50%; left:20px; width:58px; height:58px; transform:translate(-50%,-50%); animation:lup-arrival-pulse-mobile 3.2s ease-out infinite; }
}
@keyframes lup-arrival-pulse-mobile { 0% { opacity:.65; transform:translate(-50%,-50%) scale(.72); } 75%,100% { opacity:0; transform:translate(-50%,-50%) scale(1.42); } }

/* Welcome hero: a living local map, built from lightweight interface layers. */
.lup-arrival-constellation { position:absolute; z-index:-1; top:94px; right:4%; width:min(48vw,565px); height:430px; pointer-events:none; }.lup-arrival-orbit { position:absolute; top:50%; left:50%; border:1px solid rgba(166,207,255,.17); border-radius:50%; transform:translate(-50%,-50%) rotate(-17deg); }.lup-arrival-orbit.orbit-one { width:320px; height:320px; box-shadow:0 0 0 39px rgba(116,120,232,.025),0 0 64px rgba(92,170,244,.08); animation:lup-arrival-orbit-turn 25s linear infinite; }.lup-arrival-orbit.orbit-two { width:470px; height:228px; border-color:rgba(177,137,255,.15); animation:lup-arrival-orbit-turn 34s linear infinite reverse; }.lup-arrival-constellation-core,.lup-arrival-constellation-node { position:absolute; z-index:2; display:grid; place-items:center; border:1px solid rgba(216,235,255,.42); color:#f7fcff; }.lup-arrival-constellation-core { top:48%; left:52%; width:68px; height:68px; border-radius:50% 50% 50% 10px; background:linear-gradient(145deg,#7ccbef,#665fcd); box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 13px 0 rgba(46,47,128,.34),0 0 31px rgba(103,197,255,.38); font-size:27px; transform:translate(-50%,-50%) rotate(-45deg); animation:lup-arrival-core-float 5.8s ease-in-out infinite; }.lup-arrival-constellation-core i { transform:rotate(45deg); }.lup-arrival-constellation-node { width:35px; height:35px; border-radius:12px 12px 12px 4px; background:linear-gradient(145deg,rgba(135,111,226,.88),rgba(65,139,202,.78)); box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 8px 17px rgba(28,38,104,.25); font-size:13px; }.lup-arrival-constellation-node.node-one { top:23%; left:20%; animation:lup-arrival-node-one 6.8s ease-in-out infinite; }.lup-arrival-constellation-node.node-two { right:15%; bottom:23%; background:linear-gradient(145deg,rgba(205,112,220,.90),rgba(90,100,210,.78)); animation:lup-arrival-node-two 7.5s ease-in-out infinite; }.lup-arrival-constellation-node.node-three { top:19%; right:18%; width:28px; height:28px; border-radius:50%; background:linear-gradient(145deg,rgba(105,209,188,.86),rgba(73,126,201,.78)); font-size:11px; animation:lup-arrival-node-three 6.2s ease-in-out infinite; }.lup-arrival-route { position:absolute; z-index:1; height:1px; transform-origin:left center; background:linear-gradient(90deg,rgba(164,216,255,.64),rgba(158,115,246,.05)); box-shadow:0 0 13px rgba(121,180,255,.25); }.lup-arrival-route.route-one { top:33%; left:24%; width:180px; transform:rotate(25deg); }.lup-arrival-route.route-two { top:57%; left:54%; width:156px; transform:rotate(36deg); }.lup-arrival-float-card { position:absolute; z-index:3; display:grid; gap:4px; padding:11px 13px; border:1px solid rgba(202,221,255,.17); border-radius:13px; background:linear-gradient(145deg,rgba(30,39,70,.80),rgba(13,17,30,.75)); box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 13px 28px rgba(0,0,0,.18); backdrop-filter:blur(8px); }.lup-arrival-float-card b { color:#d9ebff; font-size:8px; letter-spacing:.12em; }.lup-arrival-float-card small { color:#aab1c8; font-size:9px; }.lup-arrival-float-card.card-one { top:65px; right:5%; animation:lup-arrival-card-drift 8s ease-in-out infinite; }.lup-arrival-float-card.card-two { bottom:58px; left:14%; display:flex; align-items:center; gap:7px; color:#bcebd3; font-size:8px; font-weight:850; letter-spacing:.08em; animation:lup-arrival-card-drift 9s ease-in-out infinite reverse; }.lup-arrival-float-card.card-two i { width:6px; height:6px; border-radius:50%; background:#76e1a8; box-shadow:0 0 11px #70e2a5; }
@keyframes lup-arrival-orbit-turn { to { transform:translate(-50%,-50%) rotate(343deg); } } @keyframes lup-arrival-core-float { 0%,100% { transform:translate(-50%,-50%) rotate(-45deg); } 50% { transform:translate(-50%,-57%) rotate(-45deg); } } @keyframes lup-arrival-node-one { 0%,100% { transform:translate(0,0); } 50% { transform:translate(8px,9px); } } @keyframes lup-arrival-node-two { 0%,100% { transform:translate(0,0); } 50% { transform:translate(-10px,-7px); } } @keyframes lup-arrival-node-three { 0%,100% { transform:translate(0,0) scale(1); } 50% { transform:translate(-4px,8px) scale(1.08); } } @keyframes lup-arrival-card-drift { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-8px); } }
@media (max-width:760px) { .lup-arrival-constellation { top:235px; right:-110px; width:360px; height:300px; opacity:.72; transform:scale(.78); transform-origin:top right; }.lup-arrival-float-card,.lup-arrival-float-card.card-one,.lup-arrival-float-card.card-two { display:none; } .lup-arrival-orbit.orbit-two { width:380px; height:180px; } }
@media (prefers-reduced-motion:reduce) { .lup-arrival-constellation * { animation:none; } }

/* The idea link opens a short route transition; the three steps become destinations. */
.lup-arrival-journey { scroll-margin-top:22px; position:relative; overflow:hidden; }.lup-arrival-journey::after { content:''; position:absolute; top:-105px; right:-90px; width:330px; height:330px; border:1px solid rgba(151,193,255,.10); border-radius:50%; box-shadow:0 0 0 34px rgba(117,100,223,.025),0 0 0 76px rgba(91,165,235,.018); pointer-events:none; }.lup-arrival-journey ol { position:relative; z-index:1; gap:13px; border:0; }.lup-arrival-journey ol::before { top:23px; right:7%; left:7%; height:2px; border-radius:999px; background:linear-gradient(90deg,rgba(126,190,255,.16),rgba(139,201,255,.74) 36%,rgba(183,132,255,.72) 69%,rgba(126,190,255,.13)); box-shadow:0 0 16px rgba(126,167,247,.27); }.lup-arrival-journey li { min-height:255px; padding:48px 22px 21px; overflow:hidden; border:1px solid rgba(187,207,255,.14); border-radius:20px; background:radial-gradient(circle at 88% 7%,rgba(89,145,225,.17),transparent 38%),linear-gradient(145deg,rgba(34,43,67,.90),rgba(20,24,39,.92)); box-shadow:inset 0 1px 0 rgba(255,255,255,.075),0 15px 28px rgba(0,0,0,.14); transition:transform .32s cubic-bezier(.2,.8,.2,1),border-color .32s ease,box-shadow .32s ease,background .32s ease; }.lup-arrival-journey li + li { padding-left:22px; }.lup-arrival-journey li::after { content:''; position:absolute; right:-31px; bottom:-41px; width:112px; height:112px; border:1px solid rgba(169,198,255,.12); border-radius:50%; box-shadow:0 0 0 17px rgba(125,107,221,.025); }.lup-arrival-journey li:hover { transform:translateY(-8px); border-color:rgba(169,204,255,.37); background:radial-gradient(circle at 87% 5%,rgba(103,171,242,.27),transparent 38%),linear-gradient(145deg,#263657,#171d30); box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 23px 35px rgba(0,0,0,.23); }.lup-arrival-journey li > span { z-index:3; top:15px; left:18px; width:31px; height:20px; padding-left:1px; border:1px solid rgba(180,211,255,.19); background:rgba(19,26,43,.86); color:#c7e3ff; }.lup-arrival-journey li > span::after { top:20px; width:11px; height:11px; border-width:2px; }.lup-arrival-journey li > i { position:relative; z-index:2; width:48px; height:48px; border-color:rgba(190,216,255,.29); background:linear-gradient(145deg,rgba(123,112,227,.82),rgba(64,147,207,.72)); box-shadow:inset 0 1px 0 rgba(255,255,255,.31),0 10px 19px rgba(34,42,113,.26); color:#f6fbff; font-size:18px; }.lup-arrival-journey li:nth-child(2) > i { background:linear-gradient(145deg,rgba(187,111,224,.84),rgba(90,116,204,.70)); }.lup-arrival-journey li:nth-child(3) > i { background:linear-gradient(145deg,rgba(91,188,185,.81),rgba(77,124,209,.72)); }.lup-arrival-journey h3 { position:relative; z-index:2; margin:23px 0 8px; font-size:21px; }.lup-arrival-journey li p { position:relative; z-index:2; max-width:none; color:#b9c1d3; font-size:13px; line-height:1.6; }
.lup-arrival-journey.lup-journey-enter::before { content:''; position:absolute; z-index:4; top:0; left:-16%; width:14%; height:2px; border-radius:999px; background:#c3e9ff; box-shadow:0 0 12px #91d5ff,0 0 28px rgba(132,181,255,.80); animation:lup-journey-sweep .72s cubic-bezier(.2,.75,.2,1) both; }.lup-arrival-journey.lup-journey-enter li { animation:lup-journey-card-in .62s cubic-bezier(.2,.8,.2,1) both; }.lup-arrival-journey.lup-journey-enter li:nth-child(2) { animation-delay:.15s; }.lup-arrival-journey.lup-journey-enter li:nth-child(3) { animation-delay:.30s; }@keyframes lup-journey-sweep { to { left:102%; } }@keyframes lup-journey-card-in { from { opacity:.18; transform:translateY(34px) scale(.96); } to { opacity:1; transform:none; } }
@media (max-width:760px) { .lup-arrival-journey ol { gap:11px; }.lup-arrival-journey ol::before { top:39px; bottom:39px; left:27px; width:2px; height:auto; }.lup-arrival-journey li,.lup-arrival-journey li + li { min-height:0; padding:28px 18px 23px 75px; border-bottom:1px solid rgba(187,207,255,.14); }.lup-arrival-journey li > span { top:18px; left:16px; }.lup-arrival-journey li > span::after { top:23px; }.lup-arrival-journey li > i { position:absolute; top:55px; left:16px; width:42px; height:42px; font-size:15px; }.lup-arrival-journey h3 { margin:0 0 7px; font-size:18px; }.lup-arrival-journey li p { font-size:12px; }.lup-arrival-journey li::after { width:72px; height:72px; } }
@media (prefers-reduced-motion:reduce) { .lup-arrival-journey.lup-journey-enter::before,.lup-arrival-journey.lup-journey-enter li { animation:none; } }

/* Welcome reset: preserve the original composed scene. The experimental
 * constellation and the three-card transition were intentionally removed. */
.lup-arrival-location { right:13%; bottom:115px; }
.lup-arrival-journey { position:relative; overflow:visible; scroll-margin-top:0; }
.lup-arrival-journey::after { display:none; }
.lup-arrival-journey ol { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin:53px 0 0; padding:0; border-top:1px solid rgba(189,204,255,.15); }
.lup-arrival-journey ol::before { display:none; }
.lup-arrival-journey li,.lup-arrival-journey li + li { min-height:222px; padding:28px 24px 14px 0; overflow:visible; border:0; border-right:1px solid rgba(189,204,255,.13); border-radius:0; background:transparent; box-shadow:none; }
.lup-arrival-journey li + li { padding-left:25px; }
.lup-arrival-journey li:last-child { border-right:0; }
.lup-arrival-journey li::after { display:none; }
.lup-arrival-journey li:hover { transform:none; border-color:rgba(189,204,255,.13); background:transparent; box-shadow:none; }
.lup-arrival-journey li > span { position:absolute; top:-12px; left:auto; width:auto; height:auto; padding:0; border:0; background:transparent; color:#9fa7c5; font-size:10px; font-weight:900; letter-spacing:.12em; }
.lup-arrival-journey li > span::after { display:none; }
.lup-arrival-journey li > i { position:static; display:grid; width:43px; height:43px; border:1px solid rgba(183,208,255,.22); border-radius:13px 13px 13px 5px; background:rgba(125,108,224,.16); box-shadow:none; color:#b1dfff; font-size:inherit; }
.lup-arrival-journey li:nth-child(2) > i,.lup-arrival-journey li:nth-child(3) > i { background:rgba(125,108,224,.16); }
.lup-arrival-journey h3 { margin:22px 0 9px; font-size:19px; }
.lup-arrival-journey li p { max-width:240px; color:#abaabd; font-size:13px; line-height:1.55; }
.lup-arrival-journey.lup-journey-enter::before { display:none; }
.lup-arrival-journey.lup-journey-enter li { animation:none; }
@media (max-width:760px) {
  .lup-arrival-hero { min-height:650px; padding:28px 26px 44px; }
  .lup-arrival-location { position:absolute; right:36px; bottom:70px; display:grid; margin:0; padding:0; border:0; background:transparent; box-shadow:none; text-align:center; transform:scale(.78); transform-origin:right bottom; animation:none; }
  .lup-arrival-location > i { width:52px; height:52px; border-radius:50% 50% 50% 8px; font-size:22px; }
  .lup-arrival-location .lup-arrival-pulse { top:-22px; left:auto; width:94px; height:94px; transform:none; animation:lup-arrival-pulse 3.2s ease-out infinite; }
  .lup-arrival-journey ol { grid-template-columns:1fr; margin-top:38px; border-top:0; }
  .lup-arrival-journey li,.lup-arrival-journey li + li { min-height:0; padding:24px 0 24px 58px; border-right:0; border-bottom:1px solid rgba(189,204,255,.13); }
  .lup-arrival-journey li > span { top:28px; left:0; }
  .lup-arrival-journey li > i { position:absolute; top:49px; left:0; width:38px; height:38px; }
  .lup-arrival-journey h3 { margin-top:0; font-size:19px; }
}

/* Hard cache-safe restore of the original abstract scene. */
.lup-arrival-hero { background:radial-gradient(ellipse at 74% 28%,rgba(65,146,221,.26),transparent 24%),radial-gradient(ellipse at 63% 78%,rgba(121,84,215,.20),transparent 33%),linear-gradient(145deg,#202643 0%,#121521 63%,#0c1019 100%); background-image:radial-gradient(ellipse at 74% 28%,rgba(65,146,221,.26),transparent 24%),radial-gradient(ellipse at 63% 78%,rgba(121,84,215,.20),transparent 33%),linear-gradient(145deg,#202643 0%,#121521 63%,#0c1019 100%); }
.lup-arrival-location { position:absolute; right:13%; bottom:115px; display:grid; margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; text-align:center; transform:none; }
@media (max-width:760px) { .lup-arrival-location { right:36px; bottom:70px; transform:scale(.78); transform-origin:right bottom; } }

/* Phone-first welcome: the primary action, idea link and place signal each
 * receive their own calm space instead of competing for the same corner. */
@media (max-width:760px) {
  .lup-arrival-hero { min-height:0; padding:28px 22px 32px; }
  .lup-arrival-copy { margin-top:72px; }
  .lup-arrival-copy h1 { font-size:clamp(42px,13vw,58px); line-height:.96; }
  .lup-arrival-copy > p:not(.lup-arrival-kicker) { margin:23px 0 25px; font-size:14px; line-height:1.6; }
  .lup-arrival-actions { display:grid; grid-template-columns:1fr; gap:8px; width:100%; }
  .lup-arrival-actions a { justify-content:center; width:100%; min-height:48px; }
  .lup-arrival-actions a:first-child { padding:0 16px; }
  .lup-arrival-actions a:last-child { color:#cbe6ff; }
  .lup-arrival-location { position:relative; right:auto; bottom:auto; grid-template-columns:48px minmax(0,1fr); column-gap:12px; justify-items:start; align-items:center; width:max-content; max-width:100%; margin:30px 0 0 auto; padding:0; color:#d9efff; text-align:left; transform:none; animation:none; }
  .lup-arrival-location > i { grid-row:1 / span 2; width:48px; height:48px; font-size:20px; transform:rotate(-45deg); }
  .lup-arrival-location b { align-self:end; font-size:8px; }
  .lup-arrival-location small { align-self:start; font-size:8px; }
  .lup-arrival-location .lup-arrival-pulse { top:50%; left:24px; width:60px; height:60px; transform:translate(-50%,-50%); animation:lup-arrival-pulse-mobile 3.2s ease-out infinite; }
}

/* The travelling light pauses briefly at three visible checkpoints. */
.lup-arrival-horizon::before { content:''; position:absolute; top:-3px; left:18%; width:6px; height:6px; border-radius:50%; background:#aee3ff; box-shadow:24vw 0 0 rgba(186,164,255,.82),48vw 0 0 rgba(144,215,255,.72),0 0 11px rgba(135,207,255,.9),24vw 0 11px rgba(176,145,255,.56),48vw 0 11px rgba(132,205,255,.46); opacity:.64; }
.lup-arrival-horizon::after { width:42px; height:3px; animation:lup-arrival-checkpoint-run 7.2s cubic-bezier(.35,.02,.2,1) infinite; }
@keyframes lup-arrival-checkpoint-run { 0%,8% { left:7%; opacity:0; } 15%,24% { left:18%; opacity:1; } 28%,37% { left:42%; opacity:1; } 41%,50% { left:66%; opacity:1; } 55%,72% { left:89%; opacity:.8; } 82%,100% { left:94%; opacity:0; } }

/* Original horizon behaviour: one quiet, continuous travelling light. */
.lup-arrival-horizon::before { display:none; }
.lup-arrival-horizon::after { width:56px; height:4px; animation:lup-arrival-scan 6.5s ease-in-out infinite; }

/* Three stations: a clean route on desktop, tactile cards on a phone. */
.lup-arrival-journey ol { gap:14px; border-top:0; }
.lup-arrival-journey ol::before { display:block; top:23px; right:7%; left:7%; height:2px; background:linear-gradient(90deg,rgba(126,190,255,.14),rgba(139,201,255,.70) 36%,rgba(183,132,255,.68) 69%,rgba(126,190,255,.12)); box-shadow:0 0 16px rgba(126,167,247,.23); }
.lup-arrival-journey li,.lup-arrival-journey li + li { min-height:238px; padding:48px 21px 22px; overflow:hidden; border:1px solid rgba(187,207,255,.14); border-radius:19px; background:radial-gradient(circle at 88% 7%,rgba(89,145,225,.15),transparent 39%),linear-gradient(145deg,rgba(34,43,67,.88),rgba(20,24,39,.92)); box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 13px 25px rgba(0,0,0,.13); }
.lup-arrival-journey li > span { top:14px; left:18px; width:30px; height:19px; padding:0; border:1px solid rgba(180,211,255,.19); border-radius:999px; background:#171d2d; color:#c7e3ff; text-align:center; line-height:17px; }
.lup-arrival-journey li > i { width:46px; height:46px; border-color:rgba(190,216,255,.28); background:linear-gradient(145deg,rgba(123,112,227,.82),rgba(64,147,207,.72)); box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 9px 18px rgba(34,42,113,.22); color:#f6fbff; font-size:17px; }
.lup-arrival-journey li:nth-child(2) > i { background:linear-gradient(145deg,rgba(187,111,224,.80),rgba(90,116,204,.70)); }.lup-arrival-journey li:nth-child(3) > i { background:linear-gradient(145deg,rgba(91,188,185,.80),rgba(77,124,209,.70)); }
.lup-arrival-journey h3 { margin:20px 0 8px; font-size:20px; }.lup-arrival-journey li p { max-width:none; color:#bac3d5; }
@media (max-width:760px) {
  .lup-arrival-journey { padding-top:65px; padding-bottom:58px; }
  .lup-arrival-journey ol { grid-template-columns:1fr; gap:11px; margin-top:34px; }
  .lup-arrival-journey ol::before { top:35px; bottom:35px; left:27px; width:2px; height:auto; }
  .lup-arrival-journey li,.lup-arrival-journey li + li { min-height:128px; padding:26px 18px 21px 78px; border-bottom:1px solid rgba(187,207,255,.14); }
  .lup-arrival-journey li > span { top:16px; left:16px; }.lup-arrival-journey li > i { position:absolute; top:50px; left:16px; width:43px; height:43px; font-size:15px; }
  .lup-arrival-journey h3 { margin:0 0 6px; font-size:18px; }.lup-arrival-journey li p { font-size:12px; line-height:1.55; }
}
@media (prefers-reduced-motion:reduce) { .lup-arrival-horizon::after { animation:none; } }

/* The secondary welcome action is always an active, unobscured jump to the
 * route section — especially on touch screens. */
.lup-arrival-copy,.lup-arrival-actions,.lup-arrival-actions a { position:relative; z-index:8; }
.lup-arrival-actions a[href="#lup-arrival-journey"] { pointer-events:auto; cursor:pointer; }
@media (max-width:760px) { .lup-arrival-actions a[href="#lup-arrival-journey"] { min-height:46px; padding:0 14px; border:1px solid rgba(176,211,255,.18); border-radius:13px; background:rgba(18,27,48,.38); } }

/* A visible next step makes the welcome page a guided route, not a dead end. */
.lup-arrival-next { display:flex; align-items:center; gap:10px; width:max-content; margin:36px auto 0; padding:11px 15px; border:1px solid rgba(180,211,255,.22); border-radius:15px; background:linear-gradient(135deg,rgba(93,120,208,.23),rgba(126,82,187,.17)); box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 11px 23px rgba(0,0,0,.16); color:#e9f3ff; text-decoration:none; transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.lup-arrival-next span { color:#a9cfff; font-size:9px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }.lup-arrival-next b { font-size:13px; }.lup-arrival-next i { color:#a9ddff; font-size:12px; }.lup-arrival-next:hover { transform:translateY(2px); border-color:rgba(185,222,255,.46); box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 14px 25px rgba(40,63,152,.23); color:#fff; }
#lup-arrival-principles { position:relative; overflow:hidden; scroll-margin-top:24px; border-top:1px solid rgba(182,206,255,.10); background:radial-gradient(circle at 86% 28%,rgba(90,159,224,.16),transparent 26%),radial-gradient(circle at 8% 88%,rgba(139,92,221,.12),transparent 30%),#10131e; }
#lup-arrival-principles::before { content:''; position:absolute; top:0; right:12%; left:12%; height:1px; background:linear-gradient(90deg,transparent,#a8dcff 35%,#b694ff 65%,transparent); box-shadow:0 0 15px rgba(142,194,255,.34); }
#lup-arrival-principles > * { position:relative; z-index:1; }
.lup-arrival-principles-list { border-color:rgba(190,211,255,.16); border-radius:20px; background:rgba(255,255,255,.055); box-shadow:inset 0 1px 0 rgba(255,255,255,.075),0 18px 33px rgba(0,0,0,.16); }
.lup-arrival-principles-list > div { min-height:82px; background:linear-gradient(110deg,rgba(27,33,52,.95),rgba(19,23,37,.95)); cursor:default; pointer-events:none; }
.lup-arrival-principles-list > div:hover { transform:none; background:linear-gradient(110deg,rgba(27,33,52,.95),rgba(19,23,37,.95)); }
.lup-arrival-principles-list i { width:38px; height:38px; border:1px solid rgba(199,217,255,.20); box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 7px 14px rgba(25,35,92,.20); }
@media (max-width:760px) { .lup-arrival-next { width:100%; justify-content:center; margin-top:27px; min-height:48px; }.lup-arrival-principles { padding-top:60px; }.lup-arrival-principles-list > div { min-height:76px; } }

/* Both three-step groups stay deliberately open and light: no card frames. */
.lup-arrival-journey li,.lup-arrival-journey li + li { border:0; border-right:1px solid rgba(189,204,255,.13); border-radius:0; background:transparent; box-shadow:none; }
.lup-arrival-journey li:last-child { border-right:0; }.lup-arrival-journey li:hover { transform:none; border-color:rgba(189,204,255,.13); background:transparent; box-shadow:none; }
.lup-arrival-principles-list { overflow:visible; border:0; border-radius:0; background:transparent; box-shadow:none; }
.lup-arrival-principles-list > div { min-height:76px; padding:13px 0; border-bottom:1px solid rgba(190,211,255,.12); background:transparent; }
.lup-arrival-principles-list > div:last-child { border-bottom:0; }.lup-arrival-principles-list > div:hover { background:transparent; }
@media (max-width:760px) { .lup-arrival-journey li,.lup-arrival-journey li + li { border-right:0; border-bottom:1px solid rgba(189,204,255,.13); }.lup-arrival-journey li:last-child { border-bottom:0; }.lup-arrival-principles-list > div { min-height:72px; } }

/* On a phone the travelling light belongs to the open map area, never over a
 * logo or headline. */
@media (max-width:760px) {
  .lup-arrival-horizon { top:38%; right:-4%; bottom:auto; width:108%; height:118px; background:transparent; border-top:1px solid rgba(161,211,255,.46); border-radius:50% 50% 0 0; box-shadow:0 -1px 18px rgba(105,188,255,.22); opacity:.78; transform:rotate(-5deg); }
  .lup-arrival-horizon::after { top:auto; left:auto; width:86px; height:32px; border-top:3px solid #b9e7ff; border-radius:50% 50% 0 0; background:transparent; box-shadow:0 -2px 10px #81cfff,0 -3px 24px rgba(118,161,255,.68); offset-path:path('M 0 100 C 112 8 274 8 430 100'); offset-distance:0%; offset-rotate:auto; animation:lup-arrival-mobile-arc-path 9.4s ease-in-out infinite; }
}
@keyframes lup-arrival-mobile-arc { 0%,8% { left:0; top:88px; opacity:0; } 18% { opacity:.95; } 48% { left:44%; top:5px; opacity:1; } 78% { left:88%; top:88px; opacity:.9; } 92%,100% { left:98%; top:104px; opacity:0; } }
@keyframes lup-arrival-mobile-arc-path { 0%,8% { offset-distance:0%; opacity:0; } 18% { opacity:.95; } 78% { offset-distance:100%; opacity:.9; } 92%,100% { offset-distance:100%; opacity:0; } }

/* A real SVG route for the phone: the moving light can now follow the exact
 * high arc instead of approximating it with a rotated rectangle. */
.lup-arrival-mobile-arc-svg { display:none; }
@media (max-width:760px) {
  .lup-arrival-horizon { display:none; }
  .lup-arrival-mobile-arc-svg { position:absolute; z-index:4; top:30%; right:-5%; width:110%; height:200px; overflow:visible; pointer-events:none; opacity:1; }
  .lup-arrival-mobile-arc-base { fill:none; stroke:rgba(174,223,255,.68); stroke-width:1.45; filter:drop-shadow(0 0 8px rgba(102,184,255,.44)); }
  .lup-arrival-mobile-arc-light { fill:none; stroke:#e0f6ff; stroke-width:4; stroke-linecap:round; stroke-dasharray:74 540; filter:drop-shadow(0 0 5px #86d1ff) drop-shadow(0 0 15px rgba(128,164,255,.95)); animation:lup-arrival-svg-arc-run 6.8s linear infinite; }
  .lup-arrival-mobile-arc-pulse { fill:#f4fcff; stroke:#9cdbff; stroke-width:2; filter:drop-shadow(0 0 5px #d6f4ff) drop-shadow(0 0 15px #70bfff) drop-shadow(0 0 27px rgba(144,118,255,.88)); }
  .lup-arrival-mobile-arc-checkpoint { fill:#d9f4ff; stroke:#92d7ff; stroke-width:1.4; filter:drop-shadow(0 0 5px #bdeaff) drop-shadow(0 0 13px rgba(108,179,255,.92)); transform-box:fill-box; transform-origin:center; animation:lup-arrival-checkpoint-pulse 4.8s ease-in-out infinite; }
  .lup-arrival-mobile-arc-checkpoint.checkpoint-two { animation-delay:1.6s; }.lup-arrival-mobile-arc-checkpoint.checkpoint-three { animation-delay:3.2s; }
}
@keyframes lup-arrival-svg-arc-run { from { stroke-dashoffset:614; } to { stroke-dashoffset:0; } }
@keyframes lup-arrival-checkpoint-pulse { 0%,100% { opacity:.38; transform:scale(.72); } 28% { opacity:1; transform:scale(1.55); } 46% { opacity:.72; transform:scale(1); } }

/* A visible but quiet route: the moving point pauses at real-looking waypoints
 * without ever crossing the copy or competing with the primary action. */
.lup-arrival-route-svg { position:absolute; z-index:0; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; }
.lup-arrival-route-base { fill:none; stroke:rgba(154,207,255,.25); stroke-width:1.35; filter:drop-shadow(0 0 7px rgba(106,181,255,.24)); }
.lup-arrival-route-trace { fill:none; stroke:#c3efff; stroke-width:2.4; stroke-linecap:round; stroke-dasharray:94 920; filter:drop-shadow(0 0 5px #80d1ff) drop-shadow(0 0 16px rgba(126,151,255,.74)); animation:lup-arrival-route-glide 10.8s cubic-bezier(.42,.02,.25,1) infinite; }
.lup-arrival-route-stop { fill:#d7f5ff; stroke:#7ecdfb; stroke-width:1.4; filter:drop-shadow(0 0 7px #a9e6ff) drop-shadow(0 0 18px rgba(120,163,255,.70)); transform-box:fill-box; transform-origin:center; animation:lup-arrival-route-stop 10.8s ease-in-out infinite; }
.lup-arrival-route-stop.stop-two { animation-delay:2.5s; }.lup-arrival-route-stop.stop-three { animation-delay:5.4s; }
.lup-arrival-route-traveller { fill:#f8feff; stroke:#9cdcff; stroke-width:2; filter:drop-shadow(0 0 6px #e3f9ff) drop-shadow(0 0 18px #76c7ff) drop-shadow(0 0 30px rgba(140,112,255,.76)); }
@keyframes lup-arrival-route-glide { from { stroke-dashoffset:1014; } to { stroke-dashoffset:0; } }
@keyframes lup-arrival-route-stop { 0%,16%,100% { opacity:.36; transform:scale(.76); } 21%,29% { opacity:1; transform:scale(1.52); } 35% { opacity:.62; transform:scale(1); } }
@media (max-width:760px) { .lup-arrival-route-svg { display:none; } }
@media (prefers-reduced-motion:reduce) { .lup-arrival-route-trace,.lup-arrival-route-stop { animation:none; } }

/* Phone route: strong enough to be perceived as a living map, but beneath
 * copy and controls so it never steals touch targets or readability. */
@media (max-width:760px) {
  .lup-arrival-mobile-arc-svg { z-index:5; top:39%; right:-9%; width:118%; height:210px; opacity:1; }
  .lup-arrival-mobile-arc-base { stroke:rgba(180,231,255,.94); stroke-width:2.5; filter:drop-shadow(0 0 9px rgba(107,190,255,.72)); }
  .lup-arrival-mobile-arc-light { stroke:#f2fcff; stroke-width:7; stroke-dasharray:96 512; filter:drop-shadow(0 0 7px #d1f3ff) drop-shadow(0 0 23px rgba(120,156,255,1)); animation-duration:8.8s; }
  .lup-arrival-mobile-arc-pulse { r:6; fill:#f7fdff; stroke:#a4ddff; stroke-width:2.2; filter:drop-shadow(0 0 7px #effbff) drop-shadow(0 0 21px #74bdff); }
  .lup-arrival-mobile-arc-checkpoint { fill:#e9faff; stroke:#9fdcff; stroke-width:1.8; filter:drop-shadow(0 0 7px #d7f6ff) drop-shadow(0 0 18px rgba(106,164,255,.96)); }
}

/* Legal pages always offer a clear way back into LinkUUp. */
.lup-legal-return { margin:0 0 25px; }.lup-legal-return a { display:inline-flex; align-items:center; gap:8px; min-height:42px; padding:0 14px; border:1px solid rgba(180,211,255,.22); border-radius:12px; background:linear-gradient(100deg,rgba(84,111,191,.12),rgba(125,83,187,.09)); color:#d9efff; font-size:12px; font-weight:800; text-decoration:none; }.lup-legal-return a:hover { border-color:rgba(190,223,255,.42); color:#fff; }

/* Legal text needs calm hierarchy and comfortable reading, not app-card effects. */
#content-wrap:has(.lup-legal-return) { max-width:900px; margin:0 auto; padding:clamp(24px,4vw,48px) clamp(18px,4vw,44px) 64px; color:#d5d9e7; font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; font-size:15px; line-height:1.7; }
#content-wrap:has(.lup-legal-return) .card,#content-wrap:has(.lup-legal-return) .card-body { border:0; border-radius:0; background:transparent; box-shadow:none; padding:0; }
#content-wrap:has(.lup-legal-return) h1 { margin:0 0 30px; color:#f5f7ff; font-size:clamp(27px,4vw,38px); font-weight:680; letter-spacing:-.035em; line-height:1.1; }
#content-wrap:has(.lup-legal-return) h2 { margin:34px 0 10px; padding-top:18px; border-top:1px solid rgba(185,204,244,.12); color:#bcdcff; font-size:14px; font-weight:760; letter-spacing:.075em; line-height:1.35; text-transform:uppercase; }
#content-wrap:has(.lup-legal-return) p { max-width:77ch; margin:0 0 15px; color:#d5d9e7; }
#content-wrap:has(.lup-legal-return) strong { color:#f3f6ff; font-weight:720; }
#content-wrap:has(.lup-legal-return) a:not(.lup-legal-return a) { color:#9edbff; text-decoration-color:rgba(158,219,255,.38); text-underline-offset:3px; }
#content-wrap:has(.lup-legal-return) ul { max-width:79ch; margin:0 0 19px; padding:4px 0 4px 22px; border-left:1px solid rgba(148,205,255,.26); }
#content-wrap:has(.lup-legal-return) li { margin:0 0 11px; padding-left:5px; }
#content-wrap:has(.lup-legal-return) small { color:#9fa9bd; font-size:12px; line-height:1.55; }
#content-wrap:has(.lup-legal-return) .lup-legal-return { margin-bottom:30px; }
@media (max-width:600px) { #content-wrap:has(.lup-legal-return) { padding:22px 18px 46px; font-size:14px; line-height:1.65; } #content-wrap:has(.lup-legal-return) h1 { margin-bottom:25px; font-size:29px; } #content-wrap:has(.lup-legal-return) h2 { margin-top:28px; padding-top:15px; font-size:12px; } }

/* One shared, understated route control for the two welcome jumps. */
.lup-arrival-actions a[href="#lup-arrival-journey"],.lup-arrival-next { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; padding:0 14px; border:1px solid rgba(175,208,255,.18); border-radius:12px; background:linear-gradient(100deg,rgba(84,111,191,.10),rgba(125,83,187,.08)); box-shadow:none; color:#cce5ff; font-size:12px; font-weight:780; text-decoration:none; }
.lup-arrival-next { width:max-content; margin:34px auto 0; }.lup-arrival-next span { color:inherit; font-size:inherit; font-weight:inherit; letter-spacing:0; text-transform:none; }.lup-arrival-next i,.lup-arrival-actions a[href="#lup-arrival-journey"] i { color:#a8daff; font-size:11px; transition:transform .2s ease; }.lup-arrival-next:hover,.lup-arrival-actions a[href="#lup-arrival-journey"]:hover { transform:none; border-color:rgba(190,223,255,.39); background:linear-gradient(100deg,rgba(93,132,218,.20),rgba(137,91,203,.15)); box-shadow:0 0 18px rgba(91,146,227,.12); color:#eff8ff; }.lup-arrival-next:hover i,.lup-arrival-actions a[href="#lup-arrival-journey"]:hover i { transform:translateY(3px); }
@media (max-width:760px) { .lup-arrival-actions a[href="#lup-arrival-journey"],.lup-arrival-next { width:100%; min-height:46px; }.lup-arrival-next { margin-top:25px; } }


/* Mobile backend navigation: the checked CSS drawer must always have an
 * obvious, reachable close target. */
@media only screen and (max-width:1023px) {
  #gdo-left-nav:checked ~ label[for="gdo-left-nav"]:not(#gdo-left-nav2) {
    z-index:80;
    top:8px;
    left:205px;
    display:grid;
    place-items:center;
    width:35px;
    height:35px;
    margin:0;
    border:1px solid rgba(214,223,255,.30);
    border-radius:11px;
    background:#22283a;
    box-shadow:0 8px 18px rgba(0,0,0,.30);
  }
  #gdo-left-nav:checked ~ label[for="gdo-left-nav"]:not(#gdo-left-nav2)::after {
    content:'×';
    color:#f7f5ff;
    font:300 29px/1 Arial,sans-serif;
  }
  #gdo-left-nav:checked ~ #gdo-pagewrap #gdo-left-nav2 {
    z-index:30;
    cursor:pointer;
  }
}

/* The classic theme permanently forced the navigation open on desktops. LinkUUp
 * uses one consistent, voluntary drawer on every screen size instead. */
#gdo-left-bar {
  z-index:70;
  width:256px;
  padding-top:58px;
  transform:translateX(-100%);
  transition:transform .24s cubic-bezier(.22,.78,.24,1),box-shadow .24s ease;
}
#gdo-left-bar::before {
  content:'LINKUUP  /  STEUERUNG';
  position:absolute;
  top:18px;
  left:18px;
  color:#c8c1fb;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
}
#gdo-left-nav:checked ~ #gdo-left-bar { transform:translateX(0); box-shadow:13px 0 35px rgba(0,0,0,.35); }
#gdo-pagewrap { margin-left:0; left:0; width:100%; transition:none; }
#gdo-header { width:100vw; left:0; transition:none; }
label[for="gdo-left-nav"]:not(#gdo-left-nav2) {
  z-index:80;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  margin:12px;
  border:1px solid rgba(201,211,255,.25);
  border-radius:12px;
  background-color:#252b3d;
  background-image:none;
  box-shadow:0 8px 18px rgba(0,0,0,.24);
}
label[for="gdo-left-nav"]:not(#gdo-left-nav2)::after {
  content:'☰';
  color:#eeeaff;
  font:20px/1 Arial,sans-serif;
}
#gdo-left-nav:checked ~ label[for="gdo-left-nav"]:not(#gdo-left-nav2) { top:8px; left:205px; margin:0; }
#gdo-left-nav:checked ~ label[for="gdo-left-nav"]:not(#gdo-left-nav2)::after { content:'×'; font-size:29px; font-weight:300; }
#gdo-left-nav:checked ~ #gdo-pagewrap #gdo-left-nav2 { z-index:60; left:256px; width:calc(100% - 256px); background:rgba(5,7,13,.57); backdrop-filter:blur(2px); cursor:pointer; }

/* JavaScript-owned drawer controls remain above every legacy theme layer. */
label[for="gdo-left-nav"]:not(#gdo-left-nav2) { display:none; }
#lup-admin-drawer-toggle { position:fixed; z-index:110; top:12px; left:12px; display:grid; place-items:center; width:38px; height:38px; margin:0; padding:0; border:1px solid rgba(201,211,255,.28); border-radius:12px; background:#252b3d; box-shadow:0 8px 18px rgba(0,0,0,.26); color:#f3f0ff; font:300 24px/1 Arial,sans-serif; cursor:pointer; transition:left .24s cubic-bezier(.22,.78,.24,1),background .18s ease; } body.lup-admin-drawer-open #lup-admin-drawer-toggle { top:8px; left:205px; background:#2c3348; font-size:30px; } #lup-admin-drawer-shade { position:fixed; z-index:65; inset:0 0 0 256px; display:none; border:0; background:rgba(5,7,13,.57); backdrop-filter:blur(2px); cursor:pointer; } body.lup-admin-drawer-open #lup-admin-drawer-shade { display:block; }

/* Bootstrap backend drawer: one unambiguous state, an obvious ×, and an
 * outside click that always closes it. The inline fallback keeps this usable
 * even when a cached JavaScript bundle is still loading. */
/* The navigation control is a small docked signal, not a generic button. */
#sidebarToggle { position:relative; display:grid; place-items:center; flex:0 0 auto; width:48px; min-width:48px; height:46px; min-height:46px; margin-left:-8px; padding:0; border:1px solid rgba(184,210,255,.25); border-radius:0 15px 15px 0; background:linear-gradient(135deg,rgba(48,67,126,.92),rgba(65,48,122,.92)); box-shadow:inset 0 1px 0 rgba(255,255,255,.18),10px 0 24px rgba(49,62,143,.18); overflow:visible; transition:transform .28s cubic-bezier(.2,.85,.25,1),background .20s ease,box-shadow .20s ease; }
#sidebarToggle::after { content:''; position:absolute; z-index:-1; width:38px; height:38px; border:1px solid rgba(143,192,255,.17); border-radius:50%; box-shadow:0 0 0 7px rgba(111,93,220,.035),0 0 19px rgba(93,153,255,.18); animation:lup-admin-menu-breathe 3.6s ease-in-out infinite; pointer-events:none; }
#sidebarToggle .lup-sidebar-glyph { display:grid; gap:4px; width:20px; transition:transform .24s cubic-bezier(.2,.85,.25,1); }
#sidebarToggle .lup-sidebar-glyph i { display:block; height:2px; border-radius:99px; background:linear-gradient(90deg,#f8f5ff,#9ad8ff); box-shadow:0 1px 6px rgba(184,222,255,.54); transition:width .20s ease,transform .20s ease; }
#sidebarToggle .lup-sidebar-glyph i:nth-child(2) { width:13px; justify-self:end; }
#sidebarToggle:hover { transform:translateX(4px); background:linear-gradient(135deg,rgba(75,105,184,.97),rgba(85,61,153,.97)); box-shadow:inset 0 1px 0 rgba(255,255,255,.30),12px 0 27px rgba(70,89,190,.30); }
#sidebarToggle:hover .lup-sidebar-glyph i:nth-child(2) { width:20px; }
body.sb-sidenav-toggled #sidebarToggle { animation:lup-admin-menu-return .36s cubic-bezier(.2,.85,.25,1); }
#sidebar-wrapper { position:relative; display:flex; flex-direction:column; overflow:hidden; border-right:1px solid rgba(190,209,255,.16); background:radial-gradient(ellipse at 0 0,rgba(107,154,246,.24),transparent 36%),radial-gradient(ellipse at 100% 22%,rgba(142,89,210,.15),transparent 33%),linear-gradient(180deg,#1a2032,#0d111a 82%); }
#sidebar-wrapper::before { content:''; position:absolute; top:0; right:0; left:0; height:3px; background:linear-gradient(90deg,transparent,#9bdcff 36%,#a58dff 68%,transparent); box-shadow:0 0 16px rgba(133,196,255,.52); opacity:.72; }
.lup-sidebar-brand { position:relative; display:flex; align-items:center; gap:11px; min-height:88px; padding:19px 17px 15px; border-bottom:1px solid rgba(204,219,255,.10); background:linear-gradient(110deg,rgba(255,255,255,.055),transparent 72%); }
.lup-sidebar-brand::after { content:''; position:absolute; right:-20px; bottom:-28px; width:82px; height:82px; border:1px solid rgba(157,194,255,.16); border-radius:50%; box-shadow:0 0 0 13px rgba(132,105,226,.035); }
.lup-sidebar-brand > * { position:relative; z-index:1; }.lup-sidebar-brand-mark { display:grid; place-items:center; flex:0 0 39px; width:39px; height:39px; border:1px solid rgba(211,225,255,.36); border-radius:14px 14px 14px 5px; background:linear-gradient(145deg,#6999df,#7653bf); box-shadow:inset 0 1px 0 rgba(255,255,255,.39),0 8px 17px rgba(34,40,99,.31); color:#fff; font-size:16px; }.lup-sidebar-brand strong,.lup-sidebar-brand small { display:block; }.lup-sidebar-brand strong { color:#fbfbff; font-size:14px; font-weight:900; letter-spacing:.15em; text-shadow:0 0 17px rgba(180,216,255,.22); }.lup-sidebar-brand small { margin-top:4px; color:#a8acd0; font-size:7px; font-weight:800; letter-spacing:.13em; }
.lup-sidebar-mobile-toggle { display:none; }
.lup-sidebar-section-label { display:flex; align-items:center; gap:8px; padding:16px 18px 7px; color:#929abe; font-size:8px; font-weight:900; letter-spacing:.16em; }.lup-sidebar-section-label span { display:block; width:17px; height:1px; background:linear-gradient(90deg,#9cd9ff,rgba(156,217,255,.1)); box-shadow:0 0 7px rgba(130,201,255,.55); }
#sidebar-wrapper #leftnav { position:relative; z-index:1; flex:1 1 auto; padding:0 10px 18px; }
#sidebar-wrapper #leftnav .list-group-item { margin:6px 0; border-color:rgba(199,213,255,.09); border-radius:15px; background:rgba(255,255,255,.022); box-shadow:inset 0 1px 0 rgba(255,255,255,.035); }
#sidebar-wrapper #leftnav .list-group-item a { min-height:47px; color:#d7d9eb; letter-spacing:.015em; }.lup-sidebar-brand + .lup-sidebar-section-label + #leftnav .list-group-item:first-child { margin-bottom:13px; border-color:rgba(169,195,255,.14); background:rgba(102,122,199,.09); }
#sidebar-wrapper #leftnav .list-group-item a i { border-radius:10px 10px 10px 5px; background:linear-gradient(145deg,rgba(101,138,219,.36),rgba(107,76,172,.30)); }
#sidebar-wrapper #leftnav .list-group-item:hover { transform:translateX(3px); border-color:rgba(169,190,255,.28); background:linear-gradient(100deg,rgba(97,127,217,.24),rgba(129,84,193,.12)); }
.lup-sidebar-foot { display:flex; align-items:center; gap:7px; margin:0 13px 14px; padding:11px 7px 0; border-top:1px solid rgba(203,218,255,.09); color:#838caf; font-size:7px; font-weight:850; letter-spacing:.11em; }.lup-sidebar-foot i { color:#79ddaa; font-size:7px; text-shadow:0 0 8px #69d99d; }.lup-sidebar-foot b { color:#697393; font-size:10px; }

/* The upper account area is a compact control bar – not a row of raw links. */
#page-content-wrapper > .navbar { border-bottom-color:rgba(196,211,255,.10); background:rgba(12,15,26,.89); box-shadow:0 10px 27px rgba(0,0,0,.14); }
#page-content-wrapper > .navbar .navbar-toggler { display:grid; place-items:center; width:42px; height:40px; padding:0; border:1px solid rgba(185,210,255,.28); border-radius:50%; background:radial-gradient(circle at 35% 25%,rgba(136,188,245,.84),rgba(80,87,174,.84) 58%,rgba(61,45,123,.95)); box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 8px 18px rgba(19,25,68,.28),0 0 0 3px rgba(105,135,220,.07); }
#page-content-wrapper > .navbar .navbar-toggler:focus,#page-content-wrapper > .navbar .navbar-toggler:hover { border-color:rgba(219,232,255,.54); box-shadow:0 0 0 3px rgba(139,175,255,.20),inset 0 1px 0 rgba(255,255,255,.34),0 10px 20px rgba(19,25,68,.32); }
#page-content-wrapper > .navbar .lup-account-toggle-icon { display:grid; place-items:center; width:24px; height:24px; border:1px solid rgba(241,248,255,.32); border-radius:50%; background:rgba(20,27,77,.17); color:#f6fbff; font-size:11px; box-shadow:inset 0 1px 0 rgba(255,255,255,.22); }
#navbarSupportedContent .navbar-nav { align-items:center; gap:7px; }
#navbarSupportedContent .nav-item { margin:0; }
#navbarSupportedContent .nav-link { display:block; padding:0; }
#navbarSupportedContent .gdt-menu { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
#navbarSupportedContent .nav-item:has(.gdt-menu:empty) { display:none; }
#navbarSupportedContent .gdt-link > a { display:inline-flex; align-items:center; gap:7px; min-height:34px; max-width:148px; padding:7px 10px; overflow:hidden; border:1px solid rgba(191,207,255,.13); border-radius:11px; background:rgba(255,255,255,.028); color:#d7d9ed; font-size:11px; font-weight:760; letter-spacing:.015em; line-height:1.1; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease; }
#navbarSupportedContent .gdt-link > a .gdo-icon { display:grid; place-items:center; width:20px; height:20px; margin:0; border:1px solid rgba(189,213,255,.20); border-radius:7px 7px 7px 3px; background:linear-gradient(145deg,rgba(106,141,218,.28),rgba(111,75,181,.22)); color:#b9dbff; font-size:9px; }
#navbarSupportedContent .gdt-link > a:hover { transform:translateY(-2px); border-color:rgba(172,197,255,.34); background:linear-gradient(135deg,rgba(83,121,207,.25),rgba(129,85,190,.17)); box-shadow:0 8px 16px rgba(23,29,74,.22); color:#fff; }
#navbarSupportedContent .gdt-menu .gdt-link:first-child > a { border-color:rgba(179,211,255,.24); background:linear-gradient(135deg,rgba(84,126,209,.23),rgba(121,82,186,.15)); color:#f2f4ff; }
#navbarSupportedContent .gdt-profile-link { display:inline-flex; align-items:center; gap:8px; min-height:37px; padding:4px 10px 4px 5px; border:1px solid rgba(188,208,255,.18); border-radius:999px; background:linear-gradient(135deg,rgba(97,125,205,.18),rgba(126,78,179,.13)); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); }
#navbarSupportedContent .gdt-profile-link .gdt-avatar { display:block; overflow:hidden; width:27px; height:27px; border:1px solid rgba(205,225,255,.48); border-radius:50%; box-shadow:0 0 0 3px rgba(109,148,231,.12); }.gdt-profile-link .gdt-avatar img { display:block; width:100%; height:100%; object-fit:cover; }
#navbarSupportedContent .gdt-profile-link .gdt-nickname { color:#f4f3ff; font-size:11px; font-weight:850; letter-spacing:.01em; text-decoration:none; }
#navbarSupportedContent .gdt-profile-link .gdt-nickname::after { content:'KONTO'; display:block; margin-top:2px; color:#a5b8df; font-size:7px; font-weight:850; letter-spacing:.13em; }
@media (max-width:767.98px) { #navbarSupportedContent .navbar-nav { align-items:stretch; gap:5px; padding:11px 0 4px; }.navbar-collapse { border-top:1px solid rgba(196,211,255,.10); }.navbar-nav .gdt-link > a { justify-content:flex-start; width:100%; }.navbar-nav .gdt-profile-link { justify-content:flex-start; } }

/* Phone account drawer: explicit grid prevents clipped vertical account links. */
@media (max-width:767.98px) { #navbarSupportedContent { width:100%; margin-top:9px; padding:7px; border:1px solid rgba(183,204,255,.13); border-radius:16px; background:linear-gradient(145deg,rgba(25,30,49,.98),rgba(16,19,31,.98)); box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 13px 25px rgba(0,0,0,.18); } #navbarSupportedContent .navbar-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; width:100%; margin:0; padding:0; } #navbarSupportedContent .nav-item { display:flex; min-width:0; } #navbarSupportedContent .nav-item:first-child { grid-column:1 / -1; } #navbarSupportedContent .nav-link { display:flex; width:100%; } #navbarSupportedContent .gdt-menu { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; width:100%; } #navbarSupportedContent .gdt-menu .gdt-link { display:flex; min-width:0; } #navbarSupportedContent .gdt-menu .gdt-link > a,#navbarSupportedContent .nav-item:not(:first-child) .gdt-link > a { display:flex; align-items:center; min-width:0; width:100%; min-height:42px; padding:8px 9px; overflow:hidden; border-color:rgba(182,204,255,.14); background:rgba(255,255,255,.03); font-size:10px; text-overflow:ellipsis; white-space:nowrap; } #navbarSupportedContent .gdt-menu .gdt-link > a .gdo-icon,#navbarSupportedContent .nav-item:not(:first-child) .gdt-link > a .gdo-icon { flex:0 0 20px; } #navbarSupportedContent .gdt-profile-link { display:flex; align-items:center; width:100%; min-width:0; } #navbarSupportedContent .gdt-profile-link .gdt-nickname { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; } }
@media (max-width:767.98px) { #navbarSupportedContent .gdt-profile-link .gdt-nickname { display:block; max-width:92px; color:#edf3ff; font-size:10px; font-weight:780; line-height:1.1; } #navbarSupportedContent .gdt-profile-link .gdt-nickname::after { display:none; content:none; } #navbarSupportedContent .gdt-menu .gdt-link > a { font-size:10px; line-height:1.1; } }
@media (max-width:767.98px) { #navbarSupportedContent .gdt-profile-link .gdt-avatar { display:none; } #navbarSupportedContent .gdt-link > a .gdo-icon,#navbarSupportedContent .gdt-link > a .gdo-icon i { position:static; margin:0; transform:none; } #navbarSupportedContent .gdt-link > a { gap:6px; } }

/* Administrative Steuerleiste: ruhig, kompakt und wie ein kleines Bedienpult. */
#page-content-wrapper > .navbar .navbar-brand { display:flex; align-items:center; min-width:0; margin:0 12px; }
#page-content-wrapper > .navbar .navbar-brand .gdt-menu { display:inline-flex; align-items:center; min-width:0; gap:6px; padding:4px 6px; border:1px solid rgba(174,196,255,.12); border-radius:15px; background:rgba(7,10,20,.20); box-shadow:inset 0 1px 0 rgba(255,255,255,.055); }
#page-content-wrapper > .navbar .navbar-brand .gdt-link > a { display:inline-flex; align-items:center; gap:7px; min-height:31px; max-width:122px; padding:6px 9px; overflow:hidden; border:1px solid transparent; border-radius:10px; color:#aeb6d2; font-size:10px; font-weight:780; letter-spacing:.025em; line-height:1; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease; }
#page-content-wrapper > .navbar .navbar-brand .gdt-link > a .gdo-icon { display:grid; place-items:center; width:19px; height:19px; flex:0 0 19px; border:1px solid rgba(169,198,255,.20); border-radius:50%; background:radial-gradient(circle at 35% 30%,rgba(161,203,255,.30),rgba(88,102,191,.18) 60%,rgba(30,27,70,.16)); color:#bdcfff; font-size:9px; box-shadow:inset 0 1px 0 rgba(255,255,255,.18); transition:transform .55s cubic-bezier(.2,.8,.2,1),box-shadow .2s ease; }
#page-content-wrapper > .navbar .navbar-brand .gdt-link > a:hover { border-color:rgba(160,193,255,.24); background:linear-gradient(135deg,rgba(97,134,216,.20),rgba(121,81,183,.13)); color:#fff; transform:translateY(-1px); }
#page-content-wrapper > .navbar .navbar-brand .gdt-link > a:hover .gdo-icon { transform:rotate(120deg); box-shadow:0 0 12px rgba(133,170,255,.31),inset 0 1px 0 rgba(255,255,255,.25); }
#page-content-wrapper > .navbar .navbar-brand .gdt-link:first-child > a { border-color:rgba(152,181,255,.19); background:linear-gradient(135deg,rgba(89,118,205,.19),rgba(116,79,178,.11)); color:#e8ebff; }
@media (max-width:767.98px) { #page-content-wrapper > .navbar .navbar-brand { order:3; flex:1 1 100%; width:100%; margin:7px 0 0; }.navbar > .container-fluid { flex-wrap:wrap; }.navbar-brand .gdt-menu { width:100%; overflow-x:auto; } #page-content-wrapper > .navbar .navbar-brand .gdt-link > a { max-width:112px; } }

/* Contact: turn the generic form into a calm LinkUUp contact desk. */
#form.gdt-form:has(#cmsg_message) { position:relative; overflow:hidden; max-width:760px; margin:28px auto; border-color:rgba(166,193,255,.22); border-radius:23px; background:radial-gradient(circle at 92% 0,rgba(117,151,242,.25),transparent 31%),radial-gradient(circle at 3% 96%,rgba(151,90,212,.15),transparent 28%),linear-gradient(145deg,rgba(31,35,56,.98),rgba(15,18,30,.98)); box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 23px 46px rgba(0,0,0,.25); }
#form.gdt-form:has(#cmsg_message)::before { content:''; position:absolute; top:0; right:12%; left:12%; height:2px; background:linear-gradient(90deg,transparent,#8ed4ff 30%,#ae8cff 68%,transparent); box-shadow:0 0 17px rgba(139,191,255,.58); }
#form.gdt-form:has(#cmsg_message) .gdt-form-text { position:relative; padding:30px 31px 22px; border:0; background:linear-gradient(110deg,rgba(101,136,222,.17),rgba(255,255,255,.015) 70%); }
#form.gdt-form:has(#cmsg_message) .gdt-form-text::before { content:'KONTAKT · LINKUUP'; display:block; margin-bottom:9px; color:#a7cfff; font-size:9px; font-weight:900; letter-spacing:.17em; }
#form.gdt-form:has(#cmsg_message) .gdt-form-text::after { content:'✦'; position:absolute; top:25px; right:29px; display:grid; place-items:center; width:38px; height:38px; border:1px solid rgba(202,223,255,.30); border-radius:13px 13px 13px 5px; background:linear-gradient(145deg,rgba(106,150,231,.68),rgba(122,76,185,.48)); box-shadow:inset 0 1px 0 rgba(255,255,255,.33),0 9px 20px rgba(36,42,102,.24); color:#fff; font-size:17px; }
#form.gdt-form:has(#cmsg_message) .card-title { margin:0 50px 8px 0; color:#fbfbff; font-size:25px; font-weight:820; letter-spacing:-.035em; }
#form.gdt-form:has(#cmsg_message) .gdt-form-text p { max-width:610px; margin:0; color:#c8c6d8; font-size:13px; line-height:1.7; }
#form.gdt-form:has(#cmsg_message) .gdt-form-inner { padding:25px 31px 29px; background:rgba(6,8,15,.13); }
#form.gdt-form:has(#cmsg_message) .gdt-container { margin-bottom:17px; }
#form.gdt-form:has(#cmsg_message) .form-label label,#form.gdt-form:has(#cmsg_message) label { color:#dcd9ec; font-size:11px; font-weight:800; letter-spacing:.035em; }
#form.gdt-form:has(#cmsg_message) .inner-form-input,#form.gdt-form:has(#cmsg_message) .gdt-editor-text { border:1px solid rgba(190,209,255,.15); border-radius:13px; background:rgba(255,255,255,.045); box-shadow:inset 0 1px 0 rgba(255,255,255,.04); transition:border-color .18s ease,box-shadow .18s ease,background .18s ease; }
#form.gdt-form:has(#cmsg_message) input.form-control,#form.gdt-form:has(#cmsg_message) textarea { border:0; background:transparent; color:#f7f6fd; }
#form.gdt-form:has(#cmsg_message) .inner-form-input:focus-within,#form.gdt-form:has(#cmsg_message) .gdt-editor-text:focus-within { border-color:rgba(151,196,255,.53); background:rgba(91,119,201,.10); box-shadow:0 0 0 3px rgba(120,158,245,.12),inset 0 1px 0 rgba(255,255,255,.06); }
#form.gdt-form:has(#cmsg_message) .gdt-actions { display:flex; justify-content:flex-end; margin-top:23px; padding-top:18px; border-top:1px solid rgba(194,210,255,.10); }
#form.gdt-form:has(#cmsg_message) .gdt-submit { min-width:165px; min-height:43px; border-radius:13px; background:linear-gradient(135deg,#6d94df,#7655c5); box-shadow:inset 0 1px 0 rgba(255,255,255,.31),0 10px 20px rgba(72,79,181,.27); }
@media (max-width:767.98px) { #form.gdt-form:has(#cmsg_message) { margin:16px 0; border-radius:18px; } #form.gdt-form:has(#cmsg_message) .gdt-form-text,#form.gdt-form:has(#cmsg_message) .gdt-form-inner { padding-right:18px; padding-left:18px; } #form.gdt-form:has(#cmsg_message) .card-title { font-size:22px; } }

/* Each administration area gets its own visual marker instead of the same link icon. */
#sidebar-wrapper #leftnav a[href*="news"] i,
#sidebar-wrapper #leftnav a[href*="avatar"] i,
#sidebar-wrapper #leftnav a[href*="gallery"] i,
#sidebar-wrapper #leftnav a[href*="linkuup"] i,
#sidebar-wrapper #leftnav a[href*="contact"] i,
#sidebar-wrapper #leftnav a[href*="admin"] i { font-family:'Font Awesome 5 Free'; font-size:0; font-weight:900; }
#sidebar-wrapper #leftnav a[href*="news"] i::before { content:'\f0f3'; font-size:13px; }
#sidebar-wrapper #leftnav a[href*="avatar"] i::before { content:'\f2bd'; font-size:13px; }
#sidebar-wrapper #leftnav a[href*="gallery"] i::before { content:'\f03e'; font-size:13px; }
#sidebar-wrapper #leftnav a[href*="linkuup"] i::before { content:'\f015'; font-size:13px; }
#sidebar-wrapper #leftnav a[href*="contact"] i::before { content:'\f075'; font-size:13px; }
#sidebar-wrapper #leftnav a[href*="admin"] i::before { content:'\f013'; font-size:13px; }
#sidebar-wrapper #leftnav a[href*="news"] i { background:linear-gradient(145deg,rgba(97,151,239,.42),rgba(62,84,167,.30)); color:#bce3ff; }
#sidebar-wrapper #leftnav a[href*="avatar"] i { background:linear-gradient(145deg,rgba(167,118,240,.43),rgba(99,65,172,.30)); color:#e4c8ff; }
#sidebar-wrapper #leftnav a[href*="gallery"] i { background:linear-gradient(145deg,rgba(224,136,186,.40),rgba(156,71,129,.28)); color:#ffd0e9; }
#sidebar-wrapper #leftnav a[href*="linkuup"] i { background:linear-gradient(145deg,rgba(103,212,192,.40),rgba(55,133,138,.29)); color:#c4fff0; }
#sidebar-wrapper #leftnav a[href*="contact"] i { background:linear-gradient(145deg,rgba(249,183,102,.43),rgba(176,100,74,.29)); color:#ffe0b2; }
#sidebar-wrapper #leftnav a[href*="admin"] i { background:linear-gradient(145deg,rgba(164,180,255,.43),rgba(91,79,175,.30)); color:#d9e1ff; }
#form.gdt-form:has(#cmsg_message),#form.gdt-form:has(#cmsg_message) .gdt-form-text,#form.gdt-form:has(#cmsg_message) .gdt-form-inner { color:#f6f5fd; }
#form.gdt-form:has(#cmsg_message) .gdt-form-text a { color:#9ed7ff; }

/* Explicit contact class: this always wins over generic backend form rules. */
#content-wrap > #form.lup-contact-desk { overflow:hidden; max-width:760px; margin:28px auto; border:1px solid rgba(166,193,255,.24); border-radius:23px; background:radial-gradient(circle at 92% 0,rgba(117,151,242,.25),transparent 31%),radial-gradient(circle at 3% 96%,rgba(151,90,212,.15),transparent 28%),linear-gradient(145deg,#1f2338,#0f121e); box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 23px 46px rgba(0,0,0,.25); color:#f6f5fd; }
#content-wrap > #form.lup-contact-desk .gdt-form-text { padding:30px 31px 22px; border:0; background:linear-gradient(110deg,rgba(101,136,222,.17),rgba(255,255,255,.015) 70%); color:#f6f5fd; }
#content-wrap > #form.lup-contact-desk .gdt-form-inner { padding:25px 31px 29px; background:rgba(6,8,15,.13); color:#f6f5fd; }
#content-wrap > #form.lup-contact-desk .inner-form-input,#content-wrap > #form.lup-contact-desk .gdt-editor-text { border:1px solid rgba(190,209,255,.15); border-radius:13px; background:rgba(255,255,255,.045); }
#content-wrap > #form.lup-contact-desk input.form-control,#content-wrap > #form.lup-contact-desk textarea { border:0; background:transparent; color:#f7f6fd; }
#content-wrap > #form.lup-contact-desk .card-title,#content-wrap > #form.lup-contact-desk label { color:#fbfbff; }
#content-wrap > #form.lup-contact-desk .gdt-form-text p { color:#c8c6d8; }
#content-wrap > #form.lup-contact-desk .gdt-form-text a { color:#9ed7ff; }
@media (max-width:767.98px) { #content-wrap > #form.lup-contact-desk { margin:16px 0; border-radius:18px; } #content-wrap > #form.lup-contact-desk .gdt-form-text,#content-wrap > #form.lup-contact-desk .gdt-form-inner { padding-right:18px; padding-left:18px; } }

/* Complete LinkUUp contact experience, independent from the generic form layout. */
.lup-contact-page { position:relative; display:grid; grid-template-columns:minmax(280px,.85fr) minmax(360px,1.15fr); gap:22px; width:min(100%,1120px); margin:8px auto 30px; }
.lup-contact-hero,.lup-contact-composer { position:relative; overflow:hidden; border:1px solid rgba(185,205,255,.16); border-radius:25px; background:linear-gradient(145deg,#1c2034,#0e111c 78%); box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 40px rgba(0,0,0,.20); }
.lup-contact-hero { min-height:440px; padding:39px 34px; background:radial-gradient(circle at 90% 10%,rgba(104,160,241,.31),transparent 32%),radial-gradient(circle at 16% 88%,rgba(149,83,218,.19),transparent 32%),linear-gradient(145deg,#1c2037,#0d111c 78%); }
.lup-contact-hero::before { content:''; position:absolute; top:0; right:15%; left:15%; height:2px; background:linear-gradient(90deg,transparent,#9cdcff 32%,#aa8dff 68%,transparent); box-shadow:0 0 18px rgba(139,194,255,.6); }
.lup-contact-eyebrow { position:relative; display:flex; align-items:center; gap:8px; color:#a8cfff; font-size:10px; font-weight:900; letter-spacing:.16em; }.lup-contact-eyebrow i { color:#91e2ff; }
.lup-contact-hero h1 { position:relative; margin:27px 0 16px; padding:0; color:#fbfbff; font-size:34px; font-weight:820; line-height:1.08; letter-spacing:-.05em; background:transparent; }.lup-contact-hero h1 em { color:#aabaff; font-style:normal; }
.lup-contact-hero p { position:relative; max-width:330px; margin:0; color:#c4c5d4; font-size:14px; line-height:1.7; }
.lup-contact-promises { position:absolute; right:27px; bottom:28px; left:27px; display:flex; flex-wrap:wrap; gap:7px; }.lup-contact-promises span { display:inline-flex; align-items:center; gap:6px; padding:7px 9px; border:1px solid rgba(194,213,255,.14); border-radius:9px; background:rgba(255,255,255,.045); color:#cdd7f4; font-size:9px; font-weight:800; }.lup-contact-promises i { color:#a5dcff; }
.lup-contact-orbit { position:absolute; border:1px solid rgba(165,199,255,.12); border-radius:50%; pointer-events:none; }.lup-contact-orbit-a { top:-108px; right:-102px; width:290px; height:290px; box-shadow:0 0 0 25px rgba(122,103,219,.027),0 0 0 55px rgba(120,150,230,.018); }.lup-contact-orbit-b { bottom:70px; left:-72px; width:154px; height:154px; border-color:rgba(153,116,226,.15); }
.lup-contact-composer { padding:0; }.lup-contact-composer-top { display:flex; align-items:center; gap:12px; padding:22px 26px 17px; border-bottom:1px solid rgba(192,209,255,.11); background:linear-gradient(110deg,rgba(91,127,215,.15),transparent 73%); }.lup-contact-composer-mark { display:grid; place-items:center; width:38px; height:38px; border:1px solid rgba(199,219,255,.31); border-radius:13px 13px 13px 5px; background:linear-gradient(145deg,#6d9be3,#7456c3); box-shadow:inset 0 1px 0 rgba(255,255,255,.33),0 7px 16px rgba(48,54,139,.25); color:#fff; font-size:15px; }.lup-contact-composer-top b,.lup-contact-composer-top small { display:block; }.lup-contact-composer-top b { color:#f7f7ff; font-size:14px; }.lup-contact-composer-top small { margin-top:3px; color:#a9a9bd; font-size:10px; }
.lup-contact-composer #form.lup-contact-desk { max-width:none; margin:0; border:0; border-radius:0; background:transparent; box-shadow:none; }.lup-contact-composer #form.lup-contact-desk::before,.lup-contact-composer #form.lup-contact-desk .gdt-form-text { display:none; }.lup-contact-composer #form.lup-contact-desk .gdt-form-inner { padding:24px 26px 27px; background:transparent; }
@media (max-width:820px) { .lup-contact-page { grid-template-columns:1fr; }.lup-contact-hero { min-height:290px; }.lup-contact-hero h1 { font-size:30px; }.lup-contact-composer #form.lup-contact-desk .gdt-form-inner { padding:19px; } }


/* Account and settings use several legacy Bootstrap surfaces. Keep every
 * panel, accordion and input in the same dark control language. */
#content-wrap .accordion,#content-wrap .accordion-item,#content-wrap .accordion-header,#content-wrap .accordion-body,#content-wrap .gdt-accordeon,#content-wrap .gdo-accordeon { border-color:rgba(183,202,248,.15); background:#171e2d; color:#e8eaf5; }
#content-wrap .accordion-item { overflow:hidden; margin-bottom:9px; border-radius:15px; box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 21px rgba(0,0,0,.12); }
#content-wrap .accordion-button,#content-wrap .gdt-accordeon .title,#content-wrap .gdo-accordeon .title { min-height:52px; border:0; background:linear-gradient(110deg,#202b43,#182033 73%); color:#eaf1ff; font-weight:780; box-shadow:none; }
#content-wrap .accordion-button:not(.collapsed) { background:linear-gradient(110deg,rgba(80,111,184,.47),rgba(101,72,166,.30)); color:#fff; }
#content-wrap .accordion-button::after { filter:invert(1) brightness(2); }
#content-wrap .accordion-body,#content-wrap .gdt-accordeon .collapse-content,#content-wrap .gdo-accordeon .collapse-content { background:#141b29; color:#d4d8e7; }
#content-wrap .form-control,#content-wrap .form-select,#content-wrap input:not([type=checkbox]):not([type=radio]),#content-wrap select,#content-wrap textarea { border-color:rgba(181,202,248,.18); background:#0f1624; color:#f3f5ff; }
#content-wrap .gdt-form-actions .gdt-submit,#content-wrap .gdt-form-actions button,#content-wrap .gdt-form-actions input[type=submit] { min-height:42px; padding:0 16px; border:1px solid rgba(210,225,255,.36); border-radius:13px; background:linear-gradient(135deg,#7b66d5,#4a90c7); box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 10px 20px rgba(43,61,143,.25); color:#fff; font-size:12px; font-weight:850; letter-spacing:.01em; }
@media (max-width:767.98px) { .lup-sidebar-mobile-toggle { display:grid; place-items:center; margin-left:auto; width:36px; height:36px; padding:0; border:1px solid rgba(191,215,255,.24); border-radius:12px; background:rgba(103,118,199,.19); color:#eff5ff; }.lup-sidebar-mobile-toggle > span { display:grid; gap:4px; width:17px; }.lup-sidebar-mobile-toggle i { display:block; height:2px; border-radius:99px; background:linear-gradient(90deg,#f8f5ff,#9ad8ff); box-shadow:0 1px 6px rgba(184,222,255,.46); }.lup-sidebar-mobile-toggle i:nth-child(2) { width:11px; justify-self:end; } }
@keyframes lup-admin-menu-breathe { 0%,100% { opacity:.42; transform:scale(.92); } 50% { opacity:1; transform:scale(1.08); } }
@keyframes lup-admin-menu-return { 0% { transform:translateX(15px) scale(.90); filter:brightness(1.32); } 65% { transform:translateX(-3px) scale(1.04); } 100% { transform:none; } }
/* The back office remains fully visible while its navigation is used. */
#lup-sidebar-backdrop { display:none; }
@media (max-width:767.98px) { body.sb-sidenav-toggled #sidebar-wrapper { position:fixed; z-index:1040; } body:not(.sb-sidenav-toggled) #sidebar-wrapper { pointer-events:none; } }

/* Motion belongs to the environment, not to the content: the page suggests a
 * route through a city while headlines and actions remain steady and readable. */
.lup-arrival-hero::before { content:''; position:absolute; z-index:-2; inset:-20%; background:radial-gradient(circle at 70% 31%,rgba(116,207,255,.20),transparent 14%),radial-gradient(circle at 53% 75%,rgba(163,107,249,.17),transparent 22%); filter:blur(4px); animation:lup-arrival-ambient 14s ease-in-out infinite alternate; pointer-events:none; }.lup-arrival-hero::after { content:''; position:absolute; z-index:-1; top:42%; right:-5%; width:66%; height:88px; border-top:1px solid rgba(172,210,255,.20); border-radius:50%; transform:rotate(-12deg); box-shadow:0 -1px 17px rgba(91,183,255,.10); pointer-events:none; }
.lup-arrival-grid { animation:lup-arrival-grid-drift 24s linear infinite; }.lup-arrival-horizon::after { content:''; position:absolute; top:-2px; width:56px; height:4px; border-radius:999px; background:#b9e7ff; box-shadow:0 0 9px #81cfff,0 0 23px rgba(118,161,255,.65); animation:lup-arrival-scan 6.5s ease-in-out infinite; }.lup-arrival-brand,.lup-arrival-copy { animation:lup-arrival-enter .75s cubic-bezier(.2,.8,.2,1) both; }.lup-arrival-copy { animation-delay:.10s; }.lup-arrival-location { animation:lup-arrival-marker 4.2s ease-in-out infinite; }.lup-arrival-actions a { transition:transform .22s ease,color .22s ease,filter .22s ease,box-shadow .22s ease; }.lup-arrival-actions a:hover { transform:translateY(-3px); color:#fff; }.lup-arrival-actions a:first-child:hover { filter:brightness(1.10); box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 19px 30px rgba(43,100,183,.38); }
.lup-arrival-journey li { transition:background .25s ease,transform .25s ease; }.lup-arrival-journey li:hover { transform:translateY(-4px); background:linear-gradient(145deg,rgba(126,109,227,.10),transparent); }.lup-arrival-journey li:hover > i { box-shadow:0 0 0 6px rgba(130,166,243,.09),0 10px 20px rgba(0,0,0,.18); }.lup-arrival-principles-list > div { transition:background .22s ease,transform .22s ease; }.lup-arrival-principles-list > div:hover { transform:translateX(5px); background:linear-gradient(100deg,rgba(100,118,206,.23),rgba(24,28,43,.91)); }
@supports (animation-timeline:view()) { .lup-arrival-journey header,.lup-arrival-journey li,.lup-arrival-principles-copy,.lup-arrival-principles-list { animation:lup-arrival-reveal linear both; animation-timeline:view(); animation-range:entry 10% cover 34%; }.lup-arrival-journey li:nth-child(2) { animation-range:entry 16% cover 39%; }.lup-arrival-journey li:nth-child(3) { animation-range:entry 22% cover 44%; }.lup-arrival-principles-list { animation-range:entry 11% cover 36%; } }
@keyframes lup-arrival-ambient { from { transform:translate3d(-2%,1%,0) scale(.96); } to { transform:translate3d(3%,-2%,0) scale(1.07); } } @keyframes lup-arrival-grid-drift { to { background-position:84px 42px; } } @keyframes lup-arrival-scan { 0%,100% { left:5%; opacity:0; } 15%,75% { opacity:.95; } 88% { left:91%; opacity:0; } } @keyframes lup-arrival-enter { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:none; } } @keyframes lup-arrival-marker { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-8px); } } @keyframes lup-arrival-reveal { from { opacity:.1; transform:translateY(35px); } 60%,to { opacity:1; transform:none; } }

/* New location: a deliberate workshop for accurate real-world places, not a
 * generic CRUD form. Generated field names and form behaviour stay untouched. */
.lup-room-composer { max-width:1000px; margin:7px auto 28px; overflow:hidden; border:1px solid rgba(191,205,255,.15); border-radius:24px; background:radial-gradient(circle at 88% 0,rgba(100,143,239,.22),transparent 29%),radial-gradient(circle at 0 100%,rgba(147,100,224,.16),transparent 33%),linear-gradient(145deg,#1c2032,#11131d 69%); box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 20px 42px rgba(0,0,0,.20); }
.lup-room-composer-head { position:relative; display:flex; align-items:center; gap:16px; min-height:112px; padding:25px 160px 19px 27px; overflow:hidden; }.lup-room-composer-head::before { content:''; position:absolute; top:-93px; right:-42px; width:220px; height:220px; border:1px solid rgba(181,201,255,.22); border-radius:50%; box-shadow:0 0 0 24px rgba(126,112,232,.055),0 0 0 55px rgba(75,153,219,.035); }.lup-room-composer-head::after { content:'\f3c5'; position:absolute; top:32px; right:46px; color:rgba(190,213,255,.78); font-family:'Font Awesome 5 Free'; font-size:52px; font-weight:900; filter:drop-shadow(0 11px 12px rgba(0,0,0,.28)); }.lup-room-composer-head > * { position:relative; z-index:1; }.lup-room-composer-mark { display:grid; place-items:center; flex:0 0 55px; width:55px; height:55px; border:1px solid rgba(205,221,255,.38); border-radius:18px 18px 18px 7px; background:linear-gradient(145deg,#7e9ce8,#805fc1); box-shadow:0 10px 0 rgba(48,43,104,.38),0 18px 29px rgba(0,0,0,.22),inset 0 2px 1px rgba(255,255,255,.38); color:#fff; font-size:23px; }.lup-room-composer-head small { color:#b9b4dd; font-size:9px; font-weight:850; letter-spacing:.16em; }.lup-room-composer-head h1 { margin:4px 0 6px; padding:0; color:#fbfaff; font-size:25px; letter-spacing:-.025em; }.lup-room-composer-head p { max-width:620px; margin:0; color:#c1bdcf; font-size:12px; line-height:1.5; }
.lup-room-composer-guide { display:flex; flex-wrap:wrap; gap:8px; padding:0 27px 20px; border-bottom:1px solid rgba(255,255,255,.08); }.lup-room-composer-guide span { display:inline-flex; align-items:center; gap:6px; padding:7px 10px; border:1px solid rgba(143,220,183,.20); border-radius:999px; background:rgba(77,176,128,.10); color:#c9f2da; font-size:10px; font-weight:750; }.lup-room-composer-guide i { color:#78ddaa; }
.lup-room-composer-form { padding:25px 27px 30px; }.lup-room-composer-form form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 17px; }.lup-room-composer-form .form-group { min-width:0; margin:0; padding:13px 14px 11px; border:1px solid rgba(220,226,255,.10); border-radius:15px; background:rgba(255,255,255,.035); box-shadow:inset 0 1px 0 rgba(255,255,255,.055); }.lup-room-composer-form .form-group:focus-within { border-color:rgba(151,183,255,.44); background:linear-gradient(135deg,rgba(119,124,219,.16),rgba(74,155,211,.06)); box-shadow:0 0 0 3px rgba(125,150,240,.08),inset 0 1px 0 rgba(255,255,255,.08); }.lup-room-composer-form label { margin-bottom:7px; color:#bdb8d2; font-size:10px; font-weight:820; letter-spacing:.075em; text-transform:uppercase; }.lup-room-composer-form input,.lup-room-composer-form select,.lup-room-composer-form textarea { min-height:39px; border:1px solid rgba(202,211,255,.16); border-radius:10px; background:rgba(10,13,23,.50); box-shadow:none; color:#f4f2fa; }.lup-room-composer-form textarea { min-height:92px; }.lup-room-composer-form .form-group:has(textarea),.lup-room-composer-form .form-group:has(input[type=file]),.lup-room-composer-form .form-group:has(input[name*=address_street]) { grid-column:1 / -1; }.lup-room-composer-form .form-actions,.lup-room-composer-form .gdo-form-actions { grid-column:1 / -1; display:flex; justify-content:flex-end; margin-top:5px; padding-top:18px; border-top:1px solid rgba(255,255,255,.09); }.lup-room-composer-form .btn-primary,.lup-room-composer-form button[type=submit] { min-width:190px; min-height:45px; border:1px solid rgba(226,222,255,.36); border-radius:13px; background:linear-gradient(135deg,#8067d8,#4d95ce); box-shadow:0 9px 20px rgba(66,77,170,.28),inset 0 1px 0 rgba(255,255,255,.30); color:#fff; font-size:12px; font-weight:850; letter-spacing:.025em; }
.lup-room-composer-form .gdt-form,.lup-room-composer-form .gdt-form-inner,.lup-room-composer-form .gdt-container,.lup-room-composer-form .gdt-input,.lup-room-composer-form fieldset { background:transparent; color:#f4f2fa; }
.lup-room-composer-form form,
.lup-room-composer-form form .gdt-form-inner,
.lup-room-composer-form form .gdt-form-fields,
.lup-room-composer-form form .gdt-form-text.card-header { background:transparent; }
.lup-room-composer-form form .gdt-form-fields { padding:0; }
.lup-room-composer-form input[type=file] { padding:5px; color:#d7d3e4; }
.lup-room-composer-form input[type=file]::file-selector-button { margin-right:9px; padding:6px 10px; border:1px solid rgba(181,197,255,.27); border-radius:8px; background:linear-gradient(135deg,#6d72c8,#4a83b9); color:#fff; font:700 11px inherit; cursor:pointer; }
.lup-room-composer-form .gdt-form-text.card-header { display:none; }
.lup-room-composer-form .gdt-form-actions,.lup-room-composer-form .gdt-actions { grid-column:1 / -1; display:flex; justify-content:flex-end; align-self:auto; margin-top:0; padding-top:8px; border-top:0; }.lup-room-composer-form .gdt-submit,.lup-room-composer-form button[name=create] { position:relative; min-width:255px; min-height:52px; padding:0 21px; border:1px solid rgba(232,227,255,.42); border-radius:16px; background:linear-gradient(130deg,#805fd8,#4b93ca); box-shadow:0 14px 25px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.34); color:transparent; font-size:0; transition:transform .16s ease,filter .16s ease,box-shadow .16s ease; }.lup-room-composer-form .gdt-submit::before,.lup-room-composer-form button[name=create]::before { content:none; display:none; }.lup-room-composer-form .gdt-submit::after,.lup-room-composer-form button[name=create]::after { content:'Location veröffentlichen  →'; color:#fff; font-size:12px; font-weight:850; letter-spacing:.025em; }.lup-room-composer-form .gdt-submit:hover,.lup-room-composer-form button[name=create]:hover { transform:translateY(-2px); filter:brightness(1.08); box-shadow:0 17px 30px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.34); }
.lup-room-composer-form .gdt-form-actions,.lup-room-composer-form .gdt-actions { min-height:0; height:auto; margin:0; padding:8px 0 0; border:0; background:transparent; box-shadow:none; }
.lup-room-composer-form .gdt-submit > i { display:none; }
.lup-room-composer-form .gdt-submit > input[type=submit] { position:absolute; inset:0; z-index:2; width:100%; height:100%; margin:0; padding:0; border:0; outline:0; background:transparent; box-shadow:none; color:transparent; font-size:0; cursor:pointer; }
.lup-room-composer-form .gdt-form-inner { padding-bottom:0; }
.lup-room-composer-form .gdt-form-actions.card-footer,.lup-room-composer-form .gdt-form-actions .gdt-menu { margin:0; padding:8px 0 0; }
#content-wrap > .gdt-form,#content-wrap > form,#content-wrap > .gdt-container { border:1px solid rgba(191,205,255,.15); background:linear-gradient(145deg,#1c2032,#11131d 69%); color:#f4f2fa; }
@media (max-width:720px) { .lup-room-composer-head,.lup-room-composer-form { padding-right:15px; padding-left:15px; }.lup-room-composer-guide { padding-right:15px; padding-left:15px; }.lup-room-composer-form form { grid-template-columns:1fr; }.lup-room-composer-form .form-group { grid-column:auto; }.lup-room-composer-head h1 { font-size:21px; } }

/* The identity group intentionally sits lower; the QR badge anchors the card bottom. */
.lup-room-statistics .statistics-room { padding-top:28px; }.lup-room-statistics .statistics-room .lup-stat-category-icon { margin-top:70px; }

/* Larger, centred location identity cards: the icon carries the category at a glance. */
.lup-room-statistics .statistics-room { min-height:432px; padding:30px 14px 13px; text-align:center; }.lup-stat-category-icon { width:104px; height:104px; margin:0 auto 10px; border-radius:32px 32px 32px 11px; font-size:48px; box-shadow:0 10px 0 rgba(39,34,91,.38),0 23px 32px rgba(0,0,0,.29),inset 0 2px 1px rgba(255,255,255,.45); }.lup-stat-category-name { margin-top:7px; font-size:10px; letter-spacing:.15em; }.lup-room-statistics .statistics-room h2 { margin:9px 0 0; font-size:18px; font-weight:800; }.lup-stat-qrcode { display:flex; justify-content:center; margin-top:auto; padding-top:20px; }.lup-stat-qrcode img { width:120px; height:120px; padding:7px; border:1px solid rgba(200,212,255,.26); border-radius:16px; background:#fff; box-shadow:0 11px 20px rgba(0,0,0,.24); }

/* Rebuild the old utility sidebar as a compact LinkUUp control deck. */
#sidebar-wrapper { padding-top:10px; background:radial-gradient(circle at 50% 0,rgba(113,101,219,.21),transparent 25%),linear-gradient(180deg,#1c2030,#11141e 91%); } #sidebar-wrapper #leftnav { padding:7px 9px 16px; } #sidebar-wrapper #leftnav .list-group-item { position:relative; overflow:hidden; margin:5px 0; padding:0; border:1px solid rgba(207,218,255,.08); border-radius:13px; background:rgba(255,255,255,.025); box-shadow:inset 0 1px 0 rgba(255,255,255,.045); } #sidebar-wrapper #leftnav .list-group-item::before { content:''; position:absolute; top:9px; bottom:9px; left:0; width:2px; border-radius:2px; background:transparent; transition:background .16s ease,box-shadow .16s ease; } #sidebar-wrapper #leftnav .list-group-item a { display:flex; align-items:center; min-height:43px; padding:10px 10px; color:#d8d5e7; font-size:12px; font-weight:740; letter-spacing:.01em; } #sidebar-wrapper #leftnav .list-group-item a i { display:grid; place-items:center; width:28px; height:28px; margin-right:9px; border:1px solid rgba(195,205,255,.18); border-radius:9px 9px 9px 4px; background:linear-gradient(145deg,rgba(115,143,231,.34),rgba(109,76,180,.26)); color:#bdd5ff; font-size:13px; box-shadow:inset 0 1px 0 rgba(255,255,255,.18); } #sidebar-wrapper #leftnav .list-group-item:hover { transform:translateX(2px); border-color:rgba(176,165,255,.24); background:linear-gradient(90deg,rgba(114,96,213,.25),rgba(60,141,204,.10)); } #sidebar-wrapper #leftnav .list-group-item:hover::before { background:#a792ff; box-shadow:0 0 11px #9e8aff; }

/* Last-resort focus and hover guard: the old Bootstrap sidebar must never turn white. */
#sidebar-wrapper #leftnav > li.list-group-item:has(a:hover),
#sidebar-wrapper #leftnav > li.list-group-item:has(a:focus),
#sidebar-wrapper #leftnav > li.list-group-item:focus-within {
  background:#1d2235;
  background-image:none;
  color:#f4f2fb;
  box-shadow:inset 2px 0 0 rgba(167,146,255,.72);
}
#sidebar-wrapper #leftnav > li.list-group-item:has(a:hover) *,
#sidebar-wrapper #leftnav > li.list-group-item:has(a:focus) *,
#sidebar-wrapper #leftnav > li.list-group-item:focus-within * { color:#f4f2fb; }

/* Category management table: remove the inherited bright framework strip. */
#content-wrap .gdt-table { overflow:auto; min-width:0; border:1px solid rgba(191,204,255,.17); border-radius:18px; background:#1b1e2b; box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 14px 30px rgba(0,0,0,.18); }
#content-wrap .gdt-table > h3 { margin:0; padding:16px 20px; border-bottom:1px solid rgba(191,204,255,.14); background:linear-gradient(110deg,rgba(109,89,202,.45),rgba(57,132,190,.24)); color:#f9f8ff; font-size:17px; font-weight:800; letter-spacing:-.015em; }
#content-wrap .gdt-table > :first-child:not(table) { margin:0; padding:16px 20px; border-bottom:1px solid rgba(191,204,255,.14); background:linear-gradient(110deg,rgba(109,89,202,.45),rgba(57,132,190,.24)); color:#f9f8ff; font-size:17px; font-weight:800; letter-spacing:-.015em; }
#content-wrap .gdt-table .gdo-table-caption,#content-wrap .gdt-table .gdo-table-caption h3 { margin:0; padding:0; border:0; background:transparent; color:inherit; font:inherit; }
#content-wrap .gdt-table table { width:100%; margin:0; border-collapse:separate; border-spacing:0; background:transparent; }
#content-wrap .gdt-table thead,#content-wrap .gdt-table thead tr,#content-wrap .gdt-table thead th { background:rgba(29,33,48,.98); color:#bdb6f5; }
#content-wrap .gdt-table thead th { padding:13px 11px 12px; border-top:0; border-right:1px solid rgba(191,204,255,.09); border-bottom:1px solid rgba(191,204,255,.16); font-size:10px; font-weight:900; letter-spacing:.11em; text-transform:uppercase; }
#content-wrap .gdt-table thead th:first-child { width:68px; text-align:center; } #content-wrap .gdt-table thead th:last-child { border-right:0; }
#content-wrap .gdt-table th input,#content-wrap .gdt-table th select { min-height:31px; margin-top:7px; padding:5px 8px; border:1px solid rgba(171,183,255,.23); border-radius:9px; background:rgba(9,12,22,.70); color:#f7f5ff; font-size:12px; outline:0; }
#content-wrap .gdt-table th input,#content-wrap .gdt-table th select { display:block; box-sizing:border-box; width:100%; margin:9px 0 0; }
#content-wrap .gdt-table th input:focus,#content-wrap .gdt-table th select:focus { border-color:rgba(160,143,255,.72); box-shadow:0 0 0 3px rgba(143,119,244,.16); }
#content-wrap .gdt-table tbody tr,#content-wrap .gdt-table tbody tr:nth-child(odd),#content-wrap .gdt-table tbody tr:nth-child(even) { background:rgba(255,255,255,.018); color:#edeaf7; }
#content-wrap .gdt-table tbody tr:nth-child(even) { background:rgba(255,255,255,.043); } #content-wrap .gdt-table tbody tr:hover { background:linear-gradient(90deg,rgba(119,99,215,.20),rgba(69,142,204,.10)); }
#content-wrap .gdt-table td { padding:11px; border-right:1px solid rgba(191,204,255,.07); border-bottom:1px solid rgba(191,204,255,.08); color:#ece9f5; } #content-wrap .gdt-table td:last-child { border-right:0; }
#content-wrap .gdt-table .gdt-editbutton a { display:grid; place-items:center; width:31px; height:31px; margin:auto; border:1px solid rgba(184,196,255,.20); border-radius:10px; background:rgba(116,97,211,.16); color:#d5ceff; text-decoration:none; }

/* Calm navy version for category administration – no bright blue or red slabs. */
#content-wrap > h1,#content-wrap > h2,#content-wrap > h3 { padding:15px 20px; border:1px solid rgba(173,194,234,.15); border-radius:17px 17px 0 0; background:linear-gradient(110deg,#1d2941,#172033 72%); color:#f5f7ff; box-shadow:inset 0 1px 0 rgba(255,255,255,.07); }
#content-wrap .gdt-table { border-color:rgba(173,194,234,.16); background:#161d2c; } #content-wrap .gdt-table > :first-child:not(table),#content-wrap .gdt-table .gdo-table-caption { background:linear-gradient(110deg,#1d2941,#172033 72%); } #content-wrap .gdt-table .gdo-table-caption { padding:16px 20px; color:#f5f7ff; }
#content-wrap .gdt-table thead,#content-wrap .gdt-table thead tr,#content-wrap .gdt-table thead th { background:#202a3d; color:#b9cbec; } #content-wrap .gdt-table th input,#content-wrap .gdt-table th select { border-color:rgba(144,172,218,.25); background:#111827; }
#content-wrap .gdt-table tbody tr,#content-wrap .gdt-table tbody tr:nth-child(odd) { background:#181f2e; } #content-wrap .gdt-table tbody tr:nth-child(even) { background:#1c2434; } #content-wrap .gdt-table tbody tr:hover { background:linear-gradient(90deg,rgba(71,112,173,.28),rgba(42,93,145,.13)); }
#content-wrap .gdt-table th.gdt-color { display:table-cell; min-width:0; padding:13px 11px 12px; border-radius:0; background:#202a3d; box-shadow:none; color:#b9cbec; }
#content-wrap .gdt-table td.gdt-color { display:table-cell; min-width:0; padding:11px; border-radius:0; background:inherit; box-shadow:none; color:#fff; font-weight:inherit; }
#content-wrap .gdt-table td.gdt-color > .gdt-color { display:inline-flex; align-items:center; min-width:92px; padding:5px 9px; border:1px solid rgba(219,161,169,.34); border-radius:9px; background:#fff; box-shadow:none; color:#000; font-weight:750; }

/* Avatar gallery: replace the old bright activity feed with a profile wall. */
#content-wrap .gdt-accordeon { max-width:980px; margin:0 auto 20px; overflow:hidden; border:1px solid rgba(174,194,239,.17); border-radius:16px; background:linear-gradient(110deg,#1b2942,#151d2c); box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 26px rgba(0,0,0,.16); }
#content-wrap .gdt-accordeon .title { min-height:52px; padding:15px 18px; background:linear-gradient(110deg,#1d2a43,#172033); color:#dbe8ff; font-weight:760; } #content-wrap .gdt-accordeon .title a { color:#a9caff; } #content-wrap .gdt-accordeon .collapse-content { padding:14px 18px 17px; border-top:1px solid rgba(184,203,245,.12); background:#151d2c; }
#content-wrap .gdt-accordeon > * { border:0; background:transparent; color:#eaeaff; } #content-wrap .gdt-accordeon label { color:#bccdec; } #content-wrap .gdt-accordeon input,#content-wrap .gdt-accordeon select { background:#0f1624; }
#content-wrap .gdt-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(205px,1fr)); gap:14px; max-width:980px; margin:0 auto 35px; }
#content-wrap .gdt-list-title { grid-column:1/-1; margin:0 0 3px; }.gdt-list-title h3 { margin:0; color:#f7f6ff; font-size:24px; font-weight:820; letter-spacing:-.035em; }
#content-wrap .gdt-list-item { position:relative; min-height:176px; overflow:hidden; padding:20px 17px 16px; border:1px solid rgba(183,199,244,.15); border-radius:19px; background:radial-gradient(circle at 88% 4%,rgba(100,161,224,.18),transparent 40%),linear-gradient(145deg,#202b42,#151b2a 76%); box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 12px 24px rgba(0,0,0,.16); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
#content-wrap .gdt-list-item::after { content:''; position:absolute; right:-30px; bottom:-40px; width:105px; height:105px; border:1px solid rgba(146,186,255,.14); border-radius:50%; box-shadow:0 0 0 16px rgba(123,107,223,.035); }.gdt-list-item:hover { transform:translateY(-5px); border-color:rgba(170,205,255,.37); box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 19px 32px rgba(0,0,0,.25); }
#content-wrap .gdt-list-item .gdt-li-upper { position:relative; z-index:1; display:flex; align-items:center; gap:13px; }.gdt-list-item .gdt-li-avatar,.gdt-list-item .gdt-li-avatar a { display:block; flex:0 0 auto; }.gdt-list-item .gdt-li-avatar .gdo-avatar { display:block; overflow:hidden; width:64px; height:64px; border:2px solid rgba(196,220,255,.50); border-radius:50%; background:#273e61; box-shadow:0 0 0 4px rgba(107,137,224,.16),0 9px 17px rgba(0,0,0,.23); }.gdt-list-item .gdt-li-avatar .gdo-avatar img { width:64px; height:64px; padding:2px; border-radius:50%; object-fit:cover; }
#content-wrap .gdt-list-item .gdt-li-title-texts { min-width:0; }.gdt-list-item .gdt-li-title { color:#fff; font-size:14px; font-weight:800; }.gdt-list-item .gdt-li-subtitle { color:#bec7db; font-size:12px; line-height:1.45; }.gdt-list-item .gdt-li-subtitle a { color:#9bceff; font-weight:780; text-decoration:none; }.gdt-list-item .gdt-li-subtitle h5 { margin:0; color:inherit; font:inherit; }
/* #content-wrap .gdt-list-item .gdt-li-subtitle::after { content:'Avatar in LinkUUp'; display:block; margin-top:9px; color:#9288cb; font-size:9px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; } */

@media (max-width:620px) { #content-wrap .gdt-list { grid-template-columns:1fr; }.gdt-list-title h3 { font-size:21px; } }

/* Avatar gallery on phones: compact records, subtle decorative circles. */
@media (max-width:620px) {
  #content-wrap .gdt-list-item:not(:has(.gdt-li-content)) { min-height:112px; padding:14px 13px; border-radius:16px; }
  #content-wrap .gdt-list-item:not(:has(.gdt-li-content))::after { right:-18px; bottom:-23px; width:66px; height:66px; box-shadow:0 0 0 10px rgba(123,107,223,.03); }
  #content-wrap .gdt-list-item:not(:has(.gdt-li-content)) .gdt-li-upper { gap:10px; }
  #content-wrap .gdt-list-item:not(:has(.gdt-li-content)) .gdt-li-avatar .gdo-avatar,
  #content-wrap .gdt-list-item:not(:has(.gdt-li-content)) .gdt-li-avatar .gdo-avatar img { width:46px; height:46px; }
  #content-wrap .gdt-list-item:not(:has(.gdt-li-content)) .gdt-li-title { font-size:13px; }
  #content-wrap .gdt-list-item:not(:has(.gdt-li-content)) .gdt-li-subtitle { font-size:10px; }
  #content-wrap .gdt-list-item:has(.gdt-li-content) { min-height:158px; padding:14px 13px; border-radius:16px; }
  #content-wrap .gdt-list-item:has(.gdt-li-content)::after { right:-18px; bottom:-23px; width:68px; height:68px; box-shadow:0 0 0 10px rgba(123,107,223,.03); }
  #content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-avatar .gdo-avatar,
  #content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-avatar .gdo-avatar img { width:44px; height:44px; }
  #content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-main { margin-top:9px; }
  #content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-lower { right:12px; bottom:10px; left:12px; }
}

/* Gallery cards: on phones the avatar must never compete with a title or actions. */
@media (max-width:620px) {
  #content-wrap .gdt-list {
    grid-template-columns:minmax(0,1fr);
    gap:11px;
    margin-bottom:24px;
  }
  #content-wrap .gdt-list .gdt-list-item {
    min-height:0;
    padding:14px;
    border-radius:16px;
    background:linear-gradient(145deg,rgba(31,43,66,.98),rgba(18,24,39,.98));
  }
  #content-wrap .gdt-list .gdt-list-item .gdt-li-upper {
    display:flex;
    align-items:flex-start;
    gap:11px;
    min-width:0;
  }
  #content-wrap .gdt-list .gdt-list-item .gdt-li-avatar,
  #content-wrap .gdt-list .gdt-list-item .gdt-li-avatar a { flex:0 0 48px; width:48px; }
  #content-wrap .gdt-list .gdt-list-item .gdt-li-avatar .gdo-avatar,
  #content-wrap .gdt-list .gdt-list-item .gdt-li-avatar .gdo-avatar img {
    width:48px;
    height:48px;
  }
  #content-wrap .gdt-list .gdt-list-item .gdt-li-title-texts {
    flex:1 1 auto;
    min-width:0;
  }
  #content-wrap .gdt-list .gdt-list-item .gdt-li-title,
  #content-wrap .gdt-list .gdt-list-item .gdt-li-title * {
    display:block;
    overflow-wrap:anywhere;
    word-break:normal;
    color:#f4f7ff;
    font-size:13px;
    line-height:1.24;
  }
  #content-wrap .gdt-list .gdt-list-item .gdt-li-subtitle,
  #content-wrap .gdt-list .gdt-list-item .gdt-li-subtitle * {
    overflow-wrap:anywhere;
    color:#becae1;
    font-size:11px;
    line-height:1.38;
  }
  #content-wrap .gdt-list .gdt-list-item .gdt-li-lower,
  #content-wrap .gdt-list .gdt-list-item:has(.gdt-li-content) .gdt-li-lower {
    position:static;
    margin-top:12px;
  }
  #content-wrap .gdt-list .gdt-list-item .gdt-li-actions { flex-wrap:wrap; gap:10px; }
  #content-wrap .gdt-list .gdt-list-item .gdt-li-actions a { font-size:11px; line-height:1.25; }
}

/* The gallery feed has no room for oversized ornamental circles on phones. */
@media (max-width:620px) {
  #content-wrap .gdt-list .gdt-list-item { min-height:104px; }
  #content-wrap .gdt-list .gdt-list-item:has(.gdt-li-content) { min-height:132px; }
  #content-wrap .gdt-list .gdt-list-item::after { display:none; }
}

/* Gallery entries contain legacy headline widgets; keep those compact inside cards. */
#content-wrap .gdt-list-item:has(.gdt-li-content) { min-height:220px; padding:17px 15px 14px; }
#content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-upper { align-items:flex-start; gap:10px; }
#content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-avatar .gdo-avatar,#content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-avatar .gdo-avatar img { width:50px; height:50px; }
#content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-title,#content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-title * { margin:0; color:#f4f5ff; font-size:16px; font-weight:800; line-height:1.2; word-break:break-word; }
#content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-subtitle,#content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-subtitle * { color:#bac5da; font-size:11px; font-weight:600; line-height:1.35; }
#content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-main { position:relative; z-index:1; margin-top:13px; }.gdt-list-item:has(.gdt-li-content) .gdt-li-content,.gdt-list-item:has(.gdt-li-content) .gdt-li-content * { max-height:42px; overflow:hidden; color:#9faec7; font-size:11px; line-height:1.4; }
#content-wrap .gdt-list-item:has(.gdt-li-content) .gdt-li-lower { position:absolute; z-index:2; right:13px; bottom:12px; left:13px; }.gdt-list-item:has(.gdt-li-content) .gdt-li-actions { display:flex; gap:9px; }.gdt-list-item:has(.gdt-li-content) .gdt-li-actions a { color:#9dceff; font-size:11px; font-weight:750; text-decoration:none; }

/* News feed: a restrained editorial surface that matches the LinkUUp back office. */
#content-wrap .gdt-bar.horizontal { display:flex; align-items:center; justify-content:space-between; gap:8px; max-width:980px; margin:0 auto 16px; padding:9px; border:1px solid rgba(177,196,240,.16); border-radius:17px; background:linear-gradient(110deg,#1c2942,#171c2b); box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 12px 25px rgba(0,0,0,.15); }
#content-wrap .gdt-bar.horizontal .gdt-link { margin:0; }.gdt-bar.horizontal .gdt-link a { display:inline-flex; align-items:center; gap:8px; min-height:36px; padding:8px 12px; border:1px solid transparent; border-radius:11px; color:#c8c4e8; font-size:12px; font-weight:760; text-decoration:none; }.gdt-bar.horizontal .gdt-link a:hover { border-color:rgba(172,197,246,.26); background:rgba(99,130,204,.16); color:#fff; }.gdt-bar.horizontal .gdt-link:last-child a { background:linear-gradient(135deg,rgba(116,95,213,.45),rgba(62,131,190,.30)); color:#fff; }
#content-wrap .gdt-accordeon,#content-wrap .gdo-accordeon { max-width:980px; margin-right:auto; margin-left:auto; border-color:rgba(174,194,239,.17); background:#172033; } #content-wrap .gdt-accordeon .title,#content-wrap .gdo-accordeon .title,#content-wrap .gdt-accordeon .collapse-bar,#content-wrap .gdo-accordeon .collapse-bar { background:#1b2840; color:#dbe8ff; } #content-wrap .gdt-accordeon .collapse-content,#content-wrap .gdo-accordeon .collapse-content { background:#151d2c; }
#content-wrap .gdt-card { max-width:980px; margin:0 auto 14px; padding:22px; border:1px solid rgba(184,201,242,.16); border-radius:19px; background:radial-gradient(circle at 92% 5%,rgba(96,159,223,.16),transparent 29%),linear-gradient(145deg,#202a40,#161d2c 76%); box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 13px 27px rgba(0,0,0,.16); }.gdt-card .gdt-card-title,.gdt-card h1,.gdt-card h2,.gdt-card h3 { color:#f7f6ff; font-size:21px; font-weight:820; letter-spacing:-.025em; }.gdt-card .gdt-card-content,.gdt-card .gdt-card-content p { color:#c7c8d7; font-size:13px; line-height:1.65; }.gdt-card .gdt-card-actions a { color:#a6d5ff; }
@media (max-width:650px) { #content-wrap .gdt-bar.horizontal { align-items:stretch; flex-direction:column; }.gdt-bar.horizontal .gdt-link a { width:100%; }.gdt-bar.horizontal .gdt-link:last-child a { justify-content:center; } }

/* Final contact surface lock: no legacy white panel may leak through. */
#content-wrap .lup-contact-composer #form.lup-contact-desk,
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-form-inner,
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-form-fields { background:#111625; }
#content-wrap .lup-contact-composer #form.lup-contact-desk { border:0; box-shadow:none; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-container { background:transparent; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .inner-form-input,
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-editor-text { border-color:rgba(174,203,255,.17); background:#191f31; box-shadow:inset 0 1px 0 rgba(255,255,255,.045); }
#content-wrap .lup-contact-composer #form.lup-contact-desk input,
#content-wrap .lup-contact-composer #form.lup-contact-desk textarea { color:#f3f5ff; caret-color:#a9dcff; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .wysiwyg.gdt-editor-text,
#content-wrap .lup-contact-composer #form.lup-contact-desk .wysiwyg.gdt-editor-text textarea,
#content-wrap .lup-contact-composer #form.lup-contact-desk textarea[name="cmsg_message"] { background:#191f31; color:#f3f5ff; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-form-actions,
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-actions { background:transparent; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-form-actions.card-footer,
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-form-actions.card-footer .gdt-menu { border-color:rgba(188,208,255,.10); background:#111625; box-shadow:none; }

/* The contact message is a simple message surface, not a bright markdown IDE. */
#content-wrap .lup-contact-composer #cmsg_message.wysiwyg.editormd { min-height:190px; height:190px; border:1px solid rgba(174,203,255,.17); border-radius:14px; background:#191f31; overflow:hidden; }
#content-wrap .lup-contact-composer #cmsg_message.wysiwyg.editormd,
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror,
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-scroll { outline:0; box-shadow:none; }
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-gutters,
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-gutter-filler { border-color:rgba(174,203,255,.10); background:#151b2a; }
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-gutters,
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-gutter-wrapper,
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-linenumber,
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-measure { display:none; }
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-sizer { margin-left:0; }
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-activeline-background,
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-linebackground { background:transparent; }
#content-wrap .lup-contact-composer #cmsg_message .editormd-toolbar,
#content-wrap .lup-contact-composer #cmsg_message .editormd-toolbar-container { display:none; height:0; min-height:0; }
#content-wrap .lup-contact-composer #cmsg_message:focus-within { border-color:rgba(132,191,255,.52); box-shadow:0 0 0 3px rgba(111,165,245,.12); }
#content-wrap .lup-contact-composer #cmsg_message .editormd-toolbar { display:none; }
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror,
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-scroll,
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-sizer,
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-lines { height:100%; background:#191f31; color:#f3f5ff; }
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror { width:100%; margin-top:0; border:0; font:14px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror pre,
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-line { color:#f3f5ff; }
#content-wrap .lup-contact-composer #cmsg_message .CodeMirror-cursor { border-left-color:#a9dcff; }
#content-wrap .lup-contact-composer #cmsg_message .editormd-preview,
#content-wrap .lup-contact-composer #cmsg_message .editormd-mask,
#content-wrap .lup-contact-composer #cmsg_message .editormd-preview-close-btn { display:none; }

/* Contact::Form is rendered by the core form theme and has no app wrapper.
 * Target the message editor itself as well, otherwise editor.md leaves the
 * actual CodeMirror input at its default one-line half-width geometry. */
#content-wrap #cmsg_message.wysiwyg.editormd { min-height:190px; height:190px; border:1px solid rgba(174,203,255,.17); border-radius:14px; background:#191f31; overflow:hidden; }
#content-wrap #cmsg_message .editormd-toolbar,
#content-wrap #cmsg_message .editormd-toolbar-container,
#content-wrap #cmsg_message .editormd-preview,
#content-wrap #cmsg_message .editormd-mask,
#content-wrap #cmsg_message .editormd-preview-close-btn { display:none; }
#content-wrap #cmsg_message .CodeMirror,
#content-wrap #cmsg_message .CodeMirror-scroll,
#content-wrap #cmsg_message .CodeMirror-sizer,
#content-wrap #cmsg_message .CodeMirror-lines { width:100%; height:100%; background:#191f31; color:#f3f5ff; }
#content-wrap #cmsg_message .CodeMirror { margin-top:0; border:0; font:14px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
#content-wrap #cmsg_message .CodeMirror-gutters,
#content-wrap #cmsg_message .CodeMirror-gutter-wrapper,
#content-wrap #cmsg_message .CodeMirror-linenumber,
#content-wrap #cmsg_message .CodeMirror-measure { display:none; }
#content-wrap #cmsg_message .CodeMirror-sizer { margin-left:0; }
#content-wrap #cmsg_message .CodeMirror pre,
#content-wrap #cmsg_message .CodeMirror-line { color:#f3f5ff; }
#content-wrap #cmsg_message:focus-within { border-color:rgba(132,191,255,.52); box-shadow:0 0 0 3px rgba(111,165,245,.12); }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-captcha { display:flex; align-items:center; gap:11px; margin:23px 0 0; padding:13px; border:1px solid rgba(174,203,255,.12); border-radius:13px; background:#151b2a; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-captcha label { margin:0; color:#bfcce6; font-size:10px; font-weight:800; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-captcha > div { display:flex; align-items:center; gap:8px; min-width:0; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-captcha input { width:70px; border:1px solid rgba(172,201,255,.19); border-radius:9px; background:#0e1422; color:#f5f7ff; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdo-captcha-img { max-width:150px; height:34px; border-radius:8px; cursor:pointer; filter:brightness(.88) contrast(1.12); }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-form-actions { display:flex; justify-content:flex-end; padding:20px 26px 25px; border-top:1px solid rgba(188,208,255,.10); background:linear-gradient(90deg,transparent,rgba(92,118,204,.11)); }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-submit { display:flex; align-items:center; justify-content:center; gap:9px; min-width:180px; min-height:46px; border:1px solid rgba(218,230,255,.37); border-radius:13px; background:linear-gradient(135deg,#6f99e4,#7554c2); box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 11px 21px rgba(62,76,179,.28); color:#fff; transition:transform .16s ease,filter .16s ease; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-submit:hover { transform:translateY(-2px); filter:brightness(1.08); }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-submit input[type=submit] { padding:0; border:0; background:transparent; color:#fff; font-size:12px; font-weight:850; letter-spacing:.025em; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-submit > .gdo-icon { display:none; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-submit { position:relative; padding:0; overflow:hidden; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-submit::before { content:'\f1d8'; font-family:'Font Awesome 5 Free'; font-size:12px; font-weight:900; pointer-events:none; }
#content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-submit input[type=submit] { width:auto; min-width:0; height:44px; margin:0; border-radius:0; box-shadow:none; appearance:none; -webkit-appearance:none; }

/* Profile switch in the top right: replace the remaining Bootstrap grey circle. */
#page-content-wrapper > .navbar .navbar-toggler { display:grid; place-items:center; width:39px; height:39px; margin-left:8px; padding:0; border:1px solid rgba(187,207,255,.17); border-radius:50%; background:rgba(255,255,255,.035); box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 6px 14px rgba(0,0,0,.18); }
#page-content-wrapper > .navbar .navbar-toggler:hover,#page-content-wrapper > .navbar .navbar-toggler:focus { border-color:rgba(167,204,255,.42); background:rgba(101,130,210,.14); box-shadow:0 0 0 3px rgba(116,165,255,.10),inset 0 1px 0 rgba(255,255,255,.14); }
#page-content-wrapper > .navbar .lup-account-toggle-icon { display:grid; place-items:center; width:25px; height:25px; border:1px solid rgba(218,232,255,.23); border-radius:50%; background:radial-gradient(circle at 35% 27%,rgba(179,215,255,.25),rgba(54,68,129,.16) 67%); box-shadow:none; color:#d6eaff; font-size:10px; }

@media (max-width:520px) { #content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-captcha { align-items:flex-start; flex-direction:column; } #content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-form-actions { padding:17px 18px 20px; } #content-wrap .lup-contact-composer #form.lup-contact-desk .gdt-submit { width:100%; } }

/* Small-screen account actions: labels always win over legacy nested icons. */
@media (max-width:767.98px) {
  #navbarSupportedContent .gdt-profile-link,
  #navbarSupportedContent .gdt-profile-link * {
    position:static;
    float:none;
    transform:none;
  }
  #navbarSupportedContent .gdt-profile-link .gdt-avatar,
  #navbarSupportedContent .gdt-profile-link .gdo-avatar,
  #navbarSupportedContent .gdt-profile-link .gdo-avatar * { display:none; }
  #navbarSupportedContent .gdt-profile-link::before {
    content:'KONTO';
    flex:0 0 auto;
    padding:4px 6px;
    border:1px solid rgba(172,201,255,.25);
    border-radius:7px;
    background:rgba(91,128,211,.18);
    color:#bed8ff;
    font-size:7px;
    font-weight:900;
    letter-spacing:.1em;
  }
  #navbarSupportedContent .gdt-profile-link .gdt-nickname {
    display:block;
    max-width:none;
    overflow:hidden;
    color:#f4f6ff;
    font-size:11px;
    font-weight:830;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  #navbarSupportedContent .gdt-menu .gdt-link > a .gdo-icon,
  #navbarSupportedContent .gdt-menu .gdt-link > a .gdo-icon * {
    display:none;
  }
  #navbarSupportedContent .gdt-menu .gdt-link > a::before {
    content:'';
    width:7px;
    height:7px;
    flex:0 0 7px;
    border:1px solid rgba(194,217,255,.42);
    border-radius:50%;
    background:linear-gradient(135deg,#a9d8ff,#8570d9);
    box-shadow:0 0 8px rgba(132,175,255,.38);
  }
}

/* The account control language is global: every backend page receives the
 * same compact, meaningful icons instead of a mixture of dots and fallbacks. */
#page-content-wrapper #navbarSupportedContent.show .gdt-link > a > .gdo-icon { display:none; }
#page-content-wrapper #navbarSupportedContent.show .gdt-link > a::before {
  display:grid;
  place-items:center;
  flex:0 0 20px;
  width:20px;
  height:20px;
  margin:0;
  padding:0;
  border:1px solid rgba(183,216,255,.24);
  border-radius:7px 7px 7px 3px;
  background:linear-gradient(145deg,rgba(113,153,224,.24),rgba(113,82,187,.18));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 0 10px rgba(125,171,240,.09);
  color:#c9e5ff;
  font-family:'Font Awesome 5 Free';
  font-size:9px;
  font-weight:900;
  line-height:1;
}
#page-content-wrapper #navbarSupportedContent.show a[href*='user;profile']::before { content:'\f2bd'; }
#page-content-wrapper #navbarSupportedContent.show a[href*='account;']::before { content:'\f013'; }
#page-content-wrapper #navbarSupportedContent.show a[href*='admin;']::before { content:'\f3ed'; }
#page-content-wrapper #navbarSupportedContent.show a[href*='friends;']::before { content:'\f0c0'; }
#page-content-wrapper #navbarSupportedContent.show a[href*='gallery;']::before { content:'\f03e'; }
#page-content-wrapper #navbarSupportedContent.show a[href*='login;logout']::before { content:'\f2f5'; }
#page-content-wrapper #navbarSupportedContent.show a[href*='linkuup;main']::before { content:'\f0c0'; }

/* Login and registration always provide a calm, visible way back to LinkUUp. */
.login-form .gdt-link a[href*="linkuup;welcome"],
#content-wrap .gdt-form .gdt-link a[href*="linkuup;welcome"] {
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  margin-top:10px;
  padding:9px 13px;
  border:1px solid rgba(166,197,255,.24);
  border-radius:11px;
  background:rgba(40,52,91,.48);
  color:#dbe8ff;
  font-size:12px;
  font-weight:760;
  text-decoration:none;
}
.login-form .gdt-link a[href*="linkuup;welcome"]:hover,
#content-wrap .gdt-form .gdt-link a[href*="linkuup;welcome"]:hover {
  border-color:rgba(174,211,255,.50);
  background:rgba(78,101,174,.42);
  color:#fff;
}

.login-form .button-google-auth {
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:40px;
	margin-top:10px;
	border:1px solid rgba(166,197,255,.24);
	border-radius:11px;
	background:rgba(40,52,91,.48);
	color:#dbe8ff;
	font-size:12px;
	font-weight:760;
	text-decoration:none;
}
.login-form .button-google-auth:hover {
	border-color:rgba(174,211,255,.50);
	background:rgba(78,101,174,.42);
	color:#fff;
}

/* Authentication is part of the back office, not a leftover white Bootstrap card. */
#content-wrap > #form.gdt-form.gdt-form-compact { /*width:min(100%,520px);*/ margin:clamp(26px,8vh,105px) auto 40px; overflow:hidden; border:1px solid rgba(166,193,255,.19); border-radius:22px; background:radial-gradient(circle at 88% 4%,rgba(106,143,232,.24),transparent 34%),linear-gradient(145deg,#1d2942,#111725 75%); box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 24px 52px rgba(0,0,0,.34); color:#eaf0ff; }
#content-wrap > #form.gdt-form.gdt-form-compact .card-header { padding:24px 27px 18px; border:0; border-bottom:1px solid rgba(178,203,255,.12); background:transparent; }
#content-wrap > #form.gdt-form.gdt-form-compact .card-header::before { content:'LINKUUP · ZUGANG'; display:block; margin-bottom:8px; color:#9fcaff; font-size:9px; font-weight:900; letter-spacing:.16em; }
#content-wrap > #form.gdt-form.gdt-form-compact .card-title { margin:0; color:#f7f8ff; font-size:24px; font-weight:830; letter-spacing:-.035em; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-inner { padding:22px 27px 5px; background:transparent; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-container { margin:0 0 16px; }
#content-wrap > #form.gdt-form.gdt-form-compact .form-label label { color:#c7d3eb; font-size:11px; font-weight:780; }
#content-wrap > #form.gdt-form.gdt-form-compact .inner-form-input { border:0; background:transparent; }
#content-wrap > #form.gdt-form.gdt-form-compact input.form-control,#content-wrap > #form.gdt-form.gdt-form-compact select.form-select { min-height:45px; border:1px solid rgba(167,195,255,.20); border-radius:12px; background:#111a2b; color:#f4f7ff; box-shadow:inset 0 1px 0 rgba(255,255,255,.045); }
#content-wrap > #form.gdt-form.gdt-form-compact input.form-control:-webkit-autofill,
#content-wrap > #form.gdt-form.gdt-form-compact input.form-control:-webkit-autofill:hover,
#content-wrap > #form.gdt-form.gdt-form-compact input.form-control:-webkit-autofill:focus {
  -webkit-text-fill-color:#f4f7ff;
  caret-color:#cce4ff;
  -webkit-box-shadow:0 0 0 1000px #111a2b inset;
  box-shadow:0 0 0 1000px #111a2b inset;
  transition:background-color 9999s ease-out 0s;
}
#content-wrap > #form.gdt-form.gdt-form-compact input.form-control:focus,#content-wrap > #form.gdt-form.gdt-form-compact select.form-select:focus { outline:0; border-color:rgba(157,142,238,.62); box-shadow:0 0 0 2px rgba(136,112,221,.12),inset 0 1px 0 rgba(255,255,255,.055); }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-actions.card-footer { padding:18px 27px 25px; border:0; background:linear-gradient(90deg,rgba(36,49,85,.20),rgba(92,75,171,.13)); }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-actions .gdt-menu { display:flex; align-items:center; gap:10px; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-submit { min-height:43px; padding:0 16px; border:1px solid rgba(210,225,255,.32); border-radius:12px; background:linear-gradient(135deg,#647fe1,#7a56c3); box-shadow:inset 0 1px 0 rgba(255,255,255,.27),0 10px 18px rgba(50,63,157,.24); }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-submit > .gdo-icon { display:none; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-submit::after { content:'→'; margin-left:9px; color:#eef5ff; font-size:16px; font-weight:500; line-height:1; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-submit input { color:#fff; font-size:12px; font-weight:800; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-button a { color:#a9d4ff; font-size:11px; text-decoration:none; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-link { flex-basis:100%; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-link a[href*="linkuup;welcome"] { justify-content:center; width:100%; margin-top:5px; border-color:rgba(174,199,255,.16); background:rgba(255,255,255,.045); color:#cddcff; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-link a[href*="linkuup;welcome"]::before { content:'←'; font-size:15px; line-height:1; }
@media (max-width:520px) { #content-wrap > #form.gdt-form.gdt-form-compact { width:calc(100% - 22px); margin-top:25px; border-radius:18px; } #content-wrap > #form.gdt-form.gdt-form-compact .card-header,#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-inner,#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-actions.card-footer { padding-right:19px; padding-left:19px; } }

/* Frameworks may paint the inner HTML form white; lock every login layer to navy. */
#content-wrap > #form.gdt-form.gdt-form-compact > form,
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-fields,
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-inner,
#content-wrap > #form.gdt-form.gdt-form-compact .card-header,
#content-wrap > #form.gdt-form.gdt-form-compact .card-footer {
  background-color:#141c2d;
  background-image:radial-gradient(circle at 88% 3%,rgba(100,143,226,.18),transparent 32%);
}

/* Back-office baseline: old Bootstrap surfaces cannot reintroduce white panels. */
#content-wrap .card:not(.lup-contact-hero):not(.lup-contact-composer),
#content-wrap .card-body,
#content-wrap .card-header,
#content-wrap .card-footer,
#content-wrap .gdt-panel,
#content-wrap .gdo-panel {
  width: 100%;
  border-color:rgba(176,199,248,.15);
  background-color:#151d2c;
  color:#e7ebf7;
}
#content-wrap .card-header { background:linear-gradient(110deg,#202c45,#182033 76%); }
#content-wrap .table-responsive { border:1px solid rgba(176,199,248,.13); border-radius:15px; background:#151d2c; }
#content-wrap .table-responsive table { color:#e7ebf7; }
#content-wrap .dropdown-menu { border:1px solid rgba(181,204,255,.18); border-radius:13px; background:#161f31; box-shadow:0 14px 28px rgba(0,0,0,.28); }
#content-wrap .dropdown-item { color:#dfe8fc; }
#content-wrap .dropdown-item:hover,#content-wrap .dropdown-item:focus { background:rgba(104,126,207,.25); color:#fff; }
#content-wrap input::placeholder,#content-wrap textarea::placeholder { color:#8f9ab5; opacity:1; }
#content-wrap input:-webkit-autofill,
#content-wrap input:-webkit-autofill:hover,
#content-wrap input:-webkit-autofill:focus,
#content-wrap textarea:-webkit-autofill,
#content-wrap select:-webkit-autofill {
  -webkit-text-fill-color:#f3f6ff;
  caret-color:#b9d9ff;
  -webkit-box-shadow:0 0 0 1000px #0f1624 inset;
  box-shadow:0 0 0 1000px #0f1624 inset;
  transition:background-color 9999s ease-out 0s;
}
#content-wrap input:focus,#content-wrap textarea:focus,#content-wrap select:focus {
  background-color:#101827;
  color:#f3f6ff;
}

/* Account accordions contain nested legacy forms; keep every inner layer dark. */
#content-wrap .accordion .gdt-form,
#content-wrap .accordion .gdt-form > form,
#content-wrap .accordion .gdt-form .gdt-form-inner,
#content-wrap .accordion .gdt-form .gdt-form-fields,
#content-wrap .gdt-accordeon .gdt-form,
#content-wrap .gdt-accordeon .gdt-form > form,
#content-wrap .gdt-accordeon .gdt-form .gdt-form-inner,
#content-wrap .gdt-accordeon .gdt-form .gdt-form-fields {
  background:#131c2c;
  color:#eef3ff;
}
#content-wrap .accordion .gdt-form .gdt-form-text.card-header,
#content-wrap .gdt-accordeon .gdt-form .gdt-form-text.card-header {
  border-color:rgba(182,207,255,.14);
  background:linear-gradient(110deg,#1e2b44,#172034 76%);
  color:#f5f7ff;
}
#content-wrap .accordion .gdt-form .gdt-form-actions.card-footer,
#content-wrap .gdt-accordeon .gdt-form .gdt-form-actions.card-footer {
  border-color:rgba(182,207,255,.12);
  background:linear-gradient(90deg,#141d2d,rgba(69,76,142,.20));
}
/* One visual button only: the native submit remains the click target. */
#content-wrap .accordion .gdt-form-actions .gdt-submit,
#content-wrap .gdt-accordeon .gdt-form-actions .gdt-submit { display:flex; align-items:center; justify-content:center; min-height:43px; padding:0 16px; overflow:hidden; }
#content-wrap .accordion .gdt-form-actions .gdt-submit > .gdo-icon,
#content-wrap .gdt-accordeon .gdt-form-actions .gdt-submit > .gdo-icon { display:none; }
#content-wrap .accordion .gdt-form-actions .gdt-submit input[type=submit],
#content-wrap .gdt-accordeon .gdt-form-actions .gdt-submit input[type=submit] { min-height:43px; margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; color:#fff; font-size:11px; }

/* A consistent keyboard/mouse focus signal: visible, but never the harsh Bootstrap blue. */
#page-content-wrapper a:focus-visible,
#page-content-wrapper button:focus-visible,
#page-content-wrapper .btn:focus-visible,
#page-content-wrapper .form-control:focus-visible,
#page-content-wrapper .form-select:focus-visible {
  outline:1px solid rgba(160,143,234,.62);
  outline-offset:2px;
  box-shadow:0 0 0 3px rgba(136,112,221,.10);
}

/* The sidebar uses one eased movement on every size instead of a jump. */
#sidebar-wrapper { transition:margin-left .34s cubic-bezier(.22,.78,.24,1),box-shadow .34s ease,visibility .01s linear; }
#page-content-wrapper { transition:filter .24s ease; }
@media (max-width:767.98px) {
  body.sb-sidenav-toggled #sidebar-wrapper { box-shadow:18px 0 42px rgba(0,0,0,.36); }
  #sidebar-wrapper .list-group-item a { touch-action:manipulation; }
}

/* Profile access is a clear, softly lit control instead of a small grey dot. */

/* Welcome header: one continuous LinkUUp surface.  The legacy Bootstrap bar
 * used a nearly black fallback and a grey raster icon; both broke the arrival
 * page's visual language. */
body:has(.lup-arrival) #page-content-wrapper > .navbar {
  border-bottom:1px solid rgba(168,203,255,.13);
  background:linear-gradient(110deg,#202643 0%,#161b30 54%,#121521 100%);
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.025),0 10px 28px rgba(4,7,17,.16);
}
body:has(.lup-arrival) #page-content-wrapper > .navbar .navbar-toggler {
  border-color:rgba(145,203,255,.34);
  border-radius:13px 13px 13px 5px;
  background:linear-gradient(145deg,rgba(81,135,202,.62),rgba(91,67,167,.66));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.27),0 9px 20px rgba(27,49,114,.27),0 0 0 3px rgba(112,174,243,.07);
}
body:has(.lup-arrival) #page-content-wrapper > .navbar .navbar-toggler .navbar-toggler-icon {
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  background-image:none;
  filter:none;
}
body:has(.lup-arrival) #page-content-wrapper > .navbar .navbar-toggler .navbar-toggler-icon::after {
  content:'\f0c9';
  color:#e9f8ff;
  font:900 15px/1 'Font Awesome 5 Free';
  text-shadow:0 1px 3px rgba(7,16,47,.62),0 0 9px rgba(163,223,255,.42);
}
body:has(.lup-arrival) #page-content-wrapper > .navbar .lup-account-toggle-icon {
  border:1px solid rgba(150,204,255,.28);
  border-radius:11px 11px 11px 4px;
  background:linear-gradient(145deg,rgba(75,128,194,.45),rgba(86,62,153,.39));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 7px 17px rgba(12,25,70,.19);
  color:#e6f6ff;
}
body:has(.lup-arrival) #page-content-wrapper > .navbar .lup-account-toggle-icon i {
  color:#c9edff;
  filter:drop-shadow(0 1px 3px rgba(5,12,39,.55));
}
body:has(.lup-arrival) #sidebarToggle {
  width:43px;
  min-width:43px;
  height:43px;
  min-height:43px;
  margin-left:0;
  border:1px solid rgba(145,203,255,.30);
  border-radius:13px 13px 13px 5px;
  background:linear-gradient(145deg,rgba(78,130,198,.58),rgba(85,62,158,.63));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 9px 19px rgba(22,43,104,.24),0 0 0 3px rgba(112,174,243,.06);
}
body:has(.lup-arrival) #sidebarToggle::after { display:none; }
body:has(.lup-arrival) #sidebarToggle .lup-sidebar-glyph { width:18px; gap:4px; }
body:has(.lup-arrival) #sidebarToggle .lup-sidebar-glyph i {
  height:2px;
  background:linear-gradient(90deg,#f1fbff,#9cddff);
  box-shadow:0 0 7px rgba(144,213,255,.42);
}
body:has(.lup-arrival) #sidebarToggle:hover { transform:translateY(-1px); background:linear-gradient(145deg,rgba(94,153,219,.70),rgba(101,75,187,.68)); }
#page-content-wrapper > .navbar .navbar-toggler {
  width:46px;
  height:46px;
  margin-left:10px;
  border-color:rgba(174,213,255,.35);
  background:radial-gradient(circle at 34% 25%,rgba(176,220,255,.34),rgba(76,91,185,.52) 57%,rgba(67,43,132,.82));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.31),0 0 0 4px rgba(108,130,231,.07),0 0 20px rgba(107,155,255,.25),0 11px 21px rgba(25,29,82,.32);
}
#page-content-wrapper > .navbar .navbar-toggler:hover,
#page-content-wrapper > .navbar .navbar-toggler:focus {
  border-color:rgba(199,230,255,.65);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.44),0 0 0 4px rgba(112,157,255,.12),0 0 27px rgba(116,170,255,.42),0 12px 24px rgba(31,37,104,.37);
}
#page-content-wrapper > .navbar .lup-account-toggle-icon { width:28px; height:28px; border-color:rgba(225,240,255,.38); color:#f4fbff; font-size:12px; box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 0 11px rgba(154,207,255,.20); }

/* WebSocket client: a useful local diagnostics surface, not a raw developer stub. */
.lup-ws-console { width:min(100%,1050px); margin:14px auto 32px; overflow:hidden; border:1px solid rgba(176,204,255,.17); border-radius:24px; background:radial-gradient(circle at 93% 3%,rgba(89,166,244,.22),transparent 30%),radial-gradient(circle at 6% 98%,rgba(138,89,216,.15),transparent 27%),linear-gradient(145deg,#1b2438,#101520 76%); box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 20px 42px rgba(0,0,0,.21); }
.lup-ws-console-head { display:flex; align-items:center; gap:15px; min-height:129px; padding:26px 28px; border-bottom:1px solid rgba(185,210,255,.11); background:linear-gradient(110deg,rgba(77,122,202,.17),transparent 70%); }.lup-ws-console-mark { display:grid; place-items:center; width:54px; height:54px; border:1px solid rgba(204,224,255,.38); border-radius:18px 18px 18px 7px; background:linear-gradient(145deg,#61a9de,#705bd0); box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 10px 20px rgba(48,66,159,.26),0 0 19px rgba(105,195,255,.17); color:#fff; font-size:21px; }.lup-ws-console-kicker { display:block; margin-bottom:5px; color:#a5d8ff; font-size:9px; font-weight:900; letter-spacing:.16em; }.lup-ws-console h2 { margin:0; padding:0; border:0; background:transparent; color:#f7f8ff; font-size:25px; font-weight:830; letter-spacing:-.035em; box-shadow:none; }.lup-ws-console-head p { margin:5px 0 0; color:#bfc9da; font-size:12px; }.lup-ws-console-state { display:inline-flex; align-items:center; gap:7px; margin-left:auto; padding:8px 10px; border:1px solid rgba(111,222,169,.22); border-radius:999px; background:rgba(62,160,109,.10); color:#c7f3d7; font-size:10px; font-weight:800; white-space:nowrap; }.lup-ws-console-state i { width:7px; height:7px; border-radius:50%; background:#74dfa6; box-shadow:0 0 10px rgba(104,230,158,.75); }
.lup-ws-console-grid { display:grid; grid-template-columns:minmax(250px,.78fr) minmax(0,1.22fr); gap:16px; padding:22px 28px 28px; }.lup-ws-command-card,.lup-ws-stream-card { min-width:0; padding:18px; border:1px solid rgba(187,210,255,.12); border-radius:17px; background:rgba(7,11,20,.28); }.lup-ws-label,.lup-ws-command-card label { display:block; color:#afc7ee; font-size:10px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }.lup-ws-command-card label { margin:15px 0 7px; color:#ced9ed; font-size:9px; }.lup-ws-command-card input { width:100%; min-height:40px; padding:8px 2px; border:0; border-bottom:1px solid rgba(171,199,255,.23); border-radius:0; background:transparent; color:#f2f6ff; font-size:11px; box-shadow:none; }.lup-ws-command-card input:focus { border-bottom-color:rgba(149,188,255,.72); box-shadow:0 2px 0 rgba(103,142,231,.14); }.lup-ws-command-card input::placeholder { color:#8190aa; font-size:10px; }.lup-ws-command-card p { margin:14px 0 0; color:#9faec7; font-size:11px; line-height:1.55; }.lup-ws-stream-title { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:11px; color:#eaf1ff; font-size:12px; font-weight:800; }.lup-ws-stream-title small { color:#8d9ab5; font-size:9px; font-weight:750; }.lup-ws-stream-card pre { min-height:139px; margin:0; padding:15px; overflow:auto; border:1px solid rgba(168,198,255,.12); border-radius:12px; background:linear-gradient(145deg,#0d1422,#101827); color:#9fe6c2; font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace; box-shadow:inset 0 1px 0 rgba(255,255,255,.035); }
@media (max-width:680px) { .lup-ws-console-head { align-items:flex-start; flex-wrap:wrap; min-height:0; padding:22px 19px; }.lup-ws-console-mark { width:45px; height:45px; border-radius:15px 15px 15px 6px; font-size:18px; }.lup-ws-console h2 { font-size:21px; }.lup-ws-console-state { margin-left:60px; }.lup-ws-console-grid { grid-template-columns:1fr; padding:16px; } }

/* Rebuilt backend sign-in: one calm LinkUUp surface, with no Bootstrap-card
 * residue or visual noise. The form markup stays standard and accessible. */
body:has(#content-wrap > #form.gdt-form.gdt-form-compact) #gdo-pagewrap {
  min-height:100vh;
  background:radial-gradient(ellipse at 50% -10%,rgba(83,116,184,.24),transparent 47%),linear-gradient(145deg,#0c101a,#101629 58%,#0b101b);
}
body:has(#content-wrap > #form.gdt-form.gdt-form-compact) #content-wrap {
  display:flex;
  flex-direction: column;
  align-items:center;
  justify-content:center;
  min-height:calc(100vh - 116px);
  padding:34px 18px 64px;
}
#content-wrap > #form.gdt-form.gdt-form-compact {
  /*width:min(100%,460px);*/
  margin:0;
  border:1px solid rgba(186,208,255,.16);
  border-radius:20px;
  background:rgba(18,25,42,.82);
  box-shadow:0 28px 70px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.075);
  backdrop-filter:blur(18px);
}
#content-wrap > #form.gdt-form.gdt-form-compact .card-header,
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-inner,
#content-wrap .gdt-form .gdt-form-inner,
#content-wrap > #form.gdt-form.gdt-form-compact .card-footer {
  background:transparent;
  background-image:none;
}
#content-wrap > #form.gdt-form.gdt-form-compact .card-header { padding:30px 31px 17px; border-bottom:0; }
#content-wrap > #form.gdt-form.gdt-form-compact .card-header::before { content:'LINKUUP  /  VERWALTUNG'; margin-bottom:11px; color:#94c8f4; font-size:9px; font-weight:800; letter-spacing:.18em; }
#content-wrap > #form.gdt-form.gdt-form-compact .card-title { color:#f4f7ff; font-size:28px; font-weight:650; letter-spacing:-.045em; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-inner { padding:12px 31px 12px; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-container { margin-bottom:19px; }
#content-wrap > #form.gdt-form.gdt-form-compact .form-label label { color:#aebbd1; font-size:10px; font-weight:760; letter-spacing:.08em; text-transform:uppercase; }
#content-wrap > #form.gdt-form.gdt-form-compact input.form-control,
#content-wrap > #form.gdt-form.gdt-form-compact select.form-select {
  min-height:48px;
  border:1px solid rgba(185,209,255,.15);
  border-radius:11px;
  background:rgba(7,12,23,.43);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  color:#f1f5ff;
  font-size:14px;
}
#content-wrap > #form.gdt-form.gdt-form-compact input.form-control:focus,
#content-wrap > #form.gdt-form.gdt-form-compact select.form-select:focus {
  border-color:rgba(134,192,237,.66);
  box-shadow:0 0 0 3px rgba(99,158,217,.11),inset 0 1px 0 rgba(255,255,255,.04);
}
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-actions.card-footer { padding:13px 31px 29px; background:transparent; }
/*#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-actions .gdt-menu { display:grid; grid-template-columns:1fr auto; gap:12px; align-items:center; }*/
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-submit { display:flex; grid-column:1 / -1; grid-row:1; align-items:center; justify-content:center; min-height:48px; border:1px solid rgba(195,222,255,.31); border-radius:11px; background:linear-gradient(110deg,rgba(83,141,200,.92),rgba(105,91,188,.92)); box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 12px 25px rgba(42,72,142,.22); }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-submit::after { display:none; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-submit input { min-height:48px; color:#fff; font-size:13px; font-weight:780; letter-spacing:.01em; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-button { grid-column:1; grid-row:2; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-button a { color:#a8cbe8; font-size:11px; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-link { grid-column:2; grid-row:2; justify-self:end; flex-basis:auto; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-link a[href*="linkuup;welcome"] { width:auto; min-height:0; margin:0; padding:0; border:0; border-radius:0; background:transparent; color:#a8cbe8; font-size:11px; }
#content-wrap > #form.gdt-form.gdt-form-compact .gdt-link a[href*="linkuup;welcome"]::before { display:none; }
@media (max-width:520px) {
  body:has(#content-wrap > #form.gdt-form.gdt-form-compact) #content-wrap { align-items:flex-start; padding:28px 13px 44px; }
  #content-wrap > #form.gdt-form.gdt-form-compact { width:100%; border-radius:17px; }
  #content-wrap > #form.gdt-form.gdt-form-compact .card-header,#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-inner,#content-wrap > #form.gdt-form.gdt-form-compact .gdt-form-actions.card-footer { padding-right:22px; padding-left:22px; }
  #content-wrap > #form.gdt-form.gdt-form-compact .card-header { padding-top:25px; }
}

/* Phone welcome: the existing local-map layers must sit above the painted
 * background, but always below readable content and touch controls. */
@media (max-width:760px) {
  .lup-arrival-hero::before,
  .lup-arrival-hero::after,
  .lup-arrival-grid,
  .lup-arrival-horizon,
  .lup-arrival-constellation {
    z-index:0;
    pointer-events:none;
  }
  .lup-arrival-hero::before { opacity:.72; }
  .lup-arrival-grid { opacity:.24; }
  .lup-arrival-constellation { opacity:.48; }
  .lup-arrival-brand,
  .lup-arrival-copy,
  .lup-arrival-location { z-index:2; }
}

/* Phone composition: one compact reading column, with the live map held back
 * as atmosphere rather than competing with the headline. */
@media (max-width:760px) {
  .lup-arrival-hero { padding:27px 22px 38px; }
  .lup-arrival-copy { max-width:100%; margin-top:49px; }
  .lup-arrival-copy h1 { max-width:330px; font-size:clamp(40px,11.8vw,47px); line-height:.98; }
  .lup-arrival-copy > p:not(.lup-arrival-kicker) { max-width:310px; margin:19px 0 23px; }
  .lup-arrival-constellation { top:126px; right:-164px; width:346px; height:296px; opacity:.31; transform:scale(.72); transform-origin:top right; }
  .lup-arrival-mobile-arc-svg { display:none; }
  .lup-arrival-horizon { display:block; z-index:1; top:82%; right:-12%; width:118%; height:138px; overflow:visible; border-top:1px solid rgba(160,214,255,.40); border-radius:50% 50% 0 0; background:none; box-shadow:0 -1px 16px rgba(105,188,255,.18); opacity:.82; transform:none; }
  .lup-arrival-horizon::before { content:''; position:absolute; inset:0; display:block; width:auto; height:auto; border:0; border-radius:inherit; background:radial-gradient(circle at 13% 87%,rgba(184,229,255,.60) 0 1px,transparent 2px),radial-gradient(circle at 46% 15%,rgba(198,177,255,.56) 0 1.3px,transparent 2.3px),radial-gradient(circle at 80% 70%,rgba(162,221,255,.52) 0 1px,transparent 2px); box-shadow:none; opacity:.9; }
  .lup-arrival-horizon::after { display:block; top:116px; left:6%; width:9px; height:9px; border-radius:50%; background:#effbff; box-shadow:0 0 7px #c6efff,0 0 17px #89d6ff,0 0 31px rgba(127,145,255,.76); animation:lup-arrival-mobile-route-point 9.2s ease-in-out infinite; }
  .lup-arrival-grid { right:-22%; bottom:-9%; width:116%; height:45%; opacity:.30; transform:perspective(500px) rotateX(61deg) rotateZ(-12deg); }
}
@keyframes lup-arrival-mobile-route-point {
  0%,8% { left:6%; top:116px; opacity:0; transform:scale(.55); }
  17% { opacity:1; transform:scale(1); }
  49% { left:48%; top:8px; opacity:1; transform:scale(1.12); }
  81% { left:89%; top:88px; opacity:.94; transform:scale(.88); }
  100% { left:96%; top:121px; opacity:0; transform:scale(.55); }
}

/* Final mobile route: supersede the legacy fallback line above. */
@media (max-width:760px) {
  .lup-arrival-mobile-arc-svg { display:block; z-index:1; clip-path:inset(0 0 0 59%); opacity:.9; }
  .lup-arrival-horizon { display:none; }
}

/* The route was intentionally removed: this is a quiet living-map ambience,
 * kept to the empty background so copy never competes with decoration. */
.lup-arrival-ambient { position:absolute; z-index:0; top:17%; right:5%; width:min(39vw,470px); height:72%; overflow:hidden; pointer-events:none; }
.lup-arrival-ambient::before { content:''; position:absolute; top:16%; right:5%; width:72%; height:58%; border-radius:50%; background:radial-gradient(circle at 48% 46%,rgba(120,199,255,.15),rgba(109,111,237,.065) 28%,transparent 67%); filter:blur(2px); animation:lup-arrival-ambient-breathe 8.6s ease-in-out infinite; }
.lup-arrival-ambient::after { content:''; position:absolute; top:42%; right:35%; width:7px; height:7px; border-radius:50%; background:rgba(218,246,255,.82); box-shadow:0 0 12px rgba(130,206,255,.76),0 0 29px rgba(123,110,238,.28); animation:lup-arrival-ambient-signal 5.8s ease-in-out infinite; }
.lup-arrival-ambient i { position:absolute; top:41%; right:33%; width:78px; height:78px; border:1px solid rgba(154,210,255,.16); border-radius:50%; box-shadow:0 0 0 19px rgba(137,102,232,.025),0 0 0 42px rgba(106,178,245,.015); animation:lup-arrival-ambient-ring 5.8s ease-out infinite; }
@keyframes lup-arrival-ambient-breathe { 0%,100% { opacity:.55; transform:scale(.95); } 50% { opacity:1; transform:scale(1.06); } }
@keyframes lup-arrival-ambient-signal { 0%,100% { opacity:.42; transform:scale(.78); } 46% { opacity:1; transform:scale(1.25); } }
@keyframes lup-arrival-ambient-ring { 0% { opacity:.5; transform:scale(.70); } 72%,100% { opacity:0; transform:scale(1.45); } }
@media (max-width:760px) { .lup-arrival-ambient { top:14%; right:-16%; width:68%; height:57%; opacity:.72; } .lup-arrival-ambient::before { width:90%; height:72%; } .lup-arrival-ambient::after,.lup-arrival-ambient i,.lup-arrival-constellation-node { display:none; } }
@media (prefers-reduced-motion:reduce) { .lup-arrival-ambient::before,.lup-arrival-ambient::after,.lup-arrival-ambient i { animation:none; } }

/* Welcome journey: one calm visual language from first idea to principles. */
.lup-arrival-journey,
.lup-arrival-categories,
.lup-arrival-principles {
  position:relative;
  isolation:isolate;
  scroll-margin-top:18px;
}
.lup-arrival-categories {
  padding:86px clamp(26px,8vw,96px) 80px;
  border-top:1px solid rgba(182,206,255,.10);
  background:radial-gradient(circle at 84% 24%,rgba(82,151,223,.13),transparent 27%),radial-gradient(circle at 10% 83%,rgba(130,89,216,.09),transparent 31%),#111520;
}
.lup-arrival-categories::before,
#lup-arrival-principles::before {
  content:'';
  position:absolute;
  z-index:-1;
  top:0;
  right:12%;
  left:12%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(168,220,255,.72) 35%,rgba(182,148,255,.62) 65%,transparent);
  box-shadow:0 0 14px rgba(142,194,255,.23);
}
.lup-arrival-section-head,
.lup-arrival-journey > header { max-width:540px; }
.lup-arrival-section-head > p,
.lup-arrival-journey header > p,
.lup-arrival-principles-copy > p { margin:0 0 15px; color:#aebdfa; font-size:10px; font-weight:850; letter-spacing:.16em; }
.lup-arrival-section-head h2,
.lup-arrival-journey h2,
.lup-arrival-principles h2 { margin:0; color:#f6f7fc; font-size:clamp(31px,4vw,50px); font-weight:650; letter-spacing:-.052em; line-height:1.04; }
.lup-arrival-section-head > span,
.lup-arrival-journey header > span,
.lup-arrival-principles-copy > span { display:block; max-width:460px; margin-top:17px; color:#afb5c8; font-size:14px; line-height:1.6; }
.lup-arrival-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:43px; }
.lup-arrival-category { --lup-arrival-category:#9aaed4; display:grid; grid-template-columns:42px minmax(0,1fr); align-items:center; gap:13px; min-height:112px; padding:17px 15px; border:1px solid color-mix(in srgb,var(--lup-arrival-category) 30%,transparent); border-radius:17px; background:linear-gradient(145deg,color-mix(in srgb,var(--lup-arrival-category) 13%,rgba(43,53,81,.72)),rgba(19,24,38,.82)); box-shadow:inset 0 1px 0 rgba(255,255,255,.055); }
.lup-arrival-category > i { display:grid; place-items:center; width:42px; height:42px; border:1px solid color-mix(in srgb,var(--lup-arrival-category) 52%,rgba(255,255,255,.16)); border-radius:13px 13px 13px 5px; background:color-mix(in srgb,var(--lup-arrival-category) 19%,rgba(255,255,255,.03)); box-shadow:inset 0 1px 0 rgba(255,255,255,.16); color:var(--lup-arrival-category); font-size:17px; }
.lup-arrival-category span { display:grid; gap:4px; min-width:0; }
.lup-arrival-category b { color:#f3f5fb; font-size:13px; font-weight:720; line-height:1.18; }
.lup-arrival-category small { color:#aeb6c9; font-size:11px; line-height:1.36; }
.lup-arrival-category-bar { --lup-arrival-category:#ed9466; }.lup-arrival-category-cafe { --lup-arrival-category:#d2a576; }.lup-arrival-category-club { --lup-arrival-category:#df79db; }.lup-arrival-category-culture { --lup-arrival-category:#74b9e9; }.lup-arrival-category-education { --lup-arrival-category:#82cce0; }.lup-arrival-category-sport { --lup-arrival-category:#74c89b; }.lup-arrival-category-health { --lup-arrival-category:#ed8ba7; }.lup-arrival-category-city { --lup-arrival-category:#9aaed4; }
.lup-arrival-next,
.lup-arrival-actions a[href="#lup-arrival-journey"] { position:relative; z-index:5; pointer-events:auto; touch-action:manipulation; }
.lup-arrival-section-enter { animation:lup-arrival-section-enter .58s cubic-bezier(.2,.76,.2,1) both; }
@keyframes lup-arrival-section-enter { from { opacity:.72; transform:translateY(10px); } to { opacity:1; transform:none; } }
@media (max-width:900px) { .lup-arrival-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:760px) {
  .lup-arrival-categories { padding-top:62px; padding-bottom:58px; }
  .lup-arrival-category-grid { gap:9px; margin-top:31px; }
  .lup-arrival-category { grid-template-columns:36px minmax(0,1fr); gap:10px; min-height:92px; padding:12px 10px; border-radius:14px; }
  .lup-arrival-category > i { width:36px; height:36px; border-radius:11px 11px 11px 4px; font-size:14px; }
  .lup-arrival-category b { font-size:12px; }
  .lup-arrival-category small { font-size:10px; }
  .lup-arrival-section-head > span,.lup-arrival-journey header > span,.lup-arrival-principles-copy > span { font-size:13px; }
}
@media (prefers-reduced-motion:reduce) { .lup-arrival-section-enter { animation:none; } }

/* The explanatory blocks use the same quiet surface system as the categories.
 * This deliberately replaces the older, more card-heavy journey treatment. */
.lup-arrival-journey,
.lup-arrival-categories,
#lup-arrival-principles { background:radial-gradient(circle at 84% 24%,rgba(82,151,223,.11),transparent 27%),radial-gradient(circle at 10% 83%,rgba(130,89,216,.07),transparent 31%),#111520; }
.lup-arrival-journey { padding-top:86px; padding-bottom:80px; border-top:1px solid rgba(182,206,255,.10); }
.lup-arrival-journey ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:43px; }
.lup-arrival-journey ol::before { display:none; }
.lup-arrival-journey li,
.lup-arrival-journey li + li { min-height:150px; padding:18px 16px 17px 66px; border:1px solid rgba(185,207,255,.13); border-radius:17px; background:linear-gradient(145deg,rgba(43,53,81,.72),rgba(19,24,38,.82)); box-shadow:inset 0 1px 0 rgba(255,255,255,.055); }
.lup-arrival-journey li > span { top:14px; left:16px; width:auto; height:auto; border:0; background:transparent; color:#8f9ab2; font-size:9px; line-height:1; }
.lup-arrival-journey li > i { position:absolute; top:43px; left:16px; width:36px; height:36px; border:1px solid rgba(201,221,255,.22); border-radius:11px 11px 11px 4px; background:rgba(112,140,216,.18); box-shadow:inset 0 1px 0 rgba(255,255,255,.16); color:#c5e5ff; font-size:14px; }
.lup-arrival-journey h3 { margin:0 0 6px; color:#f3f5fb; font-size:16px; font-weight:720; line-height:1.16; }
.lup-arrival-journey li p { max-width:none; margin:0; color:#aeb6c9; font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.lup-arrival-principles { gap:9%; }
.lup-arrival-principles-list > div { min-height:74px; padding:13px 0; border-bottom:1px solid rgba(190,211,255,.12); background:transparent; }
.lup-arrival-principles-list i { width:36px; height:36px; border:1px solid rgba(201,221,255,.20); border-radius:11px 11px 11px 4px; background:rgba(112,140,216,.18); box-shadow:none; }
@media (max-width:760px) {
  .lup-arrival-journey,.lup-arrival-categories,#lup-arrival-principles { padding-top:62px; padding-bottom:58px; }
  .lup-arrival-journey ol { grid-template-columns:1fr; gap:9px; margin-top:31px; }
  .lup-arrival-journey li,.lup-arrival-journey li + li { min-height:104px; padding:16px 14px 14px 66px; border-radius:14px; }
  .lup-arrival-journey li > span { top:13px; left:14px; }
  .lup-arrival-journey li > i { top:38px; left:14px; width:36px; height:36px; }
  .lup-arrival-journey h3 { font-size:16px; }
  .lup-arrival-journey li p { font-size:11px; }
  .lup-arrival-category b,.lup-arrival-category small { overflow-wrap:anywhere; }
}

/* Compact category signposts on phone: one glance, no cramped labels. */
@media (max-width:760px) {
  .lup-arrival-category-grid { gap:7px; margin-top:25px; }
  .lup-arrival-category { grid-template-columns:30px minmax(0,1fr); gap:8px; min-height:76px; padding:11px; border-radius:13px; }
  .lup-arrival-category > i { width:31px; height:31px; border-radius:10px 10px 10px 4px; font-size:12px; }
  .lup-arrival-category span { gap:2px; }
  .lup-arrival-category b { max-width:100%; font-size:11px; line-height:1.12; white-space:nowrap; }
  .lup-arrival-category small { padding-right:3px; font-size:9px; line-height:1.24; overflow-wrap:anywhere; }
  .lup-arrival-categories .lup-arrival-next { margin-top:18px; }
}
@media (max-width:380px) {
  .lup-arrival-category { grid-template-columns:27px minmax(0,1fr); gap:6px; min-height:70px; padding:8px; }
  .lup-arrival-category > i { width:27px; height:27px; font-size:11px; }
  .lup-arrival-category b { font-size:10px; letter-spacing:-.01em; }
  .lup-arrival-category small { font-size:8.5px; }
}

/* The long explanations are available on demand, not permanently competing
 * with the welcome journey's headings and visual landmarks. */
.lup-arrival-more { position:relative; z-index:4; width:max-content; max-width:100%; margin-top:17px; }
.lup-arrival-more summary { display:inline-flex; align-items:center; gap:8px; min-height:28px; padding:0; color:#a9d9ff; font-size:11px; font-weight:760; cursor:pointer; list-style:none; }
.lup-arrival-more summary::-webkit-details-marker { display:none; }
.lup-arrival-more summary i { display:grid; place-items:center; width:17px; height:17px; border:1px solid rgba(166,214,255,.34); border-radius:50%; color:#cceeff; font-size:8px; transition:transform .2s ease,background .2s ease; }
.lup-arrival-more[open] summary i { background:rgba(102,161,239,.20); transform:rotate(45deg); }
.lup-arrival-more > p { max-width:470px; margin:8px 0 0; color:#b8bfd0; font-size:13px; line-height:1.55; }
.lup-arrival-copy .lup-arrival-more { margin:22px 0 24px; }
.lup-arrival-copy .lup-arrival-more > p { max-width:510px; }
.lup-arrival-copy > p:not(.lup-arrival-kicker) { display:none; }
@media (max-width:760px) {
  .lup-arrival-more { margin-top:13px; }
  .lup-arrival-more > p { max-width:min(100%,315px); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
  .lup-arrival-copy .lup-arrival-more { margin:15px 0 20px; }
  .lup-arrival-category b { white-space:normal; overflow-wrap:anywhere; }
  .lup-arrival-category small { overflow-wrap:anywhere; }
}

/* The final "Echte Orte. Klare Kontrolle." chapter is a single phone column.
 * Its optional explanation must never inherit the desktop grid width. */
@media (max-width:760px) {
  #lup-arrival-principles .lup-arrival-principles-copy,
  #lup-arrival-principles .lup-arrival-more,
  #lup-arrival-principles .lup-arrival-more > p {
    box-sizing:border-box;
    width:100%;
    max-width:100%;
    min-width:0;
  }
  #lup-arrival-principles .lup-arrival-more > p {
    display:block;
    padding-right:4px;
    white-space:normal;
    overflow-wrap:anywhere;
    word-break:normal;
  }
}

/* Arrival atmosphere: subtle map-light rather than decorative noise. */
.lup-arrival-journey,
.lup-arrival-categories,
#lup-arrival-principles { overflow:hidden; }
.lup-arrival-journey::before,
.lup-arrival-categories::after,
#lup-arrival-principles::after { content:''; position:absolute; z-index:0; pointer-events:none; opacity:.62; }
.lup-arrival-journey::before { top:-28%; right:-11%; width:58%; height:138%; background:radial-gradient(circle at 45% 38%,rgba(128,202,255,.15) 0 1px,transparent 2px),radial-gradient(circle at 68% 58%,rgba(188,147,255,.20) 0 1px,transparent 2px),repeating-radial-gradient(circle at 55% 50%,transparent 0 42px,rgba(146,188,255,.075) 43px 44px,transparent 45px 75px); transform:rotate(-13deg); }
.lup-arrival-categories::after { right:-5%; bottom:-15%; width:47%; height:70%; background:radial-gradient(circle at 25% 70%,rgba(155,121,238,.34) 0 1px,transparent 2px),radial-gradient(circle at 61% 38%,rgba(117,205,244,.35) 0 1px,transparent 2px),linear-gradient(139deg,transparent 48%,rgba(141,198,255,.12) 49% 49.4%,transparent 50%); background-size:auto,auto,100% 100%; }
#lup-arrival-principles::after { top:11%; left:-8%; width:42%; height:74%; background:radial-gradient(ellipse at center,rgba(109,184,244,.12),transparent 64%); filter:blur(1px); }
.lup-arrival-journey > *,
.lup-arrival-categories > *,
#lup-arrival-principles > * { position:relative; z-index:1; }
.lup-arrival-section-enter::after { content:''; position:absolute; z-index:2; top:0; right:8%; left:8%; height:1px; border-radius:999px; background:linear-gradient(90deg,transparent,#b9eaff 28%,#d3bcff 68%,transparent); box-shadow:0 0 14px rgba(145,205,255,.68),0 0 36px rgba(143,110,239,.30); animation:lup-arrival-section-sweep .82s cubic-bezier(.2,.75,.2,1) both; pointer-events:none; }
.lup-arrival-in-view::before,.lup-arrival-in-view::after { animation:lup-arrival-atmosphere 1.15s cubic-bezier(.2,.72,.2,1) both; }
@keyframes lup-arrival-section-sweep { from { opacity:0; transform:scaleX(.12); transform-origin:left; } 38% { opacity:1; } to { opacity:0; transform:scaleX(1); transform-origin:right; } }
@keyframes lup-arrival-atmosphere { from { opacity:0; transform:translateY(18px) scale(.95); } to { opacity:.62; transform:none; } }
@media (max-width:760px) {
  .lup-arrival-journey::before { right:-24%; width:76%; opacity:.50; }
  .lup-arrival-categories::after { right:-18%; width:63%; opacity:.45; }
  #lup-arrival-principles::after { width:62%; opacity:.46; }
}
@media (prefers-reduced-motion:reduce) { .lup-arrival-section-enter::after,.lup-arrival-in-view::before,.lup-arrival-in-view::after { animation:none; } }

/* Principles are deliberately calm: no oversized background object and no
 * competing animation. It is the clear, trustworthy end of the journey. */
#lup-arrival-principles { background:linear-gradient(145deg,#121725,#10131e 72%); }
#lup-arrival-principles::before,
#lup-arrival-principles::after,
#lup-arrival-principles.lup-arrival-section-enter::after { display:none; }
.lup-arrival-principles { align-items:start; gap:10%; }
.lup-arrival-principles-copy { padding-top:6px; }
.lup-arrival-principles-list { display:grid; gap:0; border-top:1px solid rgba(186,210,255,.15); }
.lup-arrival-principles-list > div { position:relative; min-height:82px; padding:16px 0; border-bottom:1px solid rgba(186,210,255,.13); }
.lup-arrival-principles-list > div::before { content:''; position:absolute; top:20px; bottom:20px; left:0; width:2px; border-radius:99px; background:linear-gradient(#9bcfff,rgba(155,207,255,.12)); box-shadow:0 0 11px rgba(118,188,255,.28); }
.lup-arrival-principles-list > div:nth-child(2)::before { background:linear-gradient(#c4adff,rgba(196,173,255,.12)); box-shadow:0 0 11px rgba(172,132,255,.24); }
.lup-arrival-principles-list > div:nth-child(3)::before { background:linear-gradient(#91dec4,rgba(145,222,196,.12)); box-shadow:0 0 11px rgba(107,211,174,.20); }
.lup-arrival-principles-list i { margin-left:14px; }
.lup-arrival-principles-list b { font-size:14px; }
.lup-arrival-principles-list small { max-width:270px; font-size:11px; line-height:1.42; }
@media (max-width:760px) {
  .lup-arrival-principles { gap:28px; }
  .lup-arrival-principles-list > div { min-height:74px; padding:13px 0; }
  .lup-arrival-principles-list > div::before { top:16px; bottom:16px; }
  .lup-arrival-principles-list i { margin-left:12px; }
}

/* One visual world for the complete welcome page. The earlier independent
 * beams, rings and section backgrounds made the journey feel fragmented. */
.lup-arrival { position:relative; isolation:isolate; overflow:visible; background:#0b101a; }
.lup-arrival::before,.lup-arrival::after { display:none; }
.lup-arrival-world { position:absolute; z-index:2; inset:0; min-height:100%; overflow:hidden; pointer-events:none; background:radial-gradient(ellipse at 18% 10%,rgba(71,145,223,.34),transparent 20%),radial-gradient(ellipse at 84% 31%,rgba(119,87,205,.29),transparent 19%),radial-gradient(ellipse at 47% 57%,rgba(57,153,174,.20),transparent 21%),radial-gradient(ellipse at 80% 84%,rgba(117,84,202,.20),transparent 21%),#0b101a; }
.lup-arrival-world::before { content:''; position:absolute; inset:-18%; background:radial-gradient(ellipse at 36% 42%,rgba(111,192,251,.10),transparent 19%),radial-gradient(ellipse at 68% 60%,rgba(166,122,244,.11),transparent 22%); filter:blur(18px); animation:lup-arrival-world-drift 18s ease-in-out infinite alternate; }
.lup-arrival-world::after { content:''; position:absolute; inset:0; opacity:.42; background-image:radial-gradient(circle at 13% 19%,rgba(202,236,255,.66) 0 1px,transparent 1.7px),radial-gradient(circle at 77% 14%,rgba(211,186,255,.58) 0 1px,transparent 1.7px),radial-gradient(circle at 87% 51%,rgba(158,222,255,.50) 0 .9px,transparent 1.6px),radial-gradient(circle at 20% 74%,rgba(205,219,255,.44) 0 .9px,transparent 1.6px); }
.lup-arrival-world-pin { position:absolute; top:24%; right:15%; display:grid; place-items:center; width:50px; height:50px; border:1px solid rgba(198,231,255,.44); border-radius:50% 50% 50% 12px; background:linear-gradient(145deg,rgba(108,188,236,.88),rgba(93,84,190,.84)); box-shadow:0 10px 0 rgba(36,44,111,.34),0 20px 34px rgba(0,0,0,.25),0 0 28px rgba(116,204,255,.34),inset 0 1px 0 rgba(255,255,255,.44); color:#fff; font-size:21px; opacity:.68; transform:rotate(-45deg); animation:lup-arrival-world-pin 5.8s ease-in-out infinite; }
.lup-arrival-world-pin::before { transform:rotate(45deg); }
.lup-arrival-world-dot { position:absolute; display:block; width:7px; height:7px; border-radius:50%; background:#d9f4ff; box-shadow:0 0 12px rgba(130,211,255,.92),0 0 27px rgba(123,110,238,.36); opacity:.8; }
.lup-arrival-world-dot.dot-one { top:16%; right:22%; animation:lup-arrival-world-dot 4.7s ease-in-out infinite; }.lup-arrival-world-dot.dot-two { top:43%; right:13%; width:5px; height:5px; background:#decaff; box-shadow:0 0 12px rgba(205,151,255,.84); animation:lup-arrival-world-dot 6.2s ease-in-out .8s infinite; }.lup-arrival-world-dot.dot-three { top:67%; left:17%; width:5px; height:5px; animation:lup-arrival-world-dot 5.5s ease-in-out 1.5s infinite; }.lup-arrival-world-dot.dot-four { top:86%; left:24%; width:4px; height:4px; background:#c8d7ff; animation:lup-arrival-world-dot 5.9s ease-in-out .3s infinite; }
.lup-arrival > section,.lup-arrival > footer { z-index:3; }
html:has(.lup-arrival) { background:#0b101a; }
body:has(.lup-arrival) { background:radial-gradient(ellipse at 16% 18%,rgba(56,132,221,.34),transparent 29%),radial-gradient(ellipse at 86% 32%,rgba(120,83,211,.30),transparent 31%),radial-gradient(ellipse at 47% 82%,rgba(49,157,177,.18),transparent 34%),#0b101a; background-attachment:fixed; }
body:has(.lup-arrival) #wrapper,
body:has(.lup-arrival) #page-content-wrapper,
body:has(.lup-arrival) #content-wrap { background:transparent; }
.lup-arrival-world { opacity:1; }
.lup-arrival > * { position:relative; z-index:1; }
.lup-arrival-hero,
.lup-arrival-journey,
.lup-arrival-categories,
#lup-arrival-principles { background:transparent; }
.lup-arrival-hero { border-bottom:1px solid rgba(177,202,255,.09); }
.lup-arrival-journey,
.lup-arrival-categories,
#lup-arrival-principles { border-top:0; }
.lup-arrival-footer { border-top:1px solid rgba(177,202,255,.09); background:transparent; }
html:has(.lup-arrival),
body:has(.lup-arrival),
body:has(.lup-arrival) #wrapper,
body:has(.lup-arrival) #page-content-wrapper { height:auto; min-height:100%; overflow-y:auto; overscroll-behavior-y:auto; }
.lup-arrival-grid,
.lup-arrival-horizon,
.lup-arrival-ambient,
.lup-arrival-constellation,
.lup-arrival-hero::before,
.lup-arrival-hero::after,
.lup-arrival-journey::before,
.lup-arrival-journey::after,
.lup-arrival-categories::before,
.lup-arrival-categories::after,
#lup-arrival-principles::before,
#lup-arrival-principles::after { display:none; }
.lup-arrival-section-enter::after { display:none; }
.lup-arrival-in-view::before,
.lup-arrival-in-view::after { animation:none; }
.lup-arrival-journey li,
.lup-arrival-journey li + li,
.lup-arrival-category { background:linear-gradient(145deg,rgba(30,40,62,.68),rgba(15,21,34,.78)); }
.lup-arrival-principles-list > div { background:rgba(17,24,38,.36); }
@keyframes lup-arrival-world-drift { from { transform:translate3d(-2%,-1%,0) scale(1); } to { transform:translate3d(3%,2%,0) scale(1.08); } }
@keyframes lup-arrival-world-pin { 0%,100% { transform:translateY(0) rotate(-45deg); } 50% { transform:translateY(-11px) rotate(-45deg); } }
@keyframes lup-arrival-world-dot { 0%,100% { opacity:.38; transform:scale(.72); } 48% { opacity:1; transform:scale(1.22); } }
@media (max-width:760px) { .lup-arrival-world-pin { top:24%; right:-4%; opacity:.46; transform:scale(.78) rotate(-45deg); } .lup-arrival-world-dot.dot-one { top:16%; right:14%; }.lup-arrival-world-dot.dot-two { top:43%; right:8%; }.lup-arrival-world-dot.dot-three { left:9%; }.lup-arrival-world-dot.dot-four { left:16%; } }
@media (prefers-reduced-motion:reduce) { .lup-arrival-world::before,.lup-arrival-world-pin,.lup-arrival-world-dot { animation:none; } }

/* A tangible map signal in the otherwise open arrival space. */
.lup-arrival-hero-map { position:absolute; z-index:1; top:17%; right:8%; width:248px; height:300px; pointer-events:none; opacity:.84; }
.lup-arrival-hero-map::before { content:''; position:absolute; top:17%; right:8%; width:194px; height:194px; border:1px solid rgba(156,207,255,.15); border-radius:50%; box-shadow:0 0 0 26px rgba(129,103,226,.035),0 0 0 61px rgba(82,167,231,.022); animation:lup-arrival-hero-breathe 7s ease-in-out infinite; }
.lup-arrival-hero-map::after { content:''; position:absolute; top:31%; right:24%; width:106px; height:106px; border-radius:50%; background:radial-gradient(circle,rgba(129,204,255,.22),rgba(112,99,223,.09) 36%,transparent 68%); filter:blur(4px); }
.lup-arrival-hero-pin { position:absolute; z-index:2; top:35%; right:37%; display:grid; place-items:center; width:54px; height:54px; border:1px solid rgba(215,237,255,.52); border-radius:50% 50% 50% 13px; background:linear-gradient(145deg,#78c7ef,#6b62c9); box-shadow:0 11px 0 rgba(44,48,128,.38),0 22px 33px rgba(0,0,0,.28),0 0 28px rgba(112,204,255,.46),inset 0 2px 1px rgba(255,255,255,.43); color:#fff; font-size:22px; transform:rotate(-45deg); animation:lup-arrival-hero-float 4.8s ease-in-out infinite; }
.lup-arrival-hero-pin i { transform:rotate(45deg); }
.lup-arrival-hero-dot { position:absolute; z-index:2; width:7px; height:7px; border-radius:50%; background:#ddf4ff; box-shadow:0 0 12px #a6e5ff,0 0 26px rgba(122,112,244,.42); animation:lup-arrival-hero-dot 4.9s ease-in-out infinite; }
.lup-arrival-hero-dot.dot-a { top:29%; right:16%; }.lup-arrival-hero-dot.dot-b { top:64%; right:68%; width:5px; height:5px; background:#e0c9ff; box-shadow:0 0 11px #d2a7ff; animation-delay:1.1s; }.lup-arrival-hero-dot.dot-c { top:74%; right:18%; width:4px; height:4px; animation-delay:2.2s; }
.lup-arrival-hero .lup-arrival-brand,.lup-arrival-hero .lup-arrival-copy { z-index:2; }
@keyframes lup-arrival-hero-float { 0%,100% { transform:translateY(0) rotate(-45deg); } 50% { transform:translateY(-10px) rotate(-45deg); } }
@keyframes lup-arrival-hero-breathe { 0%,100% { opacity:.48; transform:scale(.94); } 50% { opacity:.94; transform:scale(1.06); } }
@keyframes lup-arrival-hero-dot { 0%,100% { opacity:.42; transform:scale(.72); } 48% { opacity:1; transform:scale(1.25); } }
@media (max-width:760px) {
  .lup-arrival-hero-map { top:58px; right:-54px; width:228px; height:276px; opacity:.70; transform:scale(.82); transform-origin:top right; }
  .lup-arrival-hero-map::before { border-color:rgba(163,212,255,.20); }
}
@media (prefers-reduced-motion:reduce) { .lup-arrival-hero-map::before,.lup-arrival-hero-pin,.lup-arrival-hero-dot { animation:none; } }

/* One clear orientation marker: the hero keeps its quiet map field while the
 * single, right-hand pin carries the visual focus across the welcome journey. */
.lup-arrival-world-pin {
  top:19%;
  right:10%;
  z-index:3;
  width:58px;
  height:58px;
  opacity:.92;
  border-color:rgba(222,242,255,.68);
  background:radial-gradient(circle at 34% 29%,rgba(255,255,255,.88) 0 2%,transparent 17%),linear-gradient(145deg,#73cdf3 0%,#5379d3 54%,#654eb5 100%);
  box-shadow:0 13px 0 rgba(34,40,104,.31),0 23px 42px rgba(0,0,0,.25),0 0 0 7px rgba(118,205,255,.055),0 0 32px rgba(112,204,255,.50),inset 0 1px 0 rgba(255,255,255,.52);
  animation:lup-arrival-primary-pin 6.6s cubic-bezier(.42,0,.25,1) infinite;
}
.lup-arrival-world-pin::before {
  content:'';
  position:absolute;
  z-index:-1;
  inset:-18px;
  border:1px solid rgba(142,214,255,.32);
  border-radius:50%;
  box-shadow:0 0 0 11px rgba(101,112,225,.045),0 0 29px rgba(111,203,255,.15);
  animation:lup-arrival-primary-signal 6.6s ease-out infinite;
}
.lup-arrival-world-pin::after {
  content:'';
  position:absolute;
  bottom:-18px;
  left:50%;
  width:24px;
  height:5px;
  border-radius:50%;
  background:rgba(88,186,255,.48);
  filter:blur(4px);
  transform:translateX(-50%) rotate(45deg);
}
.lup-arrival-world-pin i { transform:rotate(45deg); }
@keyframes lup-arrival-primary-pin {
  0%,100% { transform:translate3d(0,0,0) rotate(-45deg); }
  52% { transform:translate3d(0,-8px,0) rotate(-45deg); }
}
@keyframes lup-arrival-primary-signal {
  0%,70%,100% { opacity:.12; transform:scale(.78); }
  24% { opacity:.72; transform:scale(1); }
}
@media (max-width:760px) {
  .lup-arrival-world-pin {
    top:13%;
    right:7%;
    width:50px;
    height:50px;
    opacity:.80;
  }
}
@media (prefers-reduced-motion:reduce) {
  .lup-arrival-world-pin,.lup-arrival-world-pin::before { animation:none; }
}

/* The welcome journey is one continuous map, not a bright hero on top of a
 * separate dark page.  Keep the subtle moving field behind every section,
 * including categories, principles and contact links. */
.lup-arrival { background:#0b101a; }
.lup-arrival-world {
  position:fixed;
  z-index:0;
  inset:0;
  min-height:100vh;
  background:
    radial-gradient(ellipse at 12% 14%, rgba(73,151,226,.24), transparent 25%),
    radial-gradient(ellipse at 86% 38%, rgba(129,87,215,.20), transparent 27%),
    radial-gradient(ellipse at 38% 78%, rgba(58,160,185,.15), transparent 28%),
    linear-gradient(155deg,#111a2c 0%,#0b101a 48%,#111326 100%);
}
.lup-arrival-world::before {
  opacity:.8;
  background:
    radial-gradient(circle at 18% 32%,rgba(161,220,255,.14) 0 1px,transparent 1.8px),
    radial-gradient(circle at 79% 18%,rgba(210,181,255,.13) 0 1px,transparent 1.8px),
    radial-gradient(circle at 66% 72%,rgba(155,221,255,.12) 0 .8px,transparent 1.6px),
    radial-gradient(ellipse at 42% 48%,rgba(111,187,251,.10),transparent 27%),
    radial-gradient(ellipse at 64% 64%,rgba(166,116,244,.10),transparent 30%);
  filter:blur(0);
  animation:lup-arrival-world-drift 20s ease-in-out infinite alternate;
}
.lup-arrival-world::after { opacity:.28; }
.lup-arrival > section,.lup-arrival > footer { position:relative; z-index:1; }
.lup-arrival-hero,.lup-arrival-journey,.lup-arrival-categories,#lup-arrival-principles,.lup-arrival-footer {
  background:transparent;
}

/* Welcome account access: a calm profile control, aligned with the arrival map. */
body:has(.lup-arrival) #page-content-wrapper > .navbar { min-height:66px; padding-right:14px; background:rgba(9,13,23,.88); box-shadow:inset 0 -1px 0 rgba(177,202,255,.08); }
body:has(.lup-arrival) #page-content-wrapper > .navbar .navbar-toggler { position:relative; align-self:flex-start; width:43px; height:43px; margin:9px 2px 0 auto; border-color:rgba(176,213,255,.26); border-radius:15px 15px 15px 6px; background:linear-gradient(145deg,rgba(77,112,180,.32),rgba(56,47,113,.26)); box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 10px 21px rgba(0,0,0,.22),0 0 18px rgba(107,165,242,.10); }
body:has(.lup-arrival) #page-content-wrapper > .navbar .navbar-toggler::after { content:''; position:absolute; right:7px; bottom:7px; width:5px; height:5px; border-radius:50%; background:#aee3ff; box-shadow:0 0 8px rgba(147,217,255,.82); }
body:has(.lup-arrival) #page-content-wrapper > .navbar .lup-account-toggle-icon { width:29px; height:29px; border:0; border-radius:10px 10px 10px 4px; background:rgba(6,11,23,.25); color:#e4f4ff; font-size:12px; }
body:has(.lup-arrival) #page-content-wrapper > .navbar .lup-account-toggle-icon i { filter:drop-shadow(0 2px 3px rgba(0,0,0,.32)); }
@media (max-width:760px) { body:has(.lup-arrival) #page-content-wrapper > .navbar { padding-right:10px; } body:has(.lup-arrival) #page-content-wrapper > .navbar .navbar-toggler { margin-top:7px; } }

/* The expanded account area is a real two-column control panel on the welcome page. */
@media (max-width:767.98px) {
  body:has(.lup-arrival) #page-content-wrapper > .navbar { position:relative; z-index:20; }
  body:has(.lup-arrival) #navbarSupportedContent.show { position:absolute; z-index:30; top:58px; right:10px; left:10px; width:auto; max-height:calc(100vh - 82px); margin:0; padding:12px; overflow-y:auto; border:1px solid rgba(178,213,255,.22); border-radius:18px; background:linear-gradient(145deg,rgba(23,32,54,.98),rgba(12,17,30,.98)); box-shadow:0 20px 45px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.10); backdrop-filter:blur(18px); }
  body:has(.lup-arrival) #navbarSupportedContent.show::before { content:'KONTO  /  BEREICHE'; display:block; margin:2px 3px 11px; color:#a8cff3; font-size:9px; font-weight:900; letter-spacing:.16em; }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; width:100%; margin:0; padding:0; }
  body:has(.lup-arrival) #navbarSupportedContent .nav-item { display:flex; min-width:0; margin:0; }
  body:has(.lup-arrival) #navbarSupportedContent .nav-item:has(.gdt-menu:empty) { display:none; }
  body:has(.lup-arrival) #navbarSupportedContent .nav-item:has(.gdt-profile-link) { grid-column:1 / -1; }
  body:has(.lup-arrival) #navbarSupportedContent .nav-link { display:flex; width:100%; padding:0; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link { display:flex; min-width:0; width:100%; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a { display:flex; align-items:center; gap:9px; width:100%; min-height:50px; padding:10px; overflow:hidden; border:1px solid rgba(182,207,255,.14); border-radius:13px; background:rgba(255,255,255,.035); color:#e5edf9; font-size:11px; font-weight:780; line-height:1.15; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a .gdo-icon,body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a .gdo-icon * { display:grid; place-items:center; flex:0 0 27px; width:27px; height:27px; margin:0; border:1px solid rgba(183,214,255,.19); border-radius:9px 9px 9px 4px; background:rgba(105,135,213,.16); color:#bfe1ff; font-size:11px; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a:hover { border-color:rgba(162,211,255,.34); background:linear-gradient(135deg,rgba(91,139,209,.24),rgba(116,78,185,.18)); color:#fff; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link { display:flex; align-items:center; gap:11px; width:100%; min-height:58px; padding:10px 12px; border:1px solid rgba(178,216,255,.25); border-radius:14px; background:linear-gradient(110deg,rgba(82,126,203,.27),rgba(109,75,177,.17)); }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link::before { content:'PROFIL'; padding:0; border:0; border-radius:0; background:transparent; color:#aee0ff; font-size:9px; letter-spacing:.13em; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link .gdt-nickname { max-width:none; color:#f4f8ff; font-size:14px; font-weight:830; }
}
@media (max-width:360px) {
  #content-wrap > #form:has(input[type=email]) {
    box-sizing:border-box;
    width:calc(100% - 28px);
    margin:0 auto;
    padding:24px 18px 22px;
    border:1px solid rgba(181,211,255,.20);
    border-radius:18px;
    background:radial-gradient(circle at 88% 6%,rgba(112,159,232,.22),transparent 30%),linear-gradient(145deg,rgba(25,36,61,.98),rgba(10,15,29,.99));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 20px 42px rgba(0,0,0,.32);
  }
  #content-wrap > #form:has(input[type=email]) .card-header::before { content:'ZUGANG  /  WIEDERHERSTELLEN'; display:block; margin-bottom:10px; color:#9fd4ff; font-size:9px; font-weight:900; letter-spacing:.15em; }
  #content-wrap > #form:has(input[type=email]) .card-title { font-size:24px; line-height:1.05; letter-spacing:-.045em; }
  #content-wrap > #form:has(input[type=email]) .gdt-form-actions { display:grid; gap:13px; padding:18px; border:0; background:transparent; }
  #content-wrap > #form:has(input[type=email]) .gdt-submit { width:100%; min-height:48px; border-radius:12px; background:linear-gradient(115deg,#5b91d3,#765bc4); }
  #content-wrap > #form:has(input[type=email]) .gdt-link { text-align:center; }
  /* Password recovery is a focused, self-contained access flow. */
  body:has(#content-wrap input[name="email"]) #content-wrap {
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:calc(100vh - 86px);
    padding:22px 14px 38px;
  }
  body:has(#content-wrap input[name="email"]) #content-wrap > #form {
    position:relative;
    box-sizing:border-box;
    width:100%;
    max-width:none;
    margin:0;
    padding:24px 18px 20px;
    border:1px solid rgba(181,211,255,.20);
    border-radius:18px;
    background:radial-gradient(circle at 88% 6%,rgba(112,159,232,.22),transparent 30%),linear-gradient(145deg,rgba(25,36,61,.98),rgba(10,15,29,.99));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 20px 42px rgba(0,0,0,.32);
  }
  body:has(#content-wrap input[name="email"]) #content-wrap > #form::before {
    content:'ZUGANG  /  WIEDERHERSTELLEN';
    display:block;
    margin:0 0 10px;
    color:#9fd4ff;
    font-size:9px;
    font-weight:900;
    letter-spacing:.15em;
  }
  body:has(#content-wrap input[name="email"]) #content-wrap > #form h1,
  body:has(#content-wrap input[name="email"]) #content-wrap > #form h2 {
    margin:0 0 20px;
    color:#f4f8ff;
    font-size:25px;
    line-height:1.05;
    letter-spacing:-.045em;
  }
  body:has(#content-wrap input[name="email"]) #content-wrap > #form .gdt-container {
    width:100%;
    margin:0 0 16px;
  }
  body:has(#content-wrap input[name="email"]) #content-wrap > #form input {
    box-sizing:border-box;
    width:100%;
    min-height:48px;
    padding:11px 13px;
    border:1px solid rgba(173,203,255,.18);
    border-radius:12px;
    background:#10192b;
    color:#f5f8ff;
  }
  body:has(#content-wrap input[name="email"]) #content-wrap > #form .gdt-container:has(input[name="email"])::before {
    content:'oder';
    display:block;
    margin:2px 0 16px;
    color:#a9bddb;
    font-size:11px;
    font-weight:800;
    text-align:center;
  }
  body:has(#content-wrap input[name="email"]) #content-wrap > #form .gdt-form-actions {
    display:grid;
    gap:13px;
    margin-top:22px;
    padding:0;
    border:0;
    background:transparent;
  }
  body:has(#content-wrap input[name="email"]) #content-wrap > #form .gdt-submit {
    width:100%;
    min-height:48px;
    border:1px solid rgba(210,229,255,.32);
    border-radius:12px;
    background:linear-gradient(115deg,#5b91d3,#765bc4);
    color:#fff;
  }
  body:has(#content-wrap input[name="email"]) #content-wrap > #form .gdt-link a {
    display:block;
    color:#b8d9ff;
    font-size:11px;
    text-align:center;
    text-decoration:none;
  }
  /* Backend login: errors and form must stack, never compete for a narrow column. */
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:12px;
    padding:18px 14px 34px;
  }
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .card,
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact {
    box-sizing:border-box;
    width:100%;
    max-width:none;
    min-width:0;
    margin:0;
  }
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact {
    padding:18px;
    border:1px solid rgba(182,207,255,.17);
    border-radius:16px;
    background:linear-gradient(145deg,rgba(23,32,54,.98),rgba(12,17,30,.98));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 16px 34px rgba(0,0,0,.24);
  }
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact .gdt-container,
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact input,
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact .gdt-form-actions {
    width:100%;
    min-width:0;
  }
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact h1,
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact h2 {
    margin:0 0 18px;
    color:#f1f6ff;
    font-size:18px;
    line-height:1.08;
    letter-spacing:-.045em;
    white-space:nowrap;
    overflow-wrap:normal;
    word-break:normal;
  }
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact input:not([type=checkbox]):not([type=radio]) {
    min-height:46px;
    padding:10px 12px 10px 42px;
    border:1px solid rgba(177,205,255,.17);
    border-radius:11px;
    background:#111a2c;
    color:#f3f7ff;
    font-size:12px;
  }
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact input[type=checkbox],
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact input[type=radio] {
    position:static;
    flex:0 0 auto;
    width:auto;
    min-height:0;
    height:auto;
    margin:0 8px 0 0;
    padding:0;
  }
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact .gdt-checkbox {
    display:block;
    min-height:0;
    padding:0;
    background:transparent;
  }
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact .gdt-checkbox .gdo-icon {
    display:none;
  }
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact .gdt-checkbox label,
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact .gdt-checkbox .gdt-cbx-input {
    display:flex;
    align-items:center;
    gap:8px;
    width:auto;
    min-height:0;
    margin:0;
    padding:0;
    background:transparent;
  }
  body:has(#content-wrap > .gdt-form.gdt-form-compact) #content-wrap > .gdt-form.gdt-form-compact .gdo-icon {
    left:13px;
    width:18px;
    text-align:center;
  }
  #navbarSupportedContent .gdt-link > a .gdo-icon { display:none; }
  #navbarSupportedContent .gdt-link > a::before {
    content:'';
    flex:0 0 7px;
    width:7px;
    height:7px;
    border:1px solid rgba(195,225,255,.72);
    border-radius:50%;
    background:linear-gradient(135deg,#ace1ff,#8476df);
    box-shadow:0 0 9px rgba(126,184,255,.42);
  }
  body:has(.lup-arrival) #navbarSupportedContent.show { top:56px; right:8px; left:8px; padding:10px; border-radius:16px; }
  body:has(.lup-arrival) #navbarSupportedContent.show::before { margin:1px 2px 8px; font-size:8px; }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav,
  body:has(.lup-arrival) #navbarSupportedContent .gdt-menu { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; width:100%; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-menu .gdt-link:first-child { grid-column:1 / -1; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-menu .gdt-link:nth-child(2) { grid-column:1 / -1; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a { gap:6px; min-height:46px; padding:7px; font-size:9px; line-height:1.15; white-space:normal; text-overflow:clip; overflow-wrap:anywhere; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a .gdo-icon { display:grid; place-items:center; flex:0 0 22px; width:22px; height:22px; margin:0; border:1px solid rgba(183,214,255,.19); border-radius:7px 7px 7px 3px; background:rgba(105,135,213,.16); color:#bfe1ff; font-size:9px; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a .gdo-icon i { display:block; width:auto; height:auto; margin:0; border:0; border-radius:0; background:transparent; color:inherit; font-size:9px; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link { min-height:48px; padding:8px 10px; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link .gdt-nickname { font-size:12px; }
}

/* The account drawer must remain legible at the narrowest phone width.
 * The framework nests legacy icon markup, so only the outer icon receives a tile. */
@media (max-width:360px) {
  body:has(.lup-arrival) #navbarSupportedContent .gdt-menu .gdt-link:nth-child(2) { display:none; }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:last-child { grid-column:1 / -1; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a {
    align-items:center;
    min-height:52px;
    padding:8px 9px;
    color:#edf5ff;
    font-size:10px;
    font-weight:760;
    line-height:1.18;
    overflow:visible;
    text-overflow:clip;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a .gdo-icon {
    display:grid;
    place-items:center;
    flex:0 0 24px;
    width:24px;
    height:24px;
    margin:0;
    border:1px solid rgba(183,214,255,.20);
    border-radius:8px 8px 8px 3px;
    background:rgba(105,135,213,.16);
  }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a .gdo-icon * {
    display:block;
    width:auto;
    height:auto;
    margin:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    color:inherit;
    font-size:10px;
    line-height:1;
  }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link {
    min-height:50px;
    padding:9px 11px;
  }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-menu .gdt-link:last-child { grid-column:1 / -1; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a .gdo-icon,
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link i,
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link .fa { display:none; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a:not(.gdt-profile-link)::before {
    content:'';
    flex:0 0 7px;
    width:7px;
    height:7px;
    border:1px solid rgba(195,225,255,.72);
    border-radius:50%;
    background:linear-gradient(135deg,#ace1ff,#8476df);
    box-shadow:0 0 9px rgba(126,184,255,.42);
  }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link::before {
    content:'PROFIL';
    flex:0 0 auto;
    margin:0;
    padding:0;
    border:0;
    background:transparent;
    box-shadow:none;
  }

  /* One compact control grid: every destination gets the same visual weight. */
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:first-child { grid-column:auto; }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:last-child { grid-column:auto; }
  body:has(.lup-arrival) #navbarSupportedContent .nav-item:has(.gdt-profile-link) { grid-column:auto; }
  body:has(.lup-arrival) #navbarSupportedContent .nav-item:has(.gdt-profile-link) .gdt-menu,
  body:has(.lup-arrival) #navbarSupportedContent .nav-item:has(.gdt-profile-link) .gdt-menu .gdt-link,
  body:has(.lup-arrival) #navbarSupportedContent .nav-item:has(.gdt-profile-link) .gdt-profile-link { display:flex; width:100%; min-width:0; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-menu .gdt-link:first-child,
  body:has(.lup-arrival) #navbarSupportedContent .gdt-menu .gdt-link:last-child { grid-column:auto; }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a,
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link {
    min-height:56px;
    border-radius:12px;
  }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link {
    gap:6px;
    padding:8px 9px;
  }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link::before {
    flex:0 0 6px;
    width:6px;
    height:6px;
    padding:0;
    border:1px solid rgba(195,225,255,.72);
    border-radius:50%;
    background:linear-gradient(135deg,#ace1ff,#8476df);
    box-shadow:0 0 9px rgba(126,184,255,.42);
    color:transparent;
    font-size:0;
  }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link .gdt-nickname,
  body:has(.lup-arrival) #navbarSupportedContent .gdt-link > a > span:not(.gdo-icon) {
    min-width:0;
    overflow:visible;
    color:#edf5ff;
    font-size:10px;
    line-height:1.18;
    text-overflow:clip;
    white-space:normal;
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  body:has(.lup-arrival) #navbarSupportedContent .gdt-profile-link .gdt-nickname {
    overflow:hidden;
    font-size:9px;
    text-overflow:ellipsis;
    white-space:nowrap;
    word-break:normal;
  }

  /* The first item uses legacy gdt-container-fluid markup, not gdt-profile-link. */
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:first-child .gdt-container-fluid {
    display:flex;
    flex:1 1 100%;
    width:100%;
    min-width:0;
  }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:first-child .gdt-link {
    display:flex;
    flex:1 1 100%;
    width:100%;
    min-width:0;
  }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item {
    width:100%;
    min-width:0;
  }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item > .nav-link,
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item .gdt-container-fluid,
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item .gdt-link,
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item .gdt-link > a {
    width:100%;
    min-width:0;
    max-width:none;
  }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:first-child .gdt-link:nth-child(2) { display:none; }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:first-child .gdt-link > .gdo-icon { display:none; }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:first-child .gdt-link > a > .gdo-icon { display:none; }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:nth-child(1) .gdt-link > a,
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:nth-child(2) .gdt-link > a {
    min-height:46px;
    padding:8px 9px;
    border-color:rgba(182,207,255,.14);
    border-radius:12px;
    background:rgba(255,255,255,.035);
    box-shadow:none;
    color:#edf5ff;
  }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:nth-child(1) .gdt-link,
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:nth-child(2) .gdt-link {
    display:flex;
    flex:1 1 0;
    width:100%;
    min-width:0;
  }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:nth-child(1) .gdt-link > a,
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:nth-child(2) .gdt-link > a {
    flex:1 1 0;
    width:100%;
    max-width:none;
  }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:nth-child(1) .gdt-container-fluid > span.gdt-link + span.gdt-link {
    display:none;
  }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:nth-child(1) .gdt-container-fluid > span.gdt-link:first-child {
    display:flex;
    flex:1 1 100%;
    flex-basis:100%;
    width:100%;
    max-width:none;
  }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:nth-child(1) .gdt-link,
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:nth-child(2) .gdt-link {
    min-width:100%;
  }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:nth-child(5) .gdt-link > a {
    padding-right:7px;
    font-size:9px;
    letter-spacing:-.015em;
  }
  body:has(.lup-arrival) #navbarSupportedContent .navbar-nav > .nav-item:first-child .gdt-link > a {
    display:flex;
    align-items:center;
    flex:1 1 100%;
    flex-shrink:0;
    width:auto;
    min-width:100%;
    max-width:none;
    min-width:0;
    font-size:10px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
}

/* Friends: an inviting social home, including a useful first-use state. */
body.lup-friends-page #content-wrap { max-width:1080px; margin:0 auto; padding-bottom:48px; }
.lup-friends-page .lup-friends-hero { position:relative; display:flex; align-items:center; justify-content:space-between; gap:28px; min-height:188px; margin:4px auto 20px; padding:30px 34px; overflow:hidden; border:1px solid rgba(173,207,255,.20); border-radius:23px; background:radial-gradient(circle at 86% 22%,rgba(117,95,201,.30),transparent 29%),radial-gradient(circle at 78% 82%,rgba(79,155,220,.20),transparent 35%),linear-gradient(125deg,#1b2944,#121a2c 68%); box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 19px 42px rgba(0,0,0,.22); }
.lup-friends-page .lup-friends-hero::after { content:''; position:absolute; right:-42px; bottom:-84px; width:250px; height:250px; border:1px solid rgba(181,213,255,.14); border-radius:50%; box-shadow:0 0 0 28px rgba(121,104,222,.04),0 0 0 62px rgba(94,155,226,.025); }
.lup-friends-hero > div:first-child { position:relative; z-index:1; max-width:610px; }.lup-friends-hero > div:first-child > span { display:block; margin-bottom:9px; color:#a9d9ff; font-size:10px; font-weight:900; letter-spacing:.17em; }.lup-friends-page .lup-friends-hero h1 { margin:0; color:#f6f8ff; font-size:clamp(25px,3.2vw,38px); font-weight:820; line-height:1.05; letter-spacing:-.05em; }.lup-friends-page .lup-friends-hero p { max-width:510px; margin:12px 0 0; color:#c3cde0; font-size:14px; line-height:1.55; }
.lup-friends-orbit { position:relative; z-index:1; flex:0 0 134px; width:134px; height:134px; border:1px solid rgba(192,221,255,.18); border-radius:50%; box-shadow:inset 0 0 35px rgba(112,154,224,.10),0 0 0 19px rgba(127,98,209,.055); }.lup-friends-orbit::before,.lup-friends-orbit::after { content:''; position:absolute; inset:24px; border:1px solid rgba(181,214,255,.20); border-radius:50%; }.lup-friends-orbit::after { inset:47px; border-color:rgba(185,229,255,.60); box-shadow:0 0 18px rgba(137,206,255,.38); }.lup-friends-orbit i,.lup-friends-orbit b,.lup-friends-orbit em { position:absolute; display:block; width:9px; height:9px; border-radius:50%; background:#b9e4ff; box-shadow:0 0 14px rgba(151,215,255,.84); }.lup-friends-orbit i { top:18px; left:34px; }.lup-friends-orbit b { right:20px; bottom:38px; width:7px; height:7px; background:#bca9ff; }.lup-friends-orbit em { bottom:25px; left:23px; width:5px; height:5px; background:#9ed5ff; }
.lup-friends-page #content-wrap .gdt-list { grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); max-width:none; gap:15px; }.lup-friends-page #content-wrap .gdt-list-title { padding:8px 3px 2px; }.lup-friends-page #content-wrap .gdt-list-title h3 { color:#eff5ff; font-size:21px; }
.lup-friends-page .lup-friends-empty { grid-column:1/-1; display:grid; justify-items:center; max-width:600px; min-height:266px; margin:4px auto 0; padding:30px; border:1px dashed rgba(176,208,255,.25); border-radius:21px; background:linear-gradient(145deg,rgba(28,40,65,.72),rgba(14,20,34,.78)); text-align:center; }.lup-friends-empty-mark { position:relative; width:76px; height:54px; margin-bottom:13px; }.lup-friends-empty-mark span { position:absolute; bottom:0; width:34px; height:34px; border:1px solid rgba(191,222,255,.42); border-radius:50%; background:linear-gradient(145deg,rgba(113,158,220,.36),rgba(100,73,164,.24)); box-shadow:0 0 18px rgba(119,170,237,.15); }.lup-friends-empty-mark span:first-child { left:0; }.lup-friends-empty-mark span:nth-child(2) { right:0; }.lup-friends-empty-mark span:last-child { bottom:28px; left:31px; width:15px; height:15px; border-color:rgba(210,237,255,.74); background:#aee1ff; box-shadow:0 0 17px rgba(154,216,255,.72); }.lup-friends-empty h2 { margin:0; color:#f3f7ff; font-size:21px; font-weight:810; letter-spacing:-.03em; }.lup-friends-empty p { max-width:430px; margin:9px 0 19px; color:#bdc9df; font-size:13px; line-height:1.55; }.lup-friends-empty a { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:10px 15px; border:1px solid rgba(190,220,255,.28); border-radius:12px; background:linear-gradient(120deg,rgba(92,142,210,.60),rgba(112,82,186,.58)); box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 10px 20px rgba(50,67,151,.20); color:#fff; font-size:12px; font-weight:800; text-decoration:none; }
@media (max-width:620px) { body.lup-friends-page #content-wrap { padding-right:14px; padding-left:14px; }.lup-friends-page .lup-friends-hero { min-height:0; padding:24px 19px 21px; border-radius:18px; }.lup-friends-page .lup-friends-hero p { font-size:12px; }.lup-friends-orbit { display:none; }.lup-friends-page #content-wrap .gdt-list { grid-template-columns:1fr; }.lup-friends-page .lup-friends-empty { min-height:238px; padding:26px 18px; border-radius:18px; } }

body.lup-friends-page #top .gdt-bar.horizontal { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; max-width:1080px; margin:0 auto 16px; padding:8px; border:1px solid rgba(177,205,255,.16); border-radius:17px; background:linear-gradient(135deg,rgba(26,38,63,.94),rgba(15,22,38,.96)); box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 12px 25px rgba(0,0,0,.15); }
body.lup-friends-page #top .gdt-bar.horizontal .gdt-link { display:flex; min-width:0; } body.lup-friends-page #top .gdt-bar.horizontal .gdt-link a { display:flex; align-items:center; justify-content:center; width:100%; min-height:42px; padding:8px 10px; border:1px solid rgba(180,210,255,.14); border-radius:11px; background:rgba(255,255,255,.025); color:#c8dcf5; font-size:11px; font-weight:760; line-height:1.2; text-align:center; text-decoration:none; } body.lup-friends-page #top .gdt-bar.horizontal .gdt-link a:hover { border-color:rgba(170,211,255,.40); background:linear-gradient(135deg,rgba(89,140,211,.25),rgba(113,80,183,.18)); color:#fff; }
@media (max-width:620px) { body.lup-friends-page #top .gdt-bar.horizontal { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin:0 14px 12px; padding:7px; border-radius:15px; } body.lup-friends-page #top .gdt-bar.horizontal .gdt-link a { min-height:47px; padding:8px; font-size:10px; } }

body.lup-friends-page .lup-friends-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; max-width:1080px; margin:0 auto 16px; padding:8px; border:1px solid rgba(177,205,255,.16); border-radius:17px; background:linear-gradient(135deg,rgba(26,38,63,.94),rgba(15,22,38,.96)); box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 12px 25px rgba(0,0,0,.15); }
body.lup-friends-page .lup-friends-tabs .gdt-link { display:flex; min-width:0; } body.lup-friends-page .lup-friends-tabs .gdt-link a { display:flex; align-items:center; justify-content:center; width:100%; min-height:42px; padding:8px 10px; border:1px solid rgba(180,210,255,.14); border-radius:11px; background:rgba(255,255,255,.025); color:#c8dcf5; font-size:11px; font-weight:760; line-height:1.2; text-align:center; text-decoration:none; } body.lup-friends-page .lup-friends-tabs .gdt-link a:hover { border-color:rgba(170,211,255,.40); background:linear-gradient(135deg,rgba(89,140,211,.25),rgba(113,80,183,.18)); color:#fff; }
@media (max-width:620px) { body.lup-friends-page .lup-friends-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin:0 14px 12px; padding:7px; border-radius:15px; } body.lup-friends-page .lup-friends-tabs .gdt-link a { min-height:47px; padding:8px; font-size:10px; } }

/* The account drawer is opened often; avoid expensive full-page blur on every tap. */
#navbarSupportedContent.show { backdrop-filter:none; -webkit-backdrop-filter:none; }

/* Friends: one calm, predictable layout for list, requests and the add-friend form. */
body.lup-friends-module #content-wrap { max-width:1080px; margin-inline:auto; padding-bottom:42px; }
body.lup-friends-page .lup-friends-hero { display:none; }
body.lup-friends-module #top .gdt-bar.horizontal,
body.lup-friends-module .lup-friends-tabs {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
  max-width:1080px;
  margin:0 auto 14px;
  padding:7px;
  border:1px solid rgba(177,205,255,.14);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(25,37,62,.92),rgba(14,20,35,.94));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 22px rgba(0,0,0,.14);
}
body.lup-friends-module #top .gdt-bar.horizontal .gdt-link,
body.lup-friends-module .lup-friends-tabs .gdt-link { display:flex; min-width:0; }
body.lup-friends-module #top .gdt-bar.horizontal .gdt-link a,
body.lup-friends-module .lup-friends-tabs .gdt-link a {
  display:flex; align-items:center; justify-content:center; width:100%; min-height:44px; padding:8px 10px;
  border:1px solid transparent; border-radius:10px; background:rgba(255,255,255,.025);
  color:#c8dcf5; font-size:11px; font-weight:760; line-height:1.2; text-align:center; text-decoration:none;
  transition:background .16s ease,border-color .16s ease,color .16s ease;
}
body.lup-friends-module #top .gdt-bar.horizontal .gdt-link a:hover,
body.lup-friends-module .lup-friends-tabs .gdt-link a:hover,
body.lup-friends-module .lup-friends-tab-active a {
  border-color:rgba(161,211,255,.30); background:linear-gradient(135deg,rgba(87,139,211,.21),rgba(108,78,178,.16)); color:#fff;
}

/* Four direct action points — no second frame around them. */
body.lup-friends-module #top .gdt-bar.horizontal,
body.lup-friends-module .lup-friends-tabs { padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; grid-auto-rows:58px; }
body.lup-friends-module #top .gdt-bar.horizontal .gdt-link a,
body.lup-friends-module .lup-friends-tabs .gdt-link a {
  position:relative; flex-direction:row; height:58px; min-height:58px; justify-content:flex-start; gap:8px; padding:9px 11px;
  border-color:rgba(177,205,255,.14); border-radius:14px;
  background:linear-gradient(145deg,rgba(30,45,74,.85),rgba(19,28,48,.90));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 7px 15px rgba(0,0,0,.10);
}
body.lup-friends-module #top .gdt-bar.horizontal .gdt-link a::before,
body.lup-friends-module .lup-friends-tabs .gdt-link a::before {
  content:''; display:block; width:6px; height:6px; flex:0 0 6px; margin-left:1px; border-radius:50%;
  background:#9ed9ff; box-shadow:0 0 9px rgba(145,210,255,.62);
}
body.lup-friends-module #top .gdt-bar.horizontal .gdt-link:nth-child(2) a::before,
body.lup-friends-module .lup-friends-tabs .gdt-link:nth-child(2) a::before { background:#b9abff; box-shadow:0 0 9px rgba(185,171,255,.58); }
body.lup-friends-module #top .gdt-bar.horizontal .gdt-link:nth-child(3) a::before,
body.lup-friends-module .lup-friends-tabs .gdt-link:nth-child(3) a::before { background:#8fe0c4; box-shadow:0 0 9px rgba(143,224,196,.54); }
body.lup-friends-module #top .gdt-bar.horizontal .gdt-link:nth-child(4) a::before,
body.lup-friends-module .lup-friends-tabs .gdt-link:nth-child(4) a::before { background:#f1b0d4; box-shadow:0 0 9px rgba(241,176,212,.54); }
body.lup-friends-module #content-wrap > .gdt-form,
body.lup-friends-module #content-wrap > form,
body.lup-friends-module #content-wrap > .gdt-container {
  max-width:760px; margin:0 auto 18px; padding:22px; border:1px solid rgba(181,207,255,.15);
  border-radius:18px; background:linear-gradient(145deg,rgba(25,35,57,.94),rgba(14,20,34,.96));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 14px 28px rgba(0,0,0,.15);
}
body.lup-friends-page #content-wrap > .gdt-form,
body.lup-friends-page #content-wrap > form {
  max-width:none; margin:0 0 16px; padding:0; overflow:hidden; border-radius:16px;
  background:rgba(17,27,46,.78);
}
body.lup-friends-page #content-wrap > .gdt-form .gdt-container,
body.lup-friends-page #content-wrap > form .gdt-container { margin:0; padding:14px 16px; background:transparent; }
body.lup-friends-page #content-wrap > .gdt-form .form-label,
body.lup-friends-page #content-wrap > form .form-label { margin:0; color:#dbe9ff; font-size:13px; }
body.lup-friends-module #content-wrap .gdt-list { gap:14px; margin-bottom:20px; }
body.lup-friends-module #content-wrap .gdt-list-title { padding:2px 2px 5px; border:0; background:transparent; }
body.lup-friends-module #content-wrap .gdt-list-title h3 { margin:0; color:#f2f6ff; font-size:21px; }
body.lup-friends-module #content-wrap .gdt-list-item { min-height:138px; border-color:rgba(179,206,255,.14); }
body.lup-friends-module #content-wrap .gdt-list-item::after { display:none; }
body.lup-friends-module .lup-friends-empty {
  grid-template-columns:112px minmax(0,1fr); align-items:center; justify-items:stretch; gap:22px;
  min-height:196px; max-width:none; margin-top:0; padding:26px 30px; border:1px solid rgba(177,208,255,.16); border-radius:18px;
  background:radial-gradient(circle at 92% 18%,rgba(109,155,227,.15),transparent 26%),linear-gradient(145deg,rgba(28,40,65,.80),rgba(14,20,34,.86));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06); text-align:left;
}
body.lup-friends-module .lup-friends-empty-mark { display:none; }
.lup-friends-empty-art { position:relative; width:92px; height:92px; }
.lup-friends-empty-art::before,.lup-friends-empty-art::after { content:''; position:absolute; width:52px; height:1px; transform-origin:left center; background:linear-gradient(90deg,rgba(140,208,255,.70),rgba(155,124,241,.12)); }
.lup-friends-empty-art::before { top:28px; left:31px; transform:rotate(33deg); }.lup-friends-empty-art::after { top:61px; left:31px; transform:rotate(-33deg); }
.lup-friends-empty-art i,.lup-friends-empty-art b,.lup-friends-empty-art em { position:absolute; display:block; border-radius:50%; background:#b6e7ff; box-shadow:0 0 17px rgba(146,215,255,.56); }
.lup-friends-empty-art i { top:15px; left:13px; width:25px; height:25px; }.lup-friends-empty-art b { top:51px; left:13px; width:25px; height:25px; background:#baa9ff; box-shadow:0 0 17px rgba(186,169,255,.48); }.lup-friends-empty-art em { top:35px; right:4px; width:19px; height:19px; background:#a0e0c5; box-shadow:0 0 17px rgba(160,224,197,.46); }.lup-friends-empty-art span { position:absolute; inset:0; border:1px solid rgba(177,216,255,.12); border-radius:50%; }
.lup-friends-empty-copy > span { display:block; margin-bottom:7px; color:#a9d9ff; font-size:9px; font-weight:850; letter-spacing:.15em; }.lup-friends-empty-copy h2 { margin:0; color:#f4f8ff; font-size:21px; font-weight:810; letter-spacing:-.035em; }.lup-friends-empty-copy p { max-width:530px; margin:8px 0 15px; color:#becbe0; font-size:12px; line-height:1.5; }.lup-friends-empty-copy a { display:inline-flex; align-items:center; min-height:36px; padding:8px 13px; border:1px solid rgba(178,218,255,.25); border-radius:10px; background:rgba(111,146,213,.14); color:#dff2ff; font-size:11px; font-weight:780; text-decoration:none; }
body.lup-friends-module #content-wrap table { width:100%; overflow:hidden; border:1px solid rgba(177,207,255,.15); border-radius:15px; background:rgba(13,19,32,.48); color:#e8efff; }
body.lup-friends-page #content-wrap .accordion,
body.lup-friends-page #content-wrap .gdt-accordeon,
body.lup-friends-page #content-wrap .gdo-accordeon { margin:0 0 13px; border:0; background:transparent; box-shadow:none; }
body.lup-friends-page #content-wrap .accordion-item { margin:0; border:1px solid rgba(178,208,255,.14); border-radius:13px; background:rgba(20,30,50,.55); box-shadow:none; }
body.lup-friends-page #content-wrap .accordion-button,
body.lup-friends-page #content-wrap .gdt-accordeon .title,
body.lup-friends-page #content-wrap .gdo-accordeon .title { min-height:43px; padding:9px 14px; border-radius:12px; background:transparent; color:#cddcf2; font-size:12px; font-weight:720; }

/* Friends navigation stays deliberately weightless: four equal actions, no nested card borders. */
body.lup-friends-module #top .gdt-bar.horizontal,
body.lup-friends-module .lup-friends-tabs {
  grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:52px; gap:4px;
}
body.lup-friends-module #top .gdt-bar.horizontal .gdt-link,
body.lup-friends-module .lup-friends-tabs .gdt-link { width:100%; min-width:0; }
body.lup-friends-module #top .gdt-bar.horizontal .gdt-link a,
body.lup-friends-module .lup-friends-tabs .gdt-link a {
  height:52px; min-height:52px; padding:8px 10px; border:0; border-radius:0;
  justify-content:center;
  background:transparent; box-shadow:none; color:rgba(205,221,244,.76);
}
body.lup-friends-module #top .gdt-bar.horizontal .gdt-link a:hover,
body.lup-friends-module .lup-friends-tabs .gdt-link a:hover { border:0; background:transparent; color:#eaf5ff; }
body.lup-friends-module .lup-friends-tab-active a {
  border:0; background:transparent; color:#f4fbff;
  text-shadow:0 0 11px rgba(153,211,255,.52);
}
body.lup-friends-module .lup-friends-tab-active a::before { box-shadow:0 0 13px rgba(164,221,255,.95); }
body.lup-friends-module #page-content-wrapper > .navbar .navbar-brand:has(#top),
body.lup-friends-module #top,
body.lup-friends-module #top > .gdt-container,
body.lup-friends-module #top > .gdt-bar,
body.lup-friends-module #top > .gdt-menu {
  border:0; background:transparent; box-shadow:none;
}
body.lup-friends-page #content-wrap .accordion,
body.lup-friends-page #content-wrap .gdt-accordeon,
body.lup-friends-page #content-wrap .gdo-accordeon { margin-top:0; }
body.lup-friends-module #content-wrap th { padding:12px 14px; border:0; background:rgba(96,125,180,.14); color:#b9d8fa; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
body.lup-friends-module #content-wrap td { padding:12px 14px; border-color:rgba(179,207,255,.10); color:#d9e3f4; vertical-align:middle; }
body.lup-friends-module #content-wrap tr:last-child td { border-bottom:0; }
@media (max-width:620px) {
  body.lup-friends-module #top .gdt-bar.horizontal,
  body.lup-friends-module .lup-friends-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin:0 14px 12px; padding:6px; }
  body.lup-friends-module #top .gdt-bar.horizontal .gdt-link a,
  body.lup-friends-module .lup-friends-tabs .gdt-link a { min-height:46px; padding:7px; font-size:10px; }
  body.lup-friends-module #content-wrap > .gdt-form,
  body.lup-friends-module #content-wrap > form,
  body.lup-friends-module #content-wrap > .gdt-container { margin-inline:0; padding:17px 14px; border-radius:15px; }
  body.lup-friends-module #content-wrap table { display:block; overflow-x:auto; white-space:nowrap; }
  body.lup-friends-module .lup-friends-empty { min-height:200px; padding:22px 16px; }
}

@media (max-width:620px) {
  body.lup-friends-module .lup-friends-empty { grid-template-columns:1fr; justify-items:center; gap:10px; min-height:0; padding:24px 18px; text-align:center; }
  .lup-friends-empty-art { width:76px; height:76px; transform:scale(.82); transform-origin:center; margin:-7px 0; }
  .lup-friends-empty-copy h2 { font-size:19px; }.lup-friends-empty-copy p { margin-bottom:13px; font-size:11px; }
}

/* The Friends actions are rendered inside the mobile navbar. Match them precisely to the page grid. */
@media (max-width:767.98px) {
  body.lup-friends-module #page-content-wrapper > .navbar .navbar-brand { width:100%; margin:0; padding:0 14px 10px; }
  body.lup-friends-module #top { display:block; width:100%; min-width:0; padding:0; }
  body.lup-friends-module #top > .gdt-container,
  body.lup-friends-module #top > .gdt-bar,
  body.lup-friends-module #top > .gdt-menu { display:grid; width:100%; min-width:0; margin:0; }
  body.lup-friends-module #top.lup-friends-tabs,
  body.lup-friends-module #top .lup-friends-tabs {
    box-sizing:border-box; width:100%; max-width:none; margin:0; padding:6px;
    border-radius:15px;
  }
  body.lup-friends-module #content-wrap { padding-top:10px; }
  body.lup-friends-module .lup-friends-hero { margin-top:0; margin-bottom:14px; }
  body.lup-friends-module #content-wrap .gdt-list-title { padding-top:3px; }
}

@media (max-width:767.98px) {
  body.lup-friends-module #top { position:relative; left:-31px; width:calc(100% + 31px); }
}

/* Final welcome-header layer. Keep this at EOF: legacy backend skins append
 * navbar styles earlier in this file. */
body:has(.lup-arrival) #page-content-wrapper > nav.navbar {
  border:0;
  border-bottom:1px solid rgba(142,194,255,.13);
  background:linear-gradient(100deg,#1f2744 0%,#18203a 48%,#121a31 100%);
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.025),0 8px 22px rgba(3,7,18,.16);
}
body:has(.lup-arrival) #page-content-wrapper > nav.navbar #sidebarToggle,
body:has(.lup-arrival) #page-content-wrapper > nav.navbar .navbar-toggler {
  display:grid;
  place-items:center;
  width:42px;
  min-width:42px;
  height:42px;
  min-height:42px;
  margin:0;
  padding:0;
  border:1px solid rgba(145,210,255,.32);
  border-radius:12px 12px 12px 4px;
  background:linear-gradient(145deg,rgba(79,139,208,.70),rgba(91,66,176,.72));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.27),0 8px 18px rgba(23,45,111,.26),0 0 0 3px rgba(117,184,248,.07);
}
body:has(.lup-arrival) #page-content-wrapper > nav.navbar #sidebarToggle::after { display:none; }
body:has(.lup-arrival) #page-content-wrapper > nav.navbar #sidebarToggle .lup-sidebar-glyph { display:grid; width:18px; gap:4px; }
body:has(.lup-arrival) #page-content-wrapper > nav.navbar #sidebarToggle .lup-sidebar-glyph i { height:2px; background:#e5f7ff; box-shadow:0 0 7px rgba(147,219,255,.54); }
body:has(.lup-arrival) #page-content-wrapper > nav.navbar .navbar-toggler .lup-account-toggle-icon {
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  border:0;
  border-radius:inherit;
  background:transparent;
  box-shadow:none;
  color:#d8f3ff;
}
body:has(.lup-arrival) #page-content-wrapper > nav.navbar .navbar-toggler .lup-account-toggle-icon i { color:#d8f3ff; font-size:13px; text-shadow:0 0 9px rgba(143,216,255,.50); }

/* Static page marker fallback for browsers and cached theme layers that do
 * not evaluate :has() while the backend is booting. */
body.lup-arrival-active #page-content-wrapper > nav.navbar {
  border:0;
  border-bottom:1px solid rgba(142,194,255,.13);
  background:linear-gradient(100deg,#1f2744 0%,#18203a 48%,#121a31 100%);
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.025),0 8px 22px rgba(3,7,18,.16);
}
body.lup-arrival-active #page-content-wrapper > nav.navbar #sidebarToggle,
body.lup-arrival-active #page-content-wrapper > nav.navbar .navbar-toggler {
  display:grid; place-items:center;
  width:42px; min-width:42px; height:42px; min-height:42px;
  margin:0; padding:0; border:1px solid rgba(145,210,255,.32);
  border-radius:12px 12px 12px 4px;
  background:linear-gradient(145deg,rgba(79,139,208,.70),rgba(91,66,176,.72));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.27),0 8px 18px rgba(23,45,111,.26),0 0 0 3px rgba(117,184,248,.07);
}
body.lup-arrival-active #page-content-wrapper > nav.navbar #sidebarToggle::after { display:none; }
body.lup-arrival-active #page-content-wrapper > nav.navbar #sidebarToggle .lup-sidebar-glyph { display:grid; width:18px; gap:4px; }
body.lup-arrival-active #page-content-wrapper > nav.navbar #sidebarToggle .lup-sidebar-glyph i { height:2px; background:#e5f7ff; box-shadow:0 0 7px rgba(147,219,255,.54); }
body.lup-arrival-active #page-content-wrapper > nav.navbar .navbar-toggler .lup-account-toggle-icon { display:grid; place-items:center; width:100%; height:100%; border:0; border-radius:inherit; background:transparent; box-shadow:none; color:#d8f3ff; }
body.lup-arrival-active #page-content-wrapper > nav.navbar .navbar-toggler .lup-account-toggle-icon i { color:#d8f3ff; font-size:13px; text-shadow:0 0 9px rgba(143,216,255,.50); }

/* The header should read as a quiet navigation edge, not as a bright blue
 * strip above the journey. */
body.lup-arrival-active #page-content-wrapper > nav.navbar {
  position:relative;
  /* The account drawer lives directly below this bar. Hiding overflow here
   * clipped the fully opened drawer and made the avatar button look dead. */
  overflow:visible;
  z-index:50;
  background:radial-gradient(ellipse at 18% -140%,rgba(107,177,246,.20),transparent 48%),linear-gradient(100deg,#131a30,#101625 58%,#11172b);
}
body.lup-arrival-active #page-content-wrapper > nav.navbar::before {
  content:'';
  position:absolute;
  right:7%; bottom:0; left:7%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(150,213,255,.58),rgba(164,128,245,.42),transparent);
  box-shadow:0 0 12px rgba(121,187,255,.23);
  pointer-events:none;
}
body.lup-arrival-active #page-content-wrapper > nav.navbar > .container-fluid { position:relative; z-index:1; }
body.lup-arrival-active #page-content-wrapper > nav.navbar .navbar-toggler,
body.lup-arrival-active #page-content-wrapper > nav.navbar .navbar-toggler-icon {
  filter:none;
}
body.lup-arrival-active #page-content-wrapper > nav.navbar .navbar-toggler {
  background:linear-gradient(145deg,#345f9b,#4d3b93);
}
body.lup-arrival-active #page-content-wrapper > nav.navbar .navbar-toggler .lup-account-toggle-icon {
  background:radial-gradient(circle at 34% 27%,rgba(192,234,255,.22),rgba(54,87,157,.12) 58%,transparent 59%);
}

@media (max-width:430px) {
  .lup-arrival-hero,.lup-arrival-journey,.lup-arrival-categories,#lup-arrival-principles { scroll-margin-top:64px; }
  .lup-arrival-next { min-height:44px; }
}

/* Final phone rhythm: the welcome route should feel like one continuous
 * composition, with each section landing close to the navigation edge. */
@media (max-width:430px) {
  body.lup-arrival-active #page-content-wrapper > nav.navbar,
  body.lup-arrival-active #page-content-wrapper > nav.navbar > .container-fluid {
    min-height:58px;
  }

  body.lup-arrival-active #page-content-wrapper > nav.navbar > .container-fluid {
    padding-top:7px;
    padding-bottom:7px;
  }

  .lup-arrival-hero {
    min-height:calc(100svh - 58px);
    padding:20px 22px 30px;
  }

  .lup-arrival-copy {
    margin-top:34px;
  }

  .lup-arrival-copy > p:not(.lup-arrival-kicker) {
    margin:16px 0 20px;
  }

  .lup-arrival-actions { gap:10px; }
  .lup-arrival-next { margin-top:15px; }

  .lup-arrival-journey,
  .lup-arrival-categories,
  #lup-arrival-principles {
    padding-top:46px;
    padding-bottom:44px;
  }

  .lup-arrival-section-head > span,
  .lup-arrival-journey header > span,
  .lup-arrival-principles-copy > span { margin-top:12px; }

  .lup-arrival-journey ol { margin-top:24px; gap:8px; }
  .lup-arrival-category-grid { margin-top:22px; }
  .lup-arrival-categories .lup-arrival-next { margin-top:14px; }
}

/* The welcome page has an intentionally empty legacy brand container between
 * the menu and account controls. On phones it was wrapping onto its own row
 * and creating the large unused blue strip. Keep the controls in one row. */
@media (max-width:767.98px) {
  body.lup-arrival-active #page-content-wrapper > nav.navbar {
    display:flex;
    min-height:58px;
    padding:7px 10px;
  }

  body.lup-arrival-active #page-content-wrapper > nav.navbar > .container-fluid {
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    min-height:42px;
    padding:0;
  }

  body.lup-arrival-active #page-content-wrapper > nav.navbar .navbar-brand {
    display:none;
  }

  body.lup-arrival-active #page-content-wrapper > nav.navbar #sidebarToggle,
  body.lup-arrival-active #page-content-wrapper > nav.navbar .navbar-toggler {
    align-self:center;
    margin:0;
  }

  /* Static fallback matching the :has() drawer rules above. The collapse
   * must float over the page, never become a third item in the header row. */
  body.lup-arrival-active #navbarSupportedContent.show,
  body.lup-arrival-active #navbarSupportedContent.collapsing {
    position:absolute;
    z-index:60;
    top:58px;
    right:10px;
    left:10px;
    width:auto;
    max-height:calc(100svh - 76px);
    margin:0;
    padding:10px;
    overflow-y:auto;
    border:1px solid rgba(178,213,255,.22);
    border-radius:16px;
    background:linear-gradient(145deg,rgba(23,32,54,.98),rgba(12,17,30,.98));
    box-shadow:0 20px 45px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.10);
    transition:none;
  }

  body.lup-arrival-active #navbarSupportedContent.collapsing {
    display:block;
    height:auto;
  }

  body.lup-arrival-active #navbarSupportedContent.show::before {
    content:'KONTO  /  BEREICHE';
    display:block;
    margin:1px 2px 8px;
    color:#a8cff3;
    font-size:8px;
    font-weight:900;
    letter-spacing:.16em;
  }

  /* Account and admin actions share one exact mobile grid. The legacy theme
   * promoted the profile link to a full row, which made the name and Admin
   * button look unrelated to the other two-column controls. */
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }

  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav > .nav-item:first-child,
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav > .nav-item:has(.gdt-profile-link) {
    grid-column:auto;
  }

  /* The account is already represented by the avatar trigger. Repeating the
   * nickname in the drawer wastes a tile and clipped longer names. */
  body.lup-arrival-active #navbarSupportedContent.show .nav-item:has(.gdt-profile-link) {
    display:none;
  }

  body.lup-arrival-active #navbarSupportedContent.show .gdt-profile-link,
  body.lup-arrival-active #navbarSupportedContent.show .gdt-link > a {
    box-sizing:border-box;
    min-height:46px;
    height:46px;
    padding:8px 10px;
    border-radius:12px;
    font-size:10px;
    line-height:1.1;
  }

  body.lup-arrival-active #navbarSupportedContent.show .gdt-profile-link {
    gap:7px;
    overflow:hidden;
  }

  body.lup-arrival-active #navbarSupportedContent.show .gdt-profile-link .gdt-nickname {
    overflow:hidden;
    font-size:10px;
    line-height:1.1;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  /* GDO nests the first account actions in a flex-column container while
   * later actions are direct grid items. Flatten only the welcome drawer so
   * shqiprim, Admin and every other command occupy identical tiles. */
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav > .nav-item,
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav > .nav-item > .nav-link,
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav .gdt-container,
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav .gdt-menu {
    display:contents;
  }

  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav .gdt-link {
    display:flex;
    min-width:0;
  }

  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav .gdt-link > a {
    display:flex;
    align-items:center;
    width:100%;
    min-width:0;
    justify-content:flex-start;
  }

  /* Preserve GDO's real menu groups. Flattening them with display:contents
   * made the individual point controls lose their shared grid on signed-in
   * accounts. */
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav > .nav-item,
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav > .nav-item > .nav-link {
    display:flex;
  }
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav .gdt-container,
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav .gdt-menu {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    width:100%;
  }
}

/* Keep the first call to action connected to the next chapter instead of
 * reserving an almost full extra screen of empty hero space. */
@media (max-width:430px) {
  .lup-arrival-hero {
    min-height:660px;
  }

  .lup-arrival-journey,
  .lup-arrival-categories,
  #lup-arrival-principles {
    padding-top:38px;
    padding-bottom:38px;
  }

  .lup-arrival-journey > header,
  .lup-arrival-section-head,
  .lup-arrival-principles-copy { margin-top:0; }
}

/* One account trigger for every backend module. Welcome previously received
 * this blue control alone via its page marker; the account drawer is global,
 * so the trigger must be global as well. The left sidebar control stays its
 * own navigation affordance. */
#page-content-wrapper > nav.navbar .navbar-toggler {
  display:grid;
  place-items:center;
  width:42px;
  min-width:42px;
  height:42px;
  min-height:42px;
  margin:0;
  padding:0;
  border:1px solid rgba(145,210,255,.32);
  border-radius:12px 12px 12px 4px;
  background:linear-gradient(145deg,#345f9b,#4d3b93);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.27),0 8px 18px rgba(23,45,111,.26),0 0 0 3px rgba(117,184,248,.07);
  filter:none;
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
#page-content-wrapper > nav.navbar .navbar-toggler:hover,
#page-content-wrapper > nav.navbar .navbar-toggler:focus-visible {
  border-color:rgba(205,233,255,.58);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.33),0 10px 23px rgba(23,45,111,.34),0 0 0 3px rgba(117,184,248,.16);
  filter:brightness(1.08);
  transform:translateY(-1px);
}
#page-content-wrapper > nav.navbar .navbar-toggler .lup-account-toggle-icon {
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  border:0;
  border-radius:inherit;
  background:radial-gradient(circle at 34% 27%,rgba(192,234,255,.22),rgba(54,87,157,.12) 58%,transparent 59%);
  box-shadow:none;
  color:#d8f3ff;
}
#page-content-wrapper > nav.navbar .navbar-toggler .lup-account-toggle-icon i {
  color:#d8f3ff;
  font-size:13px;
  text-shadow:0 0 9px rgba(143,216,255,.50);
}

/* The welcome marker sits below the heading. Its quiet beam belongs to the
 * shared page field, so it remains coherent while the visitor scrolls. */
.lup-arrival-world-pin {
  top:32%;
  right:10%;
  width:54px;
  height:54px;
  border:1px solid rgba(222,242,255,.72);
  border-radius:50% 50% 50% 9px;
  background:radial-gradient(circle at 50% 45%,#f4fcff 0 10%,#8ed8fa 11% 20%,transparent 21%),linear-gradient(145deg,#58bfe9 0%,#5671ca 56%,#6248ac 100%);
  box-shadow:0 11px 0 rgba(32,38,100,.28),0 20px 36px rgba(0,0,0,.22),0 0 0 6px rgba(118,205,255,.045),0 0 27px rgba(112,204,255,.42),inset 0 1px 0 rgba(255,255,255,.54);
}
.lup-arrival-world-signal {
  position:absolute;
  z-index:1;
  top:32%;
  right:calc(10% - 6px);
  width:min(58vw,620px);
  height:2px;
  opacity:.42;
  pointer-events:none;
  transform:rotate(-16deg);
  transform-origin:right center;
  background:linear-gradient(90deg,transparent 0%,rgba(112,184,255,.04) 28%,rgba(154,221,255,.44) 72%,rgba(226,246,255,.76) 100%);
  box-shadow:0 0 7px rgba(129,204,255,.20),0 0 20px rgba(109,111,235,.10);
  animation:lup-arrival-world-signal 8.5s ease-in-out infinite;
}
@keyframes lup-arrival-world-signal {
  0%,100% { opacity:.13; filter:brightness(.8); transform:rotate(-16deg) scaleX(.76); }
  48% { opacity:.50; filter:brightness(1.16); transform:rotate(-16deg) scaleX(1); }
}
@media (max-width:760px) {
  .lup-arrival-world-pin {
    top:34%;
    right:7%;
  }
  .lup-arrival-world-signal {
    top:34%;
    right:calc(7% - 5px);
    width:62vw;
    opacity:.31;
  }
}
@media (prefers-reduced-motion:reduce) {
  .lup-arrival-world-signal { animation:none; opacity:.20; }
}

/* Welcome is deliberately quieter than the app itself: one marker, one word
 * mark, and restrained navigation controls instead of competing blue cards. */
body.lup-arrival-active #page-content-wrapper > nav.navbar #sidebarToggle,
body.lup-arrival-active #page-content-wrapper > nav.navbar .navbar-toggler {
  background:linear-gradient(145deg,rgba(20,28,43,.94),rgba(31,30,55,.94));
  border-color:rgba(193,210,235,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 7px 18px rgba(0,0,0,.17);
}
body.lup-arrival-active #page-content-wrapper > nav.navbar #sidebarToggle:hover,
body.lup-arrival-active #page-content-wrapper > nav.navbar .navbar-toggler:hover {
  background:linear-gradient(145deg,rgba(34,45,64,.98),rgba(43,38,70,.98));
  border-color:rgba(203,225,248,.34);
}
.lup-arrival-brand { gap:9px; }
.lup-arrival-brand b { color:#f3f4f8; text-shadow:none; }
.lup-arrival-brand small { color:rgba(207,211,225,.62); }
.lup-arrival-world-pin {
  border-color:rgba(232,231,255,.56);
  background:radial-gradient(circle at 50% 45%,#fff 0 9%,#d9e9fa 10% 18%,transparent 19%),linear-gradient(145deg,#8494bb 0%,#625f93 57%,#4b396f 100%);
  box-shadow:0 11px 0 rgba(25,27,59,.26),0 20px 36px rgba(0,0,0,.20),0 0 0 6px rgba(171,182,255,.035),0 0 25px rgba(164,185,255,.28),inset 0 1px 0 rgba(255,255,255,.52);
}
.lup-arrival-world-signal {
  opacity:.28;
  background:linear-gradient(90deg,transparent 0%,rgba(173,182,255,.025) 28%,rgba(191,211,244,.27) 72%,rgba(240,245,255,.48) 100%);
}

/* The old left drawer is part of the welcome journey too. Keep its field
 * charcoal-blue, use the full width for language choice and avoid a second
 * loud colour system beside the hero. */
body.lup-arrival-active #gdo-left-bar {
  background:radial-gradient(ellipse at 88% 4%,rgba(105,100,164,.12),transparent 30%),linear-gradient(180deg,#121a29,#0b1019 88%);
  border-right-color:rgba(194,211,235,.13);
  box-shadow:14px 0 34px rgba(0,0,0,.29);
}
body.lup-arrival-active #gdo-left-bar::before { color:rgba(211,219,233,.68); }
body.lup-arrival-active #gdo-left-bar .gdt-link {
  border-color:rgba(201,215,238,.09);
  background:rgba(255,255,255,.018);
}
body.lup-arrival-active #gdo-left-bar .gdt-link a { color:#d4d9e3; }
body.lup-arrival-active #gdo-left-bar .gdt-link a i {
  border-color:rgba(205,218,238,.14);
  background:rgba(154,171,204,.10);
  color:#c4d3e7;
}
body.lup-arrival-active #gdo-left-bar .gdt-link:hover {
  transform:translateX(2px);
  background:rgba(176,192,221,.075);
  box-shadow:inset 2px 0 0 rgba(184,207,239,.56);
}
body.lup-arrival-active #gdo-left-bar .gdo-lang-switch {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:6px;
  width:100%;
  padding:9px;
  border-color:rgba(197,213,239,.11);
  border-radius:12px;
  background:rgba(255,255,255,.025);
}
body.lup-arrival-active #gdo-left-bar .gdo-lang-switch::before { grid-column:1 / -1; color:rgba(205,215,233,.55); }
body.lup-arrival-active #gdo-left-bar .gdo-lang-switch a {
  width:100%;
  height:25px;
  border-color:rgba(202,216,239,.10);
  border-radius:7px;
  background:rgba(5,9,17,.30);
}
body.lup-arrival-active #gdo-left-bar .gdo-lang-switch a:hover,
body.lup-arrival-active #gdo-left-bar .gdo-lang-switch a:focus-visible {
  transform:translateY(-1px);
  border-color:rgba(204,223,244,.38);
  background:rgba(160,184,220,.13);
  box-shadow:none;
}

/* Final welcome drawer geometry — deliberately force this over the legacy
 * language module's inline-sized controls. */
body.lup-arrival-active #gdo-left-bar {
  padding:54px 12px 16px;
  background:#0d1420;
}
body.lup-arrival-active #gdo-left-bar::before {
  top:17px;
  left:14px;
  content:'LINKUUP · MENÜ';
  letter-spacing:.13em;
}
body.lup-arrival-active #gdo-left-bar .gdo-lang-switch {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:center;
  gap:5px;
  margin:0 0 14px;
  padding:7px;
  background:rgba(199,215,240,.035);
}
body.lup-arrival-active #gdo-left-bar .gdo-lang-switch::before {
  display:none;
  content:none;
}
body.lup-arrival-active #gdo-left-bar .gdo-lang-switch a {
  display:grid;
  place-items:center;
  width:100%;
  min-width:0;
  height:28px;
  margin:0;
  padding:0;
  border-radius:7px;
}
body.lup-arrival-active #gdo-left-bar .gdo-lang-switch img {
  width:18px;
  max-width:18px;
}

/* Shared backend sidebar: this is intentionally global, because a drawer
 * should not change its visual language when the user changes backend pages. */
#gdo-left-bar {
  background:#0d1420;
  border-right:1px solid rgba(197,213,235,.13);
}
#gdo-left-bar .gdt-bar { gap:7px; }
#gdo-left-bar .gdt-link {
  border-color:rgba(201,216,238,.09);
  border-radius:10px;
  background:rgba(255,255,255,.018);
  box-shadow:none;
}
#gdo-left-bar .gdt-link a { min-height:44px; color:#d7dde8; }
#gdo-left-bar .gdt-link a i {
  border-color:rgba(202,218,238,.13);
  border-radius:8px;
  background:rgba(184,200,224,.09);
  box-shadow:none;
  color:#c9d8ea;
}
#gdo-left-bar .gdo-lang-switch {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  width:100%;
  margin:0 0 14px;
  padding:7px;
  border-color:rgba(202,216,238,.12);
  border-radius:10px;
  background:rgba(255,255,255,.022);
}
#gdo-left-bar .gdo-lang-switch::before { display:none; content:none; }
#gdo-left-bar .gdo-lang-switch a {
  display:grid;
  flex:1 1 0;
  place-items:center;
  width:auto;
  min-width:0;
  height:28px;
  margin:0;
  padding:0;
  border-color:rgba(207,220,240,.10);
  border-radius:7px;
  background:rgba(4,8,15,.28);
}

/* LinkUUp control deck: a flat, floating navigation layer rather than a
 * stack of generic Bootstrap cards.  The content remains exactly the same. */
#gdo-left-bar {
  width:278px;
  padding:64px 14px 18px;
  background:linear-gradient(180deg,#101927 0%,#0a1019 72%,#080d15 100%);
  box-shadow:18px 0 50px rgba(0,0,0,.34);
}
#gdo-left-bar::before {
  top:20px;
  left:17px;
  content:'LINKUUP  ·  BEREICHE';
  color:#e4e8f1;
  font-size:10px;
  letter-spacing:.17em;
}
#gdo-left-bar .gdt-bar {
  position:relative;
  display:flex;
  flex-direction:column;
  gap:2px;
}
#gdo-left-bar .gdt-bar::after {
  content:'';
  position:absolute;
  top:65px;
  bottom:18px;
  left:17px;
  width:1px;
  background:linear-gradient(180deg,rgba(164,193,230,.23),rgba(164,193,230,.025));
  pointer-events:none;
}
#gdo-left-bar .gdo-lang-switch {
  order:-1;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px;
  margin:0 0 18px;
  padding:0 0 14px;
  border:0;
  border-bottom:1px solid rgba(190,210,237,.10);
  border-radius:0;
  background:transparent;
}
#gdo-left-bar .gdo-lang-switch a {
  height:30px;
  border:1px solid rgba(192,211,238,.12);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}
#gdo-left-bar .gdo-lang-switch a:hover,
#gdo-left-bar .gdo-lang-switch a:focus-visible {
  transform:translateY(-1px);
  border-color:rgba(202,224,246,.46);
  background:rgba(147,175,215,.13);
}
#gdo-left-bar .gdt-link {
  z-index:1;
  overflow:visible;
  border:0;
  border-radius:9px;
  background:transparent;
}
#gdo-left-bar .gdt-link::before {
  top:50%;
  bottom:auto;
  left:0;
  width:4px;
  height:4px;
  border-radius:50%;
  background:rgba(185,201,223,.34);
  box-shadow:none;
  transform:translateY(-50%);
}
#gdo-left-bar .gdt-link a {
  min-height:47px;
  padding:9px 9px 9px 24px;
  border:1px solid transparent;
  border-radius:9px;
  color:#bfc9d8;
  font-size:12px;
  font-weight:720;
}
#gdo-left-bar .gdt-link a i {
  width:26px;
  height:26px;
  margin-right:10px;
  border:0;
  border-radius:50%;
  background:rgba(171,191,220,.11);
  color:#c9d9ec;
}
#gdo-left-bar .gdt-link:hover,
#gdo-left-bar .gdt-link:focus-within {
  transform:none;
  background:transparent;
  box-shadow:none;
}
#gdo-left-bar .gdt-link:hover::before,
#gdo-left-bar .gdt-link:focus-within::before {
  width:5px;
  height:5px;
  background:#b7dcff;
  box-shadow:0 0 10px rgba(154,208,255,.70);
}
#gdo-left-bar .gdt-link:hover a,
#gdo-left-bar .gdt-link:focus-within a {
  border-color:rgba(185,208,237,.13);
  background:linear-gradient(90deg,rgba(161,190,226,.10),rgba(161,190,226,.025));
  color:#f2f6fb;
}

/* Actual Bootstrap backend sidebar — rebuilt as LinkUUp's control deck. */
#wrapper > #sidebar-wrapper {
  width:15rem;
  min-width:15rem;
  flex:0 0 15rem;
  border-right:1px solid rgba(183,206,233,.14);
  background:radial-gradient(ellipse at 100% 0,rgba(89,106,158,.17),transparent 33%),linear-gradient(180deg,#111a29 0%,#0b121d 58%,#080d15 100%);
  box-shadow:18px 0 48px rgba(0,0,0,.28);
}
#sidebar-wrapper .lup-sidebar-brand {
  min-height:82px;
  padding:17px 18px 14px;
  border-bottom:1px solid rgba(191,211,237,.11);
  background:linear-gradient(100deg,rgba(255,255,255,.045),transparent 66%);
}
#sidebar-wrapper .lup-sidebar-brand::after { opacity:.45; }
#sidebar-wrapper .lup-sidebar-brand-mark {
  flex-basis:36px;
  width:36px;
  height:36px;
  border-color:rgba(207,226,246,.27);
  border-radius:11px 11px 11px 4px;
  background:linear-gradient(145deg,rgba(137,151,188,.58),rgba(83,75,132,.54));
  box-shadow:none;
}
#sidebar-wrapper .lup-sidebar-brand strong { color:#edf2f8; font-size:13px; letter-spacing:.16em; text-shadow:none; }
#sidebar-wrapper .lup-sidebar-brand small { color:rgba(197,211,229,.55); }
#sidebar-wrapper .lup-sidebar-section-label { padding:15px 18px 8px; color:rgba(190,207,229,.54); }
#sidebar-wrapper .lup-sidebar-section-label span { background:linear-gradient(90deg,#a8caeb,rgba(168,202,235,.08)); box-shadow:none; }
#sidebar-wrapper #leftnav { padding:0 12px 16px; }
#sidebar-wrapper #leftnav > .list-group-item {
  margin:2px 0;
  padding:0;
  overflow:visible;
  border:0;
  border-radius:10px;
  background:transparent;
  box-shadow:none;
}
#sidebar-wrapper #leftnav > .list-group-item:has(.gdo-lang-switch) {
  margin:0 0 10px;
  padding:0 0 12px;
  border-bottom:1px solid rgba(190,210,237,.10);
}
#sidebar-wrapper .gdo-lang-switch {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  width:100%;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
#sidebar-wrapper .gdo-lang-switch a {
  display:grid;
  flex:1 1 0;
  place-items:center;
  width:auto;
  min-width:0;
  height:30px;
  padding:0;
  /*border:1px solid rgba(191,211,237,.12);*/
  /*border-radius:8px;*/
  background:rgba(255,255,255,.025);
  box-shadow:none;
}
#sidebar-wrapper .gdo-lang-switch a:hover,#sidebar-wrapper .gdo-lang-switch a:focus-visible { transform:translateY(-1px); border-color:rgba(206,229,249,.42); background:rgba(172,198,228,.13); box-shadow:none; }
#sidebar-wrapper #leftnav > .list-group-item .gdt-link { position:relative; display:block; overflow:visible; border:0; border-radius:10px; background:transparent; box-shadow:none; }
#sidebar-wrapper #leftnav > .list-group-item .gdt-link::before { top:50%; bottom:auto; left:1px; width:4px; height:4px; border-radius:50%; background:rgba(182,200,223,.34); box-shadow:none; transform:translateY(-50%); }
#sidebar-wrapper #leftnav > .list-group-item .gdt-link > a { min-height:46px; padding:9px 9px 9px 22px; border:1px solid transparent; border-radius:10px; background:transparent; color:#bdc8d8; font-size:12px; font-weight:720; }
#sidebar-wrapper #leftnav > .list-group-item .gdt-link > a i { width:26px; height:26px; margin-right:10px; border:0; border-radius:50%; background:rgba(173,193,219,.10); color:#c5d7eb; box-shadow:none; }
#sidebar-wrapper #leftnav > .list-group-item:has(.gdt-link:hover) .gdt-link::before,#sidebar-wrapper #leftnav > .list-group-item:focus-within .gdt-link::before { width:5px; height:5px; background:#b8deff; box-shadow:0 0 10px rgba(151,208,255,.68); }
#sidebar-wrapper #leftnav > .list-group-item:has(.gdt-link:hover) .gdt-link > a,#sidebar-wrapper #leftnav > .list-group-item:focus-within .gdt-link > a { border-color:rgba(187,211,239,.13); background:linear-gradient(90deg,rgba(166,193,226,.11),rgba(166,193,226,.025)); color:#f2f6fb; }
#sidebar-wrapper .lup-sidebar-foot { margin:0 15px 14px; padding:12px 3px 0; border-top-color:rgba(190,210,237,.10); color:rgba(184,199,221,.52); }

/* One exact internal grid: every sidebar element now shares the same edge. */
#wrapper > #sidebar-wrapper .lup-sidebar-brand { padding-left:16px; padding-right:16px; }
#wrapper > #sidebar-wrapper .lup-sidebar-section-label { padding-left:16px; padding-right:16px; }
#wrapper > #sidebar-wrapper #leftnav { padding-left:16px; padding-right:16px; }
#wrapper > #sidebar-wrapper .lup-sidebar-foot { margin-left:16px; margin-right:16px; }
#wrapper > #sidebar-wrapper::after {
  content:'';
  position:absolute;
  top:86px;
  right:-38px;
  width:112px;
  height:112px;
  border:1px solid rgba(168,202,234,.10);
  border-radius:50%;
  box-shadow:0 0 0 20px rgba(113,126,196,.025),0 0 46px rgba(90,141,199,.08);
  pointer-events:none;
}
#wrapper > #sidebar-wrapper .lup-sidebar-brand-mark { position:relative; overflow:hidden; }
#wrapper > #sidebar-wrapper .lup-sidebar-brand-mark::after {
  content:'';
  position:absolute;
  width:8px;
  height:8px;
  right:5px;
  bottom:5px;
  border:1px solid rgba(221,243,255,.50);
  border-radius:50%;
  background:#80d7bb;
  box-shadow:0 0 10px rgba(107,223,177,.58);
}

/* Every jump arrives at a stable reading position, also after an expanded
 * explanation changed the height of the preceding step. */
.lup-arrival-journey,
.lup-arrival-categories,
.lup-arrival-principles { scroll-margin-top:76px; }

/* The welcome column can become narrow beside docked developer tools even
 * while the browser viewport itself stays desktop-wide. Size this chapter by
 * its actual journey container, not only by the viewport media query. */
.lup-arrival { container-type:inline-size; }
@container (max-width:680px) {
  #lup-arrival-principles { grid-template-columns:1fr; gap:28px; }
  #lup-arrival-principles .lup-arrival-principles-copy,
  #lup-arrival-principles .lup-arrival-principles-list { min-width:0; }
  #lup-arrival-principles .lup-arrival-principles-list > div { min-height:74px; }
}
.lup-arrival-reading { overflow-anchor:none; }

/* iPhone 6 / short portrait screens: keep a whole journey step and its next
 * action together after a guided jump. The copy remains present, just tighter. */
@media (max-width:390px) and (max-height:700px) {
  .lup-arrival-journey {
    min-height:0;
    padding-top:28px;
    padding-bottom:24px;
  }
  .lup-arrival-journey h2 { font-size:32px; line-height:1; }
  .lup-arrival-journey header > p { margin-bottom:10px; }
  .lup-arrival-journey .lup-arrival-more { margin-top:9px; }
  .lup-arrival-journey ol { margin-top:18px; }
  .lup-arrival-journey li,
  .lup-arrival-journey li + li {
    min-height:0;
    padding:13px 0 13px 50px;
  }
  .lup-arrival-journey li > span { top:15px; }
  .lup-arrival-journey li > i { top:16px; width:32px; height:32px; font-size:12px; }
  .lup-arrival-journey h3 { margin:0 0 3px; font-size:15px; }
  .lup-arrival-journey li p { font-size:11px; line-height:1.35; }
  .lup-arrival-journey .lup-arrival-next { min-height:42px; margin-top:14px; }
}

/* Backend control deck: the same calm depth as the welcome screen, without
 * sacrificing space to decoration. */
#wrapper > #sidebar-wrapper {
  background:radial-gradient(ellipse at 112% 20%,rgba(101,94,176,.18),transparent 34%),radial-gradient(ellipse at 104% 67%,rgba(77,150,196,.10),transparent 31%),linear-gradient(180deg,#101b2b 0%,#0b1421 58%,#080f19 100%);
}
#wrapper > #sidebar-wrapper::after {
  top:118px;
  right:-54px;
  width:138px;
  height:138px;
  border-color:rgba(175,210,241,.13);
  box-shadow:0 0 0 24px rgba(117,129,206,.028),0 0 58px rgba(92,154,211,.10);
}
#wrapper > #sidebar-wrapper .lup-sidebar-brand,
#wrapper > #sidebar-wrapper .lup-sidebar-section-label,
#wrapper > #sidebar-wrapper #leftnav,
#wrapper > #sidebar-wrapper .lup-sidebar-foot { position:relative; z-index:1; }
#wrapper > #sidebar-wrapper #leftnav { padding-left:8px; padding-right:10px; }
#wrapper > #sidebar-wrapper .lup-sidebar-section-label { padding-left:10px; }
#wrapper > #sidebar-wrapper #leftnav > .list-group-item .gdt-link > a { padding-left:6px; }
#wrapper > #sidebar-wrapper #leftnav > .list-group-item .gdt-link > a i { margin-right:7px; }
#wrapper > #sidebar-wrapper #leftnav > .list-group-item .gdt-link::before { left:0; }
#wrapper > #sidebar-wrapper .lup-sidebar-foot { margin-left:10px; margin-right:10px; }

/* Navigation copy sits closer to the edge; the two top controls use one
 * shared control language on every backend page. */
#wrapper > #sidebar-wrapper #leftnav > .list-group-item .gdt-link > a {
  padding-left:10px;
}
#wrapper > #sidebar-wrapper #leftnav > .list-group-item .gdt-link > a i {
  width:24px;
  height:24px;
  margin-right:8px;
}
#page-content-wrapper > nav.navbar #sidebarToggle,
#page-content-wrapper > nav.navbar .navbar-toggler {
  display:grid;
  place-items:center;
  width:42px;
  min-width:42px;
  height:42px;
  min-height:42px;
  padding:0;
  border:1px solid rgba(195,214,238,.18);
  border-radius:11px;
  background:linear-gradient(145deg,#172235,#201c35);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 7px 18px rgba(0,0,0,.18);
}
#page-content-wrapper > nav.navbar #sidebarToggle:hover,
#page-content-wrapper > nav.navbar .navbar-toggler:hover {
  border-color:rgba(210,229,248,.38);
  background:linear-gradient(145deg,#23324a,#30274e);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 9px 22px rgba(0,0,0,.22);
}

/* Final alignment override: this comes after legacy backend spacing rules. */
#wrapper > #sidebar-wrapper #leftnav { padding-left:8px; padding-right:10px; }
#wrapper > #sidebar-wrapper #leftnav > .list-group-item .gdt-link > a { padding-left:6px; }
#wrapper > #sidebar-wrapper #leftnav > .list-group-item .gdt-link > a i { width:24px; height:24px; margin-right:7px; }

/* Old GDO UTF-8 icon fallbacks contain literal words ("user-circle",
 * "shield-alt"). The menu already supplies its own small status point. */
body.lup-arrival-active #navbarSupportedContent.show .gdt-link > a > .gdo-utf8-icon-user-circle,
body.lup-arrival-active #navbarSupportedContent.show .gdt-link > a > .gdo-utf8-icon-shield-alt {
  display:none;
  width:0;
  min-width:0;
  margin:0;
  padding:0;
}

/* One compact icon language for every account action. */
@media (max-width:767.98px) {
  body.lup-arrival-active #navbarSupportedContent.show .gdt-link > a > .gdo-icon { display:none; }
  body.lup-arrival-active #navbarSupportedContent.show .gdt-link > a::before {
    display:grid;
    place-items:center;
    flex:0 0 20px;
    width:20px;
    height:20px;
    margin:0;
    padding:0;
    border:1px solid rgba(183,216,255,.24);
    border-radius:7px 7px 7px 3px;
    background:linear-gradient(145deg,rgba(113,153,224,.24),rgba(113,82,187,.18));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 0 10px rgba(125,171,240,.09);
    color:#c9e5ff;
    font-family:'Font Awesome 5 Free';
    font-size:9px;
    font-weight:900;
    line-height:1;
  }
  body.lup-arrival-active #navbarSupportedContent.show a[href*='user;profile']::before { content:'\f2bd'; }
  body.lup-arrival-active #navbarSupportedContent.show a[href*='account;']::before { content:'\f013'; }
  body.lup-arrival-active #navbarSupportedContent.show a[href*='admin;']::before { content:'\f3ed'; }
  body.lup-arrival-active #navbarSupportedContent.show a[href*='friends;']::before { content:'\f0c0'; }
  body.lup-arrival-active #navbarSupportedContent.show a[href*='gallery;']::before { content:'\f03e'; }
  body.lup-arrival-active #navbarSupportedContent.show a[href*='login;logout']::before { content:'\f2f5'; }
  body.lup-arrival-active #navbarSupportedContent.show a[href*='linkuup;main']::before { content:'\f0c0'; }
}

/* Signed-in account menu: GDO nests the first account links in a container.
 * Flatten structural wrappers only, then place every actual action in one
 * equal two-column grid: profile/account, admin/friends, gallery/logout. */
@media (max-width:767.98px) {
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    width:100%;
    margin:0;
    padding:0;
  }
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav > .nav-item,
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav > .nav-item > .nav-link,
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav .gdt-container,
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav .gdt-menu {
    display:contents;
  }
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav .gdt-link {
    display:block;
    min-width:0;
    width:100%;
  }
  body.lup-arrival-active #navbarSupportedContent.show .navbar-nav .gdt-link > a {
    display:flex;
    align-items:center;
    gap:7px;
    min-width:0;
    width:100%;
    min-height:46px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body.lup-arrival-active #navbarSupportedContent.show .gdo-utf8-icon-user-circle,
  body.lup-arrival-active #navbarSupportedContent.show .gdo-utf8-icon-shield-alt {
    display:none;
  }
}

.gdt-panel {
    width: 100%;
}

#content-wrap .gdt-form-actions input[type="submit"],
#sidebar-wrapper .gdo-lang-switch a {
    border: none;
    box-shadow: none;
}

/* Staff shortcut from the room statistics card to the printable A5 flyer. */
.lup-stat-flyer {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 10px;
    padding: 7px 10px;
    border: 1px solid rgba(174, 203, 255, .22);
    border-radius: 10px;
    color: #e9edff;
    background: rgba(97, 81, 207, .20);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

.lup-stat-flyer:hover,
.lup-stat-flyer:focus {
    color: #fff;
    background: rgba(111, 165, 245, .34);
    text-decoration: none;
}
