:root{--ink:#292929;--muted:#68736f;--paper:#f6f2ea;--surface:#fcfbf8;--line:#ded8cc;--brand:#025b4f;--brand-2:#c6a76a;--danger:#9b3535;--shadow:0 20px 60px rgba(31,41,38,.12);color-scheme:light;font-family:"Nunito Sans",Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
:root[data-theme="dark"]{--ink:#e8e7e1;--muted:#a7aea9;--paper:#121917;--surface:#18211e;--line:#33423d;--brand:#79b9a8;--brand-2:#e4b166;--shadow:0 20px 60px rgba(0,0,0,.35);color-scheme:dark}
@media(prefers-color-scheme:dark){:root[data-theme="system"]{--ink:#e8e7e1;--muted:#a7aea9;--paper:#121917;--surface:#18211e;--line:#33423d;--brand:#79b9a8;--brand-2:#e4b166;--shadow:0 20px 60px rgba(0,0,0,.35);color-scheme:dark}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink)}a{color:inherit}button,input,textarea{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;background:var(--surface);padding:.8rem 1rem;border-radius:.5rem}.skip-link:focus{top:1rem}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.73rem;font-weight:800;color:var(--brand);margin:0 0 .5rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.7rem 1rem;border:1px solid transparent;border-radius:.7rem;text-decoration:none;font-weight:750;cursor:pointer}.button.primary{background:var(--brand);color:#fff}.button.ghost{border-color:var(--line);background:transparent;color:var(--ink)}.button.wide{width:100%}.icon-button,.tool-button,.text-button{border:0;background:transparent;color:inherit;cursor:pointer}.icon-button{width:44px;height:44px;border-radius:50%;display:inline-grid;place-items:center;font-size:1.35rem}.icon-button:hover,.tool-button:hover{background:color-mix(in srgb,var(--brand) 10%,transparent)}.muted{color:var(--muted)}
.auth-page{min-height:100vh;display:grid;place-items:center;padding:2rem;background:radial-gradient(circle at 10% 0%,color-mix(in srgb,var(--brand-2) 18%,transparent),transparent 35%),radial-gradient(circle at 90% 100%,color-mix(in srgb,var(--brand) 18%,transparent),transparent 38%),var(--paper)}.login-card,.install-card{width:min(100%,470px);background:var(--surface);padding:clamp(1.5rem,5vw,3rem);border:1px solid var(--line);border-radius:1.3rem;box-shadow:var(--shadow)}.install-card{width:min(100%,760px)}.brand-symbol-wrap{display:grid;place-items:center;flex:0 0 auto;width:44px;height:44px;padding:7px;border:1px solid color-mix(in srgb,var(--brand) 18%,var(--line));border-radius:13px;background:#fcfbf8}.brand-symbol-wrap img{display:block;width:100%;height:100%;object-fit:contain}.brand-symbol-large{width:72px;height:72px;padding:11px;margin-bottom:1.25rem;border-radius:18px}.login-card h1,.install-card h1{font-family:"Barlow Condensed","Arial Narrow",Georgia,serif;font-size:clamp(2rem,7vw,3.15rem);line-height:.98;letter-spacing:.01em;margin:.1rem 0 .8rem}.lead{font-family:Georgia,serif;font-size:1.18rem;line-height:1.6;color:var(--muted)}.login-form,.install-form{display:grid;gap:1rem;margin-top:1.5rem}.login-form label,.install-form label{display:grid;gap:.4rem;font-weight:700}.login-form input,.install-form input,.search-line input,textarea{width:100%;min-height:46px;padding:.75rem .9rem;border:1px solid var(--line);border-radius:.65rem;background:var(--paper);color:var(--ink)}.privacy-note{font-size:.82rem;color:var(--muted);text-align:center;margin:1.4rem 0 0}.error-box,.success-box{padding:1rem;border-radius:.7rem;margin:1rem 0}.error-box{background:#f9dddd;color:#7b2626}.success-box{background:color-mix(in srgb,var(--brand) 14%,var(--surface))}.install-form fieldset{display:grid;grid-template-columns:1fr 1fr;gap:1rem;border:1px solid var(--line);border-radius:.8rem;padding:1rem}.install-form legend{font-family:Georgia,serif;font-weight:700;padding:0 .4rem}.install-form label:first-of-type{grid-column:1/-1}
.site-header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,5vw,4rem);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,transparent);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.wordmark{display:flex;align-items:center;gap:.75rem;text-decoration:none;font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-size:1.05rem;letter-spacing:.055em;font-weight:800}.wordmark .brand-symbol-wrap{width:38px;height:38px;padding:6px;border-radius:10px}.wordmark-text{white-space:nowrap}.brand-logo{display:inline-flex;align-items:center;line-height:0}.brand-logo img{display:block;width:auto;height:40px;max-width:min(42vw,190px);object-fit:contain}.user-menu{display:flex;align-items:center;gap:1rem}.user-menu form{margin:0}.text-button{text-decoration:underline}.library-shell,.notes-shell{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:clamp(2rem,6vw,5rem) 0}.library-intro h1,.notes-intro h1{font:700 clamp(2.4rem,6vw,4.3rem)/1 Georgia,serif;margin:.2rem 0 .8rem}.library-intro>p:last-child,.notes-intro>p:last-child{color:var(--muted);font-size:1.05rem}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;margin-top:2.5rem}.book-card{display:grid;grid-template-columns:150px 1fr;background:var(--surface);border:1px solid var(--line);border-radius:1rem;overflow:hidden;box-shadow:0 12px 35px rgba(31,41,38,.08)}.book-card>img{width:100%;height:100%;object-fit:cover}.book-card-body{padding:1.4rem;display:flex;flex-direction:column}.book-card h2{font:700 1.65rem/1.15 Georgia,serif;margin:.15rem 0 .5rem}.book-card-body>p:not(.eyebrow){color:var(--muted);line-height:1.5}.progress-row{display:flex;align-items:center;gap:.6rem;margin-top:auto}.progress-track{appearance:none;width:100%;height:6px;border:0;border-radius:99px;overflow:hidden;flex:1;background:var(--line)}.progress-track::-webkit-progress-bar{background:var(--line)}.progress-track::-webkit-progress-value{background:var(--brand)}.progress-track::-moz-progress-bar{background:var(--brand)}.progress-row strong{font-size:.8rem}.card-actions{display:flex;gap:.6rem;margin-top:1rem;flex-wrap:wrap}
.reader-app{min-height:100vh;background:var(--paper)}.reader-header{height:68px;position:fixed;z-index:50;top:0;left:0;right:0;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:0 max(12px,env(safe-area-inset-left));background:color-mix(in srgb,var(--surface) 94%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.reader-brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;font-family:"Barlow Condensed","Arial Narrow",sans-serif;letter-spacing:.045em}.reader-brand img{display:block;width:auto;height:34px;max-width:min(34vw,168px);object-fit:contain}.reader-brand .brand-symbol-wrap{width:36px;height:36px;padding:6px;border-radius:10px}.reader-title{min-width:0;text-align:center}.reader-title small,.reader-title strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reader-title small{font-size:.68rem;color:var(--muted)}.reader-title strong{font-family:Georgia,serif;font-size:.9rem}.reader-tools{display:flex;align-items:center;gap:.15rem}.tool-button{min-width:40px;height:40px;border-radius:.6rem;font-weight:750}.tool-button span{font-size:.78rem}.reading-progress{position:absolute;left:0;right:0;bottom:-1px;height:3px}.reading-progress span{display:block;height:100%;background:var(--brand-2);transition:width .25s}.reader-main{padding:clamp(7rem,12vw,9rem) 1rem 6rem}.book-content{width:min(var(--reader-width),100%);margin:auto;font-family:Georgia,"Times New Roman",serif;font-size:calc(1.08rem * var(--font-scale));line-height:var(--reader-line-height);overflow-wrap:anywhere}.book-content>h1{font-size:clamp(2.2rem,calc(3.6rem * var(--font-scale)),4.6rem);line-height:1.05;text-align:center;margin:.25rem 0 1.2rem;text-wrap:balance}.chapter-kicker{text-align:center!important;text-transform:uppercase;letter-spacing:.14em;font:700 .72rem/1.4 "Nunito Sans",Inter,sans-serif!important;color:var(--brand);margin:0!important}.book-content p[data-paragraph-id]{margin:0 0 1.15em;text-align:justify;text-wrap:pretty;scroll-margin-top:96px}.book-content .source-page{display:block;text-align:center;font:700 .68rem/1 "Nunito Sans",Inter,sans-serif;color:var(--muted);margin:2.4rem auto 1rem}.book-content .section-anchor{font-size:1.42em;line-height:1.25;margin:2.5em 0 .8em;scroll-margin-top:95px}.chapter-sections{border-block:1px solid var(--line);padding:1rem 0;margin:2rem 0 3rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem 1rem;font:600 .78rem/1.4 "Nunito Sans",Inter,sans-serif}.chapter-sections a{color:var(--brand);text-decoration:none}.book-image{display:block;max-width:min(100%,560px);height:auto;margin:2.5rem auto;border-radius:.7rem;box-shadow:var(--shadow)}.chapter-nav{border-top:1px solid var(--line);margin-top:4rem;padding-top:2rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem;font-family:"Nunito Sans",Inter,sans-serif}.chapter-nav a{text-decoration:none;color:var(--brand)}.chapter-nav a.next{text-align:right}.chapter-nav small,.chapter-nav strong{display:block}.chapter-nav small{color:var(--muted);font-size:.72rem;margin-bottom:.25rem}.highlight{padding:.05em 0;border-radius:.15em;cursor:pointer;color:inherit}.highlight.yellow{background:#f5dc75aa}.highlight.green{background:#8fd2a5aa}.highlight.blue{background:#86c9eaaa}.highlight.pink{background:#ee9cb8aa}
.reader-sidebar{position:fixed;z-index:80;left:0;top:0;bottom:0;width:min(390px,92vw);padding:1.2rem;background:var(--surface);box-shadow:var(--shadow);transform:translateX(-105%);transition:transform .25s;overflow:auto}.reader-sidebar.open{transform:none}.sidebar-head{display:flex;justify-content:space-between;align-items:start;position:sticky;top:-1.2rem;background:var(--surface);padding:1.2rem 0 1rem;z-index:2}.sidebar-head h2{font:700 1.5rem Georgia,serif;margin:0}.toc-list{display:grid}.toc-list a{display:flex;justify-content:space-between;gap:1rem;padding:.82rem .65rem;border-bottom:1px solid var(--line);text-decoration:none;font-family:Georgia,serif}.toc-list a.active{color:var(--brand);font-weight:700;background:color-mix(in srgb,var(--brand) 8%,transparent)}.toc-list small{color:var(--muted);white-space:nowrap}.sidebar-scrim{position:fixed;z-index:70;inset:0;border:0;background:#07131088;opacity:0;pointer-events:none;transition:opacity .25s}.sidebar-scrim.show{opacity:1;pointer-events:auto}.search-panel{position:fixed;z-index:60;top:68px;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow);padding:1rem max(1rem,calc((100vw - 900px)/2));max-height:70vh;overflow:auto}.search-panel form>label{display:block;font-weight:750;margin-bottom:.5rem}.search-line{display:flex;gap:.5rem}.search-results{display:grid;margin-top:.8rem}.search-results>a{display:grid;grid-template-columns:1fr auto;gap:.2rem .8rem;padding:.8rem;border-top:1px solid var(--line);text-decoration:none}.search-results p{grid-column:1/-1;margin:.2rem 0;color:var(--muted);font-family:Georgia,serif}.selection-menu{position:fixed;z-index:100;display:flex;gap:.15rem;padding:.35rem;background:#17201e;color:#fff;border-radius:.65rem;box-shadow:var(--shadow)}.selection-menu button{border:0;background:transparent;color:#fff;min-height:34px;border-radius:.35rem;cursor:pointer}.selection-menu button[data-color="yellow"]{color:#f5dc75}.selection-menu button[data-color="green"]{color:#8fd2a5}.selection-menu button[data-color="blue"]{color:#86c9ea}.selection-menu button[data-color="pink"]{color:#ee9cb8}.bookmark-fab{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:50px;height:50px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--brand-2);font-size:1.7rem;box-shadow:var(--shadow);cursor:pointer}.toast{position:fixed;z-index:150;left:50%;bottom:2rem;transform:translate(-50%,120px);background:#17201e;color:#fff;padding:.8rem 1rem;border-radius:.6rem;opacity:0;transition:.25s}.toast.show{transform:translate(-50%,0);opacity:1}dialog{width:min(580px,calc(100% - 2rem));border:1px solid var(--line);border-radius:1rem;background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}dialog::backdrop{background:#071310aa;backdrop-filter:blur(3px)}.note-dialog-form{display:grid;gap:1rem}.dialog-head{display:flex;align-items:start;justify-content:space-between}.dialog-head h2{font:700 1.8rem Georgia,serif;margin:0}.note-dialog-form blockquote{margin:0;padding:.8rem 1rem;border-left:4px solid var(--brand-2);background:var(--paper);font-family:Georgia,serif;color:var(--muted)}.note-dialog-form label{font-weight:750}.dialog-actions{display:flex;justify-content:flex-end;gap:.5rem}
.notes-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:2.5rem;margin-top:3rem}.notes-layout h2{font:700 1.45rem Georgia,serif}.notes-layout h2 span{font:700 .72rem Inter,sans-serif;background:var(--brand);color:#fff;border-radius:99px;padding:.2rem .5rem}.annotation-list,.bookmark-list{display:grid;gap:1rem}.annotation-card,.bookmark-list a,.empty-state{background:var(--surface);border:1px solid var(--line);border-radius:.85rem;padding:1.2rem}.annotation-meta{display:flex;align-items:center;gap:.55rem;font-size:.78rem;color:var(--muted)}.annotation-meta time{margin-left:auto}.color-dot{width:10px;height:10px;border-radius:50%;background:#f5dc75}.color-dot.green{background:#8fd2a5}.color-dot.blue{background:#86c9ea}.color-dot.pink{background:#ee9cb8}.annotation-card blockquote{font-family:Georgia,serif;border-left:3px solid var(--line);padding-left:1rem;margin:1rem 0;color:var(--muted)}.annotation-card>a{color:var(--brand);font-weight:700;text-decoration:none}.bookmark-list a{display:grid;text-decoration:none}.bookmark-list small{color:var(--muted);margin-top:.3rem}
@media(max-width:760px){.reader-header{grid-template-columns:auto auto minmax(0,1fr) auto;gap:.3rem}.reader-brand b,.reader-title small,.tool-button span{display:none}.reader-brand .brand-symbol-wrap{width:34px;height:34px;padding:5px}.reader-tools{gap:0}.reader-tools .tool-button{min-width:34px;padding:0 .25rem}.reader-tools>a{display:none}.reader-title{text-align:left}.reader-main{padding-inline:clamp(1.1rem,5vw,2rem)}.book-content{font-size:calc(1.03rem * var(--font-scale))}.book-content>h1{font-size:clamp(2.2rem,11vw,3rem)}.book-content p[data-paragraph-id]{text-align:left}.chapter-nav{grid-template-columns:1fr}.chapter-nav a.next{text-align:left}.notes-layout{grid-template-columns:1fr}.book-card{grid-template-columns:110px 1fr}.install-form fieldset{grid-template-columns:1fr}.install-form label:first-of-type{grid-column:auto}.user-menu>span{display:none}}
@media(max-width:430px){.book-card{grid-template-columns:1fr}.book-card>img{height:260px;object-position:50% 20%}.search-line{flex-wrap:wrap}.search-line input{flex:1 0 100%}.chapter-sections{justify-content:flex-start}.reader-header{padding-inline:6px}}
@media print{.reader-header,.reader-sidebar,.sidebar-scrim,.search-panel,.selection-menu,.bookmark-fab,.toast,.chapter-sections{display:none!important}.reader-main{padding:0}.book-content{width:100%;font-size:11pt;line-height:1.55;color:#000}.book-content p[data-paragraph-id]{orphans:3;widows:3}.chapter-nav{display:none}}

/* Login — experiência institucional Taiken */
.auth-page{
  --login-deep:#01453c;--login-brand:#025b4f;--login-night:#071a22;
  --login-cream:#f6f2ea;--login-surface:#fcfbf8;--login-gold:#c6a76a;
  min-height:100svh;padding:clamp(1rem,3vw,2.5rem);
  background:radial-gradient(circle at 82% 12%,rgba(198,167,106,.2),transparent 27%),linear-gradient(135deg,#013d35 0%,var(--login-brand) 46%,#01483f 100%);
}
.login-shell{width:min(1120px,100%);min-height:min(720px,calc(100svh - clamp(2rem,6vw,5rem)));display:grid;grid-template-columns:minmax(0,1.08fr) minmax(400px,.92fr);overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:28px;background:var(--login-surface);box-shadow:0 32px 90px rgba(7,26,34,.28)}
.login-brand-panel{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:clamp(2rem,4vw,3.6rem);overflow:hidden;color:#fff;background:linear-gradient(155deg,rgba(1,69,60,.38),rgba(1,69,60,.96)),var(--login-brand)}
.login-brand-panel::before{content:"";position:absolute;z-index:-1;width:560px;height:560px;right:-290px;top:-230px;border:1px solid rgba(255,255,255,.15);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.035),0 0 0 140px rgba(255,255,255,.025)}
.login-brand-panel::after{content:"";position:absolute;z-index:-1;width:220px;height:6px;right:clamp(2rem,5vw,4.5rem);bottom:clamp(2rem,5vw,4.5rem);background:linear-gradient(90deg,var(--login-gold),transparent);opacity:.8}
.login-brand-lockup{display:flex;align-items:center;gap:1rem;font:800 1rem/1 "Barlow Condensed","Arial Narrow",sans-serif;letter-spacing:.22em}
.login-brand-lockup img,.login-mobile-brand img{display:block;border-radius:18px;box-shadow:0 10px 30px rgba(7,26,34,.18)}
.login-brand-copy{max-width:540px;margin-block:clamp(2.5rem,6vh,4rem) 1.5rem}
.login-brand-copy .eyebrow{color:#e7c98c;margin-bottom:1rem}
.login-brand-copy h1{max-width:520px;margin:0;font:700 clamp(3.25rem,5.2vw,5.1rem)/.88 "Barlow Condensed","Arial Narrow",sans-serif;letter-spacing:-.025em;text-wrap:balance}
.login-brand-copy>p:not(.eyebrow){max-width:490px;margin:1.6rem 0 0;color:rgba(255,255,255,.78);font-size:1.03rem;line-height:1.75}
.login-benefits{display:grid;gap:.7rem;margin:1.8rem 0 0;padding:0;list-style:none}
.login-benefits li{display:flex;align-items:center;gap:.85rem;color:rgba(255,255,255,.92);font-size:.92rem}
.login-benefits li span{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border:1px solid rgba(231,201,140,.48);border-radius:50%;color:#e7c98c;font-size:.62rem;font-weight:900;letter-spacing:.05em}
.login-benefits strong{font-weight:700}.login-brand-footer{margin:0;color:rgba(255,255,255,.55);font-size:.7rem;font-weight:800;letter-spacing:.13em}.login-brand-footer span{margin-inline:.45rem;color:var(--login-gold)}
.login-card{width:auto;display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,5.5vw,5rem);border:0;border-radius:0;box-shadow:none;background:var(--login-surface);color:var(--login-night)}
.login-mobile-brand{display:none}.login-card-heading .eyebrow{color:var(--login-brand)}
.login-card-heading h2{margin:.2rem 0 .75rem;font:700 clamp(2.3rem,4vw,3.4rem)/.95 "Barlow Condensed","Arial Narrow",sans-serif;letter-spacing:-.015em}
.login-card-heading>p:last-child{margin:0;max-width:390px;color:#68736f;line-height:1.55}
.login-card .error-box{display:grid;gap:.25rem;margin:1.4rem 0 0;border:1px solid #efb9b9;background:#fff0ef;color:#7b2626}.login-card .error-box span{font-size:.86rem}
.login-form{gap:1.1rem;margin-top:2rem}.login-form>label{gap:.5rem;color:var(--login-night);font-size:.86rem;font-weight:800}
.login-field{position:relative;display:block}.login-field .field-icon{position:absolute;z-index:1;left:1rem;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#e6efec;color:var(--login-brand);font-size:.72rem;font-weight:900;pointer-events:none}
.login-form .login-field input{min-height:54px;padding:0 4.6rem 0 3.25rem;border:1px solid #d7dedb;border-radius:13px;background:#fff;color:var(--login-night);transition:border-color .18s,box-shadow .18s,background .18s}
.login-form .login-field input::placeholder{color:#9aa5a1}.login-form .login-field input:hover{border-color:#aebfba}.login-form .login-field input:focus{outline:0;border-color:var(--login-brand);box-shadow:0 0 0 4px rgba(2,91,79,.12);background:#fff}
.password-toggle{position:absolute;z-index:2;right:.65rem;top:50%;transform:translateY(-50%);min-height:36px;padding:0 .55rem;border:0;border-radius:8px;background:transparent;color:var(--login-brand);font-size:.72rem;font-weight:900;cursor:pointer}.password-toggle:hover,.password-toggle:focus-visible{background:#eaf1ef;outline:0}
.login-submit{min-height:54px;margin-top:.4rem;justify-content:space-between;padding-inline:1.25rem;border-radius:13px;background:linear-gradient(135deg,var(--login-brand),var(--login-deep));box-shadow:0 12px 24px rgba(2,91,79,.2);transition:transform .18s,box-shadow .18s,filter .18s}
.login-submit:hover{transform:translateY(-1px);box-shadow:0 16px 30px rgba(2,91,79,.27);filter:saturate(1.08)}.login-submit:active{transform:none}.login-form.is-submitting .login-submit{opacity:.78;pointer-events:none}
.login-card .privacy-note{display:flex;align-items:center;justify-content:center;gap:.45rem;margin-top:1.5rem;color:#75807c;line-height:1.45}.login-card .privacy-note span{color:var(--login-gold);font-size:.58rem}
@media(max-width:860px){.auth-page{padding:0;background:var(--login-surface)}.login-shell{min-height:100svh;grid-template-columns:1fr;border:0;border-radius:0;box-shadow:none}.login-brand-panel{display:none}.login-card{width:min(100%,560px);margin:auto;padding:clamp(1.5rem,8vw,4rem)}.login-mobile-brand{display:flex;align-items:center;gap:.9rem;margin-bottom:clamp(2.5rem,8vh,4.5rem);color:var(--login-brand);font:800 .9rem/1 "Barlow Condensed","Arial Narrow",sans-serif;letter-spacing:.08em}}
@media(max-width:430px){.login-card{justify-content:flex-start;padding-top:max(1.25rem,env(safe-area-inset-top));padding-bottom:max(1.5rem,env(safe-area-inset-bottom))}.login-mobile-brand{margin-bottom:2.4rem}.login-mobile-brand img{width:50px;height:50px;border-radius:14px}.login-card-heading h2{font-size:2.5rem}.login-form{margin-top:1.6rem}}
@media(prefers-reduced-motion:reduce){.login-submit,.login-form .login-field input{transition:none}}
.app-icon-wrap{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;overflow:hidden}.app-icon-wrap img{display:block;width:36px;height:36px;max-width:100%;max-height:100%;border-radius:10px;object-fit:contain;box-shadow:0 5px 14px rgba(7,26,34,.12)}
.reader-brand .app-icon-wrap{width:36px;height:36px}.reader-brand .app-icon-wrap img{width:32px;height:32px;border-radius:9px}
@media(max-width:760px){.site-header .app-icon-wrap{width:34px;height:34px}.site-header .app-icon-wrap img{width:30px;height:30px;border-radius:8px}.reader-brand .app-icon-wrap{width:32px;height:32px}.reader-brand .app-icon-wrap img{width:28px;height:28px;border-radius:8px}}
@media(max-width:430px){.site-header .app-icon-wrap{width:32px;height:32px}.site-header .app-icon-wrap img{width:28px;height:28px}.reader-brand .app-icon-wrap{width:30px;height:30px}.reader-brand .app-icon-wrap img{width:26px;height:26px}}

/* v1.3.0 — Painel administrativo */
.button.compact{min-height:36px;padding:.45rem .75rem;border-radius:.58rem;font-size:.82rem}.text-link{color:var(--brand);font-weight:800;text-decoration:none}.text-link:hover{text-decoration:underline}
.admin-shell{width:min(1440px,100%);min-height:calc(100vh - 72px);margin:0 auto;display:grid;grid-template-columns:260px minmax(0,1fr)}
.admin-sidebar{position:sticky;top:72px;align-self:start;height:calc(100vh - 72px);display:flex;flex-direction:column;padding:2rem 1.5rem;border-right:1px solid var(--line);background:color-mix(in srgb,var(--surface) 82%,var(--paper))}
.admin-sidebar h1{margin:.1rem 0 .75rem;font:700 2.1rem/1 Georgia,serif}.admin-sidebar .muted{font-size:.88rem;line-height:1.55}.admin-nav{display:grid;gap:.35rem;margin-top:1.7rem}.admin-nav a{padding:.75rem .8rem;border-radius:.65rem;text-decoration:none;font-weight:750;font-size:.9rem}.admin-nav a:hover,.admin-nav a:focus-visible{background:color-mix(in srgb,var(--brand) 9%,transparent);color:var(--brand);outline:0}.admin-version{margin:auto 0 0;color:var(--muted);font-size:.72rem;line-height:1.5}.admin-version strong{display:block;color:var(--ink);font-size:.8rem}
.admin-content{min-width:0;padding:clamp(1.4rem,3.5vw,3.5rem)}.admin-section{scroll-margin-top:92px;margin-bottom:clamp(2.5rem,6vw,5rem)}.admin-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.4rem}.admin-heading h2{margin:.1rem 0 0;font:700 clamp(2rem,4vw,3rem)/1 Georgia,serif}.admin-heading>p{max-width:520px;margin:0;color:var(--muted);font-size:.9rem}.admin-flash{margin:0 0 1.5rem;border:1px solid var(--line)}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.stat-card{display:grid;gap:.35rem;min-height:145px;padding:1.25rem;border:1px solid var(--line);border-radius:1rem;background:var(--surface);box-shadow:0 8px 28px rgba(31,41,38,.05)}.stat-card span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.stat-card strong{font:700 2.15rem/1 Georgia,serif;color:var(--brand)}.stat-card small{align-self:end;color:var(--muted)}
.admin-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:1rem;background:var(--surface)}.admin-table{width:100%;border-collapse:collapse;min-width:820px}.admin-table th,.admin-table td{padding:.9rem 1rem;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}.admin-table tr:last-child td{border-bottom:0}.admin-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:color-mix(in srgb,var(--paper) 66%,var(--surface))}.admin-table td{font-size:.9rem}.admin-table td:first-child strong,.admin-table td:first-child small{display:block}.admin-table td:first-child small{margin-top:.2rem;color:var(--muted)}
.status-pill{display:inline-flex;align-items:center;min-height:26px;padding:.25rem .55rem;border-radius:99px;font-size:.72rem;font-weight:800}.status-pill.active{background:color-mix(in srgb,var(--brand) 14%,var(--surface));color:var(--brand)}.status-pill.inactive{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger)}
.admin-editor{margin-top:1.25rem;padding:clamp(1.1rem,3vw,1.8rem);border:1px solid var(--line);border-radius:1rem;background:var(--surface);box-shadow:0 10px 34px rgba(31,41,38,.06)}.admin-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}.admin-editor-head h3{margin:.15rem 0 0;font:700 1.65rem/1.1 Georgia,serif}.admin-form{display:grid;gap:1.2rem}.admin-form label{display:grid;gap:.4rem;font-size:.82rem;font-weight:800}.admin-form input,.admin-form select,.admin-form textarea{width:100%;min-height:44px;padding:.7rem .8rem;border:1px solid var(--line);border-radius:.65rem;background:var(--paper);color:var(--ink)}.admin-form textarea{resize:vertical;line-height:1.5}.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 14%,transparent)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-grid .full-field{grid-column:1/-1}.check-label{display:flex!important;align-items:center;gap:.65rem;min-height:44px;padding:.7rem .8rem;border:1px solid var(--line);border-radius:.65rem;background:var(--paper);align-self:end}.check-label input{width:18px!important;min-height:18px!important;height:18px;margin:0}.book-access{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.65rem;margin:0;padding:1rem;border:1px solid var(--line);border-radius:.8rem}.book-access legend{padding:0 .4rem;font-weight:800}.access-card{display:flex!important;align-items:flex-start;gap:.65rem;padding:.75rem;border:1px solid var(--line);border-radius:.65rem;background:var(--paper);cursor:pointer}.access-card input{width:18px!important;min-height:18px!important;height:18px;margin:.12rem 0 0}.access-card span{min-width:0}.access-card strong,.access-card small{display:block}.access-card strong{font-size:.86rem}.access-card small{margin-top:.2rem;color:var(--muted);font-weight:600}.password-reset-form{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--line)}.password-reset-form h4{margin:.15rem 0 .35rem;font:700 1.2rem/1.1 Georgia,serif}.password-reset-form p{margin:.2rem 0}.form-note{margin:0;color:var(--muted);font-size:.82rem;line-height:1.5}
.admin-book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.admin-book-card{display:grid;grid-template-columns:90px minmax(0,1fr);gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:var(--surface)}.admin-book-card>img,.admin-cover-placeholder{width:90px;height:130px;border-radius:.5rem;object-fit:cover;background:var(--paper)}.admin-cover-placeholder{display:grid;place-items:center;text-align:center;padding:.5rem;color:var(--muted);font-size:.72rem}.admin-book-card h3{margin:.55rem 0 .25rem;font:700 1.15rem/1.15 Georgia,serif}.admin-book-card p{margin:0 0 .25rem;color:var(--muted);font-size:.86rem}.admin-book-card small{display:block;color:var(--muted);margin-bottom:.75rem}
@media(max-width:1050px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-shell{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:820px){.admin-shell{display:block}.admin-sidebar{position:static;height:auto;padding:1.2rem;border-right:0;border-bottom:1px solid var(--line)}.admin-sidebar>div:first-child .muted,.admin-version{display:none}.admin-sidebar h1{font-size:1.55rem}.admin-nav{display:flex;overflow:auto;margin-top:1rem;padding-bottom:.2rem}.admin-nav a{white-space:nowrap;background:color-mix(in srgb,var(--brand) 6%,transparent)}.admin-content{padding:1.2rem}.admin-section{scroll-margin-top:86px}.admin-heading{align-items:flex-start;flex-direction:column}.admin-heading>p{max-width:none}.admin-site-header .user-menu .button{display:none}}
@media(max-width:760px){.site-header{padding-inline:max(12px,env(safe-area-inset-left));gap:.5rem}.site-header .wordmark{min-width:0;gap:.5rem}.site-header .wordmark-text{font-size:.9rem;letter-spacing:.035em;overflow:hidden;text-overflow:ellipsis}.site-header .brand-logo img{height:34px;max-width:min(48vw,158px)}.reader-brand img{height:30px;max-width:min(40vw,132px)}.site-header .user-menu{flex:0 0 auto;gap:.4rem}.site-header .button.compact.admin-shortcut{min-width:52px;min-height:34px;padding:.35rem .55rem;border-radius:.52rem;font-size:0;line-height:1}.site-header .button.compact.admin-shortcut::after{content:"Admin";font-size:.72rem;font-weight:800;line-height:1}.site-header .text-button{padding:.25rem;font-size:.78rem}}
@media(max-width:620px){.stat-grid,.form-grid{grid-template-columns:1fr}.form-grid .full-field{grid-column:auto}.stat-card{min-height:120px}.admin-book-grid{grid-template-columns:1fr}.admin-book-card{grid-template-columns:72px minmax(0,1fr)}.admin-book-card>img,.admin-cover-placeholder{width:72px;height:104px}.book-access{grid-template-columns:1fr}.admin-site-header .wordmark-text{display:none}}
@media(max-width:360px){.site-header .wordmark-text{font-size:.82rem;letter-spacing:.02em}.site-header .button.compact.admin-shortcut{min-width:48px;padding-inline:.45rem}.site-header .button.compact.admin-shortcut::after{font-size:.68rem}.site-header .user-menu{gap:.3rem}}

/* v1.4.0 — Biblioteca inteligente */
.library-flash{margin:1.5rem 0 0;padding:.85rem 1rem;border:1px solid var(--line);border-radius:.75rem;background:var(--surface);font-size:.88rem}.library-flash.success{border-color:color-mix(in srgb,var(--brand) 45%,var(--line));color:var(--brand)}.library-flash.error{border-color:color-mix(in srgb,var(--danger) 45%,var(--line));color:var(--danger)}
.library-filters{display:flex;gap:.55rem;margin-top:2rem;padding-bottom:.2rem;overflow-x:auto;scrollbar-width:thin}.library-filter{display:inline-flex;align-items:center;gap:.55rem;min-height:40px;padding:.5rem .75rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);text-decoration:none;white-space:nowrap;font-size:.82rem;font-weight:800}.library-filter strong{display:grid;place-items:center;min-width:22px;height:22px;padding:0 .35rem;border-radius:999px;background:var(--paper);color:var(--muted);font-size:.7rem}.library-filter:hover,.library-filter:focus-visible{border-color:var(--brand);color:var(--brand);outline:0}.library-filter.active{background:color-mix(in srgb,var(--brand) 14%,var(--surface));border-color:color-mix(in srgb,var(--brand) 55%,var(--line));color:var(--brand)}.library-filter.active strong{background:color-mix(in srgb,var(--brand) 18%,var(--paper));color:var(--brand)}
.book-card{scroll-margin-top:92px}.book-card-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem}.book-card-meta .eyebrow{margin-top:.25rem}.favorite-form{margin:0}.favorite-button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted);font-size:1.35rem;line-height:1;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.favorite-button:hover,.favorite-button:focus-visible{border-color:var(--brand);color:var(--brand);outline:0}.favorite-button.active{color:var(--brand-2);border-color:color-mix(in srgb,var(--brand-2) 55%,var(--line));background:color-mix(in srgb,var(--brand-2) 9%,transparent)}
.book-state-row{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin:.55rem 0 .75rem}.library-status,.favorite-label{display:inline-flex;align-items:center;min-height:25px;padding:.24rem .55rem;border-radius:999px;font-size:.68rem;font-weight:850;letter-spacing:.025em}.library-status.reading{background:color-mix(in srgb,var(--brand) 14%,var(--surface));color:var(--brand)}.library-status.want_to_read{background:color-mix(in srgb,var(--muted) 12%,var(--surface));color:var(--muted)}.library-status.completed{background:color-mix(in srgb,var(--brand-2) 14%,var(--surface));color:var(--brand-2)}.favorite-label{border:1px solid color-mix(in srgb,var(--brand-2) 35%,var(--line));color:var(--brand-2)}.not-started{margin:auto 0 0!important;padding-top:.7rem;color:var(--muted)!important;font-size:.78rem!important}
.library-card-actions{align-items:stretch}.library-card-actions>.button.primary{flex:1 1 auto}.book-more{position:relative}.book-more>summary{list-style:none;user-select:none}.book-more>summary::-webkit-details-marker{display:none}.book-more[open]>summary{border-color:var(--brand);color:var(--brand)}.book-more-menu{position:absolute;right:0;bottom:calc(100% + .45rem);z-index:15;width:190px;padding:.35rem;border:1px solid var(--line);border-radius:.7rem;background:var(--surface);box-shadow:var(--shadow)}.book-more-menu a,.book-more-menu button{display:block;width:100%;min-height:38px;padding:.55rem .65rem;border:0;border-radius:.45rem;background:transparent;color:var(--ink);text-align:left;text-decoration:none;font-size:.8rem;font-weight:750;cursor:pointer}.book-more-menu a:hover,.book-more-menu button:hover,.book-more-menu a:focus-visible,.book-more-menu button:focus-visible{background:color-mix(in srgb,var(--brand) 9%,transparent);color:var(--brand);outline:0}.book-more-menu form{margin:0}
.empty-library{margin-top:2.5rem;padding:clamp(1.4rem,4vw,2.5rem);border:1px dashed var(--line);border-radius:1rem;background:color-mix(in srgb,var(--surface) 75%,transparent);text-align:center}.empty-library h2{margin:.15rem 0 .6rem;font:700 clamp(1.7rem,4vw,2.4rem)/1.1 Georgia,serif}.empty-library>p:not(.eyebrow){max-width:560px;margin:.4rem auto 1.2rem;color:var(--muted);line-height:1.6}
@media(max-width:760px){.library-shell{width:min(100% - 1.5rem,1180px);padding-top:2rem}.library-filters{margin-inline:-.05rem;padding-right:.25rem}.library-filter{min-height:38px;padding:.45rem .68rem;font-size:.78rem}.book-grid{gap:1.25rem;margin-top:1.5rem}.book-card-body{padding:1.15rem}.book-card h2{font-size:1.5rem}.library-card-actions>.button.primary{min-width:0}.book-more>summary{min-width:72px}}
@media(max-width:430px){.library-intro h1{font-size:3rem}.library-intro>p:last-child{font-size:1rem;line-height:1.45}.library-filters{margin-top:1.4rem}.book-card>img{height:auto;max-height:none;aspect-ratio:432/648;object-position:center;object-fit:cover}.book-card-body{padding:1.15rem}.book-card h2{font-size:1.7rem}.book-card-body>p:not(.eyebrow):not(.not-started){font-size:.96rem}.library-card-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem}.library-card-actions>.button.primary{width:100%}.book-more>summary{min-width:78px}.book-more-menu{right:0;width:min(210px,calc(100vw - 2.5rem))}}

/* v1.5.0 — Importação privada de livros */
.import-diagnostics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:1rem 0 1.1rem}.import-diagnostics article{display:grid;gap:.25rem;padding:1rem;border:1px solid var(--line);border-radius:.8rem;background:var(--surface)}.import-diagnostics span{font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.import-diagnostics strong{font-size:1rem}.import-diagnostics strong.ok{color:var(--brand)}.import-diagnostics strong.warn{color:var(--danger)}.import-diagnostics strong.neutral{color:var(--brand-2)}.import-diagnostics small{color:var(--muted);line-height:1.4}.import-upload-form h3,.import-queue-head h3,.empty-import h3{margin:.15rem 0 .45rem;font:700 1.35rem/1.1 Georgia,serif}.import-upload-form input[type=file],.import-review-form input[type=file]{padding:.55rem}.import-queue-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:2rem 0 .75rem}.import-queue-head>span{color:var(--muted);font-size:.8rem;font-weight:750}.import-queue{display:grid;gap:.55rem}.import-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem .9rem;border:1px solid var(--line);border-radius:.8rem;background:var(--surface)}.import-row.selected{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 8%,transparent)}.import-row-main{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.2rem .65rem;min-width:0}.import-row-main>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Georgia,serif}.import-row-main>small{grid-column:2;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-row-meta{display:flex;align-items:center;gap:.7rem;flex:0 0 auto}.import-row-meta>small{color:var(--muted)}.import-status{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:.2rem .5rem;border-radius:999px;font-size:.64rem;font-weight:850;white-space:nowrap;background:color-mix(in srgb,var(--muted) 12%,var(--surface));color:var(--muted)}.import-status.review,.import-status.imported{background:color-mix(in srgb,var(--brand) 14%,var(--surface));color:var(--brand)}.import-status.queued,.import-status.processing{background:color-mix(in srgb,var(--brand-2) 14%,var(--surface));color:var(--brand-2)}.import-status.needs_ocr,.import-status.failed{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger)}.empty-import{margin-top:1rem;padding:1.4rem;border:1px dashed var(--line);border-radius:.9rem;text-align:center;background:color-mix(in srgb,var(--surface) 78%,transparent)}.empty-import p:last-child{margin:.3rem 0;color:var(--muted)}.import-review-card{margin-top:1.2rem}.import-summary{display:grid;grid-template-columns:110px minmax(0,1fr);gap:1rem;margin:1rem 0 1.5rem}.import-summary>img,.import-cover-placeholder{width:110px;aspect-ratio:2/3;object-fit:cover;border:1px solid var(--line);border-radius:.65rem;background:var(--paper)}.import-cover-placeholder{display:grid;place-items:center;color:var(--muted);font:800 1rem/1 sans-serif;letter-spacing:.12em}.import-summary dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1rem;margin:.8rem 0}.import-summary dl div{min-width:0}.import-summary dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;font-weight:850;color:var(--muted)}.import-summary dd{margin:.15rem 0 0;overflow-wrap:anywhere;font-size:.84rem}.import-message{margin:.8rem 0 0;padding:.7rem .8rem;border-left:3px solid var(--brand);background:color-mix(in srgb,var(--brand) 7%,transparent);color:var(--muted);font-size:.82rem;line-height:1.5}.inline-admin-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:1rem 0}.inline-admin-actions .button[disabled]{opacity:.5;cursor:not-allowed}.chapter-review-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:1.5rem 0 .7rem}.chapter-review-head h4{margin:.1rem 0;font:700 1.25rem/1.1 Georgia,serif}.chapter-review-head>span{color:var(--muted);font-size:.78rem}.chapter-review-list{display:grid;gap:.5rem;max-height:560px;overflow:auto;padding-right:.2rem}.chapter-review-item{display:grid!important;grid-template-columns:72px minmax(180px,.75fr) minmax(240px,1.25fr);align-items:center;gap:.75rem;padding:.7rem;border:1px solid var(--line);border-radius:.7rem;background:var(--paper)}.chapter-review-item>span{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.45rem}.chapter-review-item>span strong{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--brand) 12%,var(--surface));color:var(--brand);font-size:.75rem}.chapter-review-item>span small{color:var(--muted);font-weight:700}.chapter-review-item input{min-height:38px!important;background:var(--surface)!important}.chapter-review-item em{color:var(--muted);font-size:.75rem;font-style:normal;font-weight:550;line-height:1.45}.import-user-access{margin-top:1.2rem}.import-publish-check{max-width:540px;margin-top:1rem}.import-form-actions{display:flex;gap:.65rem;flex-wrap:wrap}.ocr-notice{margin:1rem 0;padding:1rem;border:1px solid color-mix(in srgb,var(--danger) 40%,var(--line));border-radius:.8rem;background:color-mix(in srgb,var(--danger) 6%,var(--surface))}.ocr-notice strong{color:var(--danger)}.ocr-notice p{margin:.45rem 0 0;color:var(--muted);line-height:1.55}.import-delete-form{margin-top:1.4rem;padding-top:1rem;border-top:1px solid var(--line)}.danger-text{color:var(--danger)!important}.import-migration-warning code{font-size:.85em}.admin-form input[type=file]::file-selector-button{margin-right:.7rem;padding:.45rem .65rem;border:1px solid var(--line);border-radius:.5rem;background:var(--surface);color:var(--ink);font-weight:750;cursor:pointer}
@media(max-width:820px){.import-diagnostics{grid-template-columns:1fr}.chapter-review-item{grid-template-columns:58px minmax(0,1fr)}.chapter-review-item em{grid-column:2}}
@media(max-width:620px){.import-row{align-items:flex-start}.import-row-main{grid-template-columns:1fr}.import-row-main>.import-status{justify-self:start}.import-row-main>small{grid-column:1}.import-row-meta{flex-direction:column;align-items:flex-end}.import-row-meta>small{display:none}.import-summary{grid-template-columns:78px minmax(0,1fr)}.import-summary>img,.import-cover-placeholder{width:78px}.import-summary dl{grid-template-columns:1fr}.chapter-review-item{grid-template-columns:1fr}.chapter-review-item>span,.chapter-review-item input,.chapter-review-item em{grid-column:1}.chapter-review-item>span{grid-template-columns:auto auto;justify-content:start}.import-form-actions{display:grid;grid-template-columns:1fr}.import-form-actions .button{width:100%}}

