/* Fase 4: utiliza los tokens aprobados de Fase 1. */
.header-menu-toggle{display:grid!important;place-items:center;width:40px;height:40px;flex:0 0 40px;border:1px solid var(--hc-border);border-radius:12px;background:var(--hc-surface);color:var(--hc-text);cursor:pointer}
.header-mobile-menu{position:fixed;z-index:500;inset:0;display:grid;justify-items:end;align-items:start;padding:76px 16px 16px;background:rgba(0,0,0,.4)}
.header-mobile-menu[hidden]{display:none!important}.header-mobile-menu-card{width:min(350px,100%);max-height:calc(100dvh - 100px);overflow:auto;background:var(--hc-surface);border:1px solid var(--hc-border);border-radius:18px;box-shadow:var(--shadow-soft)}
.header-menu-open{overflow:hidden}.menu-logout{border-top:1px solid var(--hc-border);padding:12px}.menu-logout button{width:100%;padding:12px;border:0;border-radius:10px;background:var(--hc-surface-2);color:var(--hc-text);text-align:left;font:inherit;cursor:pointer}
.visitor-session-actions{display:flex;justify-content:flex-end;gap:8px;padding:0 16px 9px;max-width:1440px;margin:auto}.visitor-session-actions .btn{white-space:nowrap;flex-shrink:0}
.mobile-nav{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.community-directory-card{grid-template-columns:64px minmax(0,1fr)!important;min-width:0}.community-directory-card>div{min-width:0}.community-directory-card h2{overflow-wrap:anywhere;word-break:normal}
.community-card-actions{grid-column:1/-1;min-width:0;display:flex;flex-wrap:wrap;gap:8px}.community-card-actions>.btn,.community-card-actions button{white-space:nowrap;flex-shrink:0;max-width:100%;min-width:min(160px,100%)}
.community-directory-card>.btn{grid-column:1/-1;justify-self:start;white-space:nowrap}
.community-search-row{display:flex;gap:8px;align-items:center}.community-search-row input{flex:1;min-width:0;height:42px;background:var(--hc-surface-2);border:1px solid var(--hc-border);border-radius:10px;padding:10px;color:var(--hc-text)}.community-search-row button{white-space:nowrap;flex-shrink:0}
.community-filter-panel{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px;margin-top:8px;border:1px solid var(--hc-border);border-radius:12px;background:var(--hc-surface)}.community-filter-panel[hidden]{display:none}
.community-compact-filters{margin:12px 0 20px}.community-directory-heading .btn{white-space:nowrap;flex-shrink:0}
.offer-specific{border:1px solid var(--hc-border);padding:16px;border-radius:14px;margin:14px 0;background:var(--hc-surface)}.offer-specific summary{cursor:pointer;font-weight:650;margin-bottom:12px}.offer-specific [hidden]{display:none!important}
.offer-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.offer-fields label{min-width:0}.offer-fields input,.offer-fields textarea,.offer-fields select{width:100%;min-width:0}
.business-invite{display:flex;gap:12px;align-items:center;background:var(--hc-surface-2);border:1px solid var(--hc-border);border-radius:14px;padding:14px;margin:18px 0;font-size:14px}.business-invite a{color:var(--hc-brand);font-weight:650}
.offer-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.offer-details div{padding:10px;background:var(--hc-surface-2);border-radius:9px;min-width:0;overflow-wrap:anywhere}.offer-details dt{font-size:12px;color:var(--hc-text-2)}.offer-details dd{margin:4px 0;color:var(--hc-text)}
.profile-tabs,.offer-type-tabs,.inbox-filters{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.profile-tabs a,.offer-type-tabs a,.inbox-filters a{padding:8px 12px;border:1px solid var(--hc-border);border-radius:10px;color:var(--hc-text);background:var(--hc-surface)}.profile-tabs a.active,.inbox-filters a.active{background:var(--hc-brand);color:white}
.profile-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.profile-gallery img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}
.person-cover{height:120px;background:var(--hc-surface-2);border:1px solid var(--hc-border);border-radius:16px;overflow:hidden}.person-cover img{width:100%;height:100%;object-fit:cover}[data-cover-preview]{width:100%;max-height:130px;object-fit:cover;border-radius:12px}.offer-repeat-row{padding:12px;margin:10px 0;border:1px solid var(--hc-border);border-radius:12px}.offer-card-summary{font-size:12px;color:var(--hc-text-2);overflow-wrap:anywhere}
@media(max-width:767px){.person-cover{height:65px}.person-header{gap:12px!important;padding:14px 0!important}.person-header h1{font-size:23px!important}.person-header>img{width:64px!important;height:64px!important}.post-card video{max-height:220px;object-fit:contain}.business-profile-cover{height:90px!important}}
.emoji-picker{position:fixed;z-index:550;width:min(360px,calc(100vw - 20px));max-height:min(420px,60dvh);overflow:auto;padding:12px;border:1px solid var(--hc-border);border-radius:16px;background:var(--hc-surface);color:var(--hc-text);box-shadow:var(--shadow-soft)}.emoji-picker header{display:flex;justify-content:space-between;align-items:center}.emoji-picker input{width:100%;padding:9px;border:1px solid var(--hc-border);background:var(--hc-surface-2);color:var(--hc-text);border-radius:8px}.emoji-picker nav{display:flex;gap:5px;flex-wrap:wrap;margin:8px 0}.emoji-picker button{border:0;border-radius:8px;background:var(--hc-surface-2);color:var(--hc-text);cursor:pointer;padding:7px}.emoji-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.emoji-grid button{font-size:24px;min-height:40px}.emoji-open{flex:0 0 36px;width:36px;height:36px;border:0;border-radius:10px;background:var(--hc-surface-2);color:var(--hc-text);font-size:22px;cursor:pointer}
.message-tools{display:flex;gap:7px;flex-wrap:wrap;font-size:12px}.message-tools button{border:0;background:transparent;color:inherit;cursor:pointer;padding:3px}.message-reply{border-left:3px solid var(--hc-brand);padding:7px;margin-bottom:7px;font-size:12px;background:var(--hc-surface-2);color:var(--hc-text);border-radius:7px;overflow-wrap:anywhere}.message-reactions{display:flex;gap:5px;flex-wrap:wrap}.message-reactions button{border:1px solid var(--hc-border);border-radius:12px;background:var(--hc-surface-2);color:var(--hc-text);cursor:pointer;padding:4px 8px}.message-reactions button[aria-pressed=true]{border-color:var(--hc-brand)}
.chat-compose-row{grid-template-columns:auto auto minmax(0,1fr) auto!important}.phase3-chat .community-composer{flex-wrap:wrap}.phase3-chat .community-composer textarea{min-width:100px;flex:1}.chat-reply-preview{padding:7px 12px;font-size:12px;background:var(--hc-surface-2);color:var(--hc-text)}
@media(max-width:767px){.desktop-actions{display:none!important}.mobile-header-actions{display:flex!important;align-items:center;gap:7px}.app-header .topbar-inner{grid-template-columns:minmax(0,1fr) auto!important}.community-directory-card{grid-template-columns:50px minmax(0,1fr)!important}.offer-fields{grid-template-columns:1fr}.community-directory-heading{flex-direction:row!important;flex-wrap:wrap}.community-directory-heading h1{font-size:25px}.community-directory-heading .btn{font-size:13px;padding:10px}.community-filter-panel{grid-template-columns:1fr}.visitor-session-actions{justify-content:center}.profile-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.community-card-actions{justify-content:stretch}.community-card-actions>.btn,.community-card-actions>form{flex:1}.community-card-actions button{width:100%}}
@media(min-width:768px){.mobile-header-actions{display:none!important}.desktop-actions{display:flex!important;align-items:center;gap:8px}}
@media(prefers-reduced-motion:reduce){.emoji-picker,.header-mobile-menu{animation:none}}
