:root{
  --ssw-sidebar-width:248px;
  --ssw-sidebar-collapsed:64px;
  --ssw-topbar-height:60px;
  --ssw-navy:#242936;
  --ssw-navy-2:#2d3443;
  --ssw-primary:#3268e8;
  --ssw-primary-rgb:50,104,232;
  --ssw-bg:#f4f5f7;
  --ssw-surface:#fff;
  --ssw-text:#172033;
  --ssw-muted:#667085;
  --ssw-border:#dde2e8;
  --ssw-radius:.4rem;
  --ssw-radius-sm:.4rem;
  --bs-border-radius:.4rem;
  --bs-border-radius-sm:.4rem;
  --bs-border-radius-lg:.4rem;
  --bs-border-radius-xl:.4rem;
  --bs-border-radius-xxl:.4rem;
  --bs-border-radius-pill:.4rem;
  --ssw-shadow:0 1px 2px rgba(15,23,42,.035);
  --ssw-shadow-lg:0 4px 12px rgba(15,23,42,.055);
}

html{font-size:15px}
body{
  min-height:100vh;
  color:var(--ssw-text);
  background:var(--ssw-bg);
  font-family:var(--bs-body-font-family);
  line-height:1.45;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.min-w-0{min-width:0}

/* Official Bootstrap Icons are inlined as SVGs by app/Support/Icons.php. */
.ssw-bi{width:1em;height:1em;display:inline-block;vertical-align:-.125em;fill:currentColor;flex:0 0 auto}

/* Application shell */
.ssw-sidebar{
  position:fixed;inset:0 auto 0 0;width:var(--ssw-sidebar-width);z-index:1040;
  background:var(--ssw-navy);
  color:#fff;transition:width .2s ease;box-shadow:1px 0 0 rgba(255,255,255,.04);
}
.ssw-sidebar-mobile{--bs-offcanvas-width:280px;background:var(--ssw-navy)!important}
.ssw-sidebar-inner{width:100%;overflow:hidden}
.ssw-sidebar-brand{min-height:60px;border-bottom:1px solid rgba(255,255,255,.08)}
.ssw-logo-mark{width:28px;height:28px;border-radius:var(--ssw-radius);background:#3268e8;display:inline-flex;align-items:center;justify-content:center;color:#fff;box-shadow:none}
.ssw-logo-mark .ssw-bi{width:1.05rem;height:1.05rem}
.ssw-sidebar .nav{padding-top:.45rem}
.ssw-sidebar-link{min-height:40px;color:rgba(255,255,255,.72)!important;border-radius:var(--ssw-radius);padding:.54rem .68rem!important;display:flex!important;align-items:center;gap:.68rem;font-weight:500;white-space:nowrap;transition:background .15s,color .15s}
.ssw-sidebar-link:hover{background:rgba(255,255,255,.075);color:#fff!important}
.ssw-sidebar-link.active{background:rgba(255,255,255,.11)!important;color:#fff!important;box-shadow:inset 3px 0 0 #6f96ff}
.ssw-sidebar-icon{width:1.25rem;height:1.25rem;display:inline-flex;align-items:center;justify-content:center;flex:0 0 1.25rem}
.ssw-sidebar-icon .ssw-bi{width:1rem;height:1rem}
.ssw-sidebar-muted{color:rgba(255,255,255,.45)}
.ssw-sidebar-group-label{padding:.25rem .68rem .32rem;color:rgba(255,255,255,.38);font-size:.67rem;font-weight:700;letter-spacing:.075em;text-transform:uppercase;line-height:1.2}

.ssw-sidebar-plan{padding:.1rem 0;color:#fff}
.ssw-sidebar-usage-row{display:flex;justify-content:space-between;align-items:center;gap:.6rem;font-size:.72rem;line-height:1.45;margin-top:.14rem}
.ssw-sidebar-usage-row strong{color:rgba(255,255,255,.78);font-weight:600}

/* v1.0.8 account password quality */
.ssw-password-field .btn{min-width:78px;font-size:.8rem;font-weight:600}
.ssw-password-field .btn .ssw-bi{width:.9rem;height:.9rem}
.ssw-password-strength .progress{height:5px;background:#edf0f4;border-radius:var(--ssw-radius)}
.ssw-password-strength .progress-bar{transition:width .18s ease,background-color .18s ease}
.ssw-password-rule{display:inline-flex;align-items:center;gap:.35rem;color:#667085}
.ssw-password-rule::before{content:"○";font-weight:700;color:#98a2b3}
.ssw-password-rule.is-valid{color:#166534}
.ssw-password-rule.is-valid::before{content:"✓";color:#16a34a}
.ssw-password-rule.is-warning{color:#92400e}
.ssw-password-rule.is-warning::before{content:"!";color:#d97706}
.ssw-avatar{width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.1);display:inline-flex;align-items:center;justify-content:center;color:#fff}
.ssw-collapse-collapsed{display:none}

.ssw-topbar{
  position:fixed;top:0;right:0;left:var(--ssw-sidebar-width);height:var(--ssw-topbar-height);z-index:1030;
  background:#fff;backdrop-filter:none;border-bottom:1px solid var(--ssw-border);
  transition:left .2s ease;
}
.ssw-content-shell{margin-left:var(--ssw-sidebar-width);padding-top:var(--ssw-topbar-height);min-height:100vh;transition:margin-left .2s ease}
.ssw-top-workspace{min-width:160px;max-width:240px;border-color:var(--ssw-border);background-color:#fff}
.ssw-icon-button{width:34px;height:34px;padding:0;border-radius:var(--ssw-radius)}
.ssw-account-menu{min-height:34px;border-color:var(--ssw-border)!important;background:#fff!important;border-radius:var(--ssw-radius)!important}
.ssw-account-avatar{display:inline-flex;color:#475467}.ssw-account-avatar .ssw-bi{width:1.2rem;height:1.2rem}
.ssw-account-chevron{width:.75rem!important;height:.75rem!important;transform:rotate(90deg)}
.ssw-account-dropdown{min-width:240px;border-radius:var(--ssw-radius)}
.ssw-account-version{font-size:.77rem;line-height:1.35;letter-spacing:.01em}

.ssw-sidebar-collapsed .ssw-sidebar{width:var(--ssw-sidebar-collapsed)}
.ssw-sidebar-collapsed .ssw-topbar{left:var(--ssw-sidebar-collapsed)}
.ssw-sidebar-collapsed .ssw-content-shell{margin-left:var(--ssw-sidebar-collapsed)}
.ssw-sidebar-collapsed .ssw-sidebar-label{display:none!important}
.ssw-sidebar-collapsed .ssw-sidebar-brand{justify-content:center!important;padding-left:.5rem!important;padding-right:.5rem!important}
.ssw-sidebar-collapsed .ssw-sidebar-link{justify-content:center;padding-left:.5rem!important;padding-right:.5rem!important;gap:0}
.ssw-sidebar-collapsed .ssw-collapse-expanded{display:none}.ssw-sidebar-collapsed .ssw-collapse-collapsed{display:inline-flex}
.ssw-sidebar-collapsed .ssw-sidebar .border-top{padding-left:0!important;padding-right:0!important;text-align:center}

/* Typography and page structure */
h1,h2,h3,h4,h5,h6{color:#101828;letter-spacing:-.022em}
a{color:#2f63d8}a:hover{color:#244fac}
.eyebrow{text-transform:none;letter-spacing:0;font-size:.78rem;color:#667085;font-weight:600;margin-bottom:.2rem}
.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}
.page-heading h1{margin-bottom:.25rem;font-size:1.65rem!important;line-height:2.6rem}
.page-heading p{margin-bottom:0;color:var(--ssw-muted)}
.breadcrumb{--bs-breadcrumb-divider-color:#98a2b3;--bs-breadcrumb-item-active-color:#667085}
.breadcrumb a{text-decoration:none}
.ssw-topbar-context{display:flex;align-items:center;gap:.5rem;min-width:0;color:#475467;flex:0 1 auto;max-width:240px}
.ssw-topbar-context .ssw-bi{width:.95rem;height:.95rem;color:#667085}
.ssw-topbar-breadcrumbs{min-width:0;overflow:hidden;border-left:1px solid var(--ssw-border);padding-left:1rem;height:100%;display:flex;align-items:center}
.ssw-topbar-breadcrumbs .breadcrumb{display:flex;flex-wrap:nowrap;align-items:center;min-width:0;overflow:hidden;font-size:.9rem;white-space:nowrap;margin:0}
.ssw-topbar-breadcrumbs .breadcrumb-item{display:flex;align-items:center;min-width:0;max-width:240px;white-space:nowrap;flex:0 1 auto}
.ssw-topbar-breadcrumbs .breadcrumb-item+.breadcrumb-item{padding-left:0}
.ssw-topbar-breadcrumbs .breadcrumb-item+.breadcrumb-item::before{content:"";display:inline-block;float:none;width:.42rem;height:.42rem;margin:.2rem .4rem 0 .3rem;padding:0;border-top:1.5px solid #98a2b3;border-right:1.5px solid #98a2b3;transform:translateY(-1px) rotate(45deg);flex:0 0 auto}
.ssw-topbar-breadcrumbs .ssw-breadcrumb-label{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ssw-topbar-breadcrumbs .breadcrumb-item a{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ssw-topbar-breadcrumbs .breadcrumb-item.active{font-weight:600;color:#475467}
.ssw-app-main{max-width:100%;}


/* Bootstrap component refinement */
.card{border-color:var(--ssw-border);border-radius:var(--ssw-radius);box-shadow:none;background:#fff}
.card-header{background:#fff;border-bottom-color:var(--ssw-border);padding:.72rem 1rem;border-radius:var(--ssw-radius) var(--ssw-radius) 0 0!important}
.card-body{padding:.9rem}
.shadow-sm{box-shadow:var(--ssw-shadow)!important}
.shadow-lg{box-shadow:var(--ssw-shadow-lg)!important}
.btn{border-radius:var(--ssw-radius);font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:34px}
.btn-sm{border-radius:var(--ssw-radius);min-height:30px}
.btn-lg{border-radius:var(--ssw-radius);min-height:42px}
.btn-primary{--bs-btn-bg:var(--ssw-primary);--bs-btn-border-color:var(--ssw-primary);--bs-btn-hover-bg:#2858cf;--bs-btn-hover-border-color:#2858cf;--bs-btn-active-bg:#214db9;--bs-btn-active-border-color:#214db9}
.form-control,.form-select{border-color:#d3d9e2;border-radius:var(--ssw-radius);min-height:38px;background-color:#fff}
.form-control-sm,.form-select-sm{min-height:30px;border-radius:var(--ssw-radius)}
.form-control-lg,.form-select-lg{min-height:44px;border-radius:var(--ssw-radius)}
.form-control:focus,.form-select:focus,.form-check-input:focus{border-color:#8fb0f5;box-shadow:0 0 0 .22rem rgba(var(--ssw-primary-rgb),.12)}
.form-label{font-weight:600;color:#344054;margin-bottom:.42rem}.form-text{color:#7c8798}
.input-group-text{border-color:#d7dde7;background:#f8fafc;color:#667085}
.form-check-input{border-color:#c8d0dc}
.table{--bs-table-border-color:#edf0f4;margin-bottom:0}
.table>thead th{font-size:.7rem;text-transform:none;letter-spacing:.01em;color:#667085;font-weight:600;background:#f7f8fa;padding-top:.68rem;padding-bottom:.68rem;white-space:nowrap}
.table>tbody td{padding-top:.68rem;padding-bottom:.68rem}
.table-hover>tbody>tr:hover>*{--bs-table-bg-state:#f8faff}
.list-group-item{border-color:#edf0f4}.list-group-item-action:hover{background:#f8faff}
.alert{border-radius:var(--ssw-radius)}.badge{font-weight:600;letter-spacing:.01em}
.dropdown-menu{border-color:var(--ssw-border)}
/* Google Connections uses a responsive table for narrow screens, but desktop action menus must not be clipped by the table overflow wrapper. */
@media (min-width:768px){.ssw-google-connections-table{overflow:visible}}
.modal-content,.offcanvas{border-radius:var(--ssw-radius)}
.offcanvas.offcanvas-end{--bs-offcanvas-transition:transform .3s ease-in-out;border-top-right-radius:0;border-bottom-right-radius:0;will-change:transform}
.offcanvas.offcanvas-end,.offcanvas-backdrop.fade{transition:all .3s ease-in-out!important}
.accordion-item{border-color:var(--ssw-border)}

.icon-circle{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ssw-radius);background:#eef4ff;color:var(--ssw-primary);flex:0 0 auto}
.icon-circle .ssw-bi{width:1.1rem;height:1.1rem}.icon-circle-sm{width:32px;height:32px;border-radius:var(--ssw-radius)}.icon-circle-sm .ssw-bi{width:1rem;height:1rem}
.stat-card .stat-value{font-size:1.55rem;font-weight:700;line-height:1.1;letter-spacing:-.04em}
.action-card{transition:background .15s ease,border-color .15s ease}.action-card:hover{background:#fbfcfd;border-color:#cbd3df}

.status-up,.status-active,.status-trialing,.status-recovered,.status-paid{background:#dcfce7!important;color:#166534!important}
.status-degraded,.status-past_due,.status-incomplete,.status-acknowledged,.status-pending{background:#fef3c7!important;color:#92400e!important}
.status-down,.status-open,.status-canceled,.status-unpaid,.status-closed,.status-failed{background:#fee2e2!important;color:#991b1b!important}
.status-unknown{background:#eef2f6!important;color:#475569!important}

.timeline{border-left:2px solid #e2e8f0;margin-left:.4rem;padding-left:1.2rem}.timeline-item{position:relative;padding-bottom:1.1rem}.timeline-item:before{content:"";position:absolute;left:-1.55rem;top:.25rem;width:.65rem;height:.65rem;border-radius:50%;background:var(--ssw-primary);border:2px solid #fff;box-shadow:0 0 0 1px #cbd5e1}.timeline-item:last-child{padding-bottom:0}
.text-break{overflow-wrap:anywhere}.tracking-wide{letter-spacing:.18em}.last-border-0:last-child{border-bottom:0!important}.table-wrap{overflow:auto}

/* Dashboard */
.ssw-dashboard-welcome{background:#fff;border-color:var(--ssw-border)}
.ssw-quick-link{display:flex;align-items:center;gap:.8rem;padding:.75rem;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);text-decoration:none;color:inherit;background:#fff;transition:background .15s,border-color .15s}.ssw-quick-link:hover{border-color:#cbd3df;background:#fafbfc;color:inherit}

/* Monitoring */
.ssw-site-card .card-body{padding:.9rem}.ssw-site-card .site-url{min-height:2.2rem}.ssw-sticky-card{top:calc(var(--ssw-topbar-height) + 1rem)}

/* Billing */
.plan-card{transition:border-color .15s ease,background .15s ease}.plan-card:hover{background:#fbfcfd;border-color:#cbd3df}.current-plan-card{box-shadow:inset 3px 0 0 var(--ssw-primary)!important;border-color:#b9caf6}
.billing-option{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.8rem .9rem;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);background:#fff}.billing-option-current{border-color:#a9c0f5;background:#f5f8ff}
.entitlement-list>div:last-child{border-bottom:0!important}

/* Public/auth/checkout */
.public-shell{min-height:100vh;background:radial-gradient(circle at 10% 0,#eaf2ff 0,#f6f8fb 38%,#f3f5f9 100%)}
.public-card{width:min(1180px,100%);margin:0 auto;padding:4vh 1.25rem 3rem}
.auth-page-card{width:min(980px,100%);margin:4vh auto;border-radius:var(--ssw-radius)!important}.auth-page-card-narrow{width:min(520px,100%)}
.auth-brand-panel{min-height:590px;background:linear-gradient(145deg,#101a35 0%,#213d84 58%,#3268e8 120%)}.auth-brand-panel h1{letter-spacing:-.04em}.auth-brand-panel .ssw-logo-mark{background:rgba(255,255,255,.14);box-shadow:none}
.auth-benefit{display:flex;gap:.7rem;align-items:flex-start;color:rgba(255,255,255,.75);font-size:.9rem}.auth-benefit .ssw-bi{margin-top:.15rem;color:#9ec0ff}
.auth-form-pane{min-height:590px;display:flex;align-items:center}.auth-form-inner{width:100%;max-width:430px;margin:0 auto}
.auth-login-form{gap:.9rem}.auth-login-form .form-label{font-size:.84rem;line-height:1.3;margin-bottom:.34rem}.auth-login-field{align-items:stretch}.auth-login-field .input-group-text{width:40px;justify-content:center;padding:.45rem .6rem;background:#fff}.auth-login-field .input-group-text .ssw-bi{width:.95rem;height:.95rem}.auth-login-field .form-control{min-height:40px;padding:.48rem .72rem .48rem .18rem;font-size:.94rem;line-height:1.35}.auth-login-field .form-control::placeholder{color:#7c8798;opacity:1;font-size:.94rem;font-weight:400}
.public-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem}.brand.dark{font-weight:800;color:#0f172a;text-decoration:none;font-size:1.15rem}
.plan-option{display:flex;gap:.7rem;align-items:flex-start;border:1px solid #e2e8f0;border-radius:var(--ssw-radius);padding:.8rem;margin:.5rem 0;background:#fff;cursor:pointer}.plan-option:has(input:checked){border-color:#85a7ef;background:#f5f8ff;box-shadow:0 0 0 2px rgba(var(--ssw-primary-rgb),.08)}.plan-option input{margin-top:.2rem}
.check-row{display:flex;gap:.6rem;align-items:flex-start}.check-row input{width:auto;margin-top:.2rem}.muted{color:#667085}
.notice{border-radius:var(--ssw-radius);padding:.9rem 1rem;margin-bottom:1rem}.notice.warning{background:#fff7db;color:#7b5712;border:1px solid #f5dfa0}.notice.success{background:#e7f8ed;color:#17663a}.notice.error{background:#fdecec;color:#94262f}

/* Legacy utility classes retained for older templates while they are migrated. */
.hero{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem}.grid,.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.pricing-grid.four{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.section{margin-top:2rem}.metric{font-size:2rem;font-weight:700;letter-spacing:-.04em}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.75rem 1rem}.compact-list>div{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid #eef2f7}.compact-list>div:last-child{border-bottom:0}.action-row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.pending-change-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid #eef2f7}.pending-change-row:last-child{border-bottom:0}.pending-change-row p{margin:0}

@media(max-width:991.98px){
  .ssw-topbar{left:0}.ssw-content-shell{margin-left:0}.ssw-sticky-card{top:calc(var(--ssw-topbar-height) + 1rem)}
  .public-card{padding-top:2rem}.auth-page-card{width:min(600px,100%)}.auth-form-pane{min-height:auto}.page-heading{align-items:flex-start;flex-direction:column}
}
@media(max-width:767.98px){
  :root{--ssw-topbar-height:58px}.public-header,.pending-change-row{align-items:flex-start;flex-direction:column}.display-6{font-size:2rem}.card-body{padding:.85rem}.table>tbody td{padding-top:.64rem;padding-bottom:.64rem}
  .ssw-topbar .container-fluid{gap:.6rem!important}
  .ssw-topbar-context{display:none!important}
  .ssw-topbar-breadcrumbs{border-left:0;padding-left:0}
  .ssw-topbar-breadcrumbs .breadcrumb-item{display:none;max-width:150px}
  .ssw-topbar-breadcrumbs .breadcrumb{min-width:0;width:100%;align-items:center;flex-wrap:nowrap}
  .ssw-topbar-breadcrumbs .breadcrumb-item:nth-last-child(-n+2){display:flex;align-items:center;min-width:0;white-space:nowrap}
  .ssw-topbar-breadcrumbs .breadcrumb-item:nth-last-child(-n+2) a{display:flex;min-width:0;align-items:center}
  .ssw-topbar-breadcrumbs .breadcrumb-item:last-child{flex:0 1 auto;min-width:0}
  .ssw-topbar-breadcrumbs .breadcrumb-item:nth-last-child(2){flex:0 1 auto;min-width:0}
  .ssw-topbar-breadcrumbs .breadcrumb-item:nth-last-child(2)::before{display:none}
  .ssw-topbar-breadcrumbs .breadcrumb-item.active{max-width:170px}
}
@media(prefers-reduced-motion:reduce){.ssw-sidebar,.ssw-topbar,.ssw-content-shell,.action-card,.plan-card,.ssw-quick-link{transition:none!important}}

/* v0.4 compact application patterns */
.ssw-offcanvas-wide{--bs-offcanvas-width:min(520px,92vw)}
.ssw-offcanvas-incident{--bs-offcanvas-width:min(680px,96vw);overflow:hidden}
.ssw-incident-detail-scroll{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}
.ssw-incident-detail-scroll::-webkit-scrollbar{width:0;height:0}
.ssw-offcanvas-footer{flex:0 0 auto;padding:.85rem 1rem;border-top:1px solid var(--ssw-border);background:var(--bs-body-bg)}
.ssw-incident-actions{box-shadow:0 -.35rem .9rem rgba(15,23,42,.04)}
@media(max-width:767.98px){.ssw-offcanvas-incident{--bs-offcanvas-width:100vw}}
.ssw-columns-menu{min-width:210px;max-height:360px;overflow:auto}
.ssw-sortable{cursor:pointer;user-select:none;position:relative;padding-right:1.65rem!important}
.ssw-sortable::after{content:"↕";position:absolute;right:.55rem;color:#98a2b3;font-size:.8rem}
.ssw-sortable[aria-sort="ascending"]::after{content:"↑";color:var(--ssw-primary)}
.ssw-sortable[aria-sort="descending"]::after{content:"↓";color:var(--ssw-primary)}
.status-healthy{background:#dcfce7!important;color:#166534!important}
.status-warning{background:#fef3c7!important;color:#92400e!important}
.status-critical{background:#fee2e2!important;color:#991b1b!important}
.ssw-score-box{border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);padding:.75rem .5rem;background:#f8fafc}
.ssw-score-box strong{display:block;font-size:1.45rem;line-height:1.1;color:#101828}
.ssw-score-box span{display:block;font-size:.7rem;color:#667085;margin-top:.25rem}
.ssw-availability-chart{height:156px;display:flex;align-items:stretch;gap:4px;padding:.5rem 0;border-bottom:1px solid var(--ssw-border)}
.ssw-availability-bar-wrap{height:100%;flex:1;display:flex;align-items:stretch;min-width:3px}
.ssw-availability-bar{width:100%;background:#22c55e;border-radius:5px;min-height:4px;opacity:.88}
.ssw-availability-bar.is-warning{background:#f59e0b}
.nav-tabs{border-bottom-color:var(--ssw-border)}
.nav-tabs .nav-link{border:0;border-bottom:2px solid transparent;color:#667085;font-weight:600;padding:.58rem .75rem}
.nav-tabs .nav-link.active{color:var(--ssw-primary);border-bottom-color:var(--ssw-primary);background:transparent}
.card-footer{border-top-color:var(--ssw-border)}
@media (max-width:767.98px){.table-responsive .table{min-width:720px}.ssw-availability-chart{height:110px}}

/* v0.8.2 compact corner system and in-product help */
.ssw-help-anchor{scroll-margin-top:calc(var(--ssw-topbar-height) + 1rem)}
.nav-tabs .ssw-bi{flex-shrink:0}

/* v1.0.7 account security */
.ssw-mfa-qr {
  width: 212px;
  min-height: 212px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
}
.ssw-mfa-qr svg {
  display: block;
  width: 192px;
  height: 192px;
  max-width: 100%;
}

/* v1.0.9 account profile and session management */
.ssw-account-detail-row{display:flex;align-items:flex-start;gap:.75rem;padding:.9rem 1rem;border-bottom:1px solid var(--ssw-border)}
.ssw-account-detail-icon{width:1.5rem;min-width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;color:var(--bs-secondary-color);margin-top:.1rem}
.ssw-account-detail-icon .ssw-bi{width:1rem;height:1rem}
.ssw-detail-row{display:flex;align-items:flex-start;gap:.75rem;padding:.9rem 1rem;border-bottom:1px solid var(--ssw-border)}
.ssw-detail-icon{width:1.5rem;min-width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;color:var(--bs-secondary-color);margin-top:.1rem}
.ssw-detail-icon .ssw-bi{width:1rem;height:1rem}
.ssw-session-table th,.ssw-session-table td{vertical-align:middle}
.ssw-session-table td{padding-top:.7rem;padding-bottom:.7rem}
.offcanvas .input-group-text{min-width:2.45rem;justify-content:center;background:var(--bs-tertiary-bg);color:var(--bs-secondary-color)}
.offcanvas .input-group-text .ssw-bi{width:.95rem;height:.95rem}
@media (max-width:575.98px){.ssw-account-detail-row,.ssw-detail-row{padding:.8rem}.ssw-session-table{min-width:760px}}


/* v1.0.11 Monitoring workspace + session table spacing */
.ssw-page-tabs{gap:.15rem}
.ssw-page-tabs .nav-link{display:flex;align-items:center;gap:.4rem}
.ssw-list-surface,.ssw-settings-surface{background:#fff;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);overflow:hidden}
.ssw-settings-surface{padding:1rem}
.ssw-list-toolbar{padding:.75rem 1rem;border-bottom:1px solid var(--ssw-border);background:#fff}
.ssw-list-search{width:min(460px,100%)}
.ssw-status-filters{display:flex;flex-wrap:wrap;gap:.35rem}
.ssw-status-filters .btn{display:inline-flex;align-items:center;gap:.35rem;font-weight:500}
.ssw-status-filters .btn span{color:var(--bs-secondary-color);font-size:.78rem}
.ssw-status-filters .btn.active{background:var(--bs-secondary-bg);border-color:#b9c2cf!important;color:var(--bs-emphasis-color)}
.ssw-list-footer{padding:.55rem 1rem;border-top:1px solid var(--ssw-border);background:#fff}
.ssw-session-table th:first-child,.ssw-session-table td:first-child{padding-left:1rem}
.ssw-session-table th:last-child,.ssw-session-table td:last-child{padding-right:1rem}
@media(max-width:767.98px){.ssw-list-search{width:100%}.ssw-status-filters{width:100%}}

/* v1.0.12 global list spacing + Monitoring live interactions */
.table>thead th:first-child{padding-left:1rem}
.table>thead th:last-child{padding-right:1rem}
.table>tbody td:first-child{padding-left:1.1rem}
.table>tbody td:last-child{padding-right:1.1rem}
.ssw-app-main h1{line-height:2.6rem}
.ssw-clickable-row{cursor:pointer}
.ssw-clickable-row:focus-visible{outline:2px solid rgba(var(--ssw-primary-rgb),.55);outline-offset:-2px}
.ssw-columns-menu .ssw-columns-actions{display:flex;justify-content:space-between;gap:.5rem;padding-bottom:.6rem;margin-bottom:.6rem;border-bottom:1px solid var(--ssw-border)}
.ssw-list-toolbar .form-select-sm,.ssw-list-toolbar .input-group-sm>.form-control,.ssw-list-toolbar .input-group-sm>.input-group-text{height:34px;min-height:34px}
.ssw-settings-table th{font-size:.75rem}
.ssw-settings-table td{vertical-align:middle}
.ssw-settings-table .ssw-threshold-control{max-width:190px}
.ssw-settings-table .form-check{margin-bottom:0}
.ssw-settings-help{max-width:680px}
.ssw-ajax-status{min-height:1.25rem}

/* v1.0.14 Monitoring Site details + CSP-safe performance presentation */
.ssw-performance-meter{min-width:92px;max-width:132px}
.ssw-performance-progress{display:block;width:100%;height:5px;margin-top:.28rem;border:0;border-radius:var(--ssw-radius);overflow:hidden;background:var(--bs-secondary-bg);appearance:none;-webkit-appearance:none}
.ssw-performance-progress::-webkit-progress-bar{background:var(--bs-secondary-bg);border-radius:var(--ssw-radius)}
.ssw-performance-progress::-webkit-progress-value{background:var(--ssw-primary);border-radius:var(--ssw-radius)}
.ssw-performance-progress::-moz-progress-bar{background:var(--ssw-primary);border-radius:var(--ssw-radius)}
.ssw-site-details-list dt{font-weight:500;color:var(--bs-secondary-color)}
.ssw-site-details-list dd{margin-bottom:.8rem}
.ssw-danger-zone{border-color:rgba(var(--bs-danger-rgb),.28)!important}

/* Monitoring discovery */
.ssw-row-busy { cursor: progress; }
.ssw-row-busy > * { background: var(--bs-tertiary-bg); }

/* v1.0.22 centred system dialogs */
.modal-backdrop.show{
  opacity:.42;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.ssw-dialog-narrow{max-width:450px}
.ssw-feedback-modal .modal-content,.ssw-confirm-modal .modal-content{border:0;border-radius:var(--ssw-radius);box-shadow:0 1.2rem 3.5rem rgba(15,23,42,.18)}
.ssw-dialog-icon{width:3.25rem;height:3.25rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:1.5rem}
.ssw-dialog-icon.is-success{background:rgba(25,135,84,.1);color:var(--bs-success)}
.ssw-dialog-icon.is-error{background:rgba(220,53,69,.1);color:var(--bs-danger)}
.ssw-dialog-icon.is-warning{background:rgba(255,193,7,.14);color:#8a6400}
.ssw-dialog-message{line-height:1.55}
.ssw-tab-toolbar,.ssw-site-tabs-toolbar{gap:.75rem}
.ssw-tab-actions,.ssw-site-tab-actions{flex-shrink:0}
.ssw-tab-actions .btn,.ssw-site-tab-actions .btn{white-space:nowrap}
.ssw-page-search-panel,.ssw-watchpoint-search-panel{width:100%;max-width:none}
.ssw-page-search-wrap{margin-top:-.25rem}
.ssw-tab-notification{min-width:1.35rem}
.ssw-google-metric-table td,.ssw-google-metric-table th{vertical-align:middle}
@media (max-width:1199.98px){
  .ssw-tab-toolbar,.ssw-site-tabs-toolbar{align-items:stretch!important}
  .ssw-tab-actions,.ssw-site-tab-actions{width:100%;justify-content:flex-start!important;margin-left:0!important}
}
/* v1.0.24 brand, subscription and auth refinements */
.ssw-sidebar-brand-mark{width:28px;height:28px;object-fit:contain}.ssw-login-brand-mark{width:34px;height:34px;object-fit:contain}.ssw-auth-logo{width:48px;height:48px;object-fit:contain}.ssw-cadence-switch{display:inline-flex;gap:.25rem;padding:.25rem;background:#eef1f5;border-radius:var(--ssw-radius)}.ssw-cadence-switch .btn{min-width:112px}.ssw-subscribe-price{display:flex;align-items:baseline;gap:.35rem;padding:.75rem;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);cursor:pointer}.ssw-subscribe-price:has(input:checked){border-color:#85a7ef;background:#f5f8ff}.ssw-subscribe-price .price-value{font-size:1.7rem;font-weight:700;letter-spacing:-.03em}.min-h-0{min-height:0!important}

/* v1.0.27 Monitoring list, button-style tabs and Site integrations */
.ssw-tab-toolbar .ssw-page-tabs{border-bottom:0;gap:.4rem}
.ssw-tab-toolbar .ssw-page-tabs .nav-link{border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);background:var(--bs-body-bg);color:#667085;padding:.48rem .7rem;line-height:1.25;transition:background-color .15s,border-color .15s,color .15s}
.ssw-tab-toolbar .ssw-page-tabs .nav-link:hover{background:var(--bs-tertiary-bg);border-color:#c5ceda;color:var(--bs-emphasis-color)}
.ssw-tab-toolbar .ssw-page-tabs .nav-link.active{background:#f2f6ff;border-color:#9bb5ea;color:var(--ssw-primary)}
.ssw-tab-toolbar .ssw-page-tabs .nav-link:focus-visible{outline:2px solid rgba(var(--ssw-primary-rgb),.45);outline-offset:2px}
.ssw-site-tabs-mobile .dropdown-toggle{min-height:38px;text-align:left}
.ssw-site-tabs-mobile .dropdown-item .ssw-bi{flex-shrink:0}
.ssw-integration-card{border-color:var(--ssw-border)}
.ssw-integration-icon{width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);background:var(--bs-tertiary-bg);color:var(--ssw-primary);flex-shrink:0}
.ssw-integration-icon .ssw-bi{width:1rem;height:1rem}
@media(max-width:767.98px){.ssw-site-tabs-mobile{width:100%}.ssw-tab-toolbar .ssw-tab-actions{margin-top:.5rem!important}}

/* v1.0.31 Site Google property connection picker */
.ssw-tab-toolbar .ssw-page-tabs .nav-link.disabled{background:var(--bs-tertiary-bg);border-color:var(--ssw-border);color:var(--bs-secondary-color);opacity:.62;cursor:not-allowed}
.ssw-tab-toolbar .ssw-page-tabs .nav-item[tabindex="0"]{border-radius:var(--ssw-radius)}
.ssw-tab-toolbar .ssw-page-tabs .nav-item[tabindex="0"]:focus-visible{outline:2px solid rgba(var(--ssw-primary-rgb),.45);outline-offset:2px}
.ssw-offcanvas-google-map{--bs-offcanvas-width:min(1040px,97vw)}
.ssw-offcanvas-google-map-three-column{--bs-offcanvas-width:min(1320px,98vw)}
.ssw-google-map-body{overflow:hidden;display:flex;flex:1 1 auto;min-height:0}
.ssw-google-map-form{min-height:0;width:100%;max-height:100%;overflow:hidden}
.ssw-google-property-picker{min-height:0;height:100%;overflow:hidden;flex:1 1 0;align-items:stretch}
.ssw-google-picker-column{min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--bs-body-bg)}
.ssw-google-account-column{background:var(--bs-tertiary-bg)}
.ssw-google-picker-heading{padding:.7rem 1rem;border-bottom:1px solid var(--ssw-border);font-size:.78rem;font-weight:700;color:var(--bs-secondary-color);text-transform:uppercase;letter-spacing:.035em;background:var(--bs-body-bg);flex:0 0 auto}
.ssw-google-picker-search{padding:.65rem .75rem;border-bottom:1px solid var(--ssw-border);background:var(--bs-body-bg);flex:0 0 auto}
.ssw-google-picker-search .input-group-text{background:var(--bs-tertiary-bg);color:var(--bs-secondary-color)}
.ssw-google-picker-scroll{min-height:0;flex:1 1 0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-width:none;-ms-overflow-style:none}
.ssw-google-picker-scroll::-webkit-scrollbar{width:0;height:0}
.ssw-google-account-option,.ssw-google-analytics-account-option{padding:.8rem 1rem;border-left:3px solid transparent;display:flex;align-items:flex-start;gap:.75rem}
.ssw-google-account-option.is-selected,.ssw-google-analytics-account-option.is-selected{background:#f2f6ff;border-left-color:var(--ssw-primary);color:var(--bs-emphasis-color)}
.ssw-google-option-icon{width:1.85rem;height:1.85rem;display:inline-flex;align-items:center;justify-content:center;flex:0 0 1.85rem;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);background:var(--bs-body-bg);color:var(--ssw-primary);margin-top:.05rem}
.ssw-google-option-icon .ssw-bi{width:.95rem;height:.95rem}
.ssw-google-property-option{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);cursor:pointer;margin-bottom:.55rem;background:var(--bs-body-bg)}
.ssw-google-property-option:hover{background:var(--bs-tertiary-bg);border-color:#c5ceda}
.ssw-google-property-option:has(.form-check-input:checked){background:#f2f6ff;border-color:#9bb5ea}
.ssw-google-property-option .form-check-input{margin-top:.42rem;flex-shrink:0}
.ssw-google-picker-footer{flex:0 0 auto;position:relative;z-index:2;box-shadow:0 -1px 0 var(--ssw-border)}
.ssw-google-picker-footer-actions{flex:0 0 auto}
.ssw-google-best-match{font-size:.68rem;font-weight:600}
.ssw-site-heading-row{min-width:0}
.ssw-site-heading-url{min-width:0}
@media(max-width:767.98px){
  .ssw-offcanvas-google-map,.ssw-offcanvas-google-map-three-column{--bs-offcanvas-width:100vw}
  .ssw-google-property-picker{min-height:0;height:100%;overflow-y:auto;display:block;scrollbar-width:none;-ms-overflow-style:none}
  .ssw-google-property-picker::-webkit-scrollbar{width:0;height:0}
  .ssw-google-picker-column{display:flex;height:auto;overflow:hidden;min-height:0}
  .ssw-google-picker-scroll{flex:0 1 auto;max-height:36vh;min-height:7rem;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-y}
  .ssw-google-property-column .ssw-google-picker-scroll{max-height:42vh}
  .ssw-google-account-column,.ssw-google-analytics-account-column{border-right:0!important;border-bottom:1px solid var(--ssw-border)}
  .ssw-google-picker-search{position:sticky;top:0;z-index:1}
  .ssw-google-picker-footer{align-items:stretch!important;padding:.75rem!important}
  .ssw-google-picker-footer>a{width:100%}
  .ssw-google-picker-footer-actions{width:100%}
  .ssw-google-picker-footer-actions .btn{flex:1 1 0}
}


/* v1.0.36 Site AI Watch prompt composer */
.ssw-ai-prompt-form .form-label,.ssw-ai-prompt-form legend.form-label,.ssw-ai-form-label{font-size:.9rem;line-height:1.3;font-weight:600;color:#344054}
.ssw-ai-help{min-height:auto;line-height:1;color:var(--bs-secondary-color)!important}.ssw-ai-help .ssw-bi{width:.9rem!important;height:.9rem!important}.ssw-ai-help:focus-visible{box-shadow:0 0 0 .18rem rgba(var(--ssw-primary-rgb),.12)}
.ssw-ai-prompt-form .form-label .ssw-bi,.ssw-ai-prompt-form legend.form-label .ssw-bi,.ssw-ai-form-label .ssw-bi{width:.95rem;height:.95rem}
.ssw-ai-topic-input{min-height:38px;max-height:160px;resize:vertical;overflow-y:auto;line-height:1.5;field-sizing:content}
.ssw-ai-field-icon{min-width:42px;justify-content:center}
.ssw-ai-url-origin{max-width:48%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem}
.ssw-ai-suggest-panel{background:var(--bs-tertiary-bg)}
.ssw-ai-suggestion-option{white-space:normal;line-height:1.35;padding:.65rem .75rem}
.ssw-ai-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
.ssw-ai-mode-option{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.72rem .8rem;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);background:#fff;min-width:0}
.ssw-ai-mode-option:hover{border-color:rgba(var(--ssw-primary-rgb),.45)}
.ssw-ai-mode-option:has(input:checked){border-color:var(--ssw-primary);box-shadow:0 0 0 1px rgba(var(--ssw-primary-rgb),.12)}
.ssw-ai-mode-choice{display:flex;align-items:center;gap:.65rem;min-width:0;flex:1 1 auto;cursor:pointer;font-size:.9rem;font-weight:600;color:#344054}
.ssw-ai-mode-choice .form-check-input{margin-top:0;flex:0 0 auto}
@media(min-width:768px){.ssw-ai-prompts-surface{overflow-x:visible!important;overflow-y:visible!important}.ssw-ai-prompts-table{overflow-x:visible!important;overflow-y:visible!important}.ssw-ai-prompts-surface .dropdown{position:relative}.ssw-ai-prompts-surface .dropdown-menu{z-index:1080}}
.ssw-ai-prompt-actions-portal{z-index:1090!important}
.ssw-ai-cadence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}
.ssw-ai-cadence-option{display:flex;align-items:center;gap:.65rem;padding:.72rem .8rem;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);background:#fff;cursor:pointer;min-width:0;font-size:.9rem;font-weight:600;color:#344054}
.ssw-ai-cadence-option:hover{border-color:rgba(var(--ssw-primary-rgb),.45)}
.ssw-ai-cadence-option:has(input:checked){border-color:var(--ssw-primary);box-shadow:0 0 0 1px rgba(var(--ssw-primary-rgb),.12)}
.ssw-ai-cadence-option .form-check-input{margin-top:0;flex:0 0 auto}
.ssw-ai-cadence-option span{min-width:0}
@media(max-width:767.98px){.ssw-ai-mode-grid,.ssw-ai-cadence-grid{grid-template-columns:1fr}.ssw-ai-url-origin{max-width:42%}}

/* v1.0.51 Site UX refinements */
.ssw-bi.bi-microsoft{color:#667085}
.ssw-page-tabs .nav-link.active .ssw-bi.bi-microsoft,.ssw-site-tabs-mobile .dropdown-item.active .ssw-bi.bi-microsoft{color:var(--bs-primary)}
.ssw-password-strength .progress-bar.ssw-strength-w-0{width:0}
.ssw-password-strength .progress-bar.ssw-strength-w-25{width:25%}
.ssw-password-strength .progress-bar.ssw-strength-w-50{width:50%}
.ssw-password-strength .progress-bar.ssw-strength-w-75{width:75%}
.ssw-password-strength .progress-bar.ssw-strength-w-100{width:100%}
.ssw-tracking-noscript{display:none;visibility:hidden}
.ssw-google-page-cell{min-width:16rem}

/* v1.0.55 watchpoint UX */
.ssw-ai-evidence-answer{font-size:.9em;background:var(--bs-tertiary-bg);line-height:1.65}
.ssw-settings-table .form-check-label{font-size:.9rem}
.ssw-row-chevron{color:#98a2b3;white-space:nowrap}
.ssw-clickable-row:hover .ssw-row-chevron{color:var(--bs-primary)}
.ssw-schema-types,.ssw-schema-suggestions{background:var(--bs-tertiary-bg);border-radius:.5rem;padding:.75rem}

/* v1.0.56 monitoring view */
.ssw-monitoring-card{border:1px solid var(--ssw-border);transition:border-color .15s,box-shadow .15s}
.ssw-monitoring-card:hover{border-color:var(--bs-primary);box-shadow:0 4px 14px rgba(0,0,0,.07)}
[data-monitoring-id][draggable=true]{cursor:grab}
[data-monitoring-id].ssw-dragging{opacity:.45}
@media(max-width:767.98px){[data-monitoring-card]{min-width:0}}

/* Availability renders status bands without CSP-blocked inline styles. */
.ssw-availability-chart{align-items:stretch}
.ssw-availability-bar-wrap{align-items:stretch}
.ssw-availability-bar{height:100%}

/* v1.0.60 — Monitoring metrics, cards and consistent clickable rows. */
.ssw-performance-meter-compact{min-width:70px;max-width:90px}
.ssw-performance-meter-compact .ssw-performance-progress{width:100%}
[data-monitoring-cards]{padding-top:1rem}
.ssw-monitoring-card .card-body{display:flex;flex-direction:column}
.ssw-monitoring-card .ssw-row-chevron{margin-top:auto}
tr[data-row-href]:not([data-monitoring-id]):not([data-watchpoint-id])>td:last-child{position:relative;padding-right:1.75rem}
tr[data-row-href]:not([data-monitoring-id]):not([data-watchpoint-id])>td:last-child::after{content:'›';position:absolute;right:.55rem;top:50%;transform:translateY(-50%);font-size:1.3rem;color:#98a2b3}
tr[data-row-href]:not([data-monitoring-id]):not([data-watchpoint-id]):hover>td:last-child::after{color:var(--bs-primary)}

/* v1.0.61 AJAX history and chart */
.ssw-pings-chart-frame{width:100%;min-width:0;height:300px;position:relative;overflow:hidden}
.ssw-pings-chart-frame canvas{display:block;width:100%!important;height:100%!important}
.ssw-pings-chart-grid{stroke:var(--ssw-border);stroke-width:1}
.ssw-pings-chart-axis{fill:var(--bs-secondary-color);font-size:13px}
.ssw-pings-chart-bar{fill:#3b82f6;opacity:.85}
.ssw-pings-chart-bar:hover{opacity:1}

/* v1.0.64 availability legend */
.ssw-availability-key{display:inline-block;width:.65rem;height:.65rem;border-radius:2px;vertical-align:middle;margin-right:.3rem}
.ssw-availability-key.is-healthy{background:#22c55e}
.ssw-availability-key.is-reduced{background:#f59e0b}

/* v1.0.65: one line-chart point per recorded Ping on the visible page. */
.ssw-pings-chart-line{fill:none;stroke:#2563eb;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.ssw-pings-chart-point{fill:#2563eb;stroke:var(--bs-body-bg);stroke-width:1.5}
.ssw-pings-chart-point:hover{fill:#1d4ed8;stroke-width:2.5}

/* v1.0.68 compact custom-week calendar control */
.ssw-pings-week-picker{min-width:0}
.ssw-pings-week-calendar{width:20.5rem;max-width:calc(100vw - 1.5rem)}
.ssw-pings-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:2px;font-size:.72rem;color:var(--bs-secondary-color);margin-bottom:.4rem}
.ssw-pings-week-grid{display:flex;flex-direction:column;gap:3px}
.ssw-pings-week-option{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;width:100%;border:1px solid transparent;border-radius:.45rem;background:transparent;padding:.25rem .15rem;color:var(--bs-body-color);cursor:pointer;font-size:.85rem;text-align:center}
.ssw-pings-week-option:hover,.ssw-pings-week-option:focus-visible{background:var(--bs-tertiary-bg);border-color:var(--bs-primary)}
.ssw-pings-week-option.is-selected{background:rgba(37,99,235,.12);border-color:#2563eb;font-weight:600}
.ssw-pings-week-day{padding:.25rem 0}
.ssw-pings-week-day.is-outside{color:var(--bs-secondary-color);opacity:.55}
@media(max-width:767.98px){.ssw-pings-week-calendar{max-width:calc(100vw - 1.5rem)}}

/* v1.0.70 Pings single-day/range calendar and large-history feedback */
.ssw-pings-date-calendar{width:21rem;max-width:calc(100vw - 1.5rem)}
.ssw-pings-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.ssw-pings-day{padding:.35rem 0;min-height:2.1rem;border:1px solid transparent;border-radius:.35rem;background:transparent;color:var(--bs-body-color);font-size:.85rem;text-align:center;cursor:pointer}
.ssw-pings-day:hover,.ssw-pings-day:focus-visible{background:var(--bs-tertiary-bg);border-color:var(--bs-primary)}
.ssw-pings-day.is-in-range{background:rgba(37,99,235,.1);border-radius:0}
.ssw-pings-day.is-selected{background:#2563eb;color:#fff;border-color:#2563eb;border-radius:.35rem;font-weight:600}
.ssw-pings-day.is-outside:not(.is-selected){opacity:.6}

/* Reports controls: keep action buttons separated */
[data-table-id="report-schedules"] td form+form{margin-left:.5rem}

/* Reports v1.0.71 – scheduled report builder */
[data-report-schedule-form] [hidden]{display:none!important}
[data-report-schedule-form] legend{font-size:1rem}
[data-report-schedule-form] .btn-check+.btn{min-width:2.7rem}
.ssw-report-recipient-chip{display:inline-flex;align-items:center;gap:.32rem;max-width:100%;min-height:27px;padding:.14rem .28rem .14rem .55rem;border:1px solid #cbd5e1;border-radius:99rem;background:var(--bs-tertiary-bg);font-size:.8rem;line-height:1.2;overflow-wrap:anywhere}
.ssw-report-recipient-chip .ssw-report-recipient-remove{display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--bs-secondary-color);font-size:1.1rem;line-height:1;text-decoration:none;cursor:pointer}
.ssw-report-recipient-chip .ssw-report-recipient-remove:hover{background:var(--bs-secondary-bg);color:var(--bs-body-color);text-decoration:none}
.ssw-report-recipient-chip .ssw-report-recipient-remove:focus-visible{outline:2px solid var(--ssw-primary);outline-offset:1px}
[data-report-recipient-fallback][hidden]{display:none!important}
[data-report-schedule-form] .form-label [data-bs-toggle=tooltip]{color:var(--bs-secondary-color)}

/* v1.0.74 report builder picker and per-row actions */
.ssw-report-picker-menu{max-width:min(460px,90vw);min-width:100%;box-shadow:0 6px 24px rgba(15,23,42,.12)}
.ssw-report-picker-options{max-height:235px;overflow-y:auto;overscroll-behavior:contain}
.ssw-report-picker-options .dropdown-item{white-space:normal;padding:.55rem .65rem;border-radius:var(--ssw-radius)}
.ssw-report-picker-options .dropdown-item[hidden],.ssw-report-picker-options [hidden]{display:none!important}
.ssw-report-picker-options label.dropdown-item{cursor:pointer}
.ssw-report-picker-options label.dropdown-item .form-check-input{flex:0 0 auto}
.ssw-reports-table{overflow-x:auto;overflow-y:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
@media(max-width:767.98px){.ssw-report-picker-menu{max-width:88vw}}

/* v1.0.75 sharing/report refinements */
[data-table-id="report-schedules"] .dropdown-menu form+form{margin-left:0}
[data-table-id="report-schedules"] .dropdown-menu form,
[data-table-id="report-runs"] .dropdown-menu form{margin:0;width:100%}
[data-table-id="report-schedules"] .dropdown-menu .dropdown-item,
[data-table-id="report-runs"] .dropdown-menu .dropdown-item{text-align:left;width:100%;display:block}
[data-report-shares] .card-footer{border-top:1px solid var(--ssw-border)}
[data-report-shares] .table td{vertical-align:middle}
[data-report-shares] .table{min-width:740px}
[data-share-panel] .offcanvas-body{padding:1.3rem}
.ssw-shared-report-password{width:min(420px,100%);margin:clamp(1.5rem,8vh,5rem) auto;background:#fff;padding:clamp(1.3rem,4vw,2rem);border:1px solid var(--ssw-border);border-radius:var(--ssw-radius)}
.ssw-shared-report-password .form-control{min-height:43px}
.ssw-shared-report-password form button[type="submit"]{width:100%}
@media(max-width:767.98px){.ssw-shared-report-password{margin:1.5rem auto}.public-card:has(.ssw-shared-report-password){padding:1rem}}

/* v1.0.76 Report row dropdowns are portalled to the page to avoid clipping
   while the surrounding tables retain horizontal scrolling on all screens. */
.ssw-report-actions-portal{z-index:1100;max-width:calc(100vw - 16px);max-height:min(65vh,320px);overflow-y:auto}
[data-table-id="report-schedules"] .ssw-reports-table,
[data-table-id="report-runs"] .ssw-reports-table{min-width:0}

/* v1.0.77 shared non-blocking system feedback. Confirmation and reauth
   remain centred, blocking modals; regular notices do not block interaction. */
.ssw-toast-region{
  z-index:1050;
  top:calc(var(--ssw-topbar-height, 64px) + 12px);
  right:16px;
  width:min(390px,calc(100vw - 24px));
  pointer-events:none;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.ssw-system-toast{
  pointer-events:auto;
  max-width:100%;
  width:100%;
  overflow:hidden;
  background:var(--bs-body-bg,#fff);
  color:var(--bs-body-color,#172033);
  border:1px solid var(--ssw-border,#e2e8f0);
  border-left:4px solid #168452;
  border-radius:var(--ssw-radius,8px);
  box-shadow:0 12px 34px rgba(15,23,42,.14);
}
.ssw-system-toast.ssw-toast-error{border-left-color:#ce3b43}
.ssw-toast-icon{color:#168452;font-size:1.15rem;line-height:1.4;min-width:20px}
.ssw-toast-error .ssw-toast-icon{color:#ce3b43}
.ssw-toast-message{font-size:.88rem;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:575.98px){
  .ssw-toast-region{top:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 14px);left:12px;right:12px;width:auto}
}
@media(prefers-reduced-motion:reduce){
  .ssw-system-toast{transition:none!important;animation:none!important}
}

/* v1.1.64: Keep toast notices out of the way of a right-hand form drawer.
   The backdrop is still owned by Bootstrap; this repositions ONLY toasts. */
@media(min-width:576px){
  .ssw-toast-region.ssw-toast-region--left{
    left:16px;
    right:auto;
  }
}

/* v1.0.78: compact schedule recipient display and contextual Homepage tag. */
[data-table-id="report-schedules"] td:nth-child(3){min-width:160px;max-width:280px}
[data-table-id="report-schedules"] [data-report-next-relative]{color:var(--bs-body-color);font-size:.85rem}
[data-table-id="report-schedules"] [data-report-next-absolute]{font-size:.77rem;margin-top:.18rem}
[data-report-watchpoint-row] [data-report-homepage-badge]{font-size:.68rem;vertical-align:middle}
[data-report-watchpoint-status]{line-height:1.4}

/* v1.0.80 - API and webhook creation panels + unclipped mobile Actions. */
[data-table-id="report-api-tokens"] .dropdown-menu form,
[data-table-id="report-webhooks"] .dropdown-menu form{margin:0;width:100%}
[data-table-id="report-api-tokens"] .dropdown-menu .dropdown-item,
[data-table-id="report-webhooks"] .dropdown-menu .dropdown-item{text-align:left;width:100%;display:block}
[data-table-id="report-api-tokens"] .ssw-reports-table,
[data-table-id="report-webhooks"] .ssw-reports-table{min-width:0}
[data-api-token-form] .form-label,
[data-webhook-create-form] .form-label{font-weight:600}
.ssw-report-choice{cursor:pointer;background:var(--bs-body-bg);margin:0;transition:background-color .16s ease,border-color .16s ease}
.ssw-report-choice:has(.form-check-input:checked){border-color:#9bb5ea!important;background:#f2f6ff}
.ssw-report-choice .form-check-input{margin-left:0;float:none}
.ssw-report-choice:hover{background:var(--bs-tertiary-bg)}
[data-api-watchpoint-options] .dropdown-item{padding:.55rem .65rem;white-space:normal;border-radius:var(--ssw-radius)}
[data-api-watchpoint-options] .dropdown-item[hidden],
[data-api-site-option][hidden]{display:none!important}
[data-api-watchpoint-button]:disabled{opacity:.72}
[data-api-token-form] .invalid-feedback,
[data-webhook-create-form] .invalid-feedback{min-height:0}

/* v1.0.82 — Monitoring overview refresh (desktop table, reference-inspired).
   Scoped to this table so Watchpoints, cards and other Site dashboards retain
   their own typography and meters. */
.ssw-monitoring-table-wrap{
  overflow-x:auto;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none; /* Keep touch, trackpad and keyboard scrolling. */
  -ms-overflow-style:none;
}
.ssw-monitoring-table-wrap::-webkit-scrollbar{display:none;width:0;height:0}
.ssw-monitoring-overview-table{width:100%;min-width:0;table-layout:fixed}
.ssw-monitoring-overview-table th{color:var(--bs-secondary-color);font-size:.69rem;font-weight:600;letter-spacing:0;white-space:normal;overflow-wrap:break-word;padding:.72rem .26rem;background:var(--bs-tertiary-bg);line-height:1.3}
.ssw-monitoring-overview-table td{padding:.74rem .26rem;vertical-align:middle;border-color:var(--ssw-border);min-width:0}
.ssw-monitoring-overview-table th:nth-child(1){width:19%}
.ssw-monitoring-overview-table th:nth-child(2){width:8%}
.ssw-monitoring-overview-table th:nth-child(3){width:9%}
.ssw-monitoring-overview-table th:nth-child(4){width:9%}
.ssw-monitoring-overview-table th:nth-child(5),
.ssw-monitoring-overview-table th:nth-child(6),
.ssw-monitoring-overview-table th:nth-child(7),
.ssw-monitoring-overview-table th:nth-child(8){width:8%}
.ssw-monitoring-overview-table th:nth-child(9){width:7%}
.ssw-monitoring-overview-table th:nth-child(10){width:12%}
.ssw-monitoring-overview-table th:nth-child(11){width:4%}
.ssw-monitoring-overview-table tbody tr[data-monitoring-id]{transition:background-color .13s ease}
.ssw-monitoring-overview-table .ssw-monitoring-site-name{display:block;color:var(--bs-emphasis-color);line-height:1.38;font-size:1rem}
.ssw-monitoring-overview-table .ssw-monitoring-site-cell>.small{line-height:1.5;margin-top:.2rem;overflow-wrap:anywhere}
.ssw-monitoring-availability{display:inline-flex;align-items:center;gap:.42rem;line-height:1.25;font-size:.765rem;font-weight:600;min-height:24px;padding:.26rem .62rem}
.ssw-monitoring-status-dot{display:inline-block;width:7px;height:7px;min-width:7px;border-radius:50%;background:currentColor;opacity:.75;vertical-align:middle}
.ssw-monitoring-overview-table .ssw-monitoring-health{display:flex;align-items:center;gap:.4rem;line-height:1.45;white-space:nowrap}
.ssw-monitoring-health--healthy{color:#397c43}
.ssw-monitoring-health--warning{color:#a76e08}
.ssw-monitoring-health--critical{color:#b83b45}
.ssw-monitoring-health--unknown{color:#718096}
.ssw-monitoring-health--unknown .ssw-monitoring-status-dot{background:transparent;border:1.3px solid currentColor}
.ssw-monitoring-health-note{line-height:1.35;margin:.18rem 0 0;white-space:normal;overflow-wrap:break-word}
.ssw-monitoring-score-cell{min-width:0}
.ssw-monitoring-score.ssw-performance-meter{min-width:0;max-width:none;width:100%}
.ssw-monitoring-score-heading{display:flex;align-items:center;flex-wrap:wrap;column-gap:.25rem;row-gap:.06rem;min-width:0;min-height:21px}
.ssw-monitoring-score-number{line-height:1.2;color:var(--bs-emphasis-color);font-weight:700;letter-spacing:-.012em;font-variant-numeric:tabular-nums}
.ssw-monitoring-score.is-low .ssw-monitoring-score-number{color:#9a6600}
.ssw-monitoring-score-flag{font-size:.62rem;line-height:1.3;color:#805700;background:#fff1c7;padding:.12rem .3rem;border-radius:3px;white-space:nowrap}
.ssw-monitoring-overview-table .ssw-monitoring-score-bar{display:block;width:100%;height:5px;margin-top:.36rem;border-radius:999px;background:var(--bs-secondary-bg)}
.ssw-monitoring-overview-table .ssw-monitoring-score-bar::-webkit-progress-bar{background:var(--bs-secondary-bg);border-radius:999px}
.ssw-monitoring-overview-table .ssw-monitoring-score-bar::-webkit-progress-value{background:var(--ssw-primary);border-radius:999px}
.ssw-monitoring-overview-table .ssw-monitoring-score-bar::-moz-progress-bar{background:var(--ssw-primary);border-radius:999px}
.ssw-monitoring-score-empty{color:#9199a8}
.ssw-monitoring-no-audit{border:1px dashed #d3d9e2;border-radius:.4rem;background:var(--bs-body-bg);font-size:.73rem;line-height:1.25;color:var(--bs-secondary-color);padding:.37rem .42rem}
.ssw-monitoring-overview-table .ssw-monitoring-watchpoint-cell{font-weight:500;font-variant-numeric:tabular-nums}
.ssw-monitoring-check-relative{display:block;color:var(--bs-emphasis-color);font-weight:500;line-height:1.45}
.ssw-monitoring-check-absolute{margin-top:.1rem}
.ssw-monitoring-not-checked{color:var(--bs-secondary-color)}
.ssw-monitoring-open-cell{color:#7b8496}
.ssw-monitoring-open-cell .ssw-bi{width:1rem;height:1rem}
.ssw-monitoring-list-footer{min-height:42px;background:var(--bs-tertiary-bg)}
.ssw-monitoring-score-legend{font-size:.74rem}
/* Degraded (<60) scores use the product's standard warning colour. */
.ssw-monitoring-overview-table .ssw-monitoring-score.is-low .ssw-monitoring-score-bar::-webkit-progress-value{background:var(--bs-warning)}
.ssw-monitoring-overview-table .ssw-monitoring-score.is-low .ssw-monitoring-score-bar::-moz-progress-bar{background:var(--bs-warning)}
@media(min-width:992px) and (max-width:1199.98px){
  .ssw-monitoring-overview-table th{font-size:.64rem;padding-inline:.2rem}
  .ssw-monitoring-overview-table td{padding-inline:.2rem}
  .ssw-monitoring-score-flag{font-size:.56rem;white-space:normal}
}
@media(max-width:991.98px){
  /* Deliberately size all eleven columns for readable swipe-scrolling.
     940px previously compressed pills, health notes and Lighthouse cells
     until adjacent values visually overlapped on narrow mobile screens. */
  .ssw-monitoring-table-wrap{max-width:100%;overflow-x:auto;touch-action:pan-x pan-y}
  .ssw-monitoring-overview-table{width:1240px;min-width:1240px;table-layout:fixed}
  .ssw-monitoring-overview-table th:nth-child(1){width:184px}
  .ssw-monitoring-overview-table th:nth-child(2){width:115px}
  .ssw-monitoring-overview-table th:nth-child(3){width:121px}
  .ssw-monitoring-overview-table th:nth-child(4){width:136px}
  .ssw-monitoring-overview-table th:nth-child(5){width:100px}
  .ssw-monitoring-overview-table th:nth-child(6){width:100px}
  .ssw-monitoring-overview-table th:nth-child(7){width:106px}
  .ssw-monitoring-overview-table th:nth-child(8){width:96px}
  .ssw-monitoring-overview-table th:nth-child(9){width:92px}
  .ssw-monitoring-overview-table th:nth-child(10){width:140px}
  .ssw-monitoring-overview-table th:nth-child(11){width:50px}
  .ssw-monitoring-overview-table .ssw-monitoring-health{white-space:nowrap}
  .ssw-monitoring-overview-table .ssw-monitoring-health-note{overflow-wrap:normal;word-break:normal}
  .ssw-monitoring-overview-table .ssw-monitoring-availability{white-space:nowrap}
}
@media(max-width:767.98px){.ssw-monitoring-score-legend{margin-left:auto}}

/* v1.0.87 — Watchpoint daily availability now conveys height as well as colour. */
.ssw-availability-chart{border-bottom:0;padding-bottom:0}
.ssw-availability-bar-wrap{align-items:flex-end}
.ssw-availability-chart .ssw-availability-bar{height:0;min-height:0}
.ssw-availability-chart .ssw-availability-level-0{height:0%}
.ssw-availability-chart .ssw-availability-level-1{height:1%}
.ssw-availability-chart .ssw-availability-level-2{height:2%}
.ssw-availability-chart .ssw-availability-level-3{height:3%}
.ssw-availability-chart .ssw-availability-level-4{height:4%}
.ssw-availability-chart .ssw-availability-level-5{height:5%}
.ssw-availability-chart .ssw-availability-level-6{height:6%}
.ssw-availability-chart .ssw-availability-level-7{height:7%}
.ssw-availability-chart .ssw-availability-level-8{height:8%}
.ssw-availability-chart .ssw-availability-level-9{height:9%}
.ssw-availability-chart .ssw-availability-level-10{height:10%}
.ssw-availability-chart .ssw-availability-level-11{height:11%}
.ssw-availability-chart .ssw-availability-level-12{height:12%}
.ssw-availability-chart .ssw-availability-level-13{height:13%}
.ssw-availability-chart .ssw-availability-level-14{height:14%}
.ssw-availability-chart .ssw-availability-level-15{height:15%}
.ssw-availability-chart .ssw-availability-level-16{height:16%}
.ssw-availability-chart .ssw-availability-level-17{height:17%}
.ssw-availability-chart .ssw-availability-level-18{height:18%}
.ssw-availability-chart .ssw-availability-level-19{height:19%}
.ssw-availability-chart .ssw-availability-level-20{height:20%}
.ssw-availability-chart .ssw-availability-level-21{height:21%}
.ssw-availability-chart .ssw-availability-level-22{height:22%}
.ssw-availability-chart .ssw-availability-level-23{height:23%}
.ssw-availability-chart .ssw-availability-level-24{height:24%}
.ssw-availability-chart .ssw-availability-level-25{height:25%}
.ssw-availability-chart .ssw-availability-level-26{height:26%}
.ssw-availability-chart .ssw-availability-level-27{height:27%}
.ssw-availability-chart .ssw-availability-level-28{height:28%}
.ssw-availability-chart .ssw-availability-level-29{height:29%}
.ssw-availability-chart .ssw-availability-level-30{height:30%}
.ssw-availability-chart .ssw-availability-level-31{height:31%}
.ssw-availability-chart .ssw-availability-level-32{height:32%}
.ssw-availability-chart .ssw-availability-level-33{height:33%}
.ssw-availability-chart .ssw-availability-level-34{height:34%}
.ssw-availability-chart .ssw-availability-level-35{height:35%}
.ssw-availability-chart .ssw-availability-level-36{height:36%}
.ssw-availability-chart .ssw-availability-level-37{height:37%}
.ssw-availability-chart .ssw-availability-level-38{height:38%}
.ssw-availability-chart .ssw-availability-level-39{height:39%}
.ssw-availability-chart .ssw-availability-level-40{height:40%}
.ssw-availability-chart .ssw-availability-level-41{height:41%}
.ssw-availability-chart .ssw-availability-level-42{height:42%}
.ssw-availability-chart .ssw-availability-level-43{height:43%}
.ssw-availability-chart .ssw-availability-level-44{height:44%}
.ssw-availability-chart .ssw-availability-level-45{height:45%}
.ssw-availability-chart .ssw-availability-level-46{height:46%}
.ssw-availability-chart .ssw-availability-level-47{height:47%}
.ssw-availability-chart .ssw-availability-level-48{height:48%}
.ssw-availability-chart .ssw-availability-level-49{height:49%}
.ssw-availability-chart .ssw-availability-level-50{height:50%}
.ssw-availability-chart .ssw-availability-level-51{height:51%}
.ssw-availability-chart .ssw-availability-level-52{height:52%}
.ssw-availability-chart .ssw-availability-level-53{height:53%}
.ssw-availability-chart .ssw-availability-level-54{height:54%}
.ssw-availability-chart .ssw-availability-level-55{height:55%}
.ssw-availability-chart .ssw-availability-level-56{height:56%}
.ssw-availability-chart .ssw-availability-level-57{height:57%}
.ssw-availability-chart .ssw-availability-level-58{height:58%}
.ssw-availability-chart .ssw-availability-level-59{height:59%}
.ssw-availability-chart .ssw-availability-level-60{height:60%}
.ssw-availability-chart .ssw-availability-level-61{height:61%}
.ssw-availability-chart .ssw-availability-level-62{height:62%}
.ssw-availability-chart .ssw-availability-level-63{height:63%}
.ssw-availability-chart .ssw-availability-level-64{height:64%}
.ssw-availability-chart .ssw-availability-level-65{height:65%}
.ssw-availability-chart .ssw-availability-level-66{height:66%}
.ssw-availability-chart .ssw-availability-level-67{height:67%}
.ssw-availability-chart .ssw-availability-level-68{height:68%}
.ssw-availability-chart .ssw-availability-level-69{height:69%}
.ssw-availability-chart .ssw-availability-level-70{height:70%}
.ssw-availability-chart .ssw-availability-level-71{height:71%}
.ssw-availability-chart .ssw-availability-level-72{height:72%}
.ssw-availability-chart .ssw-availability-level-73{height:73%}
.ssw-availability-chart .ssw-availability-level-74{height:74%}
.ssw-availability-chart .ssw-availability-level-75{height:75%}
.ssw-availability-chart .ssw-availability-level-76{height:76%}
.ssw-availability-chart .ssw-availability-level-77{height:77%}
.ssw-availability-chart .ssw-availability-level-78{height:78%}
.ssw-availability-chart .ssw-availability-level-79{height:79%}
.ssw-availability-chart .ssw-availability-level-80{height:80%}
.ssw-availability-chart .ssw-availability-level-81{height:81%}
.ssw-availability-chart .ssw-availability-level-82{height:82%}
.ssw-availability-chart .ssw-availability-level-83{height:83%}
.ssw-availability-chart .ssw-availability-level-84{height:84%}
.ssw-availability-chart .ssw-availability-level-85{height:85%}
.ssw-availability-chart .ssw-availability-level-86{height:86%}
.ssw-availability-chart .ssw-availability-level-87{height:87%}
.ssw-availability-chart .ssw-availability-level-88{height:88%}
.ssw-availability-chart .ssw-availability-level-89{height:89%}
.ssw-availability-chart .ssw-availability-level-90{height:90%}
.ssw-availability-chart .ssw-availability-level-91{height:91%}
.ssw-availability-chart .ssw-availability-level-92{height:92%}
.ssw-availability-chart .ssw-availability-level-93{height:93%}
.ssw-availability-chart .ssw-availability-level-94{height:94%}
.ssw-availability-chart .ssw-availability-level-95{height:95%}
.ssw-availability-chart .ssw-availability-level-96{height:96%}
.ssw-availability-chart .ssw-availability-level-97{height:97%}
.ssw-availability-chart .ssw-availability-level-98{height:98%}
.ssw-availability-chart .ssw-availability-level-99{height:99%}
.ssw-availability-chart .ssw-availability-level-100{height:100%}

/* PageSpeed history is a regular, accessible offcanvas with a bounded chart. */
.ssw-score-box-button{display:flex;flex-direction:column;align-items:center;justify-content:center;appearance:none;border:1px solid var(--ssw-border);background:var(--bs-body-bg);color:inherit;cursor:pointer;font:inherit;text-align:center}
.ssw-score-box-button:hover,.ssw-score-box-button:focus-visible{border-color:var(--ssw-primary);background:var(--bs-primary-bg-subtle);outline-offset:2px}
.ssw-score-box-button .ssw-bi{width:.75rem;height:.75rem;color:var(--bs-secondary-color)}
.ssw-pagespeed-chart-frame{position:relative;height:255px;max-height:45vh;min-height:210px}
.ssw-pagespeed-chart-frame canvas{width:100%;height:100%}

/* Compact, equal-height Dashboard overview cards. */
.ssw-home-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem}
.ssw-home-stats>div{background:var(--bs-tertiary-bg);border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);padding:.65rem .3rem;text-align:center}
.ssw-home-stats strong{display:block;font-size:1.15rem;line-height:1.3}
.ssw-home-stats span{font-size:.75rem;color:var(--bs-secondary-color)}
.ssw-home-item{display:flex;align-items:center;justify-content:space-between;gap:.65rem;padding:.65rem .7rem;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);color:var(--bs-body-color);text-decoration:none;min-width:0}
a.ssw-home-item:hover,a.ssw-home-item:focus-visible{background:var(--bs-tertiary-bg);border-color:var(--ssw-primary);color:var(--bs-emphasis-color)}
.ssw-home-item .badge{white-space:nowrap;flex-shrink:0}
.ssw-home-overview .card-header .ssw-bi{vertical-align:-.13em}

/* Report history filters retain the existing AJAX-independent bulk controls. */
.ssw-report-history-filters .form-select{min-width:150px}
.ssw-report-history-filters .form-control{min-width:148px}
[data-table-id="report-runs"] tbody tr[hidden]{display:none!important}
@media(max-width:575.98px){.ssw-report-history-filters>div{width:100%}.ssw-report-history-filters .form-select,.ssw-report-history-filters .form-control{width:100%}}

/* v1.0.88 — Dashboard compact integrations and reusable Pings-style date controls */
.ssw-home-integration-item{min-width:0;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);background:var(--bs-body-bg);padding:.55rem .65rem;line-height:1.55}
.ssw-home-integration-item code{font-size:inherit;color:var(--bs-secondary-color)}
.ssw-home-summary-tags .badge{font-weight:500}
.ssw-date-range-picker{min-width:0}
.ssw-date-range-picker .ssw-pings-date-calendar{width:21rem;max-width:calc(100vw - 1.5rem)}

/* v1.0.89 — Billing card grid and reusable calendar layout. */
.ssw-billing-plans-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:.75rem;align-items:stretch}
.ssw-billing-plan-slot,.ssw-billing-plan-slot>.card{min-width:0;height:100%}
.ssw-billing-plan-slot .card-header{font-size:inherit}
.ssw-billing-plan-slot .plan-card{border-radius:var(--ssw-radius)}
.ssw-billing-plan-slot .billing-option{min-width:0}
.ssw-billing-plan-slot .billing-option .fw-semibold{font-size:inherit}
.ssw-shared-date-calendar{height:auto!important;max-height:none!important;overflow:visible!important;min-width:21rem}
.ssw-date-range-picker .dropdown-menu.ssw-shared-date-calendar{max-height:none!important;overflow-y:visible!important;overflow-x:visible!important}
.ssw-report-history-filters{overflow:visible}
[data-table-id="report-runs"][aria-busy="true"] .ssw-reports-table{opacity:.55}
[data-billing-profile-form] .input-group>.form-control.is-invalid{z-index:3}
[data-billing-profile-form] .input-group-text{background:var(--bs-tertiary-bg);color:var(--bs-secondary-color)}
@media(min-width:576px){.ssw-billing-plans-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:992px) and (max-width:1199.98px){.ssw-billing-plans-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1200px){.ssw-billing-plans-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-height:570px){.ssw-date-range-picker .dropdown-menu.ssw-shared-date-calendar{max-height:calc(100dvh - 4rem)!important;overflow-y:auto!important}}

/* v1.0.90 — wider PageSpeed history with independent results scrolling. */
@media(min-width:1200px){
  .ssw-pagespeed-trend-panel{--bs-offcanvas-width:min(1040px,96vw)}
}
@media(min-width:768px) and (max-width:1199.98px){
  .ssw-pagespeed-trend-panel{--bs-offcanvas-width:min(780px,96vw)}
}
.ssw-pagespeed-trend-body{
  display:flex;
  flex-direction:column;
  min-height:0;
  overflow:hidden;
}
.ssw-pagespeed-trend-body .ssw-pagespeed-chart-frame{
  flex:0 0 auto;
  height:clamp(170px,30vh,300px);
  min-height:0;
  max-height:none;
}
.ssw-pagespeed-results{
  flex:1 1 auto;
  min-height:0;
  display:flex;
  flex-direction:column;
}
.ssw-pagespeed-results .card-header{flex:0 0 auto}
.ssw-pagespeed-results-scroll{
  flex:1 1 auto;
  min-height:0;
  overflow-x:auto;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
}
.ssw-pagespeed-results-scroll thead th{
  position:sticky;
  top:0;
  z-index:1;
  background:var(--bs-body-bg);
}
a.ssw-home-integration-item:hover,
a.ssw-home-integration-item:focus-visible{
  border-color:var(--ssw-primary);
  background:var(--bs-tertiary-bg);
  color:var(--bs-body-color);
  outline-offset:2px;
}
[id="api-tokens"],[id="outbound-webhooks"],
[id^="api-token-"],[id^="webhook-"]{scroll-margin-top:6rem}
[id^="api-token-"]:target,[id^="webhook-"]:target{
  background:var(--bs-primary-bg-subtle);
  outline:2px solid var(--bs-primary-border-subtle);
  outline-offset:-2px;
}
@media(max-width:767.98px), (max-height:600px){
  .ssw-pagespeed-trend-body{overflow-y:auto}
  .ssw-pagespeed-results{flex:0 0 auto}
  .ssw-pagespeed-results-scroll{max-height:300px}
}

/* v1.0.91 – wider, two-column Visibility Profile workflow. */
@media(min-width:992px){.ssw-visibility-profile-panel{--bs-offcanvas-width:min(1450px,76vw)}}
@media(min-width:768px) and (max-width:991.98px){.ssw-visibility-profile-panel{--bs-offcanvas-width:min(800px,95vw)}}
.ssw-visibility-profile-body{padding:0;display:flex;flex-direction:column;overflow:hidden;min-height:0}
.ssw-visibility-profile-form{display:flex;flex-direction:column;min-height:0;flex:1 1 auto}
.ssw-visibility-profile-scroll{padding:1rem 1.25rem;min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}
.ssw-visibility-profile-scroll::-webkit-scrollbar{display:none}
.ssw-visibility-profile-footer{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.5rem;padding:1rem 1.25rem;background:var(--bs-body-bg);flex:0 0 auto}
.ssw-visibility-profile-footer [data-visibility-assist-message]{min-width:12rem;flex-basis:100%}
.ssw-visibility-profile-form .form-label{font-weight:600;font-size:inherit}
.ssw-visibility-profile-form .form-label .ssw-bi{color:var(--bs-secondary-color)}
.ssw-visibility-profile-form .form-label .btn{font-weight:400}
.ssw-visibility-profile-form .form-control,.ssw-visibility-profile-form .form-select{max-width:100%}
.ssw-visibility-evidence-json{max-height:65vh;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
.ssw-content-article{font-family:inherit;line-height:1.75;overflow-wrap:anywhere}
.ssw-content-article h2{font-size:1.4rem;line-height:1.35;margin:0 0 .75rem}
.ssw-content-article h3{font-size:1.12rem;margin:1.25rem 0 .65rem}
.ssw-content-article p{margin-bottom:.9rem}
.ssw-content-article ul,.ssw-content-article ol{padding-left:1.35rem;margin-bottom:1rem}
.ssw-content-article li{margin-bottom:.4rem}
[data-table-id="visibility-actions"] .dropdown-menu{min-width:11rem}
@media(max-width:575.98px){.ssw-visibility-profile-footer{padding:.75rem;gap:.4rem}.ssw-visibility-profile-footer>.btn{flex:1 1 auto}.ssw-visibility-profile-scroll{padding:.75rem}}


/* v1.0.94 Content Studio */
tr[data-content-row][hidden],tr[data-content-empty][hidden],.ssw-studio-library-item[hidden]{display:none!important}
.ssw-content-rich-editor{min-height:340px;max-height:66vh;overflow:auto;outline:none;white-space:normal;overflow-wrap:anywhere;line-height:1.75;font-size:1.03rem;background:#fff}
.ssw-content-rich-editor:focus{box-shadow:inset 0 0 0 2px rgba(var(--ssw-primary-rgb),.18)}
.ssw-content-rich-editor:empty::before{content:attr(data-placeholder);color:var(--ssw-muted);pointer-events:none}
.ssw-rich-toolbar{background:var(--ssw-bg)}
.ssw-rich-toolbar .btn{min-width:34px}
.ssw-content-article h2{font-size:1.55rem;line-height:1.3;margin:1.3rem 0 .55rem}
.ssw-content-article h3{font-size:1.2rem;line-height:1.35;margin:1.15rem 0 .45rem}
.ssw-content-article p{margin:0 0 1rem}
.ssw-content-article ul,.ssw-content-article ol{margin:0 0 1rem;padding-left:1.4rem}
.ssw-content-article blockquote{padding-left:1rem;border-left:3px solid var(--ssw-primary);color:var(--ssw-muted)}
.ssw-studio-cover{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--ssw-bg)}
.ssw-studio-cover-placeholder{aspect-ratio:16/9;background:var(--ssw-bg);border:1px dashed var(--ssw-border);color:var(--ssw-muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;border-radius:.45rem}
.ssw-studio-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;max-height:310px;overflow:auto}
.ssw-studio-library-item{min-width:0}
.ssw-studio-library-item img{aspect-ratio:16/9;object-fit:cover;display:block}
.ssw-studio-preview-shell{display:flex;justify-content:center;align-items:flex-start;background:var(--ssw-bg);padding:1.5rem}
.ssw-studio-preview{width:100%;max-width:900px;background:#fff;border:1px solid var(--ssw-border);border-radius:.55rem;overflow:hidden;box-shadow:0 10px 30px rgba(25,40,70,.05);transition:max-width .2s ease}
.ssw-studio-preview-bar{padding:.6rem .9rem;display:flex;align-items:center;gap:.3rem;border-bottom:1px solid var(--ssw-border);background:#fdfdfd}
.ssw-studio-preview-bar span:not(.small){width:8px;height:8px;border-radius:50%;background:#cbd3e1}
.ssw-studio-preview-banner{display:block;aspect-ratio:16/9;object-fit:cover}
.ssw-studio-preview-article{padding:2.2rem 3rem;overflow-wrap:anywhere}
.ssw-studio-preview-article>h2{font-weight:750;line-height:1.2;font-size:2.15rem;letter-spacing:-.025em;margin-bottom:1.4rem}
.ssw-studio-preview[data-mode="mobile"]{max-width:390px}
.ssw-studio-preview[data-mode="mobile"] .ssw-studio-preview-article{padding:1.4rem}
.ssw-studio-preview[data-mode="mobile"] .ssw-studio-preview-article>h2{font-size:1.5rem}
.ssw-studio-preview[data-mode="social"]{max-width:520px}
.ssw-studio-preview[data-mode="social"] .ssw-studio-preview-article{padding:1.2rem 1.5rem}
.ssw-studio-preview[data-mode="social"] .ssw-studio-preview-banner{aspect-ratio:1200/630}
.ssw-studio-preview[data-mode="social"] .ssw-studio-preview-article>h2{font-size:1.25rem;margin-bottom:.7rem}
.ssw-studio-preview[data-mode="social"] .ssw-studio-preview-article .ssw-content-article{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;max-height:9em}
@media(max-width:575.98px){.ssw-studio-preview-shell{padding:.65rem}.ssw-studio-preview-article{padding:1.2rem}.ssw-studio-preview-article>h2{font-size:1.4rem}.ssw-studio-library{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* v1.0.95: live-first Content canvas with contextual formatting and media drawers. */
.ssw-studio-workspace .ssw-studio-canvas-card{overflow:visible}
.ssw-studio-workspace .ssw-studio-canvas-tools{background:#fff}
.ssw-studio-workspace .ssw-studio-info{display:inline-flex;align-items:center;justify-content:center;padding:0 .25rem;vertical-align:middle;text-decoration:none;border:0;line-height:1;font-size:.95rem}
.ssw-studio-workspace .ssw-studio-info:hover,.ssw-studio-workspace .ssw-studio-info:focus{color:var(--ssw-primary)!important}
.ssw-studio-workspace .ssw-studio-preview{display:block}
.ssw-studio-workspace .ssw-studio-preview-article{padding:2.2rem 3rem 3rem;min-height:340px}
.ssw-studio-workspace .ssw-studio-editable-title{font-size:2.15rem;font-weight:750;line-height:1.25;letter-spacing:-.025em;display:block;width:100%;border:1px solid transparent;border-radius:.25rem;color:var(--ssw-text);background:transparent;padding:.25rem .35rem;margin:0 0 1rem -.35rem;outline:none;overflow-wrap:anywhere}
.ssw-studio-workspace .ssw-studio-editable-title:hover:not([readonly]),.ssw-studio-workspace .ssw-studio-editable-title:focus-visible{border-color:var(--ssw-border);background:var(--ssw-bg)}
.ssw-studio-workspace .ssw-studio-editable-title:focus{border-color:var(--ssw-primary)!important;background:#fff}
.ssw-studio-workspace .ssw-content-rich-editor{border:1px solid transparent;border-radius:.25rem;margin:0 -.4rem;padding:.5rem .4rem;min-height:270px;max-height:none;overflow:visible;line-height:1.78}
.ssw-studio-workspace .ssw-content-rich-editor:hover[contenteditable="true"]{border-color:var(--ssw-border)}
.ssw-studio-workspace .ssw-content-rich-editor:focus{outline:none;border-color:var(--ssw-primary);box-shadow:0 0 0 .18rem rgba(var(--ssw-primary-rgb),.09)}
.ssw-studio-cover-action{display:block;width:100%;padding:0;position:relative;border:0;background:#fff;text-align:center;cursor:pointer}
.ssw-studio-cover-action:focus-visible{outline:3px solid var(--ssw-primary);outline-offset:2px}
.ssw-studio-cover-action .ssw-studio-preview-banner{object-fit:cover}
.ssw-studio-cover-empty{display:flex;flex-direction:column;gap:.4rem;align-items:center;justify-content:center;min-height:210px;aspect-ratio:16/6;max-height:300px;border:2px dashed #cbd5e1;background:linear-gradient(135deg,#f8faff,#f3f6fc);color:var(--ssw-muted);transition:background .2s,border-color .2s}
.ssw-studio-cover-empty .ssw-bi{color:var(--ssw-primary)}
.ssw-studio-cover-empty strong{font-size:1rem;color:var(--ssw-text)}
.ssw-studio-cover-empty span:last-child{font-size:.82rem}
.ssw-studio-cover-action:hover .ssw-studio-cover-empty{border-color:var(--ssw-primary);background:#eef4ff}
.ssw-studio-cover-overlay{position:absolute;right:1rem;bottom:1rem;background:rgba(20,30,48,.84);color:#fff;border-radius:.35rem;font-weight:600;padding:.55rem .8rem;font-size:.82rem}
.ssw-studio-cover-action:hover .ssw-studio-cover-overlay{background:var(--ssw-primary)}
.ssw-studio-selection-toolbar{position:fixed;left:0;top:0;display:flex;align-items:center;gap:2px;padding:4px;z-index:1070;border:1px solid var(--ssw-border);border-radius:.45rem;background:#fff}
.ssw-studio-selection-toolbar[hidden],.ssw-studio-workspace [hidden]{display:none!important}
.ssw-studio-selection-toolbar .btn{min-width:33px}
.ssw-studio-selection-toolbar .btn:hover{background:#e9f0fe}
.ssw-studio-media-panel{--bs-offcanvas-width:min(540px,95vw)}
.ssw-studio-media-panel .offcanvas-header{min-height:70px}
.ssw-studio-media-panel .offcanvas-body{padding:1.25rem 1.4rem}
.ssw-studio-media-panel .form-label{display:inline-flex;gap:.2rem;align-items:center;flex-wrap:wrap}
.ssw-studio-cover-current{max-width:180px}
.ssw-studio-cover-current img{aspect-ratio:16/9;object-fit:cover}
.ssw-studio-cover-current .ssw-bi{color:var(--ssw-primary)}
.ssw-studio-library-modal-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none;overflow:visible}
.ssw-studio-workspace .ssw-studio-preview[data-mode="mobile"] .ssw-studio-preview-article{padding:1.4rem;min-height:300px}
.ssw-studio-workspace .ssw-studio-preview[data-mode="mobile"] .ssw-studio-editable-title{font-size:1.55rem}
.ssw-studio-workspace .ssw-studio-preview[data-mode="mobile"] .ssw-studio-cover-empty{min-height:150px;aspect-ratio:16/9}
.ssw-studio-workspace .ssw-studio-preview[data-mode="social"] .ssw-studio-preview-article{padding:1.25rem 1.5rem}
.ssw-studio-workspace .ssw-studio-preview[data-mode="social"] .ssw-studio-editable-title{font-size:1.27rem;margin-bottom:.75rem}
.ssw-studio-workspace .ssw-studio-preview[data-mode="social"] .ssw-content-article{display:block;-webkit-line-clamp:unset;max-height:none;overflow:visible}
.ssw-studio-workspace .ssw-studio-preview[data-mode="social"] .ssw-studio-cover-empty{min-height:150px;aspect-ratio:1200/630}
@media(max-width:767.98px){
  .ssw-studio-library-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ssw-studio-workspace .ssw-studio-canvas-tools{align-items:flex-start}
  .ssw-studio-workspace .ssw-studio-preview-article{padding:1.4rem}
  .ssw-studio-workspace .ssw-studio-editable-title{font-size:1.55rem}
  .ssw-studio-workspace .ssw-studio-cover-empty{min-height:155px;aspect-ratio:16/9}
}
@media(max-width:420px){
  .ssw-studio-workspace .ssw-studio-mode-switch .btn{font-size:.74rem;padding:.34rem .43rem}
  .ssw-studio-workspace .ssw-studio-selection-toolbar{max-width:calc(100vw - 16px);gap:0}
  .ssw-studio-workspace .ssw-studio-selection-toolbar .btn{min-width:29px;padding:.22rem .36rem}
}


/* v1.0.96 — visible, unobtrusive per-mode customisation state. */
.ssw-studio-mode-status .badge{font-weight:600;font-size:.75rem;padding:.43rem .65rem;white-space:normal}
.ssw-studio-mode-status .ssw-studio-mode-custom{color:#2353b5!important;background:#e8f0ff!important;border-color:#b8cdf8!important}
.ssw-studio-mode-switch .btn{position:relative}
.ssw-studio-mode-switch .btn.ssw-studio-has-override::after{content:'';width:6px;height:6px;border-radius:50%;background:var(--ssw-primary);position:absolute;right:5px;top:4px;box-shadow:0 0 0 1px #fff}
.ssw-studio-mode-switch .btn.ssw-studio-unsaved-mode::after{background:#dd8b00}
.ssw-studio-variant-note{font-size:.78rem}


/* v1.0.97 — consistent product-style confirmations and Content cover canvas. */
.ssw-confirm-modal .modal-content{
  border:1px solid var(--ssw-border);
  border-radius:.375rem;
  box-shadow:0 .75rem 2.25rem rgba(15,23,42,.16);
}
.ssw-confirm-modal .modal-header{padding:1rem;border-bottom:1px solid var(--ssw-border)}
.ssw-confirm-modal .modal-body{padding:1.25rem 1rem}
.ssw-confirm-modal .modal-footer{border-top:1px solid var(--ssw-border);padding:.75rem 1rem;justify-content:flex-end;gap:.5rem}
.ssw-confirm-modal .modal-footer .btn{min-width:68px}
.ssw-studio-workspace .ssw-studio-info{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;padding:0!important;margin:0 .15rem!important;line-height:1;border:0;text-decoration:none;font-size:.875rem}
.ssw-studio-workspace .ssw-studio-cover-action{display:block;width:100%;max-width:none;min-width:0;margin:0;box-sizing:border-box}
.ssw-studio-workspace .ssw-studio-cover-empty{display:flex;width:100%;max-width:none;min-width:0;box-sizing:border-box;aspect-ratio:16/5;min-height:210px;max-height:300px;padding:1.5rem}
.ssw-studio-workspace .ssw-studio-preview[data-mode="mobile"] .ssw-studio-cover-empty,
.ssw-studio-workspace .ssw-studio-preview[data-mode="social"] .ssw-studio-cover-empty{width:100%;max-width:none}
@media(max-width:575.98px){.ssw-studio-workspace .ssw-studio-cover-empty{min-height:155px;aspect-ratio:16/9}}


/* v1.0.99: quieter Monitoring score trend and workspace Site ordering. */
.ssw-monitoring-overview-table th{background:#f9fafb;color:#697383}
.ssw-monitoring-overview-table .ssw-monitoring-site-layout{display:flex;align-items:center;gap:.2rem;min-width:0}
.ssw-monitoring-overview-table .ssw-monitoring-site-detail{min-width:0;flex:1}
.ssw-monitoring-overview-table .ssw-monitoring-score{
  display:inline-flex;align-items:baseline;gap:.27rem;min-height:21px;max-width:100%;
  font-variant-numeric:tabular-nums;white-space:nowrap
}
.ssw-monitoring-overview-table .ssw-monitoring-score-number{color:#222831;font-weight:700}
.ssw-monitoring-overview-table .ssw-monitoring-score.is-low .ssw-monitoring-score-number{color:#a06b00}
.ssw-monitoring-score-change{display:inline-flex;align-items:center;gap:.04rem;font-size:.71rem;line-height:1.2;color:#727b87;font-weight:500}
.ssw-monitoring-score-change .ssw-bi{width:11px;height:11px;flex-shrink:0}
.ssw-monitoring-overview-table .ssw-monitoring-score.is-low .ssw-monitoring-score-change{color:#946c22}
.ssw-monitoring-drag-handle{
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px;
  width:22px;min-height:32px;padding:0;border:0;border-radius:.3rem;
  background:transparent;color:#9da6b4;cursor:grab;touch-action:none;
}
.ssw-monitoring-drag-handle .ssw-bi{width:15px;height:15px}
.ssw-monitoring-drag-handle:hover{background:#f0f3f8;color:#586578}
.ssw-monitoring-drag-handle:focus-visible{outline:2px solid var(--ssw-primary);outline-offset:0}
.ssw-monitoring-drag-handle:active{cursor:grabbing}
.ssw-monitoring-card-frame{position:relative}
.ssw-monitoring-card-frame .ssw-monitoring-card-handle{
  position:absolute;z-index:2;left:12px;top:12px;width:30px;height:30px;background:#fff;border:1px solid #e6e9ef
}
.ssw-monitoring-card-frame:has(.ssw-monitoring-card-handle) .ssw-monitoring-card .card-body{padding-left:3.3rem}
.ssw-monitoring-overview-table tr.ssw-dragging,.ssw-monitoring-card-frame.ssw-dragging{opacity:.55}
[data-table-id="monitoring-sites"] .ssw-list-toolbar [data-monitoring-view].active,
[data-table-id="monitoring-sites"] .ssw-list-toolbar [data-monitoring-columns] .btn,
[data-table-id="monitoring-sites"] .ssw-list-toolbar .ssw-status-filters .btn.active{
  background:#f6f8fb!important;border-color:#d7dfe8!important;color:#394458!important;box-shadow:none
}
[data-table-id="monitoring-sites"] .ssw-list-toolbar .btn-light:not(.active){background:#fff}
[data-monitoring-order-feedback]:empty{display:none}
@media(max-width:767.98px){
  .ssw-monitoring-overview-table .ssw-monitoring-score-change{font-size:.72rem}
}


/* v1.1.00: quiet Content library and Action Plans treatments. */
[data-content-list] .table tbody a.text-body{color:var(--bs-emphasis-color)!important}
[data-content-list] .table tbody a.text-body:hover{text-decoration:underline!important}
[data-content-list] [aria-busy="true"]{opacity:.75}
[data-content-list] .card-footer{background:#fff}
.ssw-plan-checklist-row:last-child{border-bottom:0!important}
.ssw-plan-check-btn{display:flex;align-items:center;justify-content:center;border:0;background:none;color:var(--ssw-primary);padding:.2rem;min-width:30px;min-height:30px}
.ssw-plan-check-btn:disabled{color:var(--bs-secondary-color);opacity:.55}
.ssw-plan-check-btn:not(:disabled):hover{background:var(--bs-tertiary-bg);border-radius:.3rem}
.ssw-plan-check-btn:focus-visible{outline:2px solid var(--ssw-primary)}
.ssw-plan-check-btn .ssw-bi{width:20px;height:20px}


/* v1.1.1 - isolated, read-only shared documents. No third-party scripts. */
.ssw-shared-document{background:#f5f6f9;color:#222933;min-height:100vh}
.ssw-document-brand{display:flex;align-items:center;gap:.75rem;min-height:62px;border-bottom:1px solid #e3e7ee;padding:.75rem max(1rem,calc((100vw - 900px)/2));background:#fff}
.ssw-document-main{width:min(100% - 2rem,900px);margin:2rem auto 3rem}
.ssw-document-article,.ssw-document-gate{border:1px solid #e3e7ee;box-shadow:0 8px 35px rgba(29,41,57,.055);overflow:hidden}
.ssw-document-gate{max-width:500px;margin:3rem auto}
.ssw-document-article .card-header,.ssw-document-article .card-footer{background:#fff}
.ssw-document-cover{display:block;width:100%;max-height:360px;object-fit:cover;aspect-ratio:16/6;border-radius:.35rem}
.ssw-document-prose{font-size:1rem;line-height:1.75;overflow-wrap:anywhere}
.ssw-document-prose h2{font-size:1.5rem;line-height:1.35;margin:1.8rem 0 .7rem}
.ssw-document-prose h3{font-size:1.2rem;line-height:1.4;margin:1.4rem 0 .6rem}
.ssw-document-prose p,.ssw-document-prose ul,.ssw-document-prose ol,.ssw-document-prose blockquote{margin:0 0 1.05rem}
.ssw-document-prose blockquote{padding:.5rem 1rem;border-left:3px solid #bfc7d4;color:#667085}
.ssw-document-evidence{white-space:pre-wrap;overflow-wrap:anywhere;max-height:500px;overflow:auto;background:#f8fafc;padding:1rem;border:1px solid #e4e9ef;border-radius:.4rem;font-size:.76rem}
.ssw-document-footer{max-width:900px;margin:0 auto 2rem;padding:0 1rem;font-size:.8rem;text-align:center;color:#667085}
@media(max-width:575.98px){.ssw-document-main{width:calc(100% - 1rem);margin:1rem auto}.ssw-document-article .card-body{padding:1.1rem!important}.ssw-document-brand{padding:.7rem 1rem}.ssw-document-cover{aspect-ratio:16/9}}


/* Actionable Dashboard concept. All rules stay inside ssw-home-overview;
   typography, buttons and colours reuse existing Bootstrap/SSW tokens. */
.ssw-home-overview .ssw-home-scope-select{width:auto;max-width:min(100%,21rem);min-width:11rem}
.ssw-home-overview .ssw-home-health-bar{display:flex;height:.5rem;gap:2px;overflow:hidden;border-radius:var(--ssw-radius);background:var(--bs-tertiary-bg)}
.ssw-home-overview .ssw-home-health-part{display:block;min-width:0;flex:1}
.ssw-home-overview .ssw-home-tick-up{background:var(--bs-success)}
.ssw-home-overview .ssw-home-tick-degraded{background:var(--bs-warning)}
.ssw-home-overview .ssw-home-tick-down{background:var(--bs-danger)}
.ssw-home-overview .ssw-home-tick-unknown{background:var(--bs-secondary-bg)}
.ssw-home-overview .ssw-home-stat{transition:border-color .15s,background .15s}
.ssw-home-overview .ssw-home-stat:hover,.ssw-home-overview .ssw-home-stat:focus-visible{border-color:var(--ssw-primary);background:var(--bs-tertiary-bg)}
.ssw-home-overview .ssw-home-attention-row{display:flex;align-items:center;gap:.65rem;border:1px solid var(--ssw-border);border-left:3px solid var(--bs-secondary);border-radius:var(--ssw-radius);padding:.7rem;margin-bottom:.5rem;min-width:0}
.ssw-home-overview .ssw-home-attention-row:last-child{margin-bottom:0}
.ssw-home-overview .ssw-home-attention-danger{border-left-color:var(--bs-danger)}
.ssw-home-overview .ssw-home-attention-warning{border-left-color:var(--bs-warning)}
.ssw-home-overview .ssw-home-attention-icon{width:1.9rem;height:1.9rem;display:flex;align-items:center;justify-content:center;flex:none;border-radius:var(--ssw-radius);background:var(--bs-tertiary-bg);color:var(--bs-secondary-color)}
.ssw-home-overview .ssw-home-attention-danger .ssw-home-attention-icon{color:var(--bs-danger)}
.ssw-home-overview .ssw-home-attention-warning .ssw-home-attention-icon{color:var(--bs-warning-text-emphasis)}
.ssw-home-overview .ssw-home-attention-row .btn{flex-shrink:0}
.ssw-home-overview .ssw-home-activity-item{padding:.6rem 0;border-bottom:1px solid var(--ssw-border);line-height:1.4}
.ssw-home-overview .ssw-home-activity-item:last-child{border-bottom:0}
.ssw-home-overview a.ssw-home-activity-item:hover,.ssw-home-overview a.ssw-home-activity-item:focus-visible{color:var(--ssw-primary)!important}
.ssw-home-overview .ssw-home-monitoring-list{container-type:inline-size}
.ssw-home-overview .ssw-home-monitoring-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(5rem,9rem) 5rem auto;gap:.65rem;align-items:center;padding:.65rem;border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);margin-bottom:.5rem;min-width:0}
.ssw-home-overview a.ssw-home-monitoring-row:hover,.ssw-home-overview a.ssw-home-monitoring-row:focus-visible{background:var(--bs-tertiary-bg);border-color:var(--ssw-primary)}
.ssw-home-overview .ssw-home-ticks{display:flex;height:1.2rem;gap:2px;align-items:stretch;overflow:hidden}
.ssw-home-overview .ssw-home-ticks>span{flex:1;min-width:1px}
.ssw-home-overview .ssw-home-monitoring-row .badge{white-space:nowrap}
.ssw-home-overview [data-ssw-home-site-state][hidden]{display:none!important}
.ssw-home-overview .ssw-home-opportunity{border:1px solid var(--ssw-border);border-radius:var(--ssw-radius);padding:.7rem;min-width:0}
.ssw-home-overview .ssw-home-opportunity .badge{flex-shrink:0;white-space:nowrap}
.ssw-home-overview .ssw-home-secondary-grid .ssw-home-item{margin-bottom:.5rem}
@container (max-width: 31rem){
  .ssw-home-monitoring-row{grid-template-columns:minmax(0,1fr) auto}
  .ssw-home-monitoring-row .ssw-home-ticks,
  .ssw-home-monitoring-row .text-end{display:none}
}
@media(max-width:575.98px){
  .ssw-home-overview .ssw-home-attention-row{align-items:flex-start;flex-wrap:wrap}
  .ssw-home-overview .ssw-home-attention-row>.btn,
  .ssw-home-overview .ssw-home-attention-row>form{margin-left:auto}
  .ssw-home-overview .ssw-home-attention-row .btn{white-space:normal}
  .ssw-home-overview .ssw-home-opportunity .d-flex{flex-wrap:wrap}
}


/* v1.1.4 Dashboard refinements: all selectors target the Dashboard view. */
.ssw-home-heading .ssw-home-scope-control{max-width:100%;min-width:0}
.ssw-home-heading .ssw-home-scope-control .dropdown-toggle{max-width:100%;min-width:11rem}
.ssw-home-heading .ssw-home-scope-value{max-width:15rem}
.ssw-home-heading .ssw-home-scope-menu{min-width:min(22rem,calc(100vw - 2rem));max-width:calc(100vw - 2rem);max-height:min(24rem,65vh);overflow-y:auto;border-color:var(--ssw-border)}
.ssw-home-heading .ssw-home-scope-menu .dropdown-item{border-radius:var(--ssw-radius);min-width:0}
.ssw-home-heading .ssw-home-scope-menu .dropdown-item.active{background:var(--bs-primary-bg-subtle);color:var(--bs-primary-text-emphasis)}
.ssw-home-heading .ssw-home-scope-menu .dropdown-item.active .badge{color:var(--bs-body-color)}
.ssw-home-heading .ssw-home-scope-menu .dropdown-item:focus-visible{outline:2px solid var(--ssw-primary);outline-offset:-2px}
.ssw-home-overview .ssw-home-stat{position:relative}
.ssw-home-overview .ssw-home-metric-help{position:relative;z-index:2;flex-shrink:0}
.ssw-home-overview .ssw-home-toggle .ssw-bi{transition:transform .2s}
.ssw-home-overview .ssw-home-toggle[aria-expanded="true"] .ssw-bi{transform:rotate(90deg)}
.ssw-home-overview .ssw-home-ticks [data-bs-toggle="tooltip"]{cursor:help}
@media(max-width:575.98px){
  .ssw-home-heading .ssw-home-scope-control,.ssw-home-heading .ssw-home-scope-control .dropdown-toggle{width:100%}
}

/* Monitoring overview numeric column alignment only; reuse existing type scales. */
.ssw-monitoring-overview-table td.ssw-monitoring-score-cell .ssw-monitoring-score{justify-content:center}
.ssw-monitoring-overview-table td.ssw-monitoring-score-cell .ssw-monitoring-no-audit{display:inline-block;text-align:center}


/* v1.1.7: Platform Admin navigation and neutral, unboxed admin icons.
   All typography reuses the established SSW scale. */
.ssw-sidebar-has-admin > nav{flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}
.ssw-sidebar-admin-root .ssw-sidebar-link{min-width:0}
.ssw-sidebar-admin-root.is-section-active>.ssw-sidebar-link:not(.active){color:var(--bs-white)!important}
.ssw-sidebar-admin-toggle{border:0;color:rgba(255,255,255,.7);padding:.35rem .5rem;flex-shrink:0}
.ssw-sidebar-admin-toggle:hover,.ssw-sidebar-admin-toggle:focus-visible{color:var(--bs-white)}
.ssw-sidebar-admin-toggle>.ssw-bi{transform:rotate(90deg)}
.ssw-sidebar-admin-toggle[aria-expanded="true"]>.ssw-bi{transform:rotate(-90deg)}
.ssw-sidebar-admin-navigation{border-left:1px solid rgba(255,255,255,.17);margin:.15rem 0 .3rem 1.15rem;padding:0 .2rem 0 .45rem}
.ssw-sidebar-admin-group+.ssw-sidebar-admin-group{margin-top:.4rem}
.ssw-sidebar-admin-group-label{color:rgba(255,255,255,.46);font-weight:600;padding:.42rem .55rem .14rem}
.ssw-sidebar-admin-link{display:flex;align-items:center;gap:.55rem;min-height:34px;padding:.35rem .45rem!important;color:rgba(255,255,255,.7)!important;border-radius:var(--ssw-radius);text-decoration:none;white-space:nowrap}
.ssw-sidebar-admin-link .ssw-sidebar-icon{flex:0 0 1.1rem;width:1.1rem}
.ssw-sidebar-admin-link:hover,.ssw-sidebar-admin-link:focus-visible{color:var(--bs-white)!important;background:rgba(255,255,255,.08)}
.ssw-sidebar-admin-link.active{color:var(--bs-white)!important;background:rgba(255,255,255,.13)}
.ssw-sidebar-collapsed .ssw-sidebar-admin-navigation{display:none!important}
.ssw-sidebar-collapsed .ssw-sidebar-admin-toggle{display:none!important}
.ssw-platform-admin .page-heading h1>.ssw-bi,
.ssw-platform-admin .page-heading h1 .ssw-bi,
.ssw-platform-admin .stat-card .ssw-bi,
.ssw-platform-admin .ssw-quick-link .ssw-bi,
.ssw-platform-admin .icon-circle .ssw-bi{color:var(--bs-emphasis-color)!important}
.ssw-platform-admin .icon-circle{background:transparent!important;color:var(--bs-emphasis-color)!important;border-radius:0;width:1.5rem;height:1.5rem}
.ssw-platform-admin .ssw-admin-stat-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 1.5rem;width:1.5rem;height:1.5rem;color:var(--bs-emphasis-color)}
.ssw-platform-admin .ssw-admin-stat-icon .ssw-bi{width:1.2rem;height:1.2rem}
.ssw-platform-admin .ssw-quick-link:hover .ssw-bi{color:var(--bs-emphasis-color)!important}
.ssw-platform-admin .ssw-admin-social-editor .offcanvas-body{overflow-y:auto}
.ssw-platform-admin .ssw-admin-social-editor .form-check-label{cursor:pointer}


/* v1.1.8: Sidebar fixes — only the middle navigation may scroll vertically.
   Force all nested flex/grid children to shrink to the available sidebar width. */
.ssw-sidebar,.ssw-sidebar-mobile{overflow:hidden}
.ssw-sidebar-inner{min-width:0;min-height:0;width:100%;height:100%;overflow:hidden}
.ssw-sidebar-inner > .ssw-sidebar-brand,
.ssw-sidebar-inner > .mt-auto{flex:0 0 auto;min-width:0;width:100%;max-width:100%;overflow:hidden}
.ssw-sidebar-inner > nav,
.ssw-sidebar-has-admin > nav{
  flex:1 1 0;min-width:0;min-height:0;width:100%;max-width:100%;
  overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;
  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent
}
.ssw-sidebar-inner > nav .ssw-sidebar-group,
.ssw-sidebar-inner > nav .ssw-sidebar-group > .d-flex,
.ssw-sidebar-admin-root{min-width:0;max-width:100%;width:100%;overflow-x:hidden}
.ssw-sidebar-admin-navigation{box-sizing:border-box;max-width:calc(100% - 1.15rem);min-width:0;overflow-x:hidden}
.ssw-sidebar-admin-link{min-width:0;max-width:100%;overflow:hidden}
.ssw-sidebar-admin-link > span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis}
.ssw-sidebar .ssw-sidebar-link,
.ssw-sidebar-mobile .ssw-sidebar-link{min-width:0;max-width:100%}
.ssw-sidebar-inner > nav::-webkit-scrollbar{width:5px;height:0}
.ssw-sidebar-inner > nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22);border-radius:var(--ssw-radius)}


/* v1.1.9: compact Site assignment editor within the existing Social offcanvas. */
.ssw-social-site-choices{max-height:min(45vh,20rem);overflow-y:auto;overscroll-behavior-y:contain}
.ssw-social-site-choice{cursor:pointer;border-radius:var(--ssw-radius)}
.ssw-social-site-choice:hover,.ssw-social-site-choice:focus-within{background:var(--bs-tertiary-bg)}
[data-social-destination-row].d-none{display:none!important}

/* v1.1.13: reliable small-screen sidebar; logo/footer fixed, middle scrolls. */
.ssw-sidebar-mobile{height:100dvh;max-height:100dvh;overflow:hidden}
.ssw-sidebar-mobile .ssw-sidebar-inner{
  display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden
}
.ssw-sidebar-inner > nav,.ssw-sidebar-has-admin > nav{
  flex:1 1 auto;min-height:0;max-height:100%;overflow-y:auto;overflow-x:hidden;
  overscroll-behavior-y:contain;touch-action:pan-y;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none
}
.ssw-sidebar-inner > nav::-webkit-scrollbar{display:none;width:0;height:0}
.ssw-sidebar-inner > nav::-webkit-scrollbar-thumb{background:transparent}
.ssw-sidebar-mobile .ssw-sidebar-inner > nav{flex:1 1 0;min-height:0}
.ssw-sidebar-mobile .ssw-sidebar-inner > .ssw-sidebar-brand,
.ssw-sidebar-mobile .ssw-sidebar-inner > .mt-auto{flex:0 0 auto}

/* v1.1.14: Bootstrap .nav uses flex-wrap:wrap. In a height-constrained
   column this puts Manage in a second, horizontally clipped column.
   Force all groups to stay in a single, vertically scrollable column. */
.ssw-sidebar-inner > nav{
  flex-direction:column!important;
  flex-wrap:nowrap!important;
}
.ssw-sidebar-inner > nav > .ssw-sidebar-group{
  flex:0 0 auto;
  min-height:max-content;
  overflow:visible;
}
/* Keep the logo and the footer stationary; only the middle column scrolls. */
.ssw-sidebar-inner > nav{
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior-y:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.ssw-sidebar-inner > nav::-webkit-scrollbar{display:none!important;width:0;height:0}


/* v1.1.15: Report History-style compact in-card filters. */
.ssw-content-filter-search{flex:1 1 220px;min-width:165px;max-width:360px}
.ssw-report-history-filters[data-content-filters] .form-select{min-width:125px}
.ssw-compact-list-filters .form-select{min-width:120px}
.ssw-compact-list-filters .form-control{min-width:160px}
@media(max-width:575.98px){
  .ssw-content-filter-search{min-width:100%;max-width:none}
  .ssw-report-history-filters[data-content-filters] .form-select,
  .ssw-compact-list-filters .form-select{flex:1 1 44%;width:auto!important;min-width:0}
  .ssw-compact-list-filters .form-control{flex:1 1 100%}
}
/* Native Content calendar; week/month use one shared seven-column layout. */
.ssw-calendar-weekdays,.ssw-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.ssw-calendar-weekdays{border-bottom:1px solid var(--ssw-border);background:var(--bs-tertiary-bg)}
.ssw-calendar-weekdays>span{text-align:center;padding:.5rem 0;font-size:.78rem;color:var(--bs-secondary-color)}
.ssw-calendar-day{min-width:0;min-height:115px;padding:.45rem;border-right:1px solid var(--ssw-border);border-bottom:1px solid var(--ssw-border);background:var(--bs-body-bg)}
.ssw-calendar-day:nth-child(7n){border-right:0}
.ssw-calendar-grid.is-week .ssw-calendar-day{min-height:290px}
.ssw-calendar-day.is-outside{background:var(--bs-tertiary-bg)}
.ssw-calendar-day.is-today .ssw-calendar-day-label{font-weight:700;background:#e9f1ff;color:#2559b8;border-radius:var(--ssw-radius)}
.ssw-calendar-day.is-drop-target{background:#e9f1ff;outline:2px solid #477ceb;outline-offset:-2px}
.ssw-calendar-day-label{display:block;border:0;background:transparent;padding:.15rem .35rem;color:var(--bs-body-color);font-size:.82rem}
.ssw-calendar-day-label:focus-visible,.ssw-calendar-event-move:focus-visible{outline:2px solid #4476de;outline-offset:1px}
.ssw-calendar-event{margin-top:.4rem;padding:.4rem .48rem;border:1px solid #d0def3;background:#f3f7ff;border-radius:var(--ssw-radius);font-size:.79rem;line-height:1.4;overflow:hidden}
.ssw-calendar-event.can-move{cursor:grab}
.ssw-calendar-event.is-dragging{opacity:.45}
.ssw-calendar-event.is-selected{border-color:#2f6cf2;box-shadow:0 0 0 1px #2f6cf2}
.ssw-calendar-event-title{display:block;color:#1f385a;text-decoration:none;font-weight:600;overflow-wrap:anywhere}
.ssw-calendar-event-title:hover{text-decoration:underline}
.ssw-calendar-event .small{font-size:.7rem}
.ssw-calendar-event-move{border:0;padding:.1rem 0;margin-top:.3rem;background:none;color:var(--ssw-primary);font-weight:600;font-size:.74rem}
@media(max-width:767.98px){
  .ssw-calendar-day{padding:.22rem;min-height:95px}
  .ssw-calendar-grid.is-week .ssw-calendar-day{min-height:200px}
  .ssw-calendar-event{padding:.25rem .22rem;font-size:.68rem}
  .ssw-calendar-event .small{display:none}
  .ssw-calendar-event-move{font-size:.65rem}
}
@media(max-width:440px){
  .ssw-calendar-grid.is-week,.ssw-calendar-grid:not(.is-week){grid-template-columns:repeat(7,minmax(0,1fr))}
  .ssw-calendar-event-title{font-size:.64rem}
  .ssw-calendar-weekdays>span{font-size:.68rem}
}
/* Four Social navigation tabs fit by wrapping instead of vertical scrolling. */
.ssw-social-tabs{flex-wrap:wrap!important;overflow:visible!important;max-height:none!important;gap:.4rem}
.ssw-social-tabs .nav-item{flex:0 0 auto}
.ssw-social-tabs::-webkit-scrollbar{display:none}


/* v1.1.24: accessible card-style channel and destination choices. */
.ssw-content-choice{position:relative;margin-bottom:.55rem}
.ssw-content-choice>.form-check-input{position:absolute;left:.8rem;top:.7rem;opacity:0;width:1.2rem;height:1.2rem;float:none;margin:0;z-index:0}
.ssw-content-choice>.form-check-label{position:relative;display:block;width:100%;border:1px solid var(--bs-border-color);border-radius:.55rem;padding:.72rem .8rem .72rem 2.65rem;cursor:pointer;background:var(--bs-body-bg);transition:border-color .15s,background-color .15s}
.ssw-content-choice>.form-check-label:before{content:"";position:absolute;left:.85rem;top:.94rem;width:1.1rem;height:1.1rem;border-radius:50%;border:2px solid var(--bs-secondary-color);background:var(--bs-body-bg)}
.ssw-content-choice>.form-check-input:checked+.form-check-label{background:var(--bs-primary-bg-subtle);border-color:var(--bs-primary);color:var(--bs-emphasis-color)}
.ssw-content-choice>.form-check-input:checked+.form-check-label:before{border-color:var(--bs-primary);box-shadow:inset 0 0 0 3px var(--bs-body-bg);background:var(--bs-primary)}
.ssw-content-choice>.form-check-input:focus-visible+.form-check-label{outline:3px solid var(--bs-focus-ring-color);outline-offset:2px}
.ssw-content-choice>.form-check-input:disabled+.form-check-label{opacity:.5;cursor:not-allowed}
.ssw-content-destination-choice>.form-check-label:before{border-radius:.2rem}
.ssw-content-destination-choice>.form-check-input:checked+.form-check-label:before{box-shadow:none;content:"✓";color:#fff;font-weight:700;line-height:.9rem;text-align:center}
.ssw-content-length-picker .input-group-text,.ssw-content-datetime-picker .input-group-text{background:var(--bs-tertiary-bg);border-radius:.55rem 0 0 .55rem}
.ssw-content-length-picker .form-select,.ssw-content-datetime-picker .form-control{min-height:44px;border-radius:0 .55rem .55rem 0}
.ssw-content-length-picker .form-select:focus,.ssw-content-datetime-picker .form-control:focus{box-shadow:0 0 0 .2rem var(--bs-focus-ring-color)}

/* v1.1.26 — Content queue and scheduling clarity */
.ssw-content-next-slot{background:var(--bs-tertiary-bg)}
.ssw-content-next-slot strong{font-size:1.08rem;letter-spacing:-.012em}
.ssw-calendar-layout{display:flex;align-items:stretch;min-width:0}
.ssw-calendar-sidebar{flex:0 0 244px;width:244px;background:var(--bs-tertiary-bg);min-width:0}
.ssw-calendar-backlog-item{border:1px solid var(--bs-border-color);border-radius:var(--ssw-radius);padding:.6rem;background:var(--bs-body-bg);overflow-wrap:anywhere;font-size:.84rem}
.ssw-calendar-backlog-item[draggable=true]{cursor:grab}
.ssw-calendar-backlog-item.is-selected{outline:2px solid var(--bs-primary)}
.ssw-calendar-auto-slot{font-size:.68rem;line-height:1.3;border:1px dashed var(--bs-primary-border-subtle);background:var(--bs-primary-bg-subtle);color:var(--bs-primary-text-emphasis);border-radius:.35rem;padding:.2rem .3rem;margin-top:.25rem;overflow-wrap:anywhere}
.ssw-calendar-hour-slot{display:block;width:100%;text-align:left;border:1px dashed var(--bs-border-color);border-radius:.3rem;background:transparent;color:var(--bs-secondary-color);font-size:.72rem;padding:.15rem .25rem;margin-top:.24rem}
.ssw-calendar-hour-slot:not(:disabled):hover,.ssw-calendar-hour-slot.is-drop-target{background:var(--bs-primary-bg-subtle);color:var(--bs-primary-text-emphasis);border-color:var(--bs-primary)}
.ssw-calendar-grid.is-week .ssw-calendar-day{min-height:420px}
.ssw-calendar-grid.is-week .ssw-calendar-hour-slot{margin-top:.4rem;padding:.35rem .25rem}
@media(max-width:991.98px){.ssw-calendar-layout{flex-direction:column}.ssw-calendar-sidebar{width:100%;flex:auto;border-right:0!important;border-bottom:1px solid var(--bs-border-color)}.ssw-calendar-sidebar [data-calendar-backlog]{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}
@media(max-width:767.98px){.ssw-calendar-layout>[data-calendar-grid-wrap]{overflow-x:auto}.ssw-calendar-layout .ssw-calendar-grid.is-week{min-width:770px}.ssw-calendar-layout .ssw-calendar-grid:not(.is-week){min-width:650px}.ssw-calendar-layout .ssw-calendar-weekdays{min-width:650px}.ssw-calendar-grid.is-week .ssw-calendar-day{min-height:420px}}

/* v1.1.27: Website-filtered Content calendar with true Week time-slot positioning. */
.ssw-calendar-website-picker{width:min(250px,60vw)}
.ssw-calendar-website-picker .input-group-text{background:var(--bs-tertiary-bg)}
.ssw-calendar-day.is-past{background:var(--bs-tertiary-bg);color:var(--bs-secondary-color)}
.ssw-calendar-day.is-past .ssw-calendar-day-label{opacity:.55;cursor:not-allowed}
.ssw-calendar-day.is-past .ssw-calendar-event{border-color:var(--bs-border-color);background:var(--bs-body-bg);opacity:.78}
.ssw-calendar-day.is-past .ssw-calendar-auto-slot{display:none}
.ssw-calendar-grid.is-week .ssw-calendar-hour-slot{display:block;margin-top:.4rem;padding:0;border:1px dashed var(--bs-border-color);border-radius:.4rem;min-width:0;background:var(--bs-body-bg);text-align:left;color:var(--bs-body-color)}
.ssw-calendar-grid.is-week .ssw-calendar-hour-slot.is-locked{background:var(--bs-tertiary-bg);border-color:var(--bs-border-color);opacity:.78}
.ssw-calendar-grid.is-week .ssw-calendar-hour-slot:not(.is-locked).is-drop-target{outline:2px solid var(--bs-primary);outline-offset:-2px;background:var(--bs-primary-bg-subtle)}
.ssw-calendar-slot-label{display:block;width:100%;padding:.35rem .4rem;text-align:left;color:var(--bs-secondary-color);background:transparent;border:0;font-size:.72rem;font-weight:600}
.ssw-calendar-slot-label:disabled{cursor:not-allowed;opacity:.68}
.ssw-calendar-slot-label:not(:disabled):hover{color:var(--bs-primary);background:var(--bs-primary-bg-subtle)}
.ssw-calendar-slot-label:focus-visible{outline:2px solid var(--bs-primary);outline-offset:-2px}
.ssw-calendar-slot-content{padding:0 .3rem .3rem;min-height:.1rem}
.ssw-calendar-slot-content:empty{padding:0;min-height:0}
.ssw-calendar-slot-content .ssw-calendar-event{margin-top:.15rem;margin-bottom:.25rem;background:#f3f7ff;border:1px solid #d0def3;opacity:1}
.ssw-calendar-grid.is-week .ssw-calendar-day.is-past .ssw-calendar-slot-content .ssw-calendar-event{background:var(--bs-body-bg);opacity:.75;border-color:var(--bs-border-color)}
@media(max-width:767.98px){.ssw-calendar-website-picker{width:min(220px,100%)}}

/* v1.1.31: preserve a usable manual-draft alternative inside the Site Content composer. */
#newContent #siteManualDraft.show{flex:0 1 auto;max-height:56vh;overflow-y:auto;border-top:1px solid var(--bs-border-color)}
#newContent #siteManualDraft.collapsing{flex-shrink:0;overflow:hidden}

/* v1.1.32: compact, consistent native provider monograms in AI Watch tables. */
.ssw-ai-provider-mark{display:inline-flex;width:1.6rem;height:1.6rem;flex:none;align-items:center;justify-content:center;border:1px solid var(--bs-border-color);border-radius:.4rem;color:var(--bs-body-color);background:var(--bs-tertiary-bg);font-size:.95rem;font-weight:700;line-height:1}
.ssw-ai-provider-gemini{color:#3968bd}.ssw-ai-provider-anthropic{color:#a76646}.ssw-ai-provider-xai{color:var(--bs-emphasis-color)}.ssw-ai-provider-perplexity{color:#258f92}
.ssw-ai-prompts-surface [data-ai-watch-progress] .spinner-border{width:.78rem;height:.78rem;border-width:.12rem;vertical-align:middle}


/* v1.1.36: steady Website Profile column under asynchronous scan messages. */
[data-table-id="visibility-profiles"] th:first-child,
[data-table-id="visibility-profiles"] .ssw-profile-website-cell{
  width:248px;min-width:248px;max-width:248px;
  overflow-wrap:anywhere;white-space:normal;
}
.ssw-admin-log-search{max-width:390px}
/* v1.1.37: reuse the Watchpoint Pings Chart.js canvas, with compact filters. */
.ssw-ai-chart-frame{height:320px}
.ssw-ai-results-search{width:190px;max-width:100%;flex:0 1 190px}
.ssw-ai-results-search[hidden]{display:none!important}
@media(max-width:575.98px){
  [data-table-id="visibility-profiles"] th:first-child,
[data-table-id="visibility-profiles"] .ssw-profile-website-cell{
    width:210px;min-width:210px;max-width:210px;
  }
  .ssw-admin-log-search{max-width:100%}
  .ssw-ai-chart-frame{height:270px}
  .ssw-ai-results-controls{width:100%;justify-content:flex-start!important}
  .ssw-ai-results-search{flex:1 1 160px}
  .ssw-ai-results-controls select{max-width:100%}
}


/* v1.1.39: AI Watch provider logos and deliberately bounded result topics. */
.ssw-ai-provider-mark img{width:19px;height:19px;display:block;object-fit:contain}
.ssw-ai-provider-mark{width:1.65rem;height:1.65rem;vertical-align:middle}
.ssw-ai-provider-openai{color:#111827}
.ssw-ai-provider-xai{color:#111827}
.ssw-ai-results-topic-col{
  width:260px;min-width:210px;max-width:260px;
  white-space:normal;overflow-wrap:anywhere;
  font-size:.875rem;font-weight:400;
}
@media(max-width:575.98px){
  .ssw-ai-results-topic-col{width:215px;min-width:195px;max-width:215px}
}

/* v1.1.44: asynchronous scan status stays inline, never adds Website Profile row height. */
.ssw-visibility-status-badge{
  width:1.65rem;height:1.65rem;min-width:1.65rem;
  display:inline-flex;align-items:center;justify-content:center;
  padding:0;line-height:1;vertical-align:middle;cursor:help;
}
.ssw-visibility-status-badge .spinner-border{
  width:.78rem;height:.78rem;border-width:.13rem;
}
.ssw-visibility-status-symbol{font-size:.93rem;font-weight:700;line-height:1}
.ssw-visibility-status-badge:focus-visible{outline:2px solid var(--bs-primary);outline-offset:2px}
/* v1.1.45: an icon, not a button; keep the scan indicator small and focusable. */
.ssw-visibility-status-badge{width:1.15rem;height:1.15rem;min-width:1.15rem;background:transparent;cursor:help}
.ssw-visibility-status-badge .spinner-border{width:.8rem;height:.8rem}
.ssw-visibility-status-check{width:1.05rem;height:1.05rem;display:block}
[data-table-id="visibility-profiles"] tr.ssw-clickable-row{cursor:pointer}
[data-table-id="visibility-profiles"] tr.ssw-clickable-row:focus-visible{outline:2px solid var(--bs-primary);outline-offset:-2px}

/* Bootstrap changes aria-expanded when the evidence/activity card opens. */
.ssw-opp-collapse-toggle,.ssw-opp-collapse-toggle:hover,.ssw-opp-collapse-toggle:focus{
  text-decoration:none!important;
}
.ssw-opp-chevron-open{display:none}
.ssw-opp-collapse-toggle[aria-expanded="true"] .ssw-opp-chevron-closed{display:none}
.ssw-opp-collapse-toggle[aria-expanded="true"] .ssw-opp-chevron-open{display:inline}

/* Date-first Social Publishing availability calendar, responsive within offcanvas. */
.ssw-pub-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem}
.ssw-pub-calendar-grid .ssw-pub-day{min-width:0;padding:.45rem .15rem;font-size:.875rem}
.ssw-pub-calendar-grid .ssw-pub-day:disabled{opacity:.38;background:var(--bs-tertiary-bg);text-decoration:line-through}
.ssw-pub-calendar-grid .ssw-pub-day[aria-pressed="true"]{font-weight:700}

/* v1.1.58: three desktop columns and a distinct automation rail. */
.ssw-profile-automation{background:var(--ssw-bg)}
.ssw-profile-automation .form-check-label{overflow-wrap:anywhere}
@media(min-width:1200px){.ssw-visibility-profile-scroll>.row>.col-xl-4{align-self:stretch}}
@media(max-width:1199.98px){.ssw-profile-automation{margin-top:.25rem}}


/* v1.1.61 — Website Profile five-section workflow. Uses the app's existing theme tokens. */
.ssw-visibility-profile-panel .ssw-visibility-profile-body{overflow:hidden}
.ssw-profile-site-strip{
  display:flex;align-items:flex-end;gap:1.25rem;padding:1rem 1.35rem;
  background:var(--bs-tertiary-bg);border-bottom:1px solid var(--bs-border-color);flex:0 0 auto
}
.ssw-profile-site-select{width:min(310px,38%);flex:0 0 auto;min-width:0}
.ssw-profile-site-select .form-label{font-weight:600}
.ssw-profile-ai-strip{
  min-width:0;display:flex;align-items:center;justify-content:space-between;
  flex:1 1 auto;gap:.85rem;padding:.55rem .65rem .55rem .85rem;
  border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius-lg);
  background:var(--bs-body-bg)
}
.ssw-profile-ai-intro{display:flex;gap:.5rem;align-items:center;font-size:.875rem;min-width:0;color:var(--bs-secondary-color)}
.ssw-profile-ai-intro>.ssw-bi{color:var(--bs-primary);flex-shrink:0}
.ssw-profile-ai-strip>.btn{white-space:nowrap;flex-shrink:0}
.ssw-profile-wizard-layout{display:grid;grid-template-columns:minmax(185px,220px) minmax(0,1fr);flex:1 1 auto;min-height:0}
.ssw-profile-step-rail{
  display:flex;flex-direction:column;gap:.25rem;padding:1.1rem .75rem;
  border-right:1px solid var(--bs-border-color);background:var(--bs-tertiary-bg);
  min-height:0;overflow:auto
}
.ssw-profile-step-tab{
  display:flex;align-items:center;gap:.75rem;width:100%;min-height:42px;
  padding:.55rem .7rem;text-align:left;border:1px solid transparent;
  border-radius:var(--bs-border-radius-lg);background:transparent;color:var(--bs-body-color);
  font-size:.875rem;font-weight:500;transition:background-color .15s ease,color .15s ease
}
.ssw-profile-step-tab:hover{background:var(--bs-secondary-bg)}
.ssw-profile-step-tab.is-active{background:rgba(var(--bs-primary-rgb),.09);color:var(--bs-primary);font-weight:600}
.ssw-profile-step-tab:focus-visible{outline:2px solid var(--bs-primary);outline-offset:1px}
.ssw-profile-step-number{
  display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;
  border-radius:50%;border:1px solid var(--bs-border-color);background:var(--bs-body-bg);
  color:var(--bs-secondary-color);font-size:.76rem;font-weight:600
}
.ssw-profile-step-tab.is-active .ssw-profile-step-number{border-color:var(--bs-primary);color:var(--bs-primary)}
.ssw-profile-step-tab.is-complete .ssw-profile-step-number{background:var(--bs-primary);border-color:var(--bs-primary);color:white}
.ssw-profile-progress{margin-top:auto;padding:1rem .7rem .2rem}
.ssw-profile-progress>.progress{height:6px;background:var(--bs-border-color)}
.ssw-profile-panel-content{display:flex;flex-direction:column;min-width:0;min-height:0;overflow-y:auto;padding:1.35rem 1.6rem}
.ssw-profile-step-pane{flex:1 0 auto;min-width:0}
.ssw-profile-step-pane[hidden],.ssw-profile-step-controls [hidden]{display:none!important}
.ssw-profile-step-heading{margin-bottom:1.25rem}
.ssw-profile-step-heading h3{font-weight:650}
.ssw-profile-step-pane .row.g-3>.col-md-6,.ssw-profile-step-pane .row.g-3>.col-12{min-width:0}
.ssw-profile-step-pane textarea.form-control{min-height:94px;resize:vertical}
.ssw-profile-step-pane input.form-control{min-height:38px}
.ssw-profile-step-pane [data-profile-cta],.ssw-profile-step-pane [data-profile-tone]{font-weight:500}
.ssw-profile-step-pane [data-profile-tone][aria-pressed="true"]{color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.09);border-color:var(--bs-primary)}
.ssw-profile-step-controls{display:flex;gap:.65rem;align-items:center;margin-top:1.5rem;padding-top:1.2rem;border-top:1px solid var(--bs-border-color)}
.ssw-visibility-profile-footer .ssw-profile-save-status{flex:1 1 16rem!important;min-width:12rem}
.ssw-profile-automation{background:var(--bs-tertiary-bg);border-color:var(--bs-border-color)!important;max-width:840px}
.ssw-profile-automation h3{font-weight:600}
.ssw-profile-topics-field.ssw-profile-enhanced textarea{display:none}
.ssw-profile-tag-editor{display:flex;flex-wrap:wrap;gap:.4rem;align-content:flex-start;min-height:94px;
  padding:.5rem;border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius);
  background:var(--bs-body-bg)}
.ssw-profile-tag-editor:focus-within{border-color:var(--bs-primary);box-shadow:0 0 0 .2rem rgba(var(--bs-primary-rgb),.13)}
.ssw-profile-tag-editor input{flex:1 0 125px;min-width:95px;width:100%;outline:0;border:0;box-shadow:none;background:transparent;color:var(--bs-body-color);font-size:.875rem}
.ssw-profile-tag{display:inline-flex;align-items:center;gap:.2rem;max-width:100%;
  padding:.23rem .35rem .23rem .6rem;border-radius:999px;font-size:.8125rem;
  color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.09);overflow-wrap:anywhere}
.ssw-profile-tag-editor.is-blocked .ssw-profile-tag{background:var(--bs-danger-bg-subtle);color:var(--bs-danger-text-emphasis)}
.ssw-profile-tag button{display:grid;place-items:center;border:0;background:none;color:inherit;padding:0 .18rem;font-size:1rem;line-height:1;min-height:22px;min-width:22px}
.ssw-profile-tag button:focus-visible{outline:2px solid var(--bs-primary);border-radius:50%}
@media(max-width:991.98px){
  .ssw-profile-site-strip{padding:.85rem 1rem}
  .ssw-profile-wizard-layout{grid-template-columns:175px minmax(0,1fr)}
  .ssw-profile-panel-content{padding:1rem 1.1rem}
}
@media(max-width:767.98px){
  .ssw-profile-site-strip{flex-direction:column;align-items:stretch;gap:.7rem}
  .ssw-profile-site-select{width:100%}
  .ssw-profile-wizard-layout{display:flex;flex-direction:column}
  .ssw-profile-step-rail{flex-direction:row;flex:0 0 auto;gap:.25rem;padding:.5rem .7rem;
    border-right:0;border-bottom:1px solid var(--bs-border-color);overflow-x:auto}
  .ssw-profile-step-tab{width:auto;flex:0 0 auto;min-height:37px;padding:.4rem .5rem;gap:.45rem}
  .ssw-profile-step-number{height:21px;width:21px;flex-basis:21px}
  .ssw-profile-progress{display:none}
  .ssw-profile-panel-content{flex:1 1 auto;min-height:0;overflow:auto;padding:1rem}
  .ssw-profile-ai-strip{flex-wrap:wrap}
  .ssw-profile-ai-strip>.btn{margin-left:auto}
  .ssw-visibility-profile-footer{padding:.75rem .9rem}
  .ssw-visibility-profile-footer .ssw-profile-save-status{flex-basis:100%!important}
}
@media(prefers-reduced-motion:reduce){.ssw-profile-step-tab{transition:none}}


/* v1.1.63: Subscription management and Website Profile controls. */
/* Bootstrap measures offcanvas width via --bs-offcanvas-width; changing only
   width on a less-specific class leaves the drawer at Bootstrap's 400px while
   its backdrop still fills the viewport. Target the panel itself. */
.offcanvas.offcanvas-end.ssw-admin-subscription-panel{
  --bs-offcanvas-width:70vw;
  width:var(--bs-offcanvas-width);
  max-width:100vw;
}
.ssw-admin-subscription-panel .offcanvas-body{overflow-y:auto}
[data-subscription-row]{cursor:pointer}
[data-subscription-row]:focus-visible{outline:2px solid var(--bs-primary);outline-offset:-2px}
.ssw-profile-site-picker{position:relative}
.ssw-profile-site-picker .ssw-profile-site-icon{position:absolute;left:.95rem;top:50%;transform:translateY(-50%);z-index:1;color:var(--bs-secondary-color);pointer-events:none}
.ssw-profile-site-picker select{padding-left:2.65rem;min-height:54px}
.ssw-profile-ai-strip{min-height:54px}
.ssw-profile-site-pending .ssw-profile-wizard-layout{opacity:.42;filter:grayscale(.35);pointer-events:none}
.ssw-profile-automation{max-width:none}
.ssw-profile-automation [data-visibility-automation-settings]:disabled{opacity:.5}
.ssw-automation-destination{display:flex;align-items:center;gap:.7rem;padding:.7rem .8rem;border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius-lg);background:var(--bs-body-bg);cursor:pointer}
.ssw-automation-destination:has(input:checked){border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.06)}
.ssw-automation-destination-icon{display:grid;place-items:center;font-size:1.25rem;width:30px;height:30px;color:var(--bs-primary)}
.ssw-automation-destination-name{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}
.ssw-automation-day-pills label{margin:0!important}
.ssw-automation-day-pills .form-check{display:inline-flex;align-items:center;padding:.45rem .7rem;border:1px solid var(--bs-border-color);border-radius:999px;background:var(--bs-body-bg);cursor:pointer;gap:.3rem}
.ssw-automation-day-pills .form-check:has(input:checked){border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.08);color:var(--bs-primary)}
.ssw-automation-day-pills .form-check-input{margin:0!important}
@media(max-width:991.98px){.offcanvas.offcanvas-end.ssw-admin-subscription-panel{--bs-offcanvas-width:95vw}}
@media(max-width:767.98px){.offcanvas.offcanvas-end.ssw-admin-subscription-panel{--bs-offcanvas-width:100vw}.ssw-profile-site-picker select{min-height:48px}}

[data-ssw-mfa-panel][hidden]{display:none!important}

.ssw-automation-day-pills .form-check.is-selected{border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.08);color:var(--bs-primary)}
