
:root{
  --bg:#07101f;
  --bg2:#0a182b;
  --panel:rgba(9,24,43,.88);
  --panel2:rgba(11,28,49,.96);
  --text:#f2f6fa;
  --muted:#96a7ba;
  --line:rgba(151,184,214,.15);
  --cyan:#6bc5ef;
  --cyan2:#3d98c9;
  --green:#74d6a3;
  --red:#ee9aa6;
  --radius:18px;
  --shadow:0 30px 100px rgba(0,0,0,.36);
  --max:1180px;
}
*{box-sizing:border-box}
html{color-scheme:dark;scroll-behavior:smooth}
body{
  margin:0;min-height:100vh;color:var(--text);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 22% 12%,rgba(72,87,175,.16),transparent 31%),
    radial-gradient(circle at 82% 28%,rgba(24,121,164,.10),transparent 31%),
    linear-gradient(135deg,#080d1a,#091529 48%,#071827);
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;opacity:.14;
  background-image:
    radial-gradient(circle,rgba(255,255,255,.60) 0 1px,transparent 1.2px),
    radial-gradient(circle,rgba(255,255,255,.22) 0 1px,transparent 1.1px);
  background-size:138px 138px,205px 205px;background-position:0 0,62px 48px;
  mask-image:linear-gradient(to bottom,#000,transparent 88%);
}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.topbar{
  position:sticky;top:0;z-index:50;min-height:72px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:0 clamp(18px,4vw,58px);
  border-bottom:1px solid rgba(255,255,255,.055);
  background:rgba(7,15,29,.84);backdrop-filter:blur(18px);
}
.brand{display:flex;align-items:center;gap:12px;font-size:.85rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.brand:before {
  content: "";
  display: block;
  width: 36px;
  height: 36px;
  flex: 0 0 auto;
  background: url("assets/Cavorion_logo.png") center / contain no-repeat;
  filter: drop-shadow(0 0 10px rgba(82, 177, 238, 0.2));
}
.nav{display:flex;align-items:center;gap:24px}
.nav a,.link-button{color:#a6b3c4;font-size:.78rem;background:none;border:0;padding:0;cursor:pointer}
.nav a:hover,.link-button:hover{color:#fff}
.shell{max-width:var(--max);margin:0 auto;padding:0 18px}
.panel{
  border:1px solid var(--line);border-radius:var(--radius);
  background:linear-gradient(145deg,rgba(255,255,255,.028),transparent 34%),var(--panel);
  box-shadow:var(--shadow);backdrop-filter:blur(17px);
}
.eyebrow{color:#90a4b9;font-size:.68rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}
.muted{color:var(--muted);line-height:1.7}
.field{margin-bottom:17px}
.field label{display:block;margin-bottom:8px;color:#c6d0dc;font-size:.78rem;font-weight:500}
.input,.textarea{
  width:100%;border:1px solid rgba(152,181,213,.16);border-radius:12px;
  color:var(--text);background:rgba(4,11,22,.58);outline:none;padding:14px 15px;
}
.input{height:50px}.textarea{min-height:96px;resize:vertical;line-height:1.55}
.input:focus,.textarea:focus{border-color:rgba(106,191,239,.55);box-shadow:0 0 0 4px rgba(70,155,211,.08)}
.btn{
  min-height:49px;border-radius:13px;padding:0 20px;border:1px solid transparent;
  display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-weight:650;
}
.btn.primary{background:rgba(105,190,235,.16);border-color:rgba(126,206,249,.42);color:#eef9ff}
.btn.primary:hover{background:rgba(105,190,235,.24)}
.btn.secondary{background:rgba(255,255,255,.025);border-color:var(--line);color:#c7d1dd}
.btn:disabled{opacity:.55;cursor:not-allowed}
.error{color:var(--red);font-size:.82rem;line-height:1.5}.success{color:var(--green)}
.notice{padding:14px 15px;border:1px solid rgba(107,197,239,.15);border-radius:12px;background:rgba(107,197,239,.04);color:#b8ccda;font-size:.8rem;line-height:1.55}
.app-icon{width:86px;height:86px;border-radius:22px;box-shadow:0 20px 60px rgba(0,0,0,.35)}
@media(max-width:720px){
  .topbar{min-height:64px}.nav{gap:14px}.nav .hide-mobile{display:none}
}
