/* Composition geometry/tokens from NAVIGATION_SHELL_CONTRACT_R1. */
html,body{margin:0;padding:0}body{font-family:Inter,system-ui,sans-serif;color:#1B1F24;-webkit-font-smoothing:antialiased;background:#F4F5F7}button{font-family:inherit}
.cc-shell{min-height:100vh;overflow-x:auto;background:#F4F5F7;--active:#128A76;--active-fill:#0E7060;--active-bg:#E1F2EE;--active-ink:#0E6B5B;--link:#0E7060;--row-h:72px;--row-pad:13px}
.cc-shell__body{display:flex;height:calc(100vh - 89px);min-width:1180px;background:#F4F5F7}.cc-shell__main{display:flex;flex:1;min-width:0;overflow:hidden}.cc-shell__main>.cc-home{width:100%}
.cc-shell__notice{padding:15px 16px;border:1px dashed #DCE0E6;border-radius:11px;background:#FCFCFD;color:#5F6B7A;font-size:12.5px;line-height:1.55;margin:8px 16px}.cc-shell__notice[hidden]{display:none}
.cc-shell__unavailable{padding:26px 32px;flex:1;overflow:auto}.cc-shell__unavailable h1{font-family:'Playfair Display',serif;font-size:28px;margin:0 0 16px}.cc-shell__unavailable p{font-size:13.5px;color:#667085}
.cc-shell--system,.cc-shell--system *,.cc-shell--system *::before,.cc-shell--system *::after{font-family:system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif!important}.cc-shell--amplo{zoom:1.14}
.cc-session-notice{max-width:580px;padding:32px;margin:64px auto;background:#fff;border:1px solid #EDEEF1;border-radius:12px}.cc-session-notice h1{font-family:'Playfair Display',serif;font-size:28px}.cc-session-notice p{line-height:1.5}.cc-session-notice button{padding:10px 14px;border:0;border-radius:7px;background:#0E7060;color:#fff;font-weight:700;cursor:pointer}.cc-session-notice button:focus-visible{outline:2px solid #128A76;outline-offset:3px}
@media(max-width:700px){
 html,body{max-width:100%;overflow-x:hidden}
 .cc-shell{width:100%;max-width:100vw;overflow-x:hidden}
 .cc-shell__body{width:100%;max-width:100vw;min-width:0}
 .cc-shell__main{width:calc(100% - 66px);min-width:0}
 .cc-shell--amplo{zoom:1}
}
/* E-STG (#17) preview badge: fixed, above everything, never intercepts clicks. */
.cc-env-banner{position:fixed;left:50%;bottom:10px;transform:translateX(-50%);z-index:1000;pointer-events:none;padding:6px 14px;border-radius:999px;background:#B42318;color:#fff;font:800 12px/1.2 Inter,system-ui,sans-serif;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 4px 14px rgba(16,24,40,.25)}
html.cc-env dialog[open]::after{content:var(--cc-env-label);position:fixed;left:50%;bottom:10px;transform:translateX(-50%);z-index:1000;pointer-events:none;padding:6px 14px;border-radius:999px;background:#B42318;color:#fff;font:800 12px/1.2 Inter,system-ui,sans-serif;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 4px 14px rgba(16,24,40,.25)}

/* Search only the implemented configuration destinations; route/API gates remain authoritative. */
.cc-config-index{min-width:0}.cc-config-index__search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;max-width:420px;margin:16px 0}.cc-config-index__search label{grid-column:1/-1;font-size:13px;font-weight:600}.cc-config-index__search input{width:100%;min-width:0;box-sizing:border-box;height:40px;padding:0 12px;border:1px solid #CBD3DA;border-radius:10px;font:13.5px Inter,sans-serif;color:#1B1F24}.cc-config-index__search button{border:1px solid #CBD3DA;border-radius:10px;background:#fff;color:#344054;padding:8px 12px;cursor:pointer}.cc-config-index__search button:disabled{opacity:.55;cursor:default}.cc-config-index__search :is(input,button):focus-visible{outline:2px solid #0E7060;outline-offset:2px}.cc-config-index li{margin:12px 0}.cc-config-index li[hidden]{display:none}.cc-config-index__description{display:block;font-size:12px;color:#667085;margin-top:3px}.cc-config-index__results{min-height:20px}
@media(max-width:700px){.cc-config-index{padding:20px 16px}.cc-config-index__search{grid-template-columns:minmax(0,1fr)}.cc-config-index__search button{justify-self:start}}
/* OPS-UI-1 (D012-A0061, D012 368-369): the operations balloon, fixed bottom-right, administrators only, hidden unless a */
/* measured warning exists. Amber dot (a warning, not a breach); the pulse stops when motion is reduced. */
.cc-ops-balloon{position:fixed;right:20px;bottom:20px;z-index:20;display:flex;align-items:center;gap:8px;height:42px;padding:0 15px;background:#2E3B23;color:#EAE7D9;border-radius:999px;box-shadow:0 10px 26px rgba(20,25,20,.32);text-decoration:none;font-family:Inter,sans-serif}.cc-ops-balloon[hidden]{display:none}.cc-ops-balloon:focus-visible{outline:2px solid #EAE7D9;outline-offset:2px}.cc-ops-balloon__dot{width:10px;height:10px;flex:none;border-radius:50%;background:#E0A23B;animation:cc-ops-pulse 1.4s infinite}.cc-ops-balloon__text{font-size:12.5px;font-weight:800}@keyframes cc-ops-pulse{0%,100%{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.cc-ops-balloon__dot{animation:none}}
/* OPS-UI-2 review: z-index 20 keeps the balloon under every popover (25-60), the queue scrim (180), the mobile topbar */
/* portal (240) and native modal dialogs (top layer); while it shows, the content keeps 42 + 20 + 20 px free at its */
/* bottom, so no control can rest under it at the end of a scroll. */
.cc-shell--ops-balloon .cc-shell__main{padding-bottom:82px;box-sizing:border-box}
/* LAB 01/10 (pin caff5051, PRODUCT_JOURNEY_DASHBOARD_PANEL_PLACEMENT): the Dashboard's side panel was the only element */
/* inside the content sized from the viewport (max-height:calc(100vh - 133px)); with the 82 px room it ran past the */
/* bottom of .cc-dash. While the balloon shows it takes the same 82 px off (side by side only; stacked it has no max). */
@media (min-width:981px){.cc-shell--ops-balloon .cc-dash__panel{max-height:calc(100vh - 215px)}}
/* D4 (OBR-10/21): "Operação · N avisos" strip, about 2 cm, in the flow under the topbar (never over content): the body gives */
/* up the same height. Amber for measured warnings, muted for an unknown state; the corner balloon is not drawn meanwhile. */
.cc-op-notice{box-sizing:border-box;min-height:2cm;display:flex;align-items:center;padding:0 20px;background:#2E3B23;color:#EAE7D9;font-family:Inter,sans-serif}.cc-op-notice[hidden]{display:none}.cc-op-notice[data-state=unknown]{background:#4A4F57}
.cc-op-notice__link{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-size:14px;font-weight:800}.cc-op-notice__link:focus-visible{outline:2px solid #EAE7D9;outline-offset:3px}.cc-op-notice__link:hover .cc-op-notice__text{text-decoration:underline}
.cc-op-notice__dot{width:10px;height:10px;flex:none;border-radius:50%;background:#E0A23B}.cc-op-notice[data-state=unknown] .cc-op-notice__dot{background:#C9CDD3}
.cc-shell--op-notice .cc-shell__body{height:calc(100vh - 89px - 2cm)}.cc-shell--op-notice .cc-ops-balloon{display:none}
/* D8 (OBR-43): the Rotina button and its panel; drawn only where the server switched a routine feature on. */
.cc-routine{position:fixed;top:54px;right:16px;z-index:40;font-family:Inter,sans-serif;color:#1B1F24}.cc-routine[hidden]{display:none}
.cc-routine__toggle{height:30px;padding:0 14px;border:1px solid #2E3B23;border-radius:999px;background:#F4F5F7;color:#2E3B23;font-size:12.5px;font-weight:800;cursor:pointer}.cc-routine__toggle:focus-visible,.cc-routine__action:focus-visible,.cc-routine__link:focus-visible{outline:2px solid #128A76;outline-offset:2px}
.cc-routine__badge{margin-left:6px;min-width:18px;height:18px;padding:0 5px;box-sizing:border-box;border-radius:9px;background:#B3402B;color:#fff;font-size:11px;font-weight:800;line-height:18px;text-align:center;display:inline-block}.cc-routine__badge[hidden]{display:none}
.cc-routine__panel{position:fixed;right:16px;top:90px;width:340px;max-height:calc(100vh - 110px);overflow:auto;box-sizing:border-box;padding:12px 14px;background:#fff;border:1px solid #D7DAE0;border-radius:12px;box-shadow:0 10px 26px rgba(20,25,20,.22)}.cc-routine__panel[hidden]{display:none}
.cc-routine__section{margin-bottom:14px}.cc-routine__title{margin:0 0 6px;font-size:13px;font-weight:800;color:#2E3B23}.cc-routine__hint{margin:4px 0;font-size:12px;color:#4A4F57}
.cc-routine__rows,.cc-routine__tasks,.cc-routine__mentions{list-style:none;margin:0;padding:0}.cc-routine__row{display:flex;justify-content:space-between;gap:10px;padding:3px 0;font-size:12.5px}.cc-routine__row-count{font-variant-numeric:tabular-nums}
.cc-routine__task,.cc-routine__mention{display:flex;justify-content:space-between;gap:8px;padding:3px 0;font-size:12.5px}.cc-routine__mention[data-read=false] .cc-routine__link{font-weight:800}.cc-routine__link{color:#0E7060;text-decoration:none}.cc-routine__link:hover{text-decoration:underline}
.cc-routine__action{margin-top:6px;height:28px;padding:0 12px;border:1px solid #0E7060;border-radius:8px;background:#fff;color:#0E7060;font-size:12px;font-weight:800;cursor:pointer}
