/* FEBC CMS: the single source for shared design tokens and page components.
   Change tokens here; templates and scripts must not define page-specific CSS. */
:root {
 --cms-navy-deep:#172f43;
 --cms-navy:#1c394f;
 --cms-warm:#c58e65;
 --cms-surface:#f6f7fa;
 --cms-text:#203247;
 --cms-text-muted:#647386;
 --cms-border:#e1e6ec;
 --cms-editor-surface:#f2f6fc;
 --cms-editor-icon:#285d8f;
 --cms-editor-hover:#e9d8c8;
 --cms-font:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR","Malgun Gothic",sans-serif;
 --cms-space-1:4px;
 --cms-space-2:8px;
 --cms-space-3:12px;
 --cms-space-4:16px;
 --cms-space-5:20px;
 --cms-space-6:24px;
 --cms-control-radius:10px;
 --cms-card-radius:12px;
 --cms-dialog-radius:20px;
 --cms-control-height:48px;
 --cms-type-body:15px;
 --cms-type-label:14px;
 --cms-type-small:13px;
 --cms-type-title:40px;
}
.content-body {font-family:var(--cms-font);color:var(--cms-text);}
/* Shared by standard and Google OTP login views. */
.cms-login-body{min-height:100%;margin:0}
.cms-login-body{background:var(--cms-surface);color:var(--cms-text);font-family:var(--cms-font);-webkit-font-smoothing:antialiased}
.login-page,.login-page.container{width:100%;max-width:none;min-height:100vh;min-height:100svh;padding:40px;display:flex;align-items:center;justify-content:center}
.login-shell{width:1080px;max-width:100%;min-height:680px;display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid #e2e7ed;border-radius:24px;overflow:hidden;box-shadow:0 24px 80px #243b5510}
.login-story{position:relative;isolation:isolate;overflow:hidden;padding:48px;background:var(--cms-navy-deep);color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.login-story:before,.login-story:after{content:"";position:absolute;z-index:-1;width:560px;height:560px;border:1px solid #ffffff0d;border-radius:50%;left:75px;top:165px}
.login-story:after{width:400px;height:400px;left:155px;top:245px}
.login-brand{display:flex;gap:14px;align-items:center;color:#fff;text-decoration:none;width:fit-content}
.login-brand:hover{color:#fff}
.login-brand img{object-fit:contain;background:#fff;border-radius:14px;padding:7px;box-sizing:border-box}
.login-brand span{font-size:19px;font-weight:700;letter-spacing:-.5px}
.login-brand strong{display:block;font-size:10px;letter-spacing:2.5px;margin-top:5px;font-weight:500;color:#a7bbc9}
.login-eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#7a8796}
.login-story-copy{position:relative;z-index:1;margin:72px 0 130px}
.login-story-copy .login-eyebrow{color:#e6b18a}
.login-story h2{font-size:36px;line-height:1.5;font-weight:650;letter-spacing:-1.7px;margin:22px 0 20px;color:#fff}
.login-story-copy p{font-size:14px;line-height:1.9;color:#b5c4d0;margin:0}
.login-story-footer{font-size:9px;letter-spacing:1px;color:#94a9b8;position:relative;z-index:1;margin:0}
.login-wave{position:absolute;left:48px;right:48px;bottom:100px;display:flex;align-items:center;justify-content:space-between;height:70px;opacity:.75}
.login-wave i{display:block;width:4px;height:16px;background:var(--cms-warm);border-radius:6px}
.login-wave i:nth-child(3n){height:34px}.login-wave i:nth-child(4n){height:56px}.login-wave i:nth-child(5n){height:42px}.login-wave i:nth-child(7n){height:70px}
.login-panel{padding:44px 48px 24px;display:flex;flex-direction:column;justify-content:center}
.login-panel-inner{width:100%;margin:auto 0}
.login-panel h1{font-size:29px;font-weight:700;letter-spacing:-1.2px;margin:14px 0 12px;line-height:1.35}
.login-description{font-size:14px;line-height:1.7;color:#768191;margin-bottom:24px}
.login-field{margin-bottom:22px}
.login-field label{display:block;font-size:13px;font-weight:650;margin-bottom:9px;color:#344254}
.login-field .form-control{height:52px;padding:0 15px;border:1px solid #dbe0e7;background:#fff;border-radius:8px;font-size:14px;color:var(--cms-text);box-shadow:none;transition:border-color .15s,box-shadow .15s}
.login-field .form-control::placeholder{color:#9ca5b0;font-size:13px}
.login-field .form-control:focus{border-color:#526e86;box-shadow:0 0 0 3px #526e861c}
.login-submit{display:flex;align-items:center;justify-content:center;position:relative;width:100%;height:52px;margin-top:28px;border:0;border-radius:8px;background:var(--cms-navy);color:white;font-size:14px;font-weight:650;cursor:pointer;transition:background .15s,transform .15s}
.login-submit:hover{background:#294e68}.login-submit:active{transform:translateY(1px)}
.login-submit i{position:absolute;right:19px;font-size:18px;color:#bdcbd5}
.login-submit:focus-visible,.login-reset a:focus-visible,.login-brand:focus-visible{outline:3px solid var(--cms-warm);outline-offset:4px}
.login-notice{display:flex;gap:10px;padding:16px 13px;margin-top:24px;border-radius:8px;background:#f5f7f9;color:#697686}
.login-notice>i{font-size:16px;color:#718193}
.login-notice p{font-size:11px;line-height:1.8;margin:0;word-break:keep-all}
.login-notice p span{color:#87919e}
.login-help{display:flex;flex-direction:column;gap:5px;border-top:1px solid #edf0f3;margin-top:26px;padding-top:22px;font-size:11px;color:#8b95a1}
.login-contact{color:#526476;overflow-wrap:anywhere}
.login-copyright{font-size:10px;color:#9aa3ad;margin:24px 0 0;letter-spacing:.2px}
.login-reset{text-align:right;margin-top:-7px;font-size:12px}.login-reset a{color:#526476;text-decoration:none}.login-reset a:hover{text-decoration:underline}
.login-page .alert-popup-bg{z-index:1000!important;background:#12243680;backdrop-filter:blur(3px);border:0;padding:20px}
.login-page .alert-popup{width:420px;max-width:calc(100vw - 40px);border:0;border-radius:16px;padding:20px;background:white;box-shadow:0 24px 80px #0002}
.login-page .alert-popup .alert-title{font-size:18px;padding:0 0 18px;color:var(--cms-text)}
.login-page .alert-popup .alert-content{display:block;width:auto;padding:10px 0;font-size:13px;color:#697686}
.login-page .alert-popup .alert-button{padding:20px 0 0}
.login-page .alert-popup .alert-button button{background:var(--cms-navy);color:#fff;border:0;border-radius:8px;min-height:42px}
.login-page .alert-popup input[name=code]{max-width:100%;height:48px;border-radius:8px;letter-spacing:5px}
@media(min-width:1500px){.login-shell{min-height:720px}}
@media(max-width:991px){.login-page,.login-page.container{padding:24px}.login-story{padding:36px}.login-story h2{font-size:29px}.login-panel{padding:48px 32px 24px}.login-wave{left:36px;right:36px}.login-story-footer{font-size:8px}}
@media(max-width:700px){.login-page,.login-page.container{padding:20px 16px;align-items:flex-start}.login-shell{max-width:460px;grid-template-columns:1fr;min-height:0;border-radius:18px}.login-story{padding:25px 28px}.login-brand img{width:44px;height:44px;border-radius:11px}.login-brand span{font-size:17px}.login-brand strong{font-size:9px;margin-top:3px}.login-story-copy,.login-wave,.login-story-footer{display:none}.login-panel{padding:32px 28px 22px}.login-panel h1{font-size:26px}.login-description{font-size:13px;margin-bottom:28px}.login-copyright{margin-top:28px}.login-eyebrow{font-size:9px;letter-spacing:1.5px}}
@media(prefers-reduced-motion:reduce){.login-submit,.login-field .form-control{transition:none}}
/* Account-type selection and server-verified authentication. */
[hidden]{display:none!important}
:is(.cms-tabs,.login-tabs,.cms-program-tabs){display:flex;align-items:stretch;gap:4px;padding:0;margin-bottom:22px;border:0;border-bottom:1px solid #dce4ec;border-radius:0;background:transparent;overflow-x:auto;scrollbar-width:thin}
:is(.cms-tabs,.login-tabs,.cms-program-tabs)>button{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:0 0 auto;min-height:44px;padding:11px 15px;border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;box-shadow:none;color:#697b8e;font:inherit;font-size:14px;font-weight:650;white-space:nowrap;cursor:pointer}
:is(.cms-tabs,.login-tabs,.cms-program-tabs)>button[aria-selected=true]{border-bottom-color:var(--cms-warm);background:transparent;box-shadow:none;color:var(--cms-navy-deep)}
:is(.cms-tabs,.login-tabs,.cms-program-tabs)>button:hover{color:var(--cms-navy-deep);background:#f5f7f9}
.login-tabs>button{flex:1}
.login-tabs button:focus-visible,.login-text-button:focus-visible{outline:3px solid var(--cms-warm);outline-offset:2px}
.login-submit:disabled{opacity:.55;cursor:wait}
.login-message{padding:13px;border-radius:8px;background:#fff1ed;color:#97401f;font-size:12px;line-height:1.7;margin-bottom:18px;overflow-wrap:anywhere}
.passkey-intro{text-align:center;padding:12px 0 0}.passkey-intro>i{font-size:44px;color:#526e86}
.passkey-intro h2{font-size:18px;font-weight:650;margin:15px 0 12px}.passkey-intro p,.passkey-help{font-size:13px;line-height:1.7;color:var(--cms-text-muted)}
.passkey-help{margin:20px 0 0;text-align:center;word-break:keep-all}.passkey-active{text-align:center}.passkey-active>p{font-size:13px;color:#637486}
#passkey-timer{color:#526e86;display:block;margin:6px 0}#passkey-qr{margin:15px auto;width:220px;max-width:100%;padding:10px;background:#fff;border:1px solid #e4e9ee;border-radius:12px}
#passkey-qr svg{display:block;width:100%;height:auto}.passkey-confirmation{background:#f3f6f8;padding:12px;border-radius:8px}.passkey-confirmation span{display:block;font-size:11px;color:#748191}.passkey-confirmation strong{display:block;font-size:28px;letter-spacing:6px;color:var(--cms-navy);margin-top:5px;font-variant-numeric:tabular-nums}
#passkey-status{margin-top:13px}.login-text-button{display:block;margin:12px auto 0;padding:8px;border:0;background:none;color:#526e86;font-size:13px;line-height:1.5;cursor:pointer}
.login-text-button:hover{text-decoration:underline;text-underline-offset:4px}
.login-secondary-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;margin-top:12px;padding:10px 14px;border:1px solid #cbd6e0;border-radius:8px;background:#fff;color:var(--cms-navy);font:inherit;font-size:14px;font-weight:650;cursor:pointer;transition:border-color .15s,background .15s}
.login-secondary-button:hover{border-color:#6e879b;background:#f5f7f9}
.login-secondary-button:focus-visible{outline:3px solid var(--cms-warm);outline-offset:3px}
.passkey-local-card{padding-top:2px;text-align:left}
.passkey-local-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
.passkey-local-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid #dce5ec;border-radius:12px;background:#f0f4f7;color:var(--cms-navy)}
.passkey-local-icon svg{display:block;width:26px;height:26px}
.passkey-time-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #e6dfd7;border-radius:6px;background:#faf7f3;color:#6d5a49;font-size:12px;line-height:1.4;white-space:nowrap}
.passkey-time-badge strong{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--cms-navy)}
.passkey-local-card h2{margin:0 0 8px;font-size:20px;line-height:1.4;font-weight:700;letter-spacing:-.5px}
.passkey-local-description{margin:0;color:var(--cms-text-muted);font-size:14px;line-height:1.65;word-break:keep-all}
.passkey-local-progress{display:flex;align-items:center;gap:10px;min-height:48px;margin:14px 0;padding:10px 12px;border:1px solid #dfe7ee;border-radius:8px;background:#f5f8fa;font-size:13px;line-height:1.6;color:#3e5870;word-break:keep-all}
.login-progress-dot{flex:0 0 15px;width:15px;height:15px;border:2px solid #cbd6df;border-top-color:var(--cms-navy);border-radius:50%;animation:cms-login-progress 1s linear infinite}
.passkey-local-card .login-submit{height:46px;margin:0;gap:10px}
.passkey-local-card .login-submit:disabled{opacity:1;background:#e9eef2;color:#62788a;cursor:default}
.login-submit>span[aria-hidden=true]{font-size:18px;line-height:1}
.passkey-local-alternative{display:flex;align-items:center;gap:12px;margin:18px 0 0;color:#788593;font-size:12px;white-space:nowrap}
.passkey-local-alternative:before,.passkey-local-alternative:after{content:"";flex:1;height:1px;background:var(--cms-border)}
@keyframes cms-login-progress{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.login-progress-dot{animation:none}.login-secondary-button{transition:none}}
.otp-verify-form>label{font-size:13px;font-weight:650;margin-bottom:9px}.otp-verify-form>p{font-size:12px;color:#748191;line-height:1.7}.otp-verify-form input{height:52px;border:1px solid #dbe0e7;border-radius:8px;text-align:center;letter-spacing:6px;font-size:20px}.otp-expiry{margin-top:10px}.login-panel{min-width:0}

/* Workspace components. Native controls and dialogs; no legacy framework stylesheet. */
.cms-workspace-root {min-height:100%;background:var(--cms-surface);}
.cms-workspace {--cms-sidebar:252px;--cms-topbar-height:76px;--cms-ink:var(--cms-text);--cms-muted:var(--cms-text-muted);--cms-line:var(--cms-border);margin:0;color:var(--cms-text);background:var(--cms-surface);font:400 15px/1.65 var(--cms-font);letter-spacing:-.025em;-webkit-font-smoothing:antialiased;}
.cms-workspace *, .cms-workspace *::before,.cms-workspace *::after {box-sizing:border-box;}
.cms-workspace [hidden] {display:none!important;}
.cms-workspace :is(h1,h2,h3,h4,p,dl,dd) {margin:0;}
.cms-workspace :where(button,input,select,textarea) {font:inherit;letter-spacing:inherit;}
.cms-workspace button {cursor:pointer;}
.cms-workspace :is(button,input,select,textarea):disabled {cursor:default;opacity:.5;}
.cms-workspace a {color:inherit;text-decoration:none;}
.cms-workspace :is(a,button,input,select,textarea,summary):focus-visible {outline:3px solid var(--cms-warm);outline-offset:3px;}
.cms-icon {display:inline-block;width:1em;height:1em;flex-shrink:0;vertical-align:-.15em;}
.visually-hidden {position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.cms-skip {position:fixed;top:-100px;left:280px;z-index:150;padding:12px 18px;background:#fff;color:var(--cms-navy);border-radius:8px;}
.cms-skip:focus {top:12px;}
/* Global shell */
.cms-sidebar {position:fixed;inset:0 auto 0 0;width:var(--cms-sidebar);z-index:60;display:flex;flex-direction:column;background:var(--cms-navy-deep);color:#d7e1eb;border-right:1px solid #172f43;transition:transform .2s;}
.cms-brand {display:flex;align-items:center;gap:12px;padding:30px 24px;color:#fff!important;}
.cms-brand img {background:#fff;border-radius:9px;padding:5px;object-fit:contain;flex-shrink:0;}
.cms-brand>span:not(.cms-brand-label) {font-size:19px;font-weight:700;letter-spacing:-.04em;white-space:nowrap;}
.cms-brand strong {display:block;margin-top:3px;font-size:11px;font-weight:400;letter-spacing:0;color:#b5c4d3;}
.cms-brand-label {margin-left:auto;padding:3px 6px;border:1px solid #ffffff25;border-radius:5px;color:#e0bd9e;font-size:10px;font-weight:700;}
.cms-workspace-label {display:flex;align-items:center;gap:8px;margin:0 24px 24px;padding-top:22px;border-top:1px solid #ffffff14;color:#a5b8c9;font-size:10px;font-weight:650;letter-spacing:.13em;}
.cms-live-dot {width:6px;height:6px;border-radius:50%;background:var(--cms-warm);}
.cms-navigation {flex:1;overflow-y:auto;padding:0 14px 28px;scrollbar-width:thin;}
.cms-nav-caption {padding:0 14px 12px;font-size:11px;color:#8fa5b9;}
.cms-nav-group {margin-bottom:10px;}
.cms-nav-group summary {display:flex;align-items:center;gap:12px;min-height:49px;padding:12px 14px;list-style:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;color:#c2d0dd;}
.cms-nav-group summary::-webkit-details-marker,.cms-optional-section summary::-webkit-details-marker,.cms-advanced-filters summary::-webkit-details-marker {display:none;}
.cms-nav-group summary:hover {background:#ffffff08;}
.cms-nav-group[open]>summary {color:#fff;}
.cms-nav-group summary>.cms-icon:first-child {font-size:18px;color:#94aec4;}
.cms-nav-chevron {margin-left:auto;font-size:11px;transition:transform .15s;}
.cms-nav-group[open] .cms-nav-chevron {transform:rotate(180deg);}
.cms-nav-children {margin:2px 0 8px 24px;padding-left:13px;border-left:1px solid #ffffff1c;}
.cms-nav-children a,.cms-nav-direct {display:block;padding:10px 13px;margin:4px 0;border-radius:6px;color:#b4c5d4;font-size:14px;}
.cms-nav-children a:hover {color:#fff;background:#ffffff08;}
.cms-nav-children a.is-active {position:relative;background:#ffffff12;color:#fff;font-weight:650;}
.cms-nav-children a.is-active::before {content:"";position:absolute;left:-15px;top:14px;width:3px;height:17px;background:var(--cms-warm);border-radius:2px;}
.cms-nav-leaf {padding-left:22px!important;}.cms-nav-last {padding-left:30px!important;}.cms-nav-direct {margin-left:26px;}
.cms-sidebar-close {display:none!important;}
.cms-main {margin-left:var(--cms-sidebar);padding-top:var(--cms-topbar-height);min-height:100vh;transition:margin-left .2s;}
.cms-topbar {position:fixed;top:0;left:var(--cms-sidebar);right:0;z-index:30;height:var(--cms-topbar-height);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 40px;background:#ffffffed;border-bottom:1px solid var(--cms-border);backdrop-filter:blur(12px);transition:left .2s;}
.cms-topbar-controls,.cms-topbar-account {display:flex;align-items:center;gap:18px;}
.cms-topbar-account form {margin:0;padding-left:16px;border-left:1px solid var(--cms-border);}
.cms-icon-button {display:inline-grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid transparent;border-radius:9px;color:#708396;background:transparent;font-size:20px;flex-shrink:0;}
.cms-icon-button:hover {color:var(--cms-navy);background:#edf1f5;}
.cms-modal-close {display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;line-height:1;padding:0;}
.cms-close-icon {display:block;flex:0 0 20px;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;pointer-events:none;}
.cms-sidebar-toggle {border-color:#e1e6ec;color:#526c84;}
.cms-user {display:flex;align-items:center;gap:11px;min-width:0;}.cms-avatar {display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#edf1f5;color:#617a91;font-size:20px;}
.cms-user strong {display:block;font-size:14px;font-weight:650;max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cms-user small {display:block;font-size:11px;color:var(--cms-text-muted);}
.cms-content {max-width:1680px;margin:0 auto;padding:34px 40px 0;outline:0;}
.cms-page-footer {display:flex;justify-content:space-between;gap:20px;padding:28px 0;font-size:11px;color:#8995a2;}
.cms-workspace.cms-dialog-open {overflow:hidden;}
/* Page header: typographic hierarchy rather than an oversized decorative card. */
.cms-page-hero {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 20px;position:relative;margin-bottom:18px;padding:0;background:none;border:0;box-shadow:none;}
.cms-hero-page-info {grid-column:1;grid-row:1/3;min-width:0;padding:0;}
.cms-hero-kicker {display:none;}
.cms-hero-page-info h1 {font-size:30px;line-height:1.2;font-weight:750;letter-spacing:-.055em;color:var(--cms-navy-deep);margin:0 0 6px;}
.cms-hero-page-info p {font-size:14px;line-height:1.6;color:var(--cms-text-muted);margin:0;}
.cms-hero-breadcrumb {grid-column:2;grid-row:1;align-self:start;display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;min-width:0;padding:0;font-size:12px;color:#7b8796;text-align:right;}
.cms-hero-breadcrumb strong {color:#42576d;font-weight:600;}.cms-path-divider {color:#b1bac4;}
.cms-hero-actions {grid-column:2;grid-row:2;display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:8px 0 0;border:0;}
.cms-hero-actions>span {font-size:13px;color:var(--cms-text-muted);}.cms-hero-actions:has(.cms-button)>span,.cms-hero-orbit {display:none;}
/* Controls */
.cms-button {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 18px;border:1px solid transparent;border-radius:8px;font-size:14px;font-weight:650;line-height:1.4;white-space:nowrap;transition:background .15s,border-color .15s;}
.cms-button-primary,.cms-button-dark {background:var(--cms-navy);color:#fff!important;border-color:var(--cms-navy);box-shadow:0 2px 3px #172f4308;}
.cms-button-primary:hover,.cms-button-dark:hover {background:#2d506b;border-color:#2d506b;}
.cms-button-secondary {background:#fff;color:#506278;border-color:#d9e0e8;}.cms-button-secondary:hover {background:#f6f8fa;border-color:#bdcbd9;}
.cms-text-button {display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:5px 7px;border:0;background:transparent;color:#62788e;font-size:13px;font-weight:500;}
.cms-text-button:hover {color:var(--cms-navy);text-decoration:underline;}
.cms-site-actions,.cms-detail-actions {display:flex;align-items:center;flex-wrap:wrap;gap:10px;}
.cms-required {color:#a45c42;}.cms-help,.cms-field-help {font-size:13px;color:var(--cms-text-muted);line-height:1.8;}
.cms-edit-field {min-width:0;}.cms-edit-field>label,.cms-search-row label {display:block;margin:0 0 9px;font-size:14px;font-weight:600;color:#44576b;}
.cms-edit-field :is(input:not([type=checkbox]),select,textarea),.cms-select,.cms-permission-search {width:100%;min-width:0;border:1px solid #d5dee7;border-radius:8px;background:#fff;padding:12px 13px;color:var(--cms-text);font-size:15px;line-height:1.5;}
.cms-edit-field :is(input:not([type=checkbox]):not([type=hidden]),select),.cms-select {height:48px;}
.cms-edit-field select[multiple] {height:auto;min-height:128px;}.cms-edit-field textarea {min-height:100px;resize:vertical;}
.cms-edit-field input[readonly] {background:#f5f7fa;color:#5f7388;}
.cms-edit-field :is(input,select,textarea):focus {outline:0;border-color:#7190ac;box-shadow:0 0 0 3px #7190ac12;}
.cms-edit-field :is(input,select,textarea)[aria-invalid=true] {border-color:#bc7055;}
.cms-edit-field :is(input,textarea)::placeholder {color:#97a2b0;}
.cms-edit-field>small {display:block;margin-top:6px;}.cms-edit-field>small:empty {display:none;}
.cms-field-error {font-size:13px;color:#a54e36;line-height:1.7;margin-top:6px;}
.cms-field-inline,.cms-field-action {display:flex;align-items:stretch;gap:8px;}.cms-field-action input,.cms-field-inline input {flex:1;min-width:0;}.cms-field-action button {flex-shrink:0;}
.cms-edit-note {font-size:13px;line-height:1.8;color:#5f7387;padding:14px 17px;border:1px solid #dfe7ee;border-radius:9px;background:#eef3f7;margin-bottom:20px;}
.cms-editor-errors {padding:16px 18px;margin-bottom:20px;border:1px solid #ead0c2;background:#fcf5ef;color:#935537;border-radius:9px;font-size:14px;line-height:1.8;}
/* Search */
.cms-filter-card,.cms-list-card,.cms-form-card {background:#fff;border:1px solid var(--cms-border);border-radius:var(--cms-card-radius);box-shadow:0 2px 3px #20324702;}
.cms-filter-card {position:relative;padding:24px;margin-bottom:22px;}
.cms-filter-heading {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;}
.cms-filter-heading>div {display:flex;align-items:center;gap:10px;}.cms-filter-heading .cms-icon {font-size:19px;color:#56718b;}
.cms-filter-heading h2,.cms-list-heading h2,.cms-form-title {font-size:17px;font-weight:700;color:#243a50;letter-spacing:-.035em;}
.cms-filter-grid,.cms-site-log-filters {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:end;}
.cms-advanced-filters {margin-top:18px;}.cms-advanced-filters summary {display:flex;align-items:center;gap:8px;width:fit-content;list-style:none;cursor:pointer;color:#718398;font-size:13px;padding:6px 0;}
.cms-advanced-filters[open] summary {margin-bottom:14px;}.cms-advanced-filters[open] summary span {transform:rotate(45deg);}
.cms-advanced-filters .cms-filter-grid {grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:22px;}
.cms-filter-actions {display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:-37px;}.cms-advanced-filters[open]+.cms-filter-actions {margin-top:0;}
.cms-search-row {display:flex;align-items:end;gap:12px;}.cms-search-field {flex:1;min-width:0;}.cms-size-field {width:120px;}
.cms-search-input {display:flex;align-items:center;gap:10px;min-height:46px;padding:0 13px;border:1px solid #d5dee7;border-radius:8px;color:#8999a9;}
.cms-search-input:focus-within {border-color:#7190ac;box-shadow:0 0 0 3px #7190ac12;}.cms-search-input input {width:100%;min-width:0;height:46px;padding:0;border:0;outline:0;background:none;font-size:15px;color:var(--cms-text);}
.cms-status-filters {display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:20px 0 0;padding:0;border:0;}.cms-status-filters legend {float:left;width:auto;margin:0 8px 0 0;font-size:13px;color:#718296;}
.cms-status-filters label {display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border:1px solid #e3e8ee;border-radius:7px;font-size:13px;cursor:pointer;color:#66798d;background:#fff;}.cms-status-filters label.is-selected {color:var(--cms-navy);background:#edf2f7;border-color:#bacbdb;}
.cms-status-filters input {accent-color:var(--cms-navy);}.cms-filter-dot {width:5px;height:5px;border-radius:50%;background:#a1adba;}.cms-dot-active {background:#6e89a1;}.cms-dot-locked {background:#c39465;}.cms-dot-disabled {background:#a19a95;}
/* Lists */
.cms-list-heading {display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;}.cms-list-heading p {font-size:13px;color:var(--cms-text-muted);margin-top:5px;}
.cms-count {display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:25px;margin-left:6px;padding:0 8px;border:1px solid #e5eaf0;border-radius:6px;background:#f5f7fa;font-size:12px;font-weight:650;color:#50677f;vertical-align:middle;}
.cms-table-scroll {position:relative;min-width:0;overflow-x:auto;max-width:100%;}.cms-admin-table {width:100%;border-collapse:collapse;text-align:left;font-size:14px;line-height:1.65;min-width:950px;}
.cms-admin-table th {padding:13px 20px;border-block:1px solid #e8edf2;background:#f9fafc;color:#708197;font-size:13px;font-weight:600;white-space:nowrap;}
.cms-admin-table td {height:88px;padding:18px 20px;border-bottom:1px solid #edf0f4;color:#40566d;vertical-align:middle;}.cms-admin-table tbody tr:last-child td {border-bottom:0;}.cms-admin-table tbody tr:hover {background:#fbfcfe;}
.cms-col-no {width:65px;}.cms-admin-table .cms-td-no {color:#8795a5;font-variant-numeric:tabular-nums;}
.cms-sort {display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;color:inherit;font:inherit;}.cms-sort .cms-icon {font-size:12px;color:#a1aebc;}
.cms-member-person,.cms-person-button {display:flex;align-items:center;gap:12px;min-width:145px;}.cms-person-button {border:0;background:none;padding:0;text-align:left;color:var(--cms-navy);}
.cms-member-avatar,.cms-person-avatar {display:inline-grid;place-items:center;width:40px;height:40px;flex-shrink:0;background:#f3eee9;border:1px solid #ece1d7;border-radius:11px;color:#906d4f;font-size:15px;font-weight:650;}
.cms-record-name {padding:0;border:0;background:none;font-size:15px;font-weight:700;color:var(--cms-navy-deep);text-align:left;}.cms-record-name:hover {text-decoration:underline;}.cms-person-button strong {display:block;font-size:15px;font-weight:650;}.cms-person-button small {display:block;font-size:12px;color:#7f8fa1;}
.cms-record-meta {font-size:12px;color:#8190a2;margin-top:3px;font-variant-numeric:tabular-nums;}.cms-member-contact {max-width:230px;overflow-wrap:anywhere;}
.cms-id-button {border:0;background:none;padding:0;text-align:left;color:var(--cms-navy);font-size:14px;font-weight:650;}
.cms-role {display:inline-block;border:1px solid #e5eaf0;border-radius:5px;background:#f5f7fa;padding:3px 8px;color:#637a91;font-size:12px;line-height:1.5;margin:2px 3px 2px 0;}
.cms-member-status[data-status=LOCK] {background:#fcf4e8;color:#966f3c;border-color:#f2e4ce;}.cms-member-status[data-status=WITHDRAW] {color:#8d97a5;background:#f2f3f5;border-color:#e6e8ec;}
.cms-status {display:inline-flex;align-items:center;gap:6px;font-size:12px;}.cms-status::before {content:"";width:5px;height:5px;background:#97a5b4;border-radius:50%;}
.cms-list-footer {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-top:1px solid #e8edf2;color:#7b8c9e;font-size:13px;}
.cms-pagination {display:flex;align-items:center;gap:5px;}.cms-pagination button,.cms-page-link {display:grid;place-items:center;min-width:34px;height:34px;padding:0 9px;border:1px solid #e0e7ee;border-radius:6px;background:#fff;color:#637c94;font-size:13px;}.cms-page-current,.cms-pagination .is-current {font-weight:650;color:var(--cms-navy);background:#eef2f7;border-radius:6px;padding:6px 10px;}
.cms-empty,.cms-loading {padding:60px 24px;text-align:center;color:#8796a7;font-size:14px;line-height:1.8;}
/* Native modal system */
.cms-detail-dialog,.cms-address-dialog {width:min(720px,calc(100vw - 40px));min-width:0;max-width:calc(100vw - 40px);max-height:calc(100svh - 48px);margin:auto;padding:0;overflow:auto;background:#fff;color:var(--cms-text);border:1px solid #dce4ed;border-radius:var(--cms-dialog-radius);box-shadow:0 28px 100px #10283d40;}
.cms-editor-dialog {width:min(880px,calc(100vw - 40px));}.cms-dialog-compact {width:min(620px,calc(100vw - 40px));}
.cms-detail-dialog::backdrop,.cms-address-dialog::backdrop {background:#0c22365c;backdrop-filter:blur(6px);}
.cms-dialog-heading {position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;background:#fff;border-bottom:1px solid #e7ecf2;}
.cms-eyebrow {display:block;font-size:10px;letter-spacing:.13em;font-weight:700;color:#a1846b;margin-bottom:6px;}.cms-dialog-heading h2 {font-size:21px;line-height:1.3;letter-spacing:-.045em;font-weight:700;}
.cms-dialog-heading .cms-icon-button {background:#f6f8fa;border:1px solid #e6ebf1;font-size:20px;}.cms-dialog-content {padding:26px 30px 0;}
.cms-modal-intro {margin-bottom:12px!important;font-size:14px;line-height:1.8;color:#7a8a9d;}
.cms-form-card {padding:26px;margin-bottom:22px;}.cms-form-title {display:flex;align-items:center;gap:10px;margin-bottom:24px!important;}
.cms-form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}.cms-form-wide {grid-column:1/-1;}
.cms-form-section {margin-bottom:26px;padding:0;}.cms-form-section h3,.cms-address-section h3 {font-size:18px;font-weight:700;line-height:1.45;margin-bottom:20px;letter-spacing:-.035em;}.cms-form-section h3 .cms-section-index {display:none;}.cms-form-section>.cms-help {margin-top:-10px;margin-bottom:20px;}
.cms-form-actions {position:sticky;bottom:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border-top:1px solid #e6ecf2;box-shadow:0 -12px 20px #ffffffeb;padding:20px 0;margin-top:26px;}
.cms-form-actions>span {font-size:12px;line-height:1.7;color:#8796a6;}.cms-form-actions>div {display:flex;align-items:center;gap:9px;}
.cms-check-row {display:flex;align-items:flex-start;gap:10px;margin:16px 0;font-size:14px;line-height:1.75;color:#4b6076;}.cms-check-row input {width:17px;height:17px;margin:4px 0 0;flex-shrink:0;accent-color:var(--cms-navy);}
.cms-create-steps {display:flex;align-items:center;gap:14px;margin:0 0 16px;padding:10px 16px;list-style:none;border:1px solid #e7edf4;border-radius:10px;background:#f8fafc;}
.cms-create-steps li {display:flex;align-items:center;gap:8px;flex:1;color:#9aa8b7;font-size:13px;min-width:0;}.cms-create-steps li:last-child {flex:0 0 auto;}.cms-create-steps li:not(:last-child)::after {content:"";height:1px;background:#dce4ed;flex:1;margin-left:4px;}
.cms-create-steps li>span {display:grid;place-items:center;width:25px;height:25px;border:1px solid #dfe6ed;border-radius:50%;font-size:11px;font-weight:700;background:#fff;flex-shrink:0;}.cms-create-steps strong {font-weight:550;white-space:nowrap;}
.cms-create-steps li[aria-current=step] {color:var(--cms-navy);}.cms-create-steps li[aria-current=step]>span,.cms-create-steps li[data-complete]>span {background:var(--cms-navy);border-color:var(--cms-navy);color:#fff;}
.cms-registration-review {padding:22px;margin-bottom:26px;background:#faf7f2;border:1px solid #eee5da;border-radius:10px;}.cms-registration-review h3 {font-size:16px;margin-bottom:20px;}.cms-registration-review .cms-detail-grid {gap:18px 24px;}
.cms-detail-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px;}.cms-detail-grid>div {min-width:0;}.cms-detail-grid dt {font-size:13px;color:#8190a2;margin-bottom:5px;}.cms-detail-grid dd {font-size:15px;color:#38516a;line-height:1.7;overflow-wrap:anywhere;}
.cms-detail-person {display:flex;align-items:center;gap:16px;margin-bottom:26px;}.cms-detail-person h3 {font-size:24px;line-height:1.4;}.cms-detail-person p {font-size:14px;color:#8a9bad;margin-top:6px;}.cms-detail-person .cms-member-avatar {width:54px;height:54px;font-size:22px;border-radius:14px;}
.cms-profile-section,.cms-detail-section {padding:24px 0;border-top:1px solid #e6ecf2;}.cms-detail-section:has(.cms-profile-groups) {padding:0;border:0;}.cms-profile-section h3,.cms-detail-section h4 {font-size:16px;font-weight:700;margin-bottom:20px;}
.cms-modal-summary {padding:18px 20px;margin-bottom:24px;border-radius:10px;background:#f1f5f9;color:#59728b;font-size:14px;line-height:1.8;}.cms-detail-error {padding:30px;color:#a25e42;}
.cms-edit-audit {display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:13px;color:#8292a2;}
/* Address selection */
.cms-address-section {padding:16px;margin-bottom:18px;border:1px solid #e3eaf1;border-radius:12px;background:#fbfcfe;}.cms-section-heading {display:flex;align-items:center;gap:10px;}.cms-section-heading h3 {margin:0;}.cms-address-section>.cms-help {margin-top:8px;}
.cms-address-choice {display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;}.cms-address-placeholder {font-size:14px;color:#8d9eaf;line-height:1.8;}.cms-address-placeholder.is-selected {font-weight:600;color:var(--cms-navy);overflow-wrap:anywhere;}
.cms-address-fields {padding-top:20px;margin-top:20px;border-top:1px solid #e3eaf1;}.cms-address-fields .cms-form-grid {gap:18px;}.cms-address-fields .cms-edit-field:first-child {max-width:150px;}
.cms-address-dialog {width:min(560px,calc(100vw - 40px));overflow:hidden;}.cms-address-heading {display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:1px solid #e6ecf2;}.cms-address-heading h2 {font-size:23px;line-height:1.4;}
.cms-address-body {padding:16px;min-height:180px;}.cms-address-body>p {padding:25px 12px;font-size:14px;color:#6a7f95;}.cms-postcode-frame {height:min(480px,calc(100svh - 220px));min-height:320px;width:100%;}.cms-postcode-frame iframe {max-width:100%;border:0;}
.cms-address-footer {padding:14px 24px;border-top:1px solid #e6ecf2;background:#f9fbfd;color:#7b8da0;font-size:12px;line-height:1.7;}
/* Permissions, menus and personal information share the same component system. */
.cms-menu-tree {padding:8px 22px 24px;}.cms-menu-children {margin-left:22px;border-left:1px solid #e6ecf2;padding-left:16px;}.cms-menu-node {min-width:0;margin:4px 0;}.cms-menu-node>summary {display:flex;align-items:center;gap:10px;min-height:56px;padding:10px;border-radius:8px;list-style:none;font-size:14px;}.cms-menu-node>summary::-webkit-details-marker {display:none;}.cms-menu-node>summary:hover {background:#f6f8fb;}.cms-menu-node[open]>summary .cms-tree-arrow {transform:rotate(90deg);}.cms-tree-arrow {font-size:17px;color:#9aabba;flex:0 0 12px;}
.cms-menu-label {flex:1;min-width:0;border:0;background:none;padding:0;text-align:left;color:#38526a;}.cms-menu-label strong {display:block;font-size:14px;}.cms-menu-label small {display:block;font-size:12px;color:#96a4b2;overflow-wrap:anywhere;}.cms-tree-actions {display:flex;gap:3px;}.cms-tree-actions button {width:32px;height:32px;}
.cms-permission-tree {max-height:330px;overflow:auto;padding:12px;margin-top:14px;border:1px solid #e2e9f0;border-radius:9px;}.cms-permission-search {margin-top:16px;}.cms-permission-row {display:flex;align-items:flex-start;gap:10px;padding:8px 6px;padding-inline-start:calc(6px + var(--cms-tree-depth,0) * var(--cms-space-4));font-size:14px;border-radius:6px;overflow-wrap:anywhere;}.cms-permission-row:hover {background:#f6f8fb;}.cms-permission-row input {margin-top:5px;accent-color:var(--cms-navy);}.cms-permission-row small {display:block;color:#8b9baa;font-size:12px;}
.cms-role-description {max-width:260px;white-space:normal;overflow-wrap:anywhere;}.cms-editor-errors button {margin-top:12px;}.cms-myinfo-gate {max-width:760px;margin-inline:auto;}.cms-myinfo-gate>p {color:#71849a;line-height:1.8;margin-bottom:24px;}.cms-myinfo-qr {margin:24px auto;padding:18px;max-width:280px;border:1px solid #e3eaf1;border-radius:14px;background:#fff;}.cms-myinfo-confirmation {display:block;font-size:32px;letter-spacing:.18em;color:var(--cms-navy);margin:16px 0;}
@media(min-width:761px) {.cms-sidebar-collapsed .cms-sidebar{transform:translateX(-100%);}.cms-sidebar-collapsed .cms-main{margin-left:0;}.cms-sidebar-collapsed .cms-topbar{left:0;}}
@media(max-width:1200px) {.cms-content{padding:28px 26px 0;}.cms-topbar{padding-inline:26px;}.cms-workspace{--cms-sidebar:230px;}.cms-brand{padding-inline:20px;}.cms-brand-label{display:none;}.cms-filter-grid{gap:16px;}.cms-status-filters legend{display:none;}}
@media(max-width:1000px) {.cms-filter-grid,.cms-site-log-filters{grid-template-columns:repeat(2,minmax(0,1fr));}.cms-size-field{display:none;}.cms-list-heading{align-items:flex-start;}.cms-search-row{flex-wrap:wrap;}}
@media(max-width:760px) {
 .cms-workspace{--cms-sidebar:252px;--cms-topbar-height:64px;}.cms-main,.cms-topbar{transition:none;}.cms-sidebar{transform:translateX(-100%);}.cms-menu-open .cms-sidebar{transform:translateX(0);}.cms-sidebar-close{display:inline-grid!important;color:#b4c5d4;margin-left:auto;width:30px;height:30px;}.cms-sidebar-backdrop{position:fixed;inset:0;z-index:50;border:0;background:#0c22365c;backdrop-filter:blur(3px);}.cms-main{margin-left:0;}.cms-topbar{left:0;padding:0 16px;gap:14px;}.cms-user small{display:none;}.cms-user strong{max-width:125px;font-size:13px;}.cms-user{gap:8px;}.cms-topbar-account{gap:10px;}.cms-topbar-account form{padding-left:8px;}.cms-content{padding:22px 16px 0;}.cms-avatar{width:32px;height:32px;}.cms-skip{left:16px;}
 .cms-page-hero{grid-template-columns:1fr;gap:10px;margin-bottom:18px;}.cms-hero-breadcrumb{grid-column:1;grid-row:1;margin:0;font-size:11px;gap:7px;padding:0;}.cms-hero-page-info{grid-column:1;grid-row:2;padding:0;}.cms-hero-page-info h1{font-size:25px;}.cms-hero-page-info p{font-size:13px;}.cms-hero-actions{grid-column:1;grid-row:3;gap:10px;flex-wrap:wrap;padding:0;}.cms-hero-actions>span{font-size:12px;}.cms-hero-actions .cms-site-actions{margin-left:auto;}

 .cms-filter-card{padding:20px;}.cms-filter-heading{margin-bottom:22px;}.cms-filter-heading>.cms-help{display:none;}.cms-filter-primary{gap:18px 14px;}.cms-advanced-filters .cms-filter-grid{grid-template-columns:1fr;}.cms-filter-actions{margin-top:16px;}.cms-filter-actions .cms-button{flex:1;}.cms-list-heading{padding:22px 20px;flex-wrap:wrap;gap:18px;}.cms-list-heading .cms-site-actions{width:100%;justify-content:space-between;}.cms-list-footer{padding:18px 20px;flex-wrap:wrap;}.cms-page-footer>span:last-child{display:none;}
 .cms-detail-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100svh - 24px);border-radius:16px;}.cms-dialog-heading{padding:16px 18px;}.cms-dialog-heading h2{font-size:20px;}.cms-dialog-content{padding:22px 20px 0;}.cms-form-grid{grid-template-columns:1fr;gap:22px;}.cms-form-card{padding:22px 20px;}.cms-create-steps{padding:10px 12px;gap:8px;margin-bottom:16px;}.cms-create-steps li{font-size:11px;gap:6px;}.cms-create-steps li:not(:last-child)::after{margin:0;}.cms-create-steps li>span{width:22px;height:22px;font-size:10px;}.cms-create-steps strong{font-weight:500;}.cms-form-actions{flex-wrap:wrap;gap:10px;padding:16px 0;}.cms-form-actions>span{width:100%;font-size:11px;}.cms-form-actions>div{width:100%;justify-content:flex-end;}.cms-form-actions .cms-button{padding:11px 15px;}.cms-detail-grid{grid-template-columns:1fr;gap:18px;}.cms-registration-review{padding:20px;}.cms-address-section{padding:18px;}.cms-address-choice{align-items:flex-start;flex-direction:column;gap:14px;}.cms-address-choice .cms-site-actions{width:100%;}.cms-address-placeholder{font-size:13px;}.cms-address-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100svh - 24px);border-radius:16px;}.cms-address-heading{padding:18px 20px;}.cms-address-body{padding:8px;}.cms-postcode-frame{height:calc(100svh - 205px);min-height:300px;}.cms-address-footer{font-size:11px;padding:12px 18px;}
 .cms-menu-tree{padding:4px 10px 18px;}.cms-menu-children{margin-left:9px;padding-left:7px;}.cms-menu-node>summary{padding:9px 4px;gap:5px;}.cms-tree-actions button{width:28px;height:30px;}.cms-menu-node .cms-role{display:none;}.cms-menu-label strong{font-size:13px;}.cms-menu-label small{font-size:11px;}.cms-field-action .cms-button{padding-inline:12px;font-size:13px;}.cms-site-log-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
}
@media(prefers-reduced-motion:reduce) {.cms-workspace *{scroll-behavior:auto!important;transition:none!important;}}

.cms-permission-row[data-depth="0"]{--cms-tree-depth:0;}
.cms-permission-row[data-depth="1"]{--cms-tree-depth:1;}
.cms-permission-row[data-depth="2"]{--cms-tree-depth:2;}
.cms-permission-row[data-depth="3"]{--cms-tree-depth:3;}
.cms-permission-row[data-depth="4"]{--cms-tree-depth:4;}
.cms-permission-row[data-depth="5"]{--cms-tree-depth:5;}
.cms-permission-row[data-depth="6"]{--cms-tree-depth:6;}
.cms-permission-row[data-depth="7"]{--cms-tree-depth:7;}
.cms-permission-row[data-depth="8"]{--cms-tree-depth:8;}
.cms-permission-row[data-depth="9"]{--cms-tree-depth:9;}
.cms-permission-row[data-depth="10"]{--cms-tree-depth:10;}
.cms-permission-row[data-depth="11"]{--cms-tree-depth:11;}
.cms-permission-row[data-depth="12"]{--cms-tree-depth:12;}
.cms-permission-row[data-depth="13"]{--cms-tree-depth:13;}
.cms-permission-row[data-depth="14"]{--cms-tree-depth:14;}
.cms-permission-row[data-depth="15"]{--cms-tree-depth:15;}
.cms-permission-row[data-depth="16"]{--cms-tree-depth:16;}
.cms-permission-row[data-depth="17"]{--cms-tree-depth:17;}
.cms-permission-row[data-depth="18"]{--cms-tree-depth:18;}
.cms-permission-row[data-depth="19"]{--cms-tree-depth:19;}
.cms-permission-row[data-depth="20"]{--cms-tree-depth:20;}

.content-body .btn-primary{background:var(--cms-navy);border-color:var(--cms-navy);}

.cms-workspace .alert{padding:15px 18px;margin-bottom:20px;border:1px solid #dce6ef;border-radius:9px;background:#eef4f9;color:#46627c;font-size:14px;}
.cms-type {display:inline-flex;align-items:center;gap:6px;border-radius:5px;padding:3px 8px;background:#f4f6f9;color:#6b7e91;font-size:12px;white-space:nowrap;}
.cms-status-active,.cms-status-locked,.cms-status-disabled {display:inline-flex;align-items:center;gap:6px;font-size:12px;white-space:nowrap;}
.cms-status-active {color:#55738e;}.cms-status-locked {color:#a47a4a;}.cms-status-disabled {color:#98a2ad;}
.cms-status-active::before,.cms-status-locked::before,.cms-status-disabled::before {content:"";width:5px;height:5px;background:currentColor;border-radius:50%;}
.cms-date {display:block;font-size:12px;color:#8393a5;}.cms-muted,.cms-row-number {color:#8f9dac;font-size:12px;}.cms-role-list {display:flex;gap:3px;flex-wrap:wrap;}

@media(max-width:760px){.cms-workspace .cms-edit-field :is(input:not([type=checkbox]),select,textarea),.cms-workspace .cms-search-input input{font-size:16px;}}
@media(max-width:700px){.login-field .form-control{font-size:16px;}}

/* The modal surface never scrolls: only the padded body scrolls inside it. */
.cms-detail-dialog[open] {display:flex;flex-direction:column;overflow:hidden;isolation:isolate;}
.cms-detail-dialog {height:fit-content;max-height:calc(100svh - 48px);}
.cms-detail-dialog.cms-dialog-compact {height:fit-content;}
.cms-detail-dialog>.cms-dialog-heading {position:relative;flex:0 0 auto;z-index:2;}
.cms-detail-dialog>.cms-dialog-content {display:flex;flex-direction:column;flex:1 1 auto;min-height:0;padding:0;overflow:hidden;}
.cms-modal-layout {display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;overflow:hidden;}
.cms-modal-body {flex:1 1 auto;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;margin:0 10px;padding:18px 12px;scrollbar-width:thin;scrollbar-color:#b3c1cf transparent;}
.cms-modal-body::-webkit-scrollbar {width:6px;}.cms-modal-body::-webkit-scrollbar-track {background:transparent;}.cms-modal-body::-webkit-scrollbar-thumb {background:#b3c1cf;border-radius:10px;}
.cms-modal-layout>.cms-form-actions,.cms-modal-layout>.cms-dialog-footer {position:relative;bottom:auto;flex:0 0 auto;margin:0;padding:12px 22px;background:#fff;border-top:1px solid #e5ebf1;box-shadow:none;z-index:2;}
.cms-toast-stack {position:fixed;inset:calc(76px + 20px) 24px auto auto;z-index:2147483000;width:min(420px,calc(100vw - 32px));max-height:calc(100svh - 120px);display:flex;flex-direction:column;gap:10px;margin:0;padding:0;border:0;background:transparent;overflow:visible;pointer-events:none;color:#263d52;font-family:var(--cms-font);}
.cms-toast-stack:popover-open {display:flex;}.cms-toast-stack:not(:popover-open):empty {display:none;}.cms-toast-stack::backdrop {display:none;}
.cms-toast {--toast-accent:#3c689f;--toast-bg:#f1f6ff;display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid color-mix(in srgb,var(--toast-accent) 22%,white);border-left:4px solid var(--toast-accent);border-radius:12px;background:var(--toast-bg);box-shadow:0 8px 28px #132b4321;pointer-events:auto;animation:cms-toast-in .18s ease-out;}
.cms-toast[data-type=success] {--toast-accent:#27724e;--toast-bg:#eff9f2;}.cms-toast[data-type=error] {--toast-accent:#b44448;--toast-bg:#fff2f2;}.cms-toast[data-type=warning] {--toast-accent:#9b6b21;--toast-bg:#fff8e9;}
.cms-toast-icon {display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--toast-accent) 12%,transparent);color:var(--toast-accent);}.cms-toast-icon svg {width:18px;height:18px;}
.cms-toast-content {flex:1;min-width:0;}.cms-toast-content strong {display:block;margin:0 0 4px;color:var(--toast-accent);font-size:14px;font-weight:700;}.cms-toast-content p {margin:0;font-size:14px;line-height:1.7;color:#3c4c60;overflow-wrap:anywhere;white-space:pre-line;}
.cms-toast-close {display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;font-size:22px;color:var(--toast-accent);cursor:pointer;}.cms-toast-close:hover {background:#00000008;}.cms-toast-close:focus-visible {outline:2px solid var(--toast-accent);outline-offset:2px;}
.cms-toast-actions {padding:0;margin-bottom:16px;border:0;background:none;}.cms-toast-actions>strong,.cms-toast-actions>[data-site-summary],.cms-toast-actions>[data-error-summary] {display:none;}
@keyframes cms-toast-in {from{opacity:0;transform:translateY(-8px);}to{opacity:1;transform:translateY(0);}}
@media(max-width:760px) {.cms-detail-dialog{height:fit-content;max-height:calc(100svh - 24px);}.cms-modal-body{margin:0 6px;padding:16px 12px;}.cms-modal-layout>.cms-form-actions,.cms-modal-layout>.cms-dialog-footer{padding:12px 18px;}.cms-toast-stack{inset:76px 12px auto auto;width:calc(100vw - 24px);max-height:calc(100svh - 94px);gap:8px;}.cms-toast{padding:14px;}.cms-toast-content p{font-size:13px;}}
@media(prefers-reduced-motion:reduce) {.cms-toast{animation:none;}}
.cms-toast-stack[popover]:not(:popover-open) {display:none;}
@media(max-width:760px) {.cms-detail-dialog.cms-dialog-compact{height:fit-content;}}
.cms-toast-content p {max-height:160px;overflow:auto;scrollbar-width:thin;}
@supports selector(::-webkit-scrollbar) {.cms-modal-body{scrollbar-width:auto;scrollbar-color:auto;}.cms-modal-body::-webkit-scrollbar{width:6px;}.cms-modal-body::-webkit-scrollbar-button{display:none;width:0;height:0;}.cms-modal-body::-webkit-scrollbar-corner{background:transparent;}}
.cms-modal-body :is(input,select,textarea) {scroll-margin-block:24px;}

/* Program workspace: shared editorial hierarchy, collections and media controls. */
.cms-program-search-grid{grid-template-columns:repeat(2,minmax(0,1fr)) minmax(0,2fr) repeat(2,minmax(0,1fr));gap:12px}
.cms-program-identity{display:flex;align-items:flex-start;gap:10px;min-width:230px}.cms-program-type-badge{display:inline-flex;align-items:center;justify-content:center;min-width:42px;flex-shrink:0;margin-top:2px;padding:3px 8px;border-radius:6px;background:#edf2f6;border:1px solid #dce5ed;color:#38576e;font-size:12px;font-weight:650;line-height:1.5}.cms-program-type-badge[data-type=video]{background:#edf3fa;color:#375e87;border-color:#dce7f4}.cms-program-type-badge[data-type=sermon]{background:#f8f1e9;color:#815b3c;border-color:#ebddcd}
.cms-program-table{min-width:1080px}.cms-program-table th:first-child{width:26%}.cms-program-table td{padding:13px 14px;height:76px}.cms-program-table th{padding-inline:14px}.cms-program-table .cms-record-name{text-align:left;line-height:1.55;font-size:15px}.cms-program-status{display:inline-flex;padding:6px 11px;border-radius:8px;background:#eef1f5;color:#526176;font-size:13px;font-weight:700;white-space:nowrap}.cms-program-status[data-status=Y]{background:#e8eff5;color:#234c6b}.cms-program-status[data-status=D]{background:#f7eee6;color:#815c3d}
.cms-program-dialog{width:min(1080px,calc(100vw - 64px))}.cms-program-dialog .cms-dialog-heading h2{font-size:21px}.cms-program-dialog .cms-dialog-heading p{margin:4px 0 0}.cms-program-dialog .cms-modal-body{padding-top:0}.cms-program-tabs{position:sticky;top:0;z-index:2;background:#fff;padding-top:8px;margin-bottom:18px}.cms-program-tabs button:focus-visible{outline:2px solid var(--cms-warm);outline-offset:-3px}
.cms-program-panel{padding-bottom:12px}.cms-program-panel>.cms-section-heading{align-items:flex-start;margin-bottom:16px}.cms-program-panel h3{font-size:16px;letter-spacing:-.5px}.cms-program-panel .cms-section-heading p{margin:4px 0 0;line-height:1.7}.cms-section-label{color:#8a725f;font-size:11px;font-weight:800;letter-spacing:1.5px;white-space:nowrap;padding-top:6px}.cms-required{color:#a6643c;margin-left:4px}
.cms-program-settings{border-top:1px solid #e5eaf0;margin-top:20px;padding-top:18px}.cms-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cms-toggle-card{display:flex;align-items:flex-start;gap:12px;border:1px solid #dce3eb;border-radius:10px;padding:12px;cursor:pointer;background:#fff}.cms-toggle-card:has(input:checked){background:#f4f7fa;border-color:#8298ac}.cms-toggle-card input{accent-color:var(--cms-navy);flex-shrink:0;margin-top:3px;width:18px;height:18px}.cms-toggle-card strong{display:block;font-size:14px;color:var(--cms-navy-deep);margin-bottom:3px}.cms-toggle-card small{display:block;line-height:1.65;font-size:13px;color:#6b7c8e}.cms-program-advanced{border:1px solid #e0e6ed;border-radius:13px;margin-top:24px}.cms-program-advanced summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;cursor:pointer;font-size:14px;font-weight:700;color:#344e64}.cms-program-advanced summary span{font-size:13px;font-weight:400;color:#6b7c8e}.cms-program-advanced>.cms-form-grid{padding:4px 20px 22px}.cms-program-collection{display:grid;gap:16px;margin-bottom:18px}.cms-collection-card{border:1px solid #dde5ed;border-radius:15px;background:#fcfdfe;padding:22px}.cms-collection-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px}.cms-collection-heading strong{font-size:15px}.cms-collection-heading .cms-help{font-size:13px}.cms-collection-empty{border:1px dashed #cad5e0;background:#f8fafc;color:#708095;padding:28px;border-radius:14px;text-align:center;font-size:14px}.cms-danger-text{color:#a34444}.cms-selection-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:270px;overflow:auto;padding:5px 10px 5px 0;scrollbar-width:thin}.cms-choice-row{display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px solid #e1e7ee;border-radius:9px;background:#fff;cursor:pointer;font-size:14px;color:#385069}.cms-choice-row:has(input:checked){background:#f0f4f8;border-color:#95a8bb}.cms-choice-row input{accent-color:var(--cms-navy);width:16px;height:16px;flex-shrink:0}.cms-template-picker{display:grid;grid-template-columns:1fr 1.5fr;align-items:start;gap:32px;padding:24px;border:1px solid #e0e6ed;border-radius:15px;margin-bottom:25px;background:#f8fafc}.cms-template-preview{height:180px;overflow:auto;border-radius:9px;border:1px solid #dfe6ed;background:#fff;scrollbar-width:thin}.cms-template-preview img{display:block;width:100%;height:auto}.cms-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.cms-media-card{padding:20px;border:1px solid #dee6ed;border-radius:15px;background:#fff;min-width:0}.cms-media-card>.cms-collection-heading{flex-direction:column;align-items:flex-start;gap:5px}.cms-media-preview{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;height:160px;border-radius:10px;background:repeating-conic-gradient(#f4f6f8 0% 25%,#fff 0% 50%) 50%/16px 16px;border:1px solid #e5eaf0;margin-bottom:18px;overflow:hidden;font-size:13px;color:#7a8999}.cms-media-preview i{font-size:26px}.cms-media-preview img{width:100%;height:100%;object-fit:contain}.cms-media-card .cms-edit-field{margin-bottom:15px}.cms-media-card input[type=file]{padding:10px;max-width:100%;font-size:13px}.cms-media-card input[type=file]::file-selector-button{border:0;background:#eef2f6;color:#234159;padding:8px 12px;border-radius:6px;margin-right:10px;cursor:pointer}.cms-empty-state{display:flex;align-items:center;flex-direction:column;gap:13px;padding:62px 20px;color:#77879b;text-align:center}.cms-empty-state>i{font-size:32px;color:#a5b3c2}.cms-empty-state>strong{font-size:16px;color:#385068}.cms-empty-state>p{font-size:14px;margin:0}
@media(max-width:1100px){.cms-program-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-program-tabs button{font-size:13px;padding-inline:10px;gap:6px}}
@media(max-width:700px){.cms-program-search-grid,.cms-toggle-grid,.cms-media-grid,.cms-template-picker{grid-template-columns:1fr}.cms-program-dialog{width:calc(100vw - 24px)}.cms-program-tabs{margin-bottom:16px}.cms-program-tabs button{padding:12px 10px}.cms-program-tabs button i{display:none}.cms-program-panel>.cms-section-heading{display:block}.cms-section-label{display:none}.cms-collection-card,.cms-media-card,.cms-template-picker{padding:17px}.cms-selection-list{grid-template-columns:1fr}.cms-program-advanced summary{align-items:flex-start;flex-direction:column;gap:6px}.cms-program-dialog .cms-form-actions>span{font-size:13px}.cms-program-identity{min-width:210px}.cms-program-table td{padding-block:13px}.cms-program-table .cms-record-name{font-size:15px}}
.cms-resource-search-grid{grid-template-columns:minmax(145px,.8fr) minmax(250px,1.3fr) minmax(220px,1.4fr) auto}.cms-combobox{position:relative;min-width:0}.cms-combobox-list{position:absolute;z-index:9;top:calc(100% + 6px);left:0;right:0;max-height:240px;overflow:auto;scrollbar-width:thin;background:#fff;border:1px solid #cfd9e3;box-shadow:0 12px 32px #172f4324;border-radius:10px;padding:6px}.cms-combobox-option{display:block;width:100%;border:0;background:none;padding:12px;text-align:left;color:#284259;font:inherit;font-size:14px;border-radius:6px;cursor:pointer}.cms-combobox-option:hover,.cms-combobox-option[aria-selected=true]{background:#edf2f7}.cms-combobox-list>p{padding:8px 12px}.cms-rich-field{margin-top:27px}.cms-rich-field>label{display:block;font-size:14px;font-weight:700;color:#304b64;margin-bottom:11px}.cms-rich-toolbar{display:flex;flex-wrap:wrap;gap:4px;padding:9px;border:1px solid #d7e0e9;border-bottom:0;border-radius:11px 11px 0 0;background:#f7f9fb}.cms-rich-tool{border:0;background:none;padding:8px 11px;border-radius:6px;cursor:pointer;font:inherit;font-size:13px;color:#3e566d}.cms-rich-tool:hover,.cms-rich-tool:focus-visible{background:#e8eef4}.cms-rich-editor{min-height:220px;max-height:430px;overflow:auto;scrollbar-width:thin;border:1px solid #d7e0e9;border-radius:0 0 11px 11px;padding:20px;color:#243f56;font-size:15px;line-height:1.85;overflow-wrap:anywhere}.cms-rich-editor:focus{outline:2px solid #98adbf;outline-offset:1px}.cms-rich-editor:empty:before{content:attr(data-placeholder);color:#7b8b9c}.cms-rich-editor img{max-width:100%;height:auto}.cms-rich-editor table{max-width:100%;border-collapse:collapse}.cms-rich-editor td,.cms-rich-editor th{border:1px solid #d7e0e9;padding:7px}.cms-rich-editor blockquote{border-left:3px solid var(--cms-warm);margin-left:0;padding-left:17px;color:#61768a}.cms-board-type-preview{display:flex;align-items:center;gap:18px;border:1px solid #e1e7ed;border-radius:13px;background:#f7f9fb;padding:25px}.cms-board-type-preview i{font-size:28px;color:#a27857}.cms-board-type-preview strong{font-size:16px;color:#29465e}.cms-board-type-preview p{font-size:13px;color:#6e8092;line-height:1.65;margin:0;margin-left:auto;max-width:210px}.cms-danger-zone{border-color:#ebd9d7}.cms-danger-zone summary{color:#9a4b43}.cms-danger-zone-body{padding:0 22px 24px}.cms-danger-zone-body .cms-edit-field{margin-block:17px}.cms-button-danger{color:#fff;background:#a44f47;border:1px solid #a44f47}.cms-button-danger:hover{background:#8e403a}.cms-media-preview audio{width:calc(100% - 20px);height:44px}.cms-media-preview video{width:100%;height:100%;object-fit:contain;background:var(--cms-navy-deep)}.cms-file-label{font-size:13px;color:#687c8f;overflow-wrap:anywhere}.cms-reply-card{border:1px solid #dce5ed;border-radius:14px;padding:23px;margin-bottom:16px;background:#fff}.cms-reply-content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;color:#3f566b;margin:16px 0 24px}.cms-reply-card .cms-site-actions{margin-top:16px}.cms-reply-compose{margin-top:28px;border-radius:14px;background:#f4f7fa;padding:24px;border:1px solid #dbe4ed}.cms-reply-compose h3{margin-top:0;margin-bottom:20px}.cms-reply-compose>.cms-button{margin-top:17px}
@media(max-width:900px){.cms-resource-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-resource-search-grid>.cms-edit-field:first-child{grid-column:1/-1}.cms-board-type-preview{flex-wrap:wrap}.cms-board-type-preview p{max-width:100%;margin-left:0;flex-basis:100%}}
@media(max-width:700px){.cms-resource-search-grid{grid-template-columns:1fr}.cms-rich-editor{padding:15px;min-height:180px}.cms-rich-tool{padding:8px;font-size:13px}.cms-reply-card,.cms-reply-compose{padding:18px}.cms-reply-card .cms-collection-heading{align-items:flex-start;flex-direction:column;gap:7px}}

@media(max-width:760px){dialog .cms-modal-close{width:44px;height:44px;}}

/* Compact data controls and modal spacing, shared by CMS screens. */
.cms-density-compact>.cms-list-card .cms-list-heading{padding:14px 20px}.cms-density-compact>.cms-list-card .cms-list-heading p{display:none}
.cms-filter-compact{padding:16px 20px;margin-bottom:18px}
.cms-filter-compact .cms-filter-heading{margin-bottom:12px;gap:12px}
.cms-filter-compact .cms-filter-heading h2{font-size:15px}
.cms-filter-compact .cms-edit-field>label{margin-bottom:6px;font-size:13px}
.cms-filter-compact .cms-edit-field :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select),.cms-detail-dialog .cms-edit-field :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select):not([multiple]){height:40px;padding:8px 11px;font-size:14px}
.cms-filter-compact .cms-button,.cms-page-hero .cms-button,.cms-detail-dialog .cms-form-actions .cms-button{min-height:40px;padding:8px 14px}
.cms-filter-bottom{display:flex;align-items:flex-end;flex-wrap:wrap;gap:14px 24px;margin-top:14px}
.cms-filter-options{min-width:0;border:0;padding:0;margin:0}
.cms-filter-options legend{padding:0;margin-bottom:6px;font-size:13px;font-weight:600;color:#44576b}
.cms-filter-hint{font-size:12px;font-weight:400;color:#718295;margin-left:5px}
.cms-choice-group{display:flex;align-items:center;flex-wrap:wrap;gap:4px}
.cms-choice-group label,.cms-choice-group>button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:6px 11px;border:1px solid #e0e6ed;border-radius:6px;background:#fff;color:#617387;font:inherit;font-size:13px;line-height:1.4;cursor:pointer}
.cms-choice-group label:has(input:checked),.cms-choice-group>button[aria-pressed=true]{background:#edf2f6;border-color:#9eb2c3;color:var(--cms-navy);font-weight:650}
.cms-choice-group input[type=radio]{position:absolute;opacity:0;width:1px;height:1px}
.cms-choice-group input[type=checkbox]{width:14px;height:14px;margin:0;accent-color:var(--cms-navy)}
.cms-choice-group label:has(input:focus-visible),.cms-choice-group>button:focus-visible{outline:2px solid #7190ac;outline-offset:2px}
.cms-filter-bottom .cms-filter-actions{margin:0 0 0 auto;flex:0 0 auto}
.cms-applied-filters{display:flex;align-items:center;flex-wrap:wrap;gap:6px;border-top:1px solid #e7ecf1;padding-top:8px;margin-top:10px}
.cms-filter-chip{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:5px 9px;background:#f1f5f8;border:1px solid #dce5ed;border-radius:6px;color:#425e75;font:inherit;font-size:12px;cursor:pointer}
.cms-filter-chip span{overflow-wrap:anywhere;min-width:0}
.cms-filter-chip:hover{background:#e8eff5}
.cms-service-list{display:flex;align-items:center;flex-wrap:wrap;gap:4px;min-width:164px;max-width:180px}
.cms-service-icon{--service-ink:#486b8b;--service-bg:#eff4f8;--service-line:#dbe5ed;display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;border:1px solid var(--service-line);border-radius:7px;background:var(--service-bg);color:var(--service-ink)}
.cms-service-icon .cms-icon{width:14px;height:14px;stroke-width:1.8;vertical-align:0}
.cms-service-icon[data-service=relisten]{--service-ink:#416e99;--service-bg:#edf4fb;--service-line:#d6e5f4}
.cms-service-icon[data-service=replay]{--service-ink:#7660a0;--service-bg:#f3effa;--service-line:#e6dcf2}
.cms-service-icon[data-service=chat]{--service-ink:#a05f76;--service-bg:#fbf0f4;--service-line:#efd9e2}
.cms-service-icon[data-service=selection]{--service-ink:#526d84;--service-bg:#f0f4f7;--service-line:#dde6ed}
.cms-service-icon[data-service=mo]{--service-ink:#9a7334;--service-bg:#fbf5e8;--service-line:#eee1c5}
.cms-service-icon[data-service=fingerprint]{--service-ink:#9a6848;--service-bg:#f9f0e9;--service-line:#eddccc}
.cms-service-legend{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding:9px 14px;border-top:1px solid #e8edf2;background:#fbfcfd}
.cms-service-legend-title{font-size:12px;font-weight:600;color:#6d7f91}
.cms-service-legend-items{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}
.cms-service-legend-item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:12px;color:#607488}
.cms-service-legend .cms-service-icon{flex-basis:21px;width:21px;height:21px;border-radius:5px}
.cms-service-legend .cms-service-icon .cms-icon{width:12px;height:12px}
.cms-program-people{min-width:120px;max-width:190px;overflow-wrap:anywhere}
.cms-program-people strong{font-size:14px;font-weight:600}
.cms-program-table .cms-program-people .cms-record-meta{font-size:13px;color:#6c7e90}
.cms-program-table td:last-child{min-width:92px}
.cms-program-table td:last-child .cms-text-button{display:flex;white-space:nowrap;min-height:30px;padding:2px 0}
.cms-detail-dialog .cms-eyebrow{display:none}
.cms-detail-dialog .cms-form-grid{gap:14px 18px}
.cms-detail-dialog .cms-edit-field>label{margin-bottom:6px;font-size:13px}
.cms-detail-dialog .cms-form-section{margin-bottom:18px}
.cms-detail-dialog .cms-form-section h3{font-size:16px;margin-bottom:12px}
.cms-detail-dialog .cms-detail-grid{gap:14px 22px}
.cms-detail-dialog .cms-form-actions{gap:10px}
@media(max-width:1250px){.cms-program-search-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cms-program-title-filter{grid-column:span 2}.cms-filter-compact .cms-filter-heading>.cms-help{display:none}.cms-filter-bottom{gap:12px 18px}}
@media(max-width:760px){.cms-filter-compact{padding:16px}.cms-program-search-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cms-program-title-filter{grid-column:1/-1}.cms-filter-bottom{gap:12px}.cms-filter-options{flex:1 1 100%}.cms-filter-bottom .cms-filter-actions{width:100%;justify-content:flex-end}.cms-choice-group label,.cms-choice-group>button{min-height:40px}.cms-filter-compact .cms-edit-field :is(input:not([type=hidden]),select),.cms-detail-dialog .cms-edit-field :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select):not([multiple]){height:44px;font-size:16px}.cms-detail-dialog .cms-edit-field textarea{font-size:16px}.cms-filter-compact .cms-button,.cms-page-hero .cms-button,.cms-detail-dialog .cms-form-actions .cms-button{min-height:44px}.cms-detail-dialog .cms-form-grid{gap:14px}.cms-detail-dialog .cms-dialog-heading p{font-size:13px;line-height:1.5}}

.cms-program-overview{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;gap:16px}
.cms-overview-card{min-width:0;border:1px solid #dfe6ee;border-radius:12px;padding:18px;background:#fff;box-shadow:0 3px 12px #172f4305}
.cms-overview-card>h3{display:flex;align-items:center;gap:8px;font-size:15px;padding-bottom:14px;margin:0 0 16px;border-bottom:1px solid #e9edf2}
.cms-overview-card>h3 .cms-icon{font-size:16px;color:#718ba2}
.cms-overview-card .cms-program-settings{padding-top:16px;margin-top:16px}
.cms-overview-card .cms-toggle-grid{grid-template-columns:1fr;gap:8px}
.cms-overview-card .cms-toggle-card{align-items:center;gap:10px;padding:10px 12px;border-radius:8px}
.cms-overview-card .cms-toggle-card input{margin:0;width:16px;height:16px}
.cms-overview-card .cms-toggle-card strong{margin:0;font-size:13px}
.cms-overview-card .cms-toggle-card small{display:none}
.cms-overview-card .cms-program-advanced{margin-top:16px;border-radius:8px}
.cms-overview-card .cms-program-advanced summary{padding:11px 12px;flex-wrap:wrap;gap:3px}
.cms-overview-card .cms-program-advanced summary span{font-size:12px}
.cms-overview-card .cms-program-advanced>.cms-form-grid{padding:4px 12px 14px;grid-template-columns:1fr}
@media(max-width:1250px){.cms-program-search-grid{grid-template-columns:repeat(2,minmax(0,1fr)) minmax(0,1.4fr)}.cms-program-title-filter{grid-column:auto}}
@media(max-width:900px){.cms-program-overview{grid-template-columns:1fr}.cms-overview-card .cms-toggle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cms-overview-card .cms-program-advanced>.cms-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.cms-program-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-program-title-filter{grid-column:1/-1}.cms-overview-card{padding:14px}.cms-overview-card>h3{padding-bottom:11px;margin-bottom:14px}.cms-overview-card .cms-toggle-grid,.cms-overview-card .cms-program-advanced>.cms-form-grid{grid-template-columns:1fr}}

/* Group program identity and operational context in one cell. */
[data-program-creation] .cms-program-table{min-width:920px}
[data-program-creation] .cms-program-table th:first-child{width:44%}
[data-program-creation] .cms-program-identity{min-width:300px}
.cms-program-identity>div{min-width:0}
.cms-program-title-line{display:flex;align-items:center;flex-wrap:wrap;gap:5px 9px}
.cms-program-title-line .cms-record-name{min-width:0;max-width:100%}
.cms-program-status.cms-program-status-compact{flex-shrink:0;font-size:12px;line-height:1.5;padding:2px 7px;border-radius:5px;white-space:nowrap}
.cms-program-byline{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 10px;margin-top:5px;font-size:13px;line-height:1.6;color:#6d8092;overflow-wrap:anywhere}
.cms-program-byline>span+span{border-left:1px solid #dce3eb;padding-left:10px}
[data-program-creation] .cms-program-table td:last-child{min-width:58px;text-align:center}
[data-program-creation] .cms-program-table th:last-child{text-align:center}
.cms-action-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid #dbe4ed;border-radius:8px;background:#f4f7fa;color:#496b86!important;text-decoration:none;vertical-align:middle}
.cms-action-icon .cms-icon{width:16px;height:16px;stroke-width:1.7}
.cms-action-icon:hover{background:#e8eff5;border-color:#a5b9ca;color:#1c394f!important}
@media(max-width:760px){.cms-action-icon{width:44px;height:44px}.cms-program-byline{font-size:13px}}

/* Board reading and explicit editing use the same modal and shared typography. */
.cms-board-workspace .cms-program-table{min-width:880px}
.cms-board-workspace .cms-program-table th:first-child{width:43%}
.cms-board-workspace[data-program-resource=boards] .cms-program-table th:first-child{width:34%}
.cms-post-title-line{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px}
.cms-post-flags{display:inline-flex;align-items:center;flex-wrap:wrap;gap:5px}
.cms-post-flags:empty{display:none}
.cms-post-flag{display:inline-flex;align-items:center;white-space:nowrap;font-size:12px;line-height:1.5;padding:2px 7px;border-radius:5px;background:#edf2f6;color:#48647c;border:1px solid #dbe5ed}
.cms-post-flag[data-kind=notice]{background:#f8efe5;color:#885e39;border-color:#ecdcc9}
.cms-post-flag[data-kind=private]{background:#f3eff9;color:#766190;border-color:#e5dcf1}
.cms-post-flag[data-kind=hidden]{background:#f2f3f5;color:#6f7b88;border-color:#e1e5e9}
.cms-board-row .cms-record-name{font-size:15px;line-height:1.6}
.cms-board-row .cms-record-meta{font-size:13px;color:#738497}
.cms-board-views{font-variant-numeric:tabular-nums;white-space:nowrap}
.cms-post-reader .cms-modal-body{padding-top:20px;padding-bottom:20px}
.cms-post-article{min-width:0}
.cms-post-header{padding:0 0 18px;border-bottom:1px solid #e4eaf0}
.cms-post-location{font-size:13px;color:#6b8196;line-height:1.6;margin-bottom:10px}
.cms-post-header>.cms-post-flags{margin-bottom:10px}
.cms-post-header h3{font-size:24px;line-height:1.45;font-weight:700;letter-spacing:-.035em;color:var(--cms-navy-deep);overflow-wrap:anywhere}
.cms-post-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 22px;margin-top:12px!important}
.cms-post-meta>div{display:flex;align-items:center;gap:7px;font-size:13px;color:#526b81}
.cms-post-meta dt{color:#8794a2}.cms-post-meta dd{font-variant-numeric:tabular-nums}
.cms-article-body{padding:22px 0;min-width:0;overflow-wrap:anywhere;color:#30495f;font-size:15px;line-height:1.85}
.cms-article-body :is(p,div,ul,ol,blockquote,pre,table){margin:0 0 12px}
.cms-article-body :is(h2,h3,h4){font-size:19px;margin:20px 0 10px;line-height:1.5}
.cms-article-body img{max-width:100%;height:auto;vertical-align:middle;border-radius:8px}
.cms-article-body a,.cms-post-reference a{color:#3f7197;text-decoration:underline;text-underline-offset:3px}
.cms-article-body table{display:block;max-width:100%;overflow:auto;border-collapse:collapse}
.cms-article-body :is(td,th){padding:9px 12px;border:1px solid #dbe4ed}
.cms-article-body blockquote{margin-left:0;padding:4px 16px;border-left:3px solid var(--cms-warm);color:#60778b}
.cms-article-body pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f7fa;border-radius:8px;padding:14px}
.cms-post-reference{display:flex;align-items:baseline;gap:12px;padding:12px 0;border-top:1px solid #e7edf3;font-size:13px;overflow-wrap:anywhere}
.cms-post-reference>span:first-child{flex-shrink:0;font-weight:600;color:#75889a}
.cms-post-attachments{border-top:1px solid #e5ebf1;padding:18px 0}
.cms-post-attachments h4{font-size:14px;margin-bottom:12px;color:#526c83}
.cms-post-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cms-post-media{min-width:0;margin:0;padding:12px;border:1px solid #e0e7ef;border-radius:10px;background:#fafcfe}
.cms-post-media :is(img,video){display:block;max-width:100%;max-height:330px;width:auto;height:auto;margin:0 auto;border-radius:7px}
.cms-post-media video{width:100%;background:#172f43}
.cms-post-media figcaption{margin-top:10px;font-size:13px;line-height:1.5;color:#6e8193;overflow-wrap:anywhere}
.cms-post-thread{padding-top:18px;border-top:1px solid #dfe7ee}
.cms-post-thread>h3{font-size:16px;margin:0 0 14px;color:var(--cms-navy-deep)}
.cms-post-thread .cms-reply-card{padding:15px 16px;border-radius:10px;margin-bottom:10px;background:#fbfcfe}
.cms-post-thread .cms-collection-heading{margin-bottom:8px}
.cms-post-thread .cms-reply-content{margin:8px 0 10px;font-size:14px;line-height:1.8}
.cms-reply-response{border-left:2px solid #c9d8e4;padding:9px 14px;background:#f1f5f9;border-radius:0 7px 7px 0;margin:12px 0}
.cms-reply-response strong{font-size:12px;color:#647f96}.cms-reply-response p{margin-top:5px;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}
.cms-reader-inline-editor{margin-top:14px;padding-top:14px;border-top:1px solid #dfe7ee}
.cms-reader-inline-editor .cms-detail-actions,.cms-reply-compose .cms-detail-actions{justify-content:flex-end;margin-top:12px}
.cms-reply-new{margin-top:14px}
.cms-post-reader .cms-reply-compose{margin:0;padding:16px}
@media(max-width:760px){.cms-post-reader .cms-modal-body{padding-top:16px}.cms-post-header h3{font-size:20px}.cms-post-meta{gap:6px 14px}.cms-article-body{padding:18px 0}.cms-post-media-grid{grid-template-columns:1fr}.cms-post-reference{flex-direction:column;gap:4px}.cms-post-thread .cms-reply-card{padding:14px}.cms-post-thread .cms-collection-heading{align-items:flex-start;flex-wrap:wrap}.cms-post-reader .cms-form-actions>span{display:none}}

.cms-resource-symbol{display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;border-radius:8px;border:1px solid #e0e7ed;background:#f2f6f9;color:#6b8399}.cms-resource-symbol .cms-icon{width:17px;height:17px}
/* Program metadata editors share the compact CMS controls. */
.cms-edit-field input.cms-pd-input[readonly]{background:#fff;color:var(--cms-text);cursor:text}
.cms-tags-section{margin-top:18px;padding-top:16px;border-top:1px solid #e6ecf2}
.cms-tags-section>label{display:block;font-size:13px;font-weight:600;color:#44576b;margin-bottom:7px}
.cms-tag-editor{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-height:42px;padding:7px 9px;border:1px solid #d5dee7;border-radius:8px;background:#fff}
.cms-tag-editor:focus-within{border-color:#7190ac;box-shadow:0 0 0 3px #7190ac12}
.cms-tag-badges{display:contents}
.cms-tag{display:inline-flex;align-items:center;gap:3px;max-width:100%;padding:2px 3px 2px 9px;border:1px solid #dce5ed;border-radius:6px;background:#edf3f7;color:#3f5b72;font-size:13px;line-height:1.5}
.cms-tag>span{min-width:0;overflow-wrap:anywhere}.cms-tag>span:before{content:'#';color:#91a2b1;margin-right:3px}
.cms-tag-remove{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;padding:0;border:0;border-radius:4px;background:transparent;color:#7990a4}
.cms-tag-remove .cms-icon{width:12px;height:12px}.cms-tag-remove:hover{background:#dfe8ef;color:#294c68}
.cms-tag-editor>input{flex:1 1 160px;min-width:100px;max-width:100%;border:0;outline:0;height:28px;padding:2px 3px;background:transparent;color:var(--cms-text);font-size:14px}
.cms-tag-help{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;margin-top:7px;color:#7a8c9d;font-size:12px;line-height:1.6}
.cms-service-connection{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid #e5eaf0}
.cms-service-connection>div{min-width:0}.cms-service-connection strong{display:block;font-size:14px;color:var(--cms-navy-deep)}.cms-service-connection .cms-help{display:block;font-size:12px;margin-top:3px}
.cms-service-connection .cms-button{font-size:13px;min-height:38px;padding:7px 10px}.cms-service-connection .cms-icon{width:15px;height:15px}
.cms-template-fieldset{min-width:0;padding:0;margin:0 0 24px;border:0}.cms-template-fieldset legend{font-size:15px;font-weight:700;color:#344e65;padding:0;margin-bottom:4px}
.cms-template-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:13px}
.cms-template-option{position:relative;display:block;min-width:0;padding:4px;border:1px solid #dfe6ed;border-radius:9px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}
.cms-template-option>input{position:absolute;opacity:0;width:1px;height:1px;padding:0}
.cms-template-option>img{display:block;width:100%;height:58px;object-fit:cover;object-position:center;border-radius:5px;background:#edf1f4}
.cms-template-caption{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:7px 3px 2px;font-size:12px;color:#6f8192}.cms-template-caption strong{font-weight:550}
.cms-template-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;color:transparent;background:#f1f4f7}.cms-template-check .cms-icon{width:12px;height:12px}
.cms-template-option:has(input:checked){border-color:#758fa5;background:#f1f5f8;box-shadow:0 0 0 1px #758fa5}.cms-template-option:has(input:checked) .cms-template-caption{color:var(--cms-navy)}.cms-template-option:has(input:checked) .cms-template-check{background:var(--cms-navy);color:#fff}
.cms-template-option:hover{border-color:#a8b9c8}.cms-template-option:has(input:focus-visible){outline:3px solid var(--cms-warm);outline-offset:2px}
.cms-fingerprint-dialog{width:min(620px,calc(100vw - 40px))}.cms-fingerprint-dialog .cms-dialog-heading p{margin-top:4px}
.cms-fingerprint-identity{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid #e5ebf1}.cms-fingerprint-identity strong{flex:1 1 100%;font-size:17px;color:var(--cms-navy-deep);overflow-wrap:anywhere}
.cms-fingerprint-identity>.cms-program-status{margin-left:auto}.cms-fingerprint-audio,.cms-fingerprint-selected{margin-bottom:18px}.cms-fingerprint-audio h3,.cms-fingerprint-selected h3{font-size:14px;margin-bottom:8px;color:#425d75}
.cms-fingerprint-dialog audio{width:100%;height:44px}.cms-fingerprint-audio p,.cms-fingerprint-selected p{margin-top:6px;overflow-wrap:anywhere}
.cms-fingerprint-info{font-size:12px;color:#7b8d9d;margin-bottom:16px}.cms-fingerprint-info summary{cursor:pointer;width:fit-content}.cms-fingerprint-info code{display:block;margin-top:6px;overflow-wrap:anywhere;font-size:12px}
.cms-fingerprint-dialog input[type=file]{width:100%;height:auto;min-height:44px;padding:9px;font-size:13px}.cms-fingerprint-dialog input[type=file]::file-selector-button{padding:7px 11px;margin-right:10px;border:0;border-radius:5px;background:#edf2f6;color:#395a74;font:inherit}
.cms-fingerprint-dialog .cms-form-actions{flex-wrap:wrap}.cms-fingerprint-dialog .cms-form-actions>.cms-detail-actions{margin-left:auto}
@media(max-width:1000px){.cms-template-options{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.cms-template-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cms-template-option>img{height:48px}.cms-template-caption{font-size:11px;padding:6px 2px 2px}.cms-template-check{width:16px;height:16px}.cms-tag-editor>input{font-size:16px;height:32px}.cms-tag-remove{width:28px;height:28px}.cms-tag-help{font-size:12px}.cms-fingerprint-dialog{width:calc(100vw - 24px)}.cms-fingerprint-dialog .cms-form-actions>.cms-site-actions{width:auto}.cms-fingerprint-dialog .cms-form-actions>.cms-detail-actions{width:auto}.cms-service-connection .cms-button{min-height:44px}}

.cms-tag-help small{font-size:12px}

/* Shared program search, selected badges and quick reading. */
.cms-program-picker-host{display:inline-block;width:100%;max-width:100%;vertical-align:middle;min-width:0}
.cms-program-picker{width:100%;min-width:0;text-align:left;font-family:inherit}
.cms-program-picker .cms-program-search-input{display:block;width:100%;min-width:0;max-width:100%;float:none;padding:9px 12px;border:1px solid #d4dee8;border-radius:7px;background:#fff;color:var(--cms-navy-deep);font:inherit;font-size:14px;line-height:1.5;min-height:40px}
.cms-program-picker .cms-program-search-input:focus{outline:2px solid #9db1c3;outline-offset:1px}
.cms-program-selection{display:flex;align-items:center;gap:10px;width:fit-content;max-width:100%;min-height:40px;padding:5px 7px 5px 12px;border:1px solid #c8d8e5;border-radius:7px;background:#edf3f8;color:var(--cms-navy);font-size:14px;line-height:1.5}
.cms-program-selection-name{flex:1;min-width:0;overflow-wrap:anywhere;font-weight:600}
.cms-program-picker .cms-program-selection .cms-program-selection-clear{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;min-height:0;padding:0;border:0;border-radius:5px;background:transparent;color:#607b91;cursor:pointer}
.cms-program-picker .cms-program-selection .cms-program-selection-clear:hover{background:#dce7f0;color:var(--cms-navy-deep)}
.cms-program-picker .cms-program-selection .cms-program-selection-clear:focus-visible{outline:2px solid var(--cms-warm);outline-offset:1px}
.cms-program-selection-clear svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.cms-program-picker.is-locked .cms-program-selection{background:#f5f7fa;border-color:#e0e6ed;color:#61768a}
.cms-program-picker .cms-combobox-option{display:flex;align-items:baseline;justify-content:space-between;gap:12px;line-height:1.5;padding:9px 11px;white-space:normal}
.cms-program-picker .cms-combobox-option>span{min-width:0;overflow-wrap:anywhere}.cms-program-picker .cms-combobox-option>small{flex-shrink:0;color:#7d8d9c;font-size:12px}
.cms-post-expand{display:inline-flex;align-items:baseline;gap:10px;text-align:left}.cms-post-expand>span{overflow-wrap:anywhere}.cms-post-expand .cms-icon{flex-shrink:0;width:13px;height:13px;transition:transform .15s}.cms-post-expand[aria-expanded=true] .cms-icon{transform:rotate(180deg)}
.cms-board-row.is-expanded>td{background:#f6f9fc;border-bottom-color:#e0e8f0}
.cms-admin-table .cms-post-inline-row>td{padding:0 14px 16px;background:#f6f9fc}
.cms-post-inline{min-width:0;border:1px solid #dce5ee;border-left:3px solid var(--cms-warm);border-radius:0 0 9px 9px;background:#fff;padding:0 20px}
.cms-post-inline-meta{display:flex;flex-wrap:wrap;gap:5px 18px;padding:12px 0;border-bottom:1px solid #edf1f5;font-size:12px;color:#71869a}
.cms-post-inline>.cms-article-body{max-height:420px;overflow:auto;scrollbar-width:thin;padding:16px 12px 4px 0;line-height:1.8;overscroll-behavior:contain}
.cms-post-inline-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:12px 0;border-top:1px solid #e8edf3}.cms-post-inline-actions .cms-button{min-height:36px;padding:7px 13px;font-size:13px}
.cms-post-inline-error{padding:20px 0}.cms-post-inline-error>p{margin-bottom:10px;color:#a44f47}
.cms-resource-table{width:100%;table-layout:fixed;min-width:600px}
.cms-resource-table th:first-child{width:auto}.cms-resource-table th:nth-child(2){width:110px}.cms-resource-table th:nth-child(3){width:155px}
.cms-admin-table.cms-resource-table :is(th,td){padding:15px 18px;vertical-align:middle}.cms-resource-table td:first-child{min-width:0}
.cms-resource-identity{min-width:0}.cms-resource-identity .cms-record-name{display:block;width:100%;max-width:none;font-size:15px;line-height:1.55;white-space:normal;overflow-wrap:anywhere;text-align:left}
.cms-resource-byline{display:flex;flex-wrap:wrap;gap:3px 12px;margin-top:5px;font-size:13px;line-height:1.5;color:#71869a}.cms-resource-byline>span+span{color:#8a9bab}
.cms-resource-type{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border:1px solid #dce5ee;border-radius:5px;background:#f2f6fa;color:#547087;white-space:nowrap;font-size:12px;line-height:1.5}
.cms-resource-type[data-type=AOD]{background:#f5f0f9;border-color:#e8dff0;color:#78618b}.cms-resource-type .cms-icon{width:13px;height:13px}
.cms-resource-date{font-size:13px;color:#526c82;font-variant-numeric:tabular-nums;white-space:nowrap}
@media(max-width:700px){:is(.cms-tabs,.login-tabs,.cms-program-tabs)>button{min-height:44px;padding:10px 12px;font-size:14px}.cms-program-picker .cms-program-search-input{font-size:16px;min-height:44px}.cms-program-selection{min-height:44px;font-size:16px}.cms-program-picker .cms-program-selection .cms-program-selection-clear{width:32px;height:32px}.cms-program-picker .cms-combobox-option{align-items:flex-start;flex-direction:column;gap:1px}.cms-post-inline{padding-inline:14px}.cms-post-inline>.cms-article-body{max-height:360px}.cms-post-inline-actions .cms-button{min-height:44px}.cms-resource-table{min-width:540px}.cms-admin-table.cms-resource-table :is(th,td){padding:13px 14px}.cms-resource-table th:nth-child(2){width:94px}.cms-resource-table th:nth-child(3){width:125px}}

@media(max-width:1100px){.cms-resource-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.cms-resource-search-grid{grid-template-columns:1fr}}
@media(max-width:700px){.cms-post-inline{width:calc(100vw - 76px);max-width:100%}}

/* Inline MO code: a compact editor becomes a fixed saved-state badge. */
.cms-service-connection.cms-mo-service{display:block}
.cms-mo-heading{margin-bottom:9px;font-size:14px;color:var(--cms-navy-deep)}
.cms-mo-editor{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}
.cms-mo-editor>input{flex:1 1 140px;min-width:0;width:0;min-height:40px;padding:9px 11px;border:1px solid #d6e0e9;border-radius:7px;background:#fff;color:var(--cms-navy-deep);font:inherit;font-size:14px;line-height:1.5}
.cms-mo-editor>input:focus{outline:2px solid #a3b5c6;outline-offset:1px}
.cms-mo-editor>.cms-button{flex-shrink:0;min-height:40px;padding:8px 12px;font-size:13px}
.cms-mo-editor>.cms-text-button{font-size:13px}
.cms-mo-saved{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.cms-mo-badge{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:5px 6px 5px 10px;border:1px solid #cddce8;border-radius:7px;background:#edf3f8;color:#365a77;font-size:13px;line-height:1.6;font-weight:600}
.cms-mo-badge>.cms-icon{width:15px;height:15px}
.cms-mo-value{min-width:0;overflow-wrap:anywhere;white-space:pre-wrap;color:var(--cms-navy-deep);font-weight:700}
.cms-mo-badge .cms-mo-remove{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:26px;height:26px;min-height:0;margin-left:2px;padding:0;border:0;border-radius:4px;background:transparent;color:#7890a5;cursor:pointer}
.cms-mo-badge .cms-mo-remove:hover{background:#dce7f0;color:var(--cms-navy-deep)}
.cms-mo-badge .cms-mo-remove>svg{display:block;width:13px;height:13px}
.cms-mo-service>[data-mo-note]{display:block;font-size:12px;line-height:1.6;margin-top:7px}
.cms-mo-service>.cms-field-error{display:block;margin-top:7px}
@media(max-width:760px){.cms-mo-editor>input{min-height:44px;font-size:16px}.cms-mo-editor>.cms-button{min-height:44px}.cms-mo-badge{font-size:14px}.cms-mo-badge .cms-mo-remove{width:30px;height:30px}}

/* Shared overview cards, statistics, shortcuts and accessible time series. */
.cms-nav-dashboard{display:flex;align-items:center;gap:12px;min-height:48px;padding:12px 14px;margin-bottom:12px;border-radius:8px;color:#c2d0dd;font-size:14px;font-weight:650;text-decoration:none}
.cms-nav-dashboard:hover,.cms-nav-dashboard.is-active{color:#fff;background:#ffffff12}
.cms-nav-dashboard.is-active{box-shadow:inset 3px 0 var(--cms-warm)}
.cms-overview-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:18px 0 14px;font-size:13px;color:var(--cms-text-muted)}
.cms-scope-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--cms-border);border-radius:6px;background:#fff;color:var(--cms-navy);font-weight:650}
.cms-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}
.cms-stat-card{display:flex;flex-direction:column;gap:16px;min-width:0;padding:20px;border:1px solid var(--cms-border);border-radius:var(--cms-card-radius);background:#fff;color:var(--cms-text);text-decoration:none;transition:border-color .15s,box-shadow .15s}
.cms-stat-card:hover{border-color:var(--cms-warm);box-shadow:0 5px 18px #172f4308;color:var(--cms-navy)}
.cms-stat-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;font-size:14px;font-weight:650;line-height:1.5}
.cms-stat-heading>.cms-icon{width:32px;height:32px;flex:none;padding:8px;border-radius:8px;background:#f0f3f6;color:var(--cms-navy)}
.cms-stat-value{display:flex;align-items:baseline;gap:6px;color:var(--cms-navy)}
.cms-stat-value strong{font-size:34px;line-height:1.15;letter-spacing:-1.3px;font-variant-numeric:tabular-nums}
.cms-stat-value>span{font-size:14px;color:var(--cms-text-muted)}
.cms-stat-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;color:var(--cms-text-muted)}
.cms-stat-footer>.cms-icon{color:var(--cms-warm)}
.cms-overview-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:20px;align-items:start;margin-bottom:20px}
.cms-summary-card{min-width:0;border:1px solid var(--cms-border);border-radius:var(--cms-card-radius);background:#fff;overflow:hidden}
.cms-overview-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 20px 16px;border-bottom:1px solid #edf0f4}
.cms-overview-heading h2{margin:0;font-size:17px;line-height:1.5;font-weight:750;color:var(--cms-navy);letter-spacing:-.4px}
.cms-overview-heading p{margin:5px 0 0;font-size:13px;line-height:1.5;color:var(--cms-text-muted)}
.cms-overview-heading>.cms-button{flex:none;min-height:34px;font-size:13px;padding:6px 10px}
.cms-overview-heading>.cms-text-link{flex:none;font-size:13px;color:var(--cms-navy);font-weight:650;text-decoration:none}
.cms-overview-heading>.cms-text-link:hover{text-decoration:underline}
.cms-shortcut-list{padding:6px 12px}
.cms-shortcut{display:flex;align-items:center;gap:12px;padding:10px 8px;color:var(--cms-text);text-decoration:none;border-bottom:1px solid #edf0f4}
.cms-shortcut:last-child{border-bottom:0}
.cms-shortcut:hover{color:var(--cms-navy);background:#f6f8fa;border-radius:6px}
.cms-shortcut>.cms-icon:first-child{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex:none;background:#f1f4f7;border-radius:8px;color:var(--cms-navy)}
.cms-shortcut>.cms-icon:last-child{margin-left:auto;font-size:12px;color:#8b99a6;flex:none}
.cms-shortcut-copy{min-width:0;display:grid;gap:4px}
.cms-shortcut-copy strong{font-size:14px;font-weight:650;line-height:1.4}
.cms-shortcut-copy small{font-size:13px;color:var(--cms-text-muted);line-height:1.4}
.cms-recent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.cms-recent-list{list-style:none;margin:0;padding:0 20px}
.cms-recent-list>li+li{border-top:1px solid #edf0f4}
.cms-recent-link{display:block;padding:16px 0;text-decoration:none;color:var(--cms-text)}
.cms-recent-link>strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;font-weight:650;line-height:1.55;overflow-wrap:anywhere}
.cms-recent-link:hover>strong{color:var(--cms-navy);text-decoration:underline}
.cms-recent-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:7px;font-size:13px;color:var(--cms-text-muted)}
.cms-recent-meta>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cms-recent-meta time{white-space:nowrap;flex:none;font-variant-numeric:tabular-nums}
.cms-overview-empty,.cms-overview-status{padding:28px 20px;margin:0;font-size:14px;line-height:1.7;color:var(--cms-text-muted)}
.cms-overview-status{background:#fff;border:1px solid var(--cms-border);border-radius:var(--cms-card-radius)}
.cms-chart{padding:6px 14px 18px;min-width:0}
.cms-chart svg{display:block;width:100%;height:auto;overflow:visible}
.cms-chart-grid{stroke:#edf0f4;stroke-width:1}
.cms-chart-label{fill:var(--cms-text-muted);font-size:13px;font-family:var(--cms-font)}
.cms-chart-content{color:var(--cms-navy)}
.cms-chart-audio{color:var(--cms-warm)}
.cms-chart-line{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}
.cms-chart-audio.cms-chart-line{stroke-dasharray:6 5}
.cms-chart-point{fill:#fff;stroke:currentColor;stroke-width:2.5}
.cms-chart-legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:18px 20px 8px;font-size:13px}
.cms-chart-legend>span{display:inline-flex;align-items:center;gap:7px}
.cms-chart-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:currentColor;flex:none}
.cms-chart-audio>.cms-chart-dot{border-radius:2px}
.cms-overview-no-trend .cms-overview-grid{grid-template-columns:1fr}
.cms-overview-no-trend .cms-shortcut-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
@media(max-width:1150px){.cms-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-overview-grid{grid-template-columns:1fr}.cms-shortcut-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}}
@media(max-width:600px){.cms-stat-grid{gap:10px;margin-bottom:16px}.cms-stat-card{padding:14px;gap:14px}.cms-stat-heading{font-size:13px;gap:6px}.cms-stat-heading>.cms-icon{display:none}.cms-stat-value strong{font-size:29px}.cms-stat-footer{font-size:12px}.cms-overview-heading{padding:16px;gap:10px}.cms-overview-heading h2{font-size:16px}.cms-overview-heading p{font-size:13px}.cms-recent-grid{grid-template-columns:1fr;gap:16px}.cms-overview-grid{gap:16px;margin-bottom:16px}.cms-shortcut-list,.cms-overview-no-trend .cms-shortcut-list{display:block}.cms-recent-list{padding:0 16px}.cms-recent-meta{flex-wrap:wrap;gap:4px}.cms-chart{padding:6px 4px 14px}.cms-chart-legend{padding:16px 16px 8px}.cms-overview-meta{margin:14px 0}.cms-overview-meta>#dashboard-updated{font-size:12px}.cms-overview-heading>.cms-button{min-height:44px}.cms-nav-dashboard{min-height:48px}}

/* Shared attachment links for inline posts, readers and media editors. */
.cms-file-download-list{list-style:none;display:grid;gap:8px;margin:0;padding:0}
.cms-file-download{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 14px;border:1px solid var(--cms-border);border-radius:8px;background:#f8fafc;color:var(--cms-navy);text-decoration:none;min-width:0}
.cms-file-download:hover{border-color:var(--cms-warm);background:#fff;color:var(--cms-navy-deep)}
.cms-file-download:focus-visible{outline:3px solid var(--cms-warm);outline-offset:2px}
.cms-file-download[aria-busy=true]{opacity:.65;cursor:progress}
.cms-file-download>.cms-icon{flex:none;width:18px;height:18px;color:#607b90}
.cms-file-download>.cms-icon:last-child{margin-left:auto;color:var(--cms-navy)}
.cms-file-download-copy{display:grid;gap:3px;min-width:0}
.cms-file-download-copy strong{font-size:14px;font-weight:650;line-height:1.5;overflow-wrap:anywhere}
.cms-file-download-copy small{font-size:13px;color:var(--cms-text-muted);font-variant-numeric:tabular-nums}
.cms-post-media audio{width:100%}
.cms-post-media-grid+.cms-post-thread{margin-top:16px}
@media(max-width:700px){.cms-file-download{padding:10px;gap:9px;min-height:48px}.cms-file-download-copy strong{font-size:14px}}

/* Shared compact operations workspaces: request, branch and content administration. */
.cms-operations-search{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 18px}.cms-operations-query{grid-column:span 2}.cms-operations-table th:first-child{width:54%}.cms-inline-badges{display:flex;flex-wrap:wrap;gap:6px}.cms-title-button{border:0;background:none;padding:0;text-align:left;color:var(--cms-navy);font-weight:700;line-height:1.5;cursor:pointer}.cms-title-button:hover{text-decoration:underline}.cms-item-meta{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:5px;font-size:13px;color:#6b7c8e}.cms-overview-card>.cms-edit-field{margin-bottom:14px}.cms-badge-warm{background:#f7ede3;color:#8b5836}.cms-badge-navy{background:#eaf0f6;color:#244861}
@media(max-width:900px){.cms-operations-search{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-operations-query{grid-column:auto}}
@media(max-width:600px){.cms-operations-search{grid-template-columns:1fr}.cms-operations-query{grid-column:auto}.cms-operations-table th:first-child{width:auto}}

.cms-dialog-wide{width:min(1080px,calc(100vw - 24px))}.cms-detail-prose{padding:0;line-height:1.7;overflow-wrap:anywhere}.cms-detail-prose>p{margin:0 0 8px}.cms-detail-prose>p:last-child{margin-bottom:0}
@media(max-width:760px){.cms-form-actions>.cms-action-hint{display:none}}

.cms-title-button.cms-is-deleted{text-decoration:line-through;color:var(--cms-text-muted)}.cms-title-button.cms-is-deleted:hover{text-decoration:line-through underline}

/* Shared rich-text editor for page forms and JSON modal forms. Vendor internals stay vendor-owned. */
.cms-namo-field,.cms-namo-host{min-width:0;max-width:100%}
.cms-namo-field{grid-column:1/-1}
.cms-namo-field>label{display:block;margin-bottom:8px;font-size:14px;font-weight:650;color:var(--cms-navy,#172f43)}
.cms-namo-host{overflow:hidden;border:1px solid var(--cms-border,#dce3eb);border-radius:10px;background:#fff}
.cms-namo-field>textarea:not([hidden]){width:100%;min-height:180px}
.cms-namo-layer{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:visible;background:transparent;color:inherit;pointer-events:none;z-index:20004}
.cms-namo-layer>*{pointer-events:auto}
.cms-namo-layer:popover-open,.cms-namo-layer:not([popover]){display:flex;align-items:center;justify-content:center}
.cms-namo-layer>.ce-ui-dialog{position:relative!important;inset:auto!important;flex:0 1 auto;margin:12px;max-width:calc(100vw - 24px);max-height:calc(100svh - 24px);overflow:auto;box-sizing:border-box}
.cms-namo-layer .ce-ui-dialog-content{min-width:0!important;max-width:100%;box-sizing:border-box;overflow:auto}
@media(max-width:680px){.cms-namo-host{border-radius:8px}.cms-namo-field>label{font-size:14px}}

/* Nested checkbox labels keep their row layout instead of inheriting field-heading styles. */
.cms-edit-field>label.cms-check-row{display:flex;align-items:center;gap:8px;width:fit-content;max-width:100%;min-height:28px;margin:8px 0 0;font-size:14px;font-weight:500;line-height:1.5;cursor:pointer}
.cms-edit-field>label.cms-check-row>input[type=checkbox]{display:block;flex:0 0 17px;width:17px;height:17px;margin:0;padding:0}
@media(max-width:760px){.cms-edit-field>label.cms-check-row{min-height:44px;margin-top:4px}}

/* Shared dashboard search: the same typography, controls and navy/warm tokens. */
.cms-unified-search{margin:0 0 24px;padding:22px 24px;border:1px solid var(--cms-border);border-radius:14px;background:#fff;box-shadow:0 4px 18px #172f4305}
.cms-unified-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:17px}.cms-unified-heading h2{font-size:20px;letter-spacing:-.5px;color:var(--cms-navy-deep)}.cms-unified-heading p{margin-top:5px;color:var(--cms-text-muted);font-size:13px}.cms-search-access-note{display:flex;align-items:center;gap:6px;color:#7b6b5d;font-size:12px;white-space:nowrap}
.cms-unified-search-form{display:flex;align-items:center;gap:12px;border:1px solid #bacbd8;border-radius:10px;padding:6px 7px 6px 15px;background:#fbfcfd}.cms-unified-search-form:focus-within{border-color:var(--cms-navy);box-shadow:0 0 0 3px #1c394f0c}.cms-unified-search-form>i{font-size:19px;color:#647e92}.cms-unified-search-form input{width:100%;min-width:0;flex:1;border:0;background:transparent;outline:none;padding:7px 0;font-size:15px;color:var(--cms-text)}.cms-unified-search-form input:focus-visible{outline:none}.cms-unified-search-form .cms-button{min-width:78px;min-height:40px}
.cms-search-status{margin:12px 0 0!important;min-height:22px;font-size:13px;color:var(--cms-text-muted)}.cms-search-categories{margin-top:19px;margin-bottom:14px}.cms-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.cms-search-results:not(:empty){margin-top:16px}.cms-search-group{min-width:0;border:1px solid var(--cms-border);border-radius:10px;overflow:hidden}.cms-search-group-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;background:#f5f7f9;border-bottom:1px solid var(--cms-border)}.cms-search-group-heading h3{font-size:15px;font-weight:700}.cms-search-group-count{font-size:12px;color:var(--cms-text-muted)}.cms-search-result{display:flex;align-items:center;gap:16px;padding:13px 16px;border-bottom:1px solid #edf0f3;transition:background .15s}.cms-search-result:last-child{border-bottom:0}.cms-search-result:hover{background:#f7f9fb}.cms-search-result-copy{min-width:0;flex:1;display:grid;gap:3px}.cms-search-result-copy strong{overflow-wrap:anywhere;font-size:14px;line-height:1.55;color:var(--cms-navy);font-weight:650}.cms-search-result-context,.cms-search-result-detail,.cms-search-result-date{overflow-wrap:anywhere;font-size:12px;line-height:1.6;color:var(--cms-text-muted)}.cms-search-result-detail:empty{display:none}.cms-search-result-arrow{color:#8a9bab;flex-shrink:0}.cms-search-empty{padding:24px 16px;font-size:13px;color:var(--cms-text-muted)}.cms-search-more{display:flex;margin:10px auto;min-height:34px!important;font-size:13px!important}
@media(max-width:760px){.cms-unified-search{padding:18px 16px}.cms-unified-heading{align-items:flex-start;flex-direction:column;gap:8px}.cms-unified-heading h2{font-size:18px}.cms-search-access-note{font-size:12px}.cms-unified-search-form{gap:8px;padding-left:10px}.cms-unified-search-form input{font-size:16px}.cms-unified-search-form .cms-button{min-width:60px;min-height:44px}.cms-search-results{grid-template-columns:1fr}.cms-search-result{padding:13px 14px}.cms-search-result-copy strong{font-size:15px}.cms-search-result-context,.cms-search-result-detail{font-size:13px}}
@media(prefers-reduced-motion:reduce){.cms-search-result{transition:none}}

/* Shared post image previews and accessible enlarged viewer. Author image sizes cannot expand readers. */
.cms-article-body img,.cms-post-media img{width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:min(100%,360px)!important;max-height:220px!important;object-fit:contain;vertical-align:middle}
.cms-image-preview{cursor:zoom-in;border-radius:8px;transition:box-shadow .15s}
.cms-image-preview:hover{box-shadow:0 0 0 2px #c58e6580}
.cms-image-preview:focus-visible{outline:3px solid var(--cms-warm);outline-offset:4px}
.cms-image-dialog{width:min(1180px,calc(100vw - 40px));max-width:calc(100vw - 40px)}
.cms-image-dialog .cms-dialog-heading{padding:18px 22px}
.cms-image-dialog .cms-dialog-heading h2{font-size:19px}
.cms-image-dialog .cms-modal-close svg{width:20px;height:20px}
.cms-image-dialog .cms-dialog-heading p{margin:4px 0 0}
.cms-image-dialog .cms-image-stage{display:grid;place-items:center;min-height:160px;padding:20px;background:#f3f6f9;overflow:auto;max-height:calc(100svh - 210px)}
.cms-image-stage>img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100svh - 260px);object-fit:contain;border-radius:5px}
.cms-image-stage>img[hidden],.cms-image-stage>p[hidden]{display:none}
.cms-image-dialog.cms-image-original .cms-image-stage{display:block}
.cms-image-original .cms-image-stage>img{max-width:none;max-height:none;margin:auto}
.cms-image-dialog .cms-form-actions{padding:14px 22px;gap:14px}
.cms-image-caption{overflow-wrap:anywhere;min-width:0;font-size:13px}
@media(max-width:700px){.cms-article-body img,.cms-post-media img{max-height:180px!important}.cms-image-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px)}.cms-image-dialog .cms-dialog-heading{padding:14px 16px}.cms-image-dialog .cms-image-stage{padding:12px;max-height:calc(100svh - 200px)}.cms-image-stage>img{max-height:calc(100svh - 250px)}.cms-image-dialog .cms-form-actions{padding:12px 16px}.cms-image-dialog .cms-form-actions>span{width:auto;flex:1}.cms-image-dialog .cms-detail-actions{flex-wrap:wrap}}