/* v1.5.1 — Processamento PDF no navegador */
.browser-import-actions{display:grid;gap:.8rem;margin:1rem 0}.browser-import-actions>.button{justify-self:start;min-width:170px}.browser-import-progress{display:grid;gap:.5rem;max-width:620px;padding:.85rem 1rem;border:1px solid var(--line);border-radius:.8rem;background:color-mix(in srgb,var(--brand) 5%,var(--surface))}.browser-import-progress-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.browser-import-progress-row strong{font-size:.84rem}.browser-import-progress-row strong.error{color:var(--danger)}.browser-import-progress-row span{font-size:.78rem;font-weight:850;color:var(--brand)}.browser-import-progress-track{height:8px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--muted) 14%,var(--paper))}.browser-import-progress-track>span{display:block;width:0;height:100%;border-radius:inherit;background:var(--brand);transition:width .18s ease}.browser-import-progress small{color:var(--muted);line-height:1.45}.server-import-fallback{margin:0}.server-import-fallback .text-button{padding:0;color:var(--muted);font-size:.76rem;text-decoration:underline;text-underline-offset:3px}.browser-import-actions code{font-size:.84em}
@media(max-width:620px){.browser-import-actions>.button{width:100%;justify-self:stretch}.browser-import-progress{max-width:none}.import-diagnostics article{padding:.85rem}.import-review-card{padding-inline:.9rem}.import-summary{gap:.8rem}.import-summary dl{margin-top:.55rem}.import-message{font-size:.78rem}}

