
:root{
 --odysea-navy:#0A2D67;--odysea-navy2:#071F49;--odysea-indigo:#7B61FF;--odysea-blue:#2F9BFF;
 --odysea-teal:#14B8A6;--odysea-mint:#A7E3D0;--odysea-coral:#FF8A7A;--odysea-gold:#F4B640;
 --odysea-cloud:#F4F8FC;--odysea-white:#fff;--odysea-text:#10213A;--odysea-muted:#667085;
 --odysea-line:#D7E1ED;--odysea-gradient:linear-gradient(110deg,#7B61FF 0%,#2F9BFF 48%,#14B8A6 100%);
 --odysea-shadow:0 18px 55px rgba(10,45,103,.10);
}
html.odysea-brand-v1 body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
.odysea-brandbar{width:min(1180px,calc(100% - 34px));margin:18px auto 0;display:flex;align-items:center;gap:18px}
.odysea-brandbar img{width:225px;max-width:48vw;height:auto;display:block}
.odysea-brandbar .odysea-brandline{height:1px;flex:1;background:linear-gradient(90deg,rgba(10,45,103,.17),transparent)}
.odysea-staging-pill{font-size:12px;color:#64748B;border:1px solid #D8E2EE;background:rgba(255,255,255,.84);padding:7px 11px;border-radius:999px;white-space:nowrap}
.odysea-inline-logo{display:block;width:190px;height:auto}
.odysea-logo-mark{width:54px;height:54px;display:block}
html[data-odysea-path="/access"] body,
html[data-odysea-path="/login"] body,
html[data-odysea-path="/familias/alta"] body,
html[data-odysea-path="/familia"] body,
html[data-odysea-path="/alumnos/alta"] body,
html[data-odysea-path="/centros"] body,
html[data-odysea-path="/web-foundation"] body,
html[data-odysea-path="/brand-preview"] body{
 background:
  radial-gradient(circle at 8% 0%,rgba(47,155,255,.10),transparent 30%),
  radial-gradient(circle at 94% 10%,rgba(20,184,166,.10),transparent 28%),
  #F7FAFE!important;
 color:var(--odysea-text)!important
}

/* Public role gateway */
html[data-odysea-path="/access"] .odysea-r3-brandlock{width:230px;margin:0}
html[data-odysea-path="/access"] .hero h1{background:var(--odysea-gradient);-webkit-background-clip:text;background-clip:text;color:transparent!important;letter-spacing:-.025em}
html[data-odysea-path="/access"] .role{border:1px solid rgba(10,45,103,.08)!important;border-radius:20px!important;box-shadow:0 12px 34px rgba(10,45,103,.07)!important;transition:transform .18s ease,box-shadow .18s ease}
html[data-odysea-path="/access"] .role:hover{transform:translateY(-4px);box-shadow:0 20px 46px rgba(10,45,103,.12)!important}
html[data-odysea-path="/access"] .role:nth-of-type(1){border-top:4px solid #2F9BFF!important}
html[data-odysea-path="/access"] .role:nth-of-type(2){border-top:4px solid #14B8A6!important}
html[data-odysea-path="/access"] .role:nth-of-type(3){border-top:4px solid #7B61FF!important}

/* Unified login */
html[data-odysea-path="/login"] .odysea-brandbar{margin-top:22px}
html[data-odysea-path="/login"] .odysea-login-card{margin-top:9vh!important;margin-bottom:8vh!important;box-shadow:0 22px 64px rgba(10,45,103,.11)!important;border-radius:20px!important}
html[data-odysea-path="/login"] button[type=submit]{background:var(--odysea-gradient)!important;border:none!important;color:#fff!important;font-weight:800!important;border-radius:11px!important}

/* Forms */
html[data-odysea-path="/familias/alta"] input,
html[data-odysea-path="/alumnos/alta"] input,
html[data-odysea-path="/centros"] input,
html[data-odysea-path="/familias/alta"] select,
html[data-odysea-path="/alumnos/alta"] select,
html[data-odysea-path="/centros"] select{border-radius:11px!important;border-color:#C8D4E3!important}
html[data-odysea-path="/familias/alta"] input[type=checkbox],
html[data-odysea-path="/alumnos/alta"] input[type=checkbox]{accent-color:#14B8A6;width:17px;height:17px}
html[data-odysea-path="/familias/alta"] button{background:linear-gradient(110deg,#14B8A6,#168F78)!important;border-radius:11px!important}
html[data-odysea-path="/alumnos/alta"] button{background:linear-gradient(110deg,#2F9BFF,#5E6CE8)!important;border-radius:11px!important}
html[data-odysea-path="/centros"] button{background:linear-gradient(110deg,#7B61FF,#6B4EDD)!important;border-radius:11px!important}

/* Student immersive product: preserve dark experience */
html[data-odysea-path="/education-v2.html"] body{background:
 radial-gradient(circle at 85% -5%,rgba(47,155,255,.18),transparent 29%),
 radial-gradient(circle at 10% 12%,rgba(20,184,166,.08),transparent 22%),
 #061525!important}
html[data-odysea-path="/education-v2.html"] .odysea-r3-student-logo{width:155px;margin:4px 0 12px;filter:brightness(0) invert(1);opacity:.96}
html[data-odysea-path="/education-v2.html"] button:not(.danger){border-radius:12px!important}
html[data-odysea-path="/education-v2.html"] [class*="card"],
html[data-odysea-path="/education-v2.html"] [class*="panel"]{border-color:rgba(125,210,255,.13)!important}

/* Teacher workspace */
html[data-odysea-path="/tutor-workspace-2"] body{background:linear-gradient(180deg,#F9FBFE,#EEF5FC)!important}
html[data-odysea-path="/tutor-workspace-2"] .odysea-r3-teacher-logo{width:210px;margin:0 0 2px}
html[data-odysea-path="/tutor-workspace-2"] .card{border-radius:17px!important;border-color:rgba(10,45,103,.08)!important;box-shadow:0 10px 32px rgba(10,45,103,.065)!important}
html[data-odysea-path="/tutor-workspace-2"] button,
html[data-odysea-path="/tutor-workspace-2"] a[class*="btn"]{border-radius:10px!important}
html[data-odysea-path="/tutor-workspace-2"] nav a.active,
html[data-odysea-path="/tutor-workspace-2"] [aria-current="page"]{background:var(--odysea-gradient)!important;color:#fff!important}

/* Website foundation */
.odysea-web{min-height:100vh;background:#fff;color:var(--odysea-text)}
.odysea-web .nav{width:min(1180px,calc(100% - 32px));margin:auto;padding:24px 0;display:flex;align-items:center;gap:30px}
.odysea-web .nav img{width:220px}.odysea-web .nav .links{display:flex;gap:26px;margin-left:auto}.odysea-web .nav a{text-decoration:none;color:#21334F;font-weight:750}
.odysea-web .hero{width:min(1180px,calc(100% - 32px));margin:32px auto 0;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding:48px 0 78px}
.odysea-web .eyebrow{font-weight:850;color:#7B61FF;letter-spacing:.06em;font-size:13px;margin-bottom:16px}
.odysea-web .hero h1{font-size:68px;line-height:.98;margin:0 0 22px;letter-spacing:-.045em;color:#0B2348}
.odysea-web .hero h1 span{background:var(--odysea-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}
.odysea-web .hero p{font-size:19px;line-height:1.7;color:#5E6C82;max-width:640px}
.odysea-web .cta{display:flex;gap:12px;margin-top:28px}.odysea-web .cta a{padding:14px 19px;border-radius:12px;text-decoration:none;font-weight:850}
.odysea-web .cta .primary{color:#fff;background:#0A2D67;box-shadow:0 12px 26px rgba(10,45,103,.18)}.odysea-web .cta .secondary{color:#0A2D67;border:1px solid #C9D6E5;background:#fff}
.odysea-web .orbit{min-height:455px;border-radius:32px;background:
 radial-gradient(circle at 73% 22%,rgba(244,182,64,.22),transparent 16%),
 radial-gradient(circle at 55% 55%,rgba(20,184,166,.14),transparent 24%),
 radial-gradient(circle at 36% 48%,rgba(123,97,255,.18),transparent 31%),
 linear-gradient(145deg,#F5FAFF,#EDF9F6);display:grid;place-items:center;box-shadow:0 22px 65px rgba(10,45,103,.10)}
.odysea-web .orbit img{width:min(360px,74%);filter:drop-shadow(0 24px 34px rgba(10,45,103,.14))}
.odysea-web .audiences{width:min(1180px,calc(100% - 32px));margin:auto;padding:66px 0 100px}.odysea-web .audiences h2{font-size:38px;letter-spacing:-.025em;margin-bottom:26px}.odysea-web .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.odysea-web .tile{border:1px solid #E0E8F1;border-radius:21px;padding:28px;box-shadow:0 12px 36px rgba(10,45,103,.055);background:#fff}
.odysea-web .tile:nth-child(1){border-top:4px solid #2F9BFF}.odysea-web .tile:nth-child(2){border-top:4px solid #14B8A6}.odysea-web .tile:nth-child(3){border-top:4px solid #7B61FF}
.odysea-web .tile h3{font-size:23px;margin:0 0 10px}.odysea-web .tile p{color:#667085;line-height:1.6}
@media(max-width:820px){.odysea-brandbar{width:min(100% - 22px,1180px)}.odysea-web .hero{grid-template-columns:1fr}.odysea-web .hero h1{font-size:46px}.odysea-web .grid{grid-template-columns:1fr}.odysea-web .nav .links{display:none}.odysea-staging-pill{display:none}}
