:root{
  --bg:#050806;
  --panel:#0a0f0b;
  --panel2:#0d1510;
  --line:#17351e;
  --green:#01c21e;
  --green-soft:#25e33d;
  --text:#f4fff6;
  --muted:#8fa395;
  --danger:#ff5151;
  --radius:20px;
}

*{
  box-sizing:border-box;
}

html,
body{
  margin:0;
  min-height:100%;
  background:
    radial-gradient(circle at 20% 0%, rgba(1,194,30,.14), transparent 34rem),
    radial-gradient(circle at 100% 100%, rgba(1,194,30,.07), transparent 32rem),
    var(--bg);
  color:var(--text);
  font-family:
    Inter,
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.16;
  background-image:
    linear-gradient(rgba(1,194,30,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(1,194,30,.08) 1px, transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom, black, transparent 80%);
}

a{
  color:inherit;
}

.bp-login{
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);
}

.bp-hero{
  position:relative;
  padding:72px clamp(42px,7vw,120px);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  overflow:hidden;
  border-right:1px solid rgba(1,194,30,.14);
}

.bp-brand{
  display:flex;
  align-items:center;
  gap:14px;
  font-weight:900;
  letter-spacing:.16em;
  font-size:14px;
}

.bp-brand-mark{
  width:42px;
  height:42px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:var(--green);
  color:#001603;
  box-shadow:0 0 34px rgba(1,194,30,.3);
  font-weight:1000;
  letter-spacing:-.08em;
}

.bp-kicker{
  color:var(--green-soft);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:13px;
  font-weight:800;
  margin-bottom:18px;
}

.bp-title{
  font-size:clamp(52px,7vw,108px);
  line-height:.88;
  letter-spacing:-.065em;
  margin:0;
  max-width:900px;
  text-transform:uppercase;
}

.bp-title span{
  color:var(--green);
  text-shadow:0 0 42px rgba(1,194,30,.16);
}

.bp-lead{
  max-width:650px;
  color:#b5c6b9;
  line-height:1.7;
  font-size:17px;
  margin-top:28px;
}

.bp-features{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:34px;
}

.bp-chip{
  padding:10px 14px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(7,17,9,.72);
  color:#bfd0c2;
  font-size:13px;
}

.bp-login-side{
  display:grid;
  place-items:center;
  padding:38px;
}

.bp-card{
  width:min(100%,500px);
  padding:34px;
  border:1px solid rgba(1,194,30,.2);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(14,23,16,.97), rgba(7,12,8,.98));
  box-shadow:
    0 30px 90px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(255,255,255,.035);
}

.bp-card h1{
  margin:0 0 7px;
  font-size:30px;
  letter-spacing:-.035em;
}

.bp-subtitle{
  color:var(--muted);
  margin:0 0 30px;
  line-height:1.55;
}

.bp-field{
  margin-bottom:18px;
}

.bp-field label{
  display:block;
  font-weight:750;
  margin-bottom:9px;
  font-size:14px;
}

.bp-input{
  width:100%;
  border:1px solid #203126;
  border-radius:13px;
  background:#070c08;
  color:white;
  padding:15px 16px;
  outline:none;
  font-size:15px;
  transition:.18s ease;
}

.bp-input:focus{
  border-color:var(--green);
  box-shadow:0 0 0 3px rgba(1,194,30,.11);
}

.bp-button{
  width:100%;
  border:0;
  border-radius:13px;
  padding:15px 18px;
  font-size:15px;
  font-weight:900;
  cursor:pointer;
  background:var(--green);
  color:#001a04;
  box-shadow:0 12px 34px rgba(1,194,30,.2);
  transition:.18s ease;
}

.bp-button:hover{
  transform:translateY(-1px);
  background:#0bd62a;
}

.bp-button:disabled{
  opacity:.55;
  cursor:wait;
  transform:none;
}

.bp-error{
  display:none;
  margin:0 0 18px;
  padding:12px 14px;
  border-radius:12px;
  background:rgba(255,81,81,.09);
  border:1px solid rgba(255,81,81,.25);
  color:#ff9a9a;
  font-size:14px;
}

.bp-error.show{
  display:block;
}

.bp-security{
  margin-top:24px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.06);
  display:flex;
  gap:11px;
  align-items:flex-start;
  color:#7f9284;
  font-size:12px;
  line-height:1.55;
}

.bp-security-dot{
  width:8px;
  height:8px;
  margin-top:5px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 12px rgba(1,194,30,.6);
}

/* Portal */

.bp-app{
  min-height:100vh;
}

.bp-topbar{
  height:76px;
  padding:0 34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid rgba(1,194,30,.12);
  background:rgba(5,9,6,.84);
  backdrop-filter:blur(16px);
  position:sticky;
  top:0;
  z-index:20;
}

.bp-topbar-right{
  display:flex;
  align-items:center;
  gap:18px;
}

.bp-user{
  text-align:right;
}

.bp-user b{
  display:block;
  font-size:14px;
}

.bp-user small{
  color:var(--green-soft);
}

.bp-logout{
  border:1px solid #23442a;
  background:#0b130d;
  color:#cfe0d2;
  border-radius:11px;
  padding:9px 13px;
  cursor:pointer;
}

.bp-shell{
  display:grid;
  grid-template-columns:250px minmax(0,1fr);
  min-height:calc(100vh - 76px);
}

.bp-sidebar{
  padding:28px 18px;
  border-right:1px solid rgba(1,194,30,.1);
}

.bp-nav{
  display:grid;
  gap:7px;
}

.bp-nav-item{
  padding:13px 15px;
  border-radius:11px;
  text-decoration:none;
  color:#96aa9a;
  font-weight:700;
  font-size:14px;
}

.bp-nav-item.active{
  color:white;
  background:linear-gradient(90deg, rgba(1,194,30,.17), rgba(1,194,30,.04));
  border:1px solid rgba(1,194,30,.18);
}

.bp-content{
  padding:44px;
  max-width:1450px;
}

.bp-page-kicker{
  color:var(--green);
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-size:12px;
}

.bp-page-title{
  margin:8px 0 8px;
  font-size:42px;
  letter-spacing:-.045em;
}

.bp-page-intro{
  color:var(--muted);
  max-width:680px;
  line-height:1.6;
}

.bp-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:34px;
}

.bp-panel{
  min-height:180px;
  border:1px solid rgba(1,194,30,.13);
  background:linear-gradient(180deg,#0c130e,#080d09);
  border-radius:18px;
  padding:23px;
}

.bp-panel-wide{
  grid-column:span 2;
}

.bp-panel-label{
  color:#7f9484;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.bp-panel h3{
  margin:11px 0 8px;
  font-size:21px;
}

.bp-panel p{
  color:#8ea292;
  line-height:1.55;
  margin:0;
}

.bp-status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:18px;
  font-size:13px;
  color:#b7c9bb;
}

.bp-status::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 12px rgba(1,194,30,.6);
}

@media(max-width:1000px){
  .bp-login{
    grid-template-columns:1fr;
  }

  .bp-hero{
    min-height:440px;
    border-right:0;
    border-bottom:1px solid rgba(1,194,30,.14);
  }

  .bp-shell{
    grid-template-columns:1fr;
  }

  .bp-sidebar{
    display:none;
  }

  .bp-grid{
    grid-template-columns:1fr;
  }

  .bp-panel-wide{
    grid-column:auto;
  }
}

@media(max-width:620px){
  .bp-hero{
    padding:38px 25px;
  }

  .bp-login-side{
    padding:20px;
  }

  .bp-card{
    padding:26px 22px;
  }

  .bp-content{
    padding:28px 20px;
  }

  .bp-topbar{
    padding:0 18px;
  }

  .bp-title{
    font-size:54px;
  }
}

/* ============================================================
   Mein BauPanik Dashboard v0.2
   ============================================================ */

.bp-dashboard-content{
  width:100%;
  max-width:none;
  padding-right:clamp(34px,5vw,90px);
}

.bp-player-hero{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:26px;
  align-items:center;
  padding:30px;
  border-radius:22px;
  border:1px solid rgba(1,194,30,.18);
  background:
    radial-gradient(circle at 0 0,rgba(1,194,30,.15),transparent 300px),
    linear-gradient(135deg,#0c150e,#070c08);
  box-shadow:
    0 26px 80px rgba(0,0,0,.2),
    inset 0 1px 0 rgba(255,255,255,.03);
}

.bp-player-avatar-wrap{
  position:relative;
}

.bp-player-avatar{
  width:94px;
  height:94px;
  border-radius:20px;
  display:grid;
  place-items:center;
  background:
    linear-gradient(145deg,#02da23,#007b14);
  color:#001804;
  font-size:29px;
  font-weight:1000;
  border:1px solid rgba(255,255,255,.16);
  box-shadow:
    0 18px 48px rgba(1,194,30,.19);
}

.bp-avatar-badge{
  position:absolute;
  right:-6px;
  bottom:-6px;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--green);
  color:#001603;
  border:4px solid #09100b;
  font-weight:1000;
}

.bp-avatar-badge.offline{
  background:#435047;
  color:#d7e1d9;
}

.bp-player-name{
  margin:5px 0 12px;
  font-size:38px;
  letter-spacing:-.045em;
}

.bp-player-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.bp-meta-pill{
  border:1px solid #26342a;
  background:#0a100c;
  color:#9daf9f;
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  font-weight:750;
}

.bp-meta-pill.success{
  color:#74ee86;
  border-color:rgba(1,194,30,.25);
  background:rgba(1,194,30,.07);
}

.bp-player-description{
  color:#859a8a;
  margin:14px 0 0;
  font-size:14px;
}

.bp-outline-button{
  border:1px solid rgba(1,194,30,.35);
  color:#c8f8cf;
  background:rgba(1,194,30,.07);
  padding:12px 16px;
  border-radius:12px;
  font-weight:800;
  cursor:pointer;
}

.bp-outline-button:hover{
  background:rgba(1,194,30,.13);
}

.bp-stat-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:15px;
  margin-top:18px;
}

.bp-stat-card{
  padding:20px;
  min-height:126px;
  border-radius:17px;
  border:1px solid rgba(1,194,30,.12);
  background:
    linear-gradient(180deg,#0c130e,#080d09);
  display:flex;
  flex-direction:column;
}

.bp-stat-label{
  color:#7f9584;
  text-transform:uppercase;
  letter-spacing:.11em;
  font-size:11px;
  font-weight:850;
}

.bp-stat-value{
  font-size:32px;
  margin-top:13px;
  line-height:1;
}

.bp-stat-value.small{
  font-size:18px;
  margin-top:17px;
}

.bp-stat-sub{
  color:#6f8273;
  margin-top:auto;
  padding-top:10px;
}

.bp-dashboard-grid{
  display:grid;
  grid-template-columns:minmax(0,2fr) minmax(300px,1fr);
  gap:18px;
  margin-top:18px;
}

.bp-dashboard-card{
  border:1px solid rgba(1,194,30,.12);
  border-radius:19px;
  background:
    linear-gradient(180deg,#0c130e,#080d09);
  padding:24px;
}

.bp-dashboard-wide{
  min-height:240px;
}

.bp-card-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
  margin-bottom:24px;
}

.bp-card-head h2{
  margin:7px 0 0;
  font-size:21px;
}

.bp-state-badge{
  border-radius:999px;
  padding:7px 10px;
  font-size:11px;
  font-weight:850;
}

.bp-state-badge.waiting{
  color:#aab8ad;
  background:#111914;
  border:1px solid #29352c;
}

.bp-state-badge.success{
  color:#75ee86;
  background:rgba(1,194,30,.07);
  border:1px solid rgba(1,194,30,.25);
}

.bp-minecraft-profile{
  display:grid;
  grid-template-columns:1fr 1.4fr 1fr;
  gap:24px;
}

.bp-info-label{
  display:block;
  color:#708275;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.09em;
  margin-bottom:7px;
}

.bp-info-value{
  display:block;
  font-size:14px;
  color:#e8f3ea;
}

.bp-info-value.mono{
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Consolas,
    monospace;
  font-size:12px;
  overflow-wrap:anywhere;
}

.bp-dashboard-notice{
  margin-top:24px;
  padding:15px 17px;
  background:rgba(1,194,30,.045);
  border:1px solid rgba(1,194,30,.12);
  border-radius:13px;
  color:#829587;
  line-height:1.55;
  font-size:13px;
}

.bp-ticket-summary{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:12px 0 22px;
}

.bp-ticket-summary div{
  border-radius:13px;
  background:#080d09;
  border:1px solid #17231a;
  padding:16px;
}

.bp-ticket-summary strong{
  display:block;
  color:var(--green-soft);
  font-size:25px;
}

.bp-ticket-summary span{
  color:#788b7c;
  font-size:12px;
}

.bp-card-button{
  width:100%;
  border:1px solid #1c2e20;
  background:#0b130d;
  color:#7e9382;
  border-radius:11px;
  padding:11px;
}

.bp-news-placeholder{
  display:flex;
  gap:18px;
  align-items:flex-start;
}

.bp-news-tag{
  color:#001904;
  background:var(--green);
  font-weight:950;
  font-size:10px;
  letter-spacing:.1em;
  padding:7px 9px;
  border-radius:8px;
}

.bp-news-placeholder strong{
  font-size:16px;
}

.bp-news-placeholder p{
  color:#7d9181;
  line-height:1.55;
  margin:7px 0 0;
}

.bp-profile-lines{
  display:grid;
  gap:13px;
}

.bp-profile-lines div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  border-bottom:1px solid rgba(255,255,255,.05);
  padding-bottom:12px;
}

.bp-profile-lines span{
  color:#738679;
  font-size:13px;
}

.bp-profile-lines strong{
  text-align:right;
  font-size:13px;
}

.bp-profile-lines .green{
  color:var(--green-soft);
}

@media(max-width:1100px){
  .bp-stat-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .bp-dashboard-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){
  .bp-player-hero{
    grid-template-columns:auto minmax(0,1fr);
  }

  .bp-player-action{
    grid-column:1/-1;
  }

  .bp-outline-button{
    width:100%;
  }

  .bp-minecraft-profile{
    grid-template-columns:1fr;
  }
}

@media(max-width:520px){
  .bp-stat-grid{
    grid-template-columns:1fr;
  }

  .bp-player-avatar{
    width:72px;
    height:72px;
  }

  .bp-player-name{
    font-size:29px;
  }
}

