/* ==========================================================
   EVERYONE ASSEMBLE
   PAIRVIEW
   ========================================================== */

/* ==========================================================
   GRUNDLAGEN
   ========================================================== */

.pairview-page{
  --pv-bg:#020d18;
  --pv-bg-deep:#010914;
  --pv-panel:#04192b;
  --pv-panel-soft:#082b45;
  --pv-panel-light:#0b3150;
  --pv-line:#1d5f8f;
  --pv-line-soft:rgba(33,139,208,.16);
  --pv-accent:#218bd0;
  --pv-accent-light:#75d0ff;
  --pv-text:#c4d8e4;
  --pv-text-light:#e1f1fa;
  --pv-muted:#8fa9bc;
  --pv-danger:#d47f87;

  width:100%;
  margin:20px auto 40px;

  color:var(--pv-text);

  font-family:Arial,sans-serif;
  font-size:13px;
  line-height:1.6;
}

.pairview-page,
.pairview-page *,
.pairview-page *:before,
.pairview-page *:after{
  box-sizing:border-box;
}

/* ==========================================================
   LISTENLAYOUT
   ========================================================== */

#pairview_lists{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;

  width:100%;
  min-width:0;
}

#pairview_lists > *{
  min-width:0;
}

#pairview_lists .pairview_lists-body{
  flex:1 1 auto;

  width:auto;
  min-width:0;

  overflow:hidden;

  color:var(--pv-text);

  background:
    linear-gradient(
      125deg,
      rgba(33,139,208,.045),
      transparent 38%
    ),
    linear-gradient(
      145deg,
      var(--pv-panel),
      var(--pv-bg)
    );

  border:1px solid rgba(33,139,208,.32);
  border-left:5px solid var(--pv-accent);

  box-shadow:
    0 18px 40px rgba(0,0,0,.30),
    inset 0 1px rgba(255,255,255,.025);
}

/* ==========================================================
   SEITENKOPF
   ========================================================== */

.pairview_lists-head{
  position:relative;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  min-height:140px;
  padding:25px 20px;

  overflow:hidden;

  background:
    radial-gradient(
      circle at 50% 135%,
      rgba(33,139,208,.23),
      transparent 49%
    ),
    linear-gradient(
      90deg,
      rgba(33,139,208,.07),
      transparent 50%,
      rgba(33,139,208,.045)
    ),
    var(--pv-bg-deep);

  border-bottom:2px solid #1674b5;

  text-align:center;
}

.pairview_lists-head:before{
  content:"";

  position:absolute;
  top:0;
  left:50%;

  width:220px;
  height:1px;

  background:
    linear-gradient(
      90deg,
      transparent,
      var(--pv-accent-light),
      transparent
    );

  transform:translateX(-50%);
}

.pairview_lists-head:after{
  content:"PAIR DATABASE";

  position:absolute;
  right:17px;
  bottom:9px;

  color:rgba(117,208,255,.055);

  font-family:Antonio,Arial,sans-serif;
  font-size:20px;
  font-weight:700;
  line-height:1;

  letter-spacing:4px;

  pointer-events:none;
}

.pairview_lists-kicker{
  display:block;

  margin-bottom:5px;

  color:var(--pv-muted);

  font-family:Antonio,Arial,sans-serif;
  font-size:10px;
  font-weight:700;
  line-height:1.3;

  letter-spacing:2.4px;
  text-transform:uppercase;
}

#pairview_lists .pairview_lists-headline{
  display:block;

  width:100%;
  height:auto;

  color:var(--pv-accent-light);
  background:transparent;

  font-family:Antonio,Arial,sans-serif;
  font-size:28px;
  font-weight:700;
  line-height:1.2;

  letter-spacing:2px;
  text-align:center;
  text-transform:uppercase;

  text-shadow:0 0 18px rgba(33,139,208,.20);
}

.pairview_lists-subtitle{
  display:block;

  max-width:680px;
  margin-top:8px;

  color:var(--pv-muted);

  font-size:12px;
  line-height:1.6;
}

