.community-search-form{display:flex;align-items:center;gap:8px}
.community-search-form .community-search{flex:1;min-width:0}
.community-search-submit,.community-more,.gastronomy-retry{min-height:46px;padding:11px 15px;border:1px solid var(--wine);border-radius:10px;background:var(--wine);color:var(--paper);font-size:13px;font-weight:600}
.community-people-results{padding:0;margin:24px 0 0;list-style:none}
.community-person{width:100%;display:flex;align-items:center;gap:14px;min-height:88px;padding:17px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left}
.community-person-avatar{width:48px;height:48px;border:1px solid #dac6aa;border-radius:50%;display:grid;place-items:center;flex:none;font:24px Georgia,serif;color:var(--wine);background:var(--paper);overflow:hidden}
.community-person-avatar img{width:46px;height:46px;object-fit:contain}
.community-person-copy{display:grid;gap:5px;min-width:0;flex:1}
.community-person-copy strong{font:normal 22px/1.2 Georgia,serif;overflow-wrap:anywhere;color:var(--wine)}
.community-person-copy small{font-size:12px;color:#786b6d;overflow-wrap:anywhere}
.community-person-arrow{font-size:24px;color:var(--gold)}
.community-more{display:block;margin:22px auto 0;background:transparent;color:var(--wine)}


/* Perfil personal modular: identidad, carta y experiencias. */
.gastronomy-view{max-width:675px;margin:10px auto 40px;color:var(--ink)}
.gastronomy-back{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:12px;gap:10px;margin-bottom:8px;color:var(--wine)}
[data-gastronomy-hero]{position:relative}
.gastronomy-cover{height:154px;border-radius:18px 18px 4px 4px;background:#5b182e url('./profile-table.svg') right center/auto 100% no-repeat;overflow:hidden;color:#f6eddd}
.gastronomy-cover-copy{display:block;white-space:pre-line;font:italic 25px/1.12 Georgia,serif;letter-spacing:-.02em;padding:31px 24px;max-width:62%}
.gastronomy-identity{position:relative;display:flex;gap:18px;align-items:flex-start;min-width:0;margin:-34px 18px 0}
.gastronomy-identity .community-person-avatar{width:100px;height:100px;border-radius:26px;font-size:43px;border:4px solid var(--paper);outline:1px solid #b99a6440;outline-offset:0;background:#f6efe3;box-shadow:0 3px 9px #3415230a}
.gastronomy-identity img{width:94px;height:94px;object-fit:contain}
.gastronomy-identity-copy{min-width:0;flex:1;padding:42px 0 2px}
.gastronomy-identity h1{font:normal clamp(28px,6vw,38px)/1.08 Georgia,serif;letter-spacing:-.025em;color:var(--wine);margin:0;overflow-wrap:anywhere;text-wrap:balance}
.gastronomy-alias{font-size:11px;color:#786b6d;margin:6px 0 0;overflow-wrap:anywhere}
.gastronomy-privacy{display:flex;align-items:center;gap:6px;color:#786b6d;font-size:10px;line-height:1.5;margin:9px 0 0}
.gastronomy-privacy-dot{width:5px;height:5px;border:1px solid #9a7e53;border-radius:50%;flex:none}
.gastronomy-personal{margin:20px 18px 0}
.gastronomy-bio{font:normal 17px/1.5 Georgia,serif;color:#645257;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.gastronomy-owner-note{font-size:10px;letter-spacing:.025em;color:#786b6d;line-height:1.6;margin:14px 18px 0}
.gastronomy-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}
.gastronomy-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0 0;padding:18px 0 19px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:82px}
.gastronomy-counts div{display:flex;flex-direction:column-reverse;gap:7px;align-items:center;padding:0 8px;border-left:1px solid var(--line)}
.gastronomy-counts div:first-child{border-left:0}
.gastronomy-counts dt{font-size:10px;color:#786b6d;line-height:1.4}.gastronomy-counts dd{margin:0;font:29px/1 Georgia,serif;color:var(--wine);font-variant-numeric:tabular-nums}
.gastronomy-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:relative;border-bottom:1px solid var(--line);margin:13px 0 24px}
.gastronomy-tabs::after{content:"";position:absolute;bottom:-1px;left:0;width:25%;height:2px;background:var(--wine);transform:translateX(calc(var(--gastronomy-index,0)*100%));transition:transform 260ms cubic-bezier(.2,.7,.3,1)}
.gastronomy-tabs button{min-width:0;min-height:48px;padding:11px 1px;border:0;background:transparent;font-size:12px;color:#786b6d}
.gastronomy-tabs button[aria-selected="true"]{color:var(--wine);font-weight:650}
.gastronomy-module-heading{font:normal 22px/1.25 Georgia,serif;letter-spacing:-.015em;color:var(--wine);margin:0 0 15px}
.gastronomy-showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.gastronomy-showcase-grid:has(> :only-child){grid-template-columns:minmax(0,1fr)}
.gastronomy-showcase-tile{display:flex;flex-direction:column;align-items:flex-start;position:relative;min-width:0;min-height:178px;border:1px solid #d9c9b654;border-radius:12px;padding:17px;text-align:left;background:#f2ebdf;color:var(--wine);overflow:hidden}
.gastronomy-showcase-tile.want{background:#f3eded;border-color:#d5bcc94d}
.gastronomy-tile-label{position:relative;font-size:9px;line-height:1.5;letter-spacing:.06em;text-transform:uppercase;margin-bottom:21px;color:#75604f}
.gastronomy-showcase-tile strong{position:relative;font:normal 21px/1.15 Georgia,serif;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:14px}
.gastronomy-tile-mark{position:absolute;right:10px;top:25px;font:italic 72px/1 Georgia,serif;opacity:.045;pointer-events:none}
.gastronomy-tile-action{font-size:9px;line-height:1.4;margin-top:auto;color:#785d4c}
.gastronomy-activity-heading{margin:29px 0 14px}
.gastronomy-restaurant{padding:20px 0;border-bottom:1px solid var(--line)}
.gastronomy-restaurant-name{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;padding:3px 0;min-height:44px;border:0;background:transparent;color:var(--wine);text-align:left;font:normal 23px/1.22 Georgia,serif;letter-spacing:-.015em;overflow-wrap:anywhere}
.gastronomy-restaurant-title{min-width:0;flex:1;overflow-wrap:anywhere}
.gastronomy-open-label{font:9px/1.5 Arial,sans-serif;color:#8a7354;flex:none;width:59px;overflow-wrap:normal;word-break:normal;text-align:right}
.gastronomy-restaurant-name:disabled{opacity:1;color:#786b6d;cursor:default}
.gastronomy-experience{display:flex;flex-direction:column;position:relative;border:1px solid #d9c9b660;border-radius:12px;padding:21px 18px;margin-bottom:14px;background:#fffdf750}
.gastronomy-experience .gastronomy-visit-meta{order:-1;margin:0 0 11px}
.gastronomy-visit-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;color:#786b6d}
.gastronomy-rating{margin-left:auto;color:var(--wine);font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
.gastronomy-visit-note{font:normal 16px/1.65 Georgia,serif;margin:15px 0 0;padding-left:13px;border-left:1px solid #b99a6470;white-space:pre-wrap;overflow-wrap:anywhere;color:#66575b}
.gastronomy-visit-note.is-excerpt{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.gastronomy-note-toggle{align-self:flex-start;min-height:44px;padding:10px 0;margin:4px 0 -8px 14px;background:none;border:0;color:var(--wine);font-size:11px;text-decoration:underline;text-underline-offset:4px}
.gastronomy-common-total{font:normal 29px/1.25 Georgia,serif;color:var(--wine);margin:24px 0;overflow-wrap:anywhere}
.gastronomy-group-title{font-size:10px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:#8a7354;margin:26px 0 0;padding-bottom:12px;border-bottom:1px solid var(--line)}
.gastronomy-muted,[data-gastronomy-status]{font-size:13px;line-height:1.7;color:#786b6d}
[data-gastronomy-status]:empty{display:none}
.gastronomy-view .community-empty{padding:30px 12px;max-width:440px;margin:auto;text-align:center}
.gastronomy-view .community-empty h2{font:normal 27px/1.2 Georgia,serif;color:var(--wine);text-wrap:balance}
.gastronomy-view .community-empty p{font-size:13px;line-height:1.8;color:#786b6d;text-wrap:pretty}
[data-gastronomy-restricted]{border-top:1px solid var(--line);margin-top:24px!important}
.gastronomy-self-link{display:inline-flex;align-items:center;min-height:44px;padding:10px 0;margin:10px 0;color:var(--wine);font-size:13px;text-underline-offset:5px}
.gastronomy-view button:focus-visible,.gastronomy-view a:focus-visible{outline:2px solid var(--wine);outline-offset:4px;border-radius:3px}
@media(hover:hover){.gastronomy-showcase-tile:hover{border-color:#a88b5e}.gastronomy-restaurant-name:hover .gastronomy-open-label{text-decoration:underline;text-underline-offset:4px}}
@media(prefers-reduced-motion:no-preference){.gastronomy-view:not([hidden]){animation:community-enter 240ms ease-out}.gastronomy-showcase-tile{transition:border-color 180ms,transform 180ms}.gastronomy-showcase-tile:active{transform:scale(.985)}}
@media(prefers-reduced-motion:reduce){.gastronomy-view,.gastronomy-view *,.gastronomy-tabs::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:370px){.gastronomy-tabs button{font-size:11px}.community-search-submit{padding:11px}.gastronomy-cover{height:138px}.gastronomy-cover-copy{padding:28px 18px;font-size:22px}.gastronomy-identity{gap:13px;margin-left:13px;margin-right:13px}.gastronomy-identity .community-person-avatar{width:82px;height:82px;border-radius:22px}.gastronomy-identity img{width:76px;height:76px}.gastronomy-identity-copy{padding-top:42px}.gastronomy-identity h1{font-size:27px}.gastronomy-personal,.gastronomy-owner-note{margin-left:13px;margin-right:13px}.gastronomy-showcase-tile{padding:14px;min-height:170px}.gastronomy-showcase-tile strong{font-size:19px}.gastronomy-restaurant-name{font-size:21px}.gastronomy-experience{padding:18px 14px}}

.gastronomy-identity.is-long-name{display:block}.gastronomy-identity.is-long-name .gastronomy-identity-copy{padding:15px 0 0}.gastronomy-identity.is-long-name h1{font-size:clamp(27px,6vw,34px)}

/* Colecciones del perfil: cartas gastronómicas, con información real disponible. */
.gastronomy-collection-intro{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin:4px 0 18px}
.gastronomy-collection-intro .gastronomy-module-heading{margin:0;min-width:0}
.gastronomy-collection-intro p{font-size:10px;line-height:1.5;color:#786b6d;margin:0;text-align:right;max-width:110px;flex:none}
.gastronomy-collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.gastronomy-collection-card{display:flex;flex-direction:column;position:relative;min-width:0;min-height:218px;padding:17px;border:1px solid #dacdbd80;border-radius:13px;background:#f4ede1;overflow:hidden}
.gastronomy-collection-card.has-wish{background:#f4eeee;border-color:#d8c4cd70}
.gastronomy-collection-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 20px}
.gastronomy-collection-state{font-size:9px;letter-spacing:.065em;text-transform:uppercase;color:#85694d;line-height:1.5}
.has-wish .gastronomy-collection-state{color:#89566a}
.gastronomy-collection-number{font:italic 23px/1 Georgia,serif;color:#9b8262;opacity:.55}
.gastronomy-collection-card .gastronomy-restaurant-name{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;flex:1;gap:17px;font-size:23px;line-height:1.16;padding:0}
.gastronomy-collection-card .gastronomy-restaurant-title{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;flex:none}
.gastronomy-collection-card .gastronomy-open-label{width:auto;text-align:left;font-size:10px;color:#775a43;padding:0 0 14px}
.gastronomy-collection-detail{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding-top:12px;border-top:1px solid #b99a6430;font-size:9px;line-height:1.5;color:#786b6d;margin-top:8px;min-height:27px}
.gastronomy-collection-score{font-size:12px;color:var(--wine);font-variant-numeric:tabular-nums}
@media(hover:hover){.gastronomy-collection-card:has(.gastronomy-restaurant-name:hover){border-color:#a88b5e}}
@media(max-width:370px){.gastronomy-collection-grid{gap:10px}.gastronomy-collection-card{padding:14px;min-height:205px}.gastronomy-collection-card .gastronomy-restaurant-name{font-size:20px}.gastronomy-collection-state{font-size:8px}.gastronomy-collection-intro{align-items:flex-start}.gastronomy-collection-intro .gastronomy-module-heading{font-size:21px}.gastronomy-collection-intro p{max-width:92px;font-size:9px}}

.gastronomy-collection-grid:has(> :only-child){grid-template-columns:minmax(0,1fr)}

/* Seguimiento: cifras reales separadas de la historia gastronómica. */
.gastronomy-social{margin:18px 18px 0;min-width:0}
.gastronomy-social-summary{display:flex;align-items:center;flex-wrap:wrap;gap:12px 26px}
.gastronomy-social-stat{display:inline-flex;align-items:baseline;gap:7px;min-height:44px;padding:0;border:0;background:none;color:var(--wine)}
.gastronomy-social-stat strong{font:normal 22px/1 Georgia,serif;font-variant-numeric:tabular-nums}.gastronomy-social-stat span,.gastronomy-social-hidden{font-size:11px;color:#786b6d}
.gastronomy-social-tools{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 18px}
.gastronomy-social-button{min-height:44px;border:0;background:transparent;padding:8px 0;color:var(--wine);font-size:11px;text-align:left;text-underline-offset:4px;text-decoration:underline}
.gastronomy-social-visibility{display:flex;align-items:center;gap:10px;min-height:44px;font-size:12px;color:var(--wine);cursor:pointer}
.gastronomy-social-visibility input{width:18px;height:18px;accent-color:var(--wine);flex:none}
.gastronomy-social-hint,.gastronomy-social-status,.gastronomy-social-empty{font-size:11px;line-height:1.7;color:#786b6d;margin:4px 0;overflow-wrap:anywhere}
.gastronomy-social-status:empty{display:none}.gastronomy-social-settings{min-width:0}.gastronomy-social-settings summary{display:flex;align-items:center;min-height:44px;cursor:pointer;color:#786b6d;font-size:11px;text-decoration:underline;text-underline-offset:4px}
.gastronomy-social-list{margin:20px 0 0;padding-top:20px;border-top:1px solid var(--line)}
.gastronomy-social-member{display:flex;align-items:center;flex-wrap:wrap;gap:4px 14px;padding:12px 0;border-bottom:1px solid var(--line)}
.gastronomy-social-person{display:flex;align-items:center;gap:12px;min-width:0;flex:1;min-height:48px;padding:0;border:0;background:none;color:var(--wine);text-align:left}
.gastronomy-social-person>span:last-child{display:grid;gap:4px;min-width:0}.gastronomy-social-person strong{font:normal 19px/1.2 Georgia,serif;overflow-wrap:anywhere}.gastronomy-social-person small{font-size:10px;color:#786b6d;overflow-wrap:anywhere}
.gastronomy-social-member-actions{display:flex;gap:18px}.gastronomy-social-button:disabled,.gastronomy-social-stat:disabled{opacity:.5;cursor:wait}
@media(max-width:370px){.gastronomy-social{margin-left:13px;margin-right:13px}.gastronomy-social-summary{gap:10px 19px}.gastronomy-social-member-actions{width:100%;justify-content:flex-end}}

.gastronomy-follow-action{max-width:100%;margin:5px 0;border:1px solid var(--wine);border-radius:9px;background:var(--wine);color:var(--paper);padding:11px 16px;font-size:12px;line-height:1.5;font-weight:600;text-decoration:none}
.gastronomy-follow-action.is-linked{background:transparent;color:var(--wine);font-weight:400}
@media(max-width:370px){.gastronomy-social-member>.gastronomy-social-button{margin-left:60px;flex-basis:calc(100% - 60px)}}