/* ============================================================
   Mein BauPanik - BPAuth Modal v0.3
   ============================================================ */

.bp-modal-overlay{
  position:fixed;
  inset:0;
  z-index:1000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(0,0,0,.76);
  backdrop-filter:blur(8px);
  opacity:0;
  visibility:hidden;
  transition:
    opacity .18s ease,
    visibility .18s ease;
}

.bp-modal-overlay.visible{
  opacity:1;
  visibility:visible;
}

.bp-modal{
  position:relative;
  width:min(460px,100%);
  padding:32px;
  border-radius:22px;
  border:1px solid rgba(1,194,30,.25);
  background:
    radial-gradient(
      circle at 0 0,
      rgba(1,194,30,.14),
      transparent 230px
    ),
    linear-gradient(
      145deg,
      #0d160f,
      #070b08
    );
  box-shadow:
    0 35px 100px rgba(0,0,0,.55),
    0 0 55px rgba(1,194,30,.07);
}

.bp-modal-close{
  position:absolute;
  right:18px;
  top:16px;
  border:0;
  background:transparent;
  color:#778a7b;
  font-size:26px;
  line-height:1;
  cursor:pointer;
}

.bp-modal-close:hover{
  color:#dff8e3;
}

.bp-modal-icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  margin-bottom:20px;
  border-radius:14px;
  background:
    linear-gradient(
      145deg,
      #03dd25,
      #007d15
    );
  color:#001a04;
  font-weight:1000;
  box-shadow:
    0 15px 35px rgba(1,194,30,.17);
}

.bp-modal h2{
  margin:7px 0 10px;
  font-size:27px;
}

.bp-modal-text{
  margin:0 0 23px;
  color:#869989;
  line-height:1.55;
}

.bp-modal-text strong{
  color:#8ff49e;
}

.bp-modal-label{
  display:block;
  margin-bottom:8px;
  color:#99ab9c;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.bp-code-input{
  width:100%;
  box-sizing:border-box;
  padding:15px 16px;
  border-radius:12px;
  border:1px solid #26362a;
  outline:none;
  background:#050906;
  color:#dff8e3;
  font:800 18px/1.2
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Consolas,
    monospace;
  letter-spacing:.09em;
  text-align:center;
  text-transform:uppercase;
}

.bp-code-input:focus{
  border-color:rgba(1,194,30,.65);
  box-shadow:
    0 0 0 3px rgba(1,194,30,.08);
}

.bp-modal-submit{
  width:100%;
  margin-top:14px;
  padding:13px 16px;
  border:1px solid rgba(1,194,30,.4);
  border-radius:12px;
  background:
    linear-gradient(
      180deg,
      #02c820,
      #019219
    );
  color:#001904;
  font-weight:950;
  cursor:pointer;
}

.bp-modal-submit:hover{
  filter:brightness(1.08);
}

.bp-modal-submit:disabled{
  opacity:.55;
  cursor:wait;
}

.bp-modal-message{
  min-height:20px;
  margin-top:11px;
  font-size:13px;
}

.bp-modal-message.error{
  color:#ff7676;
}

.bp-modal-message.success{
  color:#78ef8a;
}

.bp-modal-security{
  margin:18px 0 0;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.05);
  color:#657669;
  font-size:11px;
  line-height:1.5;
}

/* ============================================================
   Mein BauPanik - Minecraft Player Head v0.5
   ============================================================ */

.bp-player-avatar.minecraft-head{
  overflow:hidden;
  padding:0;
  background:#071108;
  border-color:rgba(1,194,30,.48);
}

.bp-minecraft-head-canvas{
  display:block;
  width:100%;
  height:100%;
  image-rendering:pixelated;
  image-rendering:crisp-edges;
}

/* ============================================================
   Mein BauPanik - Profil & Privatsphäre v0.6
   ============================================================ */

.bp-profile-view[hidden],
#dashboardView[hidden]{
  display:none !important;
}

.bp-profile-view{
  width:100%;
}

.bp-profile-page-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:30px;
  padding:28px 30px;
  margin-bottom:18px;
  border:1px solid rgba(1,194,30,.16);
  border-radius:20px;
  background:
    radial-gradient(
      circle at 0 0,
      rgba(1,194,30,.12),
      transparent 300px
    ),
    linear-gradient(
      145deg,
      #0c140e,
      #070c08
    );
}

.bp-profile-page-head h1{
  margin:6px 0 8px;
  font-size:34px;
  letter-spacing:-.035em;
}

.bp-profile-page-head p{
  max-width:720px;
  margin:0;
  color:#7f9383;
  line-height:1.55;
}

.bp-profile-security-badge{
  white-space:nowrap;
  padding:10px 13px;
  border-radius:999px;
  border:1px solid rgba(1,194,30,.25);
  background:rgba(1,194,30,.07);
  color:#8ef19d;
  font-size:12px;
  font-weight:800;
}

.bp-profile-page-grid{
  display:grid;
  grid-template-columns:
    minmax(0,1.35fr)
    minmax(320px,.85fr);
  gap:18px;
}

.bp-profile-edit-card{
  padding:26px;
  border-radius:19px;
  border:1px solid rgba(1,194,30,.13);
  background:
    linear-gradient(
      180deg,
      #0c130e,
      #080d09
    );
}

.bp-profile-form-grid{
  display:grid;
  grid-template-columns:
    repeat(2,minmax(0,1fr));
  gap:19px;
}

.bp-profile-field-full{
  grid-column:1/-1;
}

.bp-profile-field-head{
  min-height:25px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:8px;
}

.bp-profile-field-head > label:first-child{
  color:#a9b8ac;
  font-size:12px;
  font-weight:800;
}

.bp-optional{
  margin-left:5px;
  color:#5e7263;
  font-weight:500;
}

.bp-profile-input{
  box-sizing:border-box;
  width:100%;
  height:45px;
  padding:0 13px;
  border:1px solid #1e2c21;
  border-radius:11px;
  outline:none;
  background:#060b07;
  color:#e6f2e8;
  font:inherit;
}

.bp-profile-input::placeholder{
  color:#46564a;
}

.bp-profile-input:focus{
  border-color:rgba(1,194,30,.55);
  box-shadow:
    0 0 0 3px rgba(1,194,30,.065);
}

.bp-privacy-control{
  display:flex;
  align-items:center;
  gap:7px;
  cursor:pointer;
  user-select:none;
}

.bp-privacy-control input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.bp-privacy-switch{
  position:relative;
  width:30px;
  height:17px;
  flex:none;
  border-radius:999px;
  background:#263129;
  border:1px solid #344139;
  transition:.18s ease;
}

.bp-privacy-switch::after{
  content:"";
  position:absolute;
  width:11px;
  height:11px;
  left:2px;
  top:2px;
  border-radius:50%;
  background:#839187;
  transition:.18s ease;
}

.bp-privacy-control
input:checked
+ .bp-privacy-switch{
  border-color:#01a91b;
  background:rgba(1,194,30,.25);
}

.bp-privacy-control
input:checked
+ .bp-privacy-switch::after{
  transform:translateX(13px);
  background:#29e646;
}

.bp-privacy-text{
  min-width:47px;
  color:#758479;
  font-size:10px;
  font-weight:800;
}

.bp-privacy-text.public{
  color:#58e86e;
}

.bp-linked-profile-list{
  display:grid;
  gap:0;
}

.bp-linked-profile-row{
  min-height:62px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  border-bottom:1px solid rgba(255,255,255,.045);
}

.bp-linked-profile-row > div{
  min-width:0;
}

.bp-linked-profile-row span:first-child{
  display:block;
  margin-bottom:4px;
  color:#647769;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.bp-linked-profile-row strong{
  display:block;
  overflow-wrap:anywhere;
  color:#e5efe7;
  font-size:13px;
}

.bp-linked-profile-row strong.mono{
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Consolas,
    monospace;
  font-size:11px;
}

.bp-readonly-badge{
  padding:6px 8px;
  border:1px solid #26332a;
  border-radius:999px;
  color:#788b7c;
  font-size:10px;
  font-weight:800;
}

.bp-profile-info-box{
  margin-top:20px;
  padding:13px 15px;
  border:1px solid rgba(1,194,30,.1);
  border-radius:11px;
  background:rgba(1,194,30,.035);
  color:#728576;
  font-size:12px;
  line-height:1.5;
}

.bp-profile-savebar{
  position:sticky;
  bottom:18px;
  z-index:20;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:25px;
  margin-top:18px;
  padding:17px 20px;
  border:1px solid rgba(1,194,30,.21);
  border-radius:16px;
  background:
    rgba(8,14,9,.94);
  backdrop-filter:blur(14px);
  box-shadow:
    0 20px 55px rgba(0,0,0,.3);
}

.bp-profile-savebar > div:first-child{
  display:flex;
  flex-direction:column;
  gap:3px;
}

.bp-profile-savebar strong{
  font-size:13px;
}

.bp-profile-savebar span{
  color:#718276;
  font-size:11px;
}

.bp-profile-save-actions{
  display:flex;
  align-items:center;
  gap:15px;
}

.bp-profile-save-message{
  color:#829187;
  font-size:12px;
}

.bp-profile-save-message.success{
  color:#61ec76;
}

.bp-profile-save-message.error{
  color:#ff7373;
}

.bp-profile-save-button{
  min-width:180px;
  padding:12px 17px;
  border:1px solid #00d524;
  border-radius:11px;
  background:
    linear-gradient(
      180deg,
      #02c921,
      #019319
    );
  color:#001a04;
  font-weight:950;
  cursor:pointer;
}

.bp-profile-save-button:hover{
  filter:brightness(1.08);
}

.bp-profile-save-button:disabled{
  opacity:.55;
  cursor:wait;
}

@media(max-width:1050px){
  .bp-profile-page-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:700px){
  .bp-profile-page-head{
    flex-direction:column;
  }

  .bp-profile-form-grid{
    grid-template-columns:1fr;
  }

  .bp-profile-field-full{
    grid-column:auto;
  }

  .bp-profile-savebar{
    position:static;
    align-items:stretch;
    flex-direction:column;
  }

  .bp-profile-save-actions{
    align-items:stretch;
    flex-direction:column;
  }

  .bp-profile-save-button{
    width:100%;
  }
}

/* ============================================================
   BauPanik - Öffentliches Spielerprofil v0.7
   ============================================================ */

.bp-public-body{
  min-height:100vh;
  margin:0;
  background:
    radial-gradient(
      circle at 25% 0,
      rgba(1,194,30,.08),
      transparent 480px
    ),
    #030704;
}

.bp-public-topbar{
  height:68px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 clamp(20px,4vw,65px);
  border-bottom:1px solid rgba(1,194,30,.12);
  background:rgba(3,8,4,.9);
}

.bp-public-brand{
  color:#ecf7ee;
  text-decoration:none;
}

.bp-public-login{
  padding:9px 13px;
  border:1px solid rgba(1,194,30,.28);
  border-radius:10px;
  background:rgba(1,194,30,.05);
  color:#83ef94;
  text-decoration:none;
  font-size:12px;
  font-weight:850;
}

.bp-public-profile-shell{
  width:min(1050px,calc(100% - 36px));
  margin:70px auto;
}

.bp-public-loading{
  padding:50px;
  text-align:center;
  color:#718476;
}

.bp-public-hero{
  display:flex;
  align-items:center;
  gap:25px;
  padding:32px;
  border:1px solid rgba(1,194,30,.2);
  border-radius:22px;
  background:
    radial-gradient(
      circle at 0 0,
      rgba(1,194,30,.15),
      transparent 300px
    ),
    linear-gradient(
      145deg,
      #0d160f,
      #070c08
    );
}

.bp-public-avatar,
.bp-public-placeholder-avatar{
  width:92px;
  height:92px;
  flex:none;
  display:grid;
  place-items:center;
  border-radius:19px;
  border:1px solid rgba(255,255,255,.12);
  background:
    linear-gradient(
      145deg,
      #02d923,
      #008117
    );
  color:#001a04;
  font-size:27px;
  font-weight:1000;
}

.bp-public-identity h1{
  margin:5px 0 12px;
  font-size:38px;
  letter-spacing:-.045em;
}

.bp-public-badges{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.bp-public-badge{
  padding:7px 10px;
  border:1px solid #26342a;
  border-radius:999px;
  background:#0a100c;
  color:#91a495;
  font-size:11px;
  font-weight:800;
}

.bp-public-badge.verified{
  border-color:rgba(1,194,30,.27);
  background:rgba(1,194,30,.07);
  color:#6ff083;
}

.bp-public-fields{
  display:grid;
  grid-template-columns:
    repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:18px;
}

.bp-public-field-card{
  min-height:80px;
  padding:20px;
  border:1px solid rgba(1,194,30,.12);
  border-radius:15px;
  background:
    linear-gradient(
      180deg,
      #0b120d,
      #070c08
    );
}

.bp-public-field-label{
  display:block;
  margin-bottom:8px;
  color:#637668;
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.09em;
}

.bp-public-field-value{
  color:#e5f1e7;
  font-size:15px;
}

.bp-public-field-value.mono{
  overflow-wrap:anywhere;
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Consolas,
    monospace;
  font-size:12px;
}

.bp-public-privacy-note{
  margin-top:18px;
  padding:15px 17px;
  border:1px solid rgba(1,194,30,.1);
  border-radius:13px;
  background:rgba(1,194,30,.035);
  color:#728476;
  font-size:12px;
  line-height:1.5;
}

.bp-public-privacy-note strong{
  color:#72e985;
}

.bp-public-not-found{
  max-width:600px;
  margin:120px auto;
  text-align:center;
}

.bp-public-not-found
.bp-public-placeholder-avatar{
  margin:0 auto 25px;
}

.bp-public-not-found h1{
  margin:0 0 10px;
  font-size:30px;
}

.bp-public-not-found p{
  color:#748578;
  line-height:1.6;
}

@media(max-width:700px){
  .bp-public-profile-shell{
    margin-top:35px;
  }

  .bp-public-hero{
    align-items:flex-start;
  }

  .bp-public-avatar{
    width:70px;
    height:70px;
  }

  .bp-public-identity h1{
    font-size:29px;
  }

  .bp-public-fields{
    grid-template-columns:1fr;
  }
}

/* ============================================================
   Mein BauPanik - Dashboard Premium v1.0
   ============================================================ */

#dashboardView{
  width:100%;
}

