:root{color:#172033;background:#eef3f8;font-family:Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{min-height:100vh;margin:0}button,input,select,textarea{font:inherit}.login-page{background:linear-gradient(135deg,#12335a,#1f6b99 54%,#eef3f8 54%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{background:#fff;border:1px solid #d9e2ec;border-radius:8px;gap:16px;width:min(420px,100%);padding:28px;display:grid;box-shadow:0 24px 80px #0e243e38}.brand-mark,.sidebar-head,.topbar{align-items:center;gap:12px;display:flex}.brand-mark strong{color:#12335a;font-size:22px;display:block}.brand-mark span,.muted,.topbar p{color:#66778a;font-size:13px}label{color:#46576c;text-transform:uppercase;gap:6px;font-size:12px;font-weight:700;display:grid}input,select,textarea{color:#172033;background:#fff;border:1px solid #cfd9e4;border-radius:7px;width:100%;padding:10px 12px}textarea{resize:vertical}.primary-button,.secondary-button,.icon-button{cursor:pointer;border:0;border-radius:7px;font-weight:700}button:disabled{opacity:.62;cursor:wait}.primary-button{color:#fff;background:#1f6b99;padding:11px 16px}.secondary-button{color:#1f6b99;background:#fff;border:1px solid #9ec4dc;padding:10px 15px}.secondary-button.small{padding:6px 9px;font-size:12px}.link-button{color:#1f6b99;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;font-weight:800;display:inline-flex}.reset-box{background:#f7fafc;border:1px solid #e5edf4;border-radius:8px;gap:12px;padding:14px;display:grid}.icon-button{color:#203348;background:#fff;border:1px solid #d9e2ec;place-items:center;width:40px;height:40px;display:grid}.app-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#12335a;padding:16px 12px}.sidebar-head{height:48px;padding:0 10px;font-weight:800}.sidebar nav{gap:4px;margin-top:12px;display:grid}.sidebar button{color:#cfe2f1;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:10px;width:100%;padding:10px;display:flex}.sidebar button.active,.sidebar button:hover{color:#fff;background:#1f6b99}.collapsed{grid-template-columns:72px 1fr}.collapsed .sidebar span{display:none}.collapsed .sidebar button{justify-content:center}.workspace{min-width:0}.topbar{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border-bottom:1px solid #d9e2ec;justify-content:space-between;padding:12px 20px;position:sticky;top:0}.topbar h1{color:#12335a;margin:0;font-size:20px}.topbar p{margin:2px 0 0}.content-grid,.form-layout,.panel{margin:20px}.metric-strip{grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;display:grid}.metric,.panel,.actions-bar{background:#fff;border:1px solid #d9e2ec;border-radius:8px}.metric{min-height:78px;padding:14px}.metric strong{color:#1f6b99;font-size:24px;display:block}.metric span{color:#66778a;font-size:12px}.panel{padding:18px}.panel h2{color:#12335a;margin:0 0 16px;font-size:15px}.empty-state{text-align:center;color:#66778a;background:#f7fafc;border:1px dashed #cfd9e4;border-radius:8px;padding:36px}.form-error,.banner-error{color:#9f1d1d;background:#fff5f5;border:1px solid #f2b8b5;border-radius:7px;padding:10px 12px;font-size:13px;font-weight:700}.alert-success-box{color:#1c6b42;background:#f0fbf4;border:1px solid #9ed9b5;border-radius:7px;padding:10px 12px;font-size:13px;font-weight:800}.banner-error{margin:14px 20px 0}.status-list{color:#46576c;gap:10px;display:grid}.status-list strong{color:#12335a}.search-row{gap:10px;margin-bottom:14px;display:flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid #e5edf4;padding:10px 12px}tr{cursor:default}tbody tr:hover td,.selected-row td{background:#f1f7fc}th{color:#66778a;text-transform:uppercase;font-size:11px}.badge{color:#1c6b42;background:#e9f7ef;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800;display:inline-flex}.row-actions{align-items:center;gap:8px;display:flex}.split-view{grid-template-columns:minmax(420px,.95fr) minmax(420px,1.05fr);gap:14px;margin:20px;display:grid}.split-view .panel{margin:0}.detail-stack{gap:12px;display:grid}.detail-title{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.detail-title h2{margin-bottom:4px}.detail-box{background:#fbfdff;border:1px solid #e5edf4;border-radius:8px;padding:12px}.detail-box strong{color:#12335a;margin-bottom:8px;display:block}.detail-box p{color:#46576c;margin:5px 0;line-height:1.45}.attachment-form,.cancel-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.file-button{color:#1f6b99;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #9ec4dc;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:9px 12px;display:inline-flex}.file-button input{display:none}.public-page{background:#eef3f8;min-height:100vh;padding:22px}.public-panel{background:#fff;border:1px solid #d9e2ec;border-radius:8px;gap:14px;max-width:920px;margin:0 auto;padding:20px;display:grid}.public-header{border-bottom:2px solid #e5edf4;justify-content:space-between;gap:16px;padding-bottom:14px;display:flex}.public-header strong{color:#12335a;font-size:18px;display:block}.public-header span{color:#66778a;font-size:13px}.public-form{border-top:2px solid #e5edf4;gap:12px;padding-top:14px;display:grid}.check-row{text-transform:none;letter-spacing:0;align-items:center;gap:8px;display:flex}.check-row input{width:auto}.public-actions{flex-wrap:wrap;gap:10px;display:flex}.public-integrity{justify-content:space-between;align-items:center;gap:16px;display:flex}.public-integrity img{border:1px solid #d9e2ec;border-radius:6px;width:112px;height:112px}.signature-pad{touch-action:none;background:#fff;border:1px dashed #9ec4dc;border-radius:7px;width:100%;height:180px}.signature-clear{justify-self:start}.timeline-line{color:#46576c;margin:7px 0}.timeline-line strong{color:#12335a;margin-right:6px}.notification-line{border-bottom:1px solid #e5edf4;justify-content:space-between;align-items:center;gap:12px;padding-bottom:8px;display:flex}.form-layout,.grid{gap:14px;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.item-grid{grid-template-columns:minmax(220px,1fr) 90px 130px 130px;margin-bottom:10px}.items-head{justify-content:space-between;align-items:center;gap:12px;margin-top:18px;margin-bottom:10px;display:flex}.items-head h2{margin:0}.items-head strong{color:#1f6b99}.actions-bar{justify-content:flex-end;gap:10px;padding:12px;display:flex}.actions-bar.inline{align-items:center;margin-top:16px}.success-text{color:#1c6b42;margin-right:auto;font-size:13px;font-weight:700}.error-text{color:#9f1d1d;margin-right:auto;font-size:13px;font-weight:700}.compact-form{background:#f7fafc;border:1px solid #e5edf4;border-radius:8px;margin-bottom:16px;padding:14px}.settings-block{margin-top:18px}@media (width<=900px){.app-shell,.collapsed{grid-template-columns:1fr}.sidebar{z-index:3;padding:10px;position:sticky;top:0}.sidebar nav{display:flex;overflow-x:auto}.sidebar button{white-space:nowrap;width:auto}.collapsed .sidebar span{display:inline}.metric-strip,.grid.two,.grid.three,.grid.four,.item-grid{grid-template-columns:1fr}.content-grid,.form-layout,.panel{margin:12px}.split-view{grid-template-columns:1fr;margin:12px}.attachment-form,.cancel-row,.detail-title,.notification-line,.public-header,.public-actions,.public-integrity{flex-direction:column;align-items:stretch}}@media print{.sidebar,.topbar,.no-print,.split-view>.panel:first-child{display:none!important}.app-shell,.split-view{display:block}.workspace,.panel,.split-view{margin:0}.panel{border:0}}.login-page{background:radial-gradient(circle at 32% 18%,#1e6dc559,#0000 24%),radial-gradient(circle at 30% 82%,#1275d338,#0000 18%),linear-gradient(135deg,#031735 0%,#062a5c 48%,#f4f7fb 48%);grid-template-columns:1.05fr .95fr;place-items:stretch stretch;padding:0;position:relative;overflow:hidden}.login-page:before{content:"VngProtocolo\a Sistema de Protocolo de Atendimento\a \a Registre acordos com seguranca\a Tenha provas do que foi combinado\a Organizacao e transparencia";white-space:pre-line;color:#fff;text-shadow:0 18px 50px #00000047;place-self:center;width:min(520px,82%);font-size:18px;line-height:2.35}.login-page:after{content:"© 2026 VNGSYSTEM";color:#ffffffc7;font-size:13px;position:absolute;bottom:34px;left:48px}.login-page .login-panel{border-radius:12px;place-self:center;width:min(390px,100% - 48px);padding:34px 28px 24px;box-shadow:0 28px 90px #0720432e}.login-panel .brand-mark{text-align:center;justify-content:center;margin-bottom:8px}.login-panel .brand-mark strong{font-size:28px}.login-panel .brand-mark span{margin-top:6px;display:block}.login-panel .primary-button{justify-content:center;align-items:center;min-height:48px;display:inline-flex;box-shadow:0 14px 25px #0f5fcb3d}.login-panel input{min-height:46px}.app-shell{background:#f5f7fb;grid-template-columns:280px 1fr}.sidebar{background:linear-gradient(#071a38,#132844);min-height:100vh;padding:18px 14px}.sidebar-head{color:#f8fbff;border-bottom:1px solid #ffffff14;margin-bottom:14px}.sidebar-head span{font-size:19px}.sidebar-head span:first-letter{color:#4ba3ff}.menu-group{gap:5px;margin:18px 0 8px;display:grid}.menu-group>strong{color:#8fa8c5;text-transform:uppercase;padding:0 10px 4px;font-size:11px}.sidebar button{color:#edf6ff;min-height:39px}.sidebar button.active{background:linear-gradient(90deg,#1d5fae,#1c4d86);box-shadow:inset 3px 0 #56a5ff}.workspace{background:#f5f7fb}.topbar{background:#fffffff5;height:72px;box-shadow:0 2px 16px #0f213b0f}.content-grid{gap:14px;margin:22px;display:grid}.content-grid>.panel,.content-grid>section{margin:0}.dashboard-heading h1{color:#0c1730;margin:0;font-size:26px}.dashboard-heading p{color:#66778a;margin:6px 0 0}.metric-strip{grid-template-columns:repeat(4,minmax(180px,1fr))}.metric{min-height:118px;padding:22px 22px 18px 78px;position:relative;box-shadow:0 16px 42px #11264412}.metric:before{content:"";background:#2e83ee;border-radius:50%;width:42px;height:42px;position:absolute;top:22px;left:22px}.metric:nth-child(2):before{background:#f59e0b}.metric:nth-child(3):before{background:#20b486}.metric:nth-child(4):before{background:#ef4444}.metric strong{color:#0c1730;font-size:31px}.dashboard-panels{grid-template-columns:minmax(420px,1.35fr) minmax(320px,.95fr);gap:14px;display:grid}.dashboard-panels .panel,.dashboard-tables .panel,.quick-panel{margin:0;box-shadow:0 16px 42px #1126440f}.status-chart-wrap{grid-template-columns:240px 1fr;align-items:center;gap:26px;display:grid}.donut-chart{background:radial-gradient(circle, #fff 0 42%, transparent 43%), conic-gradient(#20b486 0 58%, #2e83ee 58% 74%, #f59e0b 74% 86%, #ef4444 86% 92%, #8b9ab0 92% 100%);border-radius:50%;place-items:center;width:190px;height:190px;display:grid}.donut-chart strong{color:#0c1730;text-align:center;font-size:34px;display:block}.donut-chart span{color:#66778a;margin-top:40px;font-size:12px;display:block}.status-legend{gap:12px;display:grid}.status-legend span{color:#42526a;justify-content:space-between;gap:10px;display:flex}.status-legend i{background:#2e83ee;border-radius:50%;width:9px;height:9px;margin-top:5px}.finance-panel p{border-bottom:1px solid #edf1f6;justify-content:space-between;gap:16px;margin:0;padding:14px 0;display:flex}.finance-panel small{color:#66778a;font-weight:500}.dashboard-tables{grid-template-columns:minmax(520px,1.45fr) minmax(300px,.75fr);gap:14px;display:grid}.confirmation-panel p{grid-template-columns:38px 1fr;align-items:center;gap:2px 10px;margin:12px 0;display:grid}.confirmation-panel p span{color:#fff;background:#2e83ee;border-radius:50%;grid-row:span 2;place-items:center;width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.confirmation-panel small{color:#66778a}.quick-actions{flex-wrap:wrap;gap:14px;display:flex}.quick-actions button{color:#203348;cursor:pointer;background:#fff;border:1px solid #dbe4ee;border-radius:8px;place-items:center;gap:8px;width:104px;min-height:74px;font-size:12px;display:grid}@media (width<=1100px){.login-page{grid-template-columns:1fr}.login-page:before,.login-page:after{display:none}.dashboard-panels,.dashboard-tables,.status-chart-wrap{grid-template-columns:1fr}}
