:root{
  --noite:#0F1320; --noite2:#161B2B; --carta:#1C2233; --carta2:#232A41;
  --linha:#2F3752; --linha2:#3D466A;
  --texto:#E6E3DC; --suave:#A6ABC0; --fraco:#767C93;
  --abajur:#E9A94B; --abajur-fraco:#F3CE95;
  --menta:#82C0A6; --alerta:#DE8E7C; --parada:#E06B6B;
  --serif:Georgia,"Iowan Old Style","Palatino Linotype",serif;
  --sans:"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;color-scheme:dark}
body{margin:0;background:var(--noite);color:var(--texto);font-family:var(--sans);font-size:17px;line-height:1.6}
.wrap{max-width:760px;margin:0 auto;padding:0 20px 80px}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.15;letter-spacing:-.01em}
h1{font-size:clamp(1.9rem,6vw,2.7rem);margin:0 0 .25em}
h2{font-size:clamp(1.35rem,4vw,1.85rem);margin:0 0 .5em}
h3{font-size:1.1rem;margin:1.9em 0 .4em}
p{margin:0 0 1em;max-width:66ch}
ul,ol{margin:0 0 1.05em;padding-left:1.2em;max-width:66ch}
li{margin-bottom:.45em}
strong,b{color:#F4F2ED;font-weight:700}
em,i{font-style:italic;color:var(--abajur-fraco)}
a{color:var(--abajur)}
.mudo{color:var(--suave);font-size:.92rem}
.kicker{font-size:.8rem;letter-spacing:.08em;color:var(--abajur);margin:0 0 8px}

header.topo{padding:36px 0 0}
header.topo .marca{font-size:.8rem;letter-spacing:.07em;color:var(--fraco);margin:0 0 18px}
header.topo .sub{color:var(--suave);max-width:54ch;margin-bottom:22px}

.faixa-erro{
  position:sticky;top:0;z-index:40;
  background:#2A1C22;color:var(--texto);
  border-bottom:1px solid var(--alerta);
  padding:12px 20px;font-size:.92rem;
}
.faixa-erro p{margin:0 0 .35em;max-width:none}
.faixa-erro a{margin-right:14px}
.faixa-erro .fechar{margin-top:6px}

nav.abas{position:sticky;top:0;z-index:20;background:linear-gradient(var(--noite) 78%,rgba(15,19,32,0));padding:8px 0 14px;margin-bottom:6px}
nav.abas .lista,nav.sub .lista{display:flex;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
nav.abas .lista{border-bottom:1px solid var(--linha)}
nav.abas .lista::-webkit-scrollbar,nav.sub .lista::-webkit-scrollbar{display:none}
nav.abas button,nav.sub button{
  font-family:var(--sans);font-size:.84rem;white-space:nowrap;cursor:pointer;
  background:transparent;color:var(--suave);border:none;
  border-bottom:2px solid transparent;padding:12px 4px;margin-bottom:-1px;
  flex:1 0 auto;text-align:center;min-height:44px;
}
nav.abas button:hover,nav.sub button:hover{color:var(--texto)}
nav.abas button[aria-selected="true"],nav.sub button[aria-selected="true"]{color:var(--abajur);border-bottom-color:var(--abajur);font-weight:700}
nav.abas button.perigo{color:var(--alerta)}
nav.abas button.perigo[aria-selected="true"]{color:var(--parada);border-bottom-color:var(--parada)}
nav.sub{margin:0 0 8px}
nav.sub button{font-size:.84rem;padding:8px 10px}

.painel{padding:8px 0 0}
.caixa{border:1px solid var(--linha);background:var(--carta);padding:18px 20px;margin:0 0 1.2em;border-radius:2px}
.caixa h3{margin-top:0}
.caixa>:last-child{margin-bottom:0}
.caixa.luz{border-left:3px solid var(--abajur)}
.caixa.bom{border-left:3px solid var(--menta)}
.caixa.aviso{border-left:3px solid var(--alerta)}
.caixa.parada{border-left:3px solid var(--parada);background:#241C22}
.destaque{padding:22px 24px;background:linear-gradient(160deg,#242C46,#1B2133);border:1px solid var(--linha);border-radius:3px 20px 3px 20px;margin:0 0 1.4em;position:relative}
.destaque:before{content:"";position:absolute;left:0;top:20px;bottom:20px;width:3px;background:var(--abajur)}
.destaque p{font-family:var(--serif);font-size:1.18rem;line-height:1.42;margin:0}

.fatos{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;background:var(--linha);border:1px solid var(--linha);margin:0 0 1.4em}
.fatos div{background:var(--carta);padding:15px 16px}
.fatos dt{font-size:.76rem;color:var(--suave);margin:0 0 5px}
.fatos dd{margin:0;font-family:var(--serif);font-size:1.22rem;color:var(--abajur-fraco);line-height:1.25}

.ops{display:flex;flex-wrap:wrap;gap:7px}
.ops button,.principal,.sec{
  font-family:var(--sans);font-size:.95rem;cursor:pointer;
  background:transparent;color:var(--suave);
  border:1px solid var(--linha2);border-radius:2px;padding:10px 14px;
}
.ops button:hover,.sec:hover{border-color:var(--abajur);color:var(--abajur)}
.ops button[aria-pressed="true"]{background:var(--abajur);color:#161B2B;border-color:var(--abajur);font-weight:700}
.principal{background:var(--abajur);color:#161B2B;border-color:var(--abajur);font-weight:700}
.principal.largo{display:block;width:100%}
.acoes{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 1.2em}

.campo{display:block;margin:0 0 14px}
.campo span,.campo > label{display:block;color:var(--suave);font-size:.83rem;margin:0 0 6px}
input,select{
  font-family:var(--sans);font-size:16px;color:var(--texto);
  background:var(--noite);border:1px solid var(--linha2);border-radius:2px;
  padding:12px;width:100%;max-width:360px;
}
.linha-senha{position:relative;max-width:360px}
.linha-senha input{max-width:none;padding-right:88px}
.ver-senha{
  position:absolute;right:6px;top:50%;transform:translateY(-50%);
  background:none;border:none;color:var(--abajur);font-family:var(--sans);
  font-size:.85rem;font-weight:700;cursor:pointer;padding:8px 6px;
}
.reinicio{margin:0 0 1.5em}
.reinicio .mudo{margin-bottom:.7em}

.rotina{list-style:none;padding:0;margin:0 0 1.2em;max-width:62ch}
.rotina li{display:grid;grid-template-columns:108px 1fr;gap:14px;padding:9px 0;border-bottom:1px dotted var(--linha);margin:0}
.rotina .h{font-variant-numeric:tabular-nums;color:var(--abajur-fraco);font-weight:700}

.rolagem{overflow-x:auto;-webkit-overflow-scrolling:touch}
table.tab{width:100%;border-collapse:collapse;margin:0 0 1.3em;font-size:.94rem}
table.tab th,table.tab td{padding:10px 8px;text-align:left;border-bottom:1px solid var(--linha)}
table.tab th{color:var(--suave);font-weight:500;font-size:.81rem}
table.tab td{font-variant-numeric:tabular-nums}
table.tab tbody tr:nth-child(odd){background:rgba(255,255,255,.022)}
table.tab .n{color:var(--abajur-fraco);font-weight:700}

.fase{display:grid;grid-template-columns:58px 1fr;gap:0 18px;padding:24px 0;border-bottom:1px solid var(--linha)}
.fase:last-child{border-bottom:none}
.fase .num{font-family:var(--serif);font-size:2.4rem;line-height:1;color:var(--abajur);opacity:.85}
.fase .quando{font-size:.84rem;color:var(--suave);margin:0 0 .6em}

details.qa{border-bottom:1px solid var(--linha);padding:15px 0}
details.qa summary{cursor:pointer;font-weight:700;color:#F4F2ED;list-style:none;display:flex;gap:11px;align-items:baseline}
details.qa summary::-webkit-details-marker{display:none}
details.qa summary:before{content:"+";color:var(--abajur);font-weight:400}
details.qa[open] summary:before{content:"–"}
details.qa .r{padding:11px 0 2px 22px}
details.qa .r>:last-child{margin-bottom:0}

.timer{background:var(--carta2);border:1px solid var(--linha);padding:22px;margin:0 0 1.3em;border-radius:2px}
.timer .mostrador{font-family:var(--serif);font-size:3.4rem;line-height:1;font-variant-numeric:tabular-nums;color:var(--abajur-fraco);margin:0 0 6px}
.timer .estado{font-size:.9rem;color:var(--suave);margin:0 0 16px;min-height:2.6em}
.timer.rodando{border-color:var(--abajur)}
@media (prefers-reduced-motion:no-preference){.timer.rodando .mostrador{animation:pulso 2s ease-in-out infinite}}
@keyframes pulso{0%,100%{opacity:1}50%{opacity:.62}}

.lista-alerta{list-style:none;padding:0;margin:0;max-width:none}
.lista-alerta li{
  position:relative;padding:13px 0 13px 22px;margin:0;
  border-bottom:1px solid var(--linha);
}
.lista-alerta li:last-child{border-bottom:none}
.lista-alerta li:before{
  content:"";position:absolute;left:2px;top:1.25em;
  width:7px;height:7px;border-radius:50%;background:var(--alerta);
}
.lista-alerta.stop li:before{background:var(--parada)}
.lista-alerta.neutra li:before{background:var(--fraco)}
details.alerta-bloco{border-bottom:1px solid var(--linha)}
details.alerta-bloco summary{
  cursor:pointer;list-style:none;min-height:48px;
  display:flex;align-items:center;gap:12px;
  font-family:var(--serif);font-weight:600;font-size:1.05rem;
  padding:14px 0;
}
details.alerta-bloco summary::-webkit-details-marker{display:none}
details.alerta-bloco summary:after{
  content:"+";margin-left:auto;color:var(--abajur);
  font-family:var(--sans);font-weight:400;font-size:1.2rem;
}
details.alerta-bloco[open] summary:after{content:"–"}
details.alerta-bloco[open] summary{padding-bottom:4px}
details.alerta-bloco .lista-alerta{margin:0 0 8px}

.noites{list-style:none;padding:0;margin:0 0 1.2em;max-width:none}
.noites li{margin:0;border-bottom:1px solid var(--linha)}
.noites button{
  width:100%;text-align:left;background:transparent;border:none;color:inherit;
  font:inherit;padding:12px 0;cursor:pointer;
}
.noites b{display:block}
.noites span{color:var(--suave);font-size:.9rem}
.noites .pendente b:after{content:" · neste celular";color:var(--abajur);font-weight:500;font-family:var(--sans);font-size:.8rem}

button.link{
  background:none;border:none;color:var(--suave);font:inherit;
  padding:0;cursor:pointer;text-decoration:underline;
}
footer{border-top:1px solid var(--linha);margin-top:44px;padding:26px 0 0;font-size:.87rem;color:var(--fraco)}
footer p{max-width:66ch}

@media (min-width:560px){
  nav.abas button,nav.sub button{font-size:.92rem;padding:10px 13px;flex:0 0 auto;text-align:left}
}
@media (max-width:560px){
  body{font-size:16px}
  .fase{grid-template-columns:40px 1fr;gap:0 13px}
  .fase .num{font-size:1.8rem}
  .rotina li{grid-template-columns:84px 1fr;gap:10px}
  .timer .mostrador{font-size:2.8rem}
}
@media (prefers-reduced-motion:reduce){.painel{animation:none}.timer .mostrador{animation:none}}
@media print{
  body{background:#fff;color:#000;font-size:11pt}
  .wrap{max-width:none}
  nav.abas,nav.sub,.acoes,.faixa-erro,footer .so-tela{display:none}
  .caixa,.destaque,.timer,.fatos div{background:#fff;border:1px solid #999;break-inside:avoid}
  .destaque:before{background:#000}
  .fase .num,.fatos dd,.rotina .h,.timer .mostrador,table.tab .n{color:#000}
}