.bp-dashboard-content{
  max-width:none;
  padding:
    34px
    clamp(28px,3.2vw,62px)
    70px;
}


/* ---------- HERO ---------- */

.bp-v1-hero{
  position:relative;
  min-height:292px;
  display:grid;
  grid-template-columns:
    minmax(430px,.9fr)
    minmax(520px,1.35fr);
  overflow:hidden;
  border:1px solid rgba(1,194,30,.28);
  border-radius:22px;
  background:#08100a;
  box-shadow:
    0 30px 90px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.025);
}

.bp-v1-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:
    inset 0 0 70px rgba(1,194,30,.035);
}


/* hero player */

.bp-v1-hero-content{
  position:relative;
  z-index:5;
  display:flex;
  align-items:center;
  padding:
    38px
    20px
    38px
    38px;
  background:
    linear-gradient(
      90deg,
      rgba(6,20,9,.99) 0%,
      rgba(5,17,8,.96) 72%,
      rgba(5,17,8,.55) 100%
    );
}

.bp-v1-player{
  display:flex;
  align-items:center;
  gap:28px;
}

.bp-v1-avatar{
  width:112px;
  height:112px;
  flex:none;
  border-radius:20px;
  box-shadow:
    0 20px 55px rgba(0,0,0,.32),
    0 0 35px rgba(1,194,30,.13);
}

.bp-v1-eyebrow{
  display:block;
  margin-bottom:7px;
  color:#28e146;
  font-size:10px;
  font-weight:950;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.bp-v1-player-copy h1{
  margin:0;
  color:#f4faf5;
  font-size:
    clamp(36px,3vw,52px);
  line-height:1;
  letter-spacing:-.055em;
}

.bp-v1-status-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:17px;
}

.bp-v1-player-copy p{
  max-width:500px;
  margin:
    16px
    0
    18px;
  color:#8ba091;
  font-size:13px;
  line-height:1.55;
}

.bp-v1-primary-button{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:45px;
  padding:0 17px;
  border:1px solid #08e72d;
  border-radius:11px;
  background:
    linear-gradient(
      180deg,
      #08dc2e,
      #02aa20
    );
  color:#001704;
  font-weight:950;
  cursor:pointer;
  box-shadow:
    0 12px 32px rgba(1,194,30,.16);
  transition:
    transform .16s ease,
    filter .16s ease;
}

.bp-v1-primary-button:hover{
  transform:translateY(-1px);
  filter:brightness(1.07);
}

.bp-v1-button-icon{
  font-size:15px;
}

.bp-v1-button-arrow{
  margin-left:5px;
}


/* ---------- HERO WORLD ---------- */

.bp-v1-world{
  position:relative;
  min-height:292px;
  overflow:hidden;
  background:
    radial-gradient(
      circle at 77% 33%,
      rgba(210,255,158,.48),
      transparent 5%
    ),
    radial-gradient(
      circle at 77% 34%,
      rgba(74,226,90,.13),
      transparent 19%
    ),
    linear-gradient(
      180deg,
      #122319 0%,
      #0c1a10 42%,
      #071109 100%
    );
}

.bp-v1-world::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      90deg,
      rgba(4,15,7,.82),
      transparent 32%
    ),
    repeating-linear-gradient(
      90deg,
      transparent 0,
      transparent 39px,
      rgba(1,194,30,.018) 40px
    ),
    repeating-linear-gradient(
      0deg,
      transparent 0,
      transparent 39px,
      rgba(1,194,30,.012) 40px
    );
}

.bp-v1-world-glow{
  position:absolute;
  width:260px;
  height:260px;
  right:8%;
  top:-65px;
  border-radius:50%;
  background:
    radial-gradient(
      circle,
      rgba(109,255,126,.16),
      transparent 65%
    );
}

.bp-v1-pixel-cloud{
  position:absolute;
  opacity:.28;
  background:#617e66;
  box-shadow:
    22px 0 #617e66,
    44px 0 #617e66,
    22px -12px #617e66,
    66px 8px #617e66;
}

.bp-v1-pixel-cloud.one{
  width:24px;
  height:11px;
  right:17%;
  top:30px;
}

.bp-v1-pixel-cloud.two{
  width:20px;
  height:9px;
  right:46%;
  top:54px;
  opacity:.15;
}


/* mountains */

.bp-v1-mountain{
  position:absolute;
  bottom:-30px;
  width:250px;
  height:210px;
  transform:rotate(45deg);
  border-radius:8px;
  background:
    linear-gradient(
      135deg,
      #172d1b,
      #07100a
    );
  box-shadow:
    inset 15px 15px 0 rgba(25,76,32,.23);
}

.bp-v1-mountain::after{
  content:"";
  position:absolute;
  width:35px;
  height:35px;
  background:#194322;
  box-shadow:
    36px 0 #0c2f16,
    0 36px #0e3518,
    72px 0 #102919,
    72px 36px #164521;
}

.bp-v1-mountain.mountain-one{
  left:8%;
  bottom:-125px;
}

.bp-v1-mountain.mountain-two{
  left:38%;
  bottom:-105px;
  transform:
    scale(.78)
    rotate(45deg);
}

.bp-v1-mountain.mountain-three{
  right:-50px;
  bottom:-100px;
  transform:
    scale(1.08)
    rotate(45deg);
}


/* castle */

.bp-v1-castle{
  position:absolute;
  right:18%;
  bottom:34px;
  width:210px;
  height:140px;
  opacity:.78;
}

.bp-v1-castle .castle-main{
  position:absolute;
  left:39px;
  bottom:0;
  width:135px;
  height:85px;
  background:
    linear-gradient(
      90deg,
      #14251a,
      #213627,
      #111e16
    );
  box-shadow:
    inset 0 0 0 2px rgba(57,112,66,.18);
}

.bp-v1-castle .castle-main::before{
  content:"";
  position:absolute;
  left:22px;
  top:23px;
  width:8px;
  height:13px;
  background:#7cd675;
  box-shadow:
    29px 0 #5aac5c,
    58px 0 #74d270,
    87px 0 #5caf5c,
    14px 32px #63b75f,
    72px 32px #63b75f;
  opacity:.7;
}

.bp-v1-castle .tower{
  position:absolute;
  bottom:0;
  width:34px;
  background:#17291d;
}

.bp-v1-castle .tower::before{
  content:"";
  position:absolute;
  left:-6px;
  top:-18px;
  width:0;
  height:0;
  border-left:23px solid transparent;
  border-right:23px solid transparent;
  border-bottom:22px solid #1c3623;
}

.bp-v1-castle .t1{
  left:20px;
  height:119px;
}

.bp-v1-castle .t2{
  left:90px;
  height:139px;
}

.bp-v1-castle .t3{
  right:18px;
  height:108px;
}


/* brand */

.bp-v1-world-brand{
  position:absolute;
  right:5%;
  top:48px;
  color:rgba(224,255,228,.13);
  font-size:
    clamp(34px,4vw,63px);
  font-weight:1000;
  letter-spacing:-.07em;
  transform:rotate(-3deg);
}

.bp-v1-world-slogan{
  position:absolute;
  right:8%;
  bottom:61px;
  display:flex;
  flex-direction:column;
  transform:rotate(-5deg);
}

.bp-v1-world-slogan strong{
  color:#21e645;
  font-size:25px;
  font-style:italic;
}

.bp-v1-world-slogan span{
  margin-left:17px;
  color:#ecfff0;
  font-size:17px;
}

.bp-v1-world-message{
  position:absolute;
  right:18px;
  bottom:18px;
  display:flex;
  align-items:stretch;
  gap:10px;
  padding:
    10px
    12px;
  background:rgba(4,12,7,.77);
  border:1px solid rgba(1,194,30,.1);
  border-radius:9px;
  backdrop-filter:blur(8px);
}

.bp-v1-world-message > span{
  width:2px;
  background:#07dc2c;
}

.bp-v1-world-message p{
  margin:0;
  color:#a3b5a7;
  font-size:8px;
  line-height:1.65;
  letter-spacing:.1em;
}


/* ---------- STATS ---------- */

.bp-v1-stats{
  display:grid;
  grid-template-columns:
    repeat(5,minmax(0,1fr));
  gap:13px;
  margin-top:15px;
}

.bp-v1-stat{
  min-height:94px;
  display:flex;
  align-items:center;
  gap:15px;
  padding:16px;
  border:1px solid rgba(96,136,104,.23);
  border-radius:15px;
  background:
    linear-gradient(
      145deg,
      rgba(14,25,17,.96),
      rgba(7,14,9,.96)
    );
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.018);
  transition:
    border-color .18s ease,
    transform .18s ease;
}

.bp-v1-stat:hover{
  transform:translateY(-2px);
  border-color:rgba(1,194,30,.32);
}

.bp-v1-stat-icon{
  width:48px;
  height:48px;
  flex:none;
  display:grid;
  place-items:center;
  border:1px solid rgba(91,133,99,.17);
  border-radius:13px;
  background:#0c1710;
  color:#a7b9aa;
  font-size:21px;
}

.bp-v1-stat-icon.minecraft,
.bp-v1-stat-icon.online{
  color:#20e643;
  background:
    radial-gradient(
      circle,
      rgba(1,194,30,.14),
      rgba(8,20,11,.8)
    );
}

.bp-v1-stat > div:last-child{
  min-width:0;
  display:flex;
  flex-direction:column;
}

.bp-v1-stat span{
  color:#889a8c;
  font-size:11px;
}

.bp-v1-stat strong{
  margin-top:2px;
  color:#f1f8f2;
  font-size:23px;
  line-height:1.15;
}

.bp-v1-stat small{
  margin-top:5px;
  color:#66796a;
  font-size:9px;
}

.bp-v1-stat .bp-v1-stat-date,
.bp-v1-stat .bp-v1-stat-minecraft{
  font-size:15px;
}

.bp-v1-online{
  color:#29e748 !important;
}


/* ---------- MAIN GRID ---------- */

.bp-v1-main-grid{
  display:grid;
  grid-template-columns:
    minmax(0,1.7fr)
    minmax(330px,.95fr);
  gap:15px;
  margin-top:15px;
}

.bp-v1-panel{
  padding:20px;
  border:1px solid rgba(83,128,91,.23);
  border-radius:17px;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(1,194,30,.027),
      transparent 220px
    ),
    linear-gradient(
      145deg,
      #0b150e,
      #071009
    );
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.018);
}

.bp-v1-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  margin-bottom:17px;
}

.bp-v1-panel-title{
  display:flex;
  align-items:center;
  gap:10px;
}

.bp-v1-panel-title h2{
  margin:0;
  color:#eaf4ec;
  font-size:15px;
  text-transform:uppercase;
  letter-spacing:.055em;
}

.bp-v1-panel-icon{
  color:#27e847;
  font-size:20px;
}

.bp-v1-coming{
  padding:5px 8px;
  border:1px solid rgba(1,194,30,.17);
  border-radius:999px;
  color:#7b9280;
  font-size:9px;
  font-weight:800;
}


/* player data */

.bp-v1-player-data{
  display:grid;
  grid-template-columns:
    1fr
    1.45fr
    .8fr;
  gap:12px;
  padding:17px;
  border:1px solid rgba(77,115,84,.18);
  border-radius:12px;
  background:rgba(3,10,5,.3);
}

.bp-v1-player-data div{
  min-width:0;
}

.bp-v1-player-data span{
  display:block;
  margin-bottom:5px;
  color:#667a6b;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.bp-v1-player-data strong{
  display:block;
  color:#eaf4eb;
  font-size:12px;
  overflow-wrap:anywhere;
}

.bp-v1-player-data .mono{
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Consolas,
    monospace;
  font-size:10px;
}

.bp-v1-secure-note{
  position:relative;
  margin-top:12px;
  padding:
    13px
    15px
    13px
    46px;
  border:1px solid rgba(1,194,30,.17);
  border-radius:11px;
  background:rgba(1,194,30,.038);
  color:#77907d;
  font-size:11px;
  line-height:1.5;
}

.bp-v1-secure-note::before{
  content:"✓";
  position:absolute;
  left:16px;
  top:50%;
  width:19px;
  height:19px;
  display:grid;
  place-items:center;
  transform:translateY(-50%);
  border:1px solid #0ab629;
  border-radius:50%;
  color:#20e53f;
  font-weight:950;
}


/* tickets */

.bp-v1-ticket-stats{
  display:grid;
  grid-template-columns:
    1fr
    1fr;
  gap:10px;
}

.bp-v1-ticket-stats > div{
  padding:15px;
  border:1px solid rgba(75,111,81,.18);
  border-radius:12px;
  background:rgba(3,9,5,.3);
}

.bp-v1-ticket-stats strong{
  display:block;
  color:#18e73d;
  font-size:23px;
}

.bp-v1-ticket-stats span{
  color:#738777;
  font-size:9px;
}

.bp-v1-ticket-info{
  display:flex;
  flex-direction:column;
  align-items:center;
  margin-top:11px;
  padding:14px;
  border:1px dashed rgba(103,133,108,.25);
  border-radius:11px;
  text-align:center;
}

.bp-v1-ticket-info strong{
  color:#a4b4a7;
  font-size:10px;
}

.bp-v1-ticket-info span{
  margin-top:5px;
  max-width:270px;
  color:#617466;
  font-size:9px;
  line-height:1.45;
}


/* news */

.bp-v1-news-item{
  display:grid;
  grid-template-columns:
    150px
    1fr
    42px;
  gap:15px;
  align-items:center;
  padding:10px;
  border:1px solid rgba(78,115,84,.17);
  border-radius:12px;
  background:rgba(3,9,5,.24);
}

.bp-v1-news-art{
  position:relative;
  height:82px;
  overflow:hidden;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:
    radial-gradient(
      circle at 70% 25%,
      rgba(126,255,93,.35),
      transparent 22%
    ),
    linear-gradient(
      145deg,
      #173821,
      #07150c
    );
}

.bp-v1-news-art::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-23px;
  width:100%;
  height:50px;
  transform:skewY(-8deg);
  background:
    linear-gradient(
      90deg,
      #0d2513,
      #163a1d
    );
}

.bp-v1-news-art strong{
  position:relative;
  z-index:3;
  color:rgba(225,255,229,.23);
  font-size:32px;
}

.bp-v1-news-art .pixel{
  position:absolute;
  z-index:2;
  width:15px;
  height:15px;
  background:#1b6128;
}

.bp-v1-news-art .p1{
  left:18px;
  top:15px;
}

