/* Shared interaction states for the customer panel, admin panel and auth pages.
   Loaded last so it wins over older per-page rules.
   - Calm palette: a muted burnt orange and a soft navy, both readable with white text.
   - Hover never underlines and never "flashes": colours only deepen a little.
   - Any button whose background fills on hover gets white text. */
:root{
    --tz-btn-navy:#1F3B5C;          /* white text contrast 11.4:1 */
    --tz-btn-navy-hover:#2A4A70;
    --tz-btn-orange:#C2621F;        /* muted burnt orange, white text 4.2:1 */
    --tz-btn-orange-hover:#A9541B;
    --tz-btn-tint:#EEF2F7;          /* soft hover background for tabs and menu items */
    --tz-btn-radius:10px;
}
.tz-panel,.tz-auth{--tz-orange:var(--tz-btn-orange);--tz-orange-hover:var(--tz-btn-orange-hover)}

/* Links: colour change only. */
a:hover,a:focus-visible,
.tz-panel a:hover,.tz-auth a:hover,
.tz-admin-ui .tz-panel-content a:hover{text-decoration:none!important}
.tz-panel-content a:not([class]):hover,
.tz-auth a:not([class]):hover{color:var(--tz-btn-orange)}
.tz-panel-content :is(button,.tz-link-button,.tz-auth-text-button,.tz-notice-read):hover{text-decoration:none!important}

/* Buttons: rounded corners, soft navy, gentle state change. */
.tz-panel-content :is(.tz-button,.button,button:not([class])),
.tz-auth :is(.tz-button,.button,button:not([class])),
.tz-admin-ui .tz-panel-content :is(.tz-button,button.button,a.button,button:not([class])){
    border-radius:var(--tz-btn-radius);
    box-shadow:none;
    transition:background-color .15s ease,border-color .15s ease,color .15s ease;
}
.tz-panel-content .tz-button:not(.tz-button-secondary):not(.tz-button-ghost):not(.tz-button-danger):not(.tz-button-success),
.tz-admin-ui .tz-panel-content :is(.tz-button,button.button,a.button,button:not([class])):not(.tz-button-secondary):not(.tz-button-ghost):not(.tz-button-danger):not(.tz-button-success):not(.alt):not(.tz-dropdown *){
    background:var(--tz-btn-navy);border-color:var(--tz-btn-navy);color:#fff;
}
.tz-panel-content .tz-button:not(.tz-button-secondary):not(.tz-button-ghost):not(.tz-button-danger):not(.tz-button-success):hover,
.tz-panel-content :is(.button,button:not([class])):not(.alt):not(.tz-dropdown *):hover,
.tz-admin-ui .tz-panel-content :is(.tz-button,button.button,a.button,button:not([class])):not(.tz-button-secondary):not(.tz-button-ghost):not(.tz-button-danger):not(.tz-button-success):not(.alt):not(.tz-dropdown *):hover:not(:disabled):not([aria-disabled=true]){
    background:var(--tz-btn-navy-hover);border-color:var(--tz-btn-navy-hover);color:#fff;
}

