/* Portal Instituto Daia – Grupo Família Amorim */
:root{
  --navy:#0B1F4D;--navy2:#132B63;--gold:#E8A33D;--gold2:#C98522;--royal:#1E63E9;--lime:#6BD33A;
  --bg:#F6F4EF;--card:#FFFFFF;--text:#0F1C3A;--muted:#5C6884;--line:#E3DFD5;--soft:#FBFAF6;
  --radius:18px;--shadow:0 10px 30px rgba(11,31,77,.08);--max:1240px;
  --c-curso:#1E63E9;--c-projeto:#12A150;--c-plataforma:#7B3FE4;--c-trabalho:#D9822B;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0A142E;--card:#111F45;--text:#EEF2FB;--muted:#A9B5D1;--line:#22356A;--soft:#0E1A3B;--shadow:0 10px 30px rgba(0,0,0,.35)}}
:root[data-theme="dark"]{--bg:#0A142E;--card:#111F45;--text:#EEF2FB;--muted:#A9B5D1;--line:#22356A;--soft:#0E1A3B;--shadow:0 10px 30px rgba(0,0,0,.35)}
*{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth}
@media (min-width:1600px){html{font-size:18px}}
@media (min-width:2200px){html{font-size:22px}}
body{font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh;-webkit-tap-highlight-color:transparent;overflow-x:hidden}
h1,h2,h3,h4,.brand{font-family:Montserrat,Inter,sans-serif;line-height:1.2}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}
@media (min-width:760px){.wrap{padding:0 28px}}
svg{flex-shrink:0}

/* botões e formulários */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:12px 22px;font-weight:700;cursor:pointer;font-family:Montserrat,sans-serif;font-size:.95rem;transition:transform .1s,filter .15s,background .15s;text-align:center;white-space:nowrap}
.btn:active{transform:scale(.97)}
.btn:hover{filter:brightness(1.06)}
.btn-gold{background:var(--gold);color:#1B1405}
.btn-navy{background:var(--navy);color:#fff}
.btn-white{background:#fff;color:var(--navy)}
.btn-ghost{background:transparent;border:2px solid currentColor}
.btn-line{background:transparent;border:1.5px solid var(--line);color:var(--text)}
.btn-danger{background:#E5484D;color:#fff}
.btn-green{background:#25D366;color:#063B1C}
.btn-sm{padding:8px 14px;font-size:.82rem}
.btn-block{width:100%}
.btn[disabled]{opacity:.55;pointer-events:none}
label{display:block;font-weight:600;font-size:.9rem;margin:14px 0 6px}
.input{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--card);font-size:1rem}
.input:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px rgba(232,163,61,.22)}
textarea.input{min-height:110px;resize:vertical;line-height:1.55}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.9rem}
.check input{margin-top:4px;width:18px;height:18px;accent-color:var(--gold2)}
.help{font-size:.84rem;color:var(--muted);margin-top:6px}
.err{color:#E5484D;font-size:.9rem;margin-top:10px;font-weight:600}
.ok{color:#12A150;font-size:.9rem;margin-top:10px;font-weight:600}
.grid2{display:grid;gap:0 16px}
@media (min-width:700px){.grid2{grid-template-columns:1fr 1fr}}

/* cabeçalho */
.top{position:sticky;top:0;z-index:40;background:rgba(11,31,77,.97);backdrop-filter:blur(8px);color:#fff;padding-top:env(safe-area-inset-top)}
.top .wrap{display:flex;align-items:center;gap:14px;height:68px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.2px;min-width:0}
.seal{width:42px;height:42px;border-radius:50%;border:2px solid var(--gold);display:grid;place-items:center;background:#ECEAE3;flex-shrink:0;overflow:hidden}.seal img{width:30px;height:30px}
.brand b{display:block;font-size:1.02rem;white-space:nowrap}
.brand>span{min-width:0}
.brand small{display:block;font-family:Inter,sans-serif;font-weight:500;font-size:.68rem;color:#C9D3EA;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav{display:none;margin-left:auto;gap:4px;align-items:center}
.nav a{padding:8px 12px;border-radius:999px;font-weight:600;font-size:.92rem;color:#DCE4F5}
.nav a:hover,.nav a.on{background:rgba(255,255,255,.1);color:#fff}
.nav .btn{margin-left:8px}
.burger{margin-left:auto;background:transparent;border:0;color:#fff;padding:8px;cursor:pointer}
@media (min-width:1060px){.nav{display:flex}.burger{display:none}}
.drawer{position:fixed;inset:0;z-index:60;background:rgba(5,12,30,.55);display:flex;justify-content:flex-end}
.drawer nav{background:var(--navy);color:#fff;width:min(320px,86vw);height:100%;padding:22px 18px;padding-top:max(22px,env(safe-area-inset-top));display:flex;flex-direction:column;gap:4px;overflow:auto}
.drawer nav a{padding:13px 12px;border-radius:12px;font-weight:600}
.drawer nav a:hover,.drawer nav a.on{background:rgba(255,255,255,.1)}

/* hero */
.hero{background:radial-gradient(1200px 500px at 85% -10%,rgba(232,163,61,.28),transparent 60%),radial-gradient(900px 500px at -10% 110%,rgba(30,99,233,.35),transparent 60%),var(--navy);color:#fff;overflow:hidden;position:relative}
.hero .wrap{padding-top:64px;padding-bottom:72px;position:relative;z-index:1}
.hero .kicker{display:inline-flex;gap:8px;align-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);padding:6px 14px;border-radius:999px;font-size:.82rem;font-weight:600;color:#F3D9A9}
.hero h1{font-size:clamp(2.1rem,6vw,4rem);font-weight:900;margin:18px 0 6px;letter-spacing:-.5px}
.hero h1 span{color:var(--gold)}
.hero .sub{font-size:clamp(1rem,2.2vw,1.3rem);color:#D6DEEF;font-weight:600}
.hero p.lead{max-width:640px;margin-top:16px;color:#C9D3EA;font-size:1.05rem}
.hero .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero .rings{position:absolute;right:-120px;top:50%;transform:translateY(-50%);width:560px;height:560px;opacity:.5;pointer-events:none}
.hero .rings i{position:absolute;inset:0;border:2px solid rgba(232,163,61,.35);border-radius:50%}
.hero .rings i:nth-child(2){inset:70px;border-color:rgba(255,255,255,.18)}
.hero .rings i:nth-child(3){inset:140px;border-color:rgba(107,211,58,.3)}
.hero .rings i:nth-child(4){inset:210px;background:rgba(232,163,61,.12);border:0}
@media (max-width:760px){.hero .rings{right:-260px;opacity:.3}}
.pagehead{background:var(--navy);color:#fff}
.pagehead .wrap{padding-top:38px;padding-bottom:40px}
.pagehead h1{font-size:clamp(1.7rem,4.5vw,2.6rem);font-weight:900}
.pagehead p{color:#C9D3EA;margin-top:6px;max-width:720px}
.crumb{font-size:.85rem;color:#AFC0E2;margin-bottom:10px;display:inline-flex;gap:6px;align-items:center}
.crumb:hover{color:#fff}

/* seções */
section.sec{padding:56px 0}
section.sec.alt{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sechead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}
.sechead h2{font-size:clamp(1.5rem,3.4vw,2.1rem);font-weight:800}
.sechead p{color:var(--muted);margin-top:4px;max-width:640px}
.eyebrow{font-size:.78rem;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--gold2)}
.more{font-weight:700;color:var(--royal);display:inline-flex;gap:6px;align-items:center}
:root[data-theme="dark"] .more{color:#8DB3FF}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .more{color:#8DB3FF}}

/* destaque INOVA */
.feature{display:grid;gap:0;border-radius:24px;overflow:hidden;background:var(--card);box-shadow:var(--shadow);border:1px solid var(--line)}
@media (min-width:860px){.feature{grid-template-columns:1.1fr 1fr}}
.feature .art{background:linear-gradient(135deg,#0B1F4D,#1E63E9);color:#fff;padding:34px;display:flex;flex-direction:column;justify-content:center;gap:10px;min-height:240px;background-size:cover;background-position:center}
.feature .art .big{font-family:Montserrat;font-weight:900;font-size:clamp(2rem,5vw,3.2rem);line-height:1}
.feature .art .big span{color:var(--lime)}
.feature .body{padding:30px}
.feature .body h3{font-size:1.4rem;font-weight:800}
.feature ul{list-style:none;margin:14px 0 20px;display:grid;gap:8px}
.feature li{display:flex;gap:10px;align-items:flex-start}
.feature li svg{color:#12A150;margin-top:3px}

/* cartões */
.cards{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.pcard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s;cursor:pointer;text-align:left}
.pcard:hover,.pcard:focus-visible{transform:translateY(-3px);box-shadow:0 16px 36px rgba(11,31,77,.14)}
.pcard .thumb{aspect-ratio:16/10;background:var(--navy);position:relative;display:grid;place-items:center;color:#fff;overflow:hidden}
.pcard .thumb img{width:100%;height:100%;object-fit:cover}
.pcard .thumb .ph{display:grid;place-items:center;gap:6px;text-align:center;padding:16px;font-family:Montserrat;font-weight:800;font-size:1.05rem;width:100%;height:100%}
.pcard .thumb .ph svg{opacity:.9}
.pcard .play{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(transparent 40%,rgba(0,0,0,.45))}
.pcard .play i{width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--navy);display:grid;place-items:center}
.pcard .bd{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.pcard h3{font-size:1.05rem;font-weight:800}
.pcard p{font-size:.9rem;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tag{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding:4px 10px;border-radius:999px;color:#fff;align-self:flex-start}
.badge{display:inline-block;font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--soft);border:1px solid var(--line);color:var(--muted)}
.badge.gold{background:rgba(232,163,61,.16);color:var(--gold2);border-color:rgba(232,163,61,.4)}
.badge.green{background:rgba(18,161,80,.12);color:#12A150;border-color:rgba(18,161,80,.35)}
.badge.red{background:rgba(229,72,77,.12);color:#E5484D;border-color:rgba(229,72,77,.35)}

/* livros */
.shelf{display:grid;gap:22px 16px;grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}
@media (min-width:900px){.shelf{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}
.bookc{display:flex;flex-direction:column;gap:10px;cursor:pointer;text-align:left;background:none;border:0}
.cover{aspect-ratio:2/3;border-radius:6px 14px 14px 6px;overflow:hidden;box-shadow:0 18px 34px rgba(11,31,77,.25),inset 6px 0 10px rgba(0,0,0,.18);background:linear-gradient(160deg,#132B63,#0B1F4D 60%,#3A2A0A);color:#fff;position:relative;transition:transform .2s}
.bookc:hover .cover,.bookc:focus-visible .cover{transform:translateY(-6px) rotate(-1deg)}
.cover img{width:100%;height:100%;object-fit:cover}
.cover .gen{position:absolute;inset:0;padding:18px 16px;display:flex;flex-direction:column;justify-content:space-between;border-left:6px solid rgba(232,163,61,.8)}
.cover .gen b{font-family:Georgia,'Times New Roman',serif;font-size:1.3rem;line-height:1.15}
.cover .gen small{font-size:.75rem;color:#F3D9A9}
.cover .gen em{font-style:normal;font-size:.78rem;color:#C9D3EA}
.bookc h3{font-size:1rem;font-weight:800}
.bookc .meta{font-size:.84rem;color:var(--muted)}
.price{font-family:Montserrat;font-weight:800;color:var(--gold2)}

/* livro – página */
.bookpage{display:grid;gap:30px;padding:36px 0 50px}
@media (min-width:820px){.bookpage{grid-template-columns:300px 1fr;align-items:start}}
.bookpage .cover{max-width:300px}
.toc{list-style:none;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card)}
.toc li a,.toc li button{display:flex;gap:12px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--line);width:100%;background:none;border-left:0;border-right:0;border-top:0;cursor:pointer;text-align:left}
.toc li:last-child a,.toc li:last-child button{border-bottom:0}
.toc li a:hover,.toc li button:hover{background:var(--soft)}
.toc .n{width:30px;height:30px;border-radius:50%;background:var(--soft);border:1px solid var(--line);display:grid;place-items:center;font-size:.8rem;font-weight:700;flex-shrink:0}
.toc .t{flex:1}
.toc .lk{color:var(--muted)}
.toc li.cur a{background:rgba(232,163,61,.12)}

/* leitor */
.reader{--rbg:#FFFDF8;--rtx:#22242B;--rln:#EFE8DA;background:var(--rbg);color:var(--rtx);min-height:100vh}
.reader.sepia{--rbg:#F4ECD8;--rtx:#3B2F1E;--rln:#E2D6BA}
.reader.dark{--rbg:#111317;--rtx:#E6E2D8;--rln:#24272E}
.rbar{position:sticky;top:0;z-index:30;background:var(--rbg);border-bottom:1px solid var(--rln);padding-top:env(safe-area-inset-top)}
.rbar .in{max-width:900px;margin:0 auto;padding:8px 12px;display:flex;align-items:center;gap:6px}
.rbar .ttl{flex:1;min-width:0;font-weight:700;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 6px}
.rbtn{background:transparent;border:1px solid var(--rln);color:var(--rtx);border-radius:10px;min-width:40px;height:40px;padding:0 10px;display:inline-grid;place-items:center;cursor:pointer;font-weight:700}
.rbtn:hover{background:rgba(127,127,127,.12)}
.rprog{height:3px;background:var(--rln)}.rprog i{display:block;height:100%;background:var(--gold);transition:width .2s}
.page{max-width:720px;margin:0 auto;padding:34px 20px 40px;font-family:Literata,Georgia,serif;font-size:var(--rfs,1.12rem);line-height:1.8}
.page .chn{font-family:Inter,sans-serif;font-size:.8rem;letter-spacing:2px;text-transform:uppercase;color:var(--gold2);font-weight:700}
.page h1{font-family:Literata,Georgia,serif;font-size:1.9em;margin:6px 0 26px;line-height:1.2}
.page h2{font-size:1.35em;margin:28px 0 10px}.page h3{font-size:1.15em;margin:22px 0 8px}.page h4{font-size:1em;margin:18px 0 6px}
.page p{margin:0 0 1.05em;hyphens:auto}
@media (min-width:700px){.page p{text-align:justify}}
.page blockquote{border-left:3px solid var(--gold);padding:4px 0 4px 18px;margin:0 0 1.1em;font-style:italic;opacity:.9}
.page ul{margin:0 0 1.1em 1.3em}
.page hr{border:0;text-align:center;margin:26px 0}.page hr::after{content:'❧';color:var(--gold2);font-size:1.3em}
.page.protect{-webkit-user-select:none;user-select:none}
.rnav{max-width:720px;margin:0 auto;padding:0 20px 60px;display:flex;gap:12px;justify-content:space-between}
.rnav .btn{flex:1}
.reader .btn-line{border-color:var(--rln);color:var(--rtx)}
.paywall{max-width:560px;margin:30px auto;padding:30px 24px;border-radius:20px;border:1px solid var(--rln);text-align:center;font-family:Inter,sans-serif}
.paywall h2{font-family:Montserrat;margin:10px 0 6px}
.side{position:fixed;inset:0;z-index:70;background:rgba(0,0,0,.45);display:flex}
.side .pn{background:var(--card);color:var(--text);width:min(380px,90vw);height:100%;overflow:auto;padding:18px;padding-top:max(18px,env(safe-area-inset-top))}

/* listas, filtros, paginação */
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.chip{border:1.5px solid var(--line);background:var(--card);border-radius:999px;padding:8px 16px;font-weight:700;font-size:.86rem;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.chip.on{background:var(--navy);border-color:var(--navy);color:#fff}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:16px}
.toolbar .input{flex:1;min-width:200px}
.pager{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:30px;flex-wrap:wrap}
.pager .info{color:var(--muted);font-size:.9rem;padding:0 8px}
.gallery{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
@media (min-width:900px){.gallery{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}}
.gitem{position:relative;aspect-ratio:1;border-radius:14px;overflow:hidden;background:var(--soft);border:1px solid var(--line);cursor:zoom-in;padding:0}
.gitem img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.gitem:hover img{transform:scale(1.04)}
.gitem span{position:absolute;left:0;right:0;bottom:0;padding:22px 10px 8px;background:linear-gradient(transparent,rgba(0,0,0,.65));color:#fff;font-size:.82rem;font-weight:600;text-align:left}
.empty{text-align:center;padding:40px 20px;color:var(--muted);background:var(--card);border:1px dashed var(--line);border-radius:var(--radius)}
.empty svg{color:var(--gold2);margin-bottom:8px}
.empty h3{color:var(--text);margin-bottom:4px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}
.spin{width:34px;height:34px;border:3px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:sp 1s linear infinite;margin:30px auto}
@keyframes sp{to{transform:rotate(360deg)}}
.loading{min-height:70vh;display:grid;place-items:center;color:var(--muted);text-align:center}

/* projeto */
.pdetail{display:grid;gap:28px;padding:34px 0 50px}
@media (min-width:900px){.pdetail{grid-template-columns:1.4fr 1fr;align-items:start}}
.media16{aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#000;box-shadow:var(--shadow)}
.media16 iframe,.media16 video,.media16 img{width:100%;height:100%;border:0;object-fit:cover}
.prose{white-space:pre-line;color:var(--text)}

/* sobre / contato */
.about{display:grid;gap:26px}
@media (min-width:860px){.about{grid-template-columns:1fr 1fr;align-items:center}}
.pillars{display:grid;gap:14px;grid-template-columns:1fr 1fr}
.pillar{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}
.pillar svg{color:var(--gold2)}
.pillar b{display:block;margin-top:8px;font-family:Montserrat}
.pillar span{font-size:.86rem;color:var(--muted)}
.contact{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.contact a{display:flex;gap:14px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}
.contact a i{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;color:#fff;flex-shrink:0}
.contact small{display:block;color:var(--muted);font-size:.8rem}

footer.foot{background:#071431;color:#B9C5E0;padding:44px 0 calc(30px + env(safe-area-inset-bottom));font-size:.9rem}
footer .cols{display:grid;gap:26px}
@media (min-width:800px){footer .cols{grid-template-columns:1.4fr 1fr 1fr}}
footer h4{color:#fff;margin-bottom:10px;font-size:.95rem}
footer a{display:block;padding:3px 0}
footer a:hover{color:#fff}
footer .legal{border-top:1px solid rgba(255,255,255,.1);margin-top:30px;padding-top:18px;font-size:.8rem;display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between}

/* auth */
.authw{min-height:calc(100vh - 68px);display:grid;place-items:center;padding:30px 16px}
.authbox{width:100%;max-width:440px}
.authbox h2{font-size:1.6rem;font-weight:800}

/* modal e aviso */
.modal{position:fixed;inset:0;z-index:90;background:rgba(5,12,30,.6);display:grid;place-items:center;padding:16px;overflow:auto}
.modal .box{background:var(--card);color:var(--text);border-radius:20px;padding:22px;width:100%;max-width:560px;max-height:calc(100vh - 32px);overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.modal .box.wide{max-width:980px}
.modal.dark{background:rgba(0,0,0,.9)}
.modal.dark .box{background:transparent;box-shadow:none;padding:0;max-width:1200px}
.lb{display:flex;flex-direction:column;gap:10px;align-items:center;color:#fff}
.lb img{max-height:80vh;width:auto;border-radius:10px}
.lb .x{align-self:flex-end;background:rgba(255,255,255,.15);border:0;color:#fff;border-radius:50%;width:44px;height:44px;cursor:pointer}
.toast{position:fixed;left:50%;bottom:calc(22px + env(safe-area-inset-bottom));transform:translateX(-50%);background:var(--navy);color:#fff;padding:12px 20px;border-radius:14px;z-index:100;max-width:min(92vw,560px);box-shadow:0 10px 30px rgba(0,0,0,.3);font-weight:600;font-size:.92rem}

/* admin */
.abar{background:#071431;color:#fff;padding-top:env(safe-area-inset-top)}
.abar .wrap{display:flex;align-items:center;gap:12px;height:62px}
.atabs{display:flex;gap:8px;overflow:auto;padding:14px 0;scrollbar-width:none}
.atabs .chip{white-space:nowrap}
.stats{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.stat{border-radius:16px;padding:16px;color:#fff}
.stat b{font-size:1.8rem;font-family:Montserrat;display:block}
.stat span{font-size:.85rem;opacity:.92}
.meter{height:8px;border-radius:9px;background:rgba(255,255,255,.25);overflow:hidden;margin-top:8px}.meter i{display:block;height:100%;background:#fff}
.rows{display:grid;gap:10px}
.row{display:flex;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 12px}
.row .mini{width:64px;height:44px;border-radius:8px;object-fit:cover;background:var(--soft);flex-shrink:0;display:grid;place-items:center;color:#fff}
.row .tx{flex:1;min-width:0}
.row .tx b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.row .tx small{color:var(--muted)}
.row .act{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.abar b{white-space:nowrap}
@media (max-width:640px){.row{flex-wrap:wrap}.row .tx{flex:1 1 calc(100% - 80px)}.row .act{width:100%;justify-content:flex-start}.abar .badge{display:none}}
.prev{width:100%;max-height:200px;object-fit:contain;border-radius:12px;background:var(--soft);margin-top:8px}
.editor{min-height:55vh!important;font-family:Literata,Georgia,serif;font-size:1.05rem}
table.t{width:100%;border-collapse:collapse;font-size:.9rem}
table.t th,table.t td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
table.t th{font-size:.76rem;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}
.tscroll{overflow:auto;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:6px 10px}
@media print{.top,.rbar,.rnav,footer{display:none!important}}

/* livro: abertura de parte, imagens */
.partbox{display:grid;justify-items:center;gap:6px;text-align:center;background:#14304f;color:#f4efe2;border-radius:16px;padding:30px 20px 26px;margin:0 0 34px;font-family:Inter,sans-serif;position:relative;overflow:hidden}
.partbox::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:linear-gradient(90deg,#1f4f8f 25%,#1f7a78 25% 50%,#3b9468 50% 75%,#b48c46 75%)}
.partbox img{width:64px;height:64px;border-radius:50%;background:#ECEAE3;padding:6px;outline:2px solid #b48c46;outline-offset:4px;margin-bottom:8px}
.partbox small{font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;color:#d6b06a;font-weight:700}
.partbox b{font-family:Literata,Georgia,serif;font-size:1.6em;line-height:1.15}
.partbox em{color:#b9c3d1;font-family:Literata,Georgia,serif}
.page .fig{margin:6px 0 28px;display:grid;justify-items:center;gap:10px}
.page .fig img{max-width:min(340px,100%);border:7px solid #fff;outline:1px solid var(--gold);box-shadow:0 18px 40px -24px rgba(10,25,45,.5)}
.page .fig figcaption{font-style:italic;text-align:center;color:var(--gold2);font-size:1.05em}
.page .imgrow{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:10px 0 22px}
.page .imgrow img{width:min(150px,42%);border-radius:8px}
.aboutimgs{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center}
.aboutimgs>img{border-radius:16px;box-shadow:var(--shadow)}
.aboutimgs figure{display:grid;gap:8px;text-align:center;font-size:.85rem;font-weight:600}
.aboutimgs figure img{border-radius:16px;aspect-ratio:3/4;object-fit:cover;object-position:top;box-shadow:var(--shadow)}
.aboutimgs small{color:var(--muted);font-weight:500}