.bp-v1-news-art .p2{
  left:33px;
  top:30px;
  background:#0f451c;
}

.bp-v1-news-art .p3{
  right:20px;
  bottom:17px;
  background:#228332;
}

.bp-v1-news-copy{
  min-width:0;
}

.bp-v1-news-copy > strong{
  display:block;
  margin-top:6px;
  color:#e7f1e9;
  font-size:12px;
}

.bp-v1-news-copy p{
  margin:
    5px
    0
    0;
  color:#6d8271;
  font-size:10px;
  line-height:1.45;
}

.bp-v1-news-tag{
  display:inline-flex;
  padding:4px 7px;
  border-radius:6px;
  background:#09cd2a;
  color:#001604;
  font-size:8px;
  font-weight:1000;
  letter-spacing:.08em;
}

.bp-v1-news-arrow{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:1px solid rgba(79,116,86,.18);
  border-radius:9px;
  background:#0b1710;
  color:#8da190;
}


/* quick actions */

.bp-v1-actions{
  display:grid;
  grid-template-columns:
    repeat(4,1fr);
  gap:8px;
}

.bp-v1-actions button{
  min-width:0;
  min-height:86px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  padding:10px 5px;
  border:1px solid rgba(78,115,84,.18);
  border-radius:11px;
  background:#09130c;
  color:#cbd8cd;
  cursor:pointer;
  transition:
    transform .16s ease,
    border-color .16s ease,
    background .16s ease;
}

.bp-v1-actions button:not(:disabled):hover{
  transform:translateY(-2px);
  border-color:rgba(1,194,30,.35);
  background:#0c1a10;
}

.bp-v1-actions button:disabled{
  opacity:.42;
  cursor:default;
}

.bp-v1-actions button > span{
  color:#23e346;
  font-size:20px;
}

.bp-v1-actions button strong{
  font-size:10px;
}

.bp-v1-actions button small{
  color:#667769;
  font-size:8px;
}

.bp-v1-mini-account{
  display:grid;
  grid-template-columns:
    1fr
    1fr;
  gap:8px;
  margin-top:11px;
}

.bp-v1-mini-account > div{
  padding:10px;
  border-radius:9px;
  background:rgba(2,8,4,.34);
}

.bp-v1-mini-account span{
  display:block;
  color:#5f7464;
  font-size:8px;
  text-transform:uppercase;
  letter-spacing:.07em;
}

.bp-v1-mini-account strong{
  display:block;
  margin-top:3px;
  color:#b4c5b7;
  font-size:10px;
}


/* ---------- SIDEBAR / TOPBAR POLISH ---------- */

.bp-sidebar{
  background:
    radial-gradient(
      circle at 0 15%,
      rgba(1,194,30,.07),
      transparent 210px
    ),
    #040a06;
  border-right:
    1px solid rgba(1,194,30,.09);
}

.bp-nav{
  padding-top:15px;
}

.bp-nav-item{
  position:relative;
  border-radius:9px;
  margin:
    0
    8px
    6px;
  transition:
    background .16s ease,
    border-color .16s ease,
    transform .16s ease;
}

.bp-nav-item:hover{
  transform:translateX(2px);
}

.bp-nav-item.active{
  box-shadow:
    inset 3px 0 0 #08dc2d,
    0 10px 35px rgba(1,194,30,.045);
}

.bp-topbar{
  border-bottom:
    1px solid rgba(1,194,30,.09);
  background:
    rgba(3,9,5,.95);
  backdrop-filter:
    blur(15px);
}


/* ---------- RESPONSIVE ---------- */

@media(max-width:1350px){

  .bp-v1-hero{
    grid-template-columns:
      1fr
      .9fr;
  }

  .bp-v1-stats{
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

}

@media(max-width:1100px){

  .bp-v1-world{
    display:none;
  }

  .bp-v1-hero{
    grid-template-columns:1fr;
  }

  .bp-v1-main-grid{
    grid-template-columns:1fr;
  }

}

@media(max-width:780px){

  .bp-v1-stats{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .bp-v1-player{
    align-items:flex-start;
  }

  .bp-v1-avatar{
    width:82px;
    height:82px;
  }

  .bp-v1-player-data{
    grid-template-columns:1fr;
  }

  .bp-v1-actions{
    grid-template-columns:
      repeat(2,1fr);
  }

}

@media(max-width:560px){

  .bp-dashboard-content{
    padding:
      18px
      14px
      40px;
  }

  .bp-v1-hero-content{
    padding:23px;
  }

  .bp-v1-player{
    flex-direction:column;
  }

  .bp-v1-stats{
    grid-template-columns:1fr;
  }

  .bp-v1-news-item{
    grid-template-columns:1fr;
  }

  .bp-v1-news-arrow{
    display:none;
  }

}

/* ============================================================
   BAUPANIK DASHBOARD v1.1
   MOCKUP MATCH
   ============================================================ */

:root{
  --bp11-bg:#030805;
  --bp11-panel:#09120c;
  --bp11-panel2:#0c1710;
  --bp11-line:rgba(91,139,99,.27);
  --bp11-green:#00e52b;
  --bp11-green2:#01c21e;
  --bp11-text:#f0f7f1;
  --bp11-muted:#839688;
}


/* ============================================================
   GESAMTLAYOUT
   ============================================================ */

.bp-shell{
  grid-template-columns:
    248px
    minmax(0,1fr) !important;
}

.bp-sidebar{
  position:relative;
  min-height:
    calc(100vh - 64px);
  overflow:hidden;
  background:
    radial-gradient(
      circle at 20% 28%,
      rgba(0,210,34,.08),
      transparent 250px
    ),
    #040b06 !important;
  border-right:
    1px solid rgba(1,194,30,.11);
}

.bp-dashboard-content{
  padding:
    30px
    clamp(30px,2.5vw,54px)
    70px !important;
}

.bp-v11-dashboard{
  width:100%;
  max-width:1540px;
  margin:0 auto;
}


/* ============================================================
   BRAND / TOPBAR
   ============================================================ */

.bp-brand{
  display:flex;
  align-items:center;
  gap:12px;
}

.bp-v11-brand-copy{
  display:flex;
  flex-direction:column;
  line-height:1.05;
}

.bp-v11-brand-copy strong{
  color:#f0f7f1;
  font-size:12px;
  letter-spacing:.17em;
}

.bp-v11-brand-copy small{
  margin-top:5px;
  color:#596b5e;
  font-size:7px;
  letter-spacing:.22em;
}

.bp-v11-top-avatar{
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border-radius:7px;
  background:
    linear-gradient(
      145deg,
      #13de35,
      #008c19
    );
  color:#001804;
  font-size:10px;
  font-weight:1000;
}


/* ============================================================
   SIDEBAR
   ============================================================ */

.bp-nav{
  position:relative;
  z-index:3;
  padding:
    20px
    12px !important;
}

.bp-nav-item{
  min-height:46px;
  display:flex !important;
  align-items:center;
  padding:
    0
    16px !important;
  margin-bottom:6px !important;
  border:
    1px solid transparent !important;
  border-radius:
    9px !important;
  color:#a7b6aa !important;
  font-size:12px;
}

.bp-nav-item.active{
  color:#f0fff2 !important;
  border-color:
    rgba(1,194,30,.38) !important;
  background:
    linear-gradient(
      90deg,
      rgba(1,194,30,.14),
      rgba(1,194,30,.045)
    ) !important;
  box-shadow:
    inset 3px 0
    0 var(--bp11-green);
}

.bp-nav-item:hover{
  color:#dff4e2 !important;
  background:
    rgba(1,194,30,.06);
}

.bp-v11-sidebar-footer{
  position:absolute;
  left:28px;
  right:22px;
  bottom:29px;
  z-index:2;
  display:flex;
  flex-direction:column;
}

.bp-v11-sidebar-footer strong{
  color:#a1b2a5;
  font-size:11px;
  letter-spacing:.33em;
}

.bp-v11-sidebar-footer span{
  margin-top:6px;
  color:#4d6252;
  font-size:7px;
  letter-spacing:.26em;
}

.bp-v11-blocks{
  position:absolute;
  left:-28px;
  bottom:56px;
  width:190px;
  height:225px;
  opacity:.24;
  pointer-events:none;
}

.bp-v11-blocks i{
  position:absolute;
  display:block;
  width:42px;
  height:42px;
  transform:
    rotate(30deg)
    skewY(-30deg)
    scaleY(.86);
  background:
    linear-gradient(
      145deg,
      #1bea3b,
      #075d17
    );
}

.bp-v11-blocks i:nth-child(1){
  left:20px;
  bottom:35px;
}

.bp-v11-blocks i:nth-child(2){
  left:65px;
  bottom:80px;
  transform:
    scale(.7)
    rotate(30deg)
    skewY(-30deg)
    scaleY(.86);
}

.bp-v11-blocks i:nth-child(3){
  left:5px;
  bottom:130px;
  transform:
    scale(.45)
    rotate(30deg)
    skewY(-30deg)
    scaleY(.86);
}

.bp-v11-blocks i:nth-child(4){
  left:105px;
  bottom:20px;
  transform:
    scale(.36)
    rotate(30deg)
    skewY(-30deg)
    scaleY(.86);
}


/* ============================================================
   HERO
   ============================================================ */

.bp-v11-hero{
  position:relative;
  min-height:318px;
  display:grid;
  grid-template-columns:
    minmax(500px,.82fr)
    minmax(560px,1.18fr);
  overflow:hidden;
  border:
    1px solid rgba(1,194,30,.36);
  border-radius:20px;
  background:#07100a;
  box-shadow:
    0 30px 90px rgba(0,0,0,.32),
    inset 0 1px 0 rgba(255,255,255,.025);
}

.bp-v11-hero-left{
  position:relative;
  z-index:10;
  display:flex;
  align-items:center;
  padding:
    35px
    18px
    35px
    33px;
  background:
    radial-gradient(
      circle at 12% 50%,
      rgba(0,218,35,.14),
      transparent 230px
    ),
    linear-gradient(
      90deg,
      #07150a 0%,
      #07130a 68%,
      rgba(7,19,10,.72) 88%,
      rgba(7,19,10,.1) 100%
    );
}

.bp-v11-profile-head{
  display:flex;
  align-items:center;
  gap:28px;
}

.bp-v11-avatar{
  width:112px !important;
  height:112px !important;
  border-radius:19px !important;
  box-shadow:
    0 25px 55px rgba(0,0,0,.4),
    0 0 38px rgba(1,194,30,.12);
}

.bp-v11-welcome{
  display:block;
  margin-bottom:8px;
  color:#24dd43;
  font-size:9px;
  font-weight:1000;
  letter-spacing:.23em;
}

.bp-v11-hero-copy h1{
  margin:0;
  color:#f4f8f5;
  font-size:
    clamp(39px,3vw,55px);
  line-height:.96;
  letter-spacing:-.055em;
}

.bp-v11-badges{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:15px;
}

.bp-v11-badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border:
    1px solid rgba(83,111,88,.32);
  border-radius:999px;
  background:rgba(3,8,4,.45);
  color:#8d9f91;
  font-size:10px;
  font-weight:750;
}

.bp-v11-badge.success{
  color:#79ef88;
  border-color:
    rgba(0,229,43,.43);
  background:
    rgba(0,229,43,.07);
}

.bp-v11-hero-copy p{
  max-width:450px;
  margin:
    15px
    0
    18px;
  color:#8a9e8e;
  font-size:12px;
  line-height:1.55;
}

.bp-v11-main-action{
  height:46px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:0 17px;
  border:
    1px solid #09ee32;
  border-radius:10px;
  background:
    linear-gradient(
      180deg,
      #08e832,
      #01bc22
    );
  color:#001504;
  font-weight:950;
  cursor:pointer;
  box-shadow:
    0 13px 34px rgba(1,194,30,.18);
}

.bp-v11-main-action svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
}

.bp-v11-main-action strong{
  margin-left:5px;
  font-size:17px;
}


/* ============================================================
   HERO WORLD
   ============================================================ */

.bp-v11-hero-world{
  position:relative;
  min-height:318px;
  overflow:hidden;
  background:#0b1710;
}

.bp-v11-world-svg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.bp-v11-world-darken{
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      90deg,
      rgba(5,16,8,.75),
      rgba(5,16,8,.12) 32%,
      rgba(2,7,4,.06) 72%,
      rgba(2,7,4,.33)
    ),
    linear-gradient(
      0deg,
      rgba(1,7,3,.7),
      transparent 48%
    );
}

.bp-v11-world-logo{
  position:absolute;
  right:7%;
  top:59px;
  color:
    rgba(227,255,231,.24);
  font-size:
    clamp(42px,4.2vw,67px);
  font-weight:1000;
  letter-spacing:-.07em;
  transform:rotate(-4deg);
  text-shadow:
    0 9px 18px rgba(0,0,0,.42);
}

.bp-v11-world-slogan{
  position:absolute;
  right:8%;
  bottom:68px;
  display:flex;
  flex-direction:column;
  transform:rotate(-5deg);
}

.bp-v11-world-slogan strong{
  color:#16ef3c;
  font-family:
    "Segoe Script",
    "Comic Sans MS",
    cursive;
  font-size:29px;
  line-height:1;
}

.bp-v11-world-slogan span{
  margin:
    5px
    0
    0
    24px;
  color:#f1fff3;
  font-family:
    "Segoe Script",
    "Comic Sans MS",
    cursive;
  font-size:18px;
}

.bp-v11-world-claim{
  position:absolute;
  right:14px;
  bottom:14px;
  display:flex;
  gap:10px;
  padding:
    11px
    12px;
  border:
    1px solid rgba(1,194,30,.12);
  border-radius:8px;
  background:
    rgba(2,8,4,.77);
  backdrop-filter:blur(8px);
}

.bp-v11-world-claim i{
  width:2px;
  background:#0bea31;
}

.bp-v11-world-claim span{
  color:#9eafa2;
  font-size:7px;
  line-height:1.65;
  letter-spacing:.11em;
}


/* ============================================================
   STAT CARDS
   ============================================================ */

.bp-v11-stats{
  display:grid;
  grid-template-columns:
    repeat(5,minmax(0,1fr));
  gap:13px;
  margin-top:15px;
}

.bp-v11-stat{
  min-height:94px;
  display:flex;
  align-items:center;
  gap:14px;
  padding:
    16px
    17px;
  border:
    1px solid var(--bp11-line);
  border-radius:14px;
  background:
    linear-gradient(
      145deg,
      #0d1811,
      #071009
    );
  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.018);
  transition:
    transform .17s ease,
    border-color .17s ease;
}

