/**
 * Consolidated Forms, Dashboard, and 403 Stylesheet
 * Combines global webform overrides, dashboard layouts, print media, and custom 403 error page visual features.
 */

:root {
    --crimson: #a72d2d; /* Toned down, muted slate-red for required asterisks and validation highlights */
    --crimson-a04: rgba(167, 45, 45, 0.04);
    --crimson-a18: rgba(167, 45, 45, 0.18);
    --crimson-a32: rgba(167, 45, 45, 0.32);
}

/* --- GLOBAL BRAND HEADLINE OVERRIDES --- */
h1, .h1 {
    font-family: var(--f-display, "Futura PT", "Futura", "Trebuchet MS", sans-serif) !important;
    text-transform: uppercase !important;
}

/* --- GLOBAL BODY BACKGROUND --- */
body {
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 750px), url(https://cdnwest.radnet.com/img/bg-forms.webp) no-repeat top center / 100% auto !important;
    background-color: #ffffff !important;
}


/* ==========================================================================
   SECTION 1: Drupal Webform Overrides
   ========================================================================== */
.webform-submission-form{max-width:920px;margin:var(--space-32) auto;padding:0;background:0 0;border-radius:0;box-shadow:none;font-family:var(--f-sans);color:var(--ink)}.webform-submission-form *{box-sizing:border-box}.webform-submission-form .form-item{margin-bottom:var(--space-20)}.webform-submission-form .form-item:last-child{margin-bottom:0}.webform-submission-form .panel.panel-default,.webform-submission-form .ppg-card{background:var(--off-white);border:1px solid var(--gray-100);border-radius:var(--r-20);padding:var(--space-28);margin-bottom:var(--space-24)}.webform-submission-form .panel.panel-default:last-child,.webform-submission-form .ppg-card:last-child{margin-bottom:0}.webform-submission-form .panel-heading,.webform-submission-form .ppg-card h4,.webform-submission-form .ppg-card h5{font-family:var(--f-display);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--sentinel);margin:0 0 var(--space-20);padding:0 0 var(--space-12);background:0 0;border:0;border-bottom:1px solid var(--gray-100)}.webform-submission-form .panel-heading .panel-title,.webform-submission-form .panel-heading>a{font-family:var(--f-display);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--sentinel);text-decoration:none;display:block}.webform-submission-form .panel-body{padding:0}.webform-submission-form .form-item{position:relative;margin-bottom:var(--space-20)}.webform-submission-form .control-label,.webform-submission-form .form-item>label,.webform-submission-form label{display:block;margin:0 0 var(--space-8);font-family:var(--f-sans);font-size:13px;font-weight:600;letter-spacing:-.005em;color:var(--carbon)}.webform-submission-form .form-required::after,.webform-submission-form .js-form-required::after,.webform-submission-form label.form-required::after{content:" *";color:var(--crimson);font-weight:700}.webform-submission-form .sr-only,.webform-submission-form .visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.webform-submission-form .form-control,.webform-submission-form .form-date,.webform-submission-form .form-email,.webform-submission-form .form-number,.webform-submission-form .form-password,.webform-submission-form .form-search,.webform-submission-form .form-select,.webform-submission-form .form-tel,.webform-submission-form .form-text,.webform-submission-form .form-textarea,.webform-submission-form .form-time,.webform-submission-form .form-url,.webform-submission-form input[type=date],.webform-submission-form input[type=datetime-local],.webform-submission-form input[type=email],.webform-submission-form input[type=number],.webform-submission-form input[type=password],.webform-submission-form input[type=search],.webform-submission-form input[type=tel],.webform-submission-form input[type=text],.webform-submission-form input[type=time],.webform-submission-form input[type=url],.webform-submission-form select,.webform-submission-form textarea{width:100%;max-width:100%;height:48px;padding:12px 16px;font-family:var(--f-sans);font-size:15px;font-weight:400;line-height:1.4;color:var(--ink);background:var(--pure);border:1.5px solid var(--gray-300);border-radius:var(--r-12);transition:border-color .18s var(--ease-expressive),box-shadow .22s var(--spring-m3);-webkit-appearance:none;-moz-appearance:none;appearance:none}.webform-submission-form input::placeholder,.webform-submission-form textarea::placeholder{color:var(--gray-400)}.webform-submission-form input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):hover:not(:focus):not(:disabled),.webform-submission-form select:hover:not(:focus):not(:disabled),.webform-submission-form textarea:hover:not(:focus):not(:disabled){border-color:var(--carbon)}.webform-submission-form input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):focus,.webform-submission-form select:focus,.webform-submission-form textarea:focus{outline:0;border-color:var(--sentinel);border-width:2px;padding:11.5px 15.5px;box-shadow:0 0 0 4px var(--sentinel-a08)}.webform-submission-form .form-textarea,.webform-submission-form textarea{height:auto;min-height:120px;padding-top:14px;padding-bottom:14px;resize:vertical;line-height:1.6}.webform-submission-form .form-textarea:focus,.webform-submission-form textarea:focus{padding:13.5px 15.5px}.webform-submission-form .form-textarea-wrapper{position:relative}.webform-submission-form .form-select,.webform-submission-form select{padding-right:44px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1.5L6 6.5L11 1.5' stroke='%23111' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px;cursor:pointer}.webform-submission-form .form-select:focus,.webform-submission-form select:focus{padding:11.5px 43.5px 11.5px 15.5px}.webform-submission-form .select-wrapper{position:relative}.webform-submission-form input[type=number]::-webkit-inner-spin-button,.webform-submission-form input[type=number]::-webkit-outer-spin-button{height:32px;opacity:.5}.webform-submission-form .form-checkboxes,.webform-submission-form .form-radios,.webform-submission-form .js-webform-checkboxes,.webform-submission-form .js-webform-radios,.webform-submission-form .webform-options-display-one-column{display:grid;gap:4px;margin:0}.webform-submission-form .form-checkboxes .form-item,.webform-submission-form .form-radios .form-item,.webform-submission-form .js-webform-checkboxes .form-item,.webform-submission-form .js-webform-radios .form-item{margin:0}.webform-submission-form .checkbox,.webform-submission-form .radio{margin:0}.webform-submission-form .checkbox label,.webform-submission-form .radio label,.webform-submission-form label.option{position:relative;display:inline-flex;align-items:center;gap:12px;margin:0;padding:8px 12px;font-weight:500;font-size:14px;color:var(--ink);cursor:pointer;border-radius:var(--r-pill);transition:background .18s var(--ease-expressive);-webkit-tap-highlight-color:transparent}.webform-submission-form .checkbox label:hover,.webform-submission-form .radio label:hover,.webform-submission-form label.option:hover{background:var(--sentinel-a04)}.webform-submission-form .checkbox label:active,.webform-submission-form .radio label:active,.webform-submission-form label.option:active{background:var(--sentinel-a08)}.webform-submission-form input[type=checkbox]:not(:where(.form-type-webform-toggle *)){appearance:none;-webkit-appearance:none;position:relative;width:20px;height:20px;margin:0;border:2px solid var(--gray-500);border-radius:4px;background:0 0;cursor:pointer;display:inline-grid;place-content:center;transition:background .18s var(--ease-expressive),border-color .18s var(--ease-expressive);flex-shrink:0}.webform-submission-form input[type=checkbox]::after{content:"";position:absolute;left:50%;top:50%;width:40px;height:40px;background:var(--sentinel);border-radius:50%;transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none;transition:transform .2s var(--ease-expressive),opacity .18s var(--ease);z-index:-1}.webform-submission-form input[type=checkbox]:hover::after{transform:translate(-50%,-50%) scale(1);opacity:.08}.webform-submission-form input[type=checkbox]:focus-visible::after{transform:translate(-50%,-50%) scale(1);opacity:.12}.webform-submission-form input[type=checkbox]::before{content:"";width:14px;height:14px;background:var(--pure);clip-path:polygon(14% 47%,0 60%,38% 100%,100% 24%,86% 11%,38% 73%);transform:scale(0);transition:transform .22s var(--spring-m3)}.webform-submission-form input[type=checkbox]:checked{background:var(--sentinel);border-color:var(--sentinel)}.webform-submission-form input[type=checkbox]:checked::before{transform:scale(1)}.webform-submission-form input[type=radio],.webform-submission-form input[type=radio].form-radio{appearance:none;-webkit-appearance:none;position:relative;width:20px;height:20px;margin:0;border:2px solid var(--gray-500);border-radius:50%;background:0 0;cursor:pointer;display:inline-grid;place-content:center;transition:border-color .18s var(--ease-expressive);flex-shrink:0}.webform-submission-form input[type=radio]::after{content:"";position:absolute;left:50%;top:50%;width:40px;height:40px;background:var(--sentinel);border-radius:50%;transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none;transition:transform .2s var(--ease-expressive),opacity .18s var(--ease);z-index:-1}.webform-submission-form input[type=radio]:hover::after{transform:translate(-50%,-50%) scale(1);opacity:.08}.webform-submission-form input[type=radio]:focus-visible::after{transform:translate(-50%,-50%) scale(1);opacity:.12}.webform-submission-form input[type=radio]::before{content:"";width:10px;height:10px;background:var(--sentinel);border-radius:50%;transform:scale(0);transition:transform .22s var(--spring-m3)}.webform-submission-form input[type=radio]:checked{border-color:var(--sentinel)}.webform-submission-form input[type=radio]:checked::before{transform:scale(1)}.webform-submission-form .webform-options-display-side-by-side{display:flex;flex-wrap:wrap;gap:4px}.webform-submission-form .webform-options-display-three-columns,.webform-submission-form .webform-options-display-two-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.webform-submission-form .webform-options-display-three-columns{grid-template-columns:repeat(3,1fr)}.webform-submission-form .form-radios--segmented,.webform-submission-form .webform-options-display-buttons{display:inline-flex;flex-wrap:wrap;border:1.5px solid var(--gray-300);border-radius:var(--r-pill);overflow:hidden;background:var(--pure);padding:0;gap:0}.webform-submission-form .form-radios--segmented .form-item,.webform-submission-form .webform-options-display-buttons .form-item{margin:0;border-right:1px solid var(--gray-300)}.webform-submission-form .form-radios--segmented .form-item:last-child,.webform-submission-form .webform-options-display-buttons .form-item:last-child{border-right:0}.webform-submission-form .form-radios--segmented input[type=radio]{position:absolute;opacity:0;pointer-events:none}.webform-submission-form .form-radios--segmented label,.webform-submission-form .webform-options-display-buttons label{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:0;padding:10px 18px;white-space:nowrap;font-family:var(--f-sans);font-weight:600;font-size:13px;color:var(--carbon);cursor:pointer;border-radius:0;background:0 0;transition:background .18s var(--ease-expressive),color .18s var(--ease)}.webform-submission-form .form-radios--segmented label:hover{background:var(--sentinel-a04)}.webform-submission-form .form-radios--segmented input[type=radio]:checked+.label-wrap,.webform-submission-form .form-radios--segmented label:has(input:checked){background:var(--sentinel-a12);color:var(--sentinel)}.webform-submission-form .form-radios--segmented label::before{content:"";display:inline-block;width:0;height:14px;background:var(--sentinel);clip-path:polygon(14% 47%,0 60%,38% 100%,100% 24%,86% 11%,38% 73%);transform:scale(0);transform-origin:center;opacity:0;margin-right:0;vertical-align:middle;transition:width .28s var(--ease-expressive),margin-right .28s var(--ease-expressive),transform .36s var(--spring-m3),opacity .2s var(--ease-expressive)}.webform-submission-form .form-radios--segmented label:has(input:checked)::before{width:14px;margin-right:8px;transform:scale(1);opacity:1}.webform-submission-form .form-checkboxes--chips{display:flex;flex-wrap:wrap;gap:8px}.webform-submission-form .form-checkboxes--chips .form-item{margin:0}.webform-submission-form .form-checkboxes--chips input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.webform-submission-form .form-checkboxes--chips label{display:inline-flex;align-items:center;gap:8px;margin:0;padding:8px 16px;font-family:var(--f-sans);font-weight:600;font-size:13px;color:var(--carbon);background:var(--pure);border:1.5px solid var(--gray-300);border-radius:var(--r-pill);cursor:pointer;transition:background .18s var(--ease-expressive),border-color .18s var(--ease-expressive),color .18s var(--ease)}.webform-submission-form .form-checkboxes--chips label:hover{background:var(--sentinel-a04);border-color:var(--sentinel)}.webform-submission-form .form-checkboxes--chips label:has(input:checked){background:var(--sentinel-a12);border-color:var(--sentinel);color:var(--sentinel)}.webform-submission-form .form-checkboxes--chips label::before{content:"";display:inline-block;width:0;height:14px;background:var(--sentinel);clip-path:polygon(14% 47%,0 60%,38% 100%,100% 24%,86% 11%,38% 73%);transform:scale(0);transform-origin:center;opacity:0;margin-right:0;vertical-align:middle;transition:width .28s var(--ease-expressive),margin-right .28s var(--ease-expressive),transform .36s var(--spring-m3),opacity .2s var(--ease-expressive)}.webform-submission-form .form-checkboxes--chips label:has(input:checked)::before{width:14px;margin-right:8px;transform:scale(1);opacity:1}.webform-submission-form fieldset{border:1px solid var(--gray-100);border-radius:var(--r-12);padding:var(--space-20) var(--space-20) var(--space-16);margin:0 0 var(--space-20);background:var(--pure)}.webform-submission-form .fieldset__legend,.webform-submission-form fieldset legend{font-family:var(--f-sans);font-size:13px;font-weight:700;color:var(--carbon);padding:0 var(--space-8);margin-left:calc(-1 * var(--space-8));letter-spacing:-.005em}.webform-submission-form .fieldset-legend,.webform-submission-form .fieldset__legend-text{font-family:var(--f-sans);font-size:13px;font-weight:700;color:var(--carbon);letter-spacing:-.005em}.webform-submission-form .fieldset-wrapper,.webform-submission-form .fieldset__content{padding-top:var(--space-12)}.webform-submission-form fieldset fieldset{border:0;padding:0;margin:0;background:0 0}.webform-submission-form fieldset fieldset>legend{padding:0;margin:0 0 var(--space-12)}.webform-submission-form .form-type-processed-text{margin-bottom:var(--space-20)}.webform-submission-form .form-type-processed-text h2,.webform-submission-form .form-type-processed-text h3,.webform-submission-form .form-type-processed-text h4,.webform-submission-form .form-type-processed-text h5,.webform-submission-form .form-type-processed-text h6{font-family:var(--f-display);font-weight:700;font-size:18px;letter-spacing:-.005em;color:var(--carbon);margin:0 0 var(--space-8);padding:0}.webform-submission-form .form-type-processed-text p{margin:0 0 var(--space-8);font-size:14px;color:var(--gray-600);line-height:1.55}.webform-submission-form .form-no-label>label{display:none}.webform-submission-form .description,.webform-submission-form .help-block,.webform-submission-form .webform-element-description{margin-top:var(--space-6);font-size:12px;line-height:1.55;color:var(--gray-500)}.webform-submission-form .description p:first-child,.webform-submission-form .webform-element-description p:first-child{margin-top:0}.webform-submission-form .description p:last-child,.webform-submission-form .webform-element-description p:last-child{margin-bottom:0}.webform-submission-form .webform-element-help{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:6px;border-radius:50%;background:var(--gray-200);color:var(--gray-600);font-size:11px;font-weight:700;cursor:help;transition:background .15s var(--ease),color .15s var(--ease)}.webform-submission-form .webform-element-help:hover{background:var(--sentinel);color:var(--pure)}.webform-submission-form .form-actions{display:flex;flex-wrap:wrap;gap:var(--space-12);margin-top:var(--space-32);padding:var(--space-20) 0 0}.webform-submission-form .btn,.webform-submission-form .button,.webform-submission-form .form-submit{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 24px;font-family:var(--f-sans);font-size:14px;font-weight:600;line-height:1;letter-spacing:.005em;text-decoration:none;border:1px solid transparent;border-radius:var(--r-pill);cursor:pointer;overflow:hidden;transition:background .18s var(--ease-expressive),border-color .18s var(--ease-expressive),color .18s var(--ease),transform .18s var(--spring-m3),box-shadow .22s var(--spring-m3);-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}.webform-submission-form .btn::before,.webform-submission-form .button::before{content:"";position:absolute;inset:0;background:currentColor;opacity:0;pointer-events:none;transition:opacity .18s var(--ease-expressive)}.webform-submission-form .btn:hover::before,.webform-submission-form .button:hover::before{opacity:.08}.webform-submission-form .btn:focus-visible::before,.webform-submission-form .button:focus-visible::before{opacity:.12}.webform-submission-form .btn:active,.webform-submission-form .button:active{transform:scale(.97);transition-duration:80ms}.webform-submission-form .btn-primary,.webform-submission-form .button--primary,.webform-submission-form .webform-button--complete,.webform-submission-form .webform-button--next,.webform-submission-form .webform-button--submit{background:var(--carbon)!important;color:var(--pure)!important;border-color:var(--carbon)!important}.webform-submission-form .btn-primary:hover,.webform-submission-form .button--primary:hover,.webform-submission-form .webform-button--complete:hover,.webform-submission-form .webform-button--next:hover,.webform-submission-form .webform-button--submit:hover{transform:translateY(-1px);box-shadow:0 12px 28px -10px var(--carbon-a32)}.webform-submission-form .btn-primary:focus-visible,.webform-submission-form .button--primary:focus-visible,.webform-submission-form .webform-button--complete:focus-visible,.webform-submission-form .webform-button--next:focus-visible,.webform-submission-form .webform-button--submit:focus-visible{outline:3px solid var(--sentinel-a32);outline-offset:2px}.webform-submission-form .btn-default,.webform-submission-form .webform-button--draft,.webform-submission-form .webform-button--preview,.webform-submission-form .webform-button--previous{background:var(--gray-50)!important;color:var(--carbon)!important;border-color:var(--gray-200)!important}.webform-submission-form .btn-default:hover,.webform-submission-form .webform-button--draft:hover,.webform-submission-form .webform-button--preview:hover,.webform-submission-form .webform-button--previous:hover{background:var(--gray-100);border-color:var(--gray-300)}.webform-submission-form .btn-danger{background:var(--pure);color:var(--crimson);border-color:var(--gray-200)}.webform-submission-form .btn-danger:hover{background:var(--crimson-a04);border-color:var(--crimson-a32)}.webform-submission-form .btn-success{background:var(--pure);color:var(--sentinel);border-color:var(--gray-200)}.webform-submission-form .btn-success:hover{background:var(--sentinel-a04);border-color:var(--sentinel)}.webform-submission-form .btn-sm{min-height:32px;padding:6px 14px;font-size:12px}.webform-submission-form .btn.icon-only{width:32px;min-height:32px;padding:0;border-radius:50%}.webform-submission-form .webform-message__link{position:absolute;top:12px;right:14px;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1;color:var(--gray-500);text-decoration:none;border-radius:50%;transition:background .15s var(--ease),color .15s var(--ease)}.webform-submission-form .webform-message__link:hover{background:var(--carbon-a08);color:var(--carbon)}.webform-submission-form .container-inline,.webform-submission-form .form-inline{display:flex;flex-wrap:wrap;gap:var(--space-8);align-items:flex-start}.webform-submission-form .container-inline .form-item,.webform-submission-form .form-inline .form-item{margin:0}.webform-submission-form .container-inline .form-select,.webform-submission-form .form-inline .form-select{min-width:100px}.webform-submission-form .webform-address--wrapper,.webform-submission-form .webform-location-geocomplete--wrapper{background:0 0;border:0;padding:0}.webform-submission-form .webform-composite-hidden-title>legend{display:none}.webform-submission-form .webform-composite-hidden-title .fieldset__content{padding-top:0}.webform-submission-form .webform-progress{margin-bottom:var(--space-32);padding-bottom:var(--space-24);border-bottom:1px solid var(--gray-100)}.webform-submission-form .progress-tracker,.webform-submission-form .webform-progress-tracker{list-style:none!important;display:flex!important;justify-content:space-between!important;align-items:flex-start!important;padding:0!important;margin:0 0 var(--space-20)!important;position:relative;counter-reset:none}.webform-submission-form .progress-tracker--center{justify-content:space-between!important}.webform-submission-form .progress-step{list-style:none!important;flex:1 1 0!important;position:relative;text-align:center;padding:0!important;margin:0!important;min-width:0}.webform-submission-form .progress-step::after,.webform-submission-form .progress-step::before{content:none!important}.webform-submission-form .progress-tracker .progress-step:not(:last-child)::after{content:""!important;position:absolute;top:17px;left:calc(50% + 22px);right:calc(-50% + 22px);height:2px;background:var(--gray-200);z-index:0;display:block}.webform-submission-form .progress-tracker .progress-step.is-complete:not(:last-child)::after{background:var(--sentinel)}.webform-submission-form .progress-marker{display:flex!important;align-items:center;justify-content:center;width:36px!important;height:36px!important;margin:0 auto 12px!important;background:var(--pure)!important;border:2px solid var(--gray-200)!important;border-radius:50%!important;color:var(--gray-500)!important;font-family:var(--f-tabular)!important;font-size:13px!important;font-weight:700!important;position:relative;z-index:1;box-shadow:none!important;line-height:1;transition:background .18s var(--ease-expressive),border-color .18s var(--ease-expressive)}.webform-submission-form .progress-marker::before{content:attr(data-text)!important;display:block;position:static!important;transform:none!important;background:0 0!important;width:auto!important;height:auto!important}.webform-submission-form .progress-marker::after{content:none!important;display:none!important}.webform-submission-form .progress-step.is-active .progress-marker{background:var(--sentinel)!important;border-color:var(--sentinel)!important;color:var(--pure)!important}.webform-submission-form .progress-step.is-complete .progress-marker{background:var(--sentinel)!important;border-color:var(--sentinel)!important;color:var(--pure)!important}.webform-submission-form .progress-step.is-complete .progress-marker::before{content:""!important;width:14px!important;height:14px!important;background:var(--pure)!important;clip-path:polygon(14% 47%,0 60%,38% 100%,100% 24%,86% 11%,38% 73%)}.webform-submission-form .progress-text{display:block;margin:0;padding:0}.webform-submission-form .progress-title{display:block;font-family:var(--f-sans);font-size:12px;font-weight:600;color:var(--gray-500);text-align:center;line-height:1.4;letter-spacing:-.005em;margin:0;padding:0 4px}.webform-submission-form .progress-step.is-active .progress-title{color:var(--carbon)}.webform-submission-form .progress-step.is-complete .progress-title{color:var(--sentinel)}.webform-submission-form .webform-progress__status{font-size:12px;color:var(--gray-500);text-align:center;margin-top:var(--space-8)}.webform-submission-form .form-managed-file,.webform-submission-form .js-form-managed-file{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-12);min-height:64px;padding:var(--space-16) var(--space-18);background:var(--gray-50);border:1.5px dashed var(--gray-300);border-radius:var(--r-12);transition:border-color .18s var(--ease),background .18s var(--ease)}.webform-submission-form .form-managed-file:hover,.webform-submission-form .js-form-managed-file:hover{border-color:var(--sentinel);background:var(--sentinel-a04)}.webform-submission-form .form-managed-file:focus-within,.webform-submission-form .js-form-managed-file:focus-within{border-style:solid;border-color:var(--sentinel);background:var(--pure);box-shadow:0 0 0 4px var(--sentinel-a08)}.webform-submission-form input[type=file],.webform-submission-form input[type=file].form-file{flex:1 1 auto;min-width:0;height:auto;font-family:var(--f-sans);font-size:13px;color:var(--gray-600);background:0 0;border:0;border-radius:0;padding:0;box-shadow:none;cursor:pointer}.webform-submission-form input[type=file]:focus{box-shadow:none;outline:0}.webform-submission-form input[type=file]::file-selector-button{display:inline-flex;align-items:center;margin-right:14px;padding:8px 18px;font-family:var(--f-sans);font-size:13px;font-weight:600;color:var(--carbon);background:var(--pure);border:1.5px solid var(--gray-300);border-radius:var(--r-pill);cursor:pointer;transition:background .18s var(--ease-expressive),border-color .18s var(--ease-expressive),color .18s var(--ease)}.webform-submission-form input[type=file]::file-selector-button:hover{background:var(--sentinel-a04);border-color:var(--sentinel);color:var(--sentinel)}.webform-submission-form input[type=file]::file-selector-button:active{background:var(--sentinel-a12)}.webform-submission-form .webform-file-button{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--carbon);color:var(--pure);border-radius:var(--r-pill);font-family:var(--f-sans);font-size:13px;font-weight:600;cursor:pointer;transition:background .18s var(--ease-expressive),transform .18s var(--spring-m3),box-shadow .22s var(--spring-m3)}.webform-submission-form .webform-file-button:hover{background:var(--ink);transform:translateY(-1px);box-shadow:0 10px 22px -8px var(--carbon-a32)}.webform-submission-form .webform-file-button:active{transform:scale(.97)}.webform-submission-form .webform-file-button-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.webform-submission-form .file-status{color:var(--gray-500);font-size:13px}.webform-submission-form .webform-managed-file-preview-default{margin-top:var(--space-12);padding:var(--space-12);background:var(--pure);border:1px solid var(--gray-100);border-radius:var(--r-8);font-size:13px}.webform-submission-form .file-icon{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;background:var(--sentinel-a08);color:var(--sentinel);border-radius:var(--r-8);margin-right:10px}.webform-submission-form .file-size{color:var(--gray-500);font-family:var(--f-tabular);font-size:12px;margin-left:8px}.webform-submission-form .form-range,.webform-submission-form input[type=range]{width:100%;height:6px;padding:0;background:var(--gray-200);border:0;border-radius:var(--r-pill);-webkit-appearance:none;appearance:none;cursor:pointer;transition:background .18s var(--ease)}.webform-submission-form input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;background:var(--sentinel);border-radius:50%;border:0;box-shadow:0 0 0 8px transparent;cursor:grab;transition:width .18s var(--spring-m3),height .18s var(--spring-m3),box-shadow .18s var(--ease-expressive)}.webform-submission-form input[type=range]:focus::-webkit-slider-thumb,.webform-submission-form input[type=range]:hover::-webkit-slider-thumb{width:28px;height:28px;box-shadow:0 0 0 8px var(--sentinel-a08)}.webform-submission-form input[type=range]:active::-webkit-slider-thumb{cursor:grabbing;box-shadow:0 0 0 12px var(--sentinel-a12)}.webform-submission-form input[type=range]::-moz-range-thumb{width:20px;height:20px;background:var(--sentinel);border-radius:50%;border:0;box-shadow:0 0 0 8px transparent;cursor:grab;transition:width .18s var(--spring-m3),height .18s var(--spring-m3),box-shadow .18s var(--ease-expressive)}.webform-submission-form input[type=range]:focus::-moz-range-thumb,.webform-submission-form input[type=range]:hover::-moz-range-thumb{width:28px;height:28px;box-shadow:0 0 0 8px var(--sentinel-a08)}.webform-submission-form .form-item-range__output{flex-shrink:0;min-width:80px}.webform-submission-form input[type=color],.webform-submission-form input[type=color].form-color{width:56px;height:44px;padding:4px;background:var(--pure);border:1.5px solid var(--gray-300);border-radius:var(--r-12);cursor:pointer;transition:border-color .18s var(--ease-expressive),box-shadow .22s var(--spring-m3)}.webform-submission-form input[type=color]:hover{border-color:var(--carbon)}.webform-submission-form input[type=color]:focus{outline:0;border-color:var(--sentinel);box-shadow:0 0 0 4px var(--sentinel-a08)}.webform-submission-form input[type=color]::-webkit-color-swatch-wrapper{padding:0;border:0}.webform-submission-form input[type=color]::-webkit-color-swatch{border:0;border-radius:6px}.webform-submission-form input[type=color]::-moz-color-swatch{border:0;border-radius:6px}.webform-submission-form .form-color-output{max-width:140px}.webform-submission-form input[type=date]::-webkit-calendar-picker-indicator,.webform-submission-form input[type=datetime-local]::-webkit-calendar-picker-indicator,.webform-submission-form input[type=month]::-webkit-calendar-picker-indicator,.webform-submission-form input[type=time]::-webkit-calendar-picker-indicator,.webform-submission-form input[type=week]::-webkit-calendar-picker-indicator{filter:invert(8%) sepia(80%) saturate(2600%) hue-rotate(228deg) brightness(60%);cursor:pointer;opacity:.85;transition:opacity .15s var(--ease)}.webform-submission-form input[type=date]:hover::-webkit-calendar-picker-indicator,.webform-submission-form input[type=time]:hover::-webkit-calendar-picker-indicator{opacity:1}.webform-submission-form input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;width:16px;height:16px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2364748b'><path d='M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z'/></svg>");background-size:contain;background-repeat:no-repeat;cursor:pointer;opacity:.7}.webform-submission-form input[type=search]::-webkit-search-cancel-button:hover{opacity:1}.webform-submission-form .form-type-webform-toggle input[type=checkbox],.webform-submission-form .form-type-webform-toggle input[type=checkbox].form-checkbox{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.webform-submission-form .webform-toggle.toggle{position:relative;width:52px;height:32px;background:var(--gray-200);border:2px solid var(--gray-300);border-radius:var(--r-pill);cursor:pointer;transition:background .22s var(--ease-expressive),border-color .22s var(--ease-expressive);display:inline-block;vertical-align:middle;flex-shrink:0}.webform-submission-form .webform-toggle .toggle-slide{position:relative;height:100%}.webform-submission-form .webform-toggle .toggle-blob{position:absolute;top:50%;left:6px;width:16px;height:16px;background:var(--gray-500);border-radius:50%;transform:translateY(-50%);transition:width .28s var(--spring-m3),height .28s var(--spring-m3),left .28s var(--spring-m3),background .22s var(--ease-expressive),transform .28s var(--spring-m3)}.webform-submission-form input[type=checkbox]:checked+.webform-toggle{background:var(--sentinel);border-color:var(--sentinel)}.webform-submission-form input[type=checkbox]:checked+.webform-toggle .toggle-blob{width:24px;height:24px;left:22px;background:var(--pure)}.webform-submission-form input[type=checkbox]:checked+.webform-toggle .toggle-blob::after{content:"";position:absolute;inset:0;margin:auto;width:12px;height:12px;background:var(--sentinel);clip-path:polygon(14% 47%,0 60%,38% 100%,100% 24%,86% 11%,38% 73%);transform:scale(0);transition:transform .22s var(--spring-m3) 80ms}.webform-submission-form input[type=checkbox]:checked+.webform-toggle .toggle-blob::after{transform:scale(1)}.webform-submission-form .webform-toggle:hover .toggle-blob{box-shadow:0 0 0 8px var(--sentinel-a08)}.webform-submission-form input[type=checkbox]:focus-visible+.webform-toggle .toggle-blob{box-shadow:0 0 0 10px var(--sentinel-a12)}.webform-submission-form .form-type-webform-terms-of-service{padding:var(--space-16);background:var(--gray-50);border-radius:var(--r-12)}.webform-submission-form .form-type-webform-terms-of-service label{position:relative;display:block;margin:0;padding:2px 0 2px 36px;background:0 0;border-radius:0;font-weight:500;font-size:14px;line-height:1.55;color:var(--ink);cursor:pointer}.webform-submission-form .form-type-webform-terms-of-service label:hover{background:0 0}.webform-submission-form .form-type-webform-terms-of-service input[type=checkbox]{position:absolute;left:0;top:3px}.webform-submission-form .form-type-webform-terms-of-service a{color:var(--sentinel);text-decoration:underline;text-underline-offset:2px}.webform-submission-form .form-type-webform-terms-of-service a:hover{color:var(--carbon)}.webform-submission-form .table-responsive{overflow-x:auto;border:1px solid var(--gray-100);border-radius:var(--r-12)}.webform-submission-form table{width:100%;border-collapse:collapse;font-size:13px}.webform-submission-form table thead th{padding:var(--space-12) var(--space-14);background:var(--gray-50);border-bottom:1px solid var(--gray-200);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-600);text-align:left}.webform-submission-form table tbody td{padding:var(--space-12) var(--space-14);border-bottom:1px solid var(--gray-100)}.webform-submission-form table tbody tr:last-child td{border-bottom:0}.webform-submission-form table.table-hover tbody tr:hover{background:var(--gray-50)}.webform-submission-form .tabledrag-handle{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--gray-400);cursor:grab;text-decoration:none}.webform-submission-form .tabledrag-handle:hover{color:var(--sentinel)}.webform-submission-form .tabledrag-handle:active{cursor:grabbing}.webform-submission-form .input-group{display:flex;align-items:stretch;height:48px;background:var(--pure);border:1.5px solid var(--gray-300);border-radius:var(--r-12);overflow:hidden;transition:border-color .18s var(--ease-expressive),box-shadow .22s var(--spring-m3)}.webform-submission-form .input-group:hover{border-color:var(--carbon)}.webform-submission-form .input-group:focus-within{border-color:var(--sentinel);box-shadow:0 0 0 4px var(--sentinel-a08)}.webform-submission-form .input-group>.form-control,.webform-submission-form .input-group>input,.webform-submission-form .input-group>select,.webform-submission-form .input-group>textarea{flex:1;height:auto;border:0!important;border-radius:0!important;background:0 0!important;box-shadow:none!important;padding:12px 14px!important}.webform-submission-form .input-group-addon{display:inline-flex;align-items:center;padding:0 14px;background:var(--gray-50);color:var(--gray-600);font-size:13px;font-weight:600;border-right:1px solid var(--gray-200)}.webform-submission-form .input-group-addon:last-child{border-right:0;border-left:1px solid var(--gray-200)}.webform-submission-form .input-group:has(input[type=range]){height:auto;padding:16px;align-items:center;gap:16px}.webform-submission-form .input-group:has(input[type=range])>input[type=range]{padding:0!important}.webform-submission-form .input-group:has(input[type=range]) .input-group-addon{background:0 0;border:0;padding:0;font-family:var(--f-tabular);color:var(--carbon)}.webform-submission-form .webform-flexbox{display:flex;gap:var(--space-16);flex-wrap:wrap}.webform-submission-form .webform-flex{flex:1;min-width:220px}.webform-submission-form .webform-flex--1{flex:1}.webform-submission-form .webform-flex--2{flex:2}.webform-submission-form .webform-flex--3{flex:3}.webform-submission-form .webform-flex--container{height:100%}.webform-submission-form .webform-likert-table-wrapper{overflow-x:auto;border:1px solid var(--gray-100);border-radius:var(--r-12);background:var(--pure)}.webform-submission-form .webform-likert-table{width:100%;border-collapse:collapse;font-size:13px}.webform-submission-form .webform-likert-table thead th{padding:var(--space-12) var(--space-10);background:var(--gray-50);border-bottom:1px solid var(--gray-200);font-family:var(--f-sans);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-600);text-align:center;white-space:nowrap}.webform-submission-form .webform-likert-table tbody td{padding:var(--space-14) var(--space-10);text-align:center;border-bottom:1px solid var(--gray-100);vertical-align:middle}.webform-submission-form .webform-likert-table tbody tr:last-child td{border-bottom:0}.webform-submission-form .webform-likert-table tbody tr:nth-child(2n){background:var(--gray-50)}.webform-submission-form .webform-likert-table td:first-child,.webform-submission-form .webform-likert-table th:first-child{text-align:left;font-weight:600;color:var(--carbon);text-transform:none;font-size:13px;letter-spacing:0;width:35%;min-width:180px}.webform-submission-form .webform-likert-table tbody td input[type=radio]{margin:0 auto;vertical-align:middle}.webform-submission-form .form-disabled input,.webform-submission-form .form-disabled select,.webform-submission-form .form-disabled textarea,.webform-submission-form input:disabled,.webform-submission-form select:disabled,.webform-submission-form textarea:disabled{background:var(--gray-50);color:var(--gray-500);cursor:not-allowed;border-color:var(--gray-200)}.webform-submission-form input:disabled:hover,.webform-submission-form select:disabled:hover,.webform-submission-form textarea:disabled:hover{border-color:var(--gray-200)}.webform-submission-form .form-item--error input,.webform-submission-form .form-item--error select,.webform-submission-form .form-item--error textarea,.webform-submission-form input.error,.webform-submission-form select.error,.webform-submission-form textarea.error{border-color:var(--crimson);background:var(--pure)}.webform-submission-form .form-item--error input:hover,.webform-submission-form input.error:hover{border-color:var(--crimson)}.webform-submission-form .form-item--error input:focus,.webform-submission-form input.error:focus,.webform-submission-form select.error:focus,.webform-submission-form textarea.error:focus{border-color:var(--crimson);box-shadow:0 0 0 4px var(--crimson-a18)}.webform-submission-form .form-item--error-message,.webform-submission-form strong.error{display:block;margin-top:var(--space-6);font-size:12px;font-weight:600;color:var(--crimson)}.webform-submission-form .select2-container .select2-selection--multiple,.webform-submission-form .select2-container .select2-selection--single{min-height:48px!important;padding:8px 12px!important;border:1.5px solid var(--gray-300)!important;border-radius:var(--r-12)!important;background:var(--pure)!important}.webform-submission-form .select2-container:hover .select2-selection{border-color:var(--carbon)!important}.webform-submission-form .select2-container--focus .select2-selection,.webform-submission-form .select2-container--open .select2-selection{border-color:var(--sentinel)!important;box-shadow:0 0 0 4px var(--sentinel-a08)!important}.webform-submission-form .select2-selection__rendered{line-height:28px!important;color:var(--ink)!important}.webform-submission-form .iti{width:100%}.webform-submission-form .iti__flag-container{border-radius:var(--r-12) 0 0 var(--r-12)}.webform-submission-form .icheckbox_minimal,.webform-submission-form .iradio_minimal{display:none!important}.webform-submission-form .js-webform-icheck{position:static!important;opacity:1!important}.webform-submission-form .form-type-webform-rating .rateit,.webform-submission-form .webform-rating{display:inline-flex;gap:6px;align-items:center;cursor:pointer;-webkit-tap-highlight-color:transparent}.webform-submission-form .rateit-range,.webform-submission-form .webform-rating .star{display:inline-block;width:32px;height:32px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23cbd5e1'><path d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/></svg>");background-repeat:no-repeat;background-position:center;background-size:contain;cursor:pointer;transition:transform .18s var(--spring-m3)}.webform-submission-form .webform-rating .star:hover{transform:scale(1.15)}.webform-submission-form .rateit-selected,.webform-submission-form .webform-rating .star.is-hover,.webform-submission-form .webform-rating .star.is-selected{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2311174c'><path d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/></svg>")}.webform-submission-form .form-type-webform-signature,.webform-submission-form .webform-signature{position:relative}.webform-submission-form .signature-pad,.webform-submission-form .webform-signature-pad,.webform-submission-form canvas.webform-signature-pad{display:block;width:100%;height:180px;background:var(--pure);border:1.5px solid var(--gray-300);border-radius:var(--r-12);cursor:crosshair;touch-action:none;transition:border-color .18s var(--ease-expressive),box-shadow .22s var(--spring-m3)}.webform-submission-form .signature-pad:hover,.webform-submission-form .webform-signature-pad:hover{border-color:var(--carbon)}.webform-submission-form .signature-pad:focus-within,.webform-submission-form .webform-signature-pad:focus-within{border-color:var(--sentinel);box-shadow:0 0 0 4px var(--sentinel-a08)}.webform-submission-form .webform-signature .button,.webform-submission-form .webform-signature-reset{display:inline-flex;align-items:center;gap:6px;margin-top:var(--space-10);padding:6px 14px;background:var(--pure);color:var(--gray-600);border:1px solid var(--gray-200);border-radius:var(--r-pill);font-size:12px;font-weight:600;cursor:pointer;transition:border-color .15s var(--ease),color .15s var(--ease)}.webform-submission-form .webform-signature-reset:hover{border-color:var(--crimson);color:var(--crimson)}.webform-submission-form .captcha,.webform-submission-form .form-type-captcha{padding:var(--space-16);background:var(--off-white);border:1px solid var(--gray-100);border-radius:var(--r-12)}.webform-submission-form .captcha .fieldset-legend,.webform-submission-form .captcha legend{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-600)}.webform-submission-form .captcha img{max-width:100%;height:auto;border-radius:var(--r-8);margin-bottom:var(--space-12)}.webform-submission-form .g-recaptcha{transform-origin:top left}.webform-submission-form .form-type-webform-email-confirm>.fieldset__content,.webform-submission-form .webform-email-confirm{display:grid;gap:var(--space-16)}.webform-submission-form .form-type-webform-height .fieldset__content,.webform-submission-form .webform-height{display:flex;gap:var(--space-12)}.webform-submission-form .webform-height .form-item{flex:1;margin:0}.webform-submission-form .form-type-webform-telephone .form-item{margin:0}.webform-submission-form .webform-telephone-international{display:flex;flex-direction:column;gap:var(--space-12)}.webform-submission-form .form-type-webform-link .fieldset__content,.webform-submission-form .webform-link{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12)}.webform-submission-form .form-type-markup,.webform-submission-form .form-type-webform-markup{font-size:14px;line-height:1.6;color:var(--gray-600)}.webform-submission-form .form-type-webform-markup>:first-child{margin-top:0}.webform-submission-form .form-type-webform-markup>:last-child{margin-bottom:0}.webform-submission-form .form-type-webform-image-select .fieldset__content,.webform-submission-form .webform-image-select{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-12)}.webform-submission-form .webform-image-select input[type=checkbox],.webform-submission-form .webform-image-select input[type=radio]{position:absolute;opacity:0;pointer-events:none}.webform-submission-form .webform-image-select label{position:relative;display:block;padding:0;margin:0;border:1.5px solid var(--gray-200);border-radius:var(--r-12);background:var(--pure);overflow:hidden;cursor:pointer;transition:border-color .18s var(--ease-expressive),box-shadow .22s var(--spring-m3)}.webform-submission-form .webform-image-select label img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}.webform-submission-form .webform-image-select label .caption{display:block;padding:8px 12px;font-size:12px;font-weight:600;color:var(--carbon)}.webform-submission-form .webform-image-select label:hover{border-color:var(--sentinel)}.webform-submission-form .webform-image-select label:has(input:checked){border-color:var(--sentinel);box-shadow:0 0 0 4px var(--sentinel-a08)}.webform-submission-form .webform-image-select label::after{content:"";position:absolute;top:8px;right:8px;width:28px;height:28px;background:var(--sentinel);border-radius:50%;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'><path d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/></svg>");background-repeat:no-repeat;background-position:center;background-size:16px;transform:scale(0);transform-origin:center;opacity:0;transition:transform .36s var(--spring-m3),opacity .2s var(--ease-expressive);pointer-events:none}.webform-submission-form .webform-image-select label:has(input:checked)::after{transform:scale(1);opacity:1}.webform-submission-form .form-type-webform-computed-token,.webform-submission-form .form-type-webform-computed-twig,.webform-submission-form .webform-computed-wrapper{padding:var(--space-12) var(--space-16);background:var(--sentinel-a04);border-radius:var(--r-12);font-family:var(--f-tabular);font-size:14px;color:var(--carbon)}.webform-submission-form textarea::-webkit-scrollbar{width:10px;height:10px}.webform-submission-form textarea::-webkit-scrollbar-track{background:0 0}.webform-submission-form textarea::-webkit-scrollbar-thumb{background:var(--gray-200);border:2px solid var(--pure);border-radius:var(--r-pill)}.webform-submission-form textarea::-webkit-scrollbar-thumb:hover{background:var(--gray-300)}.webform-submission-form input:focus-visible,.webform-submission-form select:focus-visible,.webform-submission-form textarea:focus-visible{box-shadow:0 0 0 4px var(--sentinel-a18)}.webform-submission-form .row{margin-left:-.75rem;margin-right:-.75rem;margin-bottom:var(--space-20)}.webform-submission-form .row>[class*=col-]{padding-left:.75rem;padding-right:.75rem}.webform-submission-form .row .form-item,.webform-submission-form .row .form-wrapper{margin-bottom:0}.webform-submission-form .row .form-item.form-type-item.form-no-label{font-family:var(--f-sans);font-size:13px;font-weight:600;letter-spacing:-.005em;color:var(--carbon);line-height:1.4;padding-top:0}.webform-submission-form [class*=row] .form-item.form-no-label>label.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.webform-submission-form .text-danger{color:var(--crimson)!important;font-weight:700}.webform-submission-form .webform-progress-tracker{margin:0 0 var(--space-14)}.webform-submission-form .progress-tracker--center{justify-content:center}.webform-submission-form .progress-text{display:flex;flex-direction:column;align-items:center;gap:4px}.webform-submission-form .progress-marker::before,.webform-submission-form .progress-marker[data-text]:empty::before{content:attr(data-text)}.webform-submission-form fieldset>legend>.fieldset-legend{font-family:var(--f-sans);font-size:13px;font-weight:700;color:var(--carbon);letter-spacing:-.005em;padding:0}.webform-submission-form fieldset>legend{padding:0 var(--space-8);margin-left:calc(-1 * var(--space-8));border:0;width:auto}.webform-submission-form .mb-3,.webform-submission-form .mb-4{margin-bottom:var(--space-20)!important}.webform-submission-form .p-0{padding:0!important}.webform-submission-form .webform-element--title-inline{margin-top:var(--space-12)}.webform-submission-form .webform-element--title-inline>label{display:block;margin:0 0 var(--space-8);font-family:var(--f-sans);font-size:13px;font-weight:600;letter-spacing:-.005em;color:var(--carbon)}.webform-submission-form .form-radios .form-item label.option,.webform-submission-form .js-webform-radios .form-item label.option{margin:0;font-weight:500;font-size:14px;color:var(--ink);cursor:pointer}.webform-submission-form .js-form-item.form-item.form-type-checkbox,.webform-submission-form .js-form-item.form-item.form-type-radio{display:flex;align-items:center;gap:12px;padding:8px 12px;margin:0;border-radius:var(--r-pill);transition:background .18s var(--ease-expressive)}.webform-submission-form .js-form-item.form-item.form-type-checkbox:hover,.webform-submission-form .js-form-item.form-item.form-type-radio:hover{background:var(--sentinel-a04)}.webform-submission-form .js-form-item.form-item.form-type-checkbox>label.option,.webform-submission-form .js-form-item.form-item.form-type-radio>label.option{padding:0;background:0 0;border-radius:0;margin:0}.webform-submission-form .js-form-item.form-item.form-type-checkbox>label.option:hover,.webform-submission-form .js-form-item.form-item.form-type-radio>label.option:hover{background:0 0}@media (prefers-reduced-motion:reduce){.webform-submission-form *,.webform-submission-form ::after,.webform-submission-form ::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}}body.forms-page .dls-index-view.forms-index-head{padding-bottom:0}body.forms-page .dls-index-stats{margin-bottom:0;border-bottom:0}body.forms-page .chapter{padding-top:40px;padding-bottom:96px}body.forms-page .webform-submission-form{margin:0 auto var(--space-32)}.webform-submission-form>.form-wrapper,.webform-submission-form>.js-form-wrapper,.webform-submission-form>[data-drupal-selector],.webform-submission-form>[data-webform-key]{background:0 0!important;border:0!important;box-shadow:none!important;padding:0!important}.webform-submission-form .progress-marker,.webform-submission-form .progress-tracker .progress-marker{font-family:var(--f-tabular)!important;font-size:13px!important;font-weight:700!important;line-height:1!important;text-indent:0!important;overflow:visible!important}.webform-submission-form .progress-marker::before{content:attr(data-text)!important;color:inherit!important;font:inherit!important;display:block!important;text-align:center!important;line-height:1!important;width:auto!important;height:auto!important;background:0 0!important;position:static!important;transform:none!important;clip-path:none!important;opacity:1!important}.webform-submission-form .progress-step.is-active .progress-marker,.webform-submission-form .progress-step.is-active .progress-marker::before{color:var(--pure)!important}.webform-submission-form .progress-step.is-complete .progress-marker::before{content:""!important;width:14px!important;height:14px!important;background:var(--pure)!important;clip-path:polygon(14% 47%,0 60%,38% 100%,100% 24%,86% 11%,38% 73%)!important;display:block!important}.webform-submission-form .form-actions .btn,.webform-submission-form .form-actions .button,.webform-submission-form .form-actions input[type=submit],.webform-submission-form input[type=submit].button,.webform-submission-form input[type=submit].form-submit{font-family:var(--f-sans)!important;font-weight:600!important;font-size:14px!important;border-radius:var(--r-pill)!important;border-width:1px!important;border-style:solid!important;min-height:44px!important;padding:10px 24px!important}.webform-submission-form .webform-button--complete,.webform-submission-form .webform-button--next,.webform-submission-form .webform-button--submit,.webform-submission-form input[type=submit].webform-button--complete,.webform-submission-form input[type=submit].webform-button--next,.webform-submission-form input[type=submit].webform-button--submit{background:var(--carbon)!important;background-color:var(--carbon)!important;background-image:none!important;color:var(--pure)!important;border-color:var(--carbon)!important}.webform-submission-form .webform-button--draft,.webform-submission-form .webform-button--preview,.webform-submission-form .webform-button--previous,.webform-submission-form input[type=submit].webform-button--draft,.webform-submission-form input[type=submit].webform-button--preview,.webform-submission-form input[type=submit].webform-button--previous{background:var(--gray-50)!important;background-color:var(--gray-50)!important;background-image:none!important;color:var(--carbon)!important;border-color:var(--gray-200)!important}body.path-webform{background:var(--off-white)!important;font-family:var(--f-sans)!important;margin:0!important}body.path-webform::before{display:none!important}body.path-webform .site-header,body.path-webform .social-bar{display:none!important}body.path-webform main .layout-container{max-width:920px!important;margin:40px auto!important;background:var(--pure)!important;padding:var(--space-32)!important;border-radius:var(--r-16)!important;box-shadow:0 1px 2px var(--carbon-a04),0 8px 24px -12px var(--carbon-a08)!important}body.path-webform .main-content__container{max-width:100%!important;padding:0!important}body.path-webform .messages-list{padding:0!important;margin:var(--space-16) auto!important;max-width:1200px}#block-radnet-forms-theme-page-title{margin-top:0!important;margin-bottom:var(--space-16)!important}#block-radnet-forms-theme-page-title h1{text-align:center!important}body.path-webform h1.page-title{font-family:var(--f-display)!important;font-size:clamp(28px,3.6vw,40px)!important;font-weight:800!important;letter-spacing:-.02em!important;color:var(--carbon)!important;text-align:center!important;margin:0 0 var(--space-24)!important}body.path-webform .webform-submission-form h2,body.path-webform .webform-submission-form h3,body.path-webform legend{text-align:left!important;width:auto!important}.custom-header-white{background:var(--pure)!important;padding:var(--space-24) 0!important;text-align:center!important;width:100%!important;border-bottom:1px solid var(--gray-100)!important}.custom-header-logo{width:180px!important;height:auto!important;display:inline-block!important}#block-radnet-forms-theme-customheaderbanner{margin:auto 15px!important}body.path-webform input[type=date]:focus,body.path-webform input[type=email]:focus,body.path-webform input[type=number]:focus,body.path-webform input[type=password]:focus,body.path-webform input[type=search]:focus,body.path-webform input[type=tel]:focus,body.path-webform input[type=text]:focus,body.path-webform input[type=time]:focus,body.path-webform input[type=url]:focus,body.path-webform select:focus,body.path-webform textarea:focus{color:var(--ink)!important;background:var(--pure)!important;border-color:var(--sentinel)!important;outline:0!important;box-shadow:0 0 0 4px var(--sentinel-a08)!important}body.path-webform input.form-checkbox:checked,body.path-webform input[type=checkbox]:checked{background-color:var(--sentinel)!important;border-color:var(--sentinel)!important}body.path-webform input.form-radio:checked,body.path-webform input[type=radio]:checked{background-color:var(--sentinel)!important;border-color:var(--sentinel)!important}body.path-webform .row .form-item,body.path-webform .row .js-form-item{max-width:none!important}input.js-form-file[type=file]{width:100%!important}.consent-notice-box{background:var(--sentinel-a04)!important;border:1px solid var(--sentinel-a18)!important;color:var(--carbon)!important;padding:var(--space-20) var(--space-24)!important;border-radius:var(--r-12)!important;margin:var(--space-20) 0!important;display:block!important}.consent-notice-box .form-item{display:flex!important;align-items:flex-start!important;gap:var(--space-12)!important}.consent-notice-box label{font-weight:600!important;font-size:15px!important;display:inline!important;margin:0!important;cursor:pointer!important;color:var(--carbon)!important}.consent-notice-box input[type=checkbox]{flex-shrink:0!important;margin-top:2px!important;width:22px!important;height:22px!important}.custom-signature-pencil .js-webform-signature-pad,.webform-signature-pad{position:relative!important;background:var(--pure)!important;border:1.5px solid var(--gray-300)!important;border-radius:var(--r-12)!important;padding:var(--space-12)!important;padding-bottom:4rem!important;display:flex!important;flex-direction:column!important;transition:border-color .18s var(--ease-expressive),box-shadow .22s var(--spring-m3)}.custom-signature-pencil .js-webform-signature-pad:hover,.webform-signature-pad:hover{border-color:var(--carbon)!important}.custom-signature-pencil .js-webform-signature-pad:focus-within,.webform-signature-pad:focus-within{border-color:var(--sentinel)!important;box-shadow:0 0 0 4px var(--sentinel-a08)!important}.custom-signature-pencil .js-webform-signature-pad canvas{cursor:crosshair!important;width:100%!important;touch-action:none}.custom-signature-pencil .description,.custom-signature-pencil .webform-element-description,.custom-signature-pencil [class*=description],[id*=your-signature--description]{display:none!important}.custom-signature-pencil .webform-signature-pad .button,.webform-signature-pad .button{position:absolute!important;bottom:8px!important;right:8px!important;background:var(--pure)!important;color:var(--gray-600)!important;border:1px solid var(--gray-200)!important;padding:6px 14px!important;border-radius:var(--r-pill)!important;font-family:var(--f-sans)!important;font-size:12px!important;font-weight:600!important;cursor:pointer!important;margin:0!important;z-index:5!important;transition:border-color .15s var(--ease),color .15s var(--ease)!important}.custom-signature-pencil .webform-signature-pad .button:hover,.webform-signature-pad .button:hover{border-color:var(--crimson)!important;color:var(--crimson)!important;background:var(--pure)!important}body.path-webform .form-actions,body.path-webform .webform-actions,body.path-webform [class*=form-actions]{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:100%!important;text-align:center!important;float:none!important;clear:both!important;border-top:0!important;padding-top:var(--space-20)!important;margin-top:var(--space-28)!important;gap:var(--space-12)!important}body.path-webform .button--primary,body.path-webform .webform-button--submit,body.path-webform button[type=submit].webform-button--submit,body.path-webform input[type=submit].webform-button--submit{display:block!important;width:100%!important;max-width:540px!important;padding:14px 35px!important;font-family:var(--f-sans)!important;font-size:16px!important;font-weight:600!important;border-radius:var(--r-pill)!important;margin:var(--space-12) auto!important;text-transform:none!important;float:none!important;min-height:52px!important}body.path-webform #edit-wizard-next,body.path-webform .webform-button--complete,body.path-webform .webform-button--next{padding-right:48px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 3 5 5-5 5'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 22px center!important;background-size:14px 14px!important;background-color:var(--carbon)!important}body.path-webform #edit-wizard-prev,body.path-webform .webform-button--previous{padding-left:48px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23111' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m10 3-5 5 5 5'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:left 22px center!important;background-size:14px 14px!important;background-color:var(--gray-50)!important;max-width:540px!important;width:100%!important;margin:0 auto!important}body.path-webform .webform-button--reset{background:0 0!important;border:0!important;color:var(--gray-500)!important;text-decoration:underline!important;font-size:14px!important;cursor:pointer!important;margin-top:10px!important;padding:6px 12px!important;min-height:auto!important}.radnet-confirmation{max-width:580px!important;margin:3rem auto!important;text-align:center!important;display:flex!important;flex-direction:column!important;align-items:center!important;width:100%!important}.radnet-confirmation .rounded-circle{display:flex!important;align-items:center!important;justify-content:center!important;width:80px!important;height:80px!important;min-width:80px!important;min-height:80px!important;flex-shrink:0!important;background:#d1e7dd!important;color:#0f5132!important;font-size:2.5rem!important;line-height:1!important;border-radius:50%!important;margin-bottom:var(--space-20)!important}.radnet-confirmation .card{background:#d1e7dd!important;border:0!important;padding:var(--space-24)!important;border-radius:var(--r-16)!important;width:100%!important;box-sizing:border-box!important;box-shadow:0 1px 2px var(--carbon-a04),0 8px 24px -12px var(--carbon-a08)!important}.radnet-confirmation .card-title{color:#0f5132!important;font-family:var(--f-display)!important;font-weight:700!important;font-size:1.5rem!important;margin-bottom:.5rem!important}.radnet-confirmation .card-text{color:#0f5132!important;font-size:1.15rem!important;line-height:1.5!important}.btn-confirmation-purple,.radnet-confirmation .btn-confirmation-purple{background:var(--deephealth,#a10693)!important;background-image:linear-gradient(135deg,var(--halo,#9d035b) 0,var(--deephealth,#a10693) 100%)!important;color:var(--pure)!important;padding:14px 42px!important;text-decoration:none!important;border-radius:var(--r-pill)!important;font-family:var(--f-sans)!important;font-size:16px!important;font-weight:600!important;display:inline-block!important;box-shadow:0 1px 2px var(--carbon-a04),0 10px 24px -10px var(--carbon-a32)!important;transition:transform .18s var(--spring-m3),box-shadow .22s var(--spring-m3)!important;border:0!important;margin-top:var(--space-20)!important}.btn-confirmation-purple:hover,.radnet-confirmation .btn-confirmation-purple:hover{transform:translateY(-1px)!important;box-shadow:0 14px 30px -10px var(--carbon-a32)!important;color:var(--pure)!important;text-decoration:none!important}.radnet-confirmation input,.radnet-confirmation input[type=checkbox],.radnet-confirmation input[type=radio]{appearance:auto!important;-webkit-appearance:auto!important;-moz-appearance:auto!important;background:initial!important;background-image:none!important;border:initial!important;border-radius:0!important;width:auto!important;height:auto!important;margin:3px 3px 3px 4px!important;box-shadow:none!important}body.path-webform .region--footer-top,body.path-webform .region--footer_top__inner,body.path-webform .site-footer,body.path-webform .site-footer .region,body.path-webform .site-footer__inner{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:var(--carbon)!important;display:block!important;box-shadow:none!important}.custom-footer-wrapper{background:var(--carbon)!important;color:var(--pure)!important;padding:var(--space-32) var(--space-20)!important;width:100%!important;box-sizing:border-box!important}.footer-container{max-width:1600px!important;margin:0 auto!important;text-align:center!important}.footer-logo{max-width:200px!important;height:auto!important;margin-bottom:var(--space-24)!important}.footer-navigation{margin-bottom:var(--space-24)!important;display:flex!important;justify-content:center!important;flex-wrap:wrap!important;gap:var(--space-20)!important}.footer-navigation a{color:var(--gray-400)!important;text-decoration:none!important;font-size:14px!important;transition:color .15s var(--ease)!important}.footer-navigation a:hover{color:var(--pure)!important;text-decoration:underline!important}.footer-copyright{font-size:13px!important;color:var(--gray-500)!important;border-top:1px solid var(--gray-700,#374151)!important;padding-top:var(--space-24)!important}.footer-copyright span{display:block!important;line-height:1.6!important}@media (max-width:600px){body.path-webform .button--primary,body.path-webform .webform-button--next,body.path-webform .webform-button--previous,body.path-webform .webform-button--submit,body.path-webform button[type=submit].webform-button--submit,body.path-webform input[type=submit].webform-button--submit{max-width:100%!important;width:100%!important}}@media print{.webform-submission-form{box-shadow:none;border:0;margin:0;padding:0;max-width:none}.webform-submission-form .btn-danger,.webform-submission-form .form-actions,.webform-submission-form .webform-button--preview{display:none}.webform-submission-form input,.webform-submission-form select,.webform-submission-form textarea{border-color:#999!important;box-shadow:none!important}}@media (max-width:600px){.webform-submission-form{margin:var(--space-16) auto;padding:var(--space-20);border-radius:var(--r-12)}.webform-submission-form .panel.panel-default,.webform-submission-form .ppg-card{padding:var(--space-20)}.webform-submission-form .form-actions{flex-direction:column}.webform-submission-form .form-actions .btn,.webform-submission-form .form-actions .button{width:100%}.webform-submission-form .webform-options-display-three-columns,.webform-submission-form .webform-options-display-two-columns{grid-template-columns:1fr}.webform-submission-form .form-type-webform-link .fieldset__content,.webform-submission-form .webform-link{grid-template-columns:1fr}.webform-submission-form .webform-flexbox{gap:var(--space-12)}.webform-submission-form .webform-flex{flex:1 1 100%}.webform-submission-form .webform-likert-table-wrapper{overflow-x:auto}.webform-submission-form .form-type-webform-image-select .fieldset__content,.webform-submission-form .webform-image-select{grid-template-columns:repeat(2,1fr)}.webform-submission-form .ppg-card{margin-bottom:var(--space-16)}}

/* ==========================================================================
   SECTION 2: Analytics Dashboard & Portal Overrides (originally dashboard.css)
   ========================================================================== */
/**
 * RadNet Survey Reports - Unified Analytical Dashboard & Portal Stylesheet
 * Strictly encapsulates layout offsets and responsive print overrides to meet strict CSP compliancy targets.
 */

/* --- PORTAL SPECIFIC COMPONENT STYLES --- */
.radnet-portal-container {
    background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%) !important;
}

