/* ============================================================
   UAESA Re-Instate a Company — CIPC CoR 40.5
   File: uaesa-reinstate.css

   Consumed by:
     • [uaesa_reinstate]           — shortcode mode
     • uaesa_reinstate_selector    — Gravity Forms field mode
     • (optional) WooCommerce checkout page — the very last
       section adds a scoped override for the Place Order button
       so the whole reinstate flow stays on-brand.

   Depends on nothing — all tokens are self-contained. The
   .uaesa-hidden-select and .md-snackbar-container rules are
   unscoped because JS appends the snackbar to <body> and the
   hidden select must survive theme-level `select !important`
   resets.

   Section map
   -----------
    1  · Tokens
    2  · Shell reset
    3  · Mode sizing
    4  · Dropdown shell (.md-field-outlined)
    5  · Dropdown menu (.md-menu)
    6  · Heading
    7  · Wizard wrapper
    8  · Stepper
    9  · Panels + footer
   10  · Cards
   11  · Buttons (all #00A5A7)
   12  · Banners
   13  · Score strip
   14  · Eligibility rows
   15  · Declarations
   16  · Totals grid
   17  · Enterprise summary
   18  · Loading spinner
   19  · Error state
   20  · Snackbar (unscoped)
   21  · Hidden native select (unscoped)
   22  · Gravity Forms field container
   23  · Responsive
   24  · Reduced motion
   25  · Forced colors
   26  · WooCommerce checkout button (optional, scoped)
   ============================================================ */

/* ------------------------------------------------------------
   1 · TOKENS
   ------------------------------------------------------------ */
.uaesa-reinstate-shell{
    --md-primary:#00A5A7;
    --md-on-primary:#FFFFFF;
    --md-primary-container:#6FF6FE;
    --md-on-primary-container:#002022;
    --md-secondary:#4A6365;
    --md-secondary-container:#CCE8E9;
    --md-on-secondary-container:#051F21;
    --md-error:#BA1A1A;
    --md-on-error:#FFFFFF;
    --md-error-container:#FFDAD6;
    --md-on-error-container:#410002;
    --md-success:#2E7D32;
    --md-success-container:#DCFCE7;
    --md-on-success-container:#052E16;
    --md-warning:#8C5000;
    --md-warning-container:#FFDDB3;
    --md-on-warning-container:#2E1500;
    --md-surface:#F4FBFB;
    --md-on-surface:#161D1D;
    --md-surface-variant:#DAE4E4;
    --md-on-surface-variant:#3F4849;
    --md-surface-container-lowest:#FFFFFF;
    --md-surface-container-low:#EEF5F5;
    --md-surface-container:#E9EFEF;
    --md-surface-container-high:#E3E9E9;
    --md-surface-container-highest:#DDE4E4;
    --md-outline:#6F7979;
    --md-outline-variant:#BEC8C8;
    --md-inverse-surface:#2B3232;
    --md-inverse-on-surface:#ECF2F2;
    --md-shape-xs:4px;
    --md-shape-sm:8px;
    --md-shape-md:12px;
    --md-shape-lg:16px;
    --md-shape-full:9999px;
    --md-elev-1:0 1px 2px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.06);
    --md-elev-2:0 1px 2px rgba(0,0,0,.10),0 2px 6px rgba(0,0,0,.08);
    --md-elev-3:0 4px 8px rgba(0,0,0,.10),0 1px 3px rgba(0,0,0,.06);
}

/* ------------------------------------------------------------
   2 · SHELL RESET
   ------------------------------------------------------------ */
.uaesa-reinstate-shell{
    position:relative;
    color:var(--md-on-surface);
    line-height:1.5;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    box-sizing:border-box;
}
.uaesa-reinstate-shell *,
.uaesa-reinstate-shell *::before,
.uaesa-reinstate-shell *::after{
    box-sizing:border-box;
}

/* ------------------------------------------------------------
   3 · MODE SIZING
   ------------------------------------------------------------ */
.uaesa-reinstate-shell[data-mode="shortcode"]{
    max-width:900px;
    margin:0 auto;
    padding:24px 16px 60px;
}
.uaesa-reinstate-shell[data-mode="gf"]{
    max-width:none;
    margin:12px 0 0;
    padding:0;
}

