/* Shared visual and accessibility defaults, preserving app-specific layouts. */
dialog.civilos-popup-standard{border-color:#d4dfe9;box-shadow:0 24px 90px #10243a38;overscroll-behavior:contain}dialog.civilos-popup-standard::backdrop{background:#10243a91}dialog.civilos-popup-standard :is(button,a,input,select,textarea):focus-visible{outline:3px solid #60a9d5;outline-offset:3px}dialog.civilos-popup-standard .popup-enhanced-head{position:sticky;top:0;z-index:4;background:inherit}dialog.civilos-popup-standard button{touch-action:manipulation}body:has(dialog:modal){overflow:hidden}
dialog.civilos-popup{box-sizing:border-box;padding:0!important;border-radius:20px;width:min(740px,calc(100vw - 40px));max-width:none;max-height:min(900px,calc(var(--popup-viewport-height,100dvh) - 48px));overflow:hidden;background:#fff;color:#10243a}dialog.civilos-popup[data-popup-size=compact]{width:min(460px,calc(100vw - 32px))}dialog.civilos-popup[data-popup-size=wide]{width:min(960px,calc(100vw - 40px))}dialog.civilos-popup[data-popup-size=media]{width:min(1150px,calc(100vw - 24px))}.civilos-popup>form{display:flex;flex-direction:column;max-height:inherit;min-height:0;margin:0}.civilos-popup .popup-head{flex:none;position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 28px 20px;margin:0;border-bottom:1px solid #e5edf3;background:white;z-index:5}.civilos-popup .popup-head h2{font-size:24px;line-height:1.25;margin:6px 0 0;letter-spacing:-.025em}.civilos-popup .popup-head .eyebrow{font-size:10px;letter-spacing:.13em}.civilos-popup .popup-head>button{flex-shrink:0;min-height:44px}.civilos-popup .popup-body{padding:22px 28px;overflow:auto;overscroll-behavior:contain;min-height:0;scroll-padding:18px;flex:1 1 auto}.civilos-popup .popup-body>p:first-child{margin-top:0;color:#5c7387;line-height:1.7}.civilos-popup .popup-footer{flex:none;display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap;padding:16px 28px;border-top:1px solid #dfe8f0;background:#f9fbfd;z-index:5}.civilos-popup .popup-footer[hidden]{display:none}.civilos-popup .popup-footer>.form-actions{display:contents}.civilos-popup .popup-footer .button{min-height:44px;white-space:normal}.civilos-popup .form-draft-status{flex-basis:100%;font-size:11px;line-height:1.5;color:#607c90;text-align:right;margin:0}.civilos-popup .form-draft-status:empty{display:none}.civilos-popup .form-draft-notice{padding:14px;border:1px solid #cddfea;border-radius:12px;background:#eff7fc;font-size:13px;line-height:1.7;margin-bottom:20px}.civilos-popup .form-draft-notice button{margin:8px 8px 0 0}.civilos-popup .popup-field-error{display:block;color:#a42935;font-size:12px;line-height:1.6;margin-top:7px}.civilos-popup [aria-invalid=true]{border-color:#c34753!important;background:#fffafb!important}.civilos-popup [data-error]:not([hidden]){padding:12px 14px;background:#fff1f1;border:1px solid #efd1d5;border-radius:10px;margin:0 0 18px;line-height:1.6;color:#9e2935}.civilos-popup [hidden]{display:none!important}.civilos-popup .popup-steps{display:flex;gap:8px;padding:14px 28px;flex:none;border-bottom:1px solid #e3ebf2;background:#f8fbfd}.civilos-popup .popup-steps button{display:flex;align-items:center;gap:9px;background:none;border:0;border-radius:9px;color:#647c90;font:inherit;font-size:13px;min-height:44px;padding:8px 12px;cursor:pointer}.civilos-popup .popup-steps span{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border:1px solid #c8d9e5;border-radius:50%;font-size:11px}.civilos-popup .popup-steps [aria-current]{background:#e3f2fc;color:#14628f;font-weight:700}.civilos-popup .popup-steps [aria-current] span{background:#197fb4;color:white;border-color:#197fb4}.civilos-popup .popup-step-actions{display:contents}.civilos-popup .popup-draft-action{margin-right:auto}.civilos-popup .popup-optional{background:#f2f7fb;border:1px solid #dce7ef;border-radius:12px;padding:16px;margin-top:22px}.civilos-popup .popup-optional summary{font-size:13px;font-weight:650;cursor:pointer;min-height:32px;line-height:1.6}.civilos-popup .popup-section-title{font-size:15px;margin:25px 0 14px;padding-top:22px;border-top:1px solid #e2ebf2}.civilos-popup .network-review{border-top:0;padding-top:0;margin-top:0}.civilos-popup .network-review>.network-check{margin-bottom:14px}.civilos-popup .popup-footer>.field{flex-basis:100%;margin:0;width:100%}.civilos-popup.popup-conversation .popup-footer textarea{min-height:72px;max-height:140px;resize:vertical}.civilos-popup.popup-conversation .popup-footer>p{margin:0}.civilos-popup .popup-footer .field>label{font-size:12px}.civilos-popup .popup-footer .hint{flex-basis:100%}.civilos-popup .popup-footer [data-popup-field-error]{flex-basis:100%}
@media(max-width:760px){dialog.civilos-popup-standard button{min-height:44px}dialog.civilos-popup-standard :is(input,select,textarea){font-size:16px}dialog.civilos-popup{width:calc(100vw - 20px);max-height:calc(var(--popup-viewport-height,100dvh) - 24px);border-radius:17px}dialog.civilos-popup.popup-sheet{position:fixed;inset-inline:0;top:var(--popup-viewport-top,0px);bottom:auto;margin:0;width:100%;height:var(--popup-viewport-height,100dvh);max-height:var(--popup-viewport-height,100dvh);border:0;border-radius:0}dialog.popup-sheet>form{height:100%;max-height:100%;width:100%}.civilos-popup .popup-head{padding:calc(17px + env(safe-area-inset-top,0px)) 18px 16px;gap:12px}.civilos-popup .popup-head h2{font-size:21px}.civilos-popup .popup-body{padding:18px}.civilos-popup .popup-footer{padding:12px 18px calc(12px + env(safe-area-inset-bottom,0px));gap:8px}.civilos-popup .popup-footer .button{padding:10px 13px;font-size:13px}.civilos-popup .popup-steps{padding:8px 10px;gap:0;justify-content:space-between}.civilos-popup .popup-steps button{padding:7px 6px;gap:6px;font-size:11px}.civilos-popup .popup-steps span{width:22px;height:22px;flex-basis:22px}.civilos-popup .form-draft-status{text-align:left}.civilos-popup .popup-draft-action{margin-right:0}.civilos-popup .popup-footer:not(:has(.field))>.button{flex:1 1 auto}.civilos-popup.popup-conversation .popup-footer textarea{min-height:64px;max-height:100px}.civilos-popup .popup-optional{padding:14px}dialog.civilos-popup::backdrop{backdrop-filter:none}.civilos-popup .popup-head .button{min-height:44px;padding:9px 12px}.civilos-popup .popup-footer .popup-field-error{font-size:12px}}
@media(prefers-reduced-motion:no-preference){dialog.civilos-popup[open]{animation:popup-appear .14s ease-out}@keyframes popup-appear{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}}

.civilos-popup .popup-leave-prompt{padding:18px;border:1px solid #b7d5e8;border-radius:12px;background:#edf7fd;margin-bottom:20px;line-height:1.65}.civilos-popup .popup-leave-prompt strong{font-size:15px}.civilos-popup .popup-leave-prompt p{color:#4d6b80;font-size:13px}.civilos-popup .popup-leave-prompt button{margin:5px 8px 0 0;min-height:44px}

/* Quiet colour accents across existing dialogs; layouts and semantic colours stay intact. */
dialog.civilos-popup-standard{--popup-accent:#176bc4;--popup-tint:#edf5ff;border-top:3px solid var(--popup-accent)}
body:has(.plantos-host) dialog.civilos-popup-standard{--popup-accent:#b3830d;--popup-tint:#fff9e8}
body:has(.siteos-host) dialog.civilos-popup-standard{--popup-accent:#149580;--popup-tint:#eaf7f3}
body:has(.attendos-host) dialog.civilos-popup-standard{--popup-accent:#8064cf;--popup-tint:#f3effc}
body:has(.safeos-host) dialog.civilos-popup-standard{--popup-accent:#0284c7;--popup-tint:#edf8ff}
body:has(.surveyos-host) dialog.civilos-popup-standard{--popup-accent:#be123c;--popup-tint:#fff1f3}
body:has(.assetos-host) dialog.civilos-popup-standard{--popup-accent:#4d7c0f;--popup-tint:#f2f9e9}
body:has(.fleetos-host) dialog.civilos-popup-standard{--popup-accent:#7c3e17;--popup-tint:#fbf3ed}
body:has(.workforceos-host) dialog.civilos-popup-standard{--popup-accent:#475569;--popup-tint:#f0f4f8}
body:has(.connectos-host) dialog.civilos-popup-standard{--popup-accent:#c2410c;--popup-tint:#fff4ec}
dialog.civilos-popup-standard :is(.popup-enhanced-head,.popup-head){background:linear-gradient(110deg,var(--popup-tint),#fff);border-bottom:1px solid color-mix(in srgb,var(--popup-accent) 18%,#fff)}
dialog.civilos-popup-standard .popup-head .eyebrow{color:var(--popup-accent)}
dialog.civilos-popup-standard .popup-footer{background:var(--popup-tint);border-top-color:color-mix(in srgb,var(--popup-accent) 18%,#fff)}
dialog.civilos-popup-standard .popup-optional{background:var(--popup-tint);border-left:3px solid var(--popup-accent)}
dialog.civilos-popup-standard .popup-optional summary{color:#244360}
dialog.civilos-popup-standard :is(input,select,textarea):focus-visible{outline-color:var(--popup-accent)}