.radnet-portal-inner {
    max-width: 1080px;
    margin: 0 auto;
}

.portal-tracking-title {
    font-size: 0.75rem;
    letter-spacing: 0.05em;
    color: var(--sentinel, #11174c) !important;
}

/* Portal Module Card Enhancements */
.radnet-portal-container .card {
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s ease !important;
    border: 1px solid var(--gray-100, #e2e8f0) !important;
    border-radius: 16px !important;
}

.radnet-portal-container .card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 24px rgba(17, 23, 76, 0.08) !important;
}

/* Welcome Card Override */
.radnet-portal-container .card.border-primary {
    border-left: 6px solid var(--sentinel, #11174c) !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
    background: #ffffff !important;
    box-shadow: 0 10px 30px rgba(17, 23, 76, 0.04) !important;
}

/* Force email to brand color */
.radnet-portal-container .text-primary {
    color: var(--sentinel, #11174c) !important;
}

/* Log Out Button - Elegant gray border, charcoal on hover (no red) */
.radnet-portal-container .btn-portal-logout {
    color: var(--gray-600, #475569) !important;
    border-color: var(--gray-300, #cbd5e1) !important;
    background: transparent !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02) !important;
    transition: all 0.2s ease !important;
}

.radnet-portal-container .btn-portal-logout:hover {
    color: var(--charcoal, #191919) !important;
    border-color: var(--charcoal, #191919) !important;
    background: var(--gray-50, #f8fafc) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04) !important;
}

.radnet-portal-container .btn-portal-logout:active {
    transform: translateY(0) scale(0.98) !important;
}

/* Module Icon Circular Badges - Replacing letter badges with Google Material Symbols */
.portal-module-icon-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: var(--gray-100, #f1f5f9) !important;
    border: 1px solid var(--gray-200, #e2e8f0) !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.radnet-portal-container .card:hover .portal-module-icon-wrapper {
    background-color: var(--sentinel-a08, rgba(17, 23, 76, 0.08)) !important;
    border-color: rgba(17, 23, 76, 0.15) !important;
}

.portal-module-icon {
    font-family: 'Material Symbols Outlined' !important;
    font-size: 24px !important;
    color: var(--charcoal, #191919) !important;
    transition: color 0.25s ease !important;
}

.radnet-portal-container .card:hover .portal-module-icon {
    color: var(--sentinel, #11174c) !important;
}

/* Unified Launch Buttons - Charcoal to brand Navy on hover */
.radnet-portal-container .btn-portal-launch {
    background-color: var(--charcoal, #191919) !important;
    border: 1px solid var(--charcoal, #191919) !important;
    color: #ffffff !important;
    border-radius: var(--r-pill, 9999px) !important;
    padding: 10px 24px !important;
    font-weight: 600 !important;
    font-size: 0.75rem !important;
    transition: all 0.22s var(--ease-expressive, cubic-bezier(0.16, 1, 0.3, 1)) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
}

.radnet-portal-container .btn-portal-launch:hover {
    background-color: var(--sentinel, #11174c) !important;
    border-color: var(--sentinel, #11174c) !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(17, 23, 76, 0.24) !important;
}

.radnet-portal-container .btn-portal-launch:active {
    transform: translateY(0) scale(0.98) !important;
}

/* Disabled Locked State Button */
.radnet-portal-container .btn:disabled {
    background-color: var(--gray-100, #f1f5f9) !important;
    border-color: var(--gray-200, #e2e8f0) !important;
    color: var(--gray-400, #94a3b8) !important;
    transform: none !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
}

/* Main Page Title Styles on Portal Page */
body:has(.radnet-portal-container) #block-radnet-forms-theme-page-title {
    max-width: 1080px;
    margin: var(--space-24) auto !important;
    padding: 0 var(--space-16) !important;
}

body:has(.radnet-portal-container) #block-radnet-forms-theme-page-title h1,
body:has(.radnet-portal-container) h1.page-title,
body:has(.radnet-portal-container) .page-title h1 {
    font-family: var(--f-display, sans-serif) !important;
    color: var(--sentinel, #11174c) !important;
    font-weight: 800 !important;
    text-align: center !important;
    font-size: 2.25rem !important;
    letter-spacing: -0.02em !important;
    margin-top: 1rem !important;
}

/* --- DASHBOARD VIEW SPECIFIC STYLES --- */
.radnet-dashboard-wrapper {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
    background-color: var(--gray-50, #f8fafc) !important;
    min-vh-100: 100vh;
}

/* Responsive page title block for Dashboard Page to align container & avoid toolbar overlaps */
body:has(.radnet-dashboard-wrapper) #block-radnet-forms-theme-page-title {
    max-width: 1320px !important;
    margin: var(--space-32) auto 0 !important;
    padding: 0 var(--space-24) !important;
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

body:has(.radnet-dashboard-wrapper) #block-radnet-forms-theme-page-title h1,
body:has(.radnet-dashboard-wrapper) h1.page-title,
body:has(.radnet-dashboard-wrapper) .page-title h1 {
    font-family: var(--f-display, sans-serif) !important;
    color: var(--sentinel, #11174c) !important;
    font-weight: 800 !important;
    font-size: 2.25rem !important;
    letter-spacing: -0.02em !important;
    margin-top: 1rem !important;
    margin-bottom: 1.5rem !important;
    display: block !important;
    width: 100% !important;
}

/* Establish relative positioning context for absolute toolbar alignment on desktop */
body:has(.radnet-dashboard-wrapper) .layout-content > div {
    position: relative !important;
}

@media (min-width: 1200px) {
    body:has(.radnet-dashboard-wrapper) #block-radnet-forms-theme-page-title h1,
    body:has(.radnet-dashboard-wrapper) h1.page-title,
    body:has(.radnet-dashboard-wrapper) .page-title h1 {
        text-align: left !important;
        max-width: calc(100% - 560px) !important; /* Force content width to shrink and wrap sooner, leaving a larger safety buffer for the toolbar */
    }
    
    .dashboard-toolbar-container {
        position: absolute !important;
        top: 36px !important; /* Vertically align with the title header text */
        right: 24px !important;
        z-index: 1050 !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}

@media (max-width: 1199.98px) {
    body:has(.radnet-dashboard-wrapper) #block-radnet-forms-theme-page-title h1,
    body:has(.radnet-dashboard-wrapper) h1.page-title,
    body:has(.radnet-dashboard-wrapper) .page-title h1 {
        text-align: center !important;
        max-width: 100% !important;
    }
    
    .dashboard-toolbar-container {
        position: relative !important;
        top: 0 !important;
        right: 0 !important;
        margin: 0 auto 20px auto !important;
        display: flex !important;
        justify-content: center !important;
        width: max-content !important;
        z-index: 100 !important;
        padding: 0 var(--space-16) !important;
    }
}

.dashboard-toolbar-container .card {
    backdrop-filter: blur(12px);
    background: rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(255, 255, 255, 0.5) !important;
    box-shadow: 0 10px 30px rgba(17, 23, 76, 0.1) !important;
}

/* Dashboard Report Cards Premium Aesthetics */
.radnet-dashboard-wrapper .card {
    border: 1px solid var(--gray-100, #e2e8f0) !important;
    border-radius: var(--r-16, 16px) !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.02) !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.radnet-dashboard-wrapper .card:hover {
    border-color: var(--gray-200, #cbd5e1) !important;
    box-shadow: 0 6px 20px rgba(17, 23, 76, 0.04) !important;
}

/* --- DASHBOARD PORTAL COLORS CLEANUP (UNIFY BRAND PALETTE) --- */
/* Unify all dashboard headers left-borders to Sentinel Navy */
/* Custom Dashboard Header Card with Sentinel Navy border */
.radnet-dashboard-wrapper .dashboard-header-card {
    border-left: 6px solid var(--sentinel, #11174c) !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
    background: #ffffff !important;
    box-shadow: 0 10px 30px rgba(17, 23, 76, 0.04) !important;
}

/* Custom dashboard total badge */
.radnet-dashboard-wrapper .dashboard-total-badge {
    background-color: var(--sentinel, #11174c) !important;
    color: #ffffff !important;
    font-family: var(--f-display, sans-serif) !important;
    letter-spacing: -0.01em !important;
}

/* Custom progress bar in Sentinel Navy */
.radnet-dashboard-wrapper .dashboard-progress-bar {
    background-color: var(--sentinel, #11174c) !important;
}

/* Demographic Card border-starts using a clean Sentinel Navy monochromatic opacity scale */
.radnet-dashboard-wrapper .demographic-card-1 {
    border-left: 3px solid rgba(17, 23, 76, 0.24) !important;
}
.radnet-dashboard-wrapper .demographic-card-2 {
    border-left: 3px solid rgba(17, 23, 76, 0.62) !important;
}
.radnet-dashboard-wrapper .demographic-card-3 {
    border-left: 3px solid var(--sentinel, #11174c) !important;
}

/* Dashboard stat indicators */
.radnet-dashboard-wrapper .dashboard-stat-value {
    color: var(--sentinel, #11174c) !important;
    font-family: var(--f-display, sans-serif) !important;
}

/* Dashboard Toolbar Action Buttons: Neutral Charcoal to brand Navy on hover */
.dashboard-toolbar-container .btn-dashboard-action {
    background-color: var(--charcoal, #191919) !important;
    border: 1px solid var(--charcoal, #191919) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04) !important;
    transition: all 0.22s ease !important;
}

.dashboard-toolbar-container .btn-dashboard-action:hover {
    background-color: var(--sentinel, #11174c) !important;
    border-color: var(--sentinel, #11174c) !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(17, 23, 76, 0.16) !important;
}

.dashboard-toolbar-container .btn-dashboard-action:active {
    transform: translateY(0) scale(0.98) !important;
}

/* Dashboard Toolbar Back Button */
.dashboard-toolbar-container .btn-dashboard-back {
    color: var(--gray-600, #475569) !important;
    border: 1px solid var(--gray-300, #cbd5e1) !important;
    background: transparent !important;
    transition: all 0.2s ease !important;
}

.dashboard-toolbar-container .btn-dashboard-back:hover {
    color: var(--charcoal, #191919) !important;
    border-color: var(--charcoal, #191919) !important;
    background: var(--gray-50, #f8fafc) !important;
    transform: translateY(-1px) !important;
}

/* Open-Ended Comments Table Custom Styling */
.radnet-dashboard-wrapper .table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

.radnet-dashboard-wrapper .table thead th {
    background-color: var(--sentinel-a08, rgba(17, 23, 76, 0.08)) !important;
    color: var(--sentinel, #11174c) !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: 11px !important;
    letter-spacing: 0.05em !important;
    border-bottom: 2px solid var(--gray-200, #cbd5e1) !important;
    padding: 12px 16px !important;
}

.radnet-dashboard-wrapper .table tbody td {
    padding: 14px 16px !important;
    border-bottom: 1px solid var(--gray-100, #e2e8f0) !important;
}

.radnet-dashboard-wrapper .table tbody tr:hover td {
    background-color: var(--gray-50, #f8fafc) !important;
}

/* Demographic Matrix Widget Adjustments */
.radnet-dashboard-wrapper .bg-light.rounded {
    background-color: var(--gray-50, #f8fafc) !important;
    border: 1px solid var(--gray-100, #e2e8f0) !important;
    transition: all 0.2s ease !important;
}

.radnet-dashboard-wrapper .bg-light.rounded:hover {
    background-color: var(--pure, #ffffff) !important;
    box-shadow: 0 4px 12px rgba(17, 23, 76, 0.04) !important;
    transform: translateY(-2px) !important;
}

/* CSP & Static Styling Decoupling Overrides */
.total-responses-badge {
    min-width: 140px;
}

.total-responses-label {
    font-size: 0.7rem;
    letter-spacing: 0.05em;
}

.stat-card-label {
    font-size: 0.72rem;
    letter-spacing: 0.03em;
    color: var(--gray-500, #64748b) !important;
}

.text-purple {
    color: #6f42c1 !important;
}

.bg-purple {
    background-color: #6f42c1 !important;
}

.progress-thin {
    height: 6px !important;
    border-radius: var(--r-pill, 9999px) !important;
    background-color: var(--gray-100, #f1f5f9) !important;
}

.progress-thin .progress-bar {
    border-radius: var(--r-pill, 9999px) !important;
}

.chart-container-240 {
    position: relative;
    height: 240px;
}

.chart-container-260 {
    position: relative;
    height: 260px;
}

.chart-container-280 {
    position: relative;
    height: 280px;
}

.chart-container-320 {
    position: relative;
    height: 320px;
}

.comments-table-wrapper {
    max-height: 380px;
    overflow-y: auto;
}

.col-date {
    width: 10%;
}

.col-role {
    width: 18%;
}

.col-loc {
    width: 12%;
}

.col-comment {
    width: 30%;
}

/* --- PRINT & PDF ENGINE OVERRIDES MATRIX --- */
@media print {
    body {
        background-color: #ffffff !important;
        padding-top: 0 !important;
    }
    
    .radnet-dashboard-wrapper {
        padding-top: 0 !important;
    }
    
    .container {
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    .card {
        border: 1px solid #dee2e6 !important;
        box-shadow: none !important;
        page-break-inside: avoid;
    }
    
    .table-responsive {
        overflow: visible !important;
    }
    
    .row {
        display: flex !important;
        flex-wrap: wrap !important;
    }
    
    .col-md-3 {
        width: 25% !important;
        float: left !important;
    }
    
    .col-md-4 {
        width: 33.333% !important;
        float: left !important;
    }
    
    .col-md-6 {
        width: 50% !important;
        float: left !important;
    }
}

/* ==========================================================================
   SECTION 3: 403 Error Visuals (originally error-403.css)
   ========================================================================== */
/**
 * RadNet Forms - 403 Secure Visuals
 * Total replacement to ensure fullscreen 3D effect.
 */

/* 1. RESET NUCLEAR: Mata cualquier residuo de Olivero */
html:has(body.error-visual-fullscreen), 
body.error-visual-fullscreen {
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #000 !important;
    width: 100vw;
    height: 100vh;
}

/* 2. VIEWPORT: Asegura que cubra todo independientemente del DOM */
.error-viewport {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000; /* Por encima de todo */
}

#warp-canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

/* 3. UI WRAPPER: El contenedor de la perspectiva 3D */
.ui-wrapper {
    position: relative;
    z-index: 10;
    perspective: 1200px;
}

.security-card {
    width: 450px;
    padding: 2px;
    /*transform: rotateX(12deg) rotateY(-5deg); */
    backdrop-filter: blur(10px);
    position: relative;
    overflow: hidden;
}

.card-content {
    padding: 50px 40px;
    text-align: center;
    color: #fff;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.alert-header {
    font-family: var(--f-sans), sans-serif;
    color: var(--gray-400);
    font-size: 13px;
    letter-spacing: 4px;
    font-weight: 600;
    margin-bottom: 20px;
}

.card-content h1 {
    font-size: 8rem;
    margin: 0;
    line-height: 0.8;
    font-weight: 900;
    color: #fff;
}

.divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
    margin: 25px 0;
}

.card-content h2 {
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 1rem;
    white-space: nowrap;
    margin-bottom: 20px;
    color: #fff;
}

.card-content p {
    color: #999;
    font-size: 0.9rem;
    line-height: 1.6;
}

.meta-info {
    margin-top: 40px;
    display: flex;
    justify-content: space-between;
    font-family: var(--f-sans), sans-serif;
    font-size: 11px;
    letter-spacing: 0.5px;
    color: rgba(255, 255, 255, 0.4);
}
.lock-icon{
    padding: 10px 5px 25px;
    display: flex;
    justify-content: center;
}
.lock-icon img{
    max-width: 140px;
}

/* ==========================================================================
   SECTION 4: Toned Down 403 Card Custom Styles (Clean Glassmorphism)
   ========================================================================== */

/* --- TONED DOWN 403 SECURITIES CLEAN GLASSMORPHISM --- */
.security-card {
    background: rgba(18, 18, 18, 0.85) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 12px !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.6) !important;
    transition: border-color 0.3s ease !important;
}

.security-card:hover {
    border-color: rgba(225, 27, 34, 0.1) !important; /* Muted brand highlight on hover */
}

.meta-info a {
    color: var(--gray-400);
    text-decoration: underline;
    text-underline-offset: 3px;
    font-weight: 500;
    transition: color 0.2s ease;
}

.meta-info a:hover {
    color: #ffffff;
}

/* ==========================================================================
   SECTION 5: Premium Layout Enhancements for Webforms
   ========================================================================== */

/* 1. Page Header & Comfort Spacing */
#block-radnet-forms-theme-page-title {
    max-width: 920px;
    margin: 0 auto 0 !important;
    padding: var(--space-24) 0 5px 0 !important;
}

/* 2. Form Card Container Styling */
.webform-submission-form {
    background: var(--pure) !important;
    border: 1px solid var(--gray-100) !important;
    border-radius: var(--r-24) !important;
    padding: var(--space-40) var(--space-48) !important;
    box-shadow: 0 20px 48px -16px rgba(17, 23, 76, 0.05), 0 1px 2px rgba(17, 23, 76, 0.01) !important;
    margin: var(--space-24) auto var(--space-64) !important;
}

/* 3. Responsive padding for mobile */
@media (max-width: 768px) {
    #block-radnet-forms-theme-page-title {
        margin-top: var(--space-32) !important;
    }
    .webform-submission-form {
        padding: var(--space-24) var(--space-20) !important;
        margin: var(--space-16) auto var(--space-40) !important;
        border-radius: var(--r-16) !important;
    }
}

/* 4. Section Fieldsets - Clean elevated cards inside the main card */
.webform-submission-form fieldset {
    background: var(--gray-50) !important;
    border: 1px solid var(--gray-100) !important;
    border-radius: var(--r-16) !important;
    padding: var(--space-28) var(--space-28) var(--space-24) !important;
    margin: var(--space-32) 0 !important;
    box-shadow: none !important;
}

.webform-submission-form fieldset legend,
.webform-submission-form fieldset>legend>.fieldset-legend {
    font-family: var(--f-sans) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--carbon) !important;
    letter-spacing: -0.01em !important;
    padding: 0 var(--space-8) !important;
    margin-bottom: var(--space-8) !important;
    border-bottom: none !important;
}

/* 5. Form labels */
.webform-submission-form label {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--ink) !important;
    margin-bottom: var(--space-8) !important;
}

/* 6. Inputs & Textareas */
.webform-submission-form .form-control,
.webform-submission-form .form-text,
.webform-submission-form .form-number,
.webform-submission-form .form-select,
.webform-submission-form select,
.webform-submission-form input[type="text"],
.webform-submission-form input[type="number"],
.webform-submission-form textarea {
    height: 48px !important;
    padding: var(--space-12) var(--space-16) !important;
    border-radius: var(--r-12) !important;
    background: var(--pure) !important;
    color: var(--ink) !important;
    font-size: 14px !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    box-shadow: none !important;
}

.webform-submission-form textarea {
    height: auto !important;
    min-height: 120px !important;
    line-height: 1.5 !important;
}

.webform-submission-form select {
    appearance: none;
    -webkit-appearance: none;
}

/* Hover & Focus state */
.webform-submission-form .form-control:hover,
.webform-submission-form .form-text:hover,
.webform-submission-form .form-number:hover,
.webform-submission-form select:hover,
.webform-submission-form input[type="text"]:hover,
.webform-submission-form input[type="number"]:hover,
.webform-submission-form textarea:hover {
    border-color: var(--gray-400) !important;
}

.webform-submission-form .form-control:focus,
.webform-submission-form .form-text:focus,
.webform-submission-form .form-number:focus,
.webform-submission-form select:focus,
.webform-submission-form input[type="text"]:focus,
.webform-submission-form input[type="number"]:focus,
.webform-submission-form textarea:focus {
    border-color: var(--sentinel) !important;
    box-shadow: 0 0 0 4px var(--sentinel-a08) !important;
    outline: none !important;
}

/* 7. Modernized Custom Radio Button & Checkbox Cards (Container Style) */
.webform-submission-form .form-type-radio,
.webform-submission-form .form-type-checkbox {
    display: flex !important;
    align-items: center !important;
    gap: var(--space-12) !important;
    padding: var(--space-14) var(--space-18) !important;
    background: var(--pure) !important;
    border: 1.5px solid var(--gray-200) !important;
    border-radius: var(--r-12) !important;
    margin: 0 0 var(--space-10) 0 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
}

/* Radio & Checkbox hover state */
.webform-submission-form .form-type-radio:hover,
.webform-submission-form .form-type-checkbox:hover {
    background: var(--gray-50) !important;
    border-color: var(--gray-300) !important;
}

/* Radio & Checkbox selected state */
.webform-submission-form .form-type-radio:has(input:checked),
.webform-submission-form .form-type-checkbox:has(input:checked) {
    border-color: var(--sentinel) !important;
    background: var(--sentinel-a04) !important;
}

/* Label styling inside the radio/checkbox containers */
.webform-submission-form .form-type-radio label.option,
.webform-submission-form .form-type-checkbox label.option {
    display: inline-block !important;
    width: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--ink) !important;
    cursor: pointer !important;
    transition: color 0.2s ease !important;
}

/* Active checked label typography changes */
.webform-submission-form .form-type-radio:has(input:checked) label.option,
.webform-submission-form .form-type-checkbox:has(input:checked) label.option {
    color: var(--sentinel) !important;
    font-weight: 600 !important;
}

/* Make the entire card clickable by expanding the label's click area to the parent container boundaries */
.form-type-radio,
.form-type-checkbox,
.js-form-type-radio,
.js-form-type-checkbox {
    position: relative !important;
}

/* Remove relative positioning from labels so the absolute overlay aligns to the .form-type-radio/.form-type-checkbox container instead */
.form-type-radio label,
.form-type-checkbox label,
.js-form-type-radio label,
.js-form-type-checkbox label {
    position: static !important;
}

.form-type-radio label::before,
.form-type-checkbox label::before,
.form-type-radio label.option::before,
.form-type-checkbox label.option::before,
.js-form-type-radio label::before,
.js-form-type-checkbox label::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    cursor: pointer !important;
}

/* Ensure links inside labels remain clickable on top of the overlay */
.form-type-radio label a,
.form-type-checkbox label a,
.js-form-type-radio label a,
.js-form-type-checkbox label a {
    position: relative !important;
    z-index: 2 !important;
    pointer-events: auto !important;
}

/* Trigger radio/checkbox input hover rings when the entire container card is hovered */
.webform-submission-form .form-type-radio:hover input[type="radio"]::after,
.webform-submission-form .form-type-checkbox:hover input[type="checkbox"]::after {
    transform: translate(-50%, -50%) scale(1) !important;
    opacity: 0.08 !important;
}

/* Styling the native radio/checkbox inputs to stay inline */
.webform-submission-form input[type="radio"],
.webform-submission-form input[type="checkbox"] {
    margin: 0 !important;
    flex-shrink: 0;
}

/* 8. Progress tracker wizard - cleaner styling */
.webform-submission-form .webform-progress {
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: var(--space-36) !important;
}

.webform-submission-form .progress-tracker .progress-step::after {
    top: 17px !important;
    height: 2px !important;
}

/* 9. Action button container and buttons */
.webform-submission-form .form-actions {
    border-top: 1px solid var(--gray-100) !important;
    padding-top: var(--space-24) !important;
    margin-top: var(--space-32) !important;
}

.webform-submission-form .button--primary,
.webform-submission-form .webform-button--next,
.webform-submission-form .webform-button--submit,
.webform-submission-form .form-submit {
    background: var(--sentinel) !important;
    color: var(--pure) !important;
    border: 1px solid var(--sentinel) !important;
    border-radius: var(--r-pill) !important;
    padding: var(--space-12) var(--space-32) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    box-shadow: 0 4px 14px var(--sentinel-a24) !important;
    transition: all 0.2s ease !important;
    min-height: 46px !important;
}

.webform-submission-form .button--primary:hover,
.webform-submission-form .webform-button--next:hover,
.webform-submission-form .webform-button--submit:hover,
.webform-submission-form .form-submit:hover {
    background: var(--carbon) !important;
    border-color: var(--carbon) !important;
    box-shadow: 0 6px 20px rgba(17, 23, 76, 0.15) !important;
    transform: translateY(-1px) !important;
}

/* 10. Ranking list row items styling */
.webform-submission-form [id*="ranking"] > .row,
.webform-submission-form [id*="ranking"] > .webform-flexbox {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: var(--pure) !important;
    border: 1px solid var(--gray-200) !important;
    border-radius: var(--r-12) !important;
    padding: var(--space-8) var(--space-16) !important;
    margin-bottom: var(--space-10) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.webform-submission-form [id*="ranking"] > .row:hover,
.webform-submission-form [id*="ranking"] > .webform-flexbox:hover {
    border-color: var(--gray-300) !important;
    background: var(--gray-50) !important;
}

.webform-submission-form [id*="ranking"] > .row > [class*="col-"],
.webform-submission-form [id*="ranking"] > .row > .webform-flex,
.webform-submission-form [id*="ranking"] > .webform-flexbox > [class*="col-"],
.webform-submission-form [id*="ranking"] > .webform-flexbox > .webform-flex {
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.webform-submission-form [id*="ranking"] > .row > :first-child,
.webform-submission-form [id*="ranking"] > .webform-flexbox > :first-child {
    flex: 1 1 auto !important;
    font-family: var(--f-sans) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--ink) !important;
    padding-right: var(--space-16) !important;
}

.webform-submission-form [id*="ranking"] > .row > :last-child,
.webform-submission-form [id*="ranking"] > .webform-flexbox > :last-child {
    flex: 0 0 72px !important;
    display: flex !important;
    justify-content: flex-end !important;
}

.webform-submission-form [id*="ranking"] input[type="number"] {
    width: 72px !important;
    max-width: 72px !important;
    height: 38px !important;
    padding: var(--space-4) var(--space-8) !important;
    font-weight: 700 !important;
    text-align: center !important;
    border-radius: var(--r-8) !important;
    background: var(--gray-50) !important;
    border-color: var(--gray-300) !important;
}

.webform-submission-form [id*="ranking"] input[type="number"]:focus {
    background: var(--pure) !important;
    border-color: var(--sentinel) !important;
    box-shadow: 0 0 0 3px var(--sentinel-a08) !important;
}

/* 11. Conditional container cards styling (e.g. Hub Questionnaire wrapper) */
.webform-submission-form .card.card-body.bg-light {
    background: var(--gray-100) !important;
    border: 1px solid var(--gray-200) !important;
    border-radius: var(--r-16) !important;
    padding: var(--space-28) !important;
    margin-bottom: var(--space-24) !important;
    box-shadow: none !important;
}

/* 12. Success Confirmation Page Enhancements */
.radnet-confirmation {
    max-width: 580px !important;
}

/* Glassmorphic successful container card */
.radnet-confirmation .card {
    background: rgba(46, 125, 74, 0.05) !important;
    border: 1px solid rgba(46, 125, 74, 0.15) !important;
    border-radius: var(--r-20, 20px) !important;
    padding: var(--space-32, 32px) !important;
    backdrop-filter: blur(8px);
}

.radnet-confirmation .card-title {
    color: var(--success, #2E7D4A) !important;
}

.radnet-confirmation .card-text {
    color: var(--carbon, #000000) !important;
    opacity: 0.85;
}

/* Dual-Mode Success Checkmark Support (Handles both CSS-animated wrapper and text checkmarks) */
.radnet-confirmation .success-checkmark-wrapper {
    width: 80px !important;
    height: 80px !important;
    border-radius: 50% !important;
    border: 3px solid var(--success, #2E7D4A) !important;
    background: #d1e7dd !important; /* Fallback matching .rounded-circle background */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    margin: 0 auto 24px !important;
    box-sizing: border-box !important;
    box-shadow: 0 4px 10px rgba(46, 125, 74, 0.15) !important;
    animation: pop-in-circle 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s both !important;
}

.radnet-confirmation .success-checkmark-wrapper::after {
    content: "" !important;
    position: absolute !important;
    top: 36px !important;
    left: 22px !important;
    width: 32px !important;
    height: 16px !important;
    border-left: 3px solid var(--success, #2E7D4A) !important;
    border-bottom: 3px solid var(--success, #2E7D4A) !important;
    transform-origin: top left !important;
    box-sizing: border-box !important;
    animation: draw-checkmark 0.4s ease-out 0.7s both !important;
}

/* Custom styles for native text checkmark fallback */
.radnet-confirmation .rounded-circle {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 80px !important;
    height: 80px !important;
    min-width: 80px !important;
    min-height: 80px !important;
    flex-shrink: 0 !important;
    background: #d1e7dd !important;
    color: #0f5132 !important;
    font-size: 2.5rem !important;
    line-height: 1 !important;
    border-radius: 50% !important;
    margin: 0 auto 24px !important;
    box-shadow: 0 4px 10px rgba(46, 125, 74, 0.15) !important;
    animation: pop-in-circle 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s both !important;
}

@keyframes pop-in-circle {
    0% {
        transform: scale(0);
    }
    100% {
        transform: scale(1);
    }
}

@keyframes draw-checkmark {
    0% {
        width: 0;
        height: 0;
        transform: rotate(-45deg) scale(1);
    }
    50% {
        width: 0;
        height: 16px;
        transform: rotate(-45deg) scale(1);
    }
    100% {
        width: 32px;
        height: 16px;
        transform: rotate(-45deg) scale(1);
    }
}

/* DeepHealth Confirmation CTA Button styling (Sentinel Navy Brand theme) */
.btn-confirmation-purple {
    background: var(--sentinel, #11174c) !important;
    color: #ffffff !important;
    border: none !important;
    padding: 14px 40px !important;
    border-radius: var(--r-pill, 9999px) !important;
    font-size: 15px !important;
    letter-spacing: 0.02em;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease, background 0.2s ease !important;
    position: relative;
    box-shadow: 0 4px 14px rgba(17, 23, 76, 0.24) !important;
}

/* Hard reset to block base theme white box hover overlays */
.btn-confirmation-purple::before,
.btn-confirmation-purple::after,
.btn-confirmation-purple:hover::before,
.btn-confirmation-purple:hover::after,
.btn-confirmation-purple:focus::before,
.btn-confirmation-purple:focus::after,
.btn-confirmation-purple:active::before,
.btn-confirmation-purple:active::after {
    content: none !important;
    display: none !important;
    background: none !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
}

.btn-confirmation-purple:hover,
.btn-confirmation-purple:focus {
    background: var(--carbon, #000000) !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 24px -8px rgba(17, 23, 76, 0.48) !important;
    filter: brightness(1.1);
    text-decoration: none !important;
}

.btn-confirmation-purple:active {
    transform: translateY(0) scale(0.98) !important;
}

/* ==========================================================================
   SECTION 6: Premium Interactive & Responsive States for Options
   ========================================================================== */

/* 1. Responsiveness and Gaps for Option Display Grids */
.webform-submission-form .webform-options-display-two-columns,
.webform-submission-form .webform-options-display-three-columns {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: var(--space-12, 12px) !important;
}

.webform-submission-form .webform-options-display-three-columns {
    grid-template-columns: repeat(3, 1fr) !important;
}

@media (max-width: 768px) {
    .webform-submission-form .webform-options-display-two-columns,
    .webform-submission-form .webform-options-display-three-columns {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }
}

/* Ensure options inside grid or flex layouts have no individual margin, letting the parent gap control spacing */
.webform-submission-form [class*="webform-options-display-"] .form-type-radio,
.webform-submission-form [class*="webform-options-display-"] .form-type-checkbox {
    margin: 0 !important;
}

/* 2. Premium selected state for Option Cards (checked state highlights) */
.webform-submission-form .js-form-item.form-type-radio:has(input[type=radio]:checked),
.webform-submission-form .js-form-item.form-type-checkbox:has(input[type=checkbox]:checked) {
    border-color: var(--sentinel, #11174c) !important;
    background-color: var(--sentinel-a04, rgba(17, 23, 76, 0.04)) !important;
    box-shadow: 0 0 0 1px var(--sentinel, #11174c) !important;
    transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

/* Highlight the label text inside checked cards */
.webform-submission-form .js-form-item.form-type-radio:has(input[type=radio]:checked) label.option,
.webform-submission-form .js-form-item.form-type-checkbox:has(input[type=checkbox]:checked) label.option {
    color: var(--sentinel, #11174c) !important;
    font-weight: 600 !important;
}

/* 3. Smooth hover interactions for non-disabled Option Cards */
.webform-submission-form .js-form-item.form-type-radio:hover:not(:has(input:disabled)):not(:has(input[type=radio]:checked)),
.webform-submission-form .js-form-item.form-type-checkbox:hover:not(:has(input:disabled)):not(:has(input[type=checkbox]:checked)) {
    border-color: var(--gray-400, #94a3b8) !important;
    background-color: var(--gray-100, #f1f5f9) !important;
    transition: border-color 0.15s ease, background-color 0.15s ease;
}

/* Force text and numeric inputs to stretch to full container width, overriding theme inherits */
.webform-submission-form input[type="text"],
.webform-submission-form input[type="number"],
.webform-submission-form input.form-number {
    width: 100% !important;
    max-width: 100% !important;
}

/* 4. Segmented Buttons Display (.webform-options-display-buttons) styling overrides */
.webform-submission-form .webform-options-display-buttons,
.webform-submission-form .form-radios--segmented {
    display: inline-flex !important;
    flex-wrap: wrap !important;
    border: 1.5px solid var(--gray-300) !important;
    border-radius: var(--r-pill) !important;
    overflow: hidden !important;
    background: var(--pure) !important;
    padding: 0 !important;
    gap: 0 !important;
}

.webform-submission-form .webform-options-display-buttons-wrapper {
    display: inline-flex !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
    border-right: 1px solid var(--gray-300) !important;
}

.webform-submission-form .webform-options-display-buttons-wrapper:last-child {
    border-right: 0 !important;
}

/* Hide standard inputs inside segmented buttons */
.webform-submission-form .webform-options-display-buttons input[type="radio"],
.webform-submission-form .webform-options-display-buttons input[type="checkbox"],
.webform-submission-form .form-radios--segmented input[type="radio"] {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* Reset the card styles for form-type-radio / form-type-checkbox inside segmented buttons */
.webform-submission-form .webform-options-display-buttons .form-type-radio,
.webform-submission-form .webform-options-display-buttons .form-type-checkbox,
.webform-submission-form .form-radios--segmented .form-type-radio {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    flex: 1 1 0% !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Style the button option label */
.webform-submission-form .webform-options-display-buttons label.webform-options-display-buttons-label,
.webform-submission-form .webform-options-display-buttons label.option,
.webform-submission-form .form-radios--segmented label.option {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 10px 24px !important;
    font-family: var(--f-sans) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    color: var(--carbon) !important;
    cursor: pointer !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    transition: background 0.15s ease, color 0.15s ease !important;
    white-space: nowrap !important;
    box-shadow: none !important;
}

.webform-submission-form .webform-options-display-buttons label.option:hover,
.webform-submission-form .form-radios--segmented label.option:hover {
    background: var(--sentinel-a04) !important;
}

/* Highlight button option label inside checked wrappers */
.webform-submission-form .webform-options-display-buttons .form-type-radio:has(input:checked) label.option,
.webform-submission-form .webform-options-display-buttons .form-type-checkbox:has(input:checked) label.option,
.webform-submission-form .form-radios--segmented label:has(input:checked) {
    background-color: var(--sentinel-a12, rgba(17, 23, 76, 0.12)) !important;
    color: var(--sentinel, #11174c) !important;
}

/* Mobile responsive states for segmented button groups */
@media (max-width: 768px) {
    .webform-submission-form .webform-options-display-buttons,
    .webform-submission-form .form-radios--segmented {
        flex-direction: column !important;
        border-radius: var(--r-12) !important;
    }
    .webform-submission-form .webform-options-display-buttons-wrapper {
        border-right: none !important;
        border-bottom: 1px solid var(--gray-300) !important;
        width: 100% !important;
    }
    .webform-submission-form .webform-options-display-buttons-wrapper:last-child {
        border-bottom: none !important;
    }
    .webform-submission-form .webform-options-display-buttons .form-type-radio,
    .webform-submission-form .webform-options-display-buttons .form-type-checkbox,
    .webform-submission-form .form-radios--segmented .form-type-radio {
        width: 100% !important;
    }
    .webform-submission-form .webform-options-display-buttons label.option,
    .webform-submission-form .form-radios--segmented label.option {
        width: 100% !important;
        justify-content: center !important;
        border-radius: 0 !important;
    }
}

/* 5. Side-by-side Display (.webform-options-display-side-by-side) styling overrides */
.webform-submission-form .webform-options-display-side-by-side {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: var(--space-12) !important;
}

.webform-submission-form .webform-options-display-side-by-side .form-type-radio,
.webform-submission-form .webform-options-display-side-by-side .form-type-checkbox {
    width: auto !important;
    flex: 1 1 0% !important;
    min-width: 140px !important;
    margin: 0 !important;
}

@media (max-width: 768px) {
    .webform-submission-form .webform-options-display-side-by-side .form-type-radio,
    .webform-submission-form .webform-options-display-side-by-side .form-type-checkbox {
        flex: 1 1 100% !important;
    }
}


/* 6. Webform Scale Display (.webform-scale) styling overrides */

/* Reset global custom radio styles for webform scale elements */
.webform-submission-form .webform-scale-option,
.webform-submission-form .webform-scale-option.form-type-radio,
.webform-submission-form .webform-scale-option .form-type-radio {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    position: relative !important;
}

/* Prevent checked, hover, and focus borders/shadows/backgrounds on parent wrapper for scale options */
.webform-submission-form .webform-scale-option:has(input:checked),
.webform-submission-form .webform-scale-option.js-form-item.form-type-radio:has(input:checked),
.webform-submission-form .webform-scale-option .js-form-item.form-type-radio:has(input:checked),
.webform-submission-form .webform-scale-option:hover,
.webform-submission-form .webform-scale-option.form-type-radio:hover,
.webform-submission-form .webform-scale-option .form-type-radio:hover,
.webform-submission-form .webform-scale-option:focus-within,
.webform-submission-form .webform-scale-option.form-type-radio:focus-within,
.webform-submission-form .webform-scale-option .form-type-radio:focus-within {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}


/* Remove absolute overlay click zone from scale options so it doesn't cover sibling numbers */
.webform-submission-form .webform-scale-option label::before,
.webform-submission-form .webform-scale-option label.option::before,
.webform-submission-form .webform-scale-option .form-type-radio label::before,
.webform-submission-form .webform-scale-option .form-type-radio label.option::before {
    content: none !important;
    display: none !important;
}

/* Layout alignment for ranking rows with scale elements */
.webform-submission-form .row:has(.webform-scale--wrapper) {
    margin-bottom: var(--space-12, 12px) !important;
}

.webform-submission-form .row:has(.webform-scale--wrapper) > :first-child {
    font-size: 14.5px !important;
    font-weight: 500 !important;
    color: var(--carbon, #000000) !important;
    line-height: 1.45 !important;
}

/* Fieldset clean reset inside ranking rows */
.webform-submission-form .webform-scale--wrapper {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
}

.webform-submission-form .webform-scale--wrapper .fieldset-wrapper {
    padding-top: 0 !important;
}

/* Flex distribution for scale options container */
.webform-submission-form .webform-scale-options {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
}

.webform-submission-form .webform-scale-option {
    flex: 1 1 0% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

/* Scale options label base styles (for both circle and square modes) */
.webform-submission-form .webform-scale label.option {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    border: 1.5px solid var(--gray-300, #cbd5e1) !important;
    background: var(--pure, #ffffff) !important;
    color: var(--carbon, #000000) !important;
    font-family: var(--f-sans, sans-serif) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    padding: 0 !important;
    margin: 0 auto !important;
}

/* Circle scale mode */
.webform-submission-form .webform-scale-circle label.option {
    border-radius: 50% !important;
}

/* Square/Default scale mode */
.webform-submission-form .webform-scale:not(.webform-scale-circle) label.option {
    border-radius: var(--r-8, 8px) !important;
}

/* Hover effect */
.webform-submission-form .webform-scale label.option:hover {
    background: var(--sentinel-a04, rgba(17, 23, 76, 0.04)) !important;
    border-color: var(--sentinel, #11174c) !important;
    color: var(--sentinel, #11174c) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 8px rgba(17, 23, 76, 0.1) !important;
}

/* Active checked/selected state (with high specificity overrides to prevent base option text color conflicts) */
.webform-submission-form .webform-scale-option .js-form-item.form-type-radio:has(input[type="radio"]:checked) label.option,
.webform-submission-form .webform-scale-option .js-form-item.form-type-radio:has(input:checked) label.option,
.webform-submission-form .webform-scale .form-type-radio:has(input:checked) label.option,
.webform-submission-form .webform-scale-option input[type="radio"]:checked + label.option {
    background: var(--sentinel, #11174c) !important;
    border-color: var(--sentinel, #11174c) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 10px rgba(17, 23, 76, 0.24) !important;
    transform: scale(1.08) !important;
}

/* Responsive grid system for scale row distribution */
@media (min-width: 768px) {
    .webform-submission-form .row:has(.webform-scale--wrapper) {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
    .webform-submission-form .row:has(.webform-scale--wrapper) > [class*="col-"] {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .webform-submission-form .row:has(.webform-scale--wrapper) > :first-child {
        flex: 1 1 0% !important;
        padding-right: var(--space-24, 24px) !important;
    }
    .webform-submission-form .row:has(.webform-scale--wrapper) > .webform-scale--wrapper {
        flex: 0 0 320px !important;
        width: 320px !important;
    }
}

@media (max-width: 767px) {
    .webform-submission-form .row:has(.webform-scale--wrapper) {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: var(--space-12, 12px) !important;
        margin-bottom: var(--space-20, 20px) !important;
        padding-bottom: var(--space-16, 16px) !important;
        border-bottom: 1px solid var(--gray-100, #f1f5f9) !important;
    }
    .webform-submission-form .row:has(.webform-scale--wrapper) > [class*="col-"] {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}


/* ==========================================================================
   SECTION 7: Global Drupal System Messages Overrides
   ========================================================================== */

/* Layout alignment for page-level system alerts */
[data-drupal-messages],
.messages-list {
    max-width: 920px;
    margin: var(--space-24, 24px) auto var(--space-16, 16px) !important;
    padding: 0 var(--space-16, 16px) !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

/* Premium Card Layout for status/error messages */
.messages,
.webform-message,
[data-drupal-messages] > div:not(.messages__wrapper),
[data-drupal-messages] [role="contentinfo"] {
    position: relative !important;
    padding: var(--space-14, 14px) var(--space-18, 18px) var(--space-14, 14px) 48px !important;
    margin: 0 0 var(--space-16, 16px) 0 !important;
    border-radius: var(--r-12, 12px) !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    background: var(--gray-50, #f8fafc) !important;
    color: var(--carbon, #000000) !important;
    border: 1px solid var(--gray-200, #e2e8f0) !important;
    border-left: 4px solid var(--gray-400, #94a3b8) !important;
    font-family: var(--f-sans, sans-serif) !important;
    box-shadow: 0 4px 12px rgba(17, 23, 76, 0.02) !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

.messages::before,
.webform-message::before,
[data-drupal-messages] > div:not(.messages__wrapper)::before,
[data-drupal-messages] [role="contentinfo"]::before {
    content: "" !important;
    position: absolute !important;
    left: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 20px !important;
    height: 20px !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

/* Reset wrapping container for system messages if theme outputs wrapper divs */
[data-drupal-messages] .messages__wrapper,
.messages__wrapper {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    width: 100% !important;
}

/* Info Messages styling */
.messages--info,
[data-drupal-messages] [aria-label*="Info"],
[data-drupal-messages] [aria-label*="info"] {
    background: var(--sentinel-a04, rgba(17, 23, 76, 0.04)) !important;
    border-color: rgba(17, 23, 76, 0.08) !important;
    border-left-color: var(--sentinel, #11174c) !important;
}
.messages--info::before,
[data-drupal-messages] [aria-label*="Info"]::before,
[data-drupal-messages] [aria-label*="info"]::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2311174c'><path d='M12 2a10 10 0 100 20 10 10 0 000-20zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z'/></svg>") !important;
}

/* Success / Status Messages styling */
.messages--status,
[data-drupal-messages] [aria-label*="Status"],
[data-drupal-messages] [aria-label*="status"] {
    background: rgba(15, 130, 80, 0.06) !important;
    border-color: rgba(15, 130, 80, 0.12) !important;
    border-left-color: #0f8250 !important;
}
.messages--status::before,
[data-drupal-messages] [aria-label*="Status"]::before,
[data-drupal-messages] [aria-label*="status"]::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230f8250'><path d='M12 2a10 10 0 100 20 10 10 0 000-20zm-1 14.5l-5-5 1.4-1.4 3.6 3.6 7.6-7.6L20 7.5l-9 9z'/></svg>") !important;
}

/* Warning Messages styling */
.messages--warning,
[data-drupal-messages] [aria-label*="Warning"],
[data-drupal-messages] [aria-label*="warning"] {
    background: rgba(232, 152, 0, 0.06) !important;
    border-color: rgba(232, 152, 0, 0.12) !important;
    border-left-color: #e89800 !important;
}
.messages--warning::before,
[data-drupal-messages] [aria-label*="Warning"]::before,
[data-drupal-messages] [aria-label*="warning"]::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e89800'><path d='M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z'/></svg>") !important;
}

/* Error Messages styling (using toned-down crimson brand color #a72d2d) */
.messages--error,
[data-drupal-messages] [aria-label*="Error"],
[data-drupal-messages] [aria-label*="error"],
[data-drupal-messages] [role="alert"] {
    background: var(--crimson-a04, rgba(167, 45, 45, 0.04)) !important;
    border-color: rgba(167, 45, 45, 0.12) !important;
    border-left-color: var(--crimson, #a72d2d) !important;
}
.messages--error::before,
[data-drupal-messages] [aria-label*="Error"]::before,
[data-drupal-messages] [aria-label*="error"]::before,
[data-drupal-messages] [role="alert"]::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23a72d2d'><path d='M12 2a10 10 0 100 20 10 10 0 000-20zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z'/></svg>") !important;
}

.messages__content {
    padding-left: 0 !important;
}

/* Aligned list styles for validation feedback */
.messages ul,
[data-drupal-messages] > div:not(.messages__wrapper) ul {
    margin: 4px 0 0 0 !important;
    padding-left: 18px !important;
    list-style-type: disc !important;
}

.messages li,
[data-drupal-messages] > div:not(.messages__wrapper) li {
    font-size: 13.5px !important;
    margin-bottom: 4px !important;
    line-height: 1.4 !important;
    color: var(--carbon, #000000) !important;
}

.messages li:last-child,
[data-drupal-messages] > div:not(.messages__wrapper) li:last-child {
    margin-bottom: 0 !important;
}


/* ==========================================================================
   SECTION 8: Imaging Centers Survey & Numeric Ranking Overrides
   ========================================================================== */

/* 1. Language Switcher Styling */
.webform-submission-form .language-switcher-container {
    display: flex !important;
    justify-content: flex-end !important;
    margin-bottom: var(--space-20, 20px) !important;
}

.webform-submission-form .btn-lang-selector {
    display: inline-flex !important;
    align-items: center !important;
    background: var(--pure, #ffffff) !important;
    border: 1.5px solid var(--gray-200, #e2e8f0) !important;
    color: var(--carbon, #000000) !important;
    padding: 8px 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    border-radius: var(--r-pill, 9999px) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
    line-height: 1.2 !important;
}

.webform-submission-form .btn-lang-selector:hover {
    background: var(--gray-50, #f8fafc) !important;
    border-color: var(--gray-300, #cbd5e1) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
}

.webform-submission-form .btn-lang-selector:active {
    transform: translateY(0) !important;
}

.webform-submission-form .btn-lang-selector .current-lang-flag {
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1 !important;
}

.webform-submission-form .btn-lang-selector svg {
    border-radius: 2px !important;
}

/* 2. Numeric and Scale Ranking Overrides (Imaging Centers & DeepHealth Survey Q1/Q3) */
.webform-submission-form [id*="ranking"] .row:has(.form-type-number),
.webform-submission-form [id*="ranking"] .row:has(.webform-scale--wrapper) {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: var(--space-12, 12px) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
}

/* Left label column styling (dynamically targets the first column in the ranking row) */
.webform-submission-form [id*="ranking"] .row:has(.form-type-number) > :first-child,
.webform-submission-form [id*="ranking"] .row:has(.webform-scale--wrapper) > :first-child {
    flex: 1 1 0% !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    color: var(--carbon, #000000) !important;
    line-height: 1.45 !important;
    padding-right: var(--space-20, 20px) !important;
    padding-left: 0 !important;
    max-width: none !important;
    width: auto !important;
}

/* Right number input container styling */
.webform-submission-form [id*="ranking"] .row:has(.form-type-number) .form-type-number {
    flex: 0 0 auto !important;
    width: 64px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    border: none !important;
    background: transparent !important;
}

/* Specific text/overlay resets on the ranking input wrappers */
.webform-submission-form [id*="ranking"] .row:has(.form-type-number) .form-type-number label::before {
    content: none !important;
    display: none !important;
}

/* Compact rank box styling */
.webform-submission-form [id*="ranking"] .row:has(.form-type-number) input.form-number {
    height: 36px !important;
    width: 64px !important;
    min-width: 64px !important;
    padding: 6px 10px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-align: center !important;
    border-radius: var(--r-8, 8px) !important;
    border: 1.5px solid var(--gray-300, #cbd5e1) !important;
    color: var(--sentinel, #11174c) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    background: var(--pure, #ffffff) !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease !important;
}

.webform-submission-form [id*="ranking"] .row:has(.form-type-number) input.form-number:hover {
    border-color: var(--sentinel, #11174c) !important;
    background-color: var(--gray-50, #f8fafc) !important;
}

.webform-submission-form [id*="ranking"] .row:has(.form-type-number) input.form-number:focus {
    border-color: var(--sentinel, #11174c) !important;
    background-color: var(--pure, #ffffff) !important;
    box-shadow: 0 0 0 3px var(--sentinel-a18, rgba(17, 23, 76, 0.18)) !important;
    outline: none !important;
}

/* Right scale container fixed-width sizing on desktop */
@media (min-width: 768px) {
    .webform-submission-form [id*="ranking"] .row:has(.webform-scale--wrapper) > .webform-scale--wrapper {
        flex: 0 0 240px !important;
        width: 240px !important;
    }
}

/* Responsive ranking row layout styles */
@media (max-width: 767px) {
    /* Number ranking rows stay horizontal with a dashed divider */
    .webform-submission-form [id*="ranking"] .row:has(.form-type-number) {
        border-bottom: 1px dashed var(--gray-200, #e2e8f0) !important;
        padding-bottom: var(--space-10, 10px) !important;
        margin-bottom: var(--space-10, 10px) !important;
    }
    /* Scale ranking rows stack vertically on mobile to give circles room to render */
    .webform-submission-form [id*="ranking"] .row:has(.webform-scale--wrapper) {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: var(--space-12, 12px) !important;
        margin-bottom: var(--space-20, 20px) !important;
        padding-bottom: var(--space-16, 16px) !important;
        border-bottom: 1px dashed var(--gray-200, #e2e8f0) !important;
    }
    .webform-submission-form [id*="ranking"] .row:has(.webform-scale--wrapper) > [class*="col-"] {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* Group ranking rows into a styled card matching standard fieldsets (completely dynamic based on HTML structure, no hardcoded IDs) */
.webform-submission-form .form-wrapper[id*="ranking"] {
    background: var(--gray-50, #f8fafc) !important;
    border: 1px solid var(--gray-100, #e2e8f0) !important;
    border-radius: var(--r-16, 16px) !important;
    padding: var(--space-28, 28px) var(--space-28, 28px) var(--space-24, 24px) !important;
    margin: var(--space-32, 32px) 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

@media (max-width: 767px) {
    .webform-submission-form .form-wrapper[id*="ranking"] {
        padding: var(--space-16, 16px) !important;
        margin: var(--space-20, 20px) 0 !important;
    }
}

/* ==========================================================================
   SECTION 9: RadNet Global Footer Overrides
   ========================================================================== */
.radnet-footer-link {
    color: rgba(255, 255, 255, 0.75) !important;
    font-size: 0.75rem !important; /* 12px - premium smaller legal link text */
    transition: color 0.15s ease-in-out;
}
.radnet-footer-link:hover,
.radnet-footer-link:focus {
    color: #ffffff !important;
    text-decoration: underline !important;
}
.radnet-footer-copyright {
    color: rgba(255, 255, 255, 0.75) !important;
}
.radnet-footer-muted {
    color: rgba(255, 255, 255, 0.5) !important;
}


/* ==========================================================================
   SECTION 10: Centered User Login Portal Overrides
   ========================================================================== */

/* Page layout structure adjustments when the login form is present */
body:has(.user-login-form) {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    min-height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

body:has(.user-login-form) .dialog-off-canvas-main-canvas {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    flex: 1 1 auto !important;
}

body:has(.user-login-form) .layout-container {
    width: 100% !important;
    max-width: 440px !important;
    padding: var(--space-20) !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

body:has(.user-login-form) main {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body:has(.user-login-form) .layout-content {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Premium login card wrapper overrides */
.webform-submission-form .user-login-form,
.user-login-form {
    background: var(--pure, #ffffff) !important;
    border: 1px solid var(--gray-200, #e2e8f0) !important;
    border-radius: var(--r-24, 24px) !important;
    padding: var(--space-40) var(--space-32) var(--space-32) !important;
    box-shadow: 0 12px 36px rgba(17, 23, 76, 0.08), 0 2px 8px rgba(17, 23, 76, 0.03) !important;
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 auto !important;
    position: relative !important;
}

/* Dynamically render centered RadNet branding logo in the card header */
.user-login-form::before {
    content: "" !important;
    display: block !important;
    width: 220px !important;
    height: 58px !important;
    margin: 0 auto var(--space-28) !important;
    background: url(https://cdnwest.radnet.com/brand/logo-radnet.svg) no-repeat center/contain !important;
}

/* Form items structure and positioning */
.user-login-form .form-item {
    margin-bottom: var(--space-20) !important;
    display: flex !important;
    flex-direction: column !important;
    position: relative !important;
}

.user-login-form .form-item label {
    margin: 0 0 var(--space-8) 0 !important;
    font-family: var(--f-sans) !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: var(--carbon, #000000) !important;
    letter-spacing: -0.005em !important;
}

/* Premium text and password input fields overrides */
.user-login-form input[type="text"],
.user-login-form input[type="password"] {
    width: 100% !important;
    height: 48px !important;
    padding: 12px 16px !important;
    font-family: var(--f-sans) !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    color: var(--ink, #111) !important;
    background: var(--pure, #ffffff) !important;
    border: 1.5px solid var(--gray-300, #cbd5e1) !important;
    border-radius: var(--r-12, 12px) !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

.user-login-form input[type="text"]:focus,
.user-login-form input[type="password"]:focus {
    outline: none !important;
    border-color: var(--sentinel, #11174c) !important;
    box-shadow: 0 0 0 4px var(--sentinel-a18, rgba(17, 23, 76, 0.18)) !important;
}

/* Primary actions buttons centering and alignment */
.user-login-form .form-actions {
    margin-top: var(--space-24) !important;
    padding: 0 !important;
    border-top: none !important;
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
}

.user-login-form input[type="submit"].form-submit,
.user-login-form .button.form-submit {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 12px 24px !important;
    background: var(--sentinel, #11174c) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: var(--r-pill, 9999px) !important;
    font-family: var(--f-sans) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    box-shadow: 0 4px 12px var(--sentinel-a24, rgba(17, 23, 76, 0.24)) !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
}

.user-login-form input[type="submit"].form-submit:hover,
.user-login-form .button.form-submit:hover {
    background: var(--carbon, #000000) !important;
    box-shadow: 0 6px 18px rgba(17, 23, 76, 0.15) !important;
    transform: translateY(-1px) !important;
}

.user-login-form input[type="submit"].form-submit:active,
.user-login-form .button.form-submit:active {
    transform: translateY(0) scale(0.98) !important;
}

/* ==========================================================================
   SECTION 11: Specific Consent Form Overrides & Signature Enhancements
   ========================================================================== */

/* 1. Hide duplicate asterisk on signature labels that already contain inline asterisks */
.webform-submission-form [id*="your-signature"] label.form-required::after,
.webform-submission-form .form-item-your-signature label.form-required::after {
    display: none !important;
}

/* 2. Scrollable container for consent and legal information info-blocks */
.webform-submission-form #edit-legal-information {
    background: var(--gray-50, #f8fafc) !important;
    border: 1px solid var(--gray-200, #e2e8f0) !important;
    border-radius: var(--r-16, 16px) !important;
    padding: var(--space-24, 24px) !important;
    max-height: 280px !important;
    overflow-y: auto !important;
    margin-bottom: var(--space-28, 28px) !important;
}

.webform-submission-form #edit-legal-information::-webkit-scrollbar {
    width: 6px !important;
}
.webform-submission-form #edit-legal-information::-webkit-scrollbar-track {
    background: transparent !important;
}
.webform-submission-form #edit-legal-information::-webkit-scrollbar-thumb {
    background: var(--gray-300, #cbd5e1) !important;
    border-radius: var(--r-pill, 9999px) !important;
}
.webform-submission-form #edit-legal-information::-webkit-scrollbar-thumb:hover {
    background: var(--gray-400, #94a3b8) !important;
}

/* 3. Top-aligned checkboxes for multi-line consent confirmations */
.webform-submission-form .form-type-checkbox.consent-notice-box {
    align-items: flex-start !important;
}
.webform-submission-form .form-type-checkbox.consent-notice-box input[type="checkbox"] {
    margin-top: 3.5px !important;
}

/* 4. Signature Canvas & absolute placement for the Reset button */
.webform-submission-form .webform-signature-pad {
    height: auto !important;
    aspect-ratio: 822 / 200 !important;
    max-height: 200px !important;
    position: relative !important;
    overflow: hidden !important;
}

.webform-submission-form .webform-signature-pad canvas {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 822 / 200 !important;
    display: block !important;
    border-radius: inherit !important;
    background: transparent !important;
}

.webform-submission-form .webform-signature-pad input.form-submit,
.webform-submission-form .webform-signature-pad .button {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    bottom: auto !important; /* Clears bottom alignment */
    left: auto !important;
    z-index: 10 !important;
    width: auto !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 16px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    background: var(--pure, #ffffff) !important;
    color: var(--gray-600, #475569) !important;
    border: 1px solid var(--gray-300, #cbd5e1) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05) !important;
    border-radius: var(--r-pill, 9999px) !important;
    transform: none !important;
    line-height: 30px !important;
}

.webform-submission-form .webform-signature-pad input.form-submit:hover,
.webform-submission-form .webform-signature-pad .button:hover {
    background: var(--gray-50, #f8fafc) !important;
    color: var(--crimson, #a72d2d) !important;
    border-color: var(--crimson, #a72d2d) !important;
    box-shadow: 0 4px 10px rgba(167, 45, 45, 0.1) !important;
    transform: translateY(0) !important;
}

/* 5. Accordion-style layout for collapsable details panels (Attach Image) */
.webform-submission-form details.card {
    border: 1px solid var(--gray-200, #e2e8f0) !important;
    border-radius: var(--r-16, 16px) !important;
    background: var(--pure, #ffffff) !important;
    margin-bottom: var(--space-24, 24px) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02) !important;
    overflow: hidden !important;
    padding: 0 !important;
}

.webform-submission-form details.card summary {
    padding: var(--space-18, 18px) var(--space-24, 24px) !important;
    font-family: var(--f-sans, sans-serif) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--carbon, #000000) !important;
    cursor: pointer !important;
    background: var(--gray-50, #f8fafc) !important;
    border-bottom: 1px solid transparent !important;
    transition: background 0.2s ease, border-color 0.2s ease !important;
    list-style: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

.webform-submission-form details.card summary::-webkit-details-marker {
    display: none !important;
}

.webform-submission-form details.card[open] summary {
    background: var(--pure, #ffffff) !important;
    border-bottom-color: var(--gray-200, #cbd5e1) !important;
}

.webform-submission-form details.card summary::after {
    content: "" !important;
    display: inline-block !important;
    width: 12px !important;
    height: 8px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none'><path d='M1 1.5L6 6.5L11 1.5' stroke='%23111' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>") !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    transition: transform 0.2s ease !important;
}

.webform-submission-form details.card[open] summary::after {
    transform: rotate(180deg) !important;
}

.webform-submission-form details.card .details-wrapper,
.webform-submission-form details.card > div:not(summary) {
    padding: var(--space-24, 24px) !important;
}

/* 6. Select2 Dropdown Overrides (Fixes misaligned text and top-right arrow) */
.webform-submission-form .select2-container .select2-selection--single {
    display: flex !important;
    align-items: center !important;
    padding-left: 16px !important;
    padding-right: 40px !important;
    height: 48px !important;
    min-height: 48px !important;
    background: var(--pure, #ffffff) !important;
    border: 1.5px solid var(--gray-300, #cbd5e1) !important;
    border-radius: var(--r-12, 12px) !important;
    box-sizing: border-box !important;
}

.webform-submission-form .select2-container .select2-selection--single .select2-selection__rendered {
    padding: 0 !important;
    line-height: normal !important;
    color: var(--ink, #111111) !important;
}

.webform-submission-form .select2-container .select2-selection--single .select2-selection__arrow {
    height: 100% !important;
    top: 0 !important;
    right: 16px !important;
    width: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.webform-submission-form .select2-container .select2-selection--single .select2-selection__arrow b {
    border: none !important; /* Removes default CSS triangle */
    width: 12px !important;
    height: 8px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1.5L6 6.5L11 1.5' stroke='%23111' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    margin: 0 !important;
    position: static !important;
}