.bp-v11-stat:hover{
  transform:translateY(-2px);
  border-color:
    rgba(0,229,43,.35);
}

.bp-v11-icon{
  width:47px;
  height:47px;
  flex:none;
  display:grid;
  place-items:center;
  border:
    1px solid rgba(100,137,106,.18);
  border-radius:12px;
  background:#0b1610;
}

.bp-v11-icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:#b2c1b5;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.bp-v11-icon.minecraft,
.bp-v11-icon.activity{
  background:
    radial-gradient(
      circle,
      rgba(0,229,43,.13),
      rgba(7,18,10,.8)
    );
}

.bp-v11-icon.minecraft svg,
.bp-v11-icon.activity svg{
  stroke:#1ce943;
}

.bp-v11-stat > div:last-child{
  min-width:0;
}

.bp-v11-stat span{
  display:block;
  color:#8b9c8e;
  font-size:10px;
}

.bp-v11-stat strong{
  display:block;
  margin-top:2px;
  color:#f0f7f2;
  font-size:24px;
  line-height:1.08;
  overflow-wrap:anywhere;
}

.bp-v11-stat strong.bp-v11-date{
  margin-top:5px;
  font-size:14px;
}

.bp-v11-stat small{
  display:block;
  margin-top:6px;
  color:#627366;
  font-size:8px;
}


/* ============================================================
   CONTENT
   ============================================================ */

.bp-v11-content-grid{
  display:grid;
  grid-template-columns:
    minmax(0,1.68fr)
    minmax(340px,.96fr);
  gap:14px;
  margin-top:14px;
}

.bp-v11-card{
  padding:19px;
  border:
    1px solid var(--bp11-line);
  border-radius:15px;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(1,194,30,.025),
      transparent 230px
    ),
    linear-gradient(
      145deg,
      #0b160f,
      #071009
    );
  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.018);
}

.bp-v11-card-head{
  min-height:30px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-bottom:15px;
}

.bp-v11-card-head > div{
  display:flex;
  align-items:center;
  gap:10px;
}

.bp-v11-card-head svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:#1ee643;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.bp-v11-card-head h2{
  margin:0;
  color:#edf6ef;
  font-size:13px;
  letter-spacing:.075em;
}

.bp-v11-small-button{
  min-height:29px;
  padding:0 11px;
  border:
    1px solid rgba(84,122,90,.22);
  border-radius:999px;
  background:#0a150e;
  color:#87998b;
  font-size:8px;
}


/* Spielerprofil */

.bp-v11-player-values{
  display:grid;
  grid-template-columns:
    1fr
    1.45fr
    .8fr;
  gap:12px;
  padding:15px;
  border:
    1px solid rgba(77,111,82,.18);
  border-radius:11px;
  background:
    rgba(3,9,5,.3);
}

.bp-v11-player-values span{
  display:block;
  color:#687c6c;
  font-size:8px;
  font-weight:850;
  letter-spacing:.085em;
}

.bp-v11-player-values strong{
  display:block;
  margin-top:6px;
  color:#eaf3ec;
  font-size:11px;
  overflow-wrap:anywhere;
}

.bp-v11-player-values .mono{
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Consolas,
    monospace;
  font-size:9px;
}

.bp-v11-verification-note{
  position:relative;
  margin-top:11px;
  padding:
    12px
    14px
    12px
    43px;
  border:
    1px solid rgba(0,229,43,.18);
  border-radius:10px;
  background:
    rgba(0,229,43,.035);
  color:#778b7b;
  font-size:9px;
  line-height:1.5;
}

.bp-v11-verification-note::before{
  content:"✓";
  position:absolute;
  left:15px;
  top:50%;
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  transform:translateY(-50%);
  border:
    1px solid #02ca27;
  border-radius:50%;
  color:#18e43c;
  font-weight:1000;
}


/* Tickets */

.bp-v11-ticket-values{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}

.bp-v11-ticket-values div{
  padding:14px;
  border:
    1px solid rgba(78,111,83,.2);
  border-radius:11px;
  background:#071009;
}

.bp-v11-ticket-values strong{
  display:block;
  color:#18e43c;
  font-size:21px;
}

.bp-v11-ticket-values span{
  color:#708374;
  font-size:8px;
}

.bp-v11-ticket-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  margin-top:10px;
  padding:13px;
  border:
    1px dashed rgba(103,129,107,.25);
  border-radius:10px;
  color:#738578;
  text-align:center;
}

.bp-v11-ticket-placeholder strong{
  font-size:9px;
}

.bp-v11-ticket-placeholder span{
  margin-top:5px;
  color:#5d7061;
  font-size:8px;
  line-height:1.45;
}


/* News */

.bp-v11-news-row{
  display:grid;
  grid-template-columns:
    190px
    1fr
    42px;
  align-items:center;
  gap:15px;
  padding:10px;
  border:
    1px solid rgba(80,114,85,.17);
  border-radius:11px;
  background:#071009;
}

.bp-v11-news-image{
  position:relative;
  height:88px;
  overflow:hidden;
  border-radius:8px;
  background:
    linear-gradient(
      180deg,
      #244d2c,
      #0c2012
    );
}

.bp-v11-news-sun{
  position:absolute;
  right:20px;
  top:11px;
  width:29px;
  height:29px;
  border-radius:50%;
  background:#aee67d;
  box-shadow:
    0 0 50px rgba(140,255,105,.5);
}

.bp-v11-news-castle{
  position:absolute;
  left:35px;
  bottom:0;
  width:110px;
  height:50px;
  background:#0c1710;
  box-shadow:
    -24px 18px 0 #142b19,
    38px -15px 0 -10px #142b19,
    82px 5px 0 -5px #102216;
}

.bp-v11-news-text span{
  display:inline-flex;
  padding:
    4px
    7px;
  border-radius:6px;
  background:#09d42d;
  color:#001604;
  font-size:7px;
  font-weight:1000;
}

.bp-v11-news-text strong{
  display:block;
  margin-top:6px;
  color:#e7f0e9;
  font-size:11px;
}

.bp-v11-news-text p{
  margin:
    5px
    0
    0;
  color:#6e8072;
  font-size:9px;
  line-height:1.45;
}

.bp-v11-news-row > button{
  width:37px;
  height:37px;
  border:
    1px solid rgba(75,109,81,.2);
  border-radius:9px;
  background:#0b1610;
  color:#8fa192;
}


/* Actions */

.bp-v11-actions{
  display:grid;
  grid-template-columns:
    repeat(4,1fr);
  gap:8px;
}

.bp-v11-actions button{
  min-height:91px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:8px;
  border:
    1px solid rgba(80,113,84,.2);
  border-radius:10px;
  background:#08110b;
  color:#d3ded5;
  cursor:pointer;
}

.bp-v11-actions button:not(:disabled):hover{
  border-color:
    rgba(0,229,43,.4);
  background:#0b1810;
  transform:translateY(-2px);
}

.bp-v11-actions button:disabled{
  opacity:.45;
  cursor:default;
}

.bp-v11-actions svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:#a9b9ac;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.bp-v11-actions button:not(:disabled) svg{
  stroke:#1ce743;
}

.bp-v11-actions strong{
  font-size:9px;
}

.bp-v11-hidden-profile-data{
  display:none;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media(max-width:1380px){

  .bp-v11-hero{
    grid-template-columns:
      1fr
      1fr;
  }

  .bp-v11-stats{
    grid-template-columns:
      repeat(3,1fr);
  }

}

@media(max-width:1100px){

  .bp-shell{
    grid-template-columns:
      190px
      minmax(0,1fr) !important;
  }

  .bp-v11-hero{
    grid-template-columns:1fr;
  }

  .bp-v11-hero-world{
    min-height:230px;
  }

  .bp-v11-content-grid{
    grid-template-columns:1fr;
  }

}

@media(max-width:760px){

  .bp-v11-stats{
    grid-template-columns:
      repeat(2,1fr);
  }

  .bp-v11-profile-head{
    align-items:flex-start;
  }

  .bp-v11-player-values{
    grid-template-columns:1fr;
  }

}

@media(max-width:560px){

  .bp-v11-hero-left{
    padding:24px;
  }

  .bp-v11-profile-head{
    flex-direction:column;
  }

  .bp-v11-avatar{
    width:83px !important;
    height:83px !important;
  }

  .bp-v11-stats{
    grid-template-columns:1fr;
  }

  .bp-v11-news-row{
    grid-template-columns:1fr;
  }

  .bp-v11-news-row > button{
    display:none;
  }

  .bp-v11-actions{
    grid-template-columns:
      repeat(2,1fr);
  }

}

/* ============================================================
   BAUPANIK DASHBOARD v1.2
   Proportionen / Premium Hierarchie
   ============================================================ */


/* Hauptbereich nicht mehr klein zentrieren */

.bp-shell{
  grid-template-columns:
    220px
    minmax(0,1fr) !important;
}

.bp-dashboard-content{
  width:auto !important;
  max-width:none !important;

  padding:
    28px
    34px
    70px !important;
}

.bp-v11-dashboard{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}


/* ------------------------------------------------------------
   TOPBAR
   ------------------------------------------------------------ */

.bp-topbar{
  min-height:66px;
}

.bp-brand-mark{
  width:37px;
  height:37px;
  border-radius:9px;
}

.bp-user b{
  font-size:12px;
}

.bp-user small{
  margin-top:3px;
  font-size:9px;
}

.bp-logout{
  min-height:36px;
  padding:0 14px;
}


/* ------------------------------------------------------------
   SIDEBAR
   ------------------------------------------------------------ */

.bp-nav{
  padding:
    24px
    12px !important;
}

.bp-nav-item{
  min-height:51px !important;

  display:flex !important;
  align-items:center;
  gap:13px;

  padding:
    0
    16px !important;

  font-size:
    12px !important;
}

.bp-nav-icon{
  width:20px;
  height:20px;
  flex:none;

  fill:none;
  stroke:#9baca0;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;

  transition:
    stroke .16s ease;
}

.bp-nav-item.active .bp-nav-icon{
  stroke:#19eb40;
}

.bp-nav-item:hover .bp-nav-icon{
  stroke:#d7eadb;
}


/* ------------------------------------------------------------
   HERO
   ------------------------------------------------------------ */

.bp-v11-hero{
  min-height:
    clamp(340px,31vh,390px);

  grid-template-columns:
    minmax(535px,.86fr)
    minmax(630px,1.14fr);

  border-radius:22px;
}

.bp-v11-hero-left{
  padding:
    44px
    25px
    44px
    42px;
}

.bp-v11-profile-head{
  gap:31px;
}

.bp-v11-avatar{
  width:126px !important;
  height:126px !important;

  border-radius:
    21px !important;
}

.bp-v11-welcome{
  margin-bottom:10px;

  font-size:10px;
}

.bp-v11-hero-copy h1{
  font-size:
    clamp(45px,3.5vw,62px);
}

.bp-v11-badges{
  margin-top:18px;
}

.bp-v11-badge{
  min-height:31px;

  padding:
    0
    12px;

  font-size:11px;
}

.bp-v11-hero-copy p{
  max-width:535px;

  margin:
    18px
    0
    21px;

  font-size:13px;
  line-height:1.6;
}

.bp-v11-main-action{
  min-width:235px;
  height:49px;

  justify-content:center;

  font-size:12px;
}

.bp-v11-main-action svg{
  width:19px;
  height:19px;
}

.bp-v11-button-link{
  font-size:17px;
}

.bp-v11-main-action strong{
  margin-left:auto;
}


/* Welt stärker sichtbar */

.bp-v11-hero-world{
  min-height:
    clamp(340px,31vh,390px);
}

.bp-v11-world-logo{
  top:56px;

  font-size:
    clamp(54px,4.5vw,78px);

  opacity:.95;
}

.bp-v11-world-slogan{
  right:9%;
  bottom:82px;
}

.bp-v11-world-slogan strong{
  font-size:34px;
}

.bp-v11-world-slogan span{
  font-size:20px;
}

.bp-v11-world-darken{
  background:
    linear-gradient(
      90deg,
      rgba(5,16,8,.88),
      rgba(5,16,8,.18) 28%,
      transparent 63%
    ),
    linear-gradient(
      0deg,
      rgba(1,7,3,.55),
      transparent 55%
    );
}


/* ------------------------------------------------------------
   STATS
   ------------------------------------------------------------ */

.bp-v11-stats{
  gap:15px;
  margin-top:17px;
}

.bp-v11-stat{
  min-height:112px;

  gap:17px;

  padding:
    19px
    20px;

  border-radius:16px;
}

.bp-v11-icon{
  width:54px;
  height:54px;

  border-radius:14px;
}

.bp-v11-icon svg{
  width:25px;
  height:25px;
}

.bp-v11-stat span{
  font-size:11px;
}

.bp-v11-stat strong{
  margin-top:4px;

  font-size:28px;
}

.bp-v11-stat strong.bp-v11-date{
  margin-top:6px;

  font-size:16px;
}

.bp-v11-stat small{
  margin-top:7px;

  font-size:9px;
}


/* ------------------------------------------------------------
   HAUPTKARTEN
   ------------------------------------------------------------ */

.bp-v11-content-grid{
  gap:16px;
  margin-top:16px;

  grid-template-columns:
    minmax(0,1.65fr)
    minmax(390px,.9fr);
}

.bp-v11-card{
  padding:23px;

  border-radius:17px;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.025),
    0 20px 55px
      rgba(0,0,0,.08);
}

.bp-v11-card-head{
  min-height:36px;

  margin-bottom:18px;
}

.bp-v11-card-head svg{
  width:22px;
  height:22px;
}

.bp-v11-card-head h2{
  font-size:14px;
}

.bp-v11-player-values{
  min-height:78px;

  align-items:center;

  padding:
    18px
    19px;
}

.bp-v11-player-values span{
  font-size:9px;
}

.bp-v11-player-values strong{
  margin-top:7px;

  font-size:12px;
}

.bp-v11-player-values .mono{
  font-size:10px;
}

.bp-v11-verification-note{
  min-height:48px;

  display:flex;
  align-items:center;

  padding:
    12px
    16px
    12px
    48px;

  font-size:10px;
}


/* Tickets */

.bp-v11-ticket-values div{
  min-height:69px;

  padding:17px;
}

