*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{font-family:DM Sans,system-ui,sans-serif;font-size:16px;line-height:1.55;font-weight:400;color:var(--ink, #1c0e02);background-color:var(--backdrop, #FDFBF2);color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--backdrop, #FDFBF2)}a{font-weight:500;text-decoration:none;color:inherit}button{font-family:DM Sans,system-ui,sans-serif;cursor:pointer}img{display:block;max-width:100%}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:root{--font-display: "Fraunces", "Playfair Display", Georgia, serif;--font-body: "DM Sans", system-ui, -apple-system, sans-serif;--paper: #F2EBDA;--paper-deep: #E8DEC6;--paper-veil: #FBF6EA;--ink: #1c0e02;--ink-fixed: #1c0e02;--ink-2: #3a1f08;--ink-3: #5a3a1d;--ink-4: #7a5b3a;--rule: rgba(28, 14, 2, .08);--rule-strong: rgba(28, 14, 2, .16);--surface: #FFFFFF;--backdrop: #FDFBF2;--hover-warm: #fff2d6;--gold: #C68421;--gold-ink: #8A5A0E;--gold-soft: #E0A93D;--gold-leaf: #F2C966;--coral: #B6371A;--teal: #0b5454;--teal-deep: #073f3f;--hd-1: #0c0500;--hd-2: #2a1304;--hd-3: #4a2208;--r-xs: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 20px;--r-xl: 28px;--r-pill: 999px;--sh-card: 0 1px 0 rgba(28,14,2,.04), 0 6px 24px -8px rgba(28,14,2,.12);--sh-card-hover: 0 1px 0 rgba(28,14,2,.04), 0 24px 48px -16px rgba(28,14,2,.28);--sh-soft: 0 8px 32px -12px rgba(28,14,2,.18);--sh-pop: 0 12px 40px -8px rgba(28,14,2,.28), 0 2px 6px rgba(28,14,2,.1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.4, .64, 1);--cat-musica-bg: #ECE6FB;--cat-musica-fg: #4A1FB8;--cat-teatro-bg: #FBE2DE;--cat-teatro-fg: #98230C;--cat-cinema-bg: #DCEAFB;--cat-cinema-fg: #133E96;--cat-danca-bg: #FCE1EA;--cat-danca-fg: #97244F;--cat-cursos-bg: #FBE3CC;--cat-cursos-fg: #8A3408;--cat-exposicao-bg: #D8F0E6;--cat-exposicao-fg: #0a5a44;--cat-feira-bg: #E7EFCF;--cat-feira-fg: #4C5A0E;--cat-literatura-bg:#FBEAB7;--cat-literatura-fg:#7C4E07}:root[data-theme=dark]{--paper: #17110a;--paper-deep: #221a10;--paper-veil: #2a2016;--ink: #F3EAD8;--ink-2: #E7D9C1;--ink-3: #C6B393;--ink-4: #9d8a69;--rule: rgba(243, 234, 216, .1);--rule-strong: rgba(243, 234, 216, .22);--surface: #221a10;--backdrop: #120d07;--hover-warm: rgba(231, 178, 78, .16);--gold: #E7B24E;--gold-ink: #F2C966;--coral: #E4785E;--teal: #3fb0a0;--teal-deep: #56c2b2;--sh-card: 0 1px 0 rgba(0,0,0,.25), 0 6px 24px -8px rgba(0,0,0,.55);--sh-card-hover: 0 1px 0 rgba(0,0,0,.25), 0 24px 48px -16px rgba(0,0,0,.65);--sh-soft: 0 8px 32px -12px rgba(0,0,0,.55);--sh-pop: 0 12px 40px -8px rgba(0,0,0,.6), 0 2px 6px rgba(0,0,0,.35);--cat-musica-bg: #2b2450;--cat-musica-fg: #C9B6FF;--cat-teatro-bg: #3d211b;--cat-teatro-fg: #F3A38C;--cat-cinema-bg: #1c2c47;--cat-cinema-fg: #A9C7F5;--cat-danca-bg: #3a2030;--cat-danca-fg: #F0A0C0;--cat-cursos-bg: #3a2814;--cat-cursos-fg: #F0B472;--cat-exposicao-bg: #13342a;--cat-exposicao-fg: #86D8BB;--cat-feira-bg: #2b3316;--cat-feira-fg: #C3D98A;--cat-literatura-bg:#352a10;--cat-literatura-fg:#F0D486}body{background:var(--backdrop)}:focus-visible{outline:2.5px solid var(--gold);outline-offset:3px;border-radius:4px}.app{max-width:1280px;margin:0 auto;position:relative}.skip-events{position:absolute;left:1rem;top:-80px;z-index:500;padding:.75rem 1rem;background:var(--surface);color:var(--ink)}.skip-events:focus{top:.5rem}.site-header{display:flex;align-items:center;gap:1.5rem;padding:1.6rem 2.75rem;background:#33200f;color:#fff4dc;border-bottom:4px solid #c99537}.site-header h1{flex-shrink:0;font:700 clamp(1.75rem,3vw,2.15rem)/1.1 var(--font-display);letter-spacing:-.04em}.site-header h1 a{display:inline-flex;gap:.18em;font-weight:inherit}.site-header h1 span{color:#f0ca76;font-style:italic}.header-location{color:#ddc9a9;font-size:.75rem;line-height:1.5}.header-location span{display:block}.header-location span:first-letter{text-transform:uppercase}.header-location .header-freshness{opacity:.75}.header-tools{display:flex;align-items:center;gap:1rem;margin-left:auto}.header-tool{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:0;border:0;background:transparent;color:inherit;font:500 .8rem/1.2 var(--font-body);white-space:nowrap}.header-tool svg{width:20px;height:20px;flex-shrink:0}.header-tool:hover,.header-tool[aria-pressed=true]{color:#f0ca76}.header-tool[aria-pressed=true]{text-decoration:underline;text-underline-offset:5px}.header-saved-count{display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;background:#f0ca76;color:#33200f;border-radius:99px;font-size:.65rem}.agenda-discovery{padding:0 2.75rem}.category-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;padding-top:1.5rem}.category-link{min-width:0;min-height:75px;padding:.5rem 0 .8rem;border:0;border-bottom:2px solid var(--rule-strong);background:transparent;color:var(--ink-2);text-align:left}.category-link:hover{border-bottom-color:var(--gold)}.category-link[aria-pressed=true]{color:var(--gold-ink);border-bottom-color:currentColor;box-shadow:inset 0 -2px currentColor}.category-link-title{display:block;font:600 1.5rem/1.2 var(--font-display)}.category-link-description{display:block;margin-top:.35rem;color:var(--ink-4);font:400 .75rem/1.4 var(--font-body)}.category-secondary{display:flex;flex-wrap:wrap;align-items:center;gap:0 1.5rem;padding:.4rem 0 .7rem}.category-all{min-height:44px;border:0;padding:0;background:transparent;color:var(--ink-2);font:500 .8rem/1.3 var(--font-body)}.category-all[aria-pressed=true]{font-weight:700;text-decoration:underline;text-underline-offset:5px}.category-current{font-size:.75rem;font-weight:600;color:var(--gold-ink)}.discovery-filters{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.8rem 0;border-block:1px solid var(--rule-strong)}.discovery-dates{display:flex;align-items:center;gap:.65rem}.agenda-calendar-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:44px;min-height:44px;border:0;background:transparent;color:var(--ink-2);font:400 .75rem/1.3 var(--font-body)}.agenda-calendar-button svg{width:20px;height:20px}.agenda-calendar-button[aria-expanded=true],.agenda-calendar-button[aria-pressed=true]{color:var(--gold-ink);background:var(--paper-deep);border-radius:var(--r-xs)}.filters-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.4rem 0 1.1rem}@media(min-width:1001px){.agenda-discovery{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:1.5rem}.category-nav,.filters-bar{grid-column:1 / -1}.category-secondary{flex-wrap:nowrap;padding:0}.discovery-filters{justify-content:flex-end;gap:.75rem;border:0}.discovery-filters .search-field{flex:0 1 320px;min-width:0}.discovery-dates{flex-shrink:0}.filters-bar{border-top:1px solid var(--rule-strong)}}@media(min-width:641px)and (max-width:1000px){.site-header{padding-inline:1.5rem;gap:1rem}.header-location{font-size:.65rem}.header-tools{gap:.65rem}.header-tool{font-size:.7rem}.agenda-discovery{padding-inline:1.5rem}.category-link-title{font-size:1.25rem}.discovery-filters{flex-wrap:wrap;gap:.75rem}.discovery-filters .search-field{width:100%}.discovery-dates{width:100%;justify-content:space-between}}.content{padding:0 1.5rem 3.5rem}.section{margin-bottom:3.5rem}.section-header{display:flex;align-items:baseline;gap:.9rem;margin-bottom:1.6rem;position:relative}.section-title{font-family:var(--font-display);font-size:clamp(1.65rem,3vw,2.25rem);font-weight:700;font-variation-settings:"opsz" 80,"SOFT" 50,"wght" 700;color:var(--ink);line-height:1;letter-spacing:-.018em}.section-header:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--rule-strong),transparent);margin-bottom:.45rem}.section-count{font-size:.78rem;font-weight:600;color:var(--ink-4);letter-spacing:.08em;text-transform:uppercase}.section-hoje{position:relative;background:linear-gradient(180deg,#fff8e6d9,#fbf6ea66);border-radius:var(--r-lg);padding:clamp(1.25rem,2.5vw,2rem);border:1px solid rgba(198,132,33,.25);box-shadow:0 6px 18px -6px #1c0e0224,0 2px 6px -2px #1c0e020f;margin-bottom:3rem;overflow:hidden}.section-hoje:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,transparent,var(--gold),transparent);opacity:.7}.section-hoje .section-title{color:var(--ink-2)}.section-hoje .section-title:after{content:"";display:inline-block;width:8px;height:8px;background:var(--gold);border-radius:50%;margin-left:.6rem;vertical-align:middle;box-shadow:0 0 0 4px #c6842126;animation:pulseDot 2.4s ease-in-out infinite}@keyframes pulseDot{0%,to{box-shadow:0 0 0 4px #c6842126}50%{box-shadow:0 0 0 7px #c684210d}}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,24rem),1fr));gap:1rem 1.25rem}@keyframes cardIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.card{background:var(--surface);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--sh-card);--thumb-w: 140px;display:grid;grid-template-columns:var(--thumb-w) minmax(0,1fr);position:relative;transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out);animation:cardIn .5s var(--ease-out) both;border:1px solid rgba(28,14,2,.14)}.card:nth-child(1){animation-delay:.04s}.card:nth-child(2){animation-delay:.08s}.card:nth-child(3){animation-delay:.12s}.card:nth-child(4){animation-delay:.16s}.card:nth-child(5){animation-delay:.2s}.card:nth-child(6){animation-delay:.24s}.card:nth-child(7){animation-delay:.28s}.card:nth-child(8){animation-delay:.32s}.card:nth-child(9){animation-delay:.36s}.card:nth-child(10){animation-delay:.4s}.card:not(.card--expanded):hover{transform:translateY(-3px);box-shadow:var(--sh-card-hover)}.card{--card-accent: var(--gold)}.card--música{--card-accent: var(--cat-musica-fg)}.card--teatro{--card-accent: var(--cat-teatro-fg)}.card--cinema{--card-accent: var(--cat-cinema-fg)}.card--dança{--card-accent: var(--cat-danca-fg)}.card--cursos{--card-accent: var(--cat-cursos-fg)}.card--exposição{--card-accent: var(--cat-exposicao-fg)}.card--feira{--card-accent: var(--cat-feira-fg)}.card--literatura{--card-accent: var(--cat-literatura-fg)}.card-body:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--card-accent);opacity:.9}.card-thumb{position:relative;min-height:calc(var(--thumb-w) * 1.25);background:var(--paper-deep)}.card-thumb-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}.card-thumb .fav-btn--card{top:6px;right:6px;padding:6px}.card-summary{display:flex;flex-direction:column;gap:.3rem;min-width:0;padding:.85rem 1rem .9rem}.card-when{display:flex;flex-wrap:wrap;gap:0 .5rem;font:700 .78rem/1.35 var(--font-body);font-variant-numeric:tabular-nums;color:var(--card-accent)}.card-when-more{font-weight:600;color:var(--ink-3)}.card-where{font-size:.8rem;line-height:1.4;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-credit{font-size:.72rem;line-height:1.3;color:var(--ink-4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:auto;padding-top:.3rem}.card-chip{max-width:100%;padding:.22rem .55rem;border:1px solid var(--rule-strong);border-radius:var(--r-xs);font-size:.72rem;font-weight:600;line-height:1.3;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-chip--free{border-color:var(--teal);color:var(--teal)}.card-group-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.card-group-list li{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.card-group-name{min-width:0;font-family:var(--font-display);font-size:.98rem;font-weight:600;line-height:1.3;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-group-time{margin-right:.45rem;font:700 .75rem var(--font-body);font-variant-numeric:tabular-nums;color:var(--card-accent)}.card-group-list .fav-btn{flex-shrink:0;padding:4px}.card-group-list .fav-btn svg{width:16px;height:16px}.card-group-more{font-size:.78rem;color:var(--ink-3)}.card-body{position:relative;padding:1.3rem 1.15rem 1.1rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem}.card-title{font-family:var(--font-display);font-size:1.35rem;font-weight:600;font-variation-settings:"opsz" 40,"SOFT" 50,"wght" 600;line-height:1.18;letter-spacing:-.012em;color:var(--ink);flex:1}.card .card-title{flex:none;font-size:1.12rem;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.badge{flex-shrink:0;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;padding:.28rem .65rem;border-radius:var(--r-xs);white-space:nowrap;font-family:var(--font-body)}.badge-música{background:var(--cat-musica-bg);color:var(--cat-musica-fg)}.badge-teatro{background:var(--cat-teatro-bg);color:var(--cat-teatro-fg)}.badge-cinema{background:var(--cat-cinema-bg);color:var(--cat-cinema-fg)}.badge-dança{background:var(--cat-danca-bg);color:var(--cat-danca-fg)}.badge-cursos{background:var(--cat-cursos-bg);color:var(--cat-cursos-fg)}.badge-exposição{background:var(--cat-exposicao-bg);color:var(--cat-exposicao-fg)}.badge-feira{background:var(--cat-feira-bg);color:var(--cat-feira-fg)}.badge-literatura{background:var(--cat-literatura-bg);color:var(--cat-literatura-fg)}.badge-cancelado{background:#7a1b12;color:#ffe9e4}.badge-adiado{background:#7a5310;color:#fff2d9}.badge-encerrado{background:var(--paper-deep);color:var(--ink-3)}.card-meta-time{font-weight:600;color:var(--ink-2)}.card-sessions,.card-sources{font-size:.85rem;color:var(--ink-3)}.card-date-text{min-width:0}.card-sessions summary,.card-sources summary{cursor:pointer;font-weight:600}.card-sessions ul,.card-sources ul{padding-left:1.2rem;max-height:12rem;overflow-y:auto}.card-sessions li,.card-sources li{margin-top:.4rem}.card-sources a{color:var(--teal);overflow-wrap:anywhere}.card-attraction{font-size:.85rem;color:var(--ink-3);font-style:italic;font-family:var(--font-display);font-variation-settings:"opsz" 28,"SOFT" 80,"wght" 450;line-height:1.4}.card-meta{font-size:.84rem;color:var(--ink-3);display:flex;align-items:center;gap:.4rem;line-height:1.4}.card-meta-icon{flex-shrink:0;opacity:.8;font-size:.85em}.card-meta-text{min-width:0}.venue-map-link{margin-left:.4rem;font-size:.78rem;font-weight:600;color:var(--gold-ink);text-decoration:none;border-bottom:1px solid currentColor;white-space:nowrap}.venue-map-link:hover{color:var(--gold)}.card-meta--date{font-size:.85rem;font-weight:600;color:var(--ink-2)}.card-price{font-size:.9rem;font-weight:600;color:var(--teal);margin-top:.2rem;letter-spacing:-.005em}.card-description{font-size:.875rem;color:var(--ink-2);line-height:1.58;display:-webkit-box;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.card-description--expanded{-webkit-line-clamp:unset;line-clamp:unset;overflow:visible}.card-actions{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;margin-top:auto;padding-top:.3rem}.card-instagram{font-family:var(--font-body);font-size:.74rem;font-weight:600;letter-spacing:.02em;color:var(--teal-deep);text-decoration:none;padding:.35rem .7rem .35rem .55rem;display:inline-flex;align-items:center;gap:.35rem;border:1.5px solid var(--gold);border-radius:var(--r-sm);background:var(--paper-veil);transition:background .18s,border-color .18s,color .18s,transform .15s}.card-instagram:hover{background:var(--hover-warm);border-color:var(--coral);color:var(--coral);transform:translateY(-1px)}.card-instagram-icon{flex-shrink:0;opacity:.85;transition:opacity .18s,transform .18s}.card-instagram:hover .card-instagram-icon{opacity:1;transform:translate(1.5px,-1.5px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.status{text-align:center;padding:6rem 2rem;font-family:var(--font-display);font-variation-settings:"opsz" 48,"SOFT" 70,"wght" 500;font-size:1.4rem;color:var(--ink-3)}.status.error{color:var(--coral)}.card--skeleton{pointer-events:none;cursor:default}.card--skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(251,246,234,.65) 50%,transparent 70%);transform:translate(-100%);animation:igShimmer 1.6s var(--ease-out) infinite}.skel-line{height:10px;border-radius:var(--r-xs);background:var(--paper-deep)}.skel-line--title{height:14px;width:85%;background:var(--paper-deep)}.skel-line--meta{width:55%}.skel-line--text{width:92%}.skel-line--short{width:45%}.skel-actions{display:flex;gap:.5rem;margin-top:auto;padding-top:.3rem}.skel-pill{height:28px;width:92px;border-radius:var(--r-xs);background:var(--paper-deep)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:.9rem;padding:3.5rem 2rem;text-align:center}.empty-state-art{width:120px;height:auto;border-radius:var(--r-sm);box-shadow:var(--sh-soft)}.empty-state-message{font-family:var(--font-display);font-style:italic;font-variation-settings:"opsz" 40,"SOFT" 80,"wght" 480;font-size:1.25rem;color:var(--ink-3)}.empty-state-action{background:transparent;border:1.5px solid var(--gold);border-radius:var(--r-xs);padding:.5rem 1.3rem;font-family:var(--font-body);font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-ink);cursor:pointer;transition:background .2s,color .2s,transform .15s}.empty-state-action:hover{background:#c6842114;transform:translateY(-1px)}.pagination{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:2.5rem 0 .5rem}.pagination-btn{background:var(--surface);border:1px solid var(--rule-strong);border-radius:var(--r-sm);width:42px;height:42px;font-size:1.25rem;color:var(--ink-2);cursor:pointer;transition:background .18s,border-color .18s,color .18s,transform .15s;display:flex;align-items:center;justify-content:center;box-shadow:0 1px #1c0e020a}.pagination-btn:hover:not(:disabled){background:var(--gold);border-color:var(--gold);color:#fff;transform:translateY(-1px)}.pagination-btn:disabled{opacity:.32;cursor:default}.pagination-info{font-family:var(--font-body);font-size:.88rem;font-weight:600;color:var(--ink-3);min-width:4.5rem;text-align:center;letter-spacing:.04em}.section-empty{margin:0;color:var(--ink-3);font:italic 500 1.05rem/1.5 var(--font-display)}.venue-trigger{display:inline;background:none;border:none;padding:0;font:inherit;color:inherit;cursor:default;text-align:left}.venue-trigger--linked{cursor:pointer;border-bottom:1px dashed var(--ink-4);transition:color .18s,border-color .18s}.venue-trigger--linked:hover{color:var(--gold);border-color:var(--gold)}.venue-overlay{position:fixed;inset:0;z-index:400}.venue-popover{position:fixed;z-index:401;width:290px;max-height:calc(100vh - 32px);overflow-y:auto;background:var(--surface);border-radius:var(--r-md);box-shadow:var(--sh-pop);border:1px solid var(--rule);animation:venueIn .25s var(--ease-spring)}@keyframes venueIn{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.venue-photo{width:100%;height:130px;object-fit:cover;display:block}.venue-photo-placeholder{width:100%;height:130px;background:linear-gradient(135deg,var(--hd-1),var(--hd-3));display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:3rem;font-variation-settings:"wght" 700,"SOFT" 100;color:var(--gold-leaf);letter-spacing:-.02em}.venue-body{padding:.95rem 1rem 1.1rem}.venue-name{font-family:var(--font-display);font-size:1.05rem;font-weight:700;font-variation-settings:"opsz" 28,"wght" 700;color:var(--ink);margin:0 0 .4rem;line-height:1.3}.venue-address{display:block;font-size:.8rem;color:var(--ink-3);line-height:1.45;margin:0 0 .45rem;text-decoration:none;transition:color .15s}a.venue-address:hover{color:var(--gold)}.venue-desc{font-size:.78rem;color:var(--ink-4);line-height:1.55;margin:0}.venue-close{position:absolute;top:.55rem;right:.55rem;background:var(--surface);border:1px solid var(--rule);border-radius:50%;width:44px;height:44px;line-height:1;text-align:center;cursor:pointer;font-size:1rem;color:var(--ink-2);transition:background .15s,transform .18s;padding:0;display:flex;align-items:center;justify-content:center}.venue-close:hover{background:var(--paper-veil);transform:rotate(90deg)}.card-grouped{position:relative;background:linear-gradient(180deg,var(--paper-veil) 0%,var(--surface) 38%)}.card-grouped:before,.card-grouped:after{content:"";position:absolute;inset:0;background:var(--surface);border-radius:var(--r-md);box-shadow:var(--sh-card);z-index:-1;border:1px solid rgba(28,14,2,.04)}.card-grouped:before{transform:rotate(-1.2deg) translateY(4px);opacity:.7}.card-grouped:after{transform:rotate(.9deg) translateY(7px);opacity:.45}.group-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.group-header-user{font-size:.75rem;font-weight:600;color:#b8377d;text-decoration:none;letter-spacing:.01em;transition:color .18s}.group-header-user:hover{color:#7c1f54;text-decoration:underline}.group-header-count{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);background:#c684211f;border:1px solid rgba(198,132,33,.35);border-radius:var(--r-xs);padding:.18rem .6rem}.group-tabs{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:.55rem}.group-tab{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--rule-strong);background:transparent;color:var(--ink-3);font-size:.75rem;font-weight:700;font-family:var(--font-body);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .18s,border-color .18s,color .18s,transform .15s}.group-tab:hover:not(.group-tab--active){border-color:var(--gold);color:var(--gold);transform:translateY(-1px)}.group-tab--active{background:var(--gold);border-color:var(--gold);color:#fff}.search-field{display:flex;align-items:center;width:min(370px,100%);min-height:46px;background:var(--surface);border:1.5px solid var(--rule-strong);border-radius:var(--r-xs);padding:0 .5rem 0 1rem;box-shadow:0 1px #1c0e020a;transition:border-color .2s,box-shadow .2s}.search-field:focus-within{border-color:var(--gold);box-shadow:0 6px 18px -8px #c6842159}.search-field-icon{width:16px;height:16px;flex-shrink:0;stroke:var(--ink-4)}.search-input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-family:var(--font-body);font-size:.85rem;color:var(--ink);padding:.68rem .6rem}.search-input::placeholder{color:var(--ink-4)}.search-input::-webkit-search-cancel-button{display:none}.search-input:focus-visible{outline:none}.search-clear{flex-shrink:0;width:44px;height:44px;border:none;border-radius:50%;background:var(--paper-deep);color:var(--ink-3);font-size:1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .18s,color .18s}.search-clear:hover{background:var(--gold);color:#fff}.cal-overlay{position:fixed;inset:0;z-index:400}@keyframes calIn{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.cal-popover{position:fixed;z-index:401;width:280px;background:linear-gradient(165deg,var(--hd-1) 0%,var(--hd-2) 100%);border:1px solid rgba(242,201,102,.25);border-radius:var(--r-md);box-shadow:0 24px 60px #0000008c,0 4px 10px #00000040;overflow:hidden;animation:calIn .22s var(--ease-spring)}.cal-header{display:flex;align-items:center;justify-content:space-between;padding:.95rem 1.1rem .65rem;border-bottom:1px solid rgba(242,201,102,.18)}.cal-title{font-family:var(--font-body);font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#fff5dc99}.cal-close{background:none;border:none;color:#fff5dc8c;font-size:1.15rem;cursor:pointer;padding:0;line-height:1;transition:color .18s,transform .18s}.cal-close:hover{color:var(--gold-leaf);transform:rotate(90deg)}.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);padding:.6rem .8rem .25rem;gap:2px}.cal-weekday-label{font-family:var(--font-body);font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#f2c966d9;text-align:center}.cal-months{max-height:min(60vh,22rem);overflow-y:auto;overscroll-behavior:contain}.cal-month-group{padding:0 .8rem .65rem}.cal-month-label{font-family:var(--font-display);font-size:.68rem;color:#fff5dcbf;letter-spacing:.12em;text-transform:uppercase;padding:.4rem 0 .3rem;font-style:italic;font-variation-settings:"wght" 500}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-day-empty{aspect-ratio:1}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:var(--r-xs);font-family:var(--font-body);font-size:.78rem;font-weight:500;color:#fff5dcb3;cursor:pointer;transition:background .15s,color .15s;padding:0}.cal-day:hover{background:#f2c96633;color:var(--gold-leaf)}.cal-day--today{color:var(--gold-leaf);font-weight:700;position:relative}.cal-day--today:after{content:"";position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--gold-leaf)}.cal-day:not(.cal-day--events):not(.cal-day--today):not(.cal-day--picked){color:#fff5dc6b}.cal-day--events{color:#fbf6ea;font-weight:700;background:#f2c96621}.cal-day--picked{background:var(--gold);color:#1a0a00;font-weight:700}.cal-day--picked:hover{background:var(--gold-soft);color:#1a0a00}.date-filter-bar{display:flex;align-items:center;margin-bottom:1.4rem}.date-filter-chip{display:inline-flex;max-width:100%;align-items:center;gap:.45rem;background:linear-gradient(135deg,#c6842124,#c684210f);border:1.5px solid rgba(198,132,33,.4);border-radius:var(--r-pill);padding:.4rem .5rem .4rem .85rem;font-family:var(--font-body);font-size:.82rem;font-weight:600;color:var(--gold-ink);text-transform:capitalize;box-shadow:0 4px 12px -8px #c6842166}.date-filter-chip-icon{font-size:.8rem}.date-filter-chip-label{min-width:0}.date-filter-chip-clear{background:#c6842133;border:none;border-radius:50%;width:22px;height:22px;font-size:.95rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6a3e08;transition:background .18s,color .18s,transform .18s;padding:0;flex-shrink:0}.date-filter-chip-clear:hover{background:var(--gold);color:#fff;transform:rotate(90deg)}.section-date{position:relative;background:linear-gradient(180deg,#dcf0eaa6,#e8f6f04d);border-radius:var(--r-lg);padding:clamp(1.25rem,2.5vw,2rem);border:1px solid rgba(11,84,84,.22);box-shadow:0 20px 40px -28px #0b54544d;margin-bottom:3rem;overflow:hidden;animation:fadeIn .35s ease}.section-date:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,transparent,var(--teal),transparent);opacity:.7}.section-date .section-title{color:var(--teal-deep)}.card-expand-close,.mobile-swiper{display:none}@media(max-width:640px){.mobile-swiper{display:block;position:fixed;inset:0;z-index:200;overflow:hidden;background:var(--surface)}.mobile-panel{position:absolute;top:0;left:0;width:100%;height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--surface);will-change:transform}.mobile-panel .ig-embed{flex-shrink:0;padding:0;background:#fff}.mobile-panel .card-body{cursor:default;padding:1.35rem 1.35rem 2.2rem}.card-expand-close{display:flex;position:absolute;top:.85rem;right:.85rem;z-index:10;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:#0000008c;color:#fff;font-size:.95rem;cursor:pointer;align-items:center;justify-content:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.card--expanded .card-body{cursor:default;padding:1.35rem 1.35rem 2.2rem}}@media(min-width:900px){html{background:var(--backdrop)}.content{padding:0 2.75rem 4rem}.section-hoje,.section-date{padding:2.25rem}}@media(min-width:641px){.card{cursor:pointer}}@keyframes deskModalOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes deskModalIn{0%{opacity:0;transform:translate(-50%,-48%) scale(.94)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.desk-modal-overlay{position:fixed;inset:0;background:#080300d6;backdrop-filter:blur(16px) saturate(.7);-webkit-backdrop-filter:blur(16px) saturate(.7);z-index:300;cursor:zoom-out;animation:deskModalOverlayIn .3s ease}.desk-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:301;width:min(92vw,1080px);height:min(86vh,680px);background:var(--surface);border-radius:var(--r-xl);overflow:hidden;display:flex;box-shadow:0 48px 140px #080300a6,0 0 0 1px #f2c96633,inset 0 1px #ffffff1a;animation:deskModalIn .4s var(--ease-spring)}.desk-modal-images{flex:0 0 430px;position:relative;background:#fff;overflow-y:auto;overflow-x:hidden;cursor:default;display:flex;align-items:flex-start;justify-content:center;padding:0}.ig-embed{position:relative;width:100%;max-width:540px;margin:0 auto;min-height:320px}.ig-embed .instagram-media{min-width:0!important;margin:0 auto!important}.ig-embed iframe.instagram-media{border-radius:0!important;border:none!important;box-shadow:none!important}.ig-embed-skeleton{position:absolute;inset:0;background:#fff;padding:1rem;display:flex;flex-direction:column;gap:.9rem;overflow:hidden}.ig-skel-row{display:flex;align-items:center;gap:.7rem}.ig-skel-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0;background:var(--paper-deep)}.ig-skel-line{height:12px;width:45%;border-radius:var(--r-pill);background:var(--paper-deep)}.ig-skel-media{flex:1;min-height:240px;border-radius:var(--r-xs);background:var(--paper-deep)}.ig-embed-skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.7) 50%,transparent 70%);transform:translate(-100%);animation:igShimmer 1.4s var(--ease-out) infinite}@keyframes igShimmer{to{transform:translate(100%)}}.ig-embed-skeleton--poster{padding:0;display:flex;align-items:flex-start;justify-content:center;background:var(--paper-deep)}.ig-embed-skeleton--poster:after{content:none}.ig-embed-poster{display:block;width:100%;height:auto;max-width:420px;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--r-sm)}.ig-embed--poster{padding:0 0 1rem}.ig-embed--empty{flex-direction:column;gap:.7rem;align-items:center;justify-content:center;text-align:center;min-height:320px;padding:2rem;color:var(--ink-3);font-family:var(--font-display);font-variation-settings:"opsz" 28,"SOFT" 70,"wght" 450;font-size:1rem}.ig-empty-icon{font-size:2rem;color:var(--gold-leaf);opacity:.85}.desk-modal-info{flex:1 1 0;min-width:300px;background:var(--paper-veil);border-left:1px solid var(--rule);display:flex;flex-direction:column;overflow:hidden}.desk-modal-info-top{flex-shrink:0;display:flex;justify-content:flex-end;align-items:center;padding:.7rem .7rem 0}.desk-modal-info-body{flex:1;overflow-y:auto;padding:.95rem 1.85rem 1.85rem;display:flex;flex-direction:column;gap:0;scrollbar-width:thin;scrollbar-color:rgba(198,132,33,.25) transparent}.desk-modal-info-body::-webkit-scrollbar{width:5px}.desk-modal-info-body::-webkit-scrollbar-track{background:transparent}.desk-modal-info-body::-webkit-scrollbar-thumb{background:#c6842147;border-radius:3px}.desk-modal-close{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--rule);background:var(--surface);color:var(--ink-3);font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,color .2s,transform .3s var(--ease-spring);flex-shrink:0}.desk-modal-close:hover{background:var(--ink-fixed);color:#fff;border-color:var(--ink-fixed);transform:rotate(90deg)}.desk-modal-info .card-header{flex-direction:column-reverse;align-items:flex-start;gap:.55rem;padding-bottom:1.1rem;margin-bottom:.1rem;border-bottom:1px solid var(--rule)}.desk-modal-info .card-title{font-family:var(--font-display);font-size:clamp(1.5rem,2.5vw,1.85rem);font-weight:700;font-variation-settings:"opsz" 72,"SOFT" 60,"wght" 700;line-height:1.15;letter-spacing:-.018em;color:var(--ink)}.desk-modal-info .badge{font-size:.66rem;letter-spacing:.1em}.desk-modal-info .card-attraction{font-size:.98rem;color:var(--ink-3);margin-top:.95rem;margin-bottom:.15rem}.desk-modal-info .card-meta{font-size:.88rem;color:var(--ink-3);margin-top:.75rem;line-height:1.45}.desk-modal-info .card-meta:first-of-type{margin-top:.95rem}.desk-modal-info .card-price{margin-top:1.1rem;padding:.65rem .95rem;background:#0b54540f;border-left:3px solid var(--teal);border-radius:0 var(--r-sm) var(--r-sm) 0;font-size:.92rem;font-weight:700;color:var(--teal-deep);line-height:1.35}.desk-modal-info .card-description{-webkit-line-clamp:unset;line-clamp:unset;overflow:visible;font-size:.88rem;line-height:1.7;color:var(--ink-3);margin-top:1.1rem;padding-top:.95rem;border-top:1px solid var(--rule)}.desk-modal-info .card-actions{margin-top:1.1rem}.desk-modal-group-header{display:flex;align-items:center;gap:.55rem;margin-bottom:.85rem;flex-wrap:wrap;padding-bottom:.85rem;border-bottom:1px solid var(--rule)}.share-btn{display:inline-flex;align-items:center;height:32px;gap:.32rem;background:var(--paper-veil);border:1.5px solid var(--gold);border-radius:var(--r-sm);padding:.32rem .65rem .32rem .55rem;font-family:var(--font-body);font-size:.74rem;font-weight:600;letter-spacing:.02em;color:var(--teal-deep);cursor:pointer;transition:background .18s,border-color .18s,color .18s,transform .15s;white-space:nowrap}.share-btn:hover{background:var(--hover-warm);border-color:var(--coral);color:var(--coral);transform:translateY(-1px)}.share-btn--copied{background:#16a34a14;border-color:#138a45;color:#0e6b35}.share-btn--copied:hover{background:#16a34a14;border-color:#138a45;color:#0e6b35;transform:none}.share-btn svg{flex-shrink:0;opacity:.85}.share-btn--copied svg{opacity:1}@media(max-width:640px){.site-header{flex-wrap:wrap;gap:.6rem;padding:1.25rem 1.125rem .8rem}.site-header h1{width:100%;font-size:clamp(1.75rem,8.2vw,2rem)}.header-location{flex:1;font-size:.65rem}.header-tools{gap:.6rem}.header-tool{font-size:.7rem;gap:.25rem}.header-tool svg{width:18px;height:18px}.theme-toggle span{display:none}.theme-toggle{min-width:32px}.header-saved-count{min-width:15px;height:15px;font-size:.6rem}.agenda-discovery{padding:0 1.125rem}.category-nav{display:flex;gap:.5rem;overflow-x:auto;padding:.85rem 0 .15rem;scrollbar-width:none}.category-nav::-webkit-scrollbar{display:none}.category-link{flex:0 0 auto;min-height:40px;padding:.35rem 1rem;border:1px solid var(--rule-strong);border-radius:var(--r-pill)}.category-link[aria-pressed=true]{border-color:currentColor;box-shadow:inset 0 0 0 1px currentColor}.category-link-title{font-size:1.05rem}.category-link-description{display:none}.category-secondary{gap:0 1.4rem;padding-bottom:.4rem}.discovery-filters{flex-wrap:wrap;gap:.6rem;padding:.65rem 0}.search-field{width:100%}.search-input{font-size:16px}.discovery-dates{width:100%;gap:.3rem}.agenda-calendar-button{flex-shrink:0}.agenda-calendar-button span{display:none}.filters-bar{padding:.25rem 0 .9rem;gap:.5rem}.content{padding:0 1rem 2rem}.section-hoje,.section-date{padding:1.2rem 1rem}.section-header{margin-bottom:1.1rem}.section{margin-bottom:2.5rem}.grid{grid-template-columns:1fr;gap:.75rem}.card-body{padding:1rem}.card-title{font-size:1.08rem}.card{--thumb-w: 104px}.card-summary{padding:.7rem .85rem .75rem}.card .card-title{font-size:1.02rem}}.map-overlay{position:fixed;inset:0;background:#080300d6;backdrop-filter:blur(14px) saturate(.7);-webkit-backdrop-filter:blur(14px) saturate(.7);z-index:500;cursor:zoom-out}.map-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:501;width:min(96vw,920px);height:min(88vh,640px);background:var(--surface);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 48px 130px #080300a6,0 0 0 1px #f2c96633;animation:deskModalIn .34s var(--ease-spring)}.map-modal-header{display:flex;align-items:center;justify-content:space-between;padding:.95rem 1.15rem;border-bottom:1px solid var(--rule);flex-shrink:0}.map-modal-title{font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.map-modal-close{background:none;border:1px solid var(--rule);font-size:1rem;cursor:pointer;color:var(--ink-3);padding:.3rem .55rem;border-radius:var(--r-xs);transition:background .18s,color .18s}.map-modal-close:hover{background:var(--ink-fixed);color:#fff;border-color:var(--ink-fixed)}.map-modal-body{flex:1;min-height:0}.map-modal-body .leaflet-container{width:100%;height:100%}.map-no-venues{text-align:center;padding:2rem;color:var(--ink-4);font-size:.88rem}.map-popup-select-btn{margin-top:.45rem;display:block;background:var(--gold);color:#fff;border:none;border-radius:var(--r-xs);padding:.35rem .75rem;font-size:.78rem;font-weight:700;cursor:pointer;width:100%;transition:background .18s}.map-popup-select-btn:hover{background:var(--gold-soft)}.leaflet-container a.map-popup-maps-link{display:block;margin-top:.4rem;text-align:center;font-size:.76rem;font-weight:600;color:#8a5a0e}.venue-filter-bar{display:flex;align-items:center;margin-bottom:1.4rem}.venue-filter-chip{display:inline-flex;align-items:center;gap:.45rem;background:linear-gradient(135deg,#0b54541a,#0b54540a);border:1.5px solid rgba(11,84,84,.32);border-radius:var(--r-pill);padding:.4rem .5rem .4rem .85rem;font-size:.82rem;font-weight:600;color:var(--teal-deep);box-shadow:0 4px 12px -8px #0b54544d}.venue-filter-chip-clear{background:#0b545424;border:none;border-radius:50%;width:22px;height:22px;font-size:.95rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--teal-deep);transition:background .18s,color .18s,transform .18s;padding:0}.venue-filter-chip-clear:hover{background:var(--teal);color:#fff;transform:rotate(90deg)}@media(max-width:640px){.map-modal{width:100vw;height:100dvh;top:0;left:0;transform:none;border-radius:0}}@media(prefers-reduced-motion:reduce){.card,.card--skeleton:after,.ig-embed-skeleton:after{animation:none}}.fav-btn{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;padding:6px;color:var(--ink-3);border-radius:999px;transition:transform .15s var(--ease-out),color .15s,background .15s}@media(hover:hover){.fav-btn:hover{transform:scale(1.12);color:var(--coral)}}.fav-btn--on{color:var(--coral)}.fav-btn--card{position:absolute;top:10px;right:10px;z-index:3;background:#ffffffe6;color:var(--ink-fixed);padding:7px;box-shadow:0 2px 8px #1c0e0238}.fav-btn--card.fav-btn--on{color:var(--coral)}.fav-btn--card svg{width:18px;height:18px}.list-toolbar{display:flex;justify-content:flex-end;margin:-.4rem 0 1.1rem}.list-share-btn,.list-exit-btn{display:inline-flex;align-items:center;gap:.45rem;background:var(--surface);border:1.5px solid var(--rule-strong);border-radius:var(--r-pill);padding:.5rem 1rem;cursor:pointer;font-family:var(--font-body);font-size:.85rem;font-weight:600;color:var(--ink-2);transition:color .2s,border-color .2s,background .2s}@media(hover:hover){.list-share-btn:hover,.list-exit-btn:hover{border-color:var(--gold);color:var(--gold)}}.list-share-btn--copied{border-color:var(--teal);color:var(--teal)}.card-actions{flex-wrap:wrap}.addcal{position:relative}.addcal-btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--surface);border:1.5px solid var(--rule-strong);border-radius:var(--r-pill);padding:.4rem .85rem;cursor:pointer;font-family:var(--font-body);font-size:.78rem;font-weight:600;color:var(--ink-2);transition:color .2s,border-color .2s}@media(hover:hover){.addcal-btn:hover{border-color:var(--gold);color:var(--gold)}}.addcal-menu{position:absolute;bottom:calc(100% + 6px);left:0;z-index:40;background:var(--surface);border:1px solid var(--rule-strong);border-radius:var(--r-sm);box-shadow:var(--sh-pop);overflow:hidden;min-width:190px}.addcal-item{display:block;width:100%;text-align:left;padding:.6rem .9rem;background:transparent;border:none;cursor:pointer;font-family:var(--font-body);font-size:.82rem;color:var(--ink-2);text-decoration:none}@media(hover:hover){.addcal-item:hover{background:var(--paper-deep)}}.foryou-head{margin-bottom:1.5rem}.foryou-intro{color:var(--ink-3);margin:.4rem 0 1.1rem;font-size:.95rem}.genre-picker{display:flex;flex-wrap:wrap;gap:.5rem}.genre-chip{background:var(--surface);border:1.5px solid var(--rule-strong);border-radius:var(--r-pill);padding:.42rem .9rem;cursor:pointer;font-family:var(--font-body);font-size:.82rem;font-weight:600;color:var(--ink-2);transition:color .2s,border-color .2s,background .2s}@media(hover:hover){.genre-chip:hover{border-color:var(--gold);color:var(--gold)}}.genre-chip--on{background:var(--cat-musica-bg);color:var(--cat-musica-fg);border-color:var(--cat-musica-fg)}.card-link{color:inherit;text-decoration:none}.card-link:after{content:"";position:absolute;inset:0;z-index:1}.card-link:focus-visible,.card-group-name:focus-visible{outline:none}.card:has(.card-link:focus-visible){outline:3px solid var(--gold);outline-offset:2px}.card-group-name{text-decoration:none}.card-group-name:focus-visible{text-decoration:underline;text-underline-offset:3px}.card-grouped{cursor:pointer}.ig-empty-link{margin-top:.7rem;display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-body);font-size:.85rem;font-weight:600;color:var(--teal-deep);text-decoration:none;border:1.5px solid var(--rule-strong);border-radius:var(--r-pill);padding:.45rem .9rem}@media(hover:hover){.ig-empty-link:hover{border-color:var(--gold);color:var(--gold)}}.stale-notice{margin:0 0 1.5rem;padding:.75rem 1.1rem;background:var(--paper-deep);color:var(--ink-2);border:1px solid var(--rule);border-left:3px solid var(--gold);border-radius:var(--r-md);font-size:.88rem;line-height:1.5}.error-banner{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;background:var(--cat-teatro-bg);color:var(--cat-teatro-fg);border:1px solid rgba(152,35,12,.25);border-radius:var(--r-md);padding:.85rem 1.2rem;margin-bottom:1.5rem}.error-banner-text{flex:1 1 auto;font-weight:600;font-size:.92rem}.error-banner-retry{flex-shrink:0;background:var(--cat-teatro-fg);color:#fff;border:none;border-radius:var(--r-pill);padding:.5rem 1.1rem;font-family:var(--font-body);font-weight:700;font-size:.85rem;cursor:pointer}@media(hover:hover){.error-banner-retry:hover{filter:brightness(.9)}}:root[data-theme=dark] .section-hoje{background:linear-gradient(180deg,#e7b24e17,#e7b24e08)}:root[data-theme=dark] .section-date{background:linear-gradient(180deg,#3fb0a01a,#3fb0a008)}.site-footer{padding:2rem 1rem 2.5rem;border-top:1px solid var(--rule);text-align:center;font-size:.8rem}.site-footer a{color:var(--ink-3);text-underline-offset:3px}@media(hover:hover){.site-footer a:hover{color:var(--gold-ink)}}.agenda-views{display:flex;align-self:stretch;gap:1.5rem}.agenda-views button{border:0;border-bottom:2px solid transparent;padding:.5rem 0;min-height:46px;background:transparent;color:var(--ink-4);font:500 .8rem/1.3 var(--font-body);white-space:nowrap}.agenda-views button:hover{color:var(--ink)}.agenda-views button[aria-current=page]{color:var(--ink);border-bottom-color:var(--gold);font-weight:700}.category-menu{position:relative}.category-menu-trigger{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;padding:0;border:0;background:transparent;color:var(--ink-2);font:400 .8rem/1.3 var(--font-body)}.category-menu-trigger svg{width:16px;height:16px}.category-menu-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.category-menu-options{position:absolute;top:100%;left:0;z-index:30;min-width:170px;padding:.4rem;border:1px solid var(--rule-strong);border-radius:var(--r-xs);background:var(--surface);box-shadow:var(--sh-pop)}.category-menu-options button{display:block;width:100%;min-height:44px;border:0;padding:.5rem .75rem;text-align:left;background:transparent;color:var(--ink-2);font:400 .85rem/1.3 var(--font-body)}.category-menu-options button:hover{background:var(--paper-veil)}.category-menu-options button[aria-pressed=true]{color:var(--gold-ink);font-weight:700;text-decoration:underline;text-underline-offset:4px}.agenda-periods{display:flex;gap:3px;padding:3px;border-radius:var(--r-xs);background:var(--paper-deep)}.agenda-periods button{min-height:40px;border:0;border-radius:3px;padding:.4rem .75rem;background:transparent;color:var(--ink-2);font:400 .75rem/1.3 var(--font-body);white-space:nowrap}.agenda-periods button[aria-pressed=true]{background:var(--surface);color:var(--gold-ink);font-weight:700;box-shadow:0 1px 3px var(--rule)}.agenda-periods button:hover{color:var(--gold-ink)}.agenda-views button:focus-visible,.category-menu button:focus-visible,.agenda-periods button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(max-width:640px){.agenda-views{gap:1.2rem}.agenda-views button,.category-menu-trigger,.category-all{font-size:.75rem}.agenda-periods{flex:1;gap:0}.agenda-periods button{flex:1;min-height:42px;padding:.3rem .4rem;font-size:.65rem}}
