.events-page{padding-bottom:90px}.events-experience{gap:18px;display:grid}.events-experience__header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;padding-bottom:18px;display:flex}.events-experience__header h2{margin-bottom:8px;font-size:clamp(1.4rem,2.4vw,1.9rem)}.events-experience__header p{color:var(--text-soft);max-width:62ch;margin:0}.events-experience__header strong{color:var(--brand);white-space:nowrap;font-size:.9rem}.events-filter{flex-wrap:wrap;gap:8px;display:flex}.events-filter button{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-soft);cursor:pointer;align-items:center;gap:6px;padding:6px 14px;font-size:.82rem;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.events-filter button:hover{border-color:var(--brand-line);color:var(--text)}.events-filter button.is-active{background:var(--brand-soft);border-color:var(--brand-line);color:var(--text);font-weight:600}.events-filter--kinds{border-bottom:1px solid var(--border);padding-bottom:18px}.events-layout{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:22px;display:grid}.events-calendar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px}.events-calendar__header{align-items:center;gap:8px;margin-bottom:14px;display:flex}.events-calendar__header>button{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-soft);cursor:pointer;place-items:center;width:32px;height:32px;display:grid}.events-calendar__header>button:hover:not(:disabled){border-color:var(--brand-line);color:var(--text)}.events-calendar__header>button:disabled{cursor:default;opacity:.38}.events-calendar__header .events-calendar__today{width:auto;padding-inline:12px;font-size:.76rem;font-weight:600}.events-calendar__weekdays,.events-calendar__row{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.events-calendar__grid{gap:4px;display:grid}.events-calendar__weekdays span{color:var(--muted);letter-spacing:.08em;text-align:center;text-transform:uppercase;padding-bottom:6px;font-size:.68rem;font-weight:700}.events-calendar__cell{aspect-ratio:1;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;align-content:start;justify-items:center;gap:3px;padding:5px 2px;display:grid}.events-calendar__cell--empty{cursor:default}.events-calendar__cell.is-past{color:var(--muted);cursor:default;opacity:.42}.events-calendar__cell:not(.events-calendar__cell--empty,.is-past):hover{background:var(--surface-soft)}.events-calendar__cell.has-events{background:color-mix(in srgb, var(--surface-soft) 70%, transparent)}.events-calendar__cell.is-today .events-calendar__day{color:var(--brand);font-weight:700}.events-calendar__cell.is-selected{background:var(--brand-soft);border-color:var(--brand)}.events-calendar__day{font-size:.82rem;line-height:1.6}.events-calendar__dots{flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;display:flex}.events-calendar__dots small{color:var(--muted);font-size:.6rem}.events-calendar__dot{background:var(--muted);border-radius:50%;width:6px;height:6px;display:inline-block}.events-calendar__dot--birthday{background:#e2779f}.events-calendar__dot--fan-meeting{background:#6aa8e0}.events-calendar__dot--concert{background:#b183dd}.events-calendar__dot--festival{background:#cdb13a}.events-calendar__dot--broadcast{background:#56b39a}.events-calendar__dot--online{background:#3fb4c6}.events-calendar__dot--screening{background:#e0a05a}.events-calendar__dot--release{background:#d9645f}.events-calendar__dot--anniversary{background:#9a9aa6}.events-calendar__legend{border-top:1px solid var(--border);color:var(--text-soft);flex-wrap:wrap;gap:6px 14px;margin-top:16px;padding-top:14px;font-size:.74rem;display:flex}.events-calendar__legend span{align-items:center;gap:6px;display:inline-flex}.events-side{gap:16px;display:grid}.events-side__day{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px 18px}.events-side__day h3{margin-bottom:10px;font-size:.95rem}.events-side__list{gap:6px;display:grid}.events-side__item{background:var(--surface-soft);border-radius:var(--radius-sm);cursor:pointer;text-align:left;border:1px solid #0000;align-items:center;gap:10px;padding:8px 12px;display:flex}.events-side__item span{flex:1;font-size:.85rem}.events-side__item svg{color:var(--muted)}.events-side__item:hover{border-color:var(--brand-line)}.events-side__item.is-active{background:var(--brand-soft);border-color:var(--brand-line)}.events-side__empty{color:var(--text-soft);margin:0;font-size:.84rem}.event-tag{background:var(--surface-soft);border-radius:var(--radius-pill);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:5px;padding:4px 10px;font-size:.7rem;font-weight:700;display:inline-flex}.event-tag--birthday{background:#e2779f38}.event-tag--fan-meeting{background:#6aa8e038}.event-tag--concert{background:#b183dd38}.event-tag--festival{background:#cdb13a3d}.event-tag--broadcast{background:#56b39a38}.event-tag--online{background:#3fb4c638}.events-kind-tooltip{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-soft);pointer-events:none;z-index:60;max-width:min(280px,100vw - 24px);padding:8px 11px;font-size:.78rem;line-height:1.45;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #00000024}.events-kind-tooltip strong{color:var(--text);margin-bottom:2px;font-size:.74rem;display:block}.events-calendar__legend span[tabindex]{cursor:help}.event-tag--screening{background:#e0a05a3d}.event-tag--release{background:#d9645f38}.event-tag--anniversary{background:#9a9aa638}.event-detail{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);gap:14px;padding:18px;display:grid}.event-detail h3{margin:10px 0 6px;font-size:1.15rem}.event-detail__when{color:var(--text-soft);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;font-size:.82rem;display:flex}.event-detail__when em{color:var(--brand);font-style:normal;font-weight:600}.event-detail__summary{color:var(--text-soft);margin:0;font-size:.88rem}.event-detail__members{flex-wrap:wrap;gap:6px;display:flex}.event-detail__members a,.event-detail__group-tag{background:var(--brand-soft);border-radius:var(--radius-pill);color:var(--text);padding:4px 11px;font-size:.76rem;font-weight:600}.event-detail__members a:hover{background:var(--brand-line)}.event-detail__block{border-top:1px solid var(--border);padding-top:12px}.event-detail__block h4{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:6px;margin:0 0 8px;font-size:.7rem;font-weight:700;display:flex}.event-detail__block p{gap:2px;margin:0 0 6px;font-size:.86rem;display:grid}.event-detail__block p span{color:var(--text-soft);font-size:.8rem}.event-detail__block ul{color:var(--text-soft);margin:0;padding-left:18px;font-size:.84rem}.event-detail__block li{margin-bottom:4px}.event-detail__links{flex-wrap:wrap;gap:8px;display:flex}.event-detail__block a{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text);align-items:center;gap:6px;padding:5px 12px;font-size:.78rem;display:inline-flex}.event-detail__block a:hover{border-color:var(--brand-line)}.event-detail__footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;gap:10px 16px;padding-top:12px;display:flex}.event-detail__related{color:var(--brand);align-items:center;gap:4px;min-height:24px;font-size:.82rem;font-weight:600;display:inline-flex}.event-detail__source{color:var(--muted);align-items:center;gap:4px;min-height:24px;font-size:.76rem;display:inline-flex}.events-upcoming{border-top:1px solid var(--border);padding-top:22px}.events-upcoming h3{margin-bottom:14px;font-size:1.05rem}.events-upcoming__list{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.events-upcoming__card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;text-align:left;align-content:start;justify-items:start;gap:6px;padding:14px 16px;transition:border-color .2s,transform .2s;display:grid}.events-upcoming__card:hover{border-color:var(--brand-line);transform:translateY(-2px)}.events-upcoming__card time{color:var(--text-soft);font-size:.78rem}.events-upcoming__card strong{font-size:.92rem;font-weight:600}.events-upcoming__card small{color:var(--brand);font-size:.76rem;font-weight:600}.events-experience__meta{align-items:center;gap:14px;display:flex}.events-create{background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:var(--radius-pill);color:var(--text);cursor:pointer;align-items:center;gap:6px;padding:7px 16px;font-size:.82rem;font-weight:600;transition:background .2s,border-color .2s;display:inline-flex}.events-create:hover{background:var(--brand-line)}.events-composer{background:color-mix(in srgb, var(--surface-soft) 45%, var(--surface));border:1px solid var(--brand-line);border-radius:var(--radius-lg);gap:16px;padding:22px;display:grid}.events-composer h3{margin:0 0 6px;font-size:1.05rem}.events-composer header p{color:var(--text-soft);max-width:70ch;margin:0;font-size:.85rem}.events-manage-error{background:color-mix(in srgb, var(--badge) 12%, transparent);border:1px solid color-mix(in srgb, var(--badge) 40%, transparent);border-radius:var(--radius-md);color:var(--text);margin:14px 0 0;padding:11px 14px;font-size:.82rem}.event-interest__wrap{gap:5px;margin-top:14px;display:grid}.event-interest{border:1px solid var(--brand-line);border-radius:var(--radius-pill);color:var(--text);cursor:pointer;font:inherit;background:0 0;justify-self:start;align-items:center;gap:7px;padding:7px 16px;font-size:.82rem;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s;display:inline-flex}.event-interest:hover:not(:disabled){background:var(--brand-soft)}.event-interest.is-following{background:var(--brand-soft);border-color:var(--brand)}.event-interest:disabled{cursor:progress;opacity:.65}.event-interest--signed-out{font-weight:500}.event-interest__wrap small{color:var(--muted);font-size:.72rem}.event-interest__wrap small[role=alert]{color:var(--badge)}.event-detail__manage{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.event-detail__manage button{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-soft);cursor:pointer;font:inherit;background:0 0;align-items:center;gap:6px;padding:5px 13px;font-size:.75rem;display:inline-flex}.event-detail__manage button:hover{background:var(--surface-soft);color:var(--text)}.event-detail__manage small{color:var(--muted);font-size:.72rem}.event-form{gap:18px;display:grid}.event-form__error{border-radius:var(--radius-sm);background:#d5484f24;border:1px solid #d5484f66;margin:0;padding:10px 14px;font-size:.85rem}.event-form__hint{color:var(--muted);margin:0;font-size:.78rem;line-height:1.5}.event-form__grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.event-form__field{color:var(--text-soft);letter-spacing:.02em;gap:5px;font-size:.78rem;font-weight:600;display:grid}.event-form__field--wide{grid-column:1/-1}.event-form__field small{color:var(--text-soft);opacity:.8;font-weight:400}.event-form input,.event-form select,.event-form textarea{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);font:inherit;width:100%;padding:8px 11px;font-size:.86rem;font-weight:400}.event-form input:focus-visible,.event-form select:focus-visible,.event-form textarea:focus-visible{border-color:var(--field-focus-border);box-shadow:var(--field-focus-ring);outline-offset:0;outline:2px solid #0000}.event-form__block{border:1px solid var(--border);border-radius:var(--radius-md);gap:10px;padding:14px 16px 16px;display:grid}.event-form__block legend{color:var(--text-soft);padding:0 6px;font-size:.78rem;font-weight:600}.event-form__block legend small{opacity:.8;font-weight:400}.event-form__language{gap:14px;display:grid}.event-form__locales{flex-wrap:wrap;gap:8px;display:flex}.event-form__locales button{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text);cursor:pointer;align-items:center;gap:.5rem;min-height:34px;padding:.35rem .75rem;font-size:.8125rem;font-weight:600;display:inline-flex}.event-form__locales button:hover{border-color:var(--brand);color:var(--brand)}.event-form__locales button.is-active{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.event-form__locales button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 26%, transparent);outline:2px solid #0000}.event-form__field.is-required{position:relative}.event-form__field.is-required:before{color:var(--brand);content:"*";position:absolute;top:0;left:-.8em}.event-form__members{flex-wrap:wrap;gap:7px;display:flex}.event-form__members button{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-soft);cursor:pointer;padding:5px 12px;font-size:.78rem}.event-form__members button.is-active{background:var(--brand-soft);border-color:var(--brand-line);color:var(--text)}.event-form__cancel{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-soft);cursor:pointer;background:0 0;padding:7px 14px;font-size:.78rem}.event-form__check{color:var(--text-soft);align-items:center;gap:8px;font-size:.82rem;display:flex}.event-form__check input{width:auto}.event-form__actions{flex-wrap:wrap;gap:10px;display:flex}.event-form__submit{background:var(--brand);border:1px solid var(--brand);border-radius:var(--radius-sm);color:var(--surface);cursor:pointer;padding:9px 20px;font-size:.85rem;font-weight:600}.event-form__submit:disabled{cursor:progress;opacity:.6}.events-filter-bar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px 12px;padding-bottom:16px;display:flex}.events-filter-bar.is-open{border-bottom:0;padding-bottom:0}.events-filter-toggle{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text);cursor:pointer;align-items:center;gap:6px;padding:6px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.events-filter-toggle:hover{border-color:var(--brand-line)}.events-filter-toggle.is-open{background:var(--brand-soft);border-color:var(--brand-line)}.events-filter-toggle__count{background:var(--brand);border-radius:var(--radius-pill);color:var(--surface);text-align:center;min-width:18px;padding:3px 6px;font-size:.7rem;line-height:1}.events-filter--selected{flex:auto;min-width:0}.events-filter__remove{opacity:.65}.events-filter button.events-filter__clear{color:var(--text-soft);text-underline-offset:3px;background:0 0;border-color:#0000;text-decoration:underline}.events-filter-bar__none{color:var(--text-soft);margin:0;font-size:.8rem}.events-filter-panel{gap:12px;display:grid}@media (max-width:900px){.events-layout{grid-template-columns:1fr}}@media (max-width:620px){.events-filter{overscroll-behavior-inline:contain;scroll-snap-type:inline proximity;scrollbar-width:none;flex-wrap:nowrap;padding:2px 2px 8px;scroll-padding-inline:2px;overflow-x:auto}.events-filter::-webkit-scrollbar{display:none}.events-filter button{scroll-snap-align:start;flex:none;min-height:44px}.events-filter--kinds{padding-bottom:12px}.events-filter-toggle{min-height:44px}.events-filter--selected{flex-basis:100%}.events-calendar{padding:14px 10px}.events-calendar__cell{aspect-ratio:auto;min-height:46px}.events-calendar__legend{font-size:.7rem}}@media (max-width:760px),(orientation:landscape) and (max-width:960px) and (max-height:500px){.events-calendar__header,.events-experience__meta{flex-wrap:wrap;align-items:flex-start}.events-calendar__header{justify-content:center}.events-calendar__header>button,.events-calendar__today{min-height:2.5rem}.events-calendar__cell{min-height:3.4rem}.events-calendar__day{font-size:min(.82rem,3.2vw)}.event-detail__links{gap:10px}}.event-form .date-field__trigger,.event-form .time-field__trigger{border-radius:var(--radius-md);padding:8px 11px;font-size:.86rem}.event-form__time{gap:6px;display:flex}.event-form__time>.time-field{flex:8rem;min-width:0}.event-form__time>select{flex:0 0 5.5rem}