.bp-v11-ticket-values strong{
  font-size:25px;
}

.bp-v11-ticket-values span{
  font-size:9px;
}

.bp-v11-ticket-placeholder{
  min-height:55px;

  justify-content:center;
}


/* News */

.bp-v11-news-row{
  grid-template-columns:
    210px
    minmax(0,1fr)
    45px;

  min-height:111px;

  padding:12px;
}

.bp-v11-news-image{
  height:91px;
}

.bp-v11-news-text strong{
  font-size:12px;
}

.bp-v11-news-text p{
  font-size:10px;
}


/* Quick Actions */

.bp-v11-actions{
  gap:10px;
}

.bp-v11-actions button{
  min-height:105px;

  border-radius:12px;
}

.bp-v11-actions svg{
  width:27px;
  height:27px;
}

.bp-v11-actions strong{
  font-size:10px;
}


/* ------------------------------------------------------------
   HOVER / PREMIUM TIEFE
   ------------------------------------------------------------ */

.bp-v11-card,
.bp-v11-stat{
  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}

.bp-v11-card:hover{
  border-color:
    rgba(1,194,30,.33);

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.03),
    0 24px 70px
      rgba(0,0,0,.14);
}


/* ------------------------------------------------------------
   GROSSE DESKTOPS
   ------------------------------------------------------------ */

@media(min-width:1700px){

  .bp-dashboard-content{
    padding-left:46px !important;
    padding-right:46px !important;
  }

  .bp-v11-content-grid{
    grid-template-columns:
      minmax(0,1.72fr)
      minmax(430px,.88fr);
  }

}


/* ------------------------------------------------------------
   RESPONSIVE
   ------------------------------------------------------------ */

@media(max-width:1450px){

  .bp-v11-hero{
    grid-template-columns:
      minmax(480px,1fr)
      minmax(480px,1fr);
  }

  .bp-v11-stats{
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

}

@media(max-width:1150px){

  .bp-shell{
    grid-template-columns:
      190px
      minmax(0,1fr) !important;
  }

  .bp-v11-hero{
    grid-template-columns:1fr;
  }

  .bp-v11-hero-world{
    min-height:260px;
  }

  .bp-v11-content-grid{
    grid-template-columns:1fr;
  }

}



/* ============================================================
   Mein BauPanik - Ticket Center v0.1
   ============================================================ */

.bp-ticket-page{
  width:100%;
  max-width:none;
}

.bp-ticket-page-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:30px;
  margin-bottom:24px;
  padding:7px 2px;
}

.bp-ticket-kicker{
  color:#13e93a;
  font-size:9px;
  font-weight:900;
  letter-spacing:.22em;
}

.bp-ticket-page-head h1{
  margin:6px 0 4px;
  color:#f2f7f3;
  font-size:34px;
  letter-spacing:-.04em;
}

.bp-ticket-page-head p{
  margin:0;
  color:#788a7c;
  font-size:11px;
  line-height:1.55;
}

.bp-ticket-primary-button,
.bp-ticket-secondary-button,
.bp-ticket-icon-button{
  border-radius:10px;
  font-family:inherit;
  cursor:pointer;
}

.bp-ticket-primary-button{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 17px;
  border:1px solid #10ed38;
  background:
    linear-gradient(
      180deg,
      #08e832,
      #01bd22
    );
  color:#001604;
  font-size:10px;
  font-weight:950;
  box-shadow:
    0 12px 35px
    rgba(1,194,30,.13);
}

.bp-ticket-primary-button:hover{
  filter:brightness(1.07);
}

.bp-ticket-primary-button:disabled{
  opacity:.55;
  cursor:wait;
}

.bp-ticket-secondary-button{
  min-height:42px;
  padding:0 16px;
  border:
    1px solid rgba(101,132,106,.25);
  background:#09130d;
  color:#a0b0a3;
  font-size:10px;
  font-weight:800;
}

.bp-ticket-icon-button{
  width:36px;
  height:36px;
  border:
    1px solid rgba(87,118,92,.22);
  background:#08120b;
  color:#8ba08f;
  font-size:18px;
}

.bp-ticket-layout{
  min-height:
    calc(100vh - 190px);
  display:grid;
  grid-template-columns:
    minmax(300px,370px)
    minmax(0,1fr);
  gap:15px;
}

.bp-ticket-list-panel,
.bp-ticket-workspace{
  overflow:hidden;
  border:
    1px solid rgba(81,119,87,.25);
  border-radius:17px;
  background:
    linear-gradient(
      145deg,
      #0b160f,
      #071009
    );
  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.02);
}


/* Ticketliste */

.bp-ticket-list-panel{
  display:flex;
  flex-direction:column;
}

.bp-ticket-list-head{
  min-height:70px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 18px;
  border-bottom:
    1px solid rgba(75,108,80,.17);
}

.bp-ticket-list-head > div{
  display:flex;
  flex-direction:column;
}

.bp-ticket-list-head strong{
  color:#e7f0e9;
  font-size:10px;
  letter-spacing:.08em;
}

.bp-ticket-list-head span{
  margin-top:4px;
  color:#607365;
  font-size:8px;
}

.bp-ticket-list-head button{
  width:32px;
  height:32px;
  border:
    1px solid rgba(88,120,93,.18);
  border-radius:9px;
  background:#08120b;
  color:#91a294;
  cursor:pointer;
}

.bp-ticket-loading{
  padding:18px;
  color:#75887a;
  font-size:10px;
}

.bp-ticket-list-empty{
  flex:1;
  min-height:300px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:30px;
  text-align:center;
}

.bp-ticket-empty-icon{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  margin-bottom:15px;
  border:
    1px solid rgba(0,229,43,.2);
  border-radius:16px;
  background:
    rgba(0,229,43,.045);
}

.bp-ticket-empty-icon svg{
  width:27px;
  height:27px;
  fill:none;
  stroke:#1be640;
  stroke-width:1.7;
}

.bp-ticket-list-empty strong{
  color:#dce8df;
  font-size:12px;
}

.bp-ticket-list-empty span{
  max-width:200px;
  margin-top:7px;
  color:#66786a;
  font-size:9px;
  line-height:1.5;
}

.bp-ticket-list{
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:10px;
  overflow-y:auto;
}

.bp-ticket-list-item{
  position:relative;
  width:100%;
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:14px;
  border:
    1px solid rgba(80,111,84,.16);
  border-radius:11px;
  background:#071009;
  color:inherit;
  text-align:left;
  cursor:pointer;
  transition:
    border-color .16s ease,
    background .16s ease,
    transform .16s ease;
}

.bp-ticket-list-item:hover{
  border-color:
    rgba(1,194,30,.32);
  background:#0a160e;
}

.bp-ticket-list-item.active{
  border-color:
    rgba(0,229,43,.48);
  background:
    linear-gradient(
      90deg,
      rgba(0,229,43,.075),
      #08120b
    );
  box-shadow:
    inset 3px 0 0
    #09e832;
}

.bp-ticket-list-item-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

.bp-ticket-list-key{
  color:#637568;
  font-family:
    ui-monospace,
    monospace;
  font-size:8px;
}

.bp-ticket-list-item > strong{
  max-width:90%;
  overflow:hidden;
  color:#e4eee6;
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.bp-ticket-list-meta{
  display:flex;
  justify-content:space-between;
  gap:8px;
  color:#607065;
  font-size:8px;
}

.bp-ticket-unread{
  position:absolute;
  right:12px;
  bottom:34px;
  min-width:20px;
  height:20px;
  display:grid;
  place-items:center;
  padding:0 5px;
  border-radius:999px;
  background:#04d52a;
  color:#001504;
  font-size:8px;
  font-weight:1000;
}


/* Status */

.bp-ticket-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:23px;
  padding:0 8px;
  border-radius:999px;
  border:
    1px solid rgba(87,119,92,.22);
  background:#09130d;
  color:#93a596;
  font-size:7px;
  font-weight:900;
  white-space:nowrap;
}

.bp-ticket-status.open,
.bp-ticket-status.awaiting_support{
  border-color:
    rgba(0,229,43,.3);
  background:
    rgba(0,229,43,.07);
  color:#5aeb72;
}

.bp-ticket-status.in_progress{
  border-color:
    rgba(83,169,255,.3);
  background:
    rgba(83,169,255,.07);
  color:#80bbff;
}

.bp-ticket-status.waiting_player{
  border-color:
    rgba(255,194,69,.35);
  background:
    rgba(255,194,69,.075);
  color:#ffd16b;
}

.bp-ticket-status.forwarded,
.bp-ticket-status.paused{
  border-color:
    rgba(186,132,255,.3);
  background:
    rgba(186,132,255,.07);
  color:#c9a2ff;
}

.bp-ticket-status.closed{
  color:#76887a;
}


/* Workspace */

.bp-ticket-workspace{
  position:relative;
  min-height:620px;
}

.bp-ticket-welcome{
  min-height:620px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:40px;
  text-align:center;
}

.bp-ticket-welcome-icon{
  width:76px;
  height:76px;
  display:grid;
  place-items:center;
  margin-bottom:18px;
  border:
    1px solid rgba(0,229,43,.23);
  border-radius:22px;
  background:
    radial-gradient(
      circle,
      rgba(0,229,43,.12),
      rgba(0,229,43,.025)
    );
  box-shadow:
    0 0 55px
    rgba(0,229,43,.07);
}

.bp-ticket-welcome-icon svg{
  width:36px;
  height:36px;
  fill:none;
  stroke:#1ce741;
  stroke-width:1.6;
}

.bp-ticket-welcome > span{
  color:#12dc36;
  font-size:8px;
  font-weight:950;
  letter-spacing:.22em;
}

.bp-ticket-welcome h2{
  margin:9px 0 7px;
  color:#edf5ef;
  font-size:25px;
}

.bp-ticket-welcome p{
  max-width:400px;
  margin:0 0 22px;
  color:#6f8373;
  font-size:10px;
  line-height:1.6;
}


/* Neues Ticket */

.bp-ticket-new-panel{
  padding:24px;
}

.bp-ticket-workspace-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  padding-bottom:18px;
  border-bottom:
    1px solid rgba(75,108,80,.17);
}

.bp-ticket-workspace-head span{
  color:#15e33a;
  font-size:8px;
  font-weight:900;
  letter-spacing:.18em;
}

.bp-ticket-workspace-head h2{
  margin:5px 0 0;
  color:#eef6f0;
  font-size:22px;
}

.bp-ticket-form{
  max-width:760px;
  display:flex;
  flex-direction:column;
  gap:17px;
  padding-top:22px;
}

.bp-ticket-form label{
  display:flex;
  flex-direction:column;
  gap:7px;
}

.bp-ticket-form label > span{
  color:#98a99b;
  font-size:9px;
  font-weight:850;
}

.bp-ticket-form input,
.bp-ticket-form select,
.bp-ticket-form textarea{
  width:100%;
  box-sizing:border-box;
  outline:none;
  border:
    1px solid rgba(82,115,87,.27);
  border-radius:10px;
  background:#060e09;
  color:#e5efe7;
  font:inherit;
  font-size:11px;
}

.bp-ticket-form input,
.bp-ticket-form select{
  height:44px;
  padding:0 13px;
}

.bp-ticket-form textarea{
  min-height:180px;
  padding:13px;
  resize:vertical;
  line-height:1.55;
}

.bp-ticket-form input:focus,
.bp-ticket-form select:focus,
.bp-ticket-form textarea:focus{
  border-color:
    rgba(0,229,43,.55);
  box-shadow:
    0 0 0 3px
    rgba(0,229,43,.045);
}

.bp-ticket-form small{
  color:#586b5c;
  font-size:8px;
}

.bp-ticket-form-actions{
  display:flex;
  justify-content:flex-end;
  gap:9px;
  margin-top:4px;
}

.bp-ticket-form-message{
  min-height:17px;
  font-size:9px;
}

.bp-ticket-form-message.error{
  color:#ff7777;
}

.bp-ticket-form-message.success{
  color:#53e86d;
}


/* Ticket Details / Chat */

.bp-ticket-detail-panel{
  display:flex;
  flex-direction:column;
  min-height:620px;
}

.bp-ticket-detail-head{
  min-height:94px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 22px;
  border-bottom:
    1px solid rgba(74,107,79,.17);
}

.bp-ticket-detail-topline{
  display:flex;
  align-items:center;
  gap:9px;
}

.bp-ticket-detail-topline > span:first-child{
  color:#657769;
  font-family:
    ui-monospace,
    monospace;
  font-size:8px;
}

.bp-ticket-detail-head h2{
  margin:7px 0 5px;
  color:#ecf4ee;
  font-size:18px;
}

.bp-ticket-detail-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px 14px;
  color:#637669;
  font-size:8px;
}

.bp-ticket-status-note{
  margin:14px 18px 0;
  padding:11px 13px;
  border:
    1px solid rgba(0,229,43,.16);
  border-radius:9px;
  background:
    rgba(0,229,43,.035);
  color:#85a08a;
  font-size:9px;
}

.bp-ticket-chat{
  flex:1;
  max-height:
    calc(100vh - 440px);
  min-height:350px;
  overflow-y:auto;
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:22px;
}

.bp-ticket-chat-empty{
  margin:auto;
  color:#617165;
  font-size:10px;
}

.bp-ticket-message{
  max-width:72%;
  padding:12px 14px;
  border-radius:13px;
  border:
    1px solid rgba(78,109,82,.19);
  background:#08110b;
}

.bp-ticket-message.player{
  align-self:flex-end;
  border-color:
    rgba(0,229,43,.28);
  background:
    linear-gradient(
      145deg,
      rgba(0,229,43,.09),
      rgba(7,18,10,.96)
    );
}

.bp-ticket-message.staff{
  align-self:flex-start;
}

.bp-ticket-message.system{
  align-self:center;
  max-width:85%;
  background:
    rgba(83,107,88,.07);
}

.bp-ticket-message header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.bp-ticket-message header strong{
  color:#19e73f;
  font-size:8px;
}

.bp-ticket-message.staff header strong{
  color:#dbe7dd;
}

.bp-ticket-message.system header strong{
  color:#8fa291;
}

.bp-ticket-message header span{
  color:#536456;
  font-size:7px;
}

