.nq-wall-ar {
    --nq-ar-green: #162300;
    --nq-ar-lime: #c6ff3a;
    margin: 0 0 24px;
    color: var(--nq-ar-green);
    font-family: inherit;
}
.nq-wall-ar [hidden] { display: none !important; }
.nq-wall-ar button { font: inherit; }
.nq-wall-ar button { cursor: pointer; }
.nq-wall-ar button:focus-visible {
    outline: 3px solid #59792b;
    outline-offset: 4px;
}
.nq-wall-ar__launch {
    position: relative;
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    width: 100%;
    box-sizing: border-box;
    padding: 12px 14px;
    color: var(--nq-ar-lime);
    background: linear-gradient(115deg, #162300, #344711);
    border: 1px solid #88a94e;
    border-radius: 14px;
    text-align: start;
    box-shadow: 0 0 0 3px #dafb7b1f, 0 7px 20px #3053261a;
    transition: box-shadow .2s ease, transform .2s ease;
    animation: nq-wall-ar-glow 4s ease-in-out 2;
}
.nq-wall-ar__launch:hover { box-shadow: 0 0 0 4px #dafb7b3b, 0 8px 24px #30532630; transform: translateY(-1px); }
.nq-wall-ar__launch:disabled { cursor: default; opacity: .65; transform: none; animation: none; }
.nq-wall-ar__icon { display: flex; align-items: center; justify-content: center; }
.nq-wall-ar__icon svg { display: block; width: 28px; height: 28px; }
.nq-wall-ar__label { display: grid; justify-items: start; gap: 5px; min-width: 0; }
.nq-wall-ar__title { color: #efffcb; font-size: 16px; font-weight: 700; line-height: 1.45; }
.nq-wall-ar__size { box-sizing: border-box; max-width: 100%; padding: 3px 7px; color: #ecffc3; background: #ffffff0d; border: 1px solid #dafa7b4d; border-radius: 6px; font-size: 11px; line-height: 1.4; overflow-wrap: anywhere; }
.nq-wall-ar__native-link { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.nq-wall-ar__viewer { position: fixed; inset: 0; display: block; width: 100%; height: 100%; opacity: 0; pointer-events: none; z-index: -1; --progress-bar-color: transparent; }
.nq-wall-ar__viewer[data-nq-presenting] { opacity: 1; z-index: 1061; }
.nq-wall-ar__scan { position: absolute; inset-inline: 20px; bottom: calc(28px + env(safe-area-inset-bottom, 0px)); max-width: 380px; margin: 0 auto; padding: 12px 16px; border-radius: 12px; background: #162300e6; color: #efffcb; font-size: 14px; line-height: 1.7; text-align: center; pointer-events: none; }
.nq-wall-ar__exit { position: absolute; top: calc(16px + env(safe-area-inset-top, 0px)); inset-inline-end: 16px; min-height: 44px; padding: 10px 18px; border: 1px solid #dafa7b; border-radius: 10px; background: #162300; color: #efffcb; font-size: 14px; font-weight: 700; pointer-events: auto; }
.nq-wall-ar__dialog {
    position: fixed;
    inset: 0;
    width: min(330px, calc(100% - 28px));
    max-height: 90vh;
    max-height: 90dvh;
    margin: auto;
    padding: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    color: var(--nq-ar-green);
    background: #fcfdf8;
    border: 1px solid #e4e9da;
    border-radius: 16px;
    box-shadow: 0 24px 80px #142b2540;
    font-family: inherit;
    text-align: start;
    z-index: 1060;
}
.nq-wall-ar__dialog::backdrop { background: #10291fd1; }
.nq-wall-ar__dialog[data-nq-fallback-open] { box-shadow: 0 0 0 100vmax #10291fd1; }
.nq-wall-ar__dialog-body { padding: 24px; }
.nq-wall-ar__dialog-title { margin: 0 0 10px; color: var(--nq-ar-green); font-size: 20px; font-weight: 700; line-height: 1.45; }
.nq-wall-ar__dialog-description { margin: 0; color: #475b4f; font-size: 14px; line-height: 1.8; }
.nq-wall-ar__close { display: block; width: 100%; margin-top: 20px; padding: 10px 14px; background: var(--nq-ar-green); color: #edffc4; border: 0; border-radius: 8px; font-size: 14px; font-weight: 700; }
@keyframes nq-wall-ar-glow { 0%, 100% { box-shadow: 0 0 0 3px #dafb7b1f, 0 7px 20px #3053261a; } 50% { box-shadow: 0 0 0 5px #dafb7b42, 0 7px 22px #7ba24133; } }
@media (max-width: 480px) {
    .nq-wall-ar__launch { grid-template-columns: 26px minmax(0, 1fr); gap: 8px; padding: 11px 12px; }
    .nq-wall-ar__icon svg { width: 26px; height: 26px; }
    .nq-wall-ar__title { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
    .nq-wall-ar__launch { animation: none; transition: none; }
    .nq-wall-ar__launch:hover { transform: none; }
}
