/* Blubby — collections Plus / Max. Palettes et cadres vectoriels, sans police externe. */
html[data-theme="nebula"]{--bg:#12101f;--surface:#1c182d;--surface2:#27203c;--line:#443854;--text:#f2ecff;--muted:#b8accb;--accent:#bca1f2;--accent-ink:#21172f;--bl-accent:#bca1f2;--bl-rail:#12101f;--bl-side:#1c182d;--bl-chat:#27203c;--bl-raised:#27203c;--bl-soft:#bca1f2;--bl-hair:#443854;--danger:#fa9dab;color-scheme:dark}
html[data-theme="aurora"]{--bg:#0c191b;--surface:#12282a;--surface2:#1b3637;--line:#315354;--text:#edfcf7;--muted:#9fc2b7;--accent:#8bd8bd;--accent-ink:#10281f;--bl-accent:#8bd8bd;--bl-rail:#0c191b;--bl-side:#12282a;--bl-chat:#1b3637;--bl-raised:#1b3637;--bl-soft:#8bd8bd;--bl-hair:#315354;--danger:#fa9dab;color-scheme:dark}
html[data-theme="atelier"]{--bg:#f1eee7;--surface:#fffdf7;--surface2:#e9e4d9;--line:#c9c1b2;--text:#302d26;--muted:#696252;--accent:#765438;--accent-ink:#fff8e9;--bl-accent:#765438;--bl-rail:#f1eee7;--bl-side:#fffdf7;--bl-chat:#e9e4d9;--bl-raised:#e9e4d9;--bl-soft:#765438;--bl-hair:#c9c1b2;--danger:#b43d54;color-scheme:light}
html[data-theme="cyber"]{--bg:#0c1216;--surface:#131e26;--surface2:#1b2b35;--line:#344953;--text:#edf5f8;--muted:#a2b6c3;--accent:#8fd5e4;--accent-ink:#0d2631;--bl-accent:#8fd5e4;--bl-rail:#0c1216;--bl-side:#131e26;--bl-chat:#1b2b35;--bl-raised:#1b2b35;--bl-soft:#8fd5e4;--bl-hair:#344953;--danger:#fa9dab;color-scheme:dark}
html[data-theme="sunset"]{--bg:#201315;--surface:#2e1c21;--surface2:#3e292d;--line:#614348;--text:#fff0e8;--muted:#c5aba5;--accent:#e9b89b;--accent-ink:#382018;--bl-accent:#e9b89b;--bl-rail:#201315;--bl-side:#2e1c21;--bl-chat:#3e292d;--bl-raised:#3e292d;--bl-soft:#e9b89b;--bl-hair:#614348;--danger:#fa9dab;color-scheme:dark}
html[data-theme="lagoon"]{--bg:#101a2a;--surface:#17283d;--surface2:#20354e;--line:#38516d;--text:#ecf4ff;--muted:#afc3db;--accent:#9bc6fb;--accent-ink:#132941;--bl-accent:#9bc6fb;--bl-rail:#101a2a;--bl-side:#17283d;--bl-chat:#20354e;--bl-raised:#20354e;--bl-soft:#9bc6fb;--bl-hair:#38516d;--danger:#fa9dab;color-scheme:dark}
html[data-theme="rose"]{--bg:#f4edf0;--surface:#fff9fb;--surface2:#ece1e6;--line:#cbb6c0;--text:#3d2935;--muted:#795b6a;--accent:#935971;--accent-ink:#fff7fa;--bl-accent:#935971;--bl-rail:#f4edf0;--bl-side:#fff9fb;--bl-chat:#ece1e6;--bl-raised:#ece1e6;--bl-soft:#935971;--bl-hair:#cbb6c0;--danger:#b43d54;color-scheme:light}
html[data-theme="obsidian"]{--bg:#101112;--surface:#1b1c1f;--surface2:#252529;--line:#4e473c;--text:#fbf1dd;--muted:#cbbda6;--accent:#e3c58c;--accent-ink:#2a2216;--bl-accent:#e3c58c;--bl-rail:#101112;--bl-side:#1b1c1f;--bl-chat:#252529;--bl-raised:#252529;--bl-soft:#e3c58c;--bl-hair:#4e473c;--danger:#fa9dab;color-scheme:dark}

/* Ces surfaces prolongent réellement la palette dans le chat, les menus et les formulaires. */
html[data-theme]:not([data-theme="midnight"]) body{--bl-accent:var(--accent);background:var(--bg);color:var(--text)}
html[data-theme]:not([data-theme="midnight"]) :is(.topbar,.mobile-bottom-nav,.blubby-more-popover,.conversation-head,.dm-header,.voice-stage-header){background:var(--surface);border-color:var(--line);color:var(--text)}
html[data-theme]:not([data-theme="midnight"]) :is(.panel,.server-card,.blubby-plan-card,.channel-panel,.members-panel,.dm-contacts,.dm-conversation,.modal-dialog,.voxora-profile-dialog,.blubby-voice-dialog,.blubby-app-dialog,.voice-share-dialog,.blubby-discover-card,.blubby-home .bh-welcome){background:var(--surface);border-color:var(--line);color:var(--text);box-shadow:0 12px 38px #0000000b}
html[data-theme]:not([data-theme="midnight"]) :is(.conversation,.chat-messages,.dm-messages,.voice-stage){background:var(--bl-chat);color:var(--text)}
html[data-theme]:not([data-theme="midnight"]) :is(.chat-message,.chat-form,.dm-form,.profile-dialog-content,.profile-dialog-cover,.message-group){background:var(--surface);border-color:var(--line);color:var(--text)}
html[data-theme]:not([data-theme="midnight"]) :is(.stack-form label,.toplinks a:not(.btn),.channel-link,.member-name,.member-row,.chat-message,.message-text,.dm-body,.mobile-bottom-nav>a,.profile-dialog-name){color:var(--text)}
html[data-theme]:not([data-theme="midnight"]) :is(.muted,.small.muted,.member-custom-status,.message-time,.chat-time,.profile-dialog-handle,.channel-subtitle){color:var(--muted)}
html[data-theme]:not([data-theme="midnight"]) :is(input:not([type=radio]):not([type=checkbox]):not([type=color]),select,textarea){background:var(--surface2);color:var(--text);border-color:var(--line)}
html[data-theme]:not([data-theme="midnight"]) :is(input,textarea)::placeholder{color:var(--muted);opacity:1}
html[data-theme]:not([data-theme="midnight"]) :is(.btn,.send-button){background:var(--accent);color:var(--accent-ink);border-color:transparent}
html[data-theme]:not([data-theme="midnight"]) :is(.btn-outline,.btn-light,.voice-control-toggle,.tiny-tag,.pill){background:var(--surface2);color:var(--text);border-color:var(--line)}
html[data-theme]:not([data-theme="midnight"]) :is(.channel-link:hover,.channel-link.selected,.toplinks a.selected,.toplinks a:not(.btn):hover,.mobile-bottom-nav>a.is-current,.mobile-bottom-nav>a[aria-current=page]){background:var(--surface2);color:var(--accent)}
html[data-theme]:not([data-theme="midnight"]) :is(table,.compare-table) :is(th,td){background:var(--surface);color:var(--text);border-color:var(--line)}
html[data-theme]:not([data-theme="midnight"]) :is(table,.compare-table) thead th{background:var(--surface2)}
html[data-theme]:not([data-theme="midnight"]) :is(.profile-custom-status,.blubby-bump-note,.message-actions .btn,.notification-menu){background:var(--surface2);border-color:var(--line);color:var(--text)}
html[data-theme]:not([data-theme="midnight"]) :is(button,a,input,select,textarea):focus-visible{outline-color:var(--accent)!important}
html[data-theme="obsidian"] .topbar{border-bottom-color:#80673f}
html[data-theme="obsidian"] .panel{box-shadow:0 1px 0 #e3c58c09 inset}
html[data-theme="obsidian"] .channel-link.selected{box-shadow:inset 2px 0 #e3c58c}
/* Les créations de cadre utilisent des images transparentes, sans masquer le portrait. */

.frame-prism{--bl-frame-art:url("/assets/frames/prism.svg?v=20261031-collection1")}
.frame-royal{--bl-frame-art:url("/assets/frames/royal.svg?v=20261031-collection1")}
.frame-cosmos{--bl-frame-art:url("/assets/frames/cosmos.svg?v=20261031-collection1")}
.frame-flame{--bl-frame-art:url("/assets/frames/flame.svg?v=20261031-collection1")}
.frame-glacier{--bl-frame-art:url("/assets/frames/glacier.svg?v=20261031-collection1")}
.frame-verdant{--bl-frame-art:url("/assets/frames/verdant.svg?v=20261031-collection1")}
.frame-selene{--bl-frame-art:url("/assets/frames/selene.svg?v=20261031-collection1")}
.frame-sovereign{--bl-frame-art:url("/assets/frames/sovereign.svg?v=20261031-collection1")}

:is(.frame-prism,.frame-royal,.frame-cosmos,.frame-flame,.frame-glacier,.frame-verdant,.frame-selene,.frame-sovereign){isolation:isolate;overflow:visible!important;background:var(--surface2,#242730)!important;border:0!important;box-shadow:none!important;color:var(--text);outline:0;padding:0!important;border-radius:50%}
:is(.member-avatar,.frame-preview,.profile-dialog-avatar):is(.frame-prism,.frame-royal,.frame-cosmos,.frame-flame,.frame-glacier,.frame-verdant,.frame-selene,.frame-sovereign){position:relative}
:is(.frame-prism,.frame-royal,.frame-cosmos,.frame-flame,.frame-glacier,.frame-verdant,.frame-selene,.frame-sovereign)::before{content:none!important}
:is(.frame-prism,.frame-royal,.frame-cosmos,.frame-flame,.frame-glacier,.frame-verdant,.frame-selene,.frame-sovereign)::after{content:""!important;position:absolute;inset:-16%;width:auto!important;height:auto!important;display:block!important;background:var(--bl-frame-art) center/contain no-repeat!important;pointer-events:none;z-index:3;border:0!important;box-shadow:none!important;border-radius:0!important;transform:none!important;animation:none!important;filter:drop-shadow(0 2px 3px #00000036)}
.profile-avatar:is(.frame-prism,.frame-royal,.frame-cosmos,.frame-flame,.frame-glacier,.frame-verdant,.frame-selene,.frame-sovereign) .large-avatar{border-width:0;position:relative;left:auto;bottom:auto}
:is(.member-avatar,.profile-dialog-avatar):is(.frame-prism,.frame-royal,.frame-cosmos,.frame-flame,.frame-glacier,.frame-verdant,.frame-selene,.frame-sovereign)>img{border-radius:50%;object-fit:cover;width:100%;height:100%}
.frame-preview:is(.frame-prism,.frame-royal,.frame-cosmos,.frame-flame,.frame-glacier,.frame-verdant,.frame-selene,.frame-sovereign)>span{width:100%;height:100%;border:0;background:linear-gradient(145deg,#3d4059,#202536);color:#f5f1ff}
.frame-preview>span>img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}


/* Sélecteurs : vrais aperçus, état sélectionné, clavier et dimensions tactiles. */
.blubby-custom-picker{border:0;padding:0;margin:20px 0 8px;min-width:0}
.blubby-custom-picker legend{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:0;color:var(--text);font-size:17px;font-weight:750;letter-spacing:-.03em;line-height:1.35}
.blubby-collection-count{font-size:10px;letter-spacing:.03em;font-weight:700;padding:4px 8px;border:1px solid var(--line);border-radius:20px;background:var(--surface2);color:var(--muted)}
.blubby-picker-help{font-size:12px;line-height:1.7;color:var(--muted);margin:10px 0 17px;letter-spacing:0}
.blubby-style-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.stack-form .blubby-style-choice,.blubby-style-choice{display:block;position:relative;cursor:pointer;margin:0;min-width:0;font-weight:400;color:var(--text)}
.blubby-style-choice>input[type=radio]{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;padding:0!important;min-width:0!important;inset:12px auto auto 12px;pointer-events:none}
.blubby-style-card{display:flex;position:relative;height:100%;min-width:0;flex-direction:column;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--surface);transition:border-color .16s,box-shadow .16s;overflow:hidden}
.blubby-style-choice:hover .blubby-style-card{border-color:var(--muted)}
.blubby-style-choice>input:checked+.blubby-style-card{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.blubby-style-choice>input:checked+.blubby-style-card::after{content:"✓";position:absolute;right:17px;top:17px;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;font-size:12px;font-weight:800;background:var(--accent);color:var(--accent-ink,#211a32);box-shadow:0 2px 6px #0003}
.blubby-style-choice>input:focus-visible+.blubby-style-card{outline:3px solid var(--accent);outline-offset:3px}
.blubby-style-choice.is-locked{cursor:default}.blubby-style-choice.is-locked .blubby-style-card{opacity:1}.blubby-style-choice.is-locked:hover .blubby-style-card{border-color:var(--line)}
.blubby-style-caption{display:flex;justify-content:space-between;align-items:center;gap:5px;margin-top:12px;min-width:0}
.blubby-style-caption strong{font-size:12px;font-weight:750;color:var(--text);letter-spacing:-.015em;overflow-wrap:anywhere}
.blubby-style-tier{flex-shrink:0;color:var(--muted);font-size:9px;font-weight:750;padding:3px 5px;border-radius:4px;background:var(--surface2);line-height:1.2;letter-spacing:.04em}
.blubby-style-tier.is-max{color:#c39d5c;background:#b98f3420}
.blubby-style-description{display:block;margin-top:7px;color:var(--muted);font-size:11px;font-weight:400;line-height:1.6;letter-spacing:0;flex:1}
.blubby-style-state{display:block;margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-size:10px;font-weight:700;color:var(--muted);letter-spacing:0}
.blubby-style-choice>input:checked+.blubby-style-card .blubby-style-state{color:var(--accent)}
.blubby-picker-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:15px}
.blubby-collection-link{font-size:11px;font-weight:700;color:var(--text);text-decoration:underline;text-underline-offset:3px}
.blubby-theme-mini{height:104px;display:flex;flex-direction:column;overflow:hidden;border-radius:7px;background:var(--mini-bg);color:var(--mini-text);border:1px solid var(--mini-line)}
.blubby-mini-top{height:17px;display:flex;align-items:center;gap:3px;padding:0 7px;background:var(--mini-surface);border-bottom:1px solid var(--mini-line)}
.blubby-mini-top i{display:block;width:3px;height:3px;border-radius:50%;background:var(--mini-text);opacity:.35}
.blubby-mini-layout{display:flex;flex:1;min-height:0}.blubby-mini-rail{display:flex;align-items:center;flex-direction:column;gap:6px;width:21px;padding-top:8px}
.blubby-mini-rail i{display:block;width:10px;height:10px;border-radius:4px;background:var(--mini-raised)}.blubby-mini-rail i:first-child{background:var(--mini-accent)}
.blubby-mini-sidebar{display:flex;flex-direction:column;gap:6px;width:39px;background:var(--mini-surface);padding:10px 6px}
.blubby-mini-sidebar i{height:3px;border-radius:2px;background:var(--mini-text);opacity:.22}.blubby-mini-sidebar i:first-child{width:75%;background:var(--mini-accent);opacity:.8}
.blubby-mini-chat{flex:1;min-width:0;padding:12px 10px 7px;position:relative;display:flex;flex-direction:column;gap:4px;background:var(--mini-raised)}
.blubby-mini-chat b{display:block;width:35%;height:3px;border-radius:2px;background:var(--mini-accent)}.blubby-mini-chat b:nth-of-type(2){margin-top:7px;width:28%}
.blubby-mini-chat i{display:block;width:90%;height:3px;border-radius:2px;background:var(--mini-text);opacity:.28}.blubby-mini-chat i:nth-of-type(2){width:60%}
.blubby-mini-chat>span{position:absolute;bottom:6px;left:8px;right:8px;height:9px;border:1px solid var(--mini-line);border-radius:3px;background:var(--mini-surface)}
.blubby-frame-stage{display:grid;place-items:center;min-height:133px;padding:25px 10px;background:radial-gradient(ellipse at center,#c3b2e210,transparent 72%),var(--surface2);border-radius:8px;border:1px solid var(--line)}
.blubby-frame-stage .frame-preview{display:grid;width:76px;height:76px;position:relative;padding:0;border-radius:50%;place-items:center}
.blubby-frame-stage .frame-preview>span{display:grid;place-items:center;border-radius:50%;width:100%;height:100%;font-size:27px;font-weight:750;letter-spacing:-.04em;overflow:hidden}
.blubby-frame-picker{margin-top:26px}.blubby-frame-picker .blubby-custom-picker{margin-top:0}
@media(max-width:390px){.blubby-style-grid{gap:9px}.blubby-style-card{padding:9px}.blubby-theme-mini{height:90px}.blubby-style-caption{flex-wrap:wrap}.blubby-frame-stage{min-height:121px;padding:22px 8px}.blubby-frame-stage .frame-preview{width:67px;height:67px}.blubby-style-caption strong{font-size:11px}}
@media(prefers-reduced-motion:reduce){.blubby-style-card{transition:none}}

html:is([data-theme="atelier"],[data-theme="rose"]) .blubby-style-tier.is-max{color:#795215;background:#b98f341a}
