:root{
  --green:#00995d; --green-dark:#006b43; --green-deep:#005a37; --green-soft:#eaf7f1;
  --text:#17342a; --muted:#6b7e76; --border:#dfe8e3; --bg:#f4f7f5; --danger:#c0392b; --warn:#b9770e;
  --shadow:0 10px 28px rgba(0,78,48,.08)
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}
button,input,select,textarea{font:inherit}
.topbar{min-height:82px;background:linear-gradient(90deg,var(--green-dark),var(--green-deep));display:flex;align-items:center;justify-content:space-between;padding:10px 24px;gap:20px;position:sticky;top:0;z-index:20;box-shadow:0 3px 12px rgba(0,0,0,.12)}
.brand{display:flex;align-items:center;gap:18px;color:#fff}.brand img{height:58px;width:auto;background:#fff0;border-radius:8px}.brand strong{display:block;font-size:22px}.brand span{font-size:13px;opacity:.9}
.top-actions{display:flex;gap:8px;flex-wrap:wrap}.btn{border:0;border-radius:9px;padding:10px 14px;cursor:pointer;font-weight:700}.btn.primary{background:var(--green);color:white}.btn.primary:hover{background:#00834f}.btn.secondary{background:#fff;color:var(--green-dark);border:1px solid var(--green)}.btn.ghost{background:transparent;color:white;border:1px solid rgba(255,255,255,.35)}.btn.light{background:white;color:var(--green-dark)}.btn.danger{background:#ffe9e6;color:#9c2f24}.btn.small{padding:7px 10px;font-size:13px}.btn:disabled{opacity:.5;cursor:not-allowed}
#app{max-width:1450px;margin:0 auto;padding:28px 20px 70px}.footer{text-align:center;color:var(--muted);font-size:12px;padding:18px}
.hero{background:white;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:28px}.hero h1{margin:0 0 8px;font-size:30px}.hero p{margin:0;color:var(--muted)}
.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cards{grid-template-columns:repeat(5,minmax(0,1fr))}
.card{background:white;border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:var(--shadow)}.card h2,.card h3{margin-top:0}.muted{color:var(--muted)}.small{font-size:13px}.required{color:var(--danger)}
.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 12px}.section-title h2{margin:0}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:13px;font-weight:700}.field input,.field select,.field textarea{border:1px solid #cfdcd5;border-radius:9px;padding:11px 12px;background:#fff;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(0,153,93,.1)}.field textarea{min-height:130px;resize:vertical}.counter{text-align:right;font-size:12px;color:var(--muted)}
.choice-row{display:flex;gap:16px;flex-wrap:wrap}.choice{flex:1;min-width:230px;border:2px solid var(--border);border-radius:16px;padding:24px;text-align:center;background:white;cursor:pointer;transition:.15s}.choice:hover,.choice.active{border-color:var(--green);background:var(--green-soft)}.choice strong{display:block;font-size:18px;margin-top:8px}
.stepper{display:flex;align-items:center;gap:8px;margin:14px 0 24px}.step{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#e7eeea;color:#789087;font-weight:800}.step.active,.step.done{background:var(--green);color:#fff}.step-line{height:2px;background:#d7e2dc;flex:1}.step-line.done{background:var(--green)}
.alert{border-radius:10px;padding:12px 14px;margin:12px 0}.alert.info{background:#eef7ff;color:#245b78}.alert.success{background:#e8f8ef;color:#176b42}.alert.warn{background:#fff6df;color:#7a5700}.alert.danger{background:#fdecea;color:#9b2d20}
.protocol-box{background:linear-gradient(135deg,#eaf8f1,#f9fffc);border:1px solid #bfe3d1;border-radius:16px;padding:24px;text-align:center}.protocol{font-size:28px;font-weight:900;color:var(--green-dark);letter-spacing:.4px}.password{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:24px;font-weight:800;background:#fff;border:1px dashed var(--green);display:inline-block;padding:8px 12px;border-radius:8px;margin-top:7px}
.login-wrap{max-width:460px;margin:45px auto}.login-wrap .logo-center{text-align:center;margin-bottom:20px}.logo-center img{max-width:240px}
.dashboard{display:grid;grid-template-columns:240px 1fr;gap:18px}.sidebar{background:linear-gradient(180deg,var(--green-dark),var(--green-deep));color:white;border-radius:16px;padding:16px;min-height:640px}.sidebar .user{padding:12px;border-bottom:1px solid rgba(255,255,255,.18);margin-bottom:10px}.nav-btn{display:block;width:100%;text-align:left;background:transparent;color:white;border:0;padding:11px;border-radius:8px;cursor:pointer}.nav-btn:hover,.nav-btn.active{background:rgba(255,255,255,.14)}
.kpi{padding:16px}.kpi span{font-size:12px;color:var(--muted)}.kpi strong{display:block;font-size:28px;color:var(--green-dark);margin-top:6px}
.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:850px}.table th,.table td{padding:12px;border-bottom:1px solid var(--border);text-align:left;font-size:13px}.table th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.03em}.badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.badge.nova{background:#e8f8ef;color:#1e7a4d}.badge.andamento{background:#eaf2ff;color:#2d5d9b}.badge.aguardando{background:#fff4d9;color:#8b6500}.badge.concluida{background:#edf0ee;color:#4f6359}.badge.vencida{background:#fde8e5;color:#a7382b}.badge.internado{background:#fff0e6;color:#9a4b00}
.timeline{border-left:3px solid #cde7da;padding-left:16px;margin-left:8px}.event{margin:0 0 18px;position:relative}.event:before{content:"";position:absolute;left:-23px;top:4px;width:11px;height:11px;background:var(--green);border-radius:50%;border:2px solid white;box-shadow:0 0 0 1px #b8d9c9}.event strong{font-size:13px}.event p{margin:5px 0}.event time{font-size:11px;color:var(--muted)}
.chat-box{max-height:360px;overflow:auto;background:#f8fbf9;border:1px solid var(--border);border-radius:12px;padding:12px}.msg{padding:10px 12px;border-radius:10px;margin-bottom:10px;max-width:82%}.msg.staff{background:#e1f4ea}.msg.public{background:#fff;border:1px solid var(--border);margin-left:auto}.msg .meta{font-size:10px;color:var(--muted);margin-bottom:4px}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.spacer{flex:1}.nowrap{white-space:nowrap}
@media(max-width:980px){.grid.cards{grid-template-columns:repeat(2,1fr)}.dashboard{grid-template-columns:1fr}.sidebar{min-height:auto}.grid.two,.form-row{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.top-actions{width:100%}.top-actions .btn{flex:1}.brand img{height:48px}}

.captcha-box{border:1px solid #bfe3d1;background:var(--green-soft);border-radius:12px;padding:14px;margin:8px 0 18px}.captcha-title{font-weight:800;margin-bottom:3px}.captcha-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.captcha-question{font-size:22px;color:var(--green-dark);background:#fff;border:1px solid #cfe5d9;border-radius:9px;padding:8px 12px;min-width:92px;text-align:center}.captcha-row input{width:90px;border:1px solid #cfdcd5;border-radius:9px;padding:10px 12px}.captcha-row input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(0,153,93,.1);outline:none}.captcha-error{color:var(--danger);font-size:13px;font-weight:700;margin-top:8px;min-height:18px}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
/* --- Extensão SGO 2026 --- */
.sgo-dashboard{grid-template-columns:260px minmax(0,1fr)}
.sgo-sidebar{padding:14px 12px;overflow:auto;position:sticky;top:0;height:calc(100vh - 78px)}
.sgo-side-brand{padding:4px 8px 14px;border-bottom:1px solid rgba(255,255,255,.15);margin-bottom:12px}.sgo-side-brand img{width:150px;max-height:58px;object-fit:contain;object-position:left center}
.nav-section{font-size:10px;letter-spacing:.12em;font-weight:800;opacity:.55;margin:18px 10px 7px}.sgo-main{min-width:0;padding-bottom:40px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#00884a;margin-bottom:5px}.sgo-title{align-items:flex-end}.sgo-cards{grid-template-columns:repeat(5,minmax(130px,1fr));margin-bottom:18px}.sgo-kpi small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.sgo-filter input,.sgo-filter select{padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:white}.sgo-filter input{min-width:280px}.table.compact th,.table.compact td{font-size:12px;padding:9px 8px}.pill{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.pill.ok{background:#e5f6ec;color:#087b45}.pill.warn{background:#fff4d8;color:#9a6500}.pill.danger{background:#fde8e7;color:#b22a23}.danger.btn{background:#fff;border:1px solid #e7b6b3;color:#b22a23}.sgo-detail-grid{align-items:start}.deadline-panel{display:flex;gap:12px;padding:14px;border-radius:12px;background:#f0f8f4;border:1px solid #cfe7d9;margin-bottom:16px}.deadline-panel>div{flex:1}.deadline-panel span{display:block;font-size:11px;color:var(--muted);margin-bottom:3px}.deadline-panel strong{color:#006b3c}.metrics-inline{display:flex;gap:10px;margin:10px 0 16px}.metrics-inline span{background:#f7f9f8;border:1px solid var(--border);padding:9px 10px;border-radius:8px;font-size:12px}.accent-card{border-left:5px solid #00884a;margin-bottom:18px}.bar-list{display:grid;gap:10px}.bar-row{display:grid;grid-template-columns:170px 1fr 32px;gap:10px;align-items:center;font-size:12px}.bar-track{height:11px;background:#edf2ef;border-radius:20px;overflow:hidden}.bar-track i{display:block;height:100%;background:linear-gradient(90deg,#00995d,#7abf43);border-radius:20px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stats-grid>div{border:1px solid var(--border);border-radius:11px;padding:14px}.stats-grid span{display:block;font-size:11px;color:var(--muted)}.stats-grid strong{display:block;margin-top:5px;font-size:17px;color:#006b3c}.area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.area-item{display:flex;align-items:center;justify-content:space-between;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fafcfb}.icon-btn{border:0;background:transparent;font-size:20px;color:#9b2c2c;cursor:pointer}.cell-input{width:95px;max-width:100%;padding:7px;border:1px solid var(--border);border-radius:6px}.rea-cover{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(120deg,#f4fbf7,#fff)}.rea-cover img{width:150px;margin-bottom:12px}.rea-lines p{display:flex;justify-content:space-between;border-bottom:1px dashed var(--border);padding:8px 0;margin:0}.rea-lines span{color:var(--muted)}.flow{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.flow span{background:#eff8f3;color:#006b3c;border:1px solid #cae8d7;padding:8px 10px;border-radius:8px;font-size:12px;font-weight:700}.flow b{color:#7fa58f}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.quick-grid button{border:1px solid #cfe6d9;background:#f7fbf9;color:#006b3c;border-radius:9px;padding:12px;cursor:pointer;font-weight:700}.quick-grid button:hover{background:#eaf6ef}.small.help{font-size:10px;color:var(--muted)}
@media(max-width:1100px){.sgo-cards{grid-template-columns:repeat(2,1fr)}.area-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.sgo-dashboard{grid-template-columns:1fr}.sgo-sidebar{position:relative;height:auto}.sgo-cards,.area-grid,.stats-grid{grid-template-columns:1fr}.bar-row{grid-template-columns:120px 1fr 28px}.sgo-filter input{min-width:0;width:100%}}
@media print{.topbar,.sidebar,.footer,.btn,.alert{display:none!important}.dashboard{display:block!important}.sgo-main{padding:0!important}.card{box-shadow:none!important;break-inside:avoid}}

/* Origem Web / Manual */
.badge.origin-web{background:#eaf2ff;color:#275fa6;border:1px solid #cbdcf5}.badge.origin-manual{background:#ecf8ef;color:#087b45;border:1px solid #c6e8d2}.manual-origin-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:18px}
