/* SHOP-060: DEV-only customer notice; markup stays inside the existing DEV host guard. */
.tyc-security-notice {
    position: fixed; right: 24px; bottom: 24px; z-index: 1040;
    width: min(380px, calc(100vw - 32px)); max-height: calc(100dvh - 32px);
    overflow: auto; box-sizing: border-box; margin: 0; color: #243348;
    background: #fff; border: 1px solid #dce5ef; border-radius: 20px;
    box-shadow: 0 14px 48px rgba(22, 48, 78, .18);
    font-family: inherit; text-align: left;
}
.tyc-security-notice:not([open]) { display: none; }
.tyc-security-notice__close {
    position: absolute; top: 10px; right: 10px; display: grid; place-items: center;
    width: 40px; height: 40px; padding: 0; list-style: none; cursor: pointer;
    border: 0; border-radius: 50%; background: #f2f5f8; color: #35465c;
    font-size: 27px; font-weight: 400; line-height: 1;
}
.tyc-security-notice__close::-webkit-details-marker { display: none; }
.tyc-security-notice__close:hover { background: #e8eff6; }
.tyc-security-notice__close:focus-visible { outline: 3px solid #1568b8; outline-offset: 2px; }
.tyc-security-notice__content { padding: 26px; }
.tyc-security-notice__badge { display: flex; align-items: center; gap: 12px; padding-right: 30px; color: #14684b; line-height: 1.3; font-size: 14px; }
.tyc-security-notice__badge strong { font-size: 17px; font-weight: 700; }
.tyc-security-notice__shield { flex: 0 0 40px; }
.tyc-security-notice__preview { display: inline-block; margin-top: 19px; color: #5a6c81; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.tyc-security-notice h2 { margin: 7px 0 12px; font-family: inherit; color: #183b67; font-size: 23px; line-height: 1.2; font-weight: 700; }
.tyc-security-notice p { margin: 0; color: #35465c; font-size: 14px; line-height: 1.6; }
.tyc-security-notice .tyc-security-notice__note { margin-top: 16px; padding-top: 14px; border-top: 1px solid #e7edf3; color: #14684b; font-size: 13px; font-weight: 600; }
@media (max-width: 575.98px) {
    .tyc-security-notice { right: 16px; bottom: 16px; border-radius: 18px; }
    .tyc-security-notice__content { padding: 22px; }
    .tyc-security-notice h2 { font-size: 21px; }
}

.tyc-security-notice[hidden] { display:none !important; }
.tyc-security-notice__topline { display:flex; justify-content:space-between; align-items:center; gap:12px; margin:16px 0 18px; }
.tyc-security-notice__topline .tyc-security-notice__badge { padding:0; min-width:0; }
.tyc-security-notice__preview { margin-top:0; }
.tyc-security-notice__status { display:flex; flex:0 0 auto; flex-direction:column; align-items:flex-end; gap:4px; }
.tyc-security-notice__php-text { color:#183b67; font-family:inherit; font-size:34px; line-height:1; font-weight:800; letter-spacing:-1px; }
.tyc-security-notice__done { display:inline-flex; align-items:center; gap:4px; padding:4px 6px; border-radius:7px; background:#e9f6ee; color:#14684b; font-size:10px; font-weight:700; line-height:1.3; }
@media (max-width:359.98px) {
 .tyc-security-notice__topline { gap:8px; }
 .tyc-security-notice__badge { gap:8px; font-size:12px; }
 .tyc-security-notice__badge strong { font-size:14px; }
 .tyc-security-notice__shield { flex-basis:30px; width:30px; height:34px; }
 .tyc-security-notice__php-text { font-size:29px; }
}

/* Never cover a cart drawer, checkout dialog or other blocking shop surface. */
body:has(.offcanvas.show) .tyc-security-notice,
body:has(.offcanvas.showing) .tyc-security-notice,
body.modal-open .tyc-security-notice,
body:has(dialog[open]) .tyc-security-notice { display:none !important; }