/* ==========================================================
   BESCHREIBUNG UND FEHLER
   ========================================================== */

#pairview_lists .pairview_lists-description{
  padding:14px 17px;

  color:var(--pv-muted);
  background:rgba(2,13,24,.48);

  border-bottom:1px solid rgba(33,139,208,.14);

  font-size:12px;
  line-height:1.7;

  text-align:justify;
}

.pairview-error{
  width:auto;
  margin:15px 17px 0;
}

.pairview-error:empty{
  display:none;
}

.pairview-error .error,
.pairview-error .red_alert,
.pairview-error .pm_alert,
.pairview-error > div{
  margin:0;
  padding:11px 13px;

  color:var(--pv-text);
  background:rgba(212,127,135,.07);

  border:1px solid rgba(212,127,135,.24);
  border-left:4px solid var(--pv-danger);

  font-size:12px;
  line-height:1.6;
}

/* ==========================================================
   KATEGORIENRASTER
   ========================================================== */

#pairview_lists .pairview_lists-content{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:15px;

  width:100%;
  padding:18px;

  align-items:start;

  background:
    repeating-linear-gradient(
      45deg,
      transparent 0,
      transparent 12px,
      rgba(33,139,208,.012) 12px,
      rgba(33,139,208,.012) 13px
    );
}

.pairview{
  width:100%;
  min-width:0;

  overflow:hidden;

  color:var(--pv-text);

  background:
    linear-gradient(
      145deg,
      rgba(8,43,69,.57),
      rgba(2,13,24,.87)
    );

  border:1px solid rgba(33,139,208,.19);
  border-left:3px solid #1674b5;

  box-shadow:0 10px 23px rgba(0,0,0,.20);
}

.pairview_cathead{
  position:relative;

  display:flex;
  align-items:center;
  justify-content:center;

  min-height:52px;
  padding:11px 14px;

  color:var(--pv-accent-light);

  background:
    linear-gradient(
      90deg,
      rgba(33,139,208,.12),
      transparent 70%
    ),
    var(--pv-bg-deep);

  border:0;
  border-bottom:1px solid rgba(33,139,208,.20);

  font-family:Antonio,Arial,sans-serif;
  font-size:17px;
  font-weight:700;
  line-height:1.35;

  letter-spacing:1px;
  text-align:center;
  text-transform:uppercase;
}

.pairview_cathead:after{
  content:"";

  position:absolute;
  bottom:-1px;
  left:50%;

  width:65px;
  height:2px;

  background:var(--pv-accent);

  transform:translateX(-50%);
}

.pairview_pair{
  display:flex;
  flex-direction:column;
  gap:9px;

  padding:11px;
}

/* ==========================================================
   EINZELNES PAAR
   ========================================================== */

.pairview_pairbit{
  position:relative;

  display:grid;
  grid-template-columns:90px minmax(120px,1fr) 110px;
  gap:10px;
  align-items:center;

  width:100%;
  min-width:0;
  padding:10px;

  color:var(--pv-text);
  background:rgba(2,13,24,.49);

  border:1px solid rgba(33,139,208,.12);

  transition:
    background-color .2s ease,
    border-color .2s ease,
    transform .2s ease;
}

.pairview_pairbit:hover{
  background:rgba(8,43,69,.64);

  border-color:rgba(33,139,208,.28);

  transform:translateY(-1px);
}

.pairpartner{
  width:80px;
  height:80px;

  overflow:hidden;

  background:var(--pv-bg-deep);

  border:1px solid rgba(33,139,208,.29);
}

.pairpic{
  display:block;

  width:100%;
  height:100%;

  object-fit:cover;
  object-position:center top;

  border:0;
}

.pairbit_infos{
  position:relative;
  isolation:isolate;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;

  min-width:0;
  min-height:110px;
  padding:9px;

  overflow:hidden;

  text-align:center;
}

