/* =======================================
   ETHIONURSE 2025 — Best of Best Edition
   Inspired by: Aurora Health Design, Apple VisionOS, and Calm UI
   ======================================= */
:root {
  --accent1: #22d3ee; /* cyan */
  --accent2: #f0abfc; /* pink */
  --accent3: #a7f3d0; /* mint */
  --ethio1: #00843D;
  --ethio2: #FFD100;
  --ethio3: #EF3340;
  --bg-dark: #060b18;
  --text-light: #f9fafb;
  --glass: rgba(255, 255, 255, 0.06);
  --shadow: 0 8px 30px rgba(0,0,0,.4);
  --radius: 20px;
}

/* --- Reset --- */
* { margin:0; padding:0; box-sizing:border-box; }
html,body {
  height:100%; font-family:"Inter","Noto Sans Ethiopic",system-ui;
  color:var(--text-light);
  background: linear-gradient(120deg,#020617,#0f172a,#1e3a8a,#312e81);
  background-size:400% 400%;
  animation:bgAurora 16s ease-in-out infinite alternate;
  overflow-x:hidden;
}

/* --- Aurora Animation --- */
@keyframes bgAurora {
  0% {background-position:0% 50%;}
  100% {background-position:100% 50%;}
}

/* --- Floating Ambient Particles --- */
body::before {
  content:"";
  position:fixed; inset:0;
  background:radial-gradient(circle at 10% 20%,rgba(34,211,238,.1),transparent 40%),
             radial-gradient(circle at 80% 80%,rgba(240,171,252,.1),transparent 40%);
  animation:floatParticles 14s ease-in-out infinite alternate;
  pointer-events:none; z-index:-1;
}
@keyframes floatParticles {
  0% {transform:translateY(0);}
  100% {transform:translateY(-20px);}
}

/* --- Containers --- */
.container {max-width:1100px;margin:0 auto;padding:2rem;position:relative;z-index:2;}
.header {
  display:flex;align-items:center;gap:14px;margin-top:10px;
}
.logo {
  width:64px;height:64px;border-radius:50%;
  background:linear-gradient(135deg,var(--accent1),var(--accent2));
  box-shadow:0 0 25px rgba(255,255,255,0.3);
  animation:pulseGlow 3s ease-in-out infinite;
}
@keyframes pulseGlow {
  0%,100%{filter:drop-shadow(0 0 5px var(--accent2));}
  50%{filter:drop-shadow(0 0 20px var(--accent1));}
}

h1 {
  font-size:2rem;
  background:linear-gradient(90deg,var(--ethio1),var(--ethio2),var(--ethio3));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  text-shadow:0 0 18px rgba(255,255,255,0.2);
}
h2 {font-size:1.3rem;margin-bottom:8px;}

/* --- Card Style --- */
.card {
  background:var(--glass);
  border:1px solid rgba(255,255,255,0.15);
  border-radius:var(--radius);
  padding:1.5rem;
  text-align: center;
  backdrop-filter:blur(12px) saturate(130%);
  box-shadow:var(--shadow);
  transition:transform .3s ease, box-shadow .3s ease, background .3s;
}
.card:hover {
  transform:translateY(-8px);
  background:rgba(255,255,255,0.1);
  box-shadow:0 14px 45px rgba(0,0,0,.5);
}

/* --- Grid Layout --- */
.grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;margin-top:22px;}

/* --- Buttons --- */
.btn {
  display:inline-block;
  padding:12px 20px;
  border-radius:999px;
  font-weight:700;
  letter-spacing:.3px;
  background:linear-gradient(90deg,var(--accent1),var(--accent2),var(--accent3));
  color:#03111e;
  border:none; cursor:pointer;
  transition: all .3s ease;
}
.btn:hover {
  transform:translateY(-2px);
  box-shadow:0 8px 25px rgba(240,171,252,.4);
}
.btn:active {transform:scale(.97);}

/* --- Footer --- */
footer {
  text-align:center;
  margin-top:2rem;
  font-size:.85rem;
  color:#cbd5e1;
  border-top:1px solid rgba(255,255,255,.1);
  padding-top:1rem;
  background:linear-gradient(90deg,var(--ethio1),var(--ethio2),var(--ethio3));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  animation:shine 10s linear infinite;
}
@keyframes shine {
  0%{background-position:0% 50%;}
  100%{background-position:100% 50%;}
}

/* --- Splash Intro (3D Heartbeat Effect) --- */
.splash {
  position:fixed;inset:0;display:flex;flex-direction:column;
  justify-content:center;align-items:center;z-index:9999;
  background:rgba(5,10,20,0.96);
  animation:fadeOut 3s ease 3s forwards;
}
.splash .spin {
  width:120px;height:120px;border-radius:50%;
  animation:spinLogo 5s linear infinite, heartbeat 2s ease-in-out infinite;
}
@keyframes spinLogo {100%{transform:rotate(360deg);}}
@keyframes heartbeat {
  0%,100%{transform:scale(1);}
  30%{transform:scale(1.15);}
  60%{transform:scale(1);}
}
@keyframes fadeOut {to{opacity:0;visibility:hidden;}}

/* --- Light (Professional) Mode --- */
.professional {
  background:#f4f8fb;
  color:#1e293b;
}
.professional .card {
  background:#fff;
  border-color:#e2e8f0;
  box-shadow:0 4px 16px rgba(0,0,0,0.08);
}
.professional h1 {
  -webkit-text-fill-color:#0f172a;
  background:none;
}
.professional .btn {
  background:linear-gradient(90deg,#2563eb,#9333ea);
  color:#fff;
}

/* --- Relax Mode (Study Page) --- */
.relax-mode {
  background:linear-gradient(180deg,#0f172a,#0c243f,#102a45);
  transition:background 3s ease;
}
.relax-mode .card {
  box-shadow:0 0 30px rgba(34,197,94,.3);
  border-color:rgba(34,197,94,.5);
  animation:calmGlow 6s ease-in-out infinite alternate;
}
@keyframes calmGlow {
  0%{box-shadow:0 0 10px rgba(34,197,94,.15);}
  100%{box-shadow:0 0 40px rgba(34,197,94,.4);}
}

/* --- Floating Ethio Ribbon --- */
body::after {
  content:"";
  position:fixed;top:0;left:0;width:100%;height:6px;
  background:linear-gradient(90deg,var(--ethio1),var(--ethio2),var(--ethio3));
  animation:moveRibbon 8s linear infinite;
}
@keyframes moveRibbon {
  0%{background-position:0%;}
  100%{background-position:100%;}
}

/* --- Footer small details --- */
.update-log,.contact-link {
  text-align:center;
  margin-top:6px;
  font-size:.75rem;
  color:#94a3b8;
}
.contact-link a {
  color:#f0abfc;
  text-decoration:none;
}
.contact-link a:hover {text-decoration:underline;}