:root{color-scheme:dark;--accent:#7c6bff;--bg:#0b0e19;--surface:#141827;--surface2:#1b2031;--muted:#a0a9c1;--text:#f6f7fe;--line:#2d344a;--danger:#ff7582;--shadow:0 20px 60px rgba(0,0,0,.2)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}html[data-theme=ocean]{--bg:#0a1c2a;--surface:#122739;--surface2:#1a364a;--line:#365266}html[data-theme=forest]{--bg:#101b17;--surface:#1a2a23;--surface2:#253d30;--line:#3c5a49}html[data-theme=berry]{--bg:#211222;--surface:#301a34;--surface2:#442348;--line:#63466a}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}input,textarea,select{color:var(--text)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.14;letter-spacing:-.05em}h2{font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.22;letter-spacing:-.035em}h3{font-size:1.08rem}p{color:#c3c8d8}.muted{color:var(--muted)!important}.small{font-size:12px}.text-center{text-align:center}.container{width:min(1200px,calc(100% - 48px));margin-inline:auto}.between{display:flex;align-items:center;justify-content:space-between;gap:16px}.span-all{grid-column:1/-1}.eyebrow{color:#b8b0ff;font-size:11px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.topbar{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1200px)/2));border-bottom:1px solid rgba(255,255,255,.07);position:relative;z-index:4;background:rgba(11,14,25,.94)}.logo{display:flex;align-items:center;gap:11px;font-weight:900;font-size:24px;letter-spacing:-.06em}.logo-mark,.mini-brand,.rail-home{display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,var(--accent),#b46ae7);box-shadow:0 5px 20px rgba(124,107,255,.25);color:white}.logo-mark{width:36px;height:36px;font-size:22px}.toplinks{display:flex;align-items:center;gap:28px;font-weight:600;font-size:13px}.toplinks a:not(.btn){color:#c2c6d6}.toplinks a:hover,.toplinks .selected{color:#fff}.littlebolt{color:#bbadff}.nav-avatar{display:grid;place-items:center;background:linear-gradient(145deg,#7158d0,#457aa6);height:34px;width:34px;border-radius:50%;color:white!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;color:white;background:linear-gradient(125deg,var(--accent),#6a59dc);border:1px solid transparent;min-height:45px;padding:10px 22px;font-weight:750;border-radius:11px;white-space:nowrap;box-shadow:0 8px 23px rgba(91,73,203,.13);transition:filter .16s,transform .16s}.btn:hover:not(:disabled){filter:brightness(1.14);transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:wait}.btn-small{padding:6px 15px;min-height:33px;font-size:12px;border-radius:9px}.btn-large{min-height:51px;padding:14px 22px}.btn-outline{background:transparent;border:1px solid var(--line);box-shadow:none}.btn-outline:hover{background:var(--surface2)}.btn-light{background:#f4f1ff;color:#35295e;box-shadow:none}.btn-block{width:100%}.btn-danger{background:#982c44}.btn-danger-outline{background:transparent;border:1px solid #713d4a;color:#ff9dad}.pill{display:inline-flex;padding:8px 15px;border:1px solid rgba(255,255,255,.22);border-radius:99px;font-size:12px;font-weight:800}.tiny-tag{font-size:11px;border-radius:99px;padding:4px 10px;background:var(--surface2);color:#d1d8ee;font-weight:650}.pulse-tag{background:#46315f;color:#e9c8ff}.toast{position:fixed;z-index:100;right:24px;bottom:22px;max-width:440px;border:1px solid #5b607f;background:#262a42;color:#fff;padding:13px 20px;border-radius:12px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);transition:.2s;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}.toast.error{border-color:var(--danger)}.hero{display:grid;grid-template-columns:1fr 1.09fr;align-items:center;gap:45px;min-height:650px;padding-block:90px 115px}.hero-copy h1{font-size:clamp(2.7rem,5.2vw,5.05rem);line-height:1.05;margin:22px 0 24px}.gradient-text{background:linear-gradient(90deg,#a79cff,#df95ee);background-clip:text;-webkit-background-clip:text;color:transparent}.hero-copy>p{max-width:530px;font-size:17px;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:31px}.hero-trust{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;margin-top:24px;color:#b6bdd1}.hero-trust span:first-letter{color:#76daba}.pulse-dot{display:inline-block;vertical-align:middle;width:7px;height:7px;background:#77dcc6;box-shadow:0 0 0 4px rgba(70,214,179,.12);border-radius:50%;margin-right:8px}.hero-mock{display:grid;grid-template-columns:54px 160px 1fr;height:385px;min-width:0;border:1px solid #464768;background:#1c2031;border-radius:19px;box-shadow:0 35px 100px rgba(41,34,82,.4);overflow:hidden;transform:perspective(1000px) rotateY(-3deg) rotateX(1deg)}.mini-rail{background:#111422;display:flex;flex-direction:column;gap:14px;align-items:center;padding:14px 5px}.mini-rail>div{width:32px;height:32px;display:grid;place-items:center;background:#35394f;border-radius:12px;font-weight:800}.mini-rail .mini-brand{background:linear-gradient(130deg,var(--accent),#b869da);color:white}.mini-side{background:#1b2030;padding:17px 10px;display:flex;flex-direction:column;gap:12px;font-size:12px;color:#b3bdd2}.mini-side strong{font-size:12px;color:#f4f5fb;white-space:nowrap}.mini-side small{font-size:8px;letter-spacing:.12em;font-weight:800;margin-top:15px}.mini-side div{padding:6px 9px}.mini-side .mini-active{border-radius:6px;color:white;background:#313850}.mini-chat{background:#23283b;position:relative}.mini-head{border-bottom:1px solid #383f55;padding:17px 13px;font-size:12px;font-weight:800}.mini-head span{float:right;color:#6ed2ac;font-size:9px}.mini-message{display:flex;gap:9px;margin:17px 10px}.mini-message strong{font-size:10px}.mini-message p{margin:1px 0;font-size:10px;color:#bfc7d6}.bubble{display:grid;place-items:center;border-radius:50%;height:28px;width:28px;flex-shrink:0;background:#c86aa7;font-size:12px}.bubble-b{background:#668bc7}.bubble-c{background:#8a68bb}.mini-input{background:#353b54;border-radius:6px;position:absolute;bottom:12px;left:10px;right:10px;padding:10px;font-size:10px;color:#a4aec6}.mini-input span{float:right}.features-section{padding:80px 0 96px;background:#111525;border-block:1px solid #252b3e}.features-section h2{margin:12px 0 40px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature-card{border:1px solid #333b52;background:#1b2032;border-radius:18px;padding:27px}.feature-icon{height:51px;width:51px;display:grid;place-items:center;color:#c1b8ff;background:#353053;border-radius:15px;margin-bottom:24px;font-size:26px;font-weight:800}.feature-card p{font-size:14px;margin:0;line-height:1.75}.banner-cta{margin-block:82px;background:radial-gradient(circle at 75% 50%,#6551ba,#3c326f 50%,#302c5a);border-radius:23px;padding:42px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px}.banner-cta h2{max-width:570px}.banner-cta p{max-width:600px;margin:0}.inner-page{padding-block:54px 110px}.page-intro{margin-bottom:33px}.page-intro h1{margin:13px 0}.page-intro p{font-size:16px;max-width:670px}.search-field{display:flex;align-items:center;max-width:650px;gap:12px;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:6px 6px 6px 18px;margin-bottom:35px}.search-field span{font-size:28px;color:#acb3ce}.search-field input{min-width:0;flex:1;background:none;border:0;outline:none}.search-field button{border:0;background:var(--surface2);border-radius:9px;padding:10px 15px;color:#f5f4ff;font-weight:700}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.server-card{min-height:225px;border:1px solid var(--line);border-radius:17px;background:var(--surface);padding:23px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .15s,border-color .15s}.server-card:hover{border-color:#8a7bc8;transform:translateY(-3px)}.server-card-symbol{height:57px;width:57px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(145deg,#5e508c,#6a599b);font-size:25px;font-weight:900;margin-bottom:19px}.server-card h3{font-size:19px;margin:0 0 7px}.server-card p{font-size:13px;line-height:1.6;flex:1;margin:0 0 20px}.server-card>.tiny-tag{margin-top:auto}.discover-cards .server-card .server-card-symbol{margin-bottom:0}.discover-cards .server-card h3{margin-top:22px}.card-bottom{width:100%;margin-top:auto}.add-card{border-style:dashed;background:transparent}.add-card .server-card-symbol{background:var(--surface2)}.dashboard{padding-top:60px}.dashboard .title-row{margin-bottom:35px}.dashboard h1{font-size:36px}.center-page{margin:0 auto;min-height:calc(100vh - 70px);padding:80px 20px;max-width:600px;text-align:center}.center-page.narrow{max-width:550px}.center-page>p{margin-bottom:29px}.panel{border:1px solid var(--line);background:var(--surface);border-radius:17px;padding:27px;text-align:left;box-shadow:0 15px 40px rgba(0,0,0,.04)}.stack-form{display:flex;flex-direction:column;gap:20px;text-align:left}.stack-form label{display:flex;flex-direction:column;gap:7px;color:#e3e6f2;font-size:13px;font-weight:700}.stack-form input:not([type=color]),.stack-form textarea,.stack-form select{width:100%;border:1px solid #3b435a;background:#202638;border-radius:9px;padding:12px 13px;outline:none;transition:border .12s;resize:vertical}.stack-form input:focus,.stack-form select:focus,.stack-form textarea:focus{border-color:#9990ec}.stack-form input::placeholder,.stack-form textarea::placeholder{color:#818ba4}.stack-form input:disabled{opacity:.5}.stack-form select{appearance:auto}.form-status{color:var(--danger);font-size:13px;min-height:3px}.auth-wrap{display:grid;grid-template-columns:.82fr 1.18fr;min-height:calc(100vh - 70px)}.auth-aside{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:radial-gradient(circle at 30% 36%,#423777,#211d3b 63%,#15182b);padding:55px}.auth-aside .big-symbol{height:115px;width:115px;border-radius:36px;background:linear-gradient(145deg,#ab88ff,#6a5bce);display:grid;place-items:center;font-size:70px;font-weight:900;margin-bottom:40px;box-shadow:0 0 100px #8878d550}.auth-aside h2{font-size:38px}.auth-aside p{max-width:370px}.auth-panel{display:flex;align-items:center;justify-content:center;padding:55px 20px}.auth-card{width:min(440px,100%)}.auth-card h1{font-size:32px;margin:12px 0}.auth-card>p{margin-bottom:30px}.auth-card .stack-form{gap:17px}.auth-switch{text-align:center;margin-top:18px;font-size:13px}.auth-switch a,.back-link{color:#b9b1ff;font-weight:700}.empty-state{border:1px dashed var(--line);padding:50px;text-align:center;border-radius:15px}.empty-graphic{font-size:100px;font-weight:900;color:#4f416e}.settings-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:22px;align-items:start}.settings-container{max-width:1000px}.profile-cover{height:110px;border-radius:12px;background:linear-gradient(120deg,#3e3271,#596aa5);margin-bottom:47px;position:relative}.large-avatar{width:75px;height:75px;position:absolute;left:23px;bottom:-33px;display:grid;place-items:center;border-radius:50%;background:#865fbb;border:5px solid var(--surface);font-weight:900;font-size:26px}.profile-cover+h2{margin-bottom:1px}.divider{height:1px;background:var(--line);margin:20px 0}.settings-inline{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-inline input[type=color]{display:block;width:100%;height:45px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);padding:5px}.pulse-page{max-width:1040px}.pulse-hero{text-align:center;padding:75px 20px;border:1px solid #7555b1;border-radius:25px;background:radial-gradient(circle at 50% 4%,#574084,#30234c 48%,#171a2c 96%)}.pulse-hero h1{margin:22px 0}.pulse-hero>p{max-width:600px;margin:0 auto 25px}.pulse-price{margin-bottom:19px}.pulse-price strong{font-size:42px;letter-spacing:-.07em}.pulse-price span{color:#bfbcd4}.pulse-label{color:#efe0ff;background:#6b519038}.payment-note{color:#ecdcff;border:1px solid #7b6590;background:#47385a;padding:14px;display:inline-block;border-radius:12px}.compare-wrap{margin-top:65px}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:15px;margin-block:23px}.compare-table{width:100%;border-collapse:collapse;text-align:left}.compare-table th,.compare-table td{padding:14px 18px;border-bottom:1px solid var(--line);white-space:normal}.compare-table th{background:#232739}.compare-table tr:last-child td{border:0}.compare-table th:nth-child(n+2),.compare-table td:nth-child(n+2){text-align:center;width:26%}.compare-table .premium-col{background:#382d53aa;font-weight:700}.app-shell{height:calc(100vh - 70px);display:grid;grid-template-columns:68px 243px minmax(0,1fr) 222px;min-height:500px;overflow:hidden}.server-rail{background:#0e111c;border-right:1px solid #252a3c;padding:13px 9px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;align-items:center}.rail-home,.rail-server,.rail-add{flex-shrink:0;display:grid;place-items:center;width:46px;height:46px;border-radius:16px;font-weight:900;font-size:19px;transition:.14s}.rail-home{background:linear-gradient(135deg,var(--accent),#b369db)}.rail-rule{background:#30384d;height:2px;width:29px;margin:2px}.rail-server{background:#31364c}.rail-server.active{border:2px solid #aca1ff;border-radius:13px}.rail-server:hover,.rail-add:hover{border-radius:14px;background:#5d558e}.rail-add{background:#202a37;color:#8fe2be;font-size:25px}.channel-panel{background:var(--surface);display:flex;flex-direction:column;min-width:0;border-right:1px solid var(--line)}.channel-server-heading{height:59px;border-bottom:1px solid var(--line);padding:0 16px;display:flex;align-items:center;justify-content:space-between;font-size:15px}.channel-server-heading strong{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-scroll{overflow-y:auto;flex:1;padding:15px 8px}.channel-group-heading{display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:900;letter-spacing:.09em;color:#a8aec2;margin:20px 6px 8px}.channel-group-heading:first-child{margin-top:1px}.plus-button{background:none;border:0;color:#a8aec2;font-size:19px;line-height:1;padding:1px 7px}.plus-button:hover{color:#fff}.channel-link{display:flex;align-items:center;gap:8px;color:#aeb7cc;border-radius:7px;padding:7px 11px;margin:2px 0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-link:hover{background:#272d41;color:#fff}.channel-link.active{background:#333950;color:white;font-weight:750}.channel-icon{display:inline-block;color:#929cb6;font-size:20px;line-height:1;flex-shrink:0}.user-plate{border-top:1px solid var(--line);padding:10px;display:flex;gap:9px;align-items:center;background:#101624}.user-plate>.member-avatar{height:35px;width:35px;flex-shrink:0}.user-plate>div{min-width:0;flex:1}.user-plate strong,.user-plate span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-plate strong{font-size:12px}.user-plate span{font-size:10px;color:#939eb6}.user-plate>a:last-child{font-size:19px;color:#b2bbd2}.conversation{min-width:0;min-height:0;display:flex;flex-direction:column;background:#1b2031}.conversation-head{height:59px;flex-shrink:0;display:flex;align-items:center;gap:10px;padding:0 21px;border-bottom:1px solid #343c50;box-shadow:0 2px 10px rgba(0,0,0,.06);white-space:nowrap}.channel-heading-icon{color:#9da7bb;font-size:25px;font-weight:650}.conversation-head strong{font-size:14px}.header-separator{width:1px;height:24px;background:#46516a;margin:0 3px}.channel-subtitle{font-size:12px;color:#9ba5bd;overflow:hidden;text-overflow:ellipsis}.invite-header-link{margin-left:auto;font-size:12px;color:#c1b9ff;font-weight:700}.chat-messages{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;padding:15px 26px 0;scroll-behavior:smooth}.chat-intro{margin-top:auto;padding-bottom:18px}.channel-massive{width:63px;height:63px;border-radius:22px;display:grid;place-items:center;background:#464c62;font-size:40px;font-weight:800}.chat-intro h2{font-size:23px;margin:14px 0 6px}.chat-intro p{font-size:13px}.chat-message{position:relative;display:flex;gap:11px;padding:11px 3px;align-items:flex-start;border-radius:7px}.chat-message:hover{background:#252b3a}.chat-message .member-avatar{height:36px;width:36px;flex-shrink:0}.message-body{min-width:0;flex:1}.message-meta{display:flex;gap:8px;align-items:baseline}.message-meta strong{font-size:13px}.message-meta time{font-size:10px;color:#929bb1}.message-body p{white-space:pre-wrap;overflow-wrap:anywhere;color:#e0e4ed;margin:2px 0 0;font-size:13px;line-height:1.6}.delete-message{position:absolute;right:8px;top:8px;background:var(--surface2);color:#fba7b3;border:1px solid var(--line);border-radius:6px;opacity:0;font-size:11px}.chat-message:hover .delete-message{opacity:1}.member-avatar{display:grid;place-items:center;border-radius:50%;font-weight:850;font-size:13px;color:white;background:var(--accent)}.pulse-name{color:#cfafff}.attachment-preview{display:block;margin-top:7px;border-radius:10px;border:1px solid var(--line);padding:10px 13px;max-width:420px;background:#292e42}.attachment-preview img{max-width:100%;max-height:240px;object-fit:contain;display:block;border-radius:7px;margin-bottom:7px}.attachment-preview .small{font-size:11px;color:#b8b4e5}.chat-form{display:flex;align-items:flex-end;gap:12px;min-height:57px;background:#32394f;border-radius:12px;margin:0 17px 0 19px;padding:10px 12px}.chat-form textarea{resize:none;flex:1;min-width:0;max-height:130px;background:transparent;border:0;outline:0;padding:7px 0;color:#fff;font-size:14px}.chat-form textarea::placeholder{color:#aab2c4}.upload-control{border-radius:50%;display:grid;place-items:center;height:30px;width:30px;background:#aab6cc;color:#293043;font-size:23px;font-weight:900;cursor:pointer;flex-shrink:0}.send-button{border:0;color:#ddd6ff;background:transparent;padding:7px;font-size:20px}.chat-hint{color:#8e99b0;font-size:10px;padding:5px 25px 8px;flex-shrink:0}.members-panel{background:var(--surface);border-left:1px solid var(--line);display:flex;flex-direction:column;overflow-y:auto}.members-heading{margin:23px 15px 10px;font-size:11px;font-weight:900;color:#929db4;letter-spacing:.1em}.member-row{display:flex;align-items:center;gap:10px;margin:3px 8px;padding:7px 8px;border-radius:7px;min-width:0}.member-row:hover{background:#262c40}.member-row .member-avatar{height:31px;width:31px;flex-shrink:0}.member-details{flex:1;min-width:0}.member-details strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.member-details small{display:block;font-size:10px;color:#9ca6bf}.kick-button{background:none;color:#f4919d;border:0}.members-footer{margin-top:auto;padding:18px 13px;font-size:12px;color:#beb5ff}.voice-center{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:0;flex:1;overflow:auto;padding:40px 25px}.voice-art{position:relative;display:grid;place-items:center;font-size:70px;background:#36314f;width:147px;height:147px;border-radius:50%;margin-bottom:25px;color:#cbc0ff;box-shadow:0 0 0 16px #3c375442,0 0 0 33px #3c375421}.voice-center h2{margin:8px 0}.voice-center p{margin:0 0 12px}.voice-peers{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin:22px 0;max-width:450px}.voice-peer{background:#30374c;border:1px solid var(--line);padding:9px 13px;border-radius:99px;font-size:12px}.voice-controls{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.modal-dialog{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:18px;width:min(440px,calc(100% - 30px));padding:27px;box-shadow:var(--shadow)}.modal-dialog::backdrop{background:#060612bf;backdrop-filter:blur(4px)}.icon-button{background:none;border:0;color:#d3d9eb;padding:6px 10px;font-size:18px}.icon-button.danger{color:var(--danger)}.back-link{display:block;margin-bottom:15px;font-size:13px}.title-row{margin-bottom:27px}.title-row h1{margin:0 0 10px}.invite-layout{grid-template-columns:.8fr 1.2fr}.alias-input{display:flex;align-items:center;border:1px solid #3b435a;border-radius:9px;background:#202638}.alias-input span{padding-left:10px;font-weight:500;color:#a1aac4}.alias-input input:not([type=color]){background:transparent;border:0;min-width:0}.invite-list{display:flex;flex-direction:column;gap:9px;max-height:570px;overflow:auto}.invite-item{padding:13px 10px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.invite-item code{font-size:12px;color:#cbc3ff;overflow-wrap:anywhere}.invite-item .small{margin-top:6px;line-height:1.5}.invite-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.status-chip{padding:3px 8px;font-size:10px;border-radius:99px}.status-chip.good{color:#a6e5c2;background:#1d4a39}.status-chip.bad{color:#ffb6be;background:#4c2b37}.copy-result{margin-top:25px;padding:13px;background:#343454;border:1px solid #6e60a1;border-radius:10px}.copy-result small,.copy-result code{display:block}.copy-result code{margin:5px 0 13px;color:#e3daff;overflow-wrap:anywhere}.invite-preview-wrap{min-height:calc(100vh - 70px);display:grid;place-items:center;padding:35px 15px;background:radial-gradient(circle at 50% 35%,#282346,#10131d 65%)}.invite-preview{width:min(440px,100%);padding:37px 32px;background:var(--surface);border:1px solid #4b4769;border-radius:22px;box-shadow:var(--shadow);text-align:center}.invite-preview-icon{width:88px;height:88px;border-radius:25px;background:linear-gradient(130deg,#7168ba,#b16da6);font-weight:900;font-size:35px;display:grid;place-items:center;margin:0 auto 20px}.invite-preview h1{font-size:29px;margin:13px 0}.invite-preview-members{background:var(--surface2);border-radius:9px;padding:12px;margin:23px 0;font-size:13px;color:#c0c9db}.invite-preview .btn{margin-top:10px}.expired-box{padding:14px;background:#5b303a;border:1px solid #9e5362;border-radius:10px;color:#ffb3c0}.settings-page{text-align:left}.settings-page>.btn{margin-top:22px}.hide-sm{display:inline}.notices{padding:12px}.mobile-toggle{display:none}
@media(max-width:1120px){.app-shell{grid-template-columns:62px 225px minmax(0,1fr)}.members-panel{display:none}.hero{gap:23px}.hero-mock{grid-template-columns:48px 138px minmax(0,1fr)}}
@media(max-width:800px){.topbar{padding:0 20px}.hero{grid-template-columns:1fr;padding-block:70px}.hero-mock{max-width:600px;width:100%;margin:auto;transform:none}.feature-grid{grid-template-columns:1fr}.banner-cta{padding:30px;display:block}.banner-cta>.btn{margin-top:23px}.auth-wrap{grid-template-columns:1fr}.auth-aside{display:none}.auth-panel{min-height:calc(100vh - 70px)}.settings-grid{grid-template-columns:1fr}.settings-grid .panel{min-width:0}.app-shell{grid-template-columns:56px 210px minmax(0,1fr)}.server-rail{padding-inline:4px}.rail-home,.rail-server,.rail-add{height:42px;width:42px}}
@media(max-width:600px){.toplinks{gap:14px}.toplinks .hide-sm{display:none}.container{width:min(100% - 30px,1200px)}.toplinks>a:not(.btn):not(.nav-avatar):nth-child(2){display:none}.hero-copy h1{font-size:2.9rem}.hero{padding-block:50px}.hero-mock{height:325px;grid-template-columns:40px 106px 1fr}.mini-rail>div{width:26px;height:26px}.mini-side{padding:13px 6px;font-size:10px}.mini-message{margin:15px 6px}.mini-message p{font-size:9px}.mini-head{padding:14px 7px;font-size:10px}.mini-head span{display:none}.banner-cta{margin-block:35px}.card-grid{grid-template-columns:1fr}.dashboard h1{font-size:27px}.dashboard .title-row{align-items:flex-start;flex-direction:column}.app-shell{grid-template-columns:53px minmax(0,1fr);position:relative}.channel-panel{position:absolute;left:53px;top:0;bottom:0;width:min(260px,calc(100vw - 53px));z-index:3;transform:translateX(-110%);transition:transform .2s;box-shadow:var(--shadow)}.channel-panel.open{transform:translateX(0)}.conversation-head{padding:0 10px;gap:7px}.channel-subtitle,.header-separator{display:none}.mobile-toggle{display:block;background:transparent;border:0;font-size:22px;color:#d3d6ec}.chat-messages{padding:10px 8px}.chat-form{margin-inline:8px;padding:7px}.chat-hint{padding-left:12px}.invite-header-link span{display:none}.inner-page{padding-block:36px 80px}.invite-item{flex-wrap:wrap}.invite-actions{width:100%;justify-content:flex-end}.table-scroll{font-size:12px}.compare-table th,.compare-table td{padding:13px 8px}.pulse-hero{padding:45px 13px}}
.invite-analytics{margin-top:22px}.invite-analytics h2{font-size:21px;margin:10px 0}.analytics-bars{height:162px;display:flex;align-items:flex-end;justify-content:space-around;gap:13px;border-top:1px solid var(--line);margin-top:22px}.analytics-day{height:155px;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;min-width:0}.analytics-day strong{font-size:12px}.analytics-day span{font-size:11px;color:var(--muted)}.analytics-bar{background:linear-gradient(180deg,#b3a2ff,#6755bd);border-radius:6px 6px 2px 2px;width:min(48px,100%);min-height:6px}

/* Blubby Premium & administration, mobile first */
[hidden],.owner-only-code[hidden]{display:none!important}.block-margin{margin-top:24px}.nova-featured{margin:24px 0 32px}.nova-featured h2{font-size:1.5rem}.nova-carousel{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:12px 3px 22px}.nova-spotlight-card{flex:0 0 min(285px,83vw);overflow:hidden;border:1px solid var(--nova-accent,var(--line));border-radius:18px;background:var(--surface);scroll-snap-align:start}.nova-spotlight-cover{height:106px;background:linear-gradient(135deg,var(--nova-accent),#171727)}.nova-spotlight-cover img{width:100%;height:100%;object-fit:cover}.nova-spotlight-info{padding:15px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.nova-spotlight-info strong{font-size:18px}.nova-spotlight-info p{flex:1 0 100%;min-height:38px;margin:0;font-size:14px}.nova-spotlight-info .btn{margin-left:auto}.nova-small-icon{height:36px;width:36px;object-fit:cover;border-radius:11px}.nova-avatar{height:100%;width:100%;object-fit:cover;border-radius:inherit}.nova-main-panel{border:1px solid #7671bb}.nova-main-panel h2{margin-top:0}.nova-price strong{font-size:32px}.nova-config-grid{margin-top:20px}.nova-preview-icon{height:88px;width:88px;object-fit:cover;border-radius:18px;margin-top:10px}.nova-preview-banner{width:100%;max-height:190px;object-fit:cover;border-radius:14px;margin-top:10px}.nova-welcome{padding:12px;border:1px solid;border-radius:12px;background:var(--surface);margin-bottom:20px;white-space:pre-wrap}.features-bullets{padding-left:24px;line-height:2}.friend-list{display:grid;gap:10px}.friend-row{padding:12px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.friend-row p{margin:4px 0}.friend-actions{display:flex;gap:7px;flex-wrap:wrap}.stack-result{margin-top:10px}.dm-shell{display:grid;grid-template-columns:minmax(170px,250px) 1fr;gap:15px;margin-top:24px;min-height:530px}.dm-contacts{min-width:0}.dm-contact{display:block;padding:10px;margin:4px 0;border-radius:8px;text-decoration:none;color:inherit}.dm-contact.active{background:var(--surface2)}.dm-conversation{display:flex;flex-direction:column;min-width:0}.dm-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.dm-messages{flex:1;overflow:auto;min-height:280px;max-height:490px;padding:10px 0;display:flex;flex-direction:column;gap:12px}.dm-bubble{max-width:82%;padding:10px 14px;border-radius:12px;background:var(--surface2);white-space:pre-wrap;overflow-wrap:anywhere}.dm-bubble p{margin:5px 0 0}.dm-bubble small{opacity:.65}.dm-self{align-self:flex-end;background:#39345a}.dm-other{align-self:flex-start}.staff-table{min-width:650px}.staff-table td{font-size:13px}.staff-table button{margin:3px}.review-row{padding:13px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.premium-status{max-width:460px;margin:0 auto}.payment-note{line-height:1.6}@media(max-width:650px){.dm-shell{grid-template-columns:1fr}.dm-contacts{max-height:180px;overflow-y:auto}.review-row{align-items:flex-start}}

/* Blubby 2026 : adaptation Android/iOS/tablettes, cinq thèmes Plus et cinq cadres. */
html{width:100%;overflow-x:clip}body{min-width:0;width:100%;overflow-x:clip}button,a,input,select,textarea{touch-action:manipulation}img{max-width:100%}textarea{min-width:0}input[type="file"]{max-width:100%;width:100%}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.mobile-bottom-nav{display:none}.dashboard-actions{display:flex;flex-wrap:wrap;gap:10px}.role-color{display:inline-block;width:14px;height:14px;border-radius:50%;border:1px solid #ffffff30;vertical-align:middle;flex-shrink:0}.roles-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:20px}.role-permissions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stack-form label.permission-option{display:flex;flex-direction:row;align-items:center;gap:10px;background:var(--surface2);border:1px solid var(--line);border-radius:12px;padding:11px;min-width:0;font-weight:550;cursor:pointer}.permission-option input,.role-assignment-options input{width:19px;height:19px;accent-color:var(--accent);flex-shrink:0}.role-editor{border:1px solid var(--line);border-radius:12px;margin:10px 0;overflow:hidden}.role-editor summary{list-style-position:inside;cursor:pointer;padding:16px;background:var(--surface2);font-weight:750}.role-editor[open] summary{border-bottom:1px solid var(--line)}.role-editor form{padding:16px}.role-editor summary .muted{margin-left:8px}.role-delete{border-top:1px solid var(--line)}.role-assignment-list{display:grid;gap:12px}.role-assignment{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px;border:1px solid var(--line);border-radius:12px}.role-assignment-head{min-width:130px;flex:0 1 190px}.role-assignment-head strong,.role-assignment-head .small{display:block}.role-assignment-options{display:flex;flex:1;flex-wrap:wrap;gap:8px}.role-assignment-options label{display:inline-flex;gap:6px;align-items:center;padding:7px 10px;border-radius:9px;background:var(--surface2);border:1px solid var(--line);font-size:12px;cursor:pointer}.role-assignment .form-status{width:100%}
.profile-cover{position:relative;isolation:isolate;min-height:155px;display:flex;align-items:flex-end;padding:10px 25px;background:linear-gradient(115deg,#6c5cc6,#446a9b 45%,#b874b1);border-radius:14px;margin-bottom:36px}.profile-avatar{position:absolute;bottom:-35px;left:20px;border-radius:50%;display:grid;place-items:center;padding:4px;isolation:isolate}.profile-avatar .large-avatar{width:86px;height:86px;overflow:hidden;display:grid;place-items:center;position:relative;background:#453b87;color:#fff;border:4px solid var(--surface);border-radius:50%;font-size:28px}.profile-avatar .large-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar.frame-none{padding:0}.frame-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 20px}.frame-choice{border:1px solid var(--line);padding:13px 5px;border-radius:13px;display:flex;align-items:center;flex-direction:column;gap:9px;background:var(--surface2);min-width:0}.frame-choice strong{font-size:11px;text-align:center}.frame-preview{width:72px;height:72px;position:relative;padding:6px;border-radius:50%;display:grid;place-items:center}.frame-preview>span{width:100%;height:100%;display:grid;place-items:center;border-radius:50%;background:#38314f;color:white;font-size:25px;font-weight:850;border:2px solid var(--surface)}
.frame-prism{background:conic-gradient(from 30deg,#41eedf,#6b79ff,#ec8cff,#ffddb1,#41eedf);box-shadow:0 0 0 2px #ffffff19,0 0 20px #8a82ef70}.frame-royal{background:linear-gradient(125deg,#6e4111,#f4cc73,#fff6ce,#d28a23,#68400a);box-shadow:0 0 0 2px #d1ab66,0 0 23px #d6a54f55}.frame-royal:before{content:'◆';position:absolute;top:-15px;left:50%;transform:translateX(-50%);font-size:20px;color:#f6d787;text-shadow:0 2px 4px #4b2c00}.frame-cosmos{background:conic-gradient(#192445,#5864d0,#b185ff,#222c61,#192445);box-shadow:0 0 0 3px #4d5685,0 0 24px #7866f594}.frame-cosmos:after{content:'✦';position:absolute;top:-11px;right:-6px;font-size:24px;color:#d6c9ff;text-shadow:0 0 9px #a98bff}.frame-flame{background:conic-gradient(from 0deg,#f0c64e,#f96328,#b52e43,#ffa741,#ffe694,#f96328);box-shadow:0 0 0 2px #d15a1c,0 0 20px #d66d2199}.frame-flame:after{content:'✧';position:absolute;top:-10px;left:1px;color:#ffdd7d;font-size:23px;text-shadow:0 0 9px #f90}.frame-glacier{background:conic-gradient(from 60deg,#e9ffff,#72d2fb,#315cca,#baf8ff,#defaff,#72d2fb);box-shadow:0 0 0 2px #6eccf2,0 0 23px #63cdff9a}.frame-glacier:after{content:'❄';position:absolute;bottom:-12px;right:-7px;color:#daffff;font-size:23px;text-shadow:0 0 8px #1aaefc}.profile-avatar.frame-prism,.profile-avatar.frame-royal,.profile-avatar.frame-cosmos,.profile-avatar.frame-flame,.profile-avatar.frame-glacier{padding:6px}.member-avatar.has-avatar{overflow:hidden}.member-avatar.has-avatar img{height:100%;width:100%;object-fit:cover}.member-avatar.frame-prism,.member-avatar.frame-royal,.member-avatar.frame-cosmos,.member-avatar.frame-flame,.member-avatar.frame-glacier{border:2px solid transparent;background-clip:padding-box,border-box}.member-avatar.frame-prism{border-color:#d18df6}.member-avatar.frame-royal{border-color:#e6c57e}.member-avatar.frame-cosmos{border-color:#938bea}.member-avatar.frame-flame{border-color:#ea8d36}.member-avatar.frame-glacier{border-color:#8bd8f7}
.theme-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.theme-swatch{border-radius:12px;padding:9px;min-height:68px;display:flex;gap:8px;align-items:center;border:1px solid #a4a4b550}.theme-swatch strong{font-size:10px;line-height:1.2}.theme-swatch span{width:28px;height:42px;flex:0 0 auto;border-radius:5px;box-shadow:inset -9px 0 #ffffff20}.theme-swatch-midnight{background:#141827;color:#f6f7fe}.theme-swatch-midnight span{background:#7460ce}.theme-swatch-nebula{background:#200c38;color:#f4e2ff}.theme-swatch-nebula span{background:#bb66ec}.theme-swatch-aurora{background:#073c3f;color:#e4fff6}.theme-swatch-aurora span{background:#42d8bb}.theme-swatch-atelier{background:#fbf2e3;color:#372d2f}.theme-swatch-atelier span{background:#9f6762}.theme-swatch-cyber{background:#060e18;color:#f5eaff}.theme-swatch-cyber span{background:#ff42cd}.theme-swatch-sunset{background:#41202e;color:#fff4e4}.theme-swatch-sunset span{background:#ffb062}
/* Thèmes vraiment distincts, sans toucher à la disposition des composants. */
html[data-theme=nebula]{--bg:#120922;--surface:#211237;--surface2:#321c51;--line:#543777;--muted:#c0a8db;--text:#faf0ff;--accent:#bb6aea;color-scheme:dark}
html[data-theme=aurora]{--bg:#051f26;--surface:#0d3039;--surface2:#16434a;--line:#28626a;--muted:#a1ced1;--text:#e5fff7;--accent:#2ebda5;color-scheme:dark}
html[data-theme=atelier]{--bg:#f7f1e7;--surface:#fffaf3;--surface2:#eee4d8;--line:#d8c8ba;--muted:#67595f;--text:#332b30;--accent:#9f616c;color-scheme:light}
html[data-theme=cyber]{--bg:#050914;--surface:#101524;--surface2:#191e31;--line:#39405e;--muted:#b0b5d0;--text:#f7f4ff;--accent:#e74dc1;color-scheme:dark}
html[data-theme=sunset]{--bg:#291522;--surface:#3b2030;--surface2:#553045;--line:#845063;--muted:#e0b7c4;--text:#fff3e9;--accent:#ed965c;color-scheme:dark}
html[data-theme=atelier] p,html[data-theme=atelier] .feature-card p,html[data-theme=atelier] .message-body p{color:#504550}html[data-theme=atelier] .topbar,html[data-theme=atelier] .user-plate{background:#f3e9dc}html[data-theme=atelier] .toplinks a:not(.btn),html[data-theme=atelier] .user-plate strong{color:#493941}html[data-theme=atelier] .channel-panel,html[data-theme=atelier] .members-panel,html[data-theme=atelier] .conversation,html[data-theme=atelier] .features-section,html[data-theme=atelier] .feature-card{background:var(--surface)}html[data-theme=atelier] .chat-form,html[data-theme=atelier] .stack-form input:not([type=color]),html[data-theme=atelier] .stack-form select,html[data-theme=atelier] .stack-form textarea,html[data-theme=atelier] .dm-bubble{background:var(--surface2);color:var(--text);border-color:var(--line)}html[data-theme=atelier] .chat-form textarea{color:var(--text)}html[data-theme=atelier] .chat-message:hover,html[data-theme=atelier] .channel-link.active{background:#eadbc9}html[data-theme=atelier] .channel-link.active{color:#382d35}html[data-theme=atelier] .role-editor summary{color:var(--text)}html[data-theme=atelier] .panel h2{color:var(--text)}
html[data-theme=nebula] .topbar,html[data-theme=aurora] .topbar,html[data-theme=cyber] .topbar,html[data-theme=sunset] .topbar{background:var(--surface)}html[data-theme=nebula] .conversation,html[data-theme=aurora] .conversation,html[data-theme=cyber] .conversation,html[data-theme=sunset] .conversation{background:var(--surface2)}html[data-theme=nebula] .channel-panel,html[data-theme=aurora] .channel-panel,html[data-theme=cyber] .channel-panel,html[data-theme=sunset] .channel-panel{background:var(--surface)}html[data-theme=nebula] .chat-form,html[data-theme=aurora] .chat-form,html[data-theme=cyber] .chat-form,html[data-theme=sunset] .chat-form{background:var(--surface)}html[data-theme=cyber] .panel,html[data-theme=cyber] .server-card{box-shadow:0 0 0 1px #ff42c819,0 12px 34px #060610}
/* Tablettes 601–1024px : menus accessibles sans écraser le contenu. */
@media(max-width:1050px){.roles-layout{grid-template-columns:1fr}.topbar{padding-inline:16px}.toplinks{gap:13px}.channel-panel{min-width:0}.inner-page{padding-block:34px 95px}}
@media(max-width:760px){.topbar{height:61px}.logo{font-size:21px}.toplinks>a:not(.nav-avatar):not(.btn){display:none}.toplinks .nav-avatar{display:grid}.mobile-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:70;align-items:center;justify-content:space-around;gap:2px;padding:7px max(6px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -6px 24px #00000033}.mobile-bottom-nav>a{display:flex;flex:1;flex-direction:column;align-items:center;gap:0;min-width:0;font-size:10px;font-weight:650;color:var(--text);padding:3px 0}.mobile-bottom-nav>a>span{font-size:21px;height:26px;line-height:26px;color:var(--accent)}body:has(.mobile-bottom-nav){padding-bottom:calc(66px + env(safe-area-inset-bottom))}.app-shell{height:calc(100dvh - 61px - 69px - env(safe-area-inset-bottom));min-height:340px}.dashboard,.inner-page{padding-bottom:30px}.toast{bottom:calc(79px + env(safe-area-inset-bottom));left:10px;right:10px;max-width:none}.settings-grid{grid-template-columns:1fr}.role-permissions{grid-template-columns:repeat(2,minmax(0,1fr))}.dm-shell{min-height:0}.chat-messages{overscroll-behavior:contain}.conversation-head strong{overflow:hidden;text-overflow:ellipsis}}
@media(max-width:600px){.app-shell{grid-template-columns:50px minmax(0,1fr)}.channel-panel{left:50px;width:min(280px,calc(100vw - 50px));z-index:11}.server-rail{overflow-y:auto}.conversation{min-width:0}.chat-form{margin-inline:6px}.conversation-head{font-size:13px}.chat-message{gap:7px}.chat-hint{white-space:normal;font-size:9px}.chat-message .member-avatar{width:31px;height:31px}.delete-message{opacity:1;position:static;align-self:start;margin-left:auto}.voice-center{padding:25px 14px;justify-content:flex-start}.voice-art{height:100px;width:100px;font-size:49px;margin:24px 0}.voice-center h2{font-size:20px}.voice-controls .btn{white-space:normal}.panel{padding:17px}.role-permissions{grid-template-columns:1fr}.frame-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.role-assignment{align-items:stretch}.role-assignment-head{flex:1 0 100%}.role-assignment-options{flex:1 0 100%}.role-assignment .btn{width:100%}.topbar{padding-inline:12px}.hero-mock{max-width:100%}.profile-cover{min-height:135px}}
@media(max-width:360px){.mobile-bottom-nav>a{font-size:9px}.mobile-bottom-nav>a>span{font-size:19px}.topbar .logo{font-size:18px}.frame-gallery{grid-template-columns:1fr 1fr}}
@supports (padding-bottom:env(safe-area-inset-bottom)){.channel-panel,.members-panel{overscroll-behavior:contain}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Rejoindre par lien : entrée tactile et clavier sur Android, iOS et tablettes. */
.join-invite-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;border-radius:16px;padding:20px 24px;margin:0 0 24px;background:var(--surface);border:1px solid var(--line)}
.join-invite-banner h2{font-size:21px;margin:0 0 6px}.join-invite-banner p{margin:0;color:var(--muted)}.join-invite-banner .btn{flex-shrink:0}
.join-page{min-height:min(720px,calc(100dvh - 160px));padding:38px 16px 100px}.join-page h1{margin-bottom:8px}.join-symbol{font-size:50px;background:linear-gradient(140deg,#6e64d8,#bd64cd);width:94px;height:94px;display:grid;place-items:center;border-radius:27px;margin:10px auto 22px;box-shadow:0 13px 32px #6758b04a}.join-by-link-form{width:min(540px,100%);text-align:left;margin:24px auto}.join-by-link-form input{font-size:16px;min-height:49px;width:100%}.join-by-link-form .btn{min-height:47px}.join-page-bottom{max-width:540px;margin:0 auto;text-align:center}.join-page-bottom p{line-height:1.6}.join-page-bottom a{text-decoration:underline}.join-page code{overflow-wrap:anywhere}
@media(max-width:700px){.join-invite-banner{align-items:stretch;flex-direction:column;padding:18px}.join-invite-banner .btn{text-align:center}.join-page{min-height:0}.join-page h1{font-size:clamp(26px,7vw,36px)}}

/* Blubby — refonte des espaces de discussion, contrôles tactiles et bannière Premium. */
.drawer-backdrop,.drawer-close,.mobile-server-links{display:none}
.role-mover{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:12px 16px 0}
.role-mover .btn{min-height:39px}
.voice-roster{padding:0 7px 0 27px;display:flex;flex-direction:column;gap:3px;min-height:0}
.roster-person{display:flex;align-items:center;gap:7px;padding:3px 4px;border-radius:7px;min-width:0;color:var(--muted);font-size:12px}
.roster-avatar{display:grid;place-items:center;width:21px;height:21px;flex:0 0 21px;border-radius:50%;background:#5d6389;color:white;font-weight:750;font-size:11px}
.roster-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}
.roster-badge{font-size:11px}
.channel-banner{width:100%;aspect-ratio:2.9 / 1;background:var(--surface2);overflow:hidden;flex-shrink:0}
.channel-banner img{width:100%;height:100%;object-fit:cover;display:block}
.server-banner-panel{margin:20px 0;text-align:left}
.server-banner-preview{display:block;width:100%;aspect-ratio:3/1;object-fit:cover;border-radius:13px;border:1px solid var(--line);margin:10px 0 20px}
.mod-member-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:12px}
.mod-member-card{padding:17px;min-width:0}
.mod-member-title{display:flex;align-items:center;gap:11px;min-width:0}
.mod-member-title>div:last-child{min-width:0;overflow-wrap:anywhere}
.mod-flags,.mod-buttons{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}
.mod-buttons .btn{white-space:normal;flex:1 1 auto;font-size:12px}
.members-admin-page .back-link{display:inline-flex;margin-bottom:18px}
/* Tablettes : la colonne membres devient une page autonome pour préserver le texte. */
@media(max-width:1100px){.members-panel{display:none}}
@media(max-width:760px){
 :root{--nav-mobile-height:70px}
 html,body{width:100%;max-width:100%;overflow-x:clip}
 .topbar{height:60px;padding:0 15px;position:relative;z-index:22}
 .logo{font-size:20px;white-space:nowrap}
 .logo-mark{width:34px;height:34px}
 .app-shell{display:grid;grid-template-columns:minmax(0,1fr)!important;width:100%;max-width:100vw;
   height:calc(100dvh - 60px - var(--nav-mobile-height) - env(safe-area-inset-bottom));min-height:0;overflow:hidden;position:relative}
 .server-rail{display:none!important}
 .conversation{grid-column:1;min-width:0;width:100%;height:100%;overflow:hidden}
 .conversation-head{min-width:0;width:100%;padding:0 12px;height:55px;gap:8px;flex-shrink:0}
 .conversation-head strong{font-size:15px;max-width:45vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .conversation-head .channel-subtitle,.conversation-head .header-separator{display:none!important}
 .mobile-toggle{display:grid!important;place-items:center;flex:0 0 42px;height:44px;width:42px;border-radius:10px;background:var(--surface2);font-size:21px}
 .invite-header-link{margin-left:auto;display:flex;align-items:center;flex-shrink:0;min-height:42px}
 .channel-panel{display:flex!important;position:fixed!important;z-index:95!important;left:0!important;top:60px!important;
   bottom:calc(var(--nav-mobile-height) + env(safe-area-inset-bottom))!important;
   width:min(340px,88vw)!important;max-width:88vw;transform:translateX(-104%)!important;
   transition:transform .2s ease;background:var(--surface);box-shadow:8px 0 30px #0007;overflow:hidden}
 .channel-panel.open{transform:translateX(0)!important}
 .drawer-backdrop:not([hidden]){display:block;position:fixed;inset:60px 0 calc(var(--nav-mobile-height) + env(safe-area-inset-bottom));z-index:90;background:#05070dbb;border:0;cursor:pointer}
 .drawer-close{display:grid;place-items:center;width:38px;height:38px;font-size:27px;flex:0 0 38px;border:0;color:var(--text);background:var(--surface2);border-radius:9px}
 .channel-server-heading{min-height:58px;flex-shrink:0}
 .channel-server-heading strong{overflow:hidden;text-overflow:ellipsis;min-width:0}
 .mobile-server-links{display:flex;gap:6px;flex-wrap:wrap;padding:8px;border-bottom:1px solid var(--line)}
 .mobile-server-links a{font-size:12px;background:var(--surface2);border-radius:7px;padding:7px 9px}
 .channel-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain}
 .chat-messages{min-height:0;overflow-y:auto;min-width:0;padding:10px 13px}
 #message-list{min-width:0;width:100%;overflow-wrap:anywhere}
 .chat-intro{max-width:100%;overflow-wrap:anywhere}
 .chat-intro h2{font-size:clamp(22px,6vw,30px)}
 .chat-form{margin:0 8px;flex-shrink:0;min-width:0;align-items:center;padding:8px 10px;border-radius:12px;gap:9px}
 .chat-form textarea{font-size:16px;min-width:0;max-height:100px}
 .chat-form .send-button{width:38px;min-width:38px;flex-shrink:0;min-height:42px}
 .upload-control{flex-shrink:0;min-width:34px}
 .chat-hint{flex-shrink:0;font-size:10px;padding:3px 10px 6px;line-height:1.25}
 .mobile-bottom-nav{height:calc(var(--nav-mobile-height) + env(safe-area-inset-bottom));padding:5px 5px calc(5px + env(safe-area-inset-bottom));z-index:75}
 .mobile-bottom-nav>a{font-size:10px;min-height:52px;gap:2px;line-height:1.1}
 .mobile-bottom-nav>a>span{height:24px;line-height:24px;font-size:21px}
 .voice-center{min-width:0;overflow-y:auto;padding:14px 16px 25px}
 .voice-center h2{text-align:center;font-size:22px}
 .voice-controls{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
 .voice-controls .btn{min-height:44px;padding:9px 14px;white-space:normal}
 .roles-layout,.settings-grid{grid-template-columns:minmax(0,1fr)}
 .role-assignment,.role-editor,.role-permissions{max-width:100%;min-width:0}
 .role-assignment-options{max-height:220px;overflow-y:auto}
 .container{width:calc(100% - 28px)}
 .inner-page{padding-block:22px 35px}
 .title-row,.between{flex-wrap:wrap}
 .role-mover{padding:10px}
 .server-banner-preview{min-height:120px}
 .toast{z-index:180!important;bottom:calc(83px + env(safe-area-inset-bottom));pointer-events:none}
}
@media(max-width:360px){.mobile-bottom-nav>a{font-size:9px}.conversation-head strong{max-width:34vw}.invite-header-link span{display:none}}

/* v2026.10 — formulaire des permissions : les cases ne doivent JAMAIS hériter des champs pleine largeur. */
.roles-layout,.roles-layout>.panel,.role-editor,.role-editor form,.role-permissions{min-width:0;max-width:100%}
.roles-layout .role-permissions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}
.roles-layout .role-permissions label.permission-option{display:grid!important;grid-template-columns:22px minmax(0,1fr);align-items:center!important;justify-content:unset;gap:12px;min-height:52px;max-width:100%;margin:0;padding:12px!important;overflow:visible!important;white-space:normal;word-break:normal}
.roles-layout .role-permissions label.permission-option span{display:block;min-width:0;max-width:100%;line-height:1.4;overflow-wrap:anywhere!important;white-space:normal;font-size:13px}
.roles-layout .role-permissions .permission-option input[type=checkbox],.roles-layout .stack-form label.hoist-control input[type=checkbox]{appearance:auto!important;-webkit-appearance:checkbox!important;display:block!important;position:static!important;width:20px!important;height:20px!important;min-width:20px!important;max-width:20px!important;min-height:20px!important;max-height:20px!important;flex:0 0 20px!important;margin:0!important;padding:0!important;box-shadow:none!important;transform:none!important;accent-color:var(--accent)}
.roles-layout .stack-form label.hoist-control{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px;padding:13px 12px;background:var(--surface2);border:1px solid var(--line);border-radius:11px;white-space:normal}
.hoist-control span{font-size:13px;line-height:1.5;overflow-wrap:anywhere}
/* Liste des membres et tri par rôle */
.members-panel{min-width:0}.members-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px 15px 10px;font-size:11px;letter-spacing:.08em;color:var(--muted);font-weight:800}
.member-role-heading{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.055em;color:var(--muted);padding:18px 15px 5px;overflow-wrap:anywhere}
.member-row{min-width:0;max-width:100%;overflow:hidden}.member-row .member-details{min-width:0;overflow:hidden;flex:1}.member-row .member-details strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-row .member-details small{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}
.show-members-button{display:inline-flex;align-items:center;gap:6px;margin-left:auto;background:transparent;color:var(--text);font-size:12px;border:1px solid var(--line);border-radius:9px;padding:8px 10px;cursor:pointer;white-space:nowrap}
.show-members-button:hover{background:var(--surface2)}.members-close{display:none}
@media(min-width:1101px){.show-members-button{display:none}.app-shell{grid-template-columns:68px 243px minmax(0,1fr) 240px}.members-panel{display:flex!important}}
/* Sur tablette / smartphone, ouvrir les membres dans un tiroir à droite sur demande. */
@media(max-width:1100px){.members-panel{display:flex!important;position:fixed!important;z-index:96!important;top:60px;right:0;bottom:calc(70px + env(safe-area-inset-bottom));width:min(330px,91vw);max-width:91vw;background:var(--surface);border-left:1px solid var(--line);box-shadow:-12px 0 34px #0007;transform:translateX(105%);transition:transform .2s ease;visibility:hidden}.members-panel.open{transform:translateX(0);visibility:visible}.members-close{display:grid;place-items:center}}
@media(min-width:761px) and (max-width:1100px){.members-panel{top:70px;bottom:0}.show-members-button{display:inline-flex}}
@media(max-width:760px){.members-panel{top:60px;bottom:calc(70px + env(safe-area-inset-bottom))}.show-members-button{padding:7px 8px;min-height:42px}.show-members-button span{display:none}.members-panel .member-row{padding-block:9px}}
/* Sons/vocal : état explicite et lisible dans le menu salons. */
.roster-person .roster-badge{font-size:13px;font-weight:700;border-radius:5px;background:#3c2a40;color:#f9c2d9;padding:1px 5px;flex-shrink:0}
.roster-person .roster-name{color:var(--text)}.channel-scroll .voice-roster:not(:empty){padding-top:3px;padding-bottom:7px}
/* Gestion des catégories et ordre de salon : actions tactiles 44px. */
.organize-page>.panel{margin:16px 0}.organizer-create{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.organizer-create>label{font-size:13px;font-weight:700}.organizer-create>input{flex:1 1 220px;background:var(--surface2);border:1px solid var(--line);padding:11px;border-radius:9px;min-width:0}
.organizer-create.compact{padding:10px 0 18px}.organizer-create.compact>label{display:flex;flex-direction:column;gap:5px;flex:1 1 220px}.organizer-create.compact input{background:var(--surface2);padding:9px 11px;border-radius:8px;border:1px solid var(--line);max-width:100%}
.category-manage-title{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.category-manage-title h2{font-size:20px;margin:0}.sort-actions{display:flex;gap:6px}.sort-actions button{min-width:43px;min-height:43px;color:var(--text);background:var(--surface2);border-radius:9px;border:1px solid var(--line);font-size:18px}.sort-actions button:hover{border-color:var(--accent)}.channel-sort-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--line);min-width:0}.channel-sort-name{display:flex;align-items:center;gap:8px;flex:1;min-width:110px;overflow-wrap:anywhere}.channel-sort-name span{color:var(--accent);font-size:19px}.channel-sort-name small{color:var(--muted);margin-left:auto}.channel-relocate{display:flex;gap:6px;align-items:center;max-width:100%}.channel-relocate select{background:var(--surface2);border:1px solid var(--line);border-radius:9px;padding:9px;color:var(--text);min-width:0;max-width:180px}.category-acl-details{margin-top:19px;padding:15px;border:1px solid var(--line);border-radius:11px}.category-acl-details summary{cursor:pointer;font-weight:800}.category-acl-details>p{margin:15px 0}.category-acl-form{margin-top:15px;gap:12px}.category-acl-form select{background:var(--surface2);color:var(--text);padding:10px;border-radius:9px;border:1px solid var(--line);width:100%;max-width:100%}.acl-rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.acl-rule-label{background:var(--surface2);border-radius:10px;padding:12px;display:grid;gap:8px;min-width:0}.acl-rule-label span{font-size:13px;overflow-wrap:anywhere}.category-remove{margin-top:18px}
@media(max-width:760px){.roles-layout .role-permissions{grid-template-columns:minmax(0,1fr)}.roles-layout .role-permissions label.permission-option{min-height:50px}.category-manage-block{padding:16px}.channel-sort-row{align-items:stretch}.channel-sort-name{flex:1 0 100%}.channel-relocate{flex:1 1 100%}.channel-relocate select{max-width:none;flex:1}.acl-rules-grid{grid-template-columns:minmax(0,1fr)}.organizer-create .btn{width:100%}.organizer-create.compact .btn{width:auto}}

/* Actions de suppression séparées : confort tactile Android/iPhone/tablette. */
.channel-delete-form{display:flex;align-items:center;gap:8px;max-width:100%;flex-wrap:wrap}
.channel-delete-form .btn{min-height:42px;white-space:nowrap}
.channel-delete-form .form-status{font-size:12px;color:var(--danger);max-width:100%;overflow-wrap:anywhere}
.category-remove{display:flex;flex-direction:column;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
.category-remove .delete-children-choice{display:flex;align-items:flex-start;flex-direction:row;gap:12px;line-height:1.5;padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:10px;min-width:0}
.category-remove .delete-children-choice input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent)}
.category-remove .delete-children-choice span{min-width:0;overflow-wrap:anywhere;font-size:13px}
.category-remove .btn{align-self:flex-start;min-height:42px}
@media(max-width:760px){.channel-delete-form{width:100%}.channel-delete-form .btn{width:100%}.category-remove .btn{align-self:stretch}}

/* Correction profil : un seul repère de positionnement pour le cercle d'avatar. */
.settings-container .profile-cover{
  min-height:155px;
  margin-bottom:65px;
  overflow:visible;
}
.settings-container .profile-cover .profile-avatar{
  position:absolute;
  left:22px;
  bottom:-45px;
  width:100px;
  height:100px;
  display:grid;
  place-items:center;
  padding:6px;
  margin:0;
  border-radius:50%;
  transform:none;
}
.settings-container .profile-cover .profile-avatar.frame-none{padding:0}
.settings-container .profile-cover .profile-avatar .large-avatar{
  position:relative;
  inset:auto;
  margin:0;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  display:grid;
  place-items:center;
  border-radius:50%;
  overflow:hidden;
  box-sizing:border-box;
  border:4px solid var(--surface);
}
.settings-container .profile-cover .profile-avatar .large-avatar img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
@media(max-width:600px){
  .settings-container .profile-cover{min-height:135px;margin-bottom:62px}
  .settings-container .profile-cover .profile-avatar{left:15px;bottom:-43px;width:94px;height:94px}
}
/* Table comparative Premium compacte sur les écrans étroits. */
.nova-compare{font-size:12px}
.nova-compare th,.nova-compare td{padding:10px 8px;white-space:normal;overflow-wrap:anywhere}
@media(max-width:500px){.nova-compare{font-size:11px}.nova-compare th,.nova-compare td{padding:8px 6px}}

/* Blubby : cartes de profil ouvertes sur clic (chat, vocal, liste des membres). */
.profile-trigger{cursor:pointer;touch-action:manipulation}
button.profile-trigger{font:inherit;color:inherit;background:transparent;border:0;text-align:inherit;padding:0}
.member-avatar.profile-trigger,.roster-avatar.profile-trigger{display:grid;place-items:center;flex:0 0 auto;overflow:hidden;border:0;border-radius:50%;background:var(--accent);color:#fff}
.member-avatar.profile-trigger{width:34px;height:34px}
.roster-avatar.profile-trigger{width:25px;height:25px;font-size:11px;font-weight:800}
.profile-trigger:focus-visible{outline:2px solid #baaeff;outline-offset:3px}
.profile-trigger:hover{text-decoration:underline;text-underline-offset:2px}
.member-avatar.profile-trigger:hover,.roster-avatar.profile-trigger:hover{text-decoration:none;box-shadow:0 0 0 2px #afa1ff}
.profile-photo{display:block;object-fit:cover;width:100%;height:100%;border-radius:inherit}
.nav-avatar{overflow:hidden}
.roster-person .roster-name.profile-trigger{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit;font-size:inherit}
.message-meta [data-profile-user]{cursor:pointer}
.dm-author{display:inline;font-weight:700;cursor:pointer}
.voxora-profile-dialog{border:1px solid var(--line);background:#191d2c;color:var(--text);padding:0;width:min(430px,calc(100vw - 24px));max-height:min(86dvh,720px);overflow:auto;border-radius:18px;box-shadow:0 18px 70px #000b}
.voxora-profile-dialog::backdrop{background:#050611c9;backdrop-filter:blur(4px)}
.profile-dialog-cover{height:125px;position:relative;background:linear-gradient(115deg,#6953ba,#496c9f 55%,#9f588f);background-size:cover;background-position:center}
.profile-close{position:absolute;right:12px;top:12px;font-size:25px;color:#fff;border:0;background:#151822ae;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;cursor:pointer;z-index:1}
.profile-dialog-avatar{position:relative;margin:-48px 0 -2px 19px;width:94px;height:94px;border:5px solid #191d2c;border-radius:50%;background:#6f5ec0;display:grid;place-items:center;overflow:hidden;font-size:30px;font-weight:800;isolation:isolate}
.profile-dialog-content{padding:15px 22px 26px}
.profile-dialog-title{display:flex;flex-wrap:wrap;gap:9px;align-items:center;font-size:22px;font-weight:850;overflow-wrap:anywhere}
.profile-dialog-content h3{font-size:13px;margin:20px 0 6px;color:#c8d0e6}
.profile-bio{line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0}
.profile-role-name{display:inline-block;margin-top:10px;background:#34384e;padding:5px 10px;border-radius:8px;font-size:12px}
.profile-dialog-actions,.profile-moderation{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.profile-moderation{border-top:1px solid var(--line);padding-top:14px}
.profile-moderation h3{width:100%;margin:0 0 2px}
.profile-loading{padding:28px 20px}
@media(max-width:600px){.voxora-profile-dialog{width:calc(100vw - 22px);max-width:430px;max-height:calc(100dvh - 95px)}.profile-dialog-cover{height:110px}.profile-dialog-content{padding:12px 17px 22px}}

/* Blubby : activité vocale, navigation conservant le WebRTC et actions Bump */
.channel-bump{display:flex;width:100%;border:0;background:transparent;text-align:left;cursor:pointer;color:inherit;font:inherit}
.channel-bump:disabled{opacity:.52;cursor:not-allowed}
.is-speaking{border-color:#46e9a3!important;box-shadow:0 0 0 2px rgba(56,229,146,.9),0 0 17px rgba(42,221,139,.35)!important;background:rgba(35,154,102,.2)!important}
.roster-person.is-speaking{border-radius:9px}
.roster-person.is-speaking .roster-avatar{outline:2px solid #42efac;outline-offset:1px;box-shadow:0 0 10px #3eeea455}
.voice-persistent-bar{position:fixed;z-index:1400;right:15px;bottom:15px;background:#171d2e;border:1px solid #5f68a3;box-shadow:0 8px 40px #0008;border-radius:15px;padding:9px 12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:calc(100vw - 24px)}
.voice-persistent-bar[hidden],.voice-browse-layer[hidden]{display:none!important}
.voice-persistent-bar strong{color:#c6ffd9;font-size:13px}
.voice-browse-layer{position:fixed;inset:0;z-index:1200;background:var(--bg);display:flex;flex-direction:column;min-width:0}
.voice-browse-head{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;gap:9px;background:#171d2e;border-bottom:1px solid var(--line);min-height:50px}
.voice-browse-head strong{font-size:12px;line-height:1.35;color:#d2ffd9}
.voice-browse-frame{height:100%;min-height:0;min-width:0;flex:1;border:0;width:100%;background:var(--bg)}
.server-bump-settings{margin:16px 0}
@media(max-width:620px){.voice-persistent-bar{left:8px;right:8px;bottom:calc(72px + env(safe-area-inset-bottom,0px));justify-content:space-between;padding:7px}.voice-persistent-bar .btn{padding:7px 9px;font-size:11px}.voice-browse-head{padding:7px}.voice-browse-head strong{font-size:11px;max-width:60%}}


/* Blubby — état des commandes vocales et vidéo, responsive sur tous les écrans. */
.voice-control-toggle{transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}
.voice-control-toggle.is-enabled{background:rgba(47,191,129,.18)!important;color:#d2ffeb!important;border:2px solid #2fbe80!important;box-shadow:inset 0 0 0 1px rgba(73,230,158,.17),0 0 12px rgba(47,191,129,.12)}
.voice-control-toggle:not(.is-enabled){border:1px solid var(--line);opacity:.94}
.voice-control-toggle:disabled{cursor:not-allowed;opacity:.6}
.voice-video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin:18px auto 8px;width:min(100%,1000px)}
.voice-video-grid[hidden]{display:none!important}
.voice-video-tile{position:relative;min-height:160px;aspect-ratio:16/9;overflow:hidden;border-radius:14px;background:#10141e;border:1px solid var(--line)}
.voice-video-tile[hidden]{display:none!important}
.voice-video-player{width:100%;height:100%;display:block;object-fit:contain;background:#10141e}
.voice-video-label{position:absolute;bottom:8px;left:10px;padding:5px 9px;border-radius:8px;background:#04060bbf;color:white;font-size:12px;font-weight:700;pointer-events:none}
@media(max-width:600px){.voice-video-grid{grid-template-columns:1fr}.voice-video-tile{min-height:145px}.voice-controls>.btn{flex:1 1 46%;min-height:45px}}


/* Correctif caméra / partage écran : aucun bouton ne sort de l'écran mobile. */
.voice-center{width:100%;max-width:100%;min-width:0;overflow-x:hidden}
.voice-controls{width:min(100%,900px);max-width:100%;min-width:0;gap:10px;align-items:stretch}
.voice-controls>.btn{max-width:100%;min-width:0;min-height:46px;white-space:normal;overflow-wrap:anywhere;text-align:center;line-height:1.35;padding:10px 12px}
.voice-controls>[hidden]{display:none!important}
.voice-control-toggle.is-unsupported{border-style:dashed;opacity:1;cursor:pointer}
.voice-media-hint{width:min(100%,740px);max-width:100%;box-sizing:border-box;margin:10px auto!important;padding:12px 14px;border-radius:12px;border:1px solid #8370b0;background:#26213b;color:#ede4ff;font-size:13px;line-height:1.55;text-align:left;overflow-wrap:anywhere}
.voice-media-hint[hidden]{display:none!important}
@media(max-width:750px){
 .voice-center{padding-inline:12px}
 .voice-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}
 .voice-controls>.btn{width:100%;font-size:13px;padding:10px 7px;min-height:49px;flex:none}
}
@media(max-width:345px){.voice-controls{grid-template-columns:1fr}}

/* Blubby 2026 · identité visuelle et cadrage des avatars */
.logo{gap:0;line-height:1;min-width:0}.brand-wordmark{display:block;width:160px;max-width:37vw;height:auto;object-fit:contain;object-position:left center}
.mini-brand img,.rail-home img{width:100%;height:100%;object-fit:contain;display:block}
.rail-home{padding:2px;background:transparent;box-shadow:none}.brand-login-icon{background:transparent;box-shadow:none;padding:0;overflow:visible}.brand-login-icon img{max-width:100%;max-height:100%;object-fit:contain}
.nav-avatar,.member-avatar,.roster-avatar,.large-avatar,.profile-avatar,.server-card-symbol{flex-shrink:0}
.nav-avatar img,.member-avatar img,.roster-avatar img,.large-avatar img,.profile-photo{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;aspect-ratio:1/1;max-width:100%;max-height:100%}
.nav-avatar,.member-avatar,.roster-avatar,.large-avatar{overflow:hidden;border-radius:50%}
.profile-cover .profile-avatar{z-index:2;overflow:visible}.profile-cover .large-avatar{aspect-ratio:1/1;position:relative;inset:auto;min-width:0;min-height:0;border-radius:50%;overflow:hidden}
.boost-offer{margin:24px 0 12px;padding:20px;border-radius:14px;border:1px solid #7867d78c;background:linear-gradient(120deg,#39315f54,#2b355254)}.boost-offer p{margin-bottom:16px}
.boost-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:24px}.boost-slot{min-width:0}.boost-slot h2{font-size:23px;margin-bottom:0}.boost-remove{margin-top:15px}.boost-guide{margin-top:20px}
.boost-tier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.boost-tier-grid article{border:1px solid var(--line);background:var(--surface2);border-radius:13px;padding:18px;min-width:0}.boost-tier-grid strong{color:#d8b1ff;font-size:17px}.boost-tier-grid p{font-size:13px;margin:9px 0 0}.boost-meter{width:100%;height:14px;background:#25283f;border-radius:999px;overflow:hidden;margin:12px 0 14px}.boost-meter>div{height:100%;background:linear-gradient(90deg,#8b4efa,#47c7f4);border-radius:inherit;transition:width .2s}
@media(max-width:720px){.brand-wordmark{width:136px;max-width:34vw}.boost-slots,.boost-tier-grid{grid-template-columns:1fr}.boost-slot{padding:18px}.boost-guide{margin-bottom:18px}}
@media(max-width:375px){.brand-wordmark{width:118px;max-width:32vw}}

/* La couleur de serveur obtenue à 2 boosts reste visible même sans accueil personnalisé. */
.channel-server-heading.boost-custom-accent{border-left:4px solid var(--server-custom-accent,#7c6bff);padding-left:12px}

/* Blubby · Permissions des rôles organisées et utilisables sur mobile. */
.role-permission-groups{display:grid;gap:14px;min-width:0}
.permission-group{min-width:0;margin:0;padding:12px;border:1px solid var(--line);border-radius:13px}
.permission-group legend{padding:0 8px;font-size:13px;font-weight:800;color:var(--accent)}
.permission-group .role-permissions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
.role-permission-groups label.permission-option{min-width:0;white-space:normal}
.chat-pin-toolbar{display:flex;justify-content:flex-end;padding:6px 14px 0}
.chat-message.is-pinned{border-left:3px solid var(--accent);padding-left:8px}
.chat-message .message-actions{display:flex;align-items:flex-start;gap:3px;flex-wrap:wrap;flex-shrink:0}
.chat-message .message-actions button{background:transparent;border:1px solid var(--line);border-radius:8px;font-size:12px;color:var(--muted);padding:5px 7px;cursor:pointer}
.chat-message .message-actions button:hover{color:var(--text);border-color:var(--accent)}
.pinned-list{max-height:min(60vh,530px);overflow:auto;display:grid;gap:9px}
.pinned-item{border:1px solid var(--line);padding:10px;border-radius:9px;white-space:pre-wrap;overflow-wrap:anywhere}
.pinned-item strong{display:block;color:var(--accent);font-size:13px;margin-bottom:4px}
@media(max-width:760px){.permission-group .role-permissions{grid-template-columns:minmax(0,1fr)}.permission-group{padding:8px}.chat-message .message-actions{flex-direction:column}.chat-message .message-actions button{font-size:11px}}

/* Signalements Blubby – panels et formulaires responsives. */
.report-admin-list{display:grid;gap:12px;margin-top:16px}
.report-admin-card{min-width:0;background:var(--surface2);border:1px solid var(--line);border-radius:13px;padding:14px}
.report-admin-head{gap:10px;align-items:center;flex-wrap:wrap}
.report-admin-head strong{min-width:0;overflow-wrap:anywhere}
.report-reason{white-space:normal;overflow-wrap:anywhere;border-left:3px solid var(--accent);padding:7px 12px;margin:12px 0;line-height:1.55}
.report-admin-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.report-admin-actions>.btn{min-height:36px;white-space:normal;text-align:center}
.server-report-dialog{width:min(540px,calc(100vw - 26px));max-height:calc(100dvh - 30px);overflow:auto;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 24px 70px #0009}
.server-report-dialog::backdrop{background:#040816c9}
.server-report-dialog textarea{resize:vertical;min-height:138px;width:100%;box-sizing:border-box}
.report-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.report-header-link{border:1px solid var(--line);background:transparent;color:var(--muted);padding:8px 10px;border-radius:9px;cursor:pointer;flex-shrink:0}
.report-header-link:hover{color:var(--text);border-color:var(--accent)}
button.channel-link{font:inherit;color:var(--muted);text-align:left;border:0;background:transparent;width:100%;cursor:pointer}
button.channel-link:hover{color:var(--text);background:var(--surface2)}
#voice-camera-help{margin:6px auto 12px;max-width:100%;white-space:normal}
@media(max-width:600px){.server-report-dialog{padding:17px}.report-admin-actions>.btn{flex:1 1 120px}.report-dialog-actions>.btn{flex:1 1 115px}}