/* v1.5.2 — Estrutura inteligente de capítulos e exclusão segura */
.structure-warning{display:grid;gap:.25rem;margin:.9rem 0 1rem;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--brand-2) 44%,var(--line));border-radius:.8rem;background:color-mix(in srgb,var(--brand-2) 7%,var(--surface))}.structure-warning strong{color:var(--brand-2)}.structure-warning span{color:var(--muted);font-size:.8rem;line-height:1.5}.chapter-count-badge{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:.3rem .65rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.75rem;font-weight:800;white-space:nowrap}.chapter-detect-form{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin:0 0 1rem}.chapter-detect-form small{color:var(--muted);line-height:1.45}.chapter-structure-list{display:grid;gap:.65rem}.chapter-structure-item{display:grid;grid-template-columns:78px minmax(0,1fr);gap:.85rem;padding:.9rem;border:1px solid var(--line);border-radius:.8rem;background:var(--paper)}.chapter-structure-index{display:grid;align-content:start;justify-items:start;gap:.3rem}.chapter-structure-index strong{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:color-mix(in srgb,var(--brand) 13%,var(--surface));color:var(--brand);font-size:.78rem}.chapter-structure-index small{color:var(--muted);font-size:.72rem;font-weight:750;line-height:1.35}.chapter-structure-main{display:grid;gap:.65rem;min-width:0}.chapter-title-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem}.chapter-title-form input,.chapter-split-form input,.book-delete-form input{width:100%;min-height:40px;padding:.58rem .7rem;border:1px solid var(--line);border-radius:.6rem;background:var(--surface);color:var(--ink)}.chapter-structure-actions{display:flex;gap:.45rem;flex-wrap:wrap}.chapter-structure-actions form{margin:0}.chapter-split-form{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;gap:.55rem;align-items:end;padding-top:.55rem;border-top:1px dashed var(--line)}.chapter-split-form label{display:grid;gap:.3rem;color:var(--muted);font-size:.73rem;font-weight:800}.chapter-split-form label input{width:120px}.button[disabled]{opacity:.42;cursor:not-allowed}.danger-zone{border-color:color-mix(in srgb,var(--danger) 34%,var(--line));background:color-mix(in srgb,var(--danger) 2%,var(--surface))}.book-delete-form{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:.8rem;align-items:end;margin-top:1rem}.book-delete-form label{display:grid;gap:.4rem;font-size:.8rem;font-weight:800}.button.danger{background:var(--danger);border-color:var(--danger);color:#fff}.button.danger:hover{filter:brightness(.94)}.chapter-review-toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin:.7rem 0}.chapter-review-toolbar small{color:var(--muted)}.chapter-review-list-advanced .chapter-review-item{grid-template-columns:72px minmax(180px,.75fr) minmax(220px,1.1fr);align-items:start}.chapter-review-actions{grid-column:2/4;display:flex;gap:.4rem;flex-wrap:wrap}.chapter-review-split{grid-column:2/4;display:grid;grid-template-columns:auto minmax(160px,1fr) auto;gap:.5rem;align-items:end;padding-top:.45rem;border-top:1px dashed var(--line)}.chapter-review-split label{display:grid;gap:.25rem;color:var(--muted);font-size:.72rem;font-weight:800}.chapter-review-split label input{width:110px}
@media(max-width:820px){.chapter-split-form,.book-delete-form{grid-template-columns:1fr}.chapter-split-form label input{width:100%}.chapter-review-list-advanced .chapter-review-item{grid-template-columns:58px minmax(0,1fr)}.chapter-review-actions,.chapter-review-split{grid-column:2}.chapter-review-split{grid-template-columns:1fr}.chapter-review-split label input{width:100%}}
@media(max-width:620px){.chapter-structure-item{grid-template-columns:1fr}.chapter-structure-index{grid-template-columns:auto auto;align-items:center;justify-content:start}.chapter-title-form{grid-template-columns:1fr}.chapter-title-form .button,.chapter-split-form .button,.book-delete-form .button{width:100%}.chapter-review-list-advanced .chapter-review-item{grid-template-columns:1fr}.chapter-review-actions,.chapter-review-split{grid-column:1}.chapter-review-actions .button{min-width:44px}.chapter-detect-form{display:grid;grid-template-columns:1fr}.chapter-detect-form .button{width:100%}}

/* v1.5.3 — Administração em páginas independentes */
.admin-nav a.active,.admin-nav a[aria-current="page"]{background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);box-shadow:inset 3px 0 0 var(--brand)}
.admin-content>.admin-section{margin-bottom:0}
@media(max-width:820px){.admin-nav a.active,.admin-nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--brand);background:color-mix(in srgb,var(--brand) 14%,transparent)}}

