/* EDUCypher v2 — extensiones aisladas para preservar el diseño original */
:root{--red:var(--custom-accent,#ff625d)}
html[data-theme="light"]{--bg:#f3f6fc;--surface:#ffffff;--surface2:#eaf0fa;--line:#1b2c4626;--muted:#495a72;--text:#12233b;--blue:#235fb3;color-scheme:light}
html[data-theme="dark"]{color-scheme:dark}
html[data-background="plain"] body{background:var(--bg)!important}
html[data-background="gradient"] body{background:linear-gradient(150deg,var(--bg),var(--surface2)) fixed!important}
html[data-background="grid"] body{background-color:var(--bg)!important;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px)!important;background-size:38px 38px!important}
html[data-theme="light"] .navbar.scrolled{background:#f8fbffee}
html[data-theme="light"] .navbar nav a,html[data-theme="light"] .navbar nav a.active,html[data-theme="light"] .brand{color:#182c46}
html[data-theme="light"] .brand span{color:var(--red)}
html[data-theme="light"] .project-card,html[data-theme="light"] .bento-block,html[data-theme="light"] .panel,html[data-theme="light"] .credential,html[data-theme="light"] .event-card{border-color:var(--line);background:var(--surface)}
html[data-theme="light"] .btn.glass,html[data-theme="light"] .btn.subtle{color:var(--text);background:#eaf0f9;border-color:#263e5d26}
html[data-theme="light"] .status-pill{color:#15283d}
html[data-theme="light"] input,html[data-theme="light"] textarea,html[data-theme="light"] select{color:var(--text);background:#fff;border-color:#a7b6c8}
html[data-theme="light"] .hero-glow{opacity:.14}
.theme-toggle{white-space:nowrap;min-width:44px}
.project-preview video,.project-preview img{width:100%;height:100%;object-fit:cover}
.project-header{position:relative;max-width:1560px;margin:auto;display:flex;align-items:center;gap:22px;justify-content:space-between;padding:24px clamp(18px,5vw,78px);border-bottom:1px solid var(--line)}
.project-header>span{color:var(--muted);font:12px ui-monospace,monospace;letter-spacing:.11em}
.project-header .brand{color:var(--text)}
.project-layout{width:min(1560px,100%);margin:auto;padding:clamp(20px,5vw,78px)}
.project-breadcrumb{color:var(--muted);font-size:13px;margin-bottom:35px;overflow-wrap:anywhere}
.project-breadcrumb a:hover,.sidebar-anchor:hover{color:var(--red)}
.project-hero{position:relative;padding:32px 0 64px;border-bottom:1px solid var(--line)}
.project-hero h1{font-size:clamp(45px,7vw,112px);max-width:1100px;overflow-wrap:anywhere;margin:0 0 24px}
.project-intro{font-size:clamp(17px,2vw,23px);max-width:780px;line-height:1.5}
.project-hero-media{border:1px solid var(--line);border-radius:28px;overflow:hidden;max-height:640px;margin:32px 0;background:var(--surface);box-shadow:0 18px 75px #0002}
.project-hero-media img,.project-hero-media video{display:block;width:100%;max-height:640px;object-fit:contain}
.project-hero .chips{margin-bottom:28px}
.project-columns{display:grid;grid-template-columns:minmax(230px,310px) minmax(0,1fr);gap:clamp(25px,5vw,88px);align-items:start;padding-top:65px}
.project-sidebar{position:sticky;top:18px;max-height:92vh;overflow:auto;padding:20px 0 32px;border-right:1px solid var(--line)}
.project-sidebar h2{font-size:20px;margin-bottom:28px}
.version-link{display:flex;flex-wrap:wrap;align-items:center;gap:7px;line-height:1.4;margin:5px 15px 5px calc(3px + var(--depth,0)*14px);border:1px solid transparent;border-radius:13px;padding:12px 11px;color:var(--text);transition:background .15s,border .15s}
.version-link:hover,.version-link.chosen{border-color:var(--line);background:var(--surface2)}
.version-link.chosen{border-left:3px solid var(--red)}
.version-link small{color:var(--muted);display:block;width:100%;font-size:11px}
.version-link em{font:10px ui-monospace,monospace;color:var(--red);font-style:normal}
.sidebar-anchor{display:block;margin:24px 0;color:var(--muted);font-size:13px}
.project-content{min-width:0}.project-section{padding:0 0 65px;margin-bottom:65px;border-bottom:1px solid var(--line)}
.project-section h2{font-size:clamp(28px,3vw,46px)}.project-section h3{font-size:22px}.project-section .detail-body-text{white-space:normal;line-height:1.8;overflow-wrap:anywhere;color:var(--text)}.project-meta{margin-top:24px}
.library-tabs{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:25px 0 43px}
.library-filter{border:1px solid var(--line);border-radius:100px;padding:10px 17px;background:var(--surface);color:var(--text);font-size:13px}
.library-filter span{font-size:11px;color:var(--muted);margin-left:5px}
.library-filter:hover,.library-filter.active{background:var(--red);color:#fff;border-color:transparent}.library-filter.active span{color:#fff}
.library-group{margin:35px 0 60px}.library-group[hidden]{display:none}.library-group h3{margin-bottom:18px}.library-group h3 small{color:var(--muted);font-size:14px}
.resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:18px}
.resource-card{padding:21px;border:1px solid var(--line);background:var(--surface);border-radius:19px;min-width:0;display:flex;flex-direction:column;gap:15px;box-shadow:0 6px 20px #00000009}
.resource-head{display:flex;flex-direction:column;gap:4px;overflow-wrap:anywhere}.resource-head small{color:var(--muted)}
.resource-card>img,.resource-card>video,.resource-card>audio,.resource-card>iframe{display:block;width:100%;max-height:380px;border:0;border-radius:12px;object-fit:contain;background:#0002}.resource-card>iframe{min-height:290px}.resource-card .btn{align-self:start}
.external-box{position:relative;min-height:160px;display:grid;place-content:center;gap:10px;background:var(--surface2);border:1px solid var(--line);border-radius:13px;overflow:hidden;text-align:center}
.external-box img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}
.external-box:has(img) button{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#090f1de9;color:#fff}
.external-symbol{font-size:38px;color:var(--red)}.external-box iframe{width:100%;aspect-ratio:16/9;border:0}
.project-footer{padding:35px clamp(18px,5vw,78px);max-width:1560px;margin:auto;display:flex;justify-content:space-between;border-top:1px solid var(--line);color:var(--muted)}
.project-footer a:hover{color:var(--red)}
.version-list,.collection-list{margin:24px 0;display:grid;gap:8px}
.version-row{padding:12px 15px 12px calc(14px + var(--depth,0)*21px);border-left:3px solid var(--red);border-radius:12px;background:var(--surface2);display:flex;gap:14px;align-items:center;flex-wrap:wrap;overflow-wrap:anywhere}
.version-row .actions{margin-left:auto}.version-row .btn{padding:8px 11px}
.sub-panel{padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--surface2);margin:20px 0}.sub-panel .form-grid{margin-bottom:22px}
#project-versions,#project-collections{scroll-margin-top:25px}
#ai-panel{width:min(390px,calc(100vw - 26px));max-height:min(680px,80vh);overflow:auto;padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:0 16px 75px #0005}
.ai-widget{position:fixed;z-index:42;bottom:18px;right:18px;display:grid;justify-items:end;gap:10px}
#ai-messages{max-height:240px;overflow:auto}#ai-form{display:flex;gap:8px}#ai-form input{min-width:0;flex:1}#ai-panel small{color:var(--muted)}
@media(max-width:850px){.project-columns{display:block;padding-top:35px}.project-sidebar{position:static;max-height:none;border:0;border-bottom:1px solid var(--line);margin-bottom:45px}.project-header>span{display:none}.project-header .actions{gap:6px}.project-header .btn{padding:10px}.project-layout{padding:21px}.project-hero{padding-top:12px}.project-hero-media{border-radius:15px}}
@media(prefers-reduced-motion:reduce){.project-preview video,.project-hero-media video{visibility:hidden}.project-hero-media video[poster]{visibility:visible}}


/* EDUCypher v3: additional visual environments */
html[data-background="kali"] body{background-color:#070b0a!important;background-image:radial-gradient(circle at 78% 8%,#00ff7b12,transparent 28%),linear-gradient(#00ff6a09 1px,transparent 1px),linear-gradient(90deg,#00ff6a09 1px,transparent 1px)!important;background-size:auto,42px 42px,42px 42px!important}
html[data-background="matrix"] body{background-color:#050807!important;background-image:linear-gradient(180deg,#07120aee,#030604f5),repeating-linear-gradient(90deg,transparent 0 32px,#44ff6f08 33px 34px)!important}
html[data-background="blueprint"] body{background-color:#071426!important;background-image:linear-gradient(#67b7ff13 1px,transparent 1px),linear-gradient(90deg,#67b7ff13 1px,transparent 1px),linear-gradient(#67b7ff09 1px,transparent 1px),linear-gradient(90deg,#67b7ff09 1px,transparent 1px)!important;background-size:80px 80px,80px 80px,16px 16px,16px 16px!important}
html[data-background="stars"] body{background-color:#070b17!important;background-image:radial-gradient(circle at 15% 20%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 70% 35%,#a7c6ee 0 1px,transparent 1.5px),radial-gradient(circle at 45% 80%,#fff 0 1px,transparent 1.5px),radial-gradient(ellipse at 80% 10%,#284d8544,transparent 40%)!important;background-size:180px 180px,230px 230px,310px 310px,auto!important}
html[data-background="circuit"] body{background-color:#090d18!important;background-image:linear-gradient(90deg,transparent 48%,#8eb8ef10 49% 51%,transparent 52%),linear-gradient(transparent 48%,#8eb8ef10 49% 51%,transparent 52%),radial-gradient(circle,#ff625d22 0 2px,transparent 3px)!important;background-size:72px 72px,72px 72px,144px 144px!important}
html[data-background="noise"] body{background-color:#0a101c!important;background-image:radial-gradient(circle at 20% 10%,#ffffff0b 0 1px,transparent 1.2px),radial-gradient(circle at 80% 70%,#ff625d09 0 1px,transparent 1.2px),linear-gradient(140deg,#111a28,#080d16)!important;background-size:7px 7px,11px 11px,auto!important}
.learn-nav-link{color:#d5e6ff!important}.learn-nav-link:before{content:'+';margin-right:5px;color:var(--red)}
.home-learning{position:relative}.home-learning:before{content:'LEARN';position:absolute;right:5%;top:52px;font:clamp(70px,13vw,190px)/1 var(--display);letter-spacing:-.07em;color:#ffffff03;pointer-events:none}.home-learning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.home-learning-card{border:1px solid var(--line);border-radius:22px;overflow:hidden;background:linear-gradient(145deg,#151f30d9,#0d1625d9);transition:transform .25s,border-color .25s,box-shadow .25s}.home-learning-card:hover{transform:translateY(-5px);border-color:#a7c6ee45;box-shadow:0 24px 60px #0005}.home-learning-card>a{display:block;height:100%}.home-learning-card>a>div:last-child{padding:22px}.home-learning-card h3{font-size:23px}.home-learning-card p:not(.eyebrow){font-size:14px;min-height:64px}.home-learning-card b{font-size:13px;color:var(--blue)}.home-learning-cover{height:190px;display:grid;place-items:center;background:radial-gradient(circle at 75% 20%,#4c6e9a66,transparent 35%),linear-gradient(135deg,#0c1628,#141e31);overflow:hidden}.home-learning-cover img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.home-learning-card:hover .home-learning-cover img{transform:scale(1.035)}.home-learning-cover span{font:12px ui-monospace,monospace;letter-spacing:.16em;color:#b7c9df}.home-learning-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px;padding:20px 0;border-top:1px solid var(--line)}.home-learning-cta>span{font:12px ui-monospace,monospace;color:var(--muted)}.home-learning-empty{border:1px dashed var(--line);border-radius:18px;padding:26px}.consent-panel{transition:max-width .25s,padding .25s,opacity .25s}.consent-panel.compact{padding:11px 14px;max-width:300px;opacity:.94}.consent-panel.compact p{display:none}.consent-panel.compact .actions{margin-top:7px}.consent-panel.compact .btn{padding:8px 11px;min-height:36px;font-size:11px}.consent-panel.compact b{font-size:12px}
@media(max-width:900px){.home-learning-grid{grid-template-columns:1fr 1fr}.home-learning-card:last-child{display:none}.home-learning-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.home-learning-grid{grid-template-columns:1fr}.home-learning-card:last-child{display:block}.home-learning-card p:not(.eyebrow){min-height:0}.home-learning-cover{height:180px}}
/* v3 extra background presets */
html[data-background="neon"] body{background-color:#060611!important;background-image:radial-gradient(circle at 18% 18%,#00eaff26,transparent 32%),radial-gradient(circle at 82% 22%,#ff2fd626,transparent 34%),linear-gradient(135deg,#060611,#0c0b19 50%,#070911)!important;background-attachment:fixed!important}
html[data-background="ember"] body{background-color:#0c0707!important;background-image:radial-gradient(circle at 75% 8%,#ff5c2527,transparent 30%),radial-gradient(circle at 16% 72%,#ff1f4320,transparent 34%),linear-gradient(145deg,#100707,#08090e)!important;background-attachment:fixed!important}
html[data-background="ice"] body{background-color:#07111d!important;background-image:radial-gradient(circle at 15% 10%,#bce7ff20,transparent 30%),radial-gradient(circle at 85% 65%,#4ca6ff1c,transparent 38%),linear-gradient(150deg,#081522,#07101b)!important;background-attachment:fixed!important}
html[data-background="obsidian"] body{background-color:#06080c!important;background-image:linear-gradient(135deg,#ffffff05 25%,transparent 25%),linear-gradient(225deg,#ffffff04 25%,transparent 25%),linear-gradient(45deg,#ffffff03 25%,transparent 25%),linear-gradient(315deg,#ffffff03 25%,#06080c 25%)!important;background-position:28px 0,28px 0,0 0,0 0!important;background-size:56px 56px!important}
html[data-background="crt"] body{background-color:#030805!important;background-image:repeating-linear-gradient(0deg,#00ff6610 0 1px,transparent 1px 4px),radial-gradient(circle at 50% 10%,#00ff6a12,transparent 48%),linear-gradient(90deg,#041008,#020504)!important;background-attachment:fixed!important}
html[data-background="violet"] body{background-color:#0a0713!important;background-image:linear-gradient(#a874ff10 1px,transparent 1px),linear-gradient(90deg,#a874ff10 1px,transparent 1px),radial-gradient(circle at 72% 14%,#865cff27,transparent 34%)!important;background-size:44px 44px,44px 44px,auto!important}
