:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#24342b;background:#f2f3ee;font-synthesis:none;--gold:#b48a3c;--forest:#16261d;--leaf:#2f6b45;--wine:#7a2e3a;--line:#e0e4dc;--be:#2f6b45;--pedia:#2d5d7b;--pc:#8a5a1f}
*{box-sizing:border-box}body{margin:0}
aside{position:fixed;inset:0 auto 0 0;width:252px;background:var(--forest);color:#c9d3cb;padding:30px 18px;display:flex;flex-direction:column;overflow:auto}
.brand{font-family:Georgia,serif;font-size:31px;letter-spacing:-1px;color:#fff;text-decoration:none}.brand span{color:#d6b46e}
.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.6px;color:#8d9b7f;margin:8px 0 16px}
nav{display:grid;gap:2px;margin-top:8px}
nav .group{font-size:10px;font-weight:800;letter-spacing:1.4px;color:#90a38f;margin:16px 0 6px 10px;display:flex;align-items:center;gap:7px}
nav .group i{display:inline-block;width:8px;height:8px;border-radius:50%}
nav button{background:none;text-align:left;color:#bccabd;border:0;padding:9px 12px;font-size:13px;border-radius:7px;font-weight:500}
nav button.active{background:#24392b;color:#ecd294;box-shadow:inset 3px 0 #c9a55c}nav button:hover{background:#1f3326}
.aside-bottom{margin-top:auto;padding-top:20px;font-size:11px;line-height:1.8}.aside-bottom a{display:block;color:#bccabd;margin-top:14px}.aside-bottom button{margin-top:10px}
.session-tools{display:grid;gap:4px;margin-top:10px;word-break:break-all}
main{margin-left:252px;padding:34px 40px;max-width:1800px}
header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}header .eyebrow{margin:0 0 8px}
h1{font-family:Georgia,serif;font-size:31px;font-weight:normal;margin:0;color:var(--forest)}h2{font-size:16px;margin:0 0 16px}h3{font-size:13px;margin:0 0 10px}p{line-height:1.6}
.header-actions{display:flex;gap:10px;align-items:end}
button,input,select,textarea{font:inherit}
button{cursor:pointer;border:1px solid var(--line);background:#fff;border-radius:7px;padding:9px 13px;color:var(--forest);font-weight:600;font-size:12px}
button:disabled{opacity:.55;cursor:wait}button.primary{background:var(--leaf);border-color:var(--leaf);color:#fff}button.danger{border-color:#e3b7bd;color:var(--wine)}button.small{padding:5px 9px;font-size:11px}
a{color:var(--leaf)}
label{display:grid;gap:6px;font-size:11px;font-weight:600;color:#5e6b60}
input,select,textarea{width:100%;padding:9px 11px;border:1px solid #d4dad1;background:#fff;border-radius:6px;font-size:13px;color:#24342b}
textarea{min-height:90px;resize:vertical;font-family:ui-monospace,Menlo,monospace;font-size:12px}input[type=checkbox]{width:auto}
input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.statusbar{display:flex;justify-content:space-between;gap:12px;color:#748072;font-size:11px;margin-bottom:20px;flex-wrap:wrap}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}
.card,.panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px}
.card{border-top:3px solid var(--gold)}.card.be{border-top-color:var(--be)}.card.pedia{border-top-color:var(--pedia)}.card.pc{border-top-color:var(--pc)}
.card small{font-size:11px;color:#6f7b6e}.card strong{display:block;font-size:26px;font-weight:600;margin:10px 0 4px;letter-spacing:-1px}.card .hint{font-size:11px;color:#7d877c}
.panel{margin-bottom:18px}.split{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}
.panel-title{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.panel-title h2{margin:0}
.muted,.empty{font-size:13px;color:#748072}.empty{padding:24px 0;text-align:center}
.table-scroll{overflow:auto;max-height:70vh}
table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}
th{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:#7a8578;padding:11px 10px;background:#f8f9f6;font-weight:600;white-space:nowrap;position:sticky;top:0}
td{padding:11px 10px;border-bottom:1px solid #edf0ea;max-width:360px;overflow-wrap:anywhere;vertical-align:top}tr:last-child td{border-bottom:0}
.badge{display:inline-block;background:#eef0e8;color:#5d6a4f;border-radius:20px;font-size:10px;padding:4px 9px}
.badge.good{background:#e6f2e9;color:#2b6a42}.badge.bad{background:#f8e8ea;color:#913647}.badge.warn{background:#fbf2dc;color:#7b5a12}
.toolbar{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap;align-items:end}.toolbar input{flex:1;min-width:180px}.toolbar select{max-width:260px}
.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.form-grid .wide{grid-column:1/-1}.form-grid button{justify-self:start}
.check{display:flex;align-items:center;gap:8px}
#notice{padding:13px 16px;border-radius:8px;margin-bottom:16px;background:#fbebed;color:#8a2440;font-size:13px}#notice.success{background:#e6f1e8;color:#285e3b}
footer{font-size:10px;color:#98a297;margin-top:30px}
.bars{display:grid;gap:8px;max-height:320px;overflow:auto}.chart-row{display:grid;grid-template-columns:110px 1fr 90px;align-items:center;gap:10px;font-size:11px}
.chart-row progress{width:100%;height:11px;accent-color:var(--leaf)}
.note{border-left:3px solid var(--gold);padding:10px 14px;background:#faf7ee;font-size:12px;line-height:1.6;margin:10px 0}
.loading{padding:70px 0;text-align:center;color:#8a948a}
.pagination{display:flex;gap:10px;align-items:center;margin-top:14px;font-size:12px}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.tabs button{border-radius:20px;padding:6px 12px;font-weight:500}.tabs button.active{background:var(--forest);color:#fff;border-color:var(--forest)}
pre.json{background:#f6f7f3;border:1px solid var(--line);border-radius:8px;padding:12px;font-size:11px;max-height:60vh;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
.row-actions{display:flex;gap:6px;flex-wrap:wrap}
.site-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:middle}
.kanban{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.kanban .col{background:#f7f8f4;border:1px solid var(--line);border-radius:10px;padding:12px;min-height:120px}
.task{background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px;margin:8px 0;font-size:12px}.task p{margin:6px 0;white-space:pre-wrap}
details.item{border:1px solid var(--line);border-radius:8px;margin:10px 0;background:#fff}details.item summary{padding:12px 14px;cursor:pointer;font-size:13px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}details.item .body{padding:0 14px 14px}
.login-page{display:grid;place-items:center;min-height:100vh;background:var(--forest)}.login-card{background:#fff;border-radius:14px;padding:34px;max-width:430px;width:calc(100% - 32px);display:grid;gap:12px}
.login-card .brand{color:var(--forest)}.login-card h1{font-size:24px}.login-card form{display:grid;gap:12px}
@media(max-width:1100px){aside{width:212px}main{margin-left:212px;padding:26px 22px}.cards{grid-template-columns:repeat(2,1fr)}.split,.kanban{grid-template-columns:1fr}.form-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){aside{position:relative;width:100%;padding:16px}aside .eyebrow,.aside-bottom a{display:none}nav{display:flex;overflow:auto;gap:4px}nav .group{display:none}nav button{white-space:nowrap}main{margin:0;padding:20px 16px}header{flex-direction:column;align-items:start}.header-actions{width:100%}.header-actions label{flex:1}.form-grid{grid-template-columns:1fr}.cards{gap:10px}}
.dot-geral{background:#c9a55c}.dot-be{background:#4f9a69}.dot-pedia{background:#5a93b8}.dot-pc{background:#c48b45}
.guia{max-width:900px;margin:0 auto;padding:34px 20px}.guia .brand{color:var(--forest)}.guia h1{margin:14px 0 6px}
