/* DEEPBLUE_U2_PUBLIC_R4 */

*{
  box-sizing:border-box;
}

:root{
  --db-bg:#020817;
  --db-panel:rgba(7,20,43,.88);
  --db-line:rgba(125,211,252,.20);
  --db-text:#f8fafc;
  --db-muted:#9fb2ca;
  --db-cyan:#38bdf8;
  --db-teal:#2dd4bf;
}

body.dbc-public-body{
  margin:0;
  min-height:100vh;
  color:var(--db-text);

  font-family:
    Inter,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;

  background:
    radial-gradient(
      circle at 82% 10%,
      rgba(56,189,248,.16),
      transparent 32%
    ),
    radial-gradient(
      circle at 12% 88%,
      rgba(45,212,191,.10),
      transparent 34%
    ),
    linear-gradient(
      145deg,
      #020817,
      #061426 54%,
      #07111f
    );
}

.dbc-public-topbar,
.dbc-public-main,
.dbc-public-footer{
  width:min(
    1180px,
    calc(100% - 32px)
  );

  margin-left:auto;
  margin-right:auto;
}

.dbc-public-topbar{
  margin-top:18px;
  min-height:68px;
  padding:10px 12px;

  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;

  border:
    1px solid
    var(--db-line);

  border-radius:24px;

  background:
    rgba(2,8,23,.74);

  backdrop-filter:
    blur(18px);
}

.dbc-public-brand{
  display:flex;
  align-items:center;
  gap:11px;

  color:white;
  text-decoration:none;
}

.dbc-public-brand>span:last-child{
  display:grid;
}

.dbc-public-brand small{
  color:var(--db-muted);
  font-size:10px;
}

.dbc-public-logo{
  width:42px;
  height:42px;

  display:grid;
  place-items:center;

  border-radius:15px;

  background:
    linear-gradient(
      135deg,
      #0284c7,
      #0f766e
    );

  font-weight:900;
}

.dbc-public-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.dbc-public-actions a,
.dbc-public-actions button{
  min-height:38px;
  padding:8px 13px;

  border:
    1px solid
    var(--db-line);

  border-radius:999px;

  background:
    rgba(255,255,255,.04);

  color:#dbeafe;
  text-decoration:none;

  cursor:pointer;

  font:inherit;
  font-size:11px;
  font-weight:800;
}

.dbc-public-main{
  padding:54px 0 72px;
}

.dbc-public-grid{
  display:grid;

  grid-template-columns:
    minmax(0,1.05fr)
    minmax(350px,.78fr);

  gap:18px;
}

.dbc-public-hero,
.dbc-public-card,
.dbc-error-card{
  border:
    1px solid
    var(--db-line);

  border-radius:30px;

  background:
    var(--db-panel);

  box-shadow:
    0 28px 90px
    rgba(0,0,0,.34);

  backdrop-filter:
    blur(18px);
}

.dbc-public-hero{
  padding:
    clamp(
      30px,
      5vw,
      56px
    );

  display:flex;
  flex-direction:column;
  justify-content:center;
}

.dbc-public-card{
  padding:25px;
}

.dbc-kicker{
  color:#67e8f9;

  font-size:11px;
  font-weight:900;

  letter-spacing:.8px;
  text-transform:uppercase;
}

.dbc-title{
  margin:12px 0;

  font-size:
    clamp(
      38px,
      6vw,
      68px
    );

  line-height:1.03;
}

.dbc-copy{
  color:#c3d2e5;
  line-height:1.9;
}

.dbc-features{
  display:grid;
  gap:9px;
  margin-top:22px;
}

.dbc-feature{
  padding:12px;

  border:
    1px solid
    rgba(148,163,184,.12);

  border-radius:16px;

  background:
    rgba(15,23,42,.46);

  color:#dbeafe;
}

.dbc-form{
  display:grid;
  gap:12px;
}

.dbc-grid2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.dbc-field{
  display:grid;
  gap:6px;
}

.dbc-field label{
  color:#dbeafe;
  font-size:12px;
  font-weight:800;
}

.dbc-field input,
.dbc-field select,
.dbc-field textarea{
  width:100%;
  min-height:48px;

  padding:11px 13px;

  border:
    1px solid
    rgba(148,163,184,.18);

  border-radius:15px;

  background:
    rgba(2,8,23,.50);

  color:white;

  outline:none;
  font:inherit;
}

.dbc-field textarea{
  min-height:92px;
  resize:vertical;
}

.dbc-submit{
  min-height:49px;

  border:0;
  border-radius:15px;

  background:
    linear-gradient(
      135deg,
      #0284c7,
      #0f766e
    );

  color:white;

  cursor:pointer;

  font:inherit;
  font-weight:900;
}

.dbc-notice{
  margin-bottom:14px;
  padding:13px 14px;

  border:
    1px solid
    var(--db-line);

  border-radius:17px;

  background:
    rgba(8,47,73,.28);

  line-height:1.75;
}

.dbc-notice.ok{
  border-color:
    rgba(45,212,191,.34);

  color:#ccfbf1;
}

.dbc-notice.warn{
  border-color:
    rgba(245,158,11,.35);

  color:#fde68a;
}

.dbc-notice.bad,
.dbc-notice.error{
  border-color:
    rgba(251,113,133,.35);

  color:#fecdd3;
}

.dbc-secondary{
  margin-top:15px;
  text-align:center;

  color:var(--db-muted);
  font-size:12px;
}

.dbc-secondary a{
  color:#67e8f9;
  font-weight:900;
  text-decoration:none;
}

.dbc-error-page{
  min-height:58vh;

  display:grid;
  place-items:center;
}

.dbc-error-card{
  width:min(
    760px,
    100%
  );

  padding:45px 28px;
  text-align:center;
}

.dbc-error-code{
  color:var(--db-cyan);

  font-size:
    clamp(
      70px,
      14vw,
      140px
    );

  line-height:.9;
  font-weight:900;
}

.dbc-error-actions{
  margin-top:20px;

  display:flex;
  justify-content:center;
  gap:9px;
}

.dbc-error-actions a{
  padding:10px 14px;

  border:
    1px solid
    var(--db-line);

  border-radius:999px;

  color:white;
  text-decoration:none;
}

.dbc-public-footer{
  margin-bottom:25px;

  display:flex;
  justify-content:space-between;
  gap:10px;

  color:#70849f;
  font-size:10px;
}

@media(max-width:850px){
  .dbc-public-grid,
  .dbc-grid2{
    grid-template-columns:1fr;
  }
}

@media(max-width:600px){
  .dbc-public-topbar{
    flex-direction:column;
    align-items:flex-start;
  }

  .dbc-public-main{
    padding-top:30px;
  }
}
