.private-rooms{box-sizing:border-box;max-width:1100px;margin:28px auto 90px;padding:0 16px;color:var(--app-text,#202b52)}.private-rooms *{box-sizing:border-box;min-width:0}.private-rooms-back{display:inline-flex;margin-bottom:20px;color:var(--app-accent,#6555dd);text-decoration:none}.private-rooms header{margin-bottom:25px}.private-rooms h1{margin:8px 0;font-size:clamp(27px,5vw,43px);overflow-wrap:anywhere}.private-rooms h2{font-size:22px;margin:8px 0 18px}.private-rooms h3{font-size:17px}.private-rooms p,.private-rooms small,.private-rooms time{color:var(--app-muted,#71809b)}.private-rooms-card{padding:22px;border:1px solid var(--app-border,#e2e5f3);border-radius:22px;background:var(--app-surface,#fff);box-shadow:0 12px 35px rgba(40,37,100,.06);overflow:hidden}.private-rooms-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px}.private-rooms-tile{display:flex;align-items:center;gap:15px;text-decoration:none;color:inherit}.private-rooms-tile>span:nth-child(2){flex:1;display:grid;gap:5px}.private-rooms-tile strong{overflow-wrap:anywhere}.private-rooms-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:color-mix(in srgb,var(--app-accent,#6555dd) 12%,var(--app-surface,#fff))}.private-rooms-create{margin-bottom:28px}.private-rooms-create>div,.private-rooms-send{display:flex;gap:10px;margin-top:10px}.private-rooms input,.private-rooms select{flex:1;width:100%;min-height:44px;padding:10px 13px;border:1px solid var(--app-border,#d9def0);border-radius:12px;color:var(--app-text,#202b52);background:var(--app-surface,#fff)}.private-rooms button{min-height:44px;padding:10px 17px;border:0;border-radius:12px;background:var(--app-accent,#6555dd);color:#fff;font-weight:700;cursor:pointer;white-space:normal}.private-rooms-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:17px}.private-rooms-conversation{display:flex;flex-direction:column;min-height:360px}.private-rooms-messages{flex:1;max-height:65vh;overflow:auto}.private-rooms-messages article{padding:13px 0;border-bottom:1px solid var(--app-border,#e2e5f3)}.private-rooms-messages article>div{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.private-rooms-messages p{margin:7px 0 0;color:var(--app-text,#202b52);overflow-wrap:anywhere;white-space:normal}.private-rooms-side ul{list-style:none;padding:0}.private-rooms-side li{display:flex;justify-content:space-between;gap:10px;margin:12px 0;overflow-wrap:anywhere}.private-rooms-side form{display:grid;gap:10px}.private-rooms-leave{margin:22px 0}.private-rooms-leave button{background:transparent;border:1px solid #c96379;color:#b34560}.private-rooms-empty{padding:18px;overflow-wrap:anywhere}@media(max-width:720px){.private-rooms{margin-top:16px;padding:0 12px 105px}.private-rooms-card{padding:15px;border-radius:17px}.private-rooms-layout{grid-template-columns:1fr}.private-rooms-create>div,.private-rooms-send{flex-wrap:wrap}.private-rooms-create button,.private-rooms-send button{width:100%}}

.community-access-tools{margin-top:18px}.community-access-tools .panel{max-width:850px;padding:18px}.community-access-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:6px 0;min-width:0}.community-access-row span{flex:1;min-width:100px;overflow-wrap:anywhere}.community-access-row input{flex:1;min-width:120px;max-width:250px;padding:10px;border:1px solid var(--app-border,#d9def0);border-radius:10px;background:var(--app-surface,#fff);color:var(--app-text,#202b52)}.community-access-row form{margin:0}.community-hero-actions{display:flex;flex-wrap:wrap;gap:10px;min-width:0}.community-hero-actions>*{max-width:100%}.community-edit-form select{width:100%;max-width:100%;padding:12px;border:1px solid var(--app-border,#d9def0);border-radius:12px;background:var(--app-surface,#fff);color:var(--app-text,#202b52)}@media(max-width:600px){.community-access-tools .panel{padding:14px}.community-access-row form button{padding:9px 12px}.community-hero-actions .btn{white-space:normal;overflow-wrap:anywhere}}
/* Shared room surface: kept in the view as well so AJAX navigation gets these styles. */
.private-rooms header{position:relative;padding:clamp(22px,5vw,40px);border:1px solid color-mix(in srgb,var(--app-accent,#6555dd) 22%,#fff);border-radius:26px;background:linear-gradient(125deg,color-mix(in srgb,var(--app-accent,#6555dd) 9%,var(--app-surface,#fff)),var(--app-surface,#fff));box-shadow:0 16px 42px rgba(55,45,130,.08)}
.private-rooms header .eyebrow{font-size:12px;letter-spacing:.14em;color:var(--app-accent,#6555dd);font-weight:800}.private-rooms header h1{line-height:1.12;letter-spacing:-.035em}.private-rooms header p{margin:14px 0 0;max-width:600px;line-height:1.5}.private-rooms-create{display:grid;gap:8px}.private-rooms-create label{font-weight:700;color:var(--app-text,#202b52)}.private-rooms-card{background:var(--app-surface,#fff)!important;border-color:var(--app-border,#dce1f0)!important}.private-rooms button{appearance:none!important;border:0!important;background:var(--app-accent,#6555dd)!important;color:#fff!important;font:700 15px/1.25 system-ui,sans-serif!important;box-shadow:0 8px 20px color-mix(in srgb,var(--app-accent,#6555dd) 22%,transparent);transition:transform .15s,filter .15s}.private-rooms button:hover{filter:brightness(1.08);transform:translateY(-1px)}.private-rooms input,.private-rooms select{font:inherit!important;box-shadow:none!important}.private-rooms-tile{transition:transform .15s,border-color .15s}.private-rooms-tile:hover{transform:translateY(-2px);border-color:var(--app-accent,#6555dd)!important}.private-rooms-tile small{display:block}.private-rooms-tile>b{font-size:20px;color:var(--app-accent,#6555dd)}.private-rooms-side li{padding:9px 0;border-bottom:1px solid var(--app-border,#dce1f0)}.private-rooms-side li small{flex:0 0 auto}.private-rooms-messages article{padding:13px 15px;margin:12px 0;border:1px solid var(--app-border,#dce1f0);border-radius:16px;background:color-mix(in srgb,var(--app-accent,#6555dd) 4%,var(--app-surface,#fff))}.private-rooms-messages article>b{color:var(--app-accent,#6555dd)}.private-rooms-send{padding-top:14px;border-top:1px solid var(--app-border,#dce1f0)}.private-rooms-leave button{background:transparent!important;border:1px solid #d36c80!important;color:#b34560!important;box-shadow:none}.private-rooms .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:720px){.private-rooms header{padding:22px 18px;border-radius:20px}.private-rooms h1{font-size:clamp(26px,8vw,38px)}.private-rooms-create>div{display:grid;grid-template-columns:minmax(0,1fr)}.private-rooms-create input{width:100%}.private-rooms .private-rooms-create button,.private-rooms .private-rooms-send button{width:100%}.private-rooms-side li{flex-wrap:wrap}}
