@font-face{font-family:"Editorial Today";src:url(/marca/fonte/EditorialToday-Regular.otf) format("opentype");font-weight:400;font-display:swap}
@font-face{font-family:"Editorial Today";src:url(/marca/fonte/EditorialToday-Italic.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Lenia Sans";src:url(/marca/fonte/LeniaSans-Regular.ttf) format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Lenia Sans";src:url(/marca/fonte/LeniaSans-Medium.ttf) format("truetype");font-weight:500;font-display:swap}
@font-face{font-family:"Lenia Sans";src:url(/marca/fonte/LeniaSans-SemiBold.ttf) format("truetype");font-weight:600;font-display:swap}
@font-face{font-family:"Lenia Sans";src:url(/marca/fonte/LeniaSans-Bold.ttf) format("truetype");font-weight:700;font-display:swap}
@font-face{font-family:"Mr Dafoe";src:url(/marca/fonte/MrDafoe-Regular.ttf) format("truetype");font-display:swap}

:root{
  --navy:#16264F; --navy2:#22356a; --laranja:#F4632A; --laranja2:#FB9142; --off:#FCF4ED; --azul:#0857C3; --azul2:#89ABE3;
  --verde:#004C45; --ink:#16264F; --muted:#5f6680; --line:#eadfd3; --card:#ffffff; --bg:#FCF4ED; --soft:#f6ece2;
  --ok:#1d7a4f; --warn:#a86a0c; --bad:#b42318;
  --serif:"Editorial Today",Georgia,"Times New Roman",serif;
  --sans:"Lenia Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --script:"Mr Dafoe","Brush Script MT",cursive;
  --r:16px; --sh:0 2px 14px rgba(22,38,79,.07);
  color-scheme:light;
}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer}
img{max-width:100%;display:block}
a{color:var(--laranja)}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--laranja);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- moldura ---------- */
.app{min-height:100%;display:flex;flex-direction:column}
.top{background:var(--navy);color:#fff;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:0;z-index:20;overflow:hidden}
.top::after{content:"";position:absolute;right:-60px;top:-90px;width:200px;height:200px;border-radius:50%;background:var(--laranja);opacity:.13;pointer-events:none}
.top .logo{height:34px;width:auto;position:relative;z-index:1}
.top .dir{display:flex;align-items:center;gap:10px;position:relative;z-index:1}
.unit{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:#b9c3e6;text-align:right;line-height:1.3}
.unit b{display:block;color:#fff;letter-spacing:0;text-transform:none;font-size:13px;font-weight:700}
.iconbtn{width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#fff;display:grid;place-items:center;position:relative}
.iconbtn svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.badge{position:absolute;top:-2px;right:-2px;background:var(--laranja);color:#fff;font-size:10px;font-weight:800;min-width:17px;height:17px;border-radius:9px;display:grid;place-items:center;padding:0 4px}
.corpo{flex:1;display:flex;width:100%;max-width:1240px;margin:0 auto}
main{flex:1;min-width:0;padding:18px 16px 110px}
.screen{display:flex;flex-direction:column;gap:16px;max-width:620px;margin:0 auto}
.screen.largo{max-width:1040px}

nav.tabs{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid var(--line);padding:6px 4px calc(8px + env(safe-area-inset-bottom,0px));z-index:30}
nav.tabs button{border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10.5px;font-weight:700;color:#8a8fa6;padding:4px 0;position:relative}
nav.tabs svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
nav.tabs button[aria-current="page"]{color:var(--laranja)}
nav.tabs .fab{width:48px;height:48px;border-radius:50%;background:var(--laranja);color:#fff;display:grid;place-items:center;margin-top:-22px;box-shadow:0 6px 16px rgba(244,99,42,.4)}
nav.tabs button[aria-current="page"] .fab{background:var(--navy);box-shadow:0 6px 16px rgba(22,38,79,.35)}
nav.tabs .badge{top:0;right:calc(50% - 22px)}
.side{display:none}
@media (min-width:960px){
  nav.tabs{display:none}
  main{padding:26px 28px 60px}
  .side{display:flex;flex-direction:column;gap:4px;width:232px;flex-shrink:0;padding:22px 12px;position:sticky;top:58px;height:calc(100vh - 58px)}
  .side button{display:flex;align-items:center;gap:12px;border:0;background:none;padding:11px 14px;border-radius:12px;font-weight:700;color:var(--muted);text-align:left;position:relative}
  .side button svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .side button[aria-current="page"]{background:#fff;color:var(--navy);box-shadow:var(--sh)}
  .side button[aria-current="page"] svg{color:var(--laranja)}
  .side .badge{position:static;margin-left:auto}
  .side hr{border:0;border-top:1px solid var(--line);margin:10px 8px}
}

/* ---------- tipografia ---------- */
h1,h2,h3,h4{margin:0;text-wrap:balance}
.h-display{font-family:var(--serif);font-weight:400;font-size:34px;line-height:1.04;color:var(--navy)}
.h-display em{font-style:italic;color:var(--laranja)}
.h2{font-family:var(--serif);font-size:24px;font-weight:400;color:var(--navy);line-height:1.1}
.h2 em{font-style:italic;color:var(--laranja)}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--laranja);margin:0}
.sub{color:var(--muted);font-size:14px;margin:0}
.mini{font-size:12px;color:var(--muted)}
.row{display:flex;gap:10px;align-items:center}
.wrap{flex-wrap:wrap}
.between{justify-content:space-between}
.grow{flex:1;min-width:0}
.secthead{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.secthead button,.link{font-size:13px;font-weight:700;color:var(--laranja);background:none;border:0;padding:0}

/* ---------- blocos ---------- */
.card{background:var(--card);border-radius:var(--r);padding:16px;box-shadow:var(--sh)}
.card.navy{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.card.navy::after{content:"";position:absolute;right:-50px;bottom:-80px;width:190px;height:190px;border-radius:50%;background:var(--laranja);opacity:.12;pointer-events:none}
.card.navy .sub,.card.navy .mini{color:#c3cbe6}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap;background:#f1ebe4;color:var(--navy)}
.pill.ok{background:#e0f1e8;color:var(--ok)}.pill.warn{background:#fbefd6;color:#7a4d05}.pill.bad{background:#fde4e1;color:var(--bad)}
.pill.info{background:#e4ebfa;color:var(--azul)}.pill.lar{background:#fde7dd;color:#b2410f}
.dot{width:7px;height:7px;border-radius:50%;background:currentColor}
.btn{border:0;border-radius:12px;padding:13px 16px;font-weight:700;font-size:14.5px;background:var(--laranja);color:#fff;width:100%;transition:transform .12s,opacity .2s;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}
.btn:active{transform:scale(.98)}
.btn[disabled]{opacity:.55;cursor:default}
.btn.ghost{background:transparent;color:var(--navy);border:1.5px solid var(--line)}
.btn.navy{background:var(--navy)}
.btn.verde{background:var(--verde)}
.btn.perigo{background:transparent;color:var(--bad);border:1.5px solid #f2c9c3}
.btn.sm{width:auto;padding:9px 13px;font-size:13px;border-radius:10px}
.btns{display:flex;flex-direction:column;gap:8px}
.alert{border-left:3px solid var(--warn);background:#fff6e6;border-radius:12px;padding:12px 14px;font-size:14px}
.alert b{color:#7a4d05}
.alert.ajuste{border-color:var(--laranja);background:#fff0e8}
.alert.ajuste b{color:#b2410f}
.example{font-size:11.5px;color:var(--muted);text-align:center}
.empty{padding:22px;text-align:center;color:var(--muted);font-size:14px;background:#fff;border-radius:var(--r);box-shadow:var(--sh)}
.skeleton{background:linear-gradient(90deg,#f2e9df 25%,#f8f1ea 50%,#f2e9df 75%);background-size:200% 100%;animation:sk 1.3s infinite;border-radius:12px}
@keyframes sk{to{background-position:-200% 0}}

/* ---------- início ---------- */
.score{display:flex;align-items:center;gap:16px;position:relative;z-index:1}
.ring{--p:0;width:80px;height:80px;border-radius:50%;background:conic-gradient(var(--laranja) calc(var(--p)*1%),rgba(255,255,255,.14) 0);display:grid;place-items:center;flex-shrink:0}
.ring span{width:64px;height:64px;border-radius:50%;background:var(--navy);display:grid;place-items:center;font-family:var(--serif);font-size:29px;line-height:1;font-variant-numeric:tabular-nums}
.ring.sm{width:46px;height:46px}.ring.sm span{width:36px;height:36px;font-size:16px}
.ring.claro span{background:#fff;color:var(--navy)}
.ring.claro{background:conic-gradient(var(--laranja) calc(var(--p)*1%),#f1e6db 0)}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;position:relative;z-index:1}
.metric{background:rgba(255,255,255,.08);border-radius:10px;padding:9px 10px}
.metric b{display:block;font-size:18px;font-variant-numeric:tabular-nums}
.metric small{font-size:11px;color:#c3cbe6;line-height:1.2;display:block}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tile{background:#fff;border-radius:var(--r);padding:14px;box-shadow:var(--sh);border:0;text-align:left;display:flex;flex-direction:column;gap:6px}
.tile .tag{font-family:var(--serif);font-size:26px;line-height:1;color:var(--laranja)}
.tile b{font-size:14px;color:var(--navy);line-height:1.25}
.tile small{color:var(--muted);font-size:12px}
.feed{display:flex;flex-direction:column;gap:10px}
.task{display:flex;gap:12px;align-items:center;background:var(--card);border-radius:var(--r);padding:10px;box-shadow:var(--sh);border:0;text-align:left;width:100%}
.thumb{width:62px;height:62px;border-radius:10px;flex-shrink:0;background:var(--soft) center/cover no-repeat;position:relative;overflow:hidden}
.thumb.alto{height:78px}
.thumb .play{position:absolute;inset:0;display:grid;place-items:center;color:#fff}
.task .meta{flex:1;min-width:0}
.task h3{font-size:14px;font-weight:700;line-height:1.3;color:var(--navy)}
.task p{margin:2px 0 0;font-size:12.5px;color:var(--muted)}
.unitrow{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.unitrow:last-child{border-bottom:0}

/* ---------- criar ---------- */
.seg{display:flex;background:#efe4d8;border-radius:12px;padding:4px;gap:4px}
.seg button{flex:1;border:0;background:transparent;border-radius:9px;padding:8px 6px;font-size:13px;font-weight:700;color:var(--muted)}
.seg button[aria-pressed="true"]{background:#fff;color:var(--navy);box-shadow:0 1px 4px rgba(22,38,79,.12)}
.modelos{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media (min-width:700px){.modelos{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1100px){.modelos{grid-template-columns:repeat(4,1fr)}}
.mod{border:0;padding:0;background:#fff;border-radius:16px;overflow:hidden;text-align:left;box-shadow:var(--sh);display:flex;flex-direction:column}
.mod .art{aspect-ratio:4/5;background:var(--navy) center/cover no-repeat;position:relative}
.mod .art.video{background:linear-gradient(160deg,var(--navy),#2c3f7a)}
.mod .art .vic{position:absolute;inset:0;display:grid;place-items:center;color:#fff}
.mod .art .vic svg{width:44px;height:44px;stroke:#fff;fill:none;stroke-width:1.6}
.mod .lbl{padding:10px 12px 12px}
.mod .lbl b{display:block;font-size:13.5px;color:var(--navy);line-height:1.25}
.mod .lbl small{font-size:11.5px;color:var(--muted);display:block;margin-top:2px}
.editor{display:flex;flex-direction:column;gap:16px}
@media (min-width:960px){.editor{display:grid;grid-template-columns:minmax(300px,420px) 1fr;gap:24px;align-items:start}.editor .stagecol{position:sticky;top:80px}}
.stagecol{display:flex;flex-direction:column;gap:10px}
.stage{display:flex;justify-content:center;position:relative}
.stage img{width:100%;max-width:340px;border-radius:12px;box-shadow:0 12px 32px rgba(22,38,79,.22);background:var(--soft)}
.stage.story img{max-width:250px}
.stage.cartaz img{max-width:280px}
.stage .carregando{position:absolute;top:10px;right:calc(50% - 160px);background:rgba(255,255,255,.92);color:var(--navy);font-size:11px;font-weight:700;padding:4px 9px;border-radius:999px}
.legend{display:flex;gap:14px;justify-content:center;font-size:12px;color:var(--muted)}
.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:5px;vertical-align:-2px}
.campos{display:flex;flex-direction:column;gap:12px}
.field{display:flex;flex-direction:column;gap:6px}
.field label,.flabel{font-size:12.5px;font-weight:700;color:var(--navy);display:flex;justify-content:space-between;gap:8px}
.field label span{font-weight:500;color:var(--muted)}
.field input,.field textarea,.field select,input.in,select.in,textarea.in{border:1.5px solid var(--line);background:#fff;border-radius:11px;padding:11px 12px;width:100%;min-width:0}
.field.edit input,.field.edit textarea,.field.edit select{border-color:#bfe3cf;background:#f6fcf8}
.field input:focus,.field textarea:focus,.field select:focus,input.in:focus,textarea.in:focus{border-color:var(--azul);outline:none;background:#fff}
.field textarea{min-height:84px;resize:vertical}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.locked{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;color:var(--muted);background:#f3ece4;border-radius:11px;padding:10px 12px}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:6px 11px;font-size:12.5px;font-weight:600;color:var(--navy)}
.chip s{text-decoration-color:var(--azul);text-decoration-thickness:2px;color:var(--muted)}
.chip i{font-family:var(--script);font-style:normal;color:var(--laranja);font-size:1.2em}
.fotos{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.fotos button{aspect-ratio:1;border-radius:10px;border:2.5px solid transparent;background:var(--soft) center/cover no-repeat;padding:0;position:relative}
.fotos button[aria-pressed="true"]{border-color:var(--laranja)}
.fotos button .leg{position:absolute;left:3px;bottom:3px;font-size:9px;font-weight:800;background:var(--bad);color:#fff;border-radius:4px;padding:1px 4px}
.fotos .add{display:grid;place-items:center;border:2px dashed var(--line);background:#fff;color:var(--muted);font-size:11px;font-weight:700;text-align:center;line-height:1.2}
.checks{display:flex;flex-direction:column;gap:9px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:13.5px}
.check .ic{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:12px;font-weight:800;color:#fff}
.check.ok .ic{background:var(--ok)}.check.warn .ic{background:#c98a12}.check.bad .ic{background:var(--bad)}
.check p{margin:0;font-weight:600}
.check small{display:block;color:var(--muted);font-size:12.5px;font-weight:400}
.check .usar{margin-top:4px}
.nota{font-family:var(--serif);font-size:30px;line-height:1;color:var(--navy)}
.sugleg{background:var(--soft);border-radius:11px;padding:10px 12px;font-size:13.5px;white-space:pre-wrap}
.range{width:100%;accent-color:var(--laranja)}
.chk{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:var(--ink)}
.chk input{margin-top:3px;accent-color:var(--laranja);width:17px;height:17px;flex-shrink:0}

/* vídeo */
.vtpl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.vtpl button{border:2px solid transparent;border-radius:12px;padding:10px;background:var(--navy);text-align:left;color:#fff;min-height:96px;display:flex;flex-direction:column;justify-content:flex-end}
.vtpl button[aria-pressed="true"]{border-color:var(--laranja);background:#22356a}
.vtpl b{font-size:13px;line-height:1.2}.vtpl small{font-size:11px;color:#c3cbe6}
.timeline{display:flex;gap:4px;height:46px}
.timeline div{border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;padding:0 4px;text-align:center;line-height:1.1}
.tl-lock{background:var(--navy);color:#fff}
.tl-free{background:#fff;border:2px dashed var(--laranja);color:#b2410f}
.drop{border:2px dashed #dccfc1;border-radius:var(--r);padding:22px;text-align:center;color:var(--muted);font-size:14px;background:#fff;display:block;cursor:pointer}
.drop b{color:var(--navy);display:block;margin-bottom:2px}
.progress{height:9px;background:#efe4d8;border-radius:99px;overflow:hidden}
.progress i{display:block;height:100%;width:0;background:var(--laranja);transition:width .4s}
.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;font-size:13.5px}
.steps li{display:flex;gap:8px;align-items:center;color:var(--muted)}
.steps li.done{color:var(--ink)}
.steps li.atual{color:var(--navy);font-weight:700}
.steps li::before{content:"";width:14px;height:14px;border-radius:50%;border:2px solid #dccfc1;flex-shrink:0}
.steps li.done::before{background:var(--ok);border-color:var(--ok)}
.steps li.atual::before{border-color:var(--laranja);border-top-color:transparent;animation:gira .8s linear infinite}
@keyframes gira{to{transform:rotate(360deg)}}
video.player{width:100%;max-width:300px;border-radius:14px;background:#000;margin:0 auto;display:block;box-shadow:0 12px 32px rgba(22,38,79,.22)}

/* ---------- cérebro ---------- */
.chat{display:flex;flex-direction:column;gap:9px;max-height:56vh;overflow-y:auto;padding:2px}
.msg{max-width:90%;padding:10px 13px;border-radius:15px;font-size:14px;line-height:1.5}
.msg.me{align-self:flex-end;background:var(--navy);color:#fff;border-bottom-right-radius:4px;white-space:pre-wrap}
.msg.ai{align-self:flex-start;background:#fff;border-bottom-left-radius:4px;box-shadow:0 1px 6px rgba(22,38,79,.08)}
.msg.ai p{margin:0 0 7px}.msg.ai p:last-child{margin:0}
.msg.ai ul{margin:4px 0 7px;padding-left:18px}
.msg.ai strong{color:#b2410f}
.msg.pensando{color:var(--muted);font-style:italic}
.ask{display:flex;gap:8px}
.ask textarea{flex:1;min-width:0;border:1.5px solid var(--line);border-radius:12px;padding:11px 12px;background:#fff;resize:none;height:46px;max-height:140px}
.vocab{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.vocab div{background:#fff;border-radius:12px;padding:12px;font-size:13px;box-shadow:var(--sh)}
.vocab h4{margin:0 0 6px;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.vocab .yes h4{color:var(--ok)}.vocab .no h4{color:var(--bad)}
.vocab ul{margin:0;padding-left:16px}
.vocab .no li{text-decoration:line-through;text-decoration-color:var(--bad);color:var(--muted)}
.personas{display:flex;flex-direction:column;gap:10px}
.persona{display:flex;gap:11px;align-items:flex-start;background:#fff;border-radius:12px;padding:12px;box-shadow:var(--sh)}
.av{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;font-family:var(--serif);font-size:20px;color:#fff}
.persona p{margin:3px 0 0;font-size:13.5px}
.persona .who{font-size:12.5px;font-weight:700}
.persona .who small{font-weight:500;color:var(--muted)}

/* ---------- desempenho ---------- */
.bars{display:flex;flex-direction:column;gap:10px}
.bar{display:grid;grid-template-columns:minmax(110px,170px) 1fr 44px;gap:10px;align-items:center;font-size:13px}
.bar .track{height:12px;background:#efe4d8;border-radius:99px;overflow:hidden}
.bar .track i{display:block;height:100%;background:var(--azul2);border-radius:99px}
.bar.lider .track i{background:var(--laranja)}
.bar.lider span{font-weight:700;color:var(--navy)}
.bar b{text-align:right;font-variant-numeric:tabular-nums}
.qrow{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:13.5px;padding:10px 0;border-bottom:1px solid var(--line)}
.qrow:last-child{border-bottom:0}
.qrow small{display:block;color:var(--muted);font-size:12px}

/* ---------- kit ---------- */
.kithero{position:relative;overflow:hidden;border-radius:18px;background:var(--navy);color:#fff;padding:18px 16px 16px;min-height:220px}
.kithero::after{content:"";position:absolute;left:-50px;bottom:-70px;width:180px;height:180px;border-radius:50%;background:var(--laranja);opacity:.16}
.kithero .txt{position:relative;z-index:3;max-width:58%}
.kithero h2{font-family:var(--serif);font-weight:400;font-size:29px;line-height:1;margin:6px 0 8px}
.kithero h2 em{color:#ffb39c}
.kithero p{margin:0 0 12px;font-size:13px;color:#c9d1ee}
.stack{position:absolute;right:8px;top:22px;width:40%;height:190px;z-index:2}
.stack img{position:absolute;border-radius:7px;box-shadow:0 10px 24px rgba(0,0,0,.35);width:58%}
.stack img:nth-child(1){left:0;top:24px;transform:rotate(-8deg)}
.stack img:nth-child(2){right:0;top:0;transform:rotate(7deg)}
.stack img:nth-child(3){left:28%;top:90px;transform:rotate(3deg)}
.search{display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:0 12px}
.search input{border:0;outline:none;padding:11px 0;flex:1;min-width:0;background:transparent}
.search svg{width:18px;height:18px;stroke:var(--muted);fill:none;stroke-width:2}
.rail{display:flex;gap:12px;overflow-x:auto;margin:0 -16px;padding:4px 16px 8px;scroll-snap-type:x mandatory;scrollbar-width:none}
.rail::-webkit-scrollbar{display:none}
.nov{width:140px;flex-shrink:0;scroll-snap-align:start;display:flex;flex-direction:column;gap:7px;background:none;border:0;padding:0;text-align:left}
.nov .im{height:170px;border-radius:14px;background:#ebe0d4 center/cover no-repeat;position:relative}
.nov b{font-size:12.5px;line-height:1.25;color:var(--navy)}
.cats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (min-width:700px){.cats{grid-template-columns:repeat(4,1fr)}}
.cat{border:0;padding:0;background:#fff;border-radius:16px;overflow:hidden;text-align:left;box-shadow:var(--sh);display:flex;flex-direction:column}
.cat .art{height:84px;background:linear-gradient(150deg,#ffe3d6,#ffc9b3) center/cover no-repeat}
.cat .lbl{padding:10px 12px 12px}
.cat .lbl b{display:block;font-size:13.5px;color:var(--navy);line-height:1.2}
.cat .lbl small{font-size:11.5px;color:var(--muted)}
.cat[aria-pressed="true"]{box-shadow:0 0 0 2.5px var(--laranja),0 6px 18px rgba(244,99,42,.18)}
.files{display:flex;flex-direction:column;background:#fff;border-radius:var(--r);box-shadow:var(--sh);overflow:hidden}
.file{display:flex;gap:12px;align-items:center;padding:11px 14px;border-bottom:1px solid var(--line)}
.file:last-child{border-bottom:0}
.file .fw{width:52px;height:52px;border-radius:10px;flex-shrink:0;background:#f1e8de center/cover no-repeat;display:grid;place-items:center;font-size:10px;font-weight:800;color:var(--muted)}
.file .meta{flex:1;min-width:0}
.file h3{font-size:14px;font-weight:700;line-height:1.3;color:var(--navy)}
.file p{margin:2px 0 0;font-size:12px;color:var(--muted)}
.fmts{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}
.fmt{border:1.5px solid var(--line);background:#fff;border-radius:8px;padding:3px 8px;font-size:11px;font-weight:800;color:var(--navy);text-decoration:none;letter-spacing:.03em}
.fmt:hover{border-color:var(--laranja);color:#b2410f}
.fmt.ext::after{content:" ↗"}
.new{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:var(--laranja);color:#fff;border-radius:5px;padding:2px 6px}
.galeria{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
@media (min-width:700px){.galeria{grid-template-columns:repeat(5,1fr)}}
.galeria a{aspect-ratio:1;border-radius:10px;background:#ebe0d4 center/cover no-repeat;display:block;position:relative}

/* ---------- plano ---------- */
.lines{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:11.5px;color:var(--muted)}
.lines i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.gantt{background:#fff;border-radius:var(--r);padding:12px;box-shadow:var(--sh);overflow-x:auto}
.gantt-in{min-width:780px;display:grid;grid-template-columns:repeat(12,1fr);gap:4px 3px;font-size:10.5px}
.gantt .mh{font-weight:800;color:var(--muted);text-align:center;letter-spacing:.03em;text-transform:uppercase;font-size:10px;padding:3px 0;border:0;background:none;border-radius:6px}
.gantt .mh[aria-pressed="true"]{background:var(--navy);color:#fff}
.gantt .mh.hoje{box-shadow:inset 0 -2px 0 var(--laranja)}
.gbar{border-radius:6px;padding:4px 6px;color:#fff;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;border:0;text-align:left;font-size:10.5px}
.monthcard{display:flex;flex-direction:column;gap:12px}
.mtop{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.mtop .big{font-family:var(--serif);font-size:40px;line-height:.9;color:var(--navy)}
.mtop .big small{display:block;font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--laranja);margin-bottom:4px}
.navm{display:flex;gap:6px}
.navm button{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--line);background:#fff;font-size:16px;color:var(--navy)}
.theme{font-family:var(--serif);font-size:23px;line-height:1.1;color:var(--navy)}
.theme em{color:var(--laranja)}
.mix{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.mix div{border-radius:10px;padding:8px;background:#f6efe7;text-align:center}
.mix b{display:block;font-size:18px;font-variant-numeric:tabular-nums;color:var(--navy)}
.mix small{font-size:10.5px;color:var(--muted);line-height:1.2;display:block}
.dates{display:flex;flex-direction:column;gap:6px}
.date{display:flex;gap:10px;align-items:center;font-size:13.5px}
.date b{width:48px;flex-shrink:0;text-align:center;background:#eef2fb;border-radius:8px;padding:4px 0;font-size:12px;color:var(--navy);font-variant-numeric:tabular-nums}
.briefs{display:flex;flex-direction:column;gap:10px}
.brief{border:0;text-align:left;background:#fff;border-radius:var(--r);padding:0;overflow:hidden;box-shadow:var(--sh);display:flex;width:100%}
.brief .stripe{width:6px;flex-shrink:0}
.brief .bin{padding:12px 14px;flex:1;min-width:0}
.brief h3{font-size:15px;font-weight:700;color:var(--navy);line-height:1.3}
.brief p{margin:3px 0 8px;font-size:12.5px;color:var(--muted)}
.bhead{background:var(--navy);color:#fff;border-radius:16px;padding:16px;position:relative;overflow:hidden}
.bhead::after{content:"";position:absolute;right:-40px;top:-50px;width:140px;height:140px;border-radius:50%;background:var(--laranja);opacity:.18}
.bhead h2{font-family:var(--serif);font-weight:400;font-size:27px;line-height:1.05;margin:4px 0 6px}
.bhead p{margin:0;color:#c9d1ee;font-size:13px}
.bsec{background:#fff;border-radius:14px;padding:13px 14px;margin-top:10px}
.bsec h4{margin:0 0 6px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--laranja)}
.bsec p{margin:0;font-size:13.5px}
.bsec ul{margin:0;padding-left:18px;font-size:13.5px;display:flex;flex-direction:column;gap:3px}
.bsec .quote{font-family:var(--serif);font-size:21px;line-height:1.15;color:var(--navy)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:420px){.split{grid-template-columns:1fr}}

/* ---------- folha (sheet) e modal ---------- */
.sheet{position:fixed;inset:0;background:rgba(22,38,79,.45);z-index:50;display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s}
.sheet.on{opacity:1;pointer-events:auto}
.sheet .panel{background:var(--bg);width:100%;max-width:640px;max-height:90vh;overflow-y:auto;border-radius:22px 22px 0 0;padding:10px 16px calc(22px + env(safe-area-inset-bottom,0px));transform:translateY(30px);transition:transform .25s}
.sheet.on .panel{transform:none}
@media (min-width:700px){.sheet{align-items:center}.sheet .panel{border-radius:22px;max-height:86vh}}
.grab{width:40px;height:4px;border-radius:4px;background:#d6c9bb;margin:0 auto 12px}
.toast{position:fixed;left:16px;right:16px;bottom:96px;max-width:520px;margin:0 auto;background:var(--navy);color:#fff;border-radius:12px;padding:12px 14px;font-size:14px;font-weight:600;transform:translateY(20px);opacity:0;transition:.25s;pointer-events:none;z-index:60}
.toast.on{transform:none;opacity:1}
.toast.erro{background:var(--bad)}

/* ---------- login ---------- */
.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--navy);position:relative;overflow:hidden}
.login::before{content:"";position:absolute;inset:0;background:url(/static/padrao.jpg) center/420px;opacity:.12}
.login .box{position:relative;background:var(--bg);border-radius:22px;padding:28px 22px;width:100%;max-width:380px;display:flex;flex-direction:column;gap:14px;box-shadow:0 30px 80px rgba(0,0,0,.3)}
.login .box img{height:64px;width:auto;margin:0 auto 4px}
.login h1{font-family:Georgia,serif;font-weight:400;font-size:26px;text-align:center;color:var(--navy)}
.login .os{text-align:center;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}

/* ---------- gestão ---------- */
.tabela{width:100%;border-collapse:collapse;font-size:13.5px}
.tabela th{text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:8px 6px;border-bottom:1px solid var(--line)}
.tabela td{padding:10px 6px;border-bottom:1px solid var(--line);vertical-align:top}
.tabela tr:last-child td{border-bottom:0}
.senha{font-family:ui-monospace,Menlo,monospace;background:#fff6e6;border-radius:8px;padding:8px 10px;font-size:15px;user-select:all}
