.hub-tabs{display:flex;gap:8px;border-bottom:1px solid #cdbec8;padding:18px 0;flex-wrap:wrap}.hub-tabs button{font:inherit;padding:14px 22px;border:1px solid #cdbec8;border-radius:30px;background:transparent;color:#3b1c32;cursor:pointer}.hub-tabs button[aria-selected=true]{background:#3b1c32;color:#f5efe6}.hub-tab-panel{padding:30px 0 60px}.lounge-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:26px}.lounge-rooms{background:#e4ebe1;border-radius:18px;padding:25px;align-self:start}.lounge-rooms button{display:block;width:100%;text-align:left;margin:8px 0;padding:14px;font:inherit;border:1px solid #bbcab9;border-radius:10px;background:transparent;color:#3b1c32;cursor:pointer}.lounge-rooms button.is-active{background:#3b1c32;color:#f5efe6;border-color:#3b1c32}.lounge-rooms a{font-size:13px}.lounge-conversation{background:white;border:1px solid #ddcfda;border-radius:20px;overflow:hidden;padding:30px}.lounge-conversation header{border-bottom:1px solid #e9e0e6;padding-bottom:14px}.lounge-conversation h2{font-size:34px;margin:8px 0}.chat-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:18px 0;font-size:13px}.chat-tools input,.chat-tools button{font:inherit;background:#f5efe6;border:1px solid #cebfca;padding:9px;border-radius:8px;color:#3b1c32}.hub-messages{height:390px;overflow:auto;overscroll-behavior:contain;padding-right:10px}.chat-empty{padding:75px 35px;text-align:center;line-height:1.9;color:#695661;background:#faf7f3;border-radius:12px}.chat-message{background:#f6f1ed;padding:18px;margin:12px 0;border-radius:12px;border:1px solid #e7dce3}.chat-message.founder-message{background:#eef2ea;border-left:4px solid #9db8a0}.chat-message-meta{display:flex;justify-content:space-between;gap:12px;font-size:13px}.chat-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0 0}.chat-remove{border:0;background:transparent;text-decoration:underline;font:inherit;font-size:12px;color:#6c4660;padding:10px 0 0;cursor:pointer}#chat-composer{border-top:1px solid #e7dce3;margin-top:20px;padding-top:18px}#chat-composer label{display:block;font-size:14px;margin-bottom:7px}#chat-composer textarea{box-sizing:border-box;width:100%;font:inherit;padding:14px;border:1px solid #bcabb7;border-radius:10px;resize:vertical}#chat-composer button{background:#3b1c32;color:#f5efe6;padding:13px 22px;border:0;font:inherit;border-radius:30px;margin-top:12px;cursor:pointer}.hub-event-month{padding:20px 0 45px}.hub-event-month h2{margin-top:8px}.hub-event-month .event-grid{margin-top:25px}.hub-event-month time{display:block;font-size:14px;margin:15px 0}.hub-event-month .event-info p{white-space:pre-wrap;overflow-wrap:anywhere}.hub-calendar-poster{display:block;max-width:520px;margin:25px auto}.hub-calendar-poster img{width:100%;border-radius:12px}.hub-owner-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:25px}.hub-owner-section{padding-top:55px;padding-bottom:35px;border-top:1px solid #cfbfc9}.hub-owner-section h2{font-size:38px}.hub-owner-section .library-panel h3{font-size:26px}.hub-owner-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.hub-owner-links a{border:1px solid #bbaab6;border-radius:30px;padding:10px 16px;font-size:14px;text-decoration:none}.hub-flyer-preview{display:block;max-width:220px;max-height:300px;object-fit:contain;margin-top:15px}.hub-public-controls{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:28px}.hub-public-controls label{font-size:14px}.hub-public-controls select{display:block;padding:12px;max-width:100%;font:inherit;border:1px solid #bdaab7;background:white;border-radius:8px}.hub-room-summary{font-size:14px;border-top:1px solid #e4d9e0;padding:15px 0}.hub-storage{background:#e4ebe1;padding:20px;border-radius:12px;margin:20px 0}.hub-storage p{font-size:14px}.hub-owner-section :disabled,#chat-composer :disabled{opacity:.6;cursor:wait}@media(max-width:800px){.lounge-layout,.hub-owner-grid{grid-template-columns:1fr}.lounge-rooms{padding:18px}#hub-rooms{display:flex;gap:8px;flex-wrap:wrap}.lounge-rooms button{width:auto;margin:0}.lounge-rooms .library-note{margin:14px 0}.lounge-conversation{padding:20px}.hub-tabs button{font-size:14px;padding:12px 15px}.lounge-conversation h2{font-size:28px}.hub-messages{height:340px}.chat-message-meta{flex-direction:column;gap:4px}.hub-owner-section h2{font-size:30px}}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b97915;outline-offset:3px}
#member-welcome{font-size:clamp(24px,3vw,36px);line-height:1.2;margin:0;max-width:80%}.hub-signed-in .library-hero{padding:30px 0}.hub-signed-in .library-hero h1{font-size:clamp(30px,4vw,48px);line-height:1.1;margin:12px 0 18px}.hub-signed-in .library-hero p{margin-bottom:0}.hub-signed-in .library-tools{gap:18px}.hub-signed-in #member-logout{white-space:nowrap;font-size:14px;margin-top:0}
#room-members-panel{border-top:1px solid #e4d9e0;margin-top:24px;padding-top:20px}#room-members-panel h4{font-size:20px}.room-member-list{max-height:330px;overflow:auto;border:1px solid #ded1db;border-radius:10px;padding:6px 14px}.library-panel .room-member-item{display:flex;gap:12px;align-items:flex-start;border-bottom:1px solid #ece3e8;margin:0;padding:12px 0;cursor:pointer}.room-member-item:last-child{border-bottom:0}.room-member-item input{margin-top:6px;flex:none}.room-member-item span{min-width:0}.room-member-item small{display:block;font-size:12px;overflow-wrap:anywhere;font-weight:400;color:#66565f}
.hub-update,.hub-report{padding:20px;border:1px solid #ded1db;border-radius:12px;background:white;margin:14px 0}.hub-update p,.hub-report p{white-space:pre-wrap;overflow-wrap:anywhere}.hub-update button,.hub-report button{display:block;background:#3b1c32;color:white;border:0;border-radius:24px;padding:10px 16px;margin-top:12px;font:inherit;cursor:pointer}

.loyalty-card{max-width:480px;min-height:260px;padding:28px;border-radius:22px;background:linear-gradient(135deg,#3b1c32,#513449);color:#f5efe6;box-shadow:0 12px 28px #3b1c3229}.loyalty-card h3{color:#fff;font-size:1.8rem;margin:14px 0}.loyalty-brand{letter-spacing:.12em;font-size:.85rem}.loyalty-brand strong{font:italic 2rem Georgia,serif;letter-spacing:0;color:#edb63e}.loyalty-card-label{letter-spacing:.18em;font-size:.75rem}.loyalty-active{display:inline-block;padding:6px 14px;border-radius:20px;background:#9db8a0;color:#203623;font-weight:bold}.loyalty-card p{margin:10px 0}

.loyalty-card{box-sizing:border-box;width:min(100%,520px);min-height:0;aspect-ratio:1.586;padding:clamp(20px,5vw,34px);position:relative;overflow:hidden;border:1px solid #ddbf70;background:linear-gradient(135deg,#25101f,#3b1c32 60%,#60344d);display:flex;flex-direction:column;justify-content:space-between}.loyalty-card[hidden]{display:none}.loyalty-card::after{content:"";position:absolute;right:-75px;top:-90px;width:230px;height:470px;border:3px solid #edb63e;border-radius:50%;opacity:.65;transform:rotate(30deg);pointer-events:none}.loyalty-card p,.loyalty-card .loyalty-brand,.loyalty-card #loyalty-checked,.loyalty-card .loyalty-card-label{color:#fff!important;opacity:1}.loyalty-card h3{color:#fff!important;margin:5px 0;font-size:clamp(1.25rem,4vw,1.8rem)}.loyalty-card .loyalty-active{color:#14271a!important;background:#c4dfc8;align-self:flex-start}.loyalty-card .loyalty-brand strong{color:#ffd575!important}.loyalty-card p{margin:3px 0}.loyalty-card #loyalty-checked{font-size:.78rem}.loyalty-card-label{color:#ffdf95!important}.community-resource-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border:1px solid #d9c7cf;border-radius:12px;margin:10px 0;background:#fff}.community-resource-row button{flex-shrink:0}

/* Approved card artwork with live, readable member details. */
#loyalty-card.loyalty-card{width:min(100%,640px);max-width:640px;min-height:0;height:auto;aspect-ratio:1577 / 997;padding:0;display:block;position:relative;background:#3b1c32 url('/assets/member-card-art.png') center / 100% 100% no-repeat;border:0;border-radius:clamp(14px,3vw,30px);overflow:hidden;box-shadow:0 10px 28px #3b1c3226;container-type:inline-size;}
#loyalty-card[hidden]{display:none!important}
#loyalty-card::after{display:none}
#loyalty-card #loyalty-name{position:absolute;left:7%;top:71.5%;width:67%;margin:0;padding:0;font-family:Georgia,'Times New Roman',serif!important;font-weight:normal!important;font-size:clamp(15px,4.1cqw,27px)!important;line-height:1.15!important;letter-spacing:.04em;color:#fff1b5!important;text-shadow:0 1px 2px #000;overflow-wrap:anywhere;}
#loyalty-card #loyalty-status{position:absolute;left:11.5%;top:85.5%;width:58%;margin:0;padding:0;background:transparent!important;border-radius:0;font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(11px,2.8cqw,18px)!important;line-height:1.2!important;letter-spacing:.15em;color:#fff8e5!important;font-weight:normal!important;}
.loyalty-verification{font-size:.9rem;color:#3b1c32!important;margin:14px 0 8px}

.session-important-note{background:#fff5d7;border-left:5px solid #b58726;padding:18px;margin:18px 0;color:#3b1c32}.session-important-note p{white-space:pre-wrap;margin-bottom:0;font-weight:700;color:#3b1c32}
