/* Theme typography, blue palette and motion with a lightweight frosted surface. */
body:not(.wp-admin) .nvc-app {
    --nvc-canvas: #f0f2f7; --nvc-ink: #475669; --nvc-muted: #657487;
    --nvc-editor-paper: #f8fbfe;
    --nvc-accent: #147ec2; --nvc-panel: rgba(255,255,255,.78); --nvc-field: rgba(255,255,255,.65);
    --nvc-border: rgba(128,152,184,.16); --nvc-soft: rgba(227,237,249,.55); --nvc-highlight: rgba(219,239,255,.7);
    --nvc-glass: linear-gradient(155deg,rgba(255,255,255,.9),rgba(249,252,255,.66));
    --nvc-glass-edge: rgba(255,255,255,.82); --nvc-glass-control: rgba(255,255,255,.72);
    --nvc-glass-selected: linear-gradient(130deg,rgba(255,255,255,.96),rgba(236,247,255,.86));
    --nvc-glass-shadow: 0 6px 18px rgba(59,83,115,.07),0 1px 3px rgba(59,83,115,.035);
    --nvc-control-shadow: 0 2px 6px rgba(59,83,115,.045);
    --nvc-radius: var(--nirvana-ui-card-radius); --nvc-shadow: var(--nvc-glass-shadow);
    font-family: var(--nirvana-ui-font);
}
body.night:not(.wp-admin) .nvc-app, [data-theme=dark] .nvc-app {
    --nvc-canvas: #202c3c; --nvc-ink: #dce5ef; --nvc-muted: #afbdd0;
    --nvc-editor-paper: #2b3b4f;
    --nvc-accent: #83c5ff; --nvc-panel: rgba(42,57,76,.86); --nvc-field: rgba(48,65,86,.65);
    --nvc-border: rgba(146,174,207,.16); --nvc-soft: rgba(87,116,152,.14); --nvc-highlight: rgba(68,119,166,.26);
    --nvc-glass: linear-gradient(155deg,rgba(53,71,94,.88),rgba(38,52,71,.78));
    --nvc-glass-edge: rgba(183,210,242,.14); --nvc-glass-control: rgba(56,76,100,.68);
    --nvc-glass-selected: linear-gradient(130deg,rgba(71,100,134,.8),rgba(54,80,111,.7));
    --nvc-glass-shadow: 0 6px 18px rgba(8,16,28,.14),0 1px 3px rgba(8,16,28,.08);
    --nvc-control-shadow: 0 2px 6px rgba(8,16,28,.1);
}
/* A pale canvas, as on the blog, lets the glass stay airy instead of grey. */
body.nvc-forum-shell {
    background: url(../imgs/niRvana_bg_down.png) left bottom / 375px 399px no-repeat fixed,
                url(../imgs/niRvana_bg_up.png) right top / 375px 212px no-repeat fixed #f0f2f7 !important;
}
/* The theme's native PNGs include a pale canvas; keep its dark-mode behaviour. */
body.nvc-forum-shell.night { background: #202c3c !important; }
body:not(.wp-admin) .nvc-app .nvc-panel, .nvc-forum .nvc-rail {
    background: var(--nvc-glass); border: 1px solid var(--nvc-glass-edge);
    border-radius: var(--nirvana-ui-card-radius); box-shadow: var(--nvc-glass-shadow);
}
/* Blur only the outer content surface and chrome, never list rows or tab pills. */
.nvc-forum .nvc-stage > .nvc-panel, .nvc-forum .nvc-main > .nvc-panel {
    backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
}
.nvc-forum .nvc-header { background: transparent; border-bottom: 1px solid var(--nvc-border); }
.nvc-forum .nvc-header::before {
    background: var(--nvc-panel); backdrop-filter: blur(20px) saturate(130%);
    -webkit-backdrop-filter: blur(20px) saturate(130%);
}
.nvc-forum .nvc-rail { backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); }
body:not(.wp-admin) .nvc-app :is(.nvc-welcome,.nvc-header-account) { backdrop-filter: none; -webkit-backdrop-filter: none; }
.nvc-forum .nvc-brand { color: var(--nvc-ink); text-shadow: none; }
body:not(.wp-admin) .nvc-app .nvc-icon {
    display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
    width: var(--nvc-icon-size,20px); height: var(--nvc-icon-size,20px);
    font-size: var(--nvc-icon-size,20px); line-height: 1; vertical-align: middle;
}
body:not(.wp-admin) .nvc-app :is(.nvc-button.is-secondary,.nvc-icon-button,.nvc-rail-nav a[aria-current]) {
    background: var(--nvc-glass-selected); box-shadow: var(--nvc-control-shadow);
    border-color: var(--nvc-glass-edge); color: var(--nvc-ink); text-shadow: none;
}
body:not(.wp-admin) .nvc-app .nvc-rail-nav a[aria-current] { color: var(--nvc-accent); }
body:not(.wp-admin) .nvc-app .nvc-button:not(.is-secondary):not(.is-danger) {
    background: linear-gradient(110deg,#20a0ff,#20b8ff); color: #fff;
    box-shadow: 0 4px 10px rgba(32,160,255,.2); text-shadow: 0 1px 2px rgba(0,82,155,.22);
}
body:not(.wp-admin) .nvc-app :is(.nvc-button,.nvc-icon-button,.nvc-interaction,.nvc-rail-nav a) {
    transition: color var(--nirvana-ui-duration),background var(--nirvana-ui-duration),box-shadow var(--nirvana-ui-duration);
}
body:not(.wp-admin) .nvc-app .nvc-button:not(.is-secondary):not(.is-danger):hover {
    background: linear-gradient(110deg,#168ee8,#20aaff); color: #fff;
    box-shadow: 0 5px 12px rgba(32,160,255,.25);
}
body:not(.wp-admin) .nvc-app :is(.nvc-button.is-secondary,.nvc-icon-button):hover { color: var(--nvc-accent); background: var(--nvc-glass-control); }
body:not(.wp-admin) .nvc-app :is(.nvc-button.is-secondary,.nvc-icon-button):active {
    background: var(--nvc-highlight); box-shadow: none;
}
/* Floating glass selection on a translucent strip; dimensions stay constant. */
body:not(.wp-admin) .nvc-app .nvc-tabs {
    margin: 12px 20px 16px; padding: 5px; gap: 4px; border: 0; border-radius: 12px;
    background: var(--nvc-soft); box-shadow: none;
    scrollbar-width: none; scroll-behavior: auto;
}
body:not(.wp-admin) .nvc-app .nvc-tabs::-webkit-scrollbar { display: none; }
body:not(.wp-admin) .nvc-app .nvc-tabs a {
    min-height: 38px; padding: 7px 16px; border: 0; border-radius: 9px;
    color: var(--nvc-muted); text-shadow: none; flex-shrink: 0;
    transition: color var(--nirvana-ui-duration),background var(--nirvana-ui-duration),box-shadow var(--nirvana-ui-duration);
}
body:not(.wp-admin) .nvc-app .nvc-tabs a[aria-current] {
    color: var(--nvc-accent); background: var(--nvc-glass-selected); box-shadow: var(--nvc-control-shadow);
}
body:not(.wp-admin) .nvc-app .nvc-tabs a:hover { color: var(--nvc-accent); }
body:not(.wp-admin) .nvc-app :is(.nvc-form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.nvc-form select,.nvc-form textarea,.nvc-search input) {
    background: var(--nvc-field); border-color: transparent;
    box-shadow: var(--nvc-control-shadow); color: var(--nvc-ink);
}
body:not(.wp-admin) .nvc-app :is(input,select,textarea)::placeholder { color: var(--nvc-muted); opacity: .85; }
body:not(.wp-admin) .nvc-app :is(input,select,textarea):focus {
    background: var(--nvc-glass-control); border-color: transparent; outline: none;
    box-shadow: 0 2px 0 var(--nvc-accent),var(--nvc-control-shadow);
}
body:not(.wp-admin) .nvc-app :is(a,button):focus-visible { outline: 2px solid var(--nvc-accent); outline-offset: 3px; }
body:not(.wp-admin) .nvc-app :is(.nvc-editor-shell,.nvc-native-composer) { background: var(--nvc-field); }
body:not(.wp-admin) .nvc-app :is(.mce-toolbar-grp,.quicktags-toolbar) { background: var(--nvc-glass-control); }
body:not(.wp-admin) .nvc-app .nvc-dialog-symbol { box-shadow: var(--nvc-control-shadow); }
body:not(.wp-admin) .nvc-dialog {
    background: var(--nvc-glass); border: 1px solid var(--nvc-glass-edge); box-shadow: var(--nvc-glass-shadow);
    backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
}
body:not(.wp-admin) .nvc-app .nvc-interaction.is-active { background: var(--nvc-highlight); color: var(--nvc-accent); box-shadow: none; }
body:not(.wp-admin) .nvc-app .nvc-interaction:hover { color: var(--nvc-accent); background: var(--nvc-soft); }
body:not(.wp-admin) .nvc-app .nvc-footer { color: var(--nvc-muted); }
/* Solid fallback keeps content readable on browsers without backdrop filtering. */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    body:not(.wp-admin) .nvc-app { --nvc-panel: #f9fbfe; --nvc-glass: linear-gradient(#fff,#f5f8fc); }
    body.night:not(.wp-admin) .nvc-app, [data-theme=dark] .nvc-app { --nvc-panel: #2a394c; --nvc-glass: linear-gradient(#304157,#29394d); }
}
@media(prefers-reduced-transparency:reduce) {
    body:not(.wp-admin) .nvc-app { --nvc-panel: #f9fbfe; --nvc-glass: linear-gradient(#fff,#f5f8fc); --nvc-field: #fff; }
    body.night:not(.wp-admin) .nvc-app, [data-theme=dark] .nvc-app { --nvc-panel: #2a394c; --nvc-glass: linear-gradient(#304157,#29394d); --nvc-field: #304157; }
    .nvc-forum .nvc-header::before,.nvc-forum .nvc-rail,.nvc-forum .nvc-stage > .nvc-panel,.nvc-forum .nvc-main > .nvc-panel,body:not(.wp-admin) .nvc-dialog { backdrop-filter: none; -webkit-backdrop-filter: none; }
}
/* Native PdMessage skin and motion are canonical; these only add accessibility. */
body.nvc-forum-shell #pdnotify_container { padding-bottom: env(safe-area-inset-bottom); }
#pdnotify_container [data-nvc-notice] .pdnotify { position: relative; padding-right: 32px; max-width: calc(100vw - 32px); box-sizing: border-box; font: 13px/1.65 var(--nirvana-ui-font); }
#pdnotify_container [data-nvc-notice] .pdnotify span { overflow-wrap: anywhere; }
.nirvana-notice-close { position: absolute; right: 6px; top: 4px; border: 0; background: transparent; color: inherit; font: 20px/1 sans-serif; width: 24px; height: 24px; cursor: pointer; }
.nirvana-notice-close:focus-visible { outline: 2px solid currentColor; border-radius: 5px; }
#pdnotify_container [hidden] { display: none !important; }
@media(max-width:600px) {
    body.nvc-forum-shell:not(.night) { background-size: 220px 234px,220px 124px !important; }

    body:not(.wp-admin) .nvc-app .nvc-tabs { margin-left: 14px; margin-right: 14px; }
    body:not(.wp-admin) .nvc-app .nvc-tabs a { padding: 7px 13px; }
    .nvc-forum .nvc-rail { box-shadow: none; border: 0; border-radius: 0; backdrop-filter: none; -webkit-backdrop-filter: none; }
}
@media(prefers-reduced-motion:reduce) {
    body:not(.wp-admin) .nvc-app :is(a,button),#pdnotify_container *,#pdnotify_container *::before { transition: none !important; animation: none !important; }
    #pdnotify_container .pdnotify_wrapper:not(.is_disappearing),#pdnotify_container .pdnotify_wrapper span { transform: none !important; }
}