/* ------------------------------------------------------------
   4 · DROPDOWN SHELL — .md-field-outlined
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .md-field-outlined{
    position:relative;
    margin:16px 0 24px;
}
.uaesa-reinstate-shell .md-field-outlined__container{
    position:relative;
    min-height:56px;
    border:1px solid var(--md-outline);
    border-radius:var(--md-shape-xs);
    background:var(--md-surface-container-lowest);
    cursor:pointer;
    transition:border-color .15s, box-shadow .15s;
}
.uaesa-reinstate-shell .md-field-outlined__container:hover{
    border-color:var(--md-on-surface);
}
.uaesa-reinstate-shell .md-field-outlined__container:focus-within{
    border-color:var(--md-primary);
    box-shadow:0 0 0 1px var(--md-primary);
}
.uaesa-reinstate-shell .md-field-outlined.is-filled .md-field-outlined__container{
    border-color:var(--md-primary);
}
.uaesa-reinstate-shell .md-field-outlined.is-focused .md-field-outlined__container{
    border-color:var(--md-primary);
    box-shadow:0 0 0 1px var(--md-primary);
}

/* Floating label */
.uaesa-reinstate-shell .md-field-outlined__label{
    position:absolute;
    left:12px;
    top:50%;
    transform:translateY(-50%);
    background:var(--md-surface-container-lowest);
    padding:0 4px;
    font-size:16px;
    color:var(--md-on-surface-variant);
    pointer-events:none;
    transition:all .15s cubic-bezier(.4,0,.2,1);
    z-index:2;
    line-height:1;
}
.uaesa-reinstate-shell .md-field-outlined.is-focused .md-field-outlined__label,
.uaesa-reinstate-shell .md-field-outlined.is-filled .md-field-outlined__label{
    top:0;
    transform:translateY(-50%) scale(.75);
    color:var(--md-primary);
    font-weight:500;
}