.bp-ticket-message p{
  margin:8px 0 0;
  color:#b5c3b8;
  font-size:10px;
  line-height:1.55;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.bp-ticket-reply-preview{
  min-height:73px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:13px 20px;
  border-top:
    1px solid rgba(75,107,79,.18);
  background:#060e09;
}

.bp-ticket-reply-preview > div{
  display:flex;
  flex-direction:column;
}

.bp-ticket-reply-preview strong{
  color:#a7b7aa;
  font-size:9px;
}

.bp-ticket-reply-preview span{
  margin-top:4px;
  color:#596b5d;
  font-size:8px;
}

.bp-ticket-coming-soon{
  flex:none;
  padding:6px 9px;
  border:
    1px solid rgba(0,229,43,.18);
  border-radius:999px;
  color:#16dd39 !important;
  font-weight:900;
}

.bp-ticket-nav-badge{
  min-width:19px;
  height:19px;
  display:grid;
  place-items:center;
  margin-left:auto;
  padding:0 5px;
  border-radius:999px;
  background:#09dd30;
  color:#001504;
  font-size:7px;
  font-weight:1000;
}

.bp-ticket-open-support{
  cursor:pointer !important;
  opacity:1 !important;
  color:#a8bbaa !important;
}

.bp-ticket-open-support:hover{
  border-color:
    rgba(0,229,43,.35) !important;
  color:#dff4e2 !important;
}


/* Responsive */

@media(max-width:1050px){

  .bp-ticket-layout{
    grid-template-columns:1fr;
  }

  .bp-ticket-list-panel{
    max-height:350px;
  }

  .bp-ticket-workspace{
    min-height:560px;
  }

}

@media(max-width:650px){

  .bp-ticket-page-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .bp-ticket-message{
    max-width:90%;
  }

  .bp-ticket-form-actions{
    flex-direction:column-reverse;
  }

  .bp-ticket-primary-button,
  .bp-ticket-secondary-button{
    width:100%;
  }

}


/* ============================================================
   Mein BauPanik - Ticket Center v0.2
   Größere Desktop-Typografie
   ============================================================ */

.bp-ticket-page-head{
  margin-bottom:28px;
}

.bp-ticket-kicker{
  font-size:12px !important;
}

.bp-ticket-page-head h1{
  margin-top:8px;
  font-size:42px !important;
}

.bp-ticket-page-head p{
  max-width:650px;
  font-size:14px !important;
  line-height:1.6;
}


/* Buttons */

.bp-ticket-primary-button{
  min-height:50px;
  padding:0 21px;
  font-size:13px !important;
}

.bp-ticket-secondary-button{
  min-height:48px;
  font-size:13px !important;
}

.bp-ticket-icon-button{
  width:42px;
  height:42px;
  font-size:21px;
}


/* Linke Ticket-Spalte */

.bp-ticket-list-head{
  min-height:82px;
  padding:0 20px;
}

.bp-ticket-list-head strong{
  font-size:13px !important;
}

.bp-ticket-list-head span{
  margin-top:6px;
  font-size:11px !important;
}

.bp-ticket-list-head button{
  width:38px;
  height:38px;
  font-size:17px;
}

.bp-ticket-loading{
  padding:20px;
  font-size:13px !important;
}

.bp-ticket-empty-icon{
  width:68px;
  height:68px;
}

.bp-ticket-empty-icon svg{
  width:32px;
  height:32px;
}

.bp-ticket-list-empty strong{
  font-size:16px !important;
}

.bp-ticket-list-empty span{
  max-width:250px;
  margin-top:10px;
  font-size:12px !important;
  line-height:1.6;
}


/* Einzelne Tickets */

.bp-ticket-list{
  gap:9px;
  padding:12px;
}

.bp-ticket-list-item{
  gap:10px;
  padding:17px;
}

.bp-ticket-list-key{
  font-size:10px !important;
}

.bp-ticket-list-item > strong{
  font-size:14px !important;
}

.bp-ticket-list-meta{
  font-size:11px !important;
}

.bp-ticket-status{
  min-height:27px;
  padding:0 10px;
  font-size:10px !important;
}

.bp-ticket-unread{
  min-width:23px;
  height:23px;
  font-size:10px !important;
}


/* Willkommen rechts */

.bp-ticket-welcome > span{
  font-size:11px !important;
}

.bp-ticket-welcome h2{
  margin:12px 0 10px;
  font-size:32px !important;
}

.bp-ticket-welcome p{
  max-width:520px;
  margin-bottom:27px;
  font-size:13px !important;
  line-height:1.65;
}

.bp-ticket-welcome-icon{
  width:86px;
  height:86px;
}

.bp-ticket-welcome-icon svg{
  width:41px;
  height:41px;
}


/* Neues Ticket */

.bp-ticket-workspace-head span{
  font-size:11px !important;
}

.bp-ticket-workspace-head h2{
  margin-top:7px;
  font-size:28px !important;
}

.bp-ticket-form{
  max-width:850px;
  gap:21px;
}

.bp-ticket-form label > span{
  font-size:12px !important;
}

.bp-ticket-form input,
.bp-ticket-form select,
.bp-ticket-form textarea{
  font-size:14px !important;
}

.bp-ticket-form input,
.bp-ticket-form select{
  height:51px;
  padding:0 15px;
}

.bp-ticket-form textarea{
  min-height:220px;
  padding:15px;
}

.bp-ticket-form small{
  font-size:10px !important;
}

.bp-ticket-form-message{
  font-size:12px !important;
}


/* Ticket-Detailansicht */

.bp-ticket-detail-head{
  min-height:110px;
  padding:21px 25px;
}

.bp-ticket-detail-topline > span:first-child{
  font-size:10px !important;
}

.bp-ticket-detail-head h2{
  margin:9px 0 7px;
  font-size:24px !important;
}

.bp-ticket-detail-meta{
  gap:7px 16px;
  font-size:11px !important;
}

.bp-ticket-status-note{
  padding:14px 16px;
  font-size:12px !important;
  line-height:1.5;
}


/* Nachrichten */

.bp-ticket-chat{
  gap:15px;
  padding:26px;
}

.bp-ticket-message{
  padding:15px 17px;
}

.bp-ticket-message header strong{
  font-size:11px !important;
}

.bp-ticket-message header span{
  font-size:9px !important;
}

.bp-ticket-message p{
  margin-top:10px;
  font-size:13px !important;
  line-height:1.65;
}

.bp-ticket-chat-empty{
  font-size:13px !important;
}


/* Unterer Antwortbereich */

.bp-ticket-reply-preview{
  min-height:87px;
  padding:16px 23px;
}

.bp-ticket-reply-preview strong{
  font-size:12px !important;
}

.bp-ticket-reply-preview span{
  margin-top:6px;
  font-size:10px !important;
}

.bp-ticket-coming-soon{
  font-size:10px !important;
}


/* Navigation Badge */

.bp-ticket-nav-badge{
  min-width:22px;
  height:22px;
  font-size:9px !important;
}


/* Große Desktop-Bildschirme */

@media(min-width:1700px){

  .bp-ticket-layout{
    grid-template-columns:
      minmax(340px,410px)
      minmax(0,1fr);
  }

  .bp-ticket-page-head h1{
    font-size:46px !important;
  }

  .bp-ticket-welcome h2{
    font-size:35px !important;
  }

}


/* ============================================================
   Ticket Center - Hidden State Fix
   Es darf immer nur ein Workspace-Panel sichtbar sein.
   ============================================================ */

.bp-ticket-welcome[hidden],
.bp-ticket-new-panel[hidden],
.bp-ticket-detail-panel[hidden],
.bp-ticket-list-empty[hidden],
.bp-ticket-loading[hidden],
.bp-ticket-status-note[hidden],
.bp-ticket-nav-badge[hidden] {
  display: none !important;
}


/* ============================================================
   Mein BauPanik - Ticket Center v0.3
   KOMPLETTE TYPOGRAFIE FÜR DESKTOP
   ============================================================ */


/* ------------------------------------------------------------
   SEITENTITEL
   ------------------------------------------------------------ */

.bp-ticket-kicker{
  font-size:13px !important;
  letter-spacing:.18em !important;
}

.bp-ticket-page-head h1{
  font-size:38px !important;
  line-height:1.05 !important;
}

.bp-ticket-page-head p{
  font-size:15px !important;
  line-height:1.6 !important;
}


/* ------------------------------------------------------------
   BUTTONS
   ------------------------------------------------------------ */

.bp-ticket-primary-button{
  min-height:50px !important;
  padding:0 20px !important;
  font-size:14px !important;
}

.bp-ticket-secondary-button{
  min-height:48px !important;
  font-size:13px !important;
}

.bp-ticket-icon-button{
  width:42px !important;
  height:42px !important;
  font-size:20px !important;
}


/* ------------------------------------------------------------
   LINKE TICKETLISTE
   ------------------------------------------------------------ */

.bp-ticket-list-head{
  min-height:82px !important;
}

.bp-ticket-list-head strong{
  font-size:14px !important;
}

.bp-ticket-list-head span{
  font-size:12px !important;
}

.bp-ticket-list-head button{
  width:38px !important;
  height:38px !important;
  font-size:17px !important;
}

.bp-ticket-list-item{
  padding:18px !important;
  gap:11px !important;
}

.bp-ticket-list-key{
  font-size:11px !important;
}

.bp-ticket-list-item > strong{
  font-size:16px !important;
  line-height:1.35 !important;
}

.bp-ticket-list-meta{
  font-size:12px !important;
}

.bp-ticket-status{
  min-height:28px !important;
  padding:0 11px !important;
  font-size:11px !important;
}

.bp-ticket-unread{
  min-width:24px !important;
  height:24px !important;
  font-size:10px !important;
}


/* ------------------------------------------------------------
   LEERE TICKETLISTE
   ------------------------------------------------------------ */

.bp-ticket-list-empty strong{
  font-size:17px !important;
}

.bp-ticket-list-empty span{
  font-size:13px !important;
  line-height:1.6 !important;
}

.bp-ticket-loading{
  font-size:13px !important;
}


/* ------------------------------------------------------------
   DETAIL-KOPF
   ------------------------------------------------------------ */

.bp-ticket-detail-head{
  min-height:112px !important;
  padding:22px 25px !important;
}

.bp-ticket-detail-topline > span:first-child{
  font-size:11px !important;
}

.bp-ticket-detail-head h2{
  margin-top:9px !important;
  font-size:25px !important;
  line-height:1.25 !important;
}

.bp-ticket-detail-meta{
  margin-top:7px !important;
  font-size:12px !important;
  line-height:1.5 !important;
}


/* ------------------------------------------------------------
   STATUS-HINWEIS
   ------------------------------------------------------------ */

.bp-ticket-status-note{
  padding:14px 17px !important;
  font-size:13px !important;
  line-height:1.55 !important;
}


/* ------------------------------------------------------------
   CHAT / NACHRICHTEN
   ------------------------------------------------------------ */

.bp-ticket-chat{
  gap:17px !important;
  padding:27px !important;
}

.bp-ticket-message{
  max-width:75% !important;
  padding:16px 18px !important;
  border-radius:14px !important;
}

.bp-ticket-message header strong{
  font-size:12px !important;
}

.bp-ticket-message header span{
  font-size:10px !important;
}

.bp-ticket-message p{
  margin-top:10px !important;
  font-size:14px !important;
  line-height:1.65 !important;
}

.bp-ticket-chat-empty{
  font-size:14px !important;
}


/* ------------------------------------------------------------
   ANTWORTBEREICH UNTEN
   ------------------------------------------------------------ */

.bp-ticket-reply-preview{
  min-height:88px !important;
  padding:17px 23px !important;
}

.bp-ticket-reply-preview strong{
  font-size:13px !important;
}

.bp-ticket-reply-preview span{
  font-size:11px !important;
  line-height:1.5 !important;
}

.bp-ticket-coming-soon{
  padding:7px 11px !important;
  font-size:11px !important;
}


/* ------------------------------------------------------------
   NEUES TICKET FORMULAR
   ------------------------------------------------------------ */

.bp-ticket-workspace-head span{
  font-size:12px !important;
}

.bp-ticket-workspace-head h2{
  font-size:29px !important;
}

.bp-ticket-form label > span{
  font-size:13px !important;
}

.bp-ticket-form input,
.bp-ticket-form select,
.bp-ticket-form textarea{
  font-size:15px !important;
}

.bp-ticket-form input,
.bp-ticket-form select{
  height:52px !important;
}

.bp-ticket-form textarea{
  min-height:220px !important;
  line-height:1.6 !important;
}

.bp-ticket-form small{
  font-size:11px !important;
}

.bp-ticket-form-message{
  font-size:13px !important;
}


/* ------------------------------------------------------------
   WILLKOMMENSANSICHT
   ------------------------------------------------------------ */

.bp-ticket-welcome > span{
  font-size:12px !important;
}

.bp-ticket-welcome h2{
  font-size:32px !important;
}

.bp-ticket-welcome p{
  font-size:14px !important;
  line-height:1.65 !important;
}


/* ------------------------------------------------------------
   SIDEBAR AUF TICKET-SEITE
   ------------------------------------------------------------ */

.bp-nav-item{
  font-size:14px !important;
}

.bp-nav-icon{
  width:21px !important;
  height:21px !important;
}


/* ------------------------------------------------------------
   EXTRA FÜR GROSSE MONITORE
   ------------------------------------------------------------ */

@media(min-width:1600px){

  .bp-ticket-list-head strong{
    font-size:15px !important;
  }

  .bp-ticket-list-head span{
    font-size:12px !important;
  }

  .bp-ticket-list-item > strong{
    font-size:16px !important;
  }

  .bp-ticket-message p{
    font-size:15px !important;
  }

  .bp-ticket-detail-head h2{
    font-size:27px !important;
  }

  .bp-ticket-page-head h1{
    font-size:42px !important;
  }

}



/* ============================================================
   Ticket Chat v0.2 - Reply Composer
   ============================================================ */

.bp-ticket-reply-area{
  padding:18px 22px;
  border-top:
    1px solid rgba(75,107,79,.18);
  background:
    linear-gradient(
      180deg,
      #071009,
      #050c07
    );
}

.bp-ticket-reply-form{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.bp-ticket-reply-label{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
}

.bp-ticket-reply-label > div{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.bp-ticket-reply-label strong{
  color:#dce7de;
  font-size:14px;
}

.bp-ticket-reply-label span{
  color:#65776a;
  font-size:11px;
  line-height:1.5;
}

#ticketReplyCount{
  flex:none;
  color:#718476;
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Consolas,
    monospace;
  font-size:11px;
}

.bp-ticket-reply-form textarea{
  width:100%;
  min-height:105px;
  box-sizing:border-box;
  resize:vertical;
  outline:none;
  padding:14px 15px;
  border:
    1px solid rgba(83,118,88,.27);
  border-radius:11px;
  background:#050d08;
  color:#e6efe8;
  font:inherit;
  font-size:14px;
  line-height:1.6;
}

.bp-ticket-reply-form textarea::placeholder{
  color:#4e6253;
}

.bp-ticket-reply-form textarea:focus{
  border-color:
    rgba(0,229,43,.52);
  box-shadow:
    0 0 0 3px
    rgba(0,229,43,.045);
}

.bp-ticket-reply-actions{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.bp-ticket-reply-actions
.bp-ticket-form-message{
  flex:1;
  min-width:0;
}

.bp-ticket-reply-closed{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:75px;
  padding:12px;
  text-align:center;
  border:
    1px solid rgba(92,117,96,.18);
  border-radius:10px;
  background:#071009;
}

.bp-ticket-reply-closed strong{
  color:#a5b4a8;
  font-size:13px;
}

.bp-ticket-reply-closed span{
  margin-top:5px;
  color:#617266;
  font-size:11px;
}

.bp-ticket-reply-form[hidden],
.bp-ticket-reply-closed[hidden]{
  display:none !important;
}


/* Große Monitore */

@media(min-width:1600px){

  .bp-ticket-reply-label strong{
    font-size:15px;
  }

  .bp-ticket-reply-label span{
    font-size:12px;
  }

  .bp-ticket-reply-form textarea{
    font-size:15px;
  }

}

@media(max-width:650px){

  .bp-ticket-reply-label{
    align-items:flex-start;
    flex-direction:column;
  }

  .bp-ticket-reply-actions{
    align-items:stretch;
    flex-direction:column;
  }

}


/* ============================================================
   Ticket Center - Globale Typografie sichtbar größer
   ============================================================ */

#ticketView{
  font-size:16px;
  line-height:1.55;
}

/* Kopfbereich */
.bp-ticket-page-head{
  margin-bottom:32px;
}

.bp-ticket-kicker{
  font-size:15px !important;
  letter-spacing:.22em !important;
  font-weight:800 !important;
}

.bp-ticket-page-head h1{
  font-size:56px !important;
  line-height:1.04 !important;
  letter-spacing:-0.03em;
  margin:10px 0 14px !important;
}

.bp-ticket-page-head p{
  font-size:20px !important;
  line-height:1.65 !important;
  max-width:820px;
  color:#90a593 !important;
}

/* Buttons */
.bp-ticket-page-head .bp-ticket-primary-button,
.bp-ticket-primary-button,
.bp-ticket-secondary-button{
  font-size:16px !important;
  font-weight:700 !important;
  min-height:52px;
  padding:0 22px !important;
}

/* Linke Ticketliste */
.bp-ticket-list-head{
  padding:20px 22px !important;
}

.bp-ticket-list-head strong{
  font-size:22px !important;
  line-height:1.2 !important;
}

.bp-ticket-list-head span{
  font-size:15px !important;
  color:#819684 !important;
}

.bp-ticket-list{
  font-size:16px !important;
}

.bp-ticket-list-item{
  padding:18px 18px 16px !important;
  border-radius:16px !important;
}

.bp-ticket-list-item .bp-ticket-item-key,
.bp-ticket-list-item .bp-ticket-key,
.bp-ticket-list-item .bp-ticket-id{
  font-size:13px !important;
  line-height:1.4 !important;
  color:#839884 !important;
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Consolas,
    monospace;
}

.bp-ticket-list-item .bp-ticket-item-title,
.bp-ticket-list-item h3,
.bp-ticket-list-item strong{
  font-size:18px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
}

.bp-ticket-list-item .bp-ticket-item-meta,
.bp-ticket-list-item .bp-ticket-item-subtitle,
.bp-ticket-list-item .bp-ticket-item-date,
.bp-ticket-list-item small,
.bp-ticket-list-item time{
  font-size:14px !important;
  line-height:1.5 !important;
  color:#8ea18f !important;
}

.bp-ticket-list-empty strong{
  font-size:24px !important;
}

.bp-ticket-list-empty span,
.bp-ticket-list-empty p{
  font-size:16px !important;
  line-height:1.65 !important;
}

/* Status Badges */
.bp-ticket-status-badge,
.bp-ticket-status,
.bp-ticket-pill,
.bp-ticket-chip{
  font-size:13px !important;
  line-height:1 !important;
  font-weight:800 !important;
  padding:7px 12px !important;
  border-radius:999px !important;
}

/* Hauptbereich / Ticketdetails */
.bp-ticket-detail-head,
.bp-ticket-workspace-head{
  padding:24px 26px !important;
}

.bp-ticket-detail-head .bp-ticket-key,
.bp-ticket-detail-head .bp-ticket-id,
.bp-ticket-workspace-head .bp-ticket-key,
.bp-ticket-workspace-head .bp-ticket-id,
#ticketDetailKey{
  font-size:13px !important;
  line-height:1.45 !important;
  color:#8ea08f !important;
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Consolas,
    monospace;
}

#ticketDetailTitle,
.bp-ticket-detail-head h2,
.bp-ticket-workspace-head h2{
  font-size:46px !important;
  line-height:1.08 !important;
  letter-spacing:-0.03em;
  margin:10px 0 12px !important;
}

#ticketDetailMeta,
.bp-ticket-detail-meta,
.bp-ticket-detail-meta span,
.bp-ticket-detail-meta small{
  font-size:15px !important;
  line-height:1.6 !important;
  color:#93a693 !important;
}

/* Nachrichtenbereich */
#ticketMessageList,
.bp-ticket-message-list{
  padding:22px 22px 10px !important;
}

.bp-ticket-message{
  margin-bottom:18px !important;
}

.bp-ticket-message-bubble,
.bp-ticket-message-content{
  padding:16px 18px !important;
  border-radius:18px !important;
  max-width:min(880px, 92%);
}

.bp-ticket-message-author,
.bp-ticket-message-name,
.bp-ticket-message strong{
  font-size:15px !important;
  line-height:1.3 !important;
  font-weight:800 !important;
}

.bp-ticket-message-time,
.bp-ticket-message-date,
.bp-ticket-message-meta,
.bp-ticket-message small,
.bp-ticket-message time{
  font-size:12px !important;
  line-height:1.4 !important;
  color:#8ba08d !important;
}

.bp-ticket-message-body,
.bp-ticket-message p,
.bp-ticket-message-text{
  font-size:17px !important;
  line-height:1.72 !important;
  color:#e9f3ea !important;
}

/* Antwortbereich unten */
.bp-ticket-reply-preview,
.bp-ticket-reply-area{
  padding:24px 26px !important;
}

.bp-ticket-reply-preview strong,
.bp-ticket-reply-area strong{
  font-size:22px !important;
  line-height:1.25 !important;
}

.bp-ticket-reply-preview span,
.bp-ticket-reply-area span,
.bp-ticket-coming-soon{
  font-size:15px !important;
  line-height:1.6 !important;
}

.bp-ticket-reply-form textarea,
#ticketReplyInput{
  font-size:17px !important;
  line-height:1.7 !important;
  min-height:130px !important;
}