.pairbit_infos:before{
  content:"&";

  position:absolute;
  z-index:-1;
  top:50%;
  left:50%;

  color:rgba(117,208,255,.055);

  font-family:Georgia,"Times New Roman",serif;
  font-size:88px;
  font-weight:700;
  line-height:1;

  transform:translate(-50%,-50%);

  pointer-events:none;
}

.pairbit_name{
  position:relative;
  z-index:2;

  width:100%;
  min-width:0;

  color:var(--pv-text-light);

  font-family:Antonio,Arial,sans-serif;
  font-size:14px;
  font-weight:700;
  line-height:1.4;

  letter-spacing:.7px;
  text-align:center;
  text-transform:uppercase;

  overflow-wrap:anywhere;
}

.pairbit_name a{
  color:inherit;

  text-decoration:none;
}

.pairbit_name a:hover{
  color:var(--pv-accent-light);
}

.pairbit_options{
  position:relative;
  z-index:2;

  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:5px;

  margin-top:7px;
}

.pairbit_options a{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:28px;
  padding:5px 8px;

  color:var(--pv-accent-light);
  background:var(--pv-bg-deep);

  border:1px solid rgba(33,139,208,.24);

  font-family:Antonio,Arial,sans-serif;
  font-size:10px;
  font-weight:700;
  line-height:1.3;

  letter-spacing:.7px;
  text-decoration:none;
  text-transform:uppercase;
}

.pairbit_options a:hover{
  color:var(--pv-text-light);
  background:var(--pv-panel-light);

  border-color:var(--pv-accent);
}

/* ==========================================================
   FORMULARÜBERSCHRIFTEN
   ========================================================== */

.pairview-form-intro{
  width:100%;
}

.pairview-form-head{
  position:relative;

  display:flex;
  align-items:center;

  min-height:50px;
  padding:11px 14px;

  color:var(--pv-accent-light);

  background:
    linear-gradient(
      90deg,
      rgba(33,139,208,.13),
      transparent 70%
    ),
    var(--pv-bg-deep);

  border-top:1px solid rgba(33,139,208,.20);
  border-bottom:1px solid rgba(33,139,208,.20);

  font-family:Antonio,Arial,sans-serif;
  font-size:14px;
  font-weight:700;
  line-height:1.35;

  letter-spacing:1px;
  text-transform:uppercase;
}

.pairview-form-head:after{
  content:"";

  position:absolute;
  bottom:-1px;
  left:14px;

  width:65px;
  height:2px;

  background:var(--pv-accent);
}

/* ==========================================================
   HINZUFÜGEN UND BEARBEITEN
   ========================================================== */

.pairview-form{
  width:100%;
  margin:0;
}

.pairviewAdd,
.pairviewEdit{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;

  width:100%;
  margin:0;
  padding:16px;

  color:var(--pv-text);
  background:
    repeating-linear-gradient(
      45deg,
      transparent 0,
      transparent 12px,
      rgba(33,139,208,.012) 12px,
      rgba(33,139,208,.012) 13px
    );

  border:0;
}

.pairviewAdd_bit,
.pairviewEdit_bit{
  display:flex;
  flex-direction:column;

  width:100%;
  min-width:0;

  overflow:hidden;

  background:
    linear-gradient(
      145deg,
      rgba(8,43,69,.57),
      rgba(2,13,24,.86)
    );

  border:1px solid rgba(33,139,208,.18);
  border-left:3px solid #1674b5;

  box-shadow:0 9px 21px rgba(0,0,0,.17);
}

.pairviewAdd_headline,
.pairviewEdit_headline{
  position:relative;

  display:flex;
  align-items:center;
  justify-content:center;

  min-height:45px;
  padding:9px 11px;

  color:var(--pv-accent-light);

  background:
    linear-gradient(
      90deg,
      rgba(33,139,208,.11),
      transparent 70%
    ),
    var(--pv-bg-deep);

  border:0;
  border-bottom:1px solid rgba(33,139,208,.18);

  font-family:Antonio,Arial,sans-serif;
  font-size:11px;
  font-weight:700;
  line-height:1.35;

  letter-spacing:.9px;
  text-align:center;
  text-transform:uppercase;
}

