@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root {--ink:#031820;--deep:#061f2b;--deep2:#082f3b;--aqua:#20dec7;--sky:#2dbcf1;--gold:#ffe664;--line:rgba(183,241,240,.14);--white:#f8fdff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#04141b;color:#f3fbff;font-family:'DM Sans',sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}[hidden]{display:none!important}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.page{min-height:100vh;overflow:hidden;position:relative;background:radial-gradient(circle at 83% 15%,rgba(2,116,143,.21),transparent 34%),radial-gradient(circle at 7% 58%,rgba(13,78,101,.24),transparent 34%),#04151d}
.page:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(50,192,202,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(50,192,202,.045) 1px,transparent 1px);background-size:74px 74px;mask-image:linear-gradient(to bottom,black,transparent 82%)}
.container{width:min(1160px,calc(100% - 72px));margin:auto;position:relative}
.header{height:88px;display:flex;align-items:center;border-bottom:1px solid rgba(198,244,245,.1);position:relative;z-index:4;background:rgba(2,14,20,.45);backdrop-filter:blur(22px)}
.header-in{display:flex;justify-content:space-between;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:13px;min-width:0}.brand-mark{width:43px;height:43px;border:1px solid rgba(45,222,209,.45);border-radius:13px;background:linear-gradient(140deg,#123845,#031e2a);color:#21dfcf;display:grid;place-items:center;box-shadow:0 0 25px rgba(23,224,193,.08)}
.brand-text strong{display:block;font-family:Manrope,sans-serif;font-size:15px;letter-spacing:.085em;font-weight:800}.brand-text small{display:block;font-size:9px;font-weight:700;letter-spacing:.25em;color:#8db1bd;margin-top:3px;text-transform:uppercase}
.nav{display:flex;align-items:center;gap:36px;font-size:12px;font-weight:700;color:#b4ccd3;letter-spacing:.05em}.nav a:hover{color:#fff}
.header-pill,.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--aqua);font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.header-pill{padding:11px 14px;border:1px solid rgba(34,222,200,.22);border-radius:999px;background:rgba(8,70,74,.2)}.dot{width:7px;height:7px;background:#14dbbf;border-radius:50%;box-shadow:0 0 14px #0affcd}
.hero{padding:76px 0 100px;display:grid;grid-template-columns:1.13fr .87fr;align-items:center;gap:65px;position:relative;z-index:2;min-height:660px}
.hero-copy{position:relative;z-index:2}.kicker{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:800;color:var(--aqua);margin-bottom:31px}.kicker i{display:block;width:33px;height:1px;background:var(--aqua)}
.hero h1{font-family:Manrope,sans-serif;font-weight:800;font-size:clamp(38px,4.7vw,64px);line-height:1.09;letter-spacing:-.065em;margin:0;color:#fff;max-width:670px}.hero h1 .grad{display:block;background:linear-gradient(95deg,#20e4c9 0%,#27baf3 83%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero h1 .small-line{display:block;font-size:.49em;letter-spacing:.1em;font-weight:700;text-transform:uppercase;color:#e7f7fa;margin-top:15px;line-height:1.3}
.hero-copy>p{font-size:16px;color:#a8c3cc;line-height:1.9;max-width:510px;margin:29px 0 33px}.hero-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:12px;padding:17px 24px;border-radius:12px;border:1px solid rgba(255,255,255,.16);font-size:13px;font-weight:800;cursor:pointer;transition:transform .18s,background .2s;min-height:51px}
.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--gold);color:#08212c;border-color:var(--gold);box-shadow:0 12px 40px rgba(255,230,89,.13)}.btn-outline{background:rgba(11,55,69,.46);color:#ecf9fa}.btn-outline:hover{background:rgba(20,81,92,.6)}.btn svg{width:18px;height:18px}
.hero-tiny{color:#83a0ad;font-size:11px;letter-spacing:.02em;margin-top:18px}.hero-tiny span{color:var(--aqua)}
.visual{position:relative;height:460px;display:grid;place-items:center}.visual::before{content:"";position:absolute;width:410px;height:410px;border-radius:50%;background:radial-gradient(circle,rgba(19,206,218,.18),rgba(12,59,101,.13) 42%,transparent 73%);filter:blur(12px)}
.neuro-art{width:min(100%,480px);filter:drop-shadow(0 12px 48px rgba(15,175,224,.15));opacity:.96;animation:breathe 6s ease-in-out infinite alternate}
@keyframes breathe{from{transform:scale(.99)}to{transform:scale(1.03)}}
.float-label{position:absolute;z-index:2;padding:12px 15px;background:rgba(9,45,60,.87);backdrop-filter:blur(12px);border:1px solid rgba(88,223,228,.24);border-radius:12px;display:flex;align-items:center;gap:10px;color:#ddf1f3;font-size:11px;font-weight:700;box-shadow:0 10px 32px rgba(0,0,0,.17)}.float-label svg{color:#19e3cd;width:18px;height:18px}.fl1{top:20px;right:-12px}.fl2{left:-22px;bottom:45px}
.feature-strip{border:1px solid rgba(70,194,204,.2);background:linear-gradient(105deg,rgba(8,43,55,.92),rgba(8,33,45,.92));border-radius:20px;display:grid;grid-template-columns:repeat(3,1fr);margin-top:-45px;position:relative;z-index:4;box-shadow:0 18px 55px rgba(0,0,0,.12)}.feature{display:flex;align-items:center;gap:17px;padding:26px 29px;min-width:0}.feature+.feature{border-left:1px solid rgba(70,194,204,.19)}.feature .fi{color:#1ed7c5;background:#0f4148;border-radius:12px;min-width:42px;height:42px;display:grid;place-items:center}.feature svg{width:20px;height:20px}.feature strong{display:block;color:#f6fcff;font-size:13px;letter-spacing:-.01em}.feature small{display:block;margin-top:6px;color:#8cabb7;font-size:11px;line-height:1.5}
.section{padding:94px 0 105px}.section-heading{text-align:center;max-width:665px;margin:0 auto 36px}.section-heading .eyebrow{justify-content:center}.section-heading h2{font-family:Manrope,sans-serif;font-size:clamp(24px,3vw,36px);letter-spacing:-.052em;margin:13px 0;color:#f3fafc}.section-heading p{font-size:14px;line-height:1.8;color:#a2bdc6;margin:0}
.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.preview-card{border:1px solid rgba(93,208,215,.2);border-radius:20px;padding:27px;background:linear-gradient(145deg,rgba(12,50,62,.8),rgba(4,31,42,.9));min-height:208px}.preview-card .tile-icon{height:43px;width:43px;display:grid;place-items:center;color:#19e0c9;border-radius:12px;background:#0e4549;margin-bottom:21px}.preview-card svg{width:23px;height:23px}.preview-card h3{font-size:15px;margin:0 0 10px}.preview-card p{color:#91b1ba;font-size:12px;line-height:1.75;margin:0}
.footer{border-top:1px solid rgba(198,245,245,.12);padding:26px 0;color:#789aa7;font-size:11px}.footer-inner{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}
/* biblioteca */
.library-head{padding:66px 0 42px}.library-head .eyebrow{margin-bottom:13px}.library-head h1{font:800 clamp(32px,4vw,48px)/1.15 Manrope,sans-serif;letter-spacing:-.055em;margin:0 0 12px}.library-head p{color:#99b8c2;font-size:14px;line-height:1.7;max-width:650px;margin:0}
.lib-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:8px 0 22px;flex-wrap:wrap}.lib-toolbar h2{font-size:17px;margin:0;letter-spacing:-.02em}.lib-toolbar small{color:#9fbec7}
.shelf{display:grid;grid-template-columns:repeat(3,1fr);gap:19px;padding-bottom:110px}.book-card{background:#092632;border:1px solid rgba(67,197,208,.2);border-radius:19px;overflow:hidden;transition:border-color .2s,transform .2s;display:flex;flex-direction:column}.book-card:hover{transform:translateY(-3px);border-color:rgba(31,223,209,.45)}.book-cover{height:245px;position:relative;display:flex;align-items:flex-end;justify-content:flex-start;padding:28px;background:radial-gradient(circle at 62% 30%,rgba(30,188,236,.32),transparent 51%),linear-gradient(155deg,#0a4555,#082d3a 60%,#061b24);overflow:hidden}.book-cover:after{content:"";width:200px;height:200px;border:1px solid rgba(42,219,223,.22);border-radius:50%;position:absolute;top:-60px;right:-25px;box-shadow:0 0 0 24px rgba(29,187,223,.05),0 0 0 53px rgba(29,187,223,.035)}.book-cover .cv-word{position:relative;z-index:1;display:flex;flex-direction:column;gap:8px;max-width:250px}.cv-word .thin{font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:#5cebdc;font-weight:800}.cv-word strong{font:800 24px/1.13 Manrope,sans-serif;letter-spacing:-.045em;color:#f8fbfd}.book-card .book-body{padding:23px 24px 24px;display:flex;flex-direction:column;flex:1;gap:12px}.book-badge{display:inline-flex;font-size:9px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:#30e8ca}.book-body h3{margin:0;color:#eaf9fb;font-size:16px;line-height:1.5}.book-body p{margin:0 0 11px;color:#93afba;font-size:12px;line-height:1.7}.book-bottom{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid rgba(118,213,225,.14);padding-top:18px}.book-bottom span{color:#88b2bc;font-size:11px}.book-bottom a{font-size:12px;font-weight:800;color:#ffe664}.book-bottom a:hover{text-decoration:underline}
.empty-state{border:1px dashed rgba(125,211,221,.25);border-radius:18px;text-align:center;padding:65px 20px;color:#9bb9c2;grid-column:1/-1}.empty-state svg{width:36px;height:36px;color:#19d8c3}.empty-state h3{color:#eaf7f9;margin:18px 0 8px}.empty-state p{max-width:500px;margin:auto;font-size:13px;line-height:1.75}.preview-alert{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 19px;background:rgba(255,230,91,.09);border:1px solid rgba(255,230,91,.31);border-radius:13px;color:#fceba7;font-size:12px;line-height:1.55;margin:0 0 28px;flex-wrap:wrap}.preview-alert strong{color:#fff}
/* login modal */
.modal-wrap{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:22px;background:rgba(0,12,18,.78);backdrop-filter:blur(10px)}.modal{width:min(430px,100%);background:linear-gradient(145deg,#0c3442,#061d29);border:1px solid rgba(94,221,227,.29);border-radius:22px;padding:35px;position:relative;box-shadow:0 25px 80px #0007}.modal h2{margin:14px 0 8px;font:800 25px/1.2 Manrope,sans-serif;letter-spacing:-.045em}.modal p{color:#a3bbc4;font-size:12px;line-height:1.7;margin:0 0 25px}.close-modal{position:absolute;right:16px;top:13px;background:transparent;color:#a9c5cf;border:0;font-size:27px;cursor:pointer}.modal label{display:block;color:#b9d0d7;font-size:11px;font-weight:700;margin-bottom:8px}.modal input{display:block;width:100%;border:1px solid #2d5663;background:#071f29;color:#fff;border-radius:10px;padding:14px;margin-bottom:18px;font-size:14px}.modal .btn{width:100%}.modal .link{display:block;text-align:center;color:#48ddce;font-size:11px;font-weight:700;margin-top:19px;cursor:pointer;background:none;border:0;width:100%}.error{font-size:12px!important;color:#ffadad!important;background:rgba(255,75,75,.09);border-radius:10px;padding:10px!important;margin:0 0 15px!important}.success{color:#4ce2c4!important}
@media(max-width:980px){.hero{gap:20px;grid-template-columns:1.05fr .95fr}.visual{height:390px}.hero h1{font-size:43px}.fl1{right:0}.fl2{left:0}.feature{padding:22px 18px}.feature small{font-size:10px}}
@media(max-width:700px){.container{width:min(100% - 34px,580px)}.header{height:73px}.header-pill{display:none}.brand-text strong{font-size:12px}.brand-text small{font-size:8px}.brand-mark{width:39px;height:39px}.nav{gap:16px;font-size:11px}.hero{padding:58px 0 66px;grid-template-columns:1fr;min-height:0;gap:14px}.hero h1{font-size:clamp(35px,9vw,50px)}.hero h1 .small-line{font-size:.51em}.hero-copy>p{font-size:14px;margin:21px 0 25px}.hero-actions .btn{width:100%}.visual{height:300px;margin-top:12px}.neuro-art{width:315px}.fl1{top:10px;right:0}.fl2{bottom:5px;left:0}.float-label{font-size:10px;padding:9px 11px}.feature-strip{margin-top:0;grid-template-columns:1fr}.feature+.feature{border-left:0;border-top:1px solid rgba(70,194,204,.19)}.feature{padding:17px 21px}.section{padding:70px 0 75px}.preview-grid{grid-template-columns:1fr}.preview-card{min-height:0}.shelf{grid-template-columns:1fr}.library-head{padding:46px 0 32px}.book-cover{height:210px}.footer-inner{display:block;line-height:1.85}}
@media(min-width:701px) and (max-width:990px){.shelf{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
/* Entrada restrita: a página pública apresenta somente a autenticação. */
.nav-login{color:#b4ccd3;cursor:pointer;background:transparent;border:0;padding:0;font-size:inherit;font-weight:inherit;letter-spacing:inherit}
.nav-login:hover{color:#fff}
.access-note{display:inline-flex;align-items:center;gap:9px;color:#d6edee;font-weight:700;font-size:12px;padding:14px 16px;border:1px solid rgba(35,220,203,.25);border-radius:12px;background:rgba(8,49,58,.55)}
.access-note svg{width:19px;height:19px;flex-shrink:0;color:#20dec7}
@media(max-width:700px){.access-note{width:100%;justify-content:center}}

/* Capa editorial oficial, sem crop da arte fornecida. */
.book-cover.has-image{height:346px;padding:0;background:#04151d;align-items:center;justify-content:center}
.book-cover.has-image::after{display:none}
.book-cover-image{height:100%;width:100%;object-fit:contain;display:block}
.library-help{border:1px solid rgba(49,214,210,.45);color:#64e9df;background:rgba(4,47,56,.8);border-radius:999px;padding:9px 12px;font:800 11px Manrope,system-ui;cursor:pointer}
.library-help:hover{background:rgba(22,123,131,.4)}
@media(max-width:700px){.book-cover.has-image{height:350px}.library-help{margin-left:auto}}