/* Secondary / outline: white with navy text, fills navy on hover with white text. */
.tz-panel-content :is(.tz-button-secondary,.button.alt),
.tz-admin-ui .tz-panel-content :is(.tz-button-secondary,.button.alt){background:#fff;border:1px solid #cfd8e3;color:var(--tz-btn-navy)}
.tz-panel-content :is(.tz-button-secondary,.button.alt):hover,
.tz-admin-ui .tz-panel-content :is(.tz-button-secondary,.button.alt):hover:not(:disabled):not([aria-disabled=true]){
    background:var(--tz-btn-navy);border-color:var(--tz-btn-navy);color:#fff;
}
.tz-panel-content :is(.tz-button-secondary,.button.alt):hover *,
.tz-panel-content .tz-button:hover *{color:inherit}

/* Ghost buttons: subtle tint, keep text navy. */
.tz-panel-content .tz-button-ghost:hover{background:var(--tz-btn-tint);border-color:transparent;color:var(--tz-btn-navy)}

/* Danger keeps its meaning: fill red, white text. */
.tz-panel-content .tz-button-danger:hover,
.tz-admin-ui .tz-panel-content .tz-button-danger:hover:not(:disabled):not([aria-disabled=true]){background:#a8322a;border-color:#a8322a;color:#fff}

/* Menus ("⋮" dropdowns): every item is a plain row - never a filled button. */
.tz-panel .tz-dropdown :is(a,button),
.tz-admin-ui .tz-panel-content .tz-dropdown :is(a,button,button:not([class])){
    display:flex;align-items:center;gap:8px;width:100%;min-height:36px;margin:0;padding:8px 12px;
    border:0;border-radius:8px;background:transparent;color:var(--tz-text,#1d2b3a);
    font:inherit;font-size:13px;font-weight:500;text-align:left;justify-content:flex-start;cursor:pointer;box-shadow:none;
}
.tz-panel .tz-dropdown :is(a,button):hover,
.tz-panel .tz-dropdown :is(a,button):focus-visible,
.tz-admin-ui .tz-panel-content .tz-dropdown :is(a,button,button:not([class])):hover{background:var(--tz-btn-tint);color:var(--tz-btn-navy)}
.tz-panel .tz-dropdown form{margin:0}

/* Auth pages: pill submit button in orange, deeper orange on hover. */
.tz-auth .tz-auth-submit{border-radius:999px;background:var(--tz-btn-orange);border-color:var(--tz-btn-orange);color:#fff;font-weight:600}
.tz-auth .tz-auth-submit:hover,.tz-auth .tz-auth-submit:focus-visible{background:var(--tz-btn-orange-hover);border-color:var(--tz-btn-orange-hover);color:#fff}
.tz-auth .tz-auth-text-button:hover{color:var(--tz-btn-orange)}
.tz-auth .tz-button-secondary{border-radius:999px}

/* Tabs and filter pills: soft tint on hover, navy when selected. */
.tz-panel .tz-my-orders-tabs a:hover:not([aria-current=page]),
.tz-admin-ui .tz-orders-tabs a:hover:not([aria-current=page]),
.tz-admin-ui :is(.tz-status-tabs,.tz-user-counters) a:hover:not([aria-current=page]){background:var(--tz-btn-tint);border-color:#cfd8e3;color:var(--tz-btn-navy)}
.tz-panel .tz-my-orders-tabs a[aria-current=page],
.tz-admin-ui .tz-orders-tabs a[aria-current=page]{background:var(--tz-btn-navy);border-color:var(--tz-btn-navy)}

/* Customer panel components. */
.tz-panel .tz-my-orders-search button{background:var(--tz-btn-navy)}
.tz-panel .tz-my-orders-search button:hover{background:var(--tz-btn-navy-hover)}
.tz-panel .tz-my-orders-new{background:var(--tz-btn-orange)}
.tz-panel .tz-my-orders-new:hover{background:var(--tz-btn-orange-hover);color:#fff}
.tz-home-action{border-color:#cfd8e3;color:var(--tz-btn-navy)}
.tz-home-action:hover{background:var(--tz-btn-navy);border-color:var(--tz-btn-navy);color:#fff}
.tz-home-action-primary{background:var(--tz-btn-orange);border-color:var(--tz-btn-orange);color:#fff}
.tz-home-action-primary:hover{background:var(--tz-btn-orange-hover);border-color:var(--tz-btn-orange-hover);color:#fff}
.tz-home-orders-head a,.tz-notice-link{color:var(--tz-btn-orange)}
.tz-home-orders-head a:hover,.tz-notice-link:hover{color:var(--tz-btn-orange-hover)}
.tz-notice-read:hover{color:var(--tz-btn-navy)}
.tz-dashboard-refer{background:var(--tz-btn-navy)}
.tz-dashboard-refer-button:hover{background:var(--tz-btn-tint);color:var(--tz-btn-navy)}
.tz-panel .tz-my-orders-table td.tz-my-orders-link a:hover,
.tz-admin-ui .tz-orders-list .tz-orders-link a:hover,
.tz-admin-ui .tz-orders-list :is(.tz-orders-id,.tz-orders-customer) a:hover{color:var(--tz-btn-orange)}
.tz-impersonation-banner button:hover{background:var(--tz-btn-orange);border-color:var(--tz-btn-orange);color:#fff}