.pairviewAdd_headline:after,
.pairviewEdit_headline:after{
  content:"";

  position:absolute;
  bottom:-1px;
  left:50%;

  width:50px;
  height:2px;

  background:var(--pv-accent);

  transform:translateX(-50%);
}

.pairviewAdd_trow,
.pairviewEdit_trow{
  display:flex;
  flex:1;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;

  width:100%;
  min-width:0;
  height:auto;
  min-height:150px;
  padding:12px;

  color:var(--pv-text);
  background:rgba(2,13,24,.42);

  border:0;
}

.pairviewEdit_trow{
  flex-direction:row;

  min-height:165px;
}

.pairviewAdd_own{
  width:100%;
  height:auto;
  margin:0;
  padding:8px 9px;

  color:var(--pv-text-light);
  background:rgba(33,139,208,.07);

  border:1px solid rgba(33,139,208,.15);
  border-left:2px solid var(--pv-accent);

  font-family:Antonio,Arial,sans-serif;
  font-size:13px;
  font-weight:700;
  line-height:1.4;

  letter-spacing:.6px;
  text-align:center;
  text-transform:uppercase;
}

.pairviewAdd_iconsize,
.pairviewEdit_iconsize{
  display:block;

  width:100%;

  color:var(--pv-muted);

  font-size:10px;
  line-height:1.5;

  text-align:center;
}

/* ==========================================================
   FORMULARFELDER
   ========================================================== */

.pairview-page input[type="text"],
.pairview-page input[type="file"],
.pairview-page select,
.pairview-page textarea{
  width:100%;
  min-width:0;
  min-height:41px;
  margin:0;
  padding:8px 10px;

  color:var(--pv-text-light);
  background:var(--pv-bg-deep);

  border:1px solid rgba(33,139,208,.25);
  border-radius:0;

  font-family:Arial,sans-serif;
  font-size:12px;
  line-height:1.45;

  outline:none;
}

.pairview-page input[type="file"]{
  padding:7px;
}

.pairview-page input[type="text"]:focus,
.pairview-page select:focus,
.pairview-page textarea:focus{
  background:#031426;

  border-color:var(--pv-accent);

  box-shadow:0 0 0 1px rgba(33,139,208,.18);
}

.pairviewEdit_avatar{
  flex:0 0 105px;

  width:105px;
  text-align:center;
}

.pairviewEdit_avatar img{
  display:block;

  width:105px;
  height:105px;

  object-fit:cover;
  object-position:center top;

  border:1px solid rgba(33,139,208,.30);
}

.pairviewEdit_infos{
  flex:1 1 auto;

  width:auto;
  min-width:0;

  text-align:center;
}

.pairviewEdit_infos input[type="file"],
.pairviewEdit_infos input.textbox{
  width:100%;
}

.pairviewEdit_name{
  width:100%;
  margin:0 0 10px;
  padding:7px 8px;

  color:var(--pv-accent-light);
  background:rgba(33,139,208,.07);

  border-left:2px solid var(--pv-accent);

  font-family:Antonio,Arial,sans-serif;
  font-size:14px;
  font-weight:700;
  line-height:1.4;

  letter-spacing:.6px;
  text-align:center;
  text-transform:uppercase;
}

/* ==========================================================
   FORMULARBUTTONS
   ========================================================== */

.pairviewAdd_button,
.pairviewEdit_button{
  display:flex;
  justify-content:flex-end;

  width:100%;
  margin:0;
  padding:12px 16px;

  background:rgba(2,13,24,.62);

  border:0;
  border-top:1px solid rgba(33,139,208,.14);

  text-align:right;
}