/* Trigger */
.uaesa-reinstate-shell .md-field-outlined__trigger{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:16px;
    min-height:56px;
    font-size:16px;
    color:var(--md-on-surface);
    position:relative;
    z-index:1;
}
.uaesa-reinstate-shell .md-field-outlined__trigger-value{
    flex:1;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.uaesa-reinstate-shell .md-field-outlined__trigger-icon{
    margin-left:12px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.uaesa-reinstate-shell .md-field-outlined__trigger-icon svg{
    width:24px;
    height:24px;
    fill:var(--md-on-surface-variant);
    transition:transform .2s;
}
.uaesa-reinstate-shell .md-field-outlined.is-focused .md-field-outlined__trigger-icon svg{
    transform:rotate(180deg);
}

/* ------------------------------------------------------------
   5 · DROPDOWN MENU — .md-menu
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .md-menu{
    position:absolute;
    top:calc(100% + 4px);
    left:0;
    right:0;
    background:var(--md-surface-container);
    border-radius:var(--md-shape-xs);
    box-shadow:var(--md-elev-2);
    max-height:280px;
    overflow-y:auto;
    list-style:none;
    padding:8px 0;
    margin:0;
    z-index:20;
    display:none;
}
.uaesa-reinstate-shell .md-menu.open{
    display:block;
    animation:uaesaReinstateMenuIn .15s cubic-bezier(.4,0,.2,1);
}
@keyframes uaesaReinstateMenuIn{
    from{opacity:0;transform:scale(.98)}
    to{opacity:1;transform:scale(1)}
}

/* Menu items */
.uaesa-reinstate-shell .md-menu li{
    display:flex;
    align-items:center;
    gap:12px;
    padding:12px 16px;
    font-size:14px;
    color:var(--md-on-surface);
    cursor:pointer;
    min-height:48px;
    transition:background .12s;
}
.uaesa-reinstate-shell .md-menu li:hover,
.uaesa-reinstate-shell .md-menu li:focus{
    background:rgba(0,165,167,.08);
    outline:none;
}
.uaesa-reinstate-shell .md-menu li.is-selected{
    background:var(--md-secondary-container);
    color:var(--md-on-secondary-container);
    font-weight:500;
}
.uaesa-reinstate-shell .md-menu li .mi-name{
    display:block;
    font-weight:500;
    font-size:14px;
}

/* Menu group header */
.uaesa-reinstate-shell .md-menu li.menu-group{
    cursor:default !important;
    background:#FAFCFC !important;
    color:#6F7979 !important;
    font-size:10px !important;
    font-weight:700 !important;
    letter-spacing:.6px !important;
    text-transform:uppercase !important;
    padding:8px 16px 4px !important;
    min-height:auto !important;
    display:block !important;
}
.uaesa-reinstate-shell .md-menu li.menu-group:hover,
.uaesa-reinstate-shell .md-menu li.menu-group:focus{
    background:#FAFCFC !important;
}

/* Scope pills */
.uaesa-reinstate-shell .md-menu li .mi-scope{
    margin-left:auto;
    font-size:9.5px;
    font-weight:700;
    padding:3px 9px;
    border-radius:999px;
    text-transform:uppercase;
    letter-spacing:.4px;
    white-space:nowrap;
    flex-shrink:0;
}
.uaesa-reinstate-shell .md-menu li .mi-scope.ok{
    background:#DCFCE7;
    color:#052E16;
}
.uaesa-reinstate-shell .md-menu li .mi-scope.warn{
    background:#FFF3E0;
    color:#7A3E00;
}
.uaesa-reinstate-shell .md-menu li .mi-scope.er{
    background:#FFDAD6;
    color:#410002;
}
.uaesa-reinstate-shell .md-menu li .mi-scope.unlisted{
    background:#E3F5F5;
    color:#00454A;
}

/* ------------------------------------------------------------
   6 · HEADING (shortcode mode)
   ------------------------------------------------------------ */
.uaesa-reinstate-h1{
    font-size:22px;
    margin:0 0 4px;
    color:#002022;
    font-weight:700;
    line-height:1.25;
}
.uaesa-reinstate-sub{
    font-size:13px;
    color:#3F4849;
    margin:0 0 20px;
    line-height:1.5;
}

/* ------------------------------------------------------------
   7 · WIZARD WRAPPER
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .uaesa-reinstate-wizard{
    position:relative;
    margin-top:8px;
}

/* ------------------------------------------------------------
   8 · STEPPER
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .m3-stepper{
    display:flex;
    align-items:flex-start;
    padding:20px 0 24px;
    margin:0;
    list-style:none;
}
.uaesa-reinstate-shell .m3-step{
    flex:1 1 0;
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:8px;
    position:relative;
    text-align:center;
    padding:0 4px;
}
.uaesa-reinstate-shell .m3-step:not(:last-child)::after{
    content:'';
    position:absolute;
    top:20px;
    left:calc(50% + 24px);
    right:calc(-50% + 24px);
    height:1px;
    background:var(--md-outline-variant);
    z-index:0;
}
.uaesa-reinstate-shell .m3-step.is-complete:not(:last-child)::after{
    background:var(--md-primary);
}
.uaesa-reinstate-shell .m3-step-indicator{
    width:40px;
    height:40px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--md-surface-container-highest);
    color:var(--md-on-surface-variant);
    font-size:14px;
    font-weight:500;
    position:relative;
    z-index:1;
    transition:background .2s,color .2s,transform .2s,box-shadow .2s;
}
.uaesa-reinstate-shell .m3-step-indicator svg{
    width:20px;
    height:20px;
    fill:currentColor;
}
.uaesa-reinstate-shell .m3-step.is-active .m3-step-indicator,
.uaesa-reinstate-shell .m3-step.is-complete .m3-step-indicator{
    background:var(--md-primary);
    color:var(--md-on-primary);
}
.uaesa-reinstate-shell .m3-step-label{
    font-size:11px;
    font-weight:500;
    color:var(--md-on-surface-variant);
    line-height:1.25;
    word-break:break-word;
    transition:color .2s;
}
.uaesa-reinstate-shell .m3-step.is-active .m3-step-label{
    color:var(--md-primary);
    font-weight:600;
}
.uaesa-reinstate-shell .m3-step.is-complete .m3-step-label{
    color:var(--md-on-surface);
}
.uaesa-reinstate-shell .m3-step:hover .m3-step-indicator{
    transform:translateY(-1px) scale(1.05);
}
.uaesa-reinstate-shell .m3-step:hover .m3-step-label{
    color:#002022;
}

/* ------------------------------------------------------------
   9 · PANELS + FOOTER
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .m3-step-panel{
    display:none;
}
.uaesa-reinstate-shell .m3-step-panel.is-active{
    display:block;
    animation:uaesaReinstateIn .28s cubic-bezier(.4,0,.2,1) both;
}
.uaesa-reinstate-shell .m3-step-panel.back{
    animation:uaesaReinstateBack .28s cubic-bezier(.4,0,.2,1) both;
}
@keyframes uaesaReinstateIn{
    from{opacity:0;transform:translateX(12px)}
    to{opacity:1;transform:translateX(0)}
}
@keyframes uaesaReinstateBack{
    from{opacity:0;transform:translateX(-12px)}
    to{opacity:1;transform:translateX(0)}
}
.uaesa-reinstate-shell .m3-step-footer{
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:24px;
    padding-top:20px;
    border-top:1px solid var(--md-outline-variant);
    flex-wrap:wrap;
}
.uaesa-reinstate-shell .m3-step-footer .spacer{
    flex:1;
}
.uaesa-reinstate-shell .m3-step-footer .hint{
    font-size:12px;
    color:var(--md-on-surface-variant);
}

/* ------------------------------------------------------------
   10 · CARDS
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .md-card{
    background:var(--md-surface-container-low);
    border-radius:var(--md-shape-md);
    padding:20px;
    margin-bottom:16px;
}
.uaesa-reinstate-shell .md-card.md-card--outlined{
    background:var(--md-surface-container-lowest);
    border:1px solid var(--md-outline-variant);
    transition:box-shadow .25s ease, border-color .25s ease;
}
.uaesa-reinstate-shell .md-card.md-card--outlined:hover{
    border-color:#9DD6D8;
    box-shadow:0 6px 20px rgba(0,165,167,.10), 0 2px 6px rgba(0,0,0,.04);
}
.uaesa-reinstate-shell .md-card-header{
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin-bottom:16px;
    flex-wrap:wrap;
}
.uaesa-reinstate-shell .md-card-icon{
    width:40px;
    height:40px;
    flex-shrink:0;
    border-radius:var(--md-shape-sm);
    background:var(--md-primary-container);
    color:var(--md-on-primary-container);
    display:flex;
    align-items:center;
    justify-content:center;
}
.uaesa-reinstate-shell .md-card-icon svg{
    width:24px;
    height:24px;
}
.uaesa-reinstate-shell .md-card-icon.ok{
    background:var(--md-success-container);
    color:var(--md-on-success-container);
}
.uaesa-reinstate-shell .md-card-icon.warn{
    background:var(--md-warning-container);
    color:var(--md-on-warning-container);
}
.uaesa-reinstate-shell .md-card-icon.er{
    background:var(--md-error-container);
    color:var(--md-on-error-container);
}
.uaesa-reinstate-shell .md-card-title{
    font-size:16px;
    font-weight:500;
    color:var(--md-on-surface);
    line-height:1.35;
    margin:0 0 2px;
}
.uaesa-reinstate-shell .md-card-sub{
    font-size:12px;
    color:var(--md-on-surface-variant);
    margin:0;
    line-height:1.45;
}

/* ------------------------------------------------------------
   11 · BUTTONS — every variant uses #00A5A7
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .md-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    height:40px;
    padding:0 24px;
    border-radius:var(--md-shape-full);
    font-family:inherit;
    font-size:14px;
    font-weight:500;
    letter-spacing:.1px;
    border:none;
    cursor:pointer;
    transition:box-shadow .15s, background .15s, transform .1s;
    white-space:nowrap;
    text-decoration:none;
    -webkit-appearance:none;
    appearance:none;
    background:transparent;
}
.uaesa-reinstate-shell .md-btn:not(:disabled):active{
    transform:scale(.98);
}
.uaesa-reinstate-shell .md-btn:disabled{
    opacity:.38;
    cursor:not-allowed;
    box-shadow:none;
}
.uaesa-reinstate-shell .md-btn svg{
    width:18px;
    height:18px;
    fill:currentColor;
    flex-shrink:0;
    display:inline-block;
}

/* Filled — solid teal */
.uaesa-reinstate-shell .md-btn--filled{
    background:#00A5A7;
    color:#fff;
}
.uaesa-reinstate-shell .md-btn--filled:not(:disabled):hover{
    background:#008B8D;
    box-shadow:var(--md-elev-2);
}

/* Outlined — transparent with teal border + text */
.uaesa-reinstate-shell .md-btn--outlined{
    background:transparent;
    color:#00A5A7;
    border:1px solid #00A5A7;
}
.uaesa-reinstate-shell .md-btn--outlined:not(:disabled):hover{
    background:rgba(0,165,167,.08);
}

/* Danger — solid red (used for the "Pay & Submit" CTA) */
.uaesa-reinstate-shell .md-btn--danger{
    background:var(--md-error);
    color:#fff;
    border:1px solid var(--md-error);
}
.uaesa-reinstate-shell .md-btn--danger:not(:disabled):hover{
    background:#8B0F0F;
    border-color:#8B0F0F;
    box-shadow:var(--md-elev-2);
}

/* Focus rings */
.uaesa-reinstate-shell .md-btn:focus,
.uaesa-reinstate-shell .md-btn:focus-visible{
    outline:2px solid #00A5A7;
    outline-offset:2px;
}
.uaesa-reinstate-shell .md-btn--danger:focus,
.uaesa-reinstate-shell .md-btn--danger:focus-visible{
    outline-color:var(--md-error);
}

/* ------------------------------------------------------------
   12 · BANNERS
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .md-banner{
    display:flex;
    gap:14px;
    padding:16px 18px;
    border-radius:var(--md-shape-md);
    margin-bottom:16px;
    align-items:flex-start;
}
.uaesa-reinstate-shell .md-banner.ok{
    background:var(--md-success-container);
    color:var(--md-on-success-container);
}
.uaesa-reinstate-shell .md-banner.warn{
    background:var(--md-warning-container);
    color:var(--md-on-warning-container);
}
.uaesa-reinstate-shell .md-banner.er{
    background:var(--md-error-container);
    color:var(--md-on-error-container);
}
.uaesa-reinstate-shell .md-banner-icon{
    width:40px;
    height:40px;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(255,255,255,.5);
    font-size:20px;
    font-weight:800;
}
.uaesa-reinstate-shell .md-banner-icon svg{
    width:22px;
    height:22px;
}
.uaesa-reinstate-shell .md-banner-title{
    font-size:14px;
    font-weight:600;
    margin:0 0 2px;
    line-height:1.35;
}
.uaesa-reinstate-shell .md-banner-text{
    font-size:12.5px;
    line-height:1.5;
    margin:0;
    opacity:.92;
}

/* ------------------------------------------------------------
   13 · SCORE STRIP
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .uaesa-score{
    display:flex;
    align-items:center;
    gap:12px;
    padding:16px 18px;
    border-radius:12px;
    margin-bottom:16px;
}
.uaesa-reinstate-shell .uaesa-score.is-pass{
    background:var(--md-success-container);
    color:var(--md-on-success-container);
}
.uaesa-reinstate-shell .uaesa-score.is-fail{
    background:var(--md-error-container);
    color:var(--md-on-error-container);
}
.uaesa-reinstate-shell .uaesa-score.is-warn{
    background:var(--md-warning-container);
    color:var(--md-on-warning-container);
}
.uaesa-reinstate-shell .uaesa-score__gauge{
    width:56px;
    height:56px;
    flex-shrink:0;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:16px;
    font-weight:800;
    background:rgba(255,255,255,.7);
    font-variant-numeric:tabular-nums;
}
.uaesa-reinstate-shell .uaesa-score__text{
    flex:1;
    min-width:0;
}
.uaesa-reinstate-shell .uaesa-score__title{
    font-size:14px;
    font-weight:700;
    margin:0 0 2px;
    line-height:1.35;
}
.uaesa-reinstate-shell .uaesa-score__sub{
    font-size:12px;
    margin:0;
    opacity:.9;
    line-height:1.45;
}

/* ------------------------------------------------------------
   14 · ELIGIBILITY ROWS
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .uaesa-elig{
    display:flex;
    flex-direction:column;
    gap:8px;
    margin-top:8px;
}
.uaesa-reinstate-shell .uaesa-elig-row{
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:12px 14px;
    border:1px solid var(--md-outline-variant);
    border-radius:10px;
    background:#fff;
    transition:border-color .15s, background .15s, box-shadow .15s;
}
.uaesa-reinstate-shell .uaesa-elig-row:hover{
    box-shadow:0 2px 6px rgba(0,0,0,.04);
}
.uaesa-reinstate-shell .uaesa-elig-row.is-pass{
    border-color:#A5D6A7;
    background:#F1F8E9;
}
.uaesa-reinstate-shell .uaesa-elig-row.is-fail{
    border-color:#FFB4AB;
    background:#FFF3F1;
}
.uaesa-reinstate-shell .uaesa-elig-row.is-warn{
    border-color:#FFCC80;
    background:#FFF7E6;
}
.uaesa-reinstate-shell .uaesa-elig-row__icon{
    width:24px;
    height:24px;
    flex-shrink:0;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:13px;
    font-weight:800;
    color:#fff;
    line-height:1;
}
.uaesa-reinstate-shell .uaesa-elig-row.is-pass .uaesa-elig-row__icon{
    background:#2E7D32;
}
.uaesa-reinstate-shell .uaesa-elig-row.is-fail .uaesa-elig-row__icon{
    background:#BA1A1A;
}
.uaesa-reinstate-shell .uaesa-elig-row.is-warn .uaesa-elig-row__icon{
    background:#F57C00;
}
.uaesa-reinstate-shell .uaesa-elig-row__meta{
    flex:1;
    min-width:0;
}
.uaesa-reinstate-shell .uaesa-elig-row__label{
    font-size:13px;
    font-weight:600;
    color:#002022;
    line-height:1.35;
}
.uaesa-reinstate-shell .uaesa-elig-row__detail{
    font-size:11.5px;
    color:#3F4849;
    margin-top:2px;
    line-height:1.4;
    word-break:break-word;
}

/* ------------------------------------------------------------
   15 · DECLARATIONS
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .uaesa-decl{
    display:flex;
    flex-direction:column;
    gap:10px;
}
.uaesa-reinstate-shell .uaesa-decl label{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:12px 14px;
    border:1px solid var(--md-outline-variant);
    border-radius:10px;
    background:#fff;
    cursor:pointer;
    font-size:13px;
    line-height:1.45;
    color:#002022;
    transition:border-color .15s, background .15s;
}
.uaesa-reinstate-shell .uaesa-decl label:hover{
    border-color:#9DD6D8;
    background:#FBFDFD;
}
.uaesa-reinstate-shell .uaesa-decl input[type=checkbox]{
    width:18px;
    height:18px;
    margin:1px 0 0;
    accent-color:#00A5A7;
    flex-shrink:0;
    cursor:pointer;
}
.uaesa-reinstate-shell .uaesa-decl label.is-checked{
    background:#F1F8E9;
    border-color:#A5D6A7;
}

/* ------------------------------------------------------------
   16 · TOTALS GRID
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .md-totals{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
    gap:1px;
    background:var(--md-outline-variant);
    border-radius:var(--md-shape-md);
    overflow:hidden;
    border:1px solid var(--md-outline-variant);
    margin-top:16px;
}
.uaesa-reinstate-shell .md-total-cell{
    background:#fff;
    padding:14px 16px;
    display:flex;
    flex-direction:column;
    gap:2px;
}
.uaesa-reinstate-shell .md-total-label{
    font-size:11px;
    font-weight:500;
    letter-spacing:.6px;
    text-transform:uppercase;
    color:var(--md-on-surface-variant);
}
.uaesa-reinstate-shell .md-total-value{
    font-size:20px;
    font-weight:500;
    color:var(--md-on-surface);
    font-variant-numeric:tabular-nums;
}
.uaesa-reinstate-shell .md-total-cell.grand{
    background:var(--md-success-container);
}
.uaesa-reinstate-shell .md-total-cell.grand .md-total-value{
    color:var(--md-on-success-container);
    font-weight:600;
}

/* ------------------------------------------------------------
   17 · ENTERPRISE SUMMARY (step 3)
   ------------------------------------------------------------ */
.uaesa-reinstate-shell .uaesa-enterprise-summary{
    padding:14px 16px;
    background:var(--md-surface-container-low);
    border-radius:8px;
    margin-top:8px;
}
.uaesa-reinstate-shell .uaesa-enterprise-summary .lbl{
    font-size:11px;
    font-weight:600;
    letter-spacing:.5px;
    text-transform:uppercase;
    color:#6F7979;
    margin-bottom:6px;
}
.uaesa-reinstate-shell .uaesa-enterprise-summary .name{
    font-size:14px;
    font-weight:600;
    color:#002022;
}
.uaesa-reinstate-shell .uaesa-enterprise-summary .meta{
    font-size:12px;
    color:#3F4849;
    margin-top:2px;
}

/* ------------------------------------------------------------
   18 · LOADING SPINNER
   ------------------------------------------------------------ */
.uaesa-reinstate-spinner{
    width:40px;
    height:40px;
    border:3px solid #E3F5F5;
    border-top-color:#00A5A7;
    border-radius:50%;
    margin:0 auto;
    animation:uaesaReinstateSpin .9s linear infinite;
}
@keyframes uaesaReinstateSpin{
    to{transform:rotate(360deg)}
}

.uaesa-reinstate-loading{
    padding:32px 16px;
    text-align:center;
    color:#6F7979;
    font-size:13px;
    line-height:1.5;
}

/* ------------------------------------------------------------
   19 · ERROR STATE
   ------------------------------------------------------------ */
.uaesa-reinstate-error{
    padding:14px 18px;
    background:#FDECEA;
    border:1px solid #F5AEAA;
    border-radius:6px;
    color:#7F1D1D;
    font-size:13px;
    line-height:1.5;
}
.uaesa-reinstate-error strong{
    font-weight:700;
    color:#410002;
}

/* ------------------------------------------------------------
   20 · SNACKBAR (unscoped — JS appends to <body>)
   ------------------------------------------------------------ */
.md-snackbar-container{
    position:fixed;
    bottom:24px;
    left:50%;
    transform:translateX(-50%);
    z-index:100000;
    display:flex;
    flex-direction:column;
    gap:8px;
    max-width:420px;
    width:calc(100% - 40px);
    pointer-events:none;
}
.md-snackbar{
    pointer-events:auto;
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 16px;
    background:#2B3232;
    color:#ECF2F2;
    border-left:3px solid #00A5A7;
    border-radius:4px;
    box-shadow:0 4px 12px rgba(0,0,0,.2);
    font-size:14px;
    line-height:1.4;
    transform:translateY(120%);
    transition:transform .35s cubic-bezier(.4,0,.2,1);
}
.md-snackbar.show{
    transform:translateY(0);
}
.md-snackbar.ok{
    border-left-color:#2E7D32;
}
.md-snackbar.er{
    border-left-color:#BA1A1A;
}
.md-snackbar__msg{
    flex:1;
}

/* ------------------------------------------------------------
   21 · HIDDEN NATIVE SELECT (unscoped)
   ------------------------------------------------------------ */
.uaesa-hidden-select{
    position:absolute !important;
    left:-9999px !important;
    top:auto !important;
    width:1px !important;
    height:1px !important;
    opacity:0 !important;
    pointer-events:none !important;
    clip:rect(0 0 0 0) !important;
    clip-path:inset(50%) !important;
    overflow:hidden !important;
}

/* ------------------------------------------------------------
   22 · GRAVITY FORMS FIELD CONTAINER
   ------------------------------------------------------------ */
.gfield_type_uaesa_reinstate_selector .uaesa-reinstate-shell[data-mode="gf"]{
    max-width:none;
    padding:0;
    margin:0;
}
.gform_wrapper .gfield_type_uaesa_reinstate_selector{
    margin-bottom:20px;
}

/* ------------------------------------------------------------
   23 · RESPONSIVE
   ------------------------------------------------------------ */
@media (max-width:600px){
    .uaesa-reinstate-shell[data-mode="shortcode"]{
        padding:16px 12px 40px;
    }
    .uaesa-reinstate-shell .m3-stepper{
        display:block;
        padding:4px 0 8px;
    }
    .uaesa-reinstate-shell .m3-step{
        flex-direction:row;
        align-items:flex-start;
        gap:14px;
        padding:0 0 20px;
        text-align:left;
    }
    .uaesa-reinstate-shell .m3-step:last-child{
        padding-bottom:0;
    }
    .uaesa-reinstate-shell .m3-step:not(:last-child)::after{
        display:none;
    }
    .uaesa-reinstate-shell .m3-step:not(:last-child)::before{
        content:'';
        position:absolute;
        left:16px;
        top:32px;
        bottom:0;
        width:2px;
        margin-left:-1px;
        background:var(--md-outline-variant);
        z-index:0;
    }
    .uaesa-reinstate-shell .m3-step.is-complete:not(:last-child)::before{
        background:var(--md-primary);
    }
    .uaesa-reinstate-shell .m3-step-indicator{
        width:32px;
        height:32px;
        font-size:13px;
        flex-shrink:0;
        position:relative;
        z-index:1;
    }
    .uaesa-reinstate-shell .m3-step-label{
        font-size:13px;
        line-height:32px;
        flex:1;
    }
    .uaesa-reinstate-shell .m3-step-footer{
        flex-direction:column-reverse;
        align-items:stretch;
    }
    .uaesa-reinstate-shell .m3-step-footer .md-btn{
        width:100%;
    }
    .uaesa-reinstate-shell .m3-step-footer .hint{
        text-align:center;
        order:-1;
    }
    .uaesa-reinstate-shell .md-totals{
        grid-template-columns:1fr 1fr;
    }
    .uaesa-reinstate-shell .md-total-value{
        font-size:17px;
    }
    .uaesa-reinstate-shell .md-card{
        padding:16px;
    }
    .uaesa-reinstate-shell .md-card-header{
        gap:10px;
        margin-bottom:14px;
    }
    .uaesa-reinstate-shell .md-banner{
        padding:14px;
        gap:10px;
    }
    .uaesa-reinstate-shell .md-banner-icon{
        width:36px;
        height:36px;
    }
}

/* ------------------------------------------------------------
   24 · REDUCED MOTION
   ------------------------------------------------------------ */
@media (prefers-reduced-motion:reduce){
    .uaesa-reinstate-shell *,
    .uaesa-reinstate-shell *::before,
    .uaesa-reinstate-shell *::after{
        animation-duration:.001ms !important;
        animation-iteration-count:1 !important;
        transition-duration:.001ms !important;
        scroll-behavior:auto !important;
    }
    .uaesa-reinstate-spinner{
        animation-duration:1.8s !important;
    }
    .md-snackbar{
        transition-duration:.001ms !important;
    }
}

/* ------------------------------------------------------------
   25 · FORCED COLORS
   ------------------------------------------------------------ */
@media (forced-colors:active){
    .uaesa-reinstate-shell .md-btn,
    .uaesa-reinstate-shell .uaesa-elig-row,
    .uaesa-reinstate-shell .uaesa-decl label,
    .uaesa-reinstate-shell .md-field-outlined__container,
    .uaesa-reinstate-shell .md-menu li{
        border:1px solid CanvasText !important;
    }
    .uaesa-reinstate-shell .uaesa-elig-row__icon,
    .uaesa-reinstate-shell .uaesa-score__gauge,
    .uaesa-reinstate-shell .m3-step-indicator{
        border:1px solid CanvasText;
    }
    .uaesa-reinstate-shell .md-btn--filled,
    .uaesa-reinstate-shell .md-btn--danger{
        background:ButtonFace !important;
        color:ButtonText !important;
        border:1px solid ButtonText !important;
    }
}

/* ------------------------------------------------------------
   26 · WOOCOMMERCE CHECKOUT BUTTON — OPTIONAL
   ------------------------------------------------------------
   WooCommerce renders its own Place Order button on the
   /checkout/ page. This file does NOT load on that page by
   default — it's enqueued only on pages containing the
   [uaesa_reinstate] shortcode or the GF reinstate field.

   If you also enqueue this file on the WooCommerce checkout
   page (e.g. via wp_enqueue_style when is_checkout()), the
   rules below will turn the Place Order button to #00A5A7
   so the whole reinstate flow stays on-brand.

   The block is scoped to `.woocommerce-checkout` so it does
   NOT affect the cart page, product pages, shop archive,
   WooCommerce emails, or any other WooCommerce page.

   No layout, padding, height, or transition is touched — only
   the background / border / text colours.
   ------------------------------------------------------------ */
.woocommerce-checkout #place_order,
.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button,
.woocommerce-checkout button.wc-block-components-checkout-place-order-button{
    background-color:#00A5A7 !important;
    background-image:none !important;
    border-color:#00A5A7 !important;
    color:#FFFFFF !important;
}
.woocommerce-checkout #place_order:hover,
.woocommerce-checkout #place_order:focus,
.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button:hover,
.woocommerce-checkout button.wc-block-components-checkout-place-order-button:hover{
    background-color:#008B8D !important;
    background-image:none !important;
    border-color:#008B8D !important;
    color:#FFFFFF !important;
}