/* Imperial felt, engraved brass and playing-card heraldry. */
#v177-imperial-dialog[hidden] { display: none !important; }
#v177-imperial-dialog {
    position: fixed;
    inset: 0;
    z-index: 2147483647 !important;
    display: grid;
    place-items: center;
    padding: max(18px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
    overflow-y: auto;
    overscroll-behavior: contain;
    color: #f4e7cc;
    background: radial-gradient(ellipse at center, #04100db0, #020605eb);
    backdrop-filter: blur(6px);
    font-family: "Yu Mincho", "Hiragino Mincho ProN", Georgia, serif;
    line-height: 1.6;
}
html.shocker-auth-locked body > #v177-imperial-dialog:not([hidden]) { display: grid !important; }
#v177-imperial-dialog * { box-sizing: border-box; }
#v177-imperial-dialog .v177-dialog-panel {
    position: relative;
    width: min(100%, 480px);
    max-height: min(680px, calc(100dvh - 36px));
    overflow: auto;
    padding: 28px 34px 18px;
    border: 1px solid #c8a864;
    border-radius: 10px;
    background: radial-gradient(ellipse at 50% 0, #26443970, transparent 65%), repeating-linear-gradient(135deg, #ffffff02 0 1px, transparent 1px 5px), linear-gradient(155deg, #10241d, #080f0e 78%);
    box-shadow: 0 24px 85px #000b, inset 0 0 0 5px #07120e, inset 0 0 0 6px #b99a513d, inset 0 2px 12px #d1ad4e0d;
    text-align: center;
    isolation: isolate;
}
#v177-imperial-dialog .v177-dialog-panel::before,
#v177-imperial-dialog .v177-dialog-panel::after {
    content: "";
    position: absolute;
    top: 12px;
    width: 23px;
    height: 23px;
    border-top: 1px solid #c8a864;
    pointer-events: none;
}
#v177-imperial-dialog .v177-dialog-panel::before { left: 12px; border-left: 1px solid #c8a864; }
#v177-imperial-dialog .v177-dialog-panel::after { right: 12px; border-right: 1px solid #c8a864; }
#v177-imperial-dialog .v177-dialog-kicker { color: #bea575; font: 600 9px/1.4 Georgia, serif; letter-spacing: .19em; }
#v177-imperial-dialog .v177-dialog-crest { display: grid; place-items: center; width: 62px; height: 62px; margin: 16px auto 12px; border: 1px solid #ac8b4b; border-radius: 50%; box-shadow: inset 0 0 0 4px #091710, inset 0 0 0 5px #ac8b4b4d, 0 0 25px #c9a35b10; color: #ddc080; background: radial-gradient(circle, #32442a, #0b1813 76%); }
#v177-imperial-dialog .v177-dialog-crest span { font: 32px/1 Georgia, serif; text-shadow: 0 2px 3px #000; }
#v177-imperial-dialog .v177-dialog-rule { display: flex; align-items: center; justify-content: center; gap: 9px; color: #c7a86d; font-size: 8px; }
#v177-imperial-dialog .v177-dialog-rule::before,
#v177-imperial-dialog .v177-dialog-rule::after { content: ""; width: 65px; height: 1px; background: linear-gradient(90deg, transparent, #b79656); }
#v177-imperial-dialog .v177-dialog-rule::after { transform: rotate(180deg); }
#v177-imperial-dialog #v177-dialog-title { margin: 14px 0 10px; color: #f3ddaa; font: 700 clamp(20px, 5vw, 25px)/1.45 "Yu Mincho", Georgia, serif; letter-spacing: .08em; text-shadow: 0 2px 6px #000; }
#v177-imperial-dialog #v177-dialog-message { margin: 0; color: #ded7c7; font-size: 14px; line-height: 1.9; white-space: pre-line; overflow-wrap: anywhere; text-align: left; }
#v177-imperial-dialog .v177-dialog-actions { display: flex; justify-content: center; gap: 12px; margin: 25px 0 17px; }
#v177-imperial-dialog button { min-height: 44px; margin: 0; padding: 10px 18px; border: 1px solid #9f854f; border-radius: 5px; color: #d9c8a7; background: linear-gradient(#14291f, #0b1813); font: 700 13px/1.4 "Yu Mincho", Georgia, serif; cursor: pointer; letter-spacing: .04em; box-shadow: inset 0 0 0 2px #0002; touch-action: manipulation; }
#v177-imperial-dialog button[hidden] { display: none !important; }
#v177-imperial-dialog #v177-dialog-accept { border-color: #cfb36e; color: #19150d; background: linear-gradient(135deg, #ead39b, #bb9549); box-shadow: inset 0 0 0 2px #fff2, 0 3px 9px #0005; }
#v177-imperial-dialog[data-tone="danger"] #v177-dialog-accept { border-color: #c79f66; color: #f7e4bb; background: linear-gradient(135deg, #713c2c, #41201c); }
#v177-imperial-dialog button:hover { filter: brightness(1.18); }
#v177-imperial-dialog button:focus-visible { outline: 2px solid #f0d48e; outline-offset: 4px; }
#v177-imperial-dialog #v177-dialog-close { position: absolute; top: 18px; right: 18px; min-height: 30px; width: 30px; padding: 0; border-color: transparent; color: #bca878; background: transparent; box-shadow: none; font: 24px/1 sans-serif; }
#v177-imperial-dialog .v177-dialog-seal { display: flex; justify-content: center; gap: 10px; color: #927c55; font-size: 10px; letter-spacing: .12em; }
#v177-imperial-dialog .v177-dialog-seal span { font-size: 8px; letter-spacing: .16em; }
body.v177-dialog-open { overflow: hidden !important; }
@media (max-width: 480px) {
    #v177-imperial-dialog .v177-dialog-panel { padding: 26px 24px 17px; }
    #v177-imperial-dialog #v177-dialog-message { font-size: 13px; }
    #v177-imperial-dialog .v177-dialog-actions { gap: 9px; }
    #v177-imperial-dialog .v177-dialog-actions button { flex: 1; padding-inline: 9px; }
}
@media (max-height: 500px) {
    #v177-imperial-dialog { padding-block: 12px; }
    #v177-imperial-dialog .v177-dialog-panel { max-height: calc(100dvh - 24px); padding-block: 18px 14px; }
    #v177-imperial-dialog .v177-dialog-crest { width: 42px; height: 42px; margin-block: 9px 7px; }
    #v177-imperial-dialog .v177-dialog-crest span { font-size: 25px; }
    #v177-imperial-dialog #v177-dialog-title { margin-block: 9px 7px; }
    #v177-imperial-dialog .v177-dialog-actions { margin-block: 15px 12px; }
}