.pairview-page .button,
.pairview-page input.button,
.pairview-page a.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:35px;
  padding:7px 12px;

  color:var(--pv-accent-light);
  background:var(--pv-bg-deep);

  border:1px solid rgba(33,139,208,.28);
  border-radius:0;

  font-family:Antonio,Arial,sans-serif;
  font-size:10px;
  font-weight:700;
  line-height:1.3;

  letter-spacing:.8px;
  text-align:center;
  text-decoration:none;
  text-transform:uppercase;

  cursor:pointer;

  transition:
    color .2s ease,
    background-color .2s ease,
    border-color .2s ease,
    transform .2s ease;
}

.pairview-page .button:hover,
.pairview-page input.button:hover,
.pairview-page a.button:hover{
  color:var(--pv-text-light);
  background:var(--pv-panel-light);

  border-color:var(--pv-accent);

  transform:translateY(-1px);
}

/* ==========================================================
   SELECT2
   ========================================================== */

.pairview-page .select2-container{
  width:100% !important;
}

.pairview-page .select2-container .select2-choice{
  min-height:41px;
  padding:6px 10px;

  color:var(--pv-text-light);
  background:var(--pv-bg-deep);

  border:1px solid rgba(33,139,208,.25);
  border-radius:0;

  font-size:12px;
  line-height:27px;
}

.pairview-page .select2-container .select2-choice .select2-arrow{
  background:var(--pv-panel-soft);

  border-left:1px solid rgba(33,139,208,.20);
  border-radius:0;
}

.pairview-page .select2-container-active .select2-choice{
  border-color:var(--pv-accent);

  box-shadow:0 0 0 1px rgba(33,139,208,.18);
}

.select2-drop{
  color:#c4d8e4 !important;
  background:#020d18 !important;

  border:1px solid rgba(33,139,208,.30) !important;
  border-radius:0 !important;
}

.select2-results{
  font-size:12px;
}

.select2-results .select2-highlighted{
  color:#e1f1fa !important;
  background:#0b3150 !important;
}

.select2-search input{
  color:#e1f1fa !important;
  background:#010914 !important;

  border:1px solid rgba(33,139,208,.28) !important;

  font-size:12px !important;
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media screen and (max-width:1050px){

  #pairview_lists .pairview_lists-content{
    grid-template-columns:1fr;
  }

  .pairviewAdd,
  .pairviewEdit{
    grid-template-columns:1fr;
  }
}

@media screen and (max-width:850px){

  #pairview_lists{
    flex-direction:column;
  }

  #pairview_lists > *{
    width:100%;
  }
}

@media screen and (max-width:620px){

  .pairview-page{
    margin:14px 0 30px;
  }

  .pairview_lists-head{
    min-height:120px;
    padding:21px 14px;
  }

  #pairview_lists .pairview_lists-headline{
    font-size:23px;
  }

  .pairview_lists-head:after{
    display:none;
  }

  #pairview_lists .pairview_lists-content{
    padding:11px;
  }

  .pairview_pairbit{
    grid-template-columns:82px minmax(90px,1fr) 82px;
    gap:7px;
    padding:7px;
  }

  .pairpartner{
    width:82px;
    height:82px;
  }

  .pairbit_infos{
    min-height:82px;
    padding:5px;
  }

  .pairbit_infos:before{
    font-size:65px;
  }

  .pairbit_name{
    font-size:11px;
  }

  .pairviewEdit_trow{
    flex-direction:column;
  }
}

@media screen and (max-width:430px){

  .pairview_pairbit{
    grid-template-columns:1fr 1fr;
  }

  .pairpartner{
    width:100%;
    height:auto;
    aspect-ratio:1 / 1;
  }

  .pairbit_infos{
    grid-column:1 / -1;
    grid-row:2;

    min-height:90px;
  }

  .pairviewAdd,
  .pairviewEdit{
    padding:10px;
  }

  .pairviewAdd_button,
  .pairviewEdit_button{
    padding:10px;
  }

  .pairviewAdd_button .button,
  .pairviewEdit_button .button{
    width:100%;
  }
}