#ticketReplyCount{
  font-size:13px !important;
}

/* Formulare Neues Ticket */
.bp-ticket-form label > span,
.bp-ticket-form small,
.bp-ticket-form-message,
.bp-ticket-form input,
.bp-ticket-form select,
.bp-ticket-form textarea{
  font-size:16px !important;
}

.bp-ticket-form label > span{
  font-weight:700 !important;
}

.bp-ticket-form input,
.bp-ticket-form select,
.bp-ticket-form textarea{
  min-height:52px;
}

.bp-ticket-form textarea{
  min-height:180px;
  line-height:1.65 !important;
}

/* Rechts / Infos */
.bp-ticket-detail-panel,
.bp-ticket-new-panel,
.bp-ticket-welcome{
  font-size:16px !important;
}

.bp-ticket-welcome h2{
  font-size:52px !important;
  line-height:1.08 !important;
}

.bp-ticket-welcome p{
  font-size:18px !important;
  line-height:1.7 !important;
}

/* Refresh / Icon Buttons */
.bp-ticket-icon-button{
  width:42px !important;
  height:42px !important;
  font-size:18px !important;
}

/* Extra große Monitore */
@media (min-width: 1600px){

  #ticketView{
    font-size:17px;
  }

  .bp-ticket-page-head h1{
    font-size:62px !important;
  }

  #ticketDetailTitle,
  .bp-ticket-detail-head h2,
  .bp-ticket-workspace-head h2{
    font-size:50px !important;
  }

  .bp-ticket-message-body,
  .bp-ticket-message p,
  .bp-ticket-message-text{
    font-size:18px !important;
  }

  .bp-ticket-list-item .bp-ticket-item-title,
  .bp-ticket-list-item h3,
  .bp-ticket-list-item strong{
    font-size:19px !important;
  }
}

/* Tablets / kleiner Desktop */
@media (max-width: 1200px){

  .bp-ticket-page-head h1{
    font-size:44px !important;
  }

  #ticketDetailTitle,
  .bp-ticket-detail-head h2,
  .bp-ticket-workspace-head h2{
    font-size:34px !important;
  }

  .bp-ticket-page-head p{
    font-size:18px !important;
  }
}

/* Mobile */
@media (max-width: 768px){

  .bp-ticket-page-head h1{
    font-size:34px !important;
  }

  .bp-ticket-page-head p{
    font-size:16px !important;
  }

  #ticketDetailTitle,
  .bp-ticket-detail-head h2,
  .bp-ticket-workspace-head h2{
    font-size:28px !important;
  }

  .bp-ticket-message-body,
  .bp-ticket-message p,
  .bp-ticket-message-text{
    font-size:16px !important;
  }
}


/* ============================================================
   BAUPANIK TICKETS - DESKTOP TYPOGRAFIE FINAL
   ============================================================ */

#ticketView{
  font-size:16px !important;
}

/* SEITENKOPF */

.bp-ticket-kicker{
  font-size:14px !important;
  font-weight:900 !important;
  letter-spacing:.20em !important;
}

.bp-ticket-page-head h1{
  font-size:48px !important;
  line-height:1.05 !important;
  margin:10px 0 10px !important;
}

.bp-ticket-page-head p{
  font-size:17px !important;
  line-height:1.6 !important;
  color:#8fa191 !important;
}


/* LINKE TICKETLISTE */

.bp-ticket-list-head strong{
  font-size:17px !important;
}

.bp-ticket-list-head span{
  font-size:13px !important;
}

.bp-ticket-list-key{
  font-size:12px !important;
  color:#829484 !important;
}

.bp-ticket-list-item > strong{
  font-size:17px !important;
  line-height:1.35 !important;
}

.bp-ticket-list-meta{
  font-size:13px !important;
  line-height:1.5 !important;
  color:#849587 !important;
}

.bp-ticket-status{
  min-height:30px !important;
  padding:0 12px !important;
  font-size:12px !important;
}


/* TICKET-DETAIL */

#ticketDetailKey{
  font-size:12px !important;
  color:#839586 !important;
}

#ticketDetailTitle{
  font-size:30px !important;
  line-height:1.2 !important;
  margin:10px 0 8px !important;
}

.bp-ticket-detail-meta,
.bp-ticket-detail-meta span{
  font-size:13px !important;
  line-height:1.55 !important;
}


/* CHAT */

.bp-ticket-message{
  padding:17px 19px !important;
}

.bp-ticket-message header strong{
  font-size:14px !important;
}

.bp-ticket-message header span{
  font-size:12px !important;
  color:#829486 !important;
}

.bp-ticket-message p{
  margin-top:10px !important;
  font-size:16px !important;
  line-height:1.65 !important;
  color:#e0eae2 !important;
}


/* ANTWORTBEREICH */

.bp-ticket-reply-label strong{
  font-size:16px !important;
}

.bp-ticket-reply-label span{
  font-size:13px !important;
  line-height:1.55 !important;
}

#ticketReplyCount{
  font-size:12px !important;
}

.bp-ticket-reply-form textarea{
  min-height:125px !important;
  padding:16px !important;
  font-size:16px !important;
  line-height:1.65 !important;
}

.bp-ticket-form-message{
  font-size:13px !important;
}


/* BUTTONS */

.bp-ticket-primary-button,
.bp-ticket-secondary-button{
  font-size:14px !important;
  min-height:50px !important;
}


/* NEUES TICKET */

.bp-ticket-workspace-head span{
  font-size:12px !important;
}

.bp-ticket-workspace-head h2{
  font-size:30px !important;
}

.bp-ticket-form label > span{
  font-size:14px !important;
}

.bp-ticket-form input,
.bp-ticket-form select,
.bp-ticket-form textarea{
  font-size:16px !important;
}

.bp-ticket-form small{
  font-size:12px !important;
}


/* WILLKOMMEN */

.bp-ticket-welcome > span{
  font-size:13px !important;
}

.bp-ticket-welcome h2{
  font-size:36px !important;
}

.bp-ticket-welcome p{
  font-size:16px !important;
  line-height:1.65 !important;
}


/* LEERER ZUSTAND */

.bp-ticket-list-empty strong{
  font-size:18px !important;
}

.bp-ticket-list-empty span{
  font-size:14px !important;
}


/* SIDEBAR */

.bp-nav-item{
  font-size:14px !important;
}


/* GROSSE MONITORE */

@media(min-width:1600px){

  .bp-ticket-page-head h1{
    font-size:52px !important;
  }

  #ticketDetailTitle{
    font-size:34px !important;
  }

  .bp-ticket-message p{
    font-size:17px !important;
  }

  .bp-ticket-message header span{
    font-size:13px !important;
  }

  .bp-ticket-list-item > strong{
    font-size:18px !important;
  }

  .bp-ticket-list-meta{
    font-size:14px !important;
  }

  .bp-ticket-reply-form textarea{
    font-size:17px !important;
  }

}


/* Ticket Chat - Datum/Uhrzeit besser lesbar */

.bp-ticket-message header span{
  font-size:14px !important;
  line-height:1.4 !important;
  font-weight:600 !important;
  color:#a1b2a4 !important;
  white-space:nowrap;
}

@media(min-width:1600px){

  .bp-ticket-message header span{
    font-size:15px !important;
  }

}