/* v1.6.0 — Leitor avançado */
:root[data-theme="sepia"]{--ink:#3e3327;--muted:#756858;--paper:#f2e7cf;--surface:#f8eed9;--line:#d8c6a6;--brand:#356b5c;--brand-2:#a87835;--danger:#9b4139;--shadow:0 20px 60px rgba(79,57,31,.14);color-scheme:light}
.reader-app[data-reader-font="serif"] .book-content{font-family:Georgia,"Times New Roman",serif}
.reader-app[data-reader-font="sans"] .book-content{font-family:"Nunito Sans",Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.002em}
.reader-app[data-reader-font="sans"] .book-content>h1,.reader-app[data-reader-font="sans"] .book-content .section-anchor{font-family:Georgia,"Times New Roman",serif}
.reader-target{animation:reader-target-flash 2.5s ease}
@keyframes reader-target-flash{0%,35%{background:color-mix(in srgb,var(--brand-2) 30%,transparent);box-shadow:0 0 0 .45rem color-mix(in srgb,var(--brand-2) 12%,transparent)}100%{background:transparent;box-shadow:none}}
.reader-settings-dialog{width:min(520px,calc(100% - 1.25rem))}.reader-settings-form{display:grid;gap:1.15rem}.reader-settings-form fieldset{border:0;padding:0;margin:0}.reader-settings-form legend{font-size:.75rem;text-transform:uppercase;letter-spacing:.09em;font-weight:850;color:var(--muted);margin-bottom:.5rem}.reader-choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.theme-choices{grid-template-columns:repeat(4,1fr)}.reader-choice-grid button{min-height:42px;border:1px solid var(--line);border-radius:.65rem;background:var(--paper);color:var(--ink);font-weight:750;cursor:pointer}.reader-choice-grid button.active{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,var(--surface));color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.reader-range-row{display:grid;gap:.45rem}.reader-range-row>span{display:flex;justify-content:space-between;gap:1rem;font-weight:750}.reader-range-row strong{color:var(--brand);font-size:.82rem}.reader-range-row input[type=range]{width:100%;accent-color:var(--brand)}.note-dialog-actions{align-items:center;flex-wrap:wrap}.dialog-spacer{flex:1}.button.danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,var(--line))}
.notes-section{margin-top:2.5rem}.notes-section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.notes-section-head h2{margin:0}.annotation-actions{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:1rem}.annotation-actions .button{min-height:36px;padding:.45rem .7rem;font-size:.78rem}.highlight-list{display:grid;gap:.7rem}.highlight-card{padding:1rem 1.1rem;border:1px solid var(--line);border-radius:.8rem;background:var(--surface)}.highlight-card blockquote{margin:.65rem 0;font-family:Georgia,serif;color:var(--muted)}.highlight-card .annotation-meta{margin-bottom:.2rem}.bookmark-item{display:flex!important;align-items:center;gap:.7rem}.bookmark-item>a{display:grid;flex:1;text-decoration:none}.bookmark-item .icon-button{flex:0 0 auto;width:38px;height:38px;color:var(--danger)}
@media(max-width:760px){.theme-choices{grid-template-columns:repeat(2,1fr)}.reader-settings-dialog{margin:auto .6rem}.reader-range-row:last-of-type{display:none}.note-dialog-actions{display:grid;grid-template-columns:1fr 1fr}.note-dialog-actions .dialog-spacer{display:none}.note-dialog-actions .button{width:100%}.annotation-actions{display:grid;grid-template-columns:1fr 1fr}.annotation-actions .button{width:100%}}
@media print{.reader-settings-dialog{display:none!important}}
.highlight-color-edit{display:flex;align-items:center;justify-content:space-between;gap:1rem}.highlight-color-edit>span{font-weight:750}.highlight-color-edit>div{display:flex;gap:.25rem}.highlight-color-edit button{width:36px;height:36px;border:1px solid transparent;border-radius:50%;background:transparent;cursor:pointer;font-size:1.45rem;line-height:1}.highlight-color-edit button[data-edit-highlight-color="yellow"]{color:#d8b928}.highlight-color-edit button[data-edit-highlight-color="green"]{color:#55a56d}.highlight-color-edit button[data-edit-highlight-color="blue"]{color:#4d9fc7}.highlight-color-edit button[data-edit-highlight-color="pink"]{color:#ce6488}.highlight-color-edit button.active{border-color:currentColor;background:color-mix(in srgb,currentColor 10%,transparent)}
@media(max-width:430px){#font-down,#font-up{display:none}.reader-tools .tool-button{min-width:36px}.reader-title strong{font-size:.82rem}}
[data-note-body]{white-space:pre-line}.bookmark-item{border:1px solid var(--line);border-radius:.85rem;background:var(--surface);overflow:hidden}.bookmark-item>a{background:transparent!important;border:0!important;border-radius:0!important;padding:.9rem!important}.bookmark-item .icon-button{margin-right:.15rem}

/* v1.6.1 — login simplificado */

/* v2.0.0 — hábitos, coleções, acessibilidade e leitura offline */
.reading-overview{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(90px,.55fr));gap:1rem;align-items:center;margin:1.5rem 0;padding:1.25rem;border:1px solid var(--border);border-radius:22px;background:var(--surface)}
.reading-overview h2{margin:.2rem 0}.reading-stat{display:grid;text-align:center}.reading-stat strong{font-size:1.65rem;color:var(--brand)}.reading-stat span,.weekly-goal span{font-size:.82rem;color:var(--muted)}
.weekly-goal{grid-column:1/-2;display:grid;gap:.4rem}.weekly-goal progress{width:100%;height:.7rem}.inline-settings{display:flex;gap:.75rem;align-items:end;flex-wrap:wrap;padding-top:.75rem}.inline-settings label{display:grid;gap:.3rem}
.library-tools{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,.3fr) auto;gap:.75rem;align-items:end;margin:1rem 0}.library-tools label,.notes-toolbar label{display:grid;gap:.35rem}.collection-bar,.notes-toolbar{display:flex;gap:.6rem;align-items:end;flex-wrap:wrap;margin:1rem 0}.collection-bar form{display:flex;gap:.4rem}.collection-chip,.book-collections{padding:.3rem .65rem;border-radius:999px;background:var(--surface-strong);font-size:.78rem;color:var(--muted)}
.book-cover-fallback{aspect-ratio:2/3;display:grid;place-items:center;background:linear-gradient(145deg,var(--brand),#0d8975);color:#fff;font-size:4rem;font-family:Georgia,serif}.audit-list{display:grid;gap:.5rem}.audit-list>div{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--border)}.audit-list span{color:var(--muted);font-size:.85rem}
.reader-app[data-reader-font="dyslexic"] .book-content,.reader-app[data-reader-font="dyslexic"] .book-content *{font-family:Verdana,Tahoma,sans-serif!important;letter-spacing:.035em;word-spacing:.08em}
.offline-shell{max-width:1100px;margin:0 auto;padding:clamp(1rem,4vw,3rem)}#offline-chapters{display:flex;gap:.5rem;overflow:auto;padding:.8rem 0}#offline-chapters button{white-space:nowrap;border:1px solid var(--border);border-radius:999px;padding:.55rem .8rem;background:var(--surface)}#offline-chapters button.active{background:var(--brand);color:#fff}.offline-shell .reader-content{max-width:760px;margin:2rem auto;font:1.12rem/1.8 Georgia,serif}
html[data-reduce-motion="true"] *,html[data-reduce-motion="true"] *::before,html[data-reduce-motion="true"] *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
@media(max-width:760px){.reading-overview{grid-template-columns:repeat(3,1fr)}.reading-overview>div:first-child{grid-column:1/-1}.weekly-goal{grid-column:1/-1}.reading-overview details{grid-column:1/-1}.library-tools{grid-template-columns:1fr}.notes-toolbar{align-items:stretch}.notes-toolbar>*{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
.simple-login-page{min-height:100svh;display:grid;place-items:center;padding:clamp(1.25rem,5vw,3rem);background:var(--paper)}
.simple-login-card{width:min(100%,390px);display:grid;justify-items:center;padding:clamp(1.5rem,6vw,2.5rem);border:1px solid var(--line);border-radius:1.2rem;background:var(--surface);box-shadow:var(--shadow)}
.simple-login-logo{display:block;width:auto;height:94px;object-fit:contain;margin:0 auto 1rem}.simple-login-logo-full{width:min(100%,320px);height:auto;max-height:none;margin-bottom:1.35rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.simple-login-card h1{margin:0 0 1.6rem;text-align:center;font:700 clamp(1.75rem,7vw,2.25rem)/1.05 Georgia,serif;color:var(--ink)}
.simple-login-form{width:100%;display:grid;gap:.55rem;margin:0}
.simple-login-form label{margin-top:.55rem;font-size:.82rem;font-weight:800;color:var(--ink)}
.simple-login-form input{width:100%;min-height:48px;padding:.7rem .85rem;border:1px solid var(--line);border-radius:.65rem;background:var(--paper);color:var(--ink);font:inherit}
.simple-login-form input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 14%,transparent)}
.simple-login-form .button{margin-top:.9rem;min-height:48px}
.simple-login-error{width:100%;margin:-.5rem 0 1rem;padding:.7rem .8rem;border-radius:.6rem;background:color-mix(in srgb,var(--danger) 9%,var(--surface));color:var(--danger);font-size:.82rem;text-align:center}
@media(max-width:430px){.simple-login-page{padding:max(1.25rem,env(safe-area-inset-top)) 1rem max(1.25rem,env(safe-area-inset-bottom))}.simple-login-card{border:0;box-shadow:none;background:transparent;padding:1rem .5rem}.simple-login-logo{height:84px}.simple-login-logo-full{width:min(100%,280px)}.simple-login-card h1{margin-bottom:1.35rem}}

/* v2.0.3 — logo adaptativa por tema */
.brand-logo .brand-logo-green{display:block}
.brand-logo .brand-logo-white{display:none}
:root[data-theme="dark"] .brand-logo .brand-logo-green{display:none}
:root[data-theme="dark"] .brand-logo .brand-logo-white{display:block}
:root[data-theme="light"] .brand-logo .brand-logo-green,:root[data-theme="sepia"] .brand-logo .brand-logo-green{display:block}
:root[data-theme="light"] .brand-logo .brand-logo-white,:root[data-theme="sepia"] .brand-logo .brand-logo-white{display:none}
@media(prefers-color-scheme:dark){:root[data-theme="system"] .brand-logo .brand-logo-green{display:none}:root[data-theme="system"] .brand-logo .brand-logo-white{display:block}}
@media(prefers-color-scheme:light){:root[data-theme="system"] .brand-logo .brand-logo-green{display:block}:root[data-theme="system"] .brand-logo .brand-logo-white{display:none}}
