
:root {
  --bg: #05030a;
  --bg-alt: #0e0616;
  --card-bg: rgba(10, 0, 20, 0.95);
  --pink: #ff2e88;
  --pink-soft: #ff71b3;
  --text: #fdf4ff;
  --muted: #c4a4d0;
  --radius-lg: 20px;
  --radius-pill: 999px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
  min-height: 100vh;
  font-family: "Poppins", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(circle at top left, #3b0031 0, #05030a 50%),
    radial-gradient(circle at bottom right, #210018 0, #05030a 50%);
  color: var(--text);
  display: flex;
  flex-direction: column;
}

/* header */
.gc-header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:14px 32px;
  background:linear-gradient(90deg,#090011,#160016);
  border-bottom:1px solid rgba(255,113,179,0.35);
  box-shadow:0 12px 25px rgba(0,0,0,0.7);
}
.gc-logo { font-weight:700;font-size:1.1rem;letter-spacing:0.1em;text-transform:uppercase; }
.gc-logo span{ color:var(--pink);}
.gc-nav a{
  color:var(--muted);
  text-decoration:none;
  margin-left:18px;
  font-size:.9rem;
  position:relative;
}
.gc-nav a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-3px;
  width:0;
  height:2px;
  background:linear-gradient(90deg,var(--pink),var(--pink-soft));
  transition:width .18s ease-out;
}
.gc-nav a:hover{color:var(--text);}
.gc-nav a:hover::after{width:100%;}

/* layout */
.gc-main{
  flex:1;
  max-width:960px;
  width:100%;
  margin:0 auto;
  padding:32px 16px 48px;
}

.gc-footer{
  padding:12px 16px 18px;
  text-align:center;
  font-size:.78rem;
  color:var(--muted);
  border-top:1px solid rgba(255,113,179,0.2);
  background:#06000a;
}

/* hero */
.hero{
  display:grid;
  grid-template-columns:minmax(0,2fr) minmax(0,1.4fr);
  gap:24px;
  align-items:center;
}
.hero-text h1{font-size:2.2rem;margin-bottom:10px;}
.hero-text p{color:var(--muted);margin-bottom:18px;line-height:1.6;}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;}

.hero-card{
  background:var(--card-bg);
  border-radius:var(--radius-lg);
  padding:20px 22px;
  border:1px solid rgba(255,113,179,0.4);
  box-shadow:0 24px 45px rgba(0,0,0,0.9);
}
.hero-card h2{margin-bottom:8px;}
.hero-card ul{list-style:none;}
.hero-card li{margin-bottom:6px;color:var(--muted);}

/* cards + forms */
.card{
  background:var(--card-bg);
  border-radius:var(--radius-lg);
  padding:24px 22px 26px;
  border:1px solid rgba(255,113,179,0.4);
  box-shadow:0 24px 45px rgba(0,0,0,0.9);
}
.card h1{font-size:1.7rem;margin-bottom:8px;}
.card p{color:var(--muted);margin-bottom:10px;line-height:1.6;}

.form-grid{
  display:grid;
  gap:14px;
  margin:14px 0 6px;
}
.field{display:flex;flex-direction:column;gap:6px;}
.field label{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);}
.field input{
  padding:8px 10px;
  border-radius:var(--radius-pill);
  border:1px solid rgba(255,113,179,0.5);
  background:#05000b;
  color:var(--text);
}
.field input:focus{
  outline:none;
  border-color:var(--pink-soft);
  box-shadow:0 0 0 1px rgba(255,46,136,0.7);
}

/* auth */
.auth-page{max-width:420px;margin:0 auto;}
.auth-card{
  background:var(--card-bg);
  border-radius:var(--radius-lg);
  padding:24px 22px 26px;
  border:1px solid rgba(255,113,179,0.4);
  box-shadow:0 24px 45px rgba(0,0,0,0.9);
}
.auth-heading h1{font-size:1.7rem;margin-bottom:4px;}
.auth-heading p{font-size:.9rem;color:var(--muted);margin-bottom:16px;}
.auth-form{display:grid;gap:14px;}
.field-input{
  display:flex;
  align-items:center;
  background:#05000b;
  border-radius:var(--radius-pill);
  border:1px solid rgba(255,113,179,0.5);
  padding:6px 10px;
}
.field-input input{
  background:transparent;
  border:none;
  outline:none;
  color:var(--text);
  flex:1;
}
.field-input .icon{margin-right:8px;}
.error{
  background:rgba(255,0,76,0.2);
  border-radius:var(--radius-pill);
  padding:6px 10px;
  color:#ffbfd1;
  font-size:.8rem;
  margin-bottom:8px;
}

/* buttons */
.btn-primary{
  display:inline-block;
  border:none;
  border-radius:var(--radius-pill);
  padding:9px 16px;
  font-size:.95rem;
  font-weight:600;
  color:#1a0015;
  background:linear-gradient(120deg,var(--pink),var(--pink-soft));
  cursor:pointer;
  box-shadow:0 0 24px rgba(255,46,136,0.7);
  text-decoration:none;
}
.btn-secondary{
  display:inline-block;
  border-radius:var(--radius-pill);
  padding:9px 16px;
  font-size:.9rem;
  border:1px solid rgba(255,113,179,0.6);
  color:var(--pink-soft);
  text-decoration:none;
}

/* tables */
.table{
  width:100%;
  border-collapse:collapse;
  margin-top:10px;
}
.table th,.table td{
  padding:6px 8px;
  font-size:.85rem;
  border-bottom:1px solid rgba(255,113,179,0.25);
}
.table th{text-align:left;color:var(--muted);}

/* result */
.result{margin-top:16px;padding-top:10px;border-top:1px solid rgba(255,113,179,0.3);}
.phase-tag{
  display:inline-block;
  margin:6px 0 10px;
  padding:4px 10px;
  border-radius:var(--radius-pill);
  border:1px solid rgba(255,113,179,0.7);
  font-size:.8rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.result ul{margin-left:18px;}
.result li{margin-bottom:4px;}
.note{font-size:.8rem;color:var(--muted);margin-top:6px;}
.mt{margin-top:16px;}

/* responsive */
@media (max-width:720px){
  .gc-header{flex-direction:column;align-items:flex-start;gap:6px;padding:10px 16px;}
  .hero{grid-template-columns:1fr;}
}
