*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f8f6f1;--bg-card:#fff;--text:#1a1a18;--text-muted:#6b6960;--accent:#d94f1e;--accent-light:#fceee8;--border:#ddd8ce;--border-light:#eae6df;--tag-bg:#edeae4;--tag-active-bg:var(--accent);--tag-active-text:#fff;--vote-yes:#2e7d32;--vote-yes-bg:#e8f3e9;--vote-maybe:#b07a10;--vote-maybe-bg:#fbf1dd;--vote-no:#8a877e;--vote-no-bg:#eeece7;--content:960px;--radius:6px;--radius-lg:10px;--filter-tap:2.2rem;--chip-shadow:0 1px 2px #463c2d26, 0 2px 6px #463c2d0f, 0 0 0 1px #463c2d12;--chip-shadow-hover:0 2px 4px #463c2d2e, 0 3px 10px #463c2d12, 0 0 0 1px #463c2d17;--chip-shadow-pressed:inset 0 1px 2px #5a190047;--chip-shadow-holding:inset 0 1px 2px #463c2d2e;--mono:"Menlo", "Consolas", "Liberation Mono", monospace;--sans:-apple-system, "Segoe UI", "Helvetica Neue", Helvetica, sans-serif}html{-webkit-font-smoothing:antialiased;font-size:15px}body{font-family:var(--sans);background:var(--bg);color:var(--text);flex-direction:column;min-height:100dvh;display:flex}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}header{border-bottom:2px solid var(--text);padding:1.6rem 2rem 1.4rem;position:relative}.header-inner{max-width:var(--content);align-items:center;gap:1.2rem;margin:0 auto;display:flex}.header-end{align-items:center;gap:1.2rem;display:flex}.menu-btn{display:none}.logo{font-family:var(--mono);color:var(--text);letter-spacing:-.03em;align-items:center;gap:.4rem;font-size:1.5rem;font-weight:500;text-decoration:none;display:flex}.logo img{object-fit:contain;width:1.75rem;height:1.75rem}.logo span{color:var(--accent)}.logo:hover{text-decoration:none}.header-nav{gap:.2rem;display:flex}.nav-link{font-family:var(--mono);color:var(--text-muted);border-radius:3px;padding:.3rem .7rem;font-size:.78rem;text-decoration:none;transition:all .15s}.nav-link:hover{color:var(--text);background:var(--tag-bg);text-decoration:none}.nav-link.active{color:var(--text);background:var(--tag-bg);font-weight:600}.page-layout{flex:1;align-items:flex-start;min-height:0;display:flex}main{min-width:0;max-width:calc(var(--content) + 4rem);flex:1;margin:0 auto;padding:1.8rem 2rem 3rem}.map-pin svg{transform-origin:50% 100%;transition:transform .12s,filter .12s;display:block}.map-pin:hover svg,.map-pin--active svg{filter:drop-shadow(0 3px 5px #1a1a1873);transform:scale(1.25)}.map-pin:hover,.map-pin--active{z-index:10000!important}@media (prefers-reduced-motion:reduce){.map-pin svg{transition:none}}.page-layout.detail-view #map-pane{display:none!important}.page-layout.detail-view main{max-width:calc(var(--content) + 4rem);margin:0 auto}@media (min-width:1050px){main{max-width:none;margin:0}#map-pane{border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;width:400px;height:100vh;display:flex;position:sticky;top:0}#map{flex:1;height:100%}.map-toggle-btn,.map-close-btn{display:none}.header-inner{max-width:none}}@media (max-width:1049px){#map-pane{z-index:500;background:var(--bg);flex-direction:column;display:none;position:fixed;inset:0}#map-pane.open{display:flex}#map{flex:1}.map-close-btn{font-family:var(--sans);color:var(--text-muted);background:var(--bg);border:none;border-bottom:1px solid var(--border);cursor:pointer;text-align:left;flex-shrink:0;padding:.7rem 1rem;font-size:.85rem;font-weight:500;transition:color .15s}.map-close-btn:hover{color:var(--accent)}.map-toggle-btn{font-family:var(--sans);color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:.4rem;margin-bottom:1rem;padding:.4rem .8rem;font-size:.8rem;font-weight:500;transition:all .15s;display:inline-flex}.map-toggle-btn:hover{border-color:var(--accent);color:var(--text)}}.map-popup-name{margin-bottom:.25rem;font-size:.9rem;font-weight:600}.map-popup-meta{color:var(--text-muted);margin-bottom:.35rem;font-size:.78rem}.map-popup-tags{flex-wrap:wrap;gap:.2rem;margin-bottom:.3rem;display:flex}.map-popup-extras{color:var(--text-muted);margin-bottom:.4rem;font-size:.75rem}.map-popup-btn{font-family:var(--sans);color:var(--accent);background:var(--accent-light);border:1px solid var(--accent);cursor:pointer;border-radius:3px;padding:.25rem .6rem;font-size:.78rem;font-weight:600;transition:all .15s}.map-popup-btn:hover{background:var(--accent);color:#fff}.filters{flex-wrap:wrap;gap:2rem;margin-bottom:1.4rem;display:flex}.filter-group{align-items:center;gap:.5rem;display:flex}.filter-group label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap;font-size:.75rem;font-weight:600}.filter-chips{flex-wrap:wrap;gap:.35rem;display:flex}.chip{font-family:var(--mono);border-radius:var(--radius);background:var(--bg-card);box-shadow:var(--chip-shadow);color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;padding:.3rem .6rem;font-size:.72rem;transition:all .15s}.chip:hover{box-shadow:var(--chip-shadow-hover);color:var(--text)}.chip:not(.active):active{box-shadow:var(--chip-shadow-holding)}.chip.active{background:var(--tag-active-bg);color:var(--tag-active-text);box-shadow:var(--chip-shadow-pressed);border-color:#0000}.chip.zero{opacity:.35}.chip.zero:hover{box-shadow:var(--chip-shadow);color:var(--text-muted)}.chip-count{opacity:.65;margin-left:.25rem;font-size:.62rem}.age-dropdown-wrap{display:inline-flex;position:relative}.age-dropdown-btn{align-items:center;gap:.3rem;display:inline-flex}.age-caret{opacity:.7;font-size:.6rem}.age-dropdown{z-index:1200;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;flex-direction:column;min-width:11rem;max-height:16rem;padding:.25rem;display:flex;position:fixed;overflow-y:auto;box-shadow:0 6px 20px #0000002e}.age-option{font-family:var(--mono);color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:3px;justify-content:space-between;align-items:center;gap:.75rem;padding:.35rem .5rem;font-size:.72rem;transition:all .12s;display:flex}.age-option:hover{background:var(--accent-light);color:var(--accent)}.age-option.active{background:var(--tag-active-bg);color:var(--tag-active-text)}.age-option.zero{opacity:.4}.age-option .chip-count{opacity:.7}.age-dropdown-btn .chip-count{margin-left:0}.date-filter{align-items:center;gap:.35rem;display:flex}.date-filter input[type=date]{font-family:var(--mono);border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-card);color:var(--text);min-height:1.75rem;padding:.3rem .5rem;font-size:.72rem}.date-filter input[type=date]:focus{border-color:var(--accent);outline:none}.date-sep{color:var(--text-muted);font-size:.8rem}.filters-more{display:contents}.filters-more-toggle{box-shadow:none;color:var(--accent);font-family:var(--sans);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem;display:none}.filters-more-toggle:hover{text-decoration:underline}.list-header{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);border-bottom:1px solid var(--border);grid-template-columns:11rem 1fr 9rem 7rem 4.5rem 4rem 5rem 6rem;gap:.5rem;padding:.5rem .8rem;font-size:.7rem;font-weight:600;display:grid}.sort-header{cursor:pointer;-webkit-user-select:none;user-select:none}.sort-header:hover{color:var(--accent)}.sort-header.sort-active{color:var(--text)}.event-row{border-bottom:1px solid var(--border-light);cursor:pointer;color:inherit;grid-template-columns:11rem 1fr 9rem 7rem 4.5rem 4rem 5rem 6rem;align-items:center;gap:.5rem;padding:.75rem .8rem;text-decoration:none;transition:background .12s;display:grid}.event-row:hover{background:var(--bg-card);text-decoration:none}.event-row .col-date{font-family:var(--mono);color:var(--text-muted);white-space:nowrap;font-size:.82rem}.event-row .col-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.95rem;font-weight:600;display:-webkit-box;overflow:hidden}.event-row .col-city{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;gap:.3rem;font-size:.85rem;display:-webkit-box;overflow:hidden}.no-map-icon{width:11px;height:11px;color:var(--text-muted);opacity:.5;vertical-align:middle;flex-shrink:0}.map-icon{width:11px;height:11px;color:var(--text-muted);opacity:.6;vertical-align:middle;flex-shrink:0}.event-row .col-mode{flex-wrap:wrap;gap:.25rem;display:flex}.event-row .col-size{font-family:var(--mono);color:var(--text-muted);font-size:.82rem}.event-row .col-surface,.event-row .col-age-group{color:var(--text-muted);font-size:.8rem}.event-row .col-updated{font-family:var(--mono);color:var(--text-muted);font-size:.75rem}.event-row .col-surface-size,.event-row .col-mode-meta{display:none}.type-tag{font-family:var(--mono);vertical-align:middle;border-radius:2px;margin-left:.3rem;padding:.1rem .3rem;font-size:.6rem;font-weight:500}.type-tag[data-type=other]{background:var(--tag-bg);color:var(--text-muted)}.type-tag[data-type=federation]{color:#5b2b8b;letter-spacing:.04em;background:#ece4f5;font-weight:600}.mode-tag{font-family:var(--mono);background:var(--tag-bg);color:var(--text-muted);white-space:nowrap;border-radius:2px;padding:.15rem .4rem;font-size:.65rem;font-weight:500}.mode-tag[data-mode=Mixed]{color:#2d5e2a;background:#e0eddf}.mode-tag[data-mode=Loose\ Mixed]{color:#2a4f5e;background:#dde8ee}.mode-tag[data-mode=Open]{color:#6b4d26;background:#eee4d5}.mode-tag[data-mode=Women]{color:#5e2a4f;background:#eddde8}.hat-badge{background:var(--accent);color:#fff;vertical-align:middle;letter-spacing:.04em;border-radius:2px;margin-left:.3rem;padding:.1rem .35rem;font-size:.6rem;font-weight:600}.cancelled-badge{font-family:var(--mono);color:#8b1a1a;vertical-align:middle;letter-spacing:.04em;background:#f5e0e0;border-radius:2px;margin-left:.3rem;padding:.1rem .35rem;font-size:.6rem;font-weight:600}.event-row--cancelled{opacity:.55}.event-row--cancelled .col-name{-webkit-text-decoration:line-through #999;text-decoration:line-through #999}.detail-cancelled-banner{color:#8b1a1a;background:#f5e0e0;border-left:3px solid #c0392b;border-radius:4px;margin-bottom:1rem;padding:.6rem .9rem;font-size:.9rem;font-weight:500}.empty-state{text-align:center;color:var(--text-muted);padding:3rem 1rem;font-size:.95rem}.loading-state[hidden]{display:none}.loading-state{color:var(--text-muted);flex-direction:column;align-items:center;gap:1rem;padding:4rem 1rem;font-size:.9rem;display:flex}.spinner{border:2px solid var(--border);border-top-color:var(--text-muted);border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.back-btn{font-family:var(--sans);color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-bottom:1.2rem;padding:.3rem 0;font-size:.85rem;font-weight:500;transition:color .15s}.back-btn:hover{color:var(--accent)}.detail-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;overflow:hidden}@media (max-width:600px){.detail-card{padding:1.2rem}}.detail-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;padding-bottom:1.4rem;display:flex}.detail-header h1{letter-spacing:-.02em;font-size:1.6rem;font-weight:700;line-height:1.2}.detail-date-badge{font-family:var(--mono);background:var(--accent);color:#fff;white-space:nowrap;border-radius:3px;flex-shrink:0;padding:.4rem .7rem;font-size:.82rem}.detail-grid{grid-template-columns:1fr 1fr 1fr;gap:1.6rem;margin-bottom:1.8rem;display:grid}.detail-section h3{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-bottom:1px solid var(--border-light);margin-bottom:.8rem;padding-bottom:.4rem;font-size:.7rem;font-weight:600}.detail-section dl{grid-template-columns:auto 1fr;gap:.3rem .8rem;display:grid}.detail-section dt{color:var(--text-muted);white-space:nowrap;font-size:.78rem}.detail-section dd{overflow-wrap:break-word;word-break:break-word;font-size:.88rem;font-weight:500}.detail-emails{flex-direction:column;gap:1.2rem;display:flex}.detail-email{border-top:1px solid var(--border-light);padding-top:1.4rem}.detail-emails-loading{border-top:1px solid var(--border-light);background:linear-gradient(var(--border-light) 0 .7rem, transparent .7rem);border-radius:var(--radius);opacity:.5;background-size:100% 1.5rem;height:6rem;margin-top:1.4rem;padding-top:1.4rem;animation:1.2s ease-in-out infinite alternate detail-emails-fade}@keyframes detail-emails-fade{to{opacity:.2}}@media (prefers-reduced-motion:reduce){.detail-emails-loading{animation:none}}.detail-email h3{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.6rem;font-size:.7rem;font-weight:600}.detail-email h3 a{text-transform:none;letter-spacing:normal;font-size:.7rem}.detail-body{font-family:var(--sans);color:var(--text);white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere;max-width:100%;font-size:.88rem;line-height:1.65}.detail-body--preview{max-height:14.52rem;overflow:hidden;-webkit-mask-image:linear-gradient(#000 50%,#0000 100%);mask-image:linear-gradient(#000 50%,#0000 100%)}.detail-email-expand-btn{color:var(--accent);font-family:var(--sans);cursor:pointer;background:0 0;border:none;margin-top:.1rem;padding:.25rem 0;font-size:.8rem;display:block}.detail-email-expand-btn:hover{text-decoration:underline}.detail-header-right{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.follow-wrap{position:relative}.follow-btn{font-family:var(--sans);color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;white-space:nowrap;align-items:center;gap:.4rem;padding:.4rem .8rem;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.follow-btn i,.follow-btn svg{flex-shrink:0;width:14px;height:14px}.follow-btn .follow-chevron,.follow-btn .follow-chevron svg{width:10px;height:10px;color:var(--text-muted);opacity:.6}.follow-btn:hover{border-color:var(--accent);color:var(--text)}.follow-btn--active{color:var(--accent);border-color:var(--accent);background:var(--accent-light)}.follow-btn--active:hover{background:var(--accent);color:#fff}.share-btn:hover,.calendar-btn:hover{border-color:var(--accent);color:var(--accent)}.follow-menu{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);z-index:200;min-width:11rem;position:absolute;top:calc(100% + 4px);right:0;overflow:hidden;box-shadow:0 4px 16px #0000001a}.follow-menu[hidden]{display:none}.follow-menu-item{width:100%;font-family:var(--sans);color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;padding:.55rem .9rem;font-size:.82rem;font-weight:500;transition:background .12s;display:flex}.follow-menu-item i,.follow-menu-item svg{width:13px;height:13px;color:var(--text-muted);flex-shrink:0}.follow-menu-item:hover{background:var(--bg)}.follow-menu-item--danger{color:var(--accent);border-top:1px solid var(--border-light)}.follow-menu-item--danger i{color:var(--accent)}.follow-menu-note{color:var(--text-muted);border-top:1px solid var(--border-light);margin:0;padding:.45rem .75rem .4rem;font-size:.72rem}.detail-map-wrap{border-radius:var(--radius);border:1px solid var(--border-light);margin-bottom:1.6rem;overflow:hidden}.detail-map-wrap[hidden]{display:none}#detail-map{width:100%;height:220px}.detail-siblings{border-top:1px solid var(--border-light);margin-top:1.6rem;padding-top:1.4rem}.detail-siblings h3{margin:0 0 .7rem;font-size:.95rem}.detail-siblings ul{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.detail-siblings a{border-radius:var(--radius);color:inherit;border:1px solid var(--border-light);grid-template-columns:9rem 1fr auto;align-items:baseline;gap:.8rem;padding:.5rem .7rem;text-decoration:none;display:grid}.detail-siblings a:hover{background:var(--accent-light);border-color:var(--accent)}.detail-siblings .sibling-date{font-variant-numeric:tabular-nums;color:var(--text-muted,#666);font-size:.85rem}.detail-siblings .sibling-name{font-weight:600}.detail-siblings .sibling-loc{color:var(--text-muted,#666);font-size:.85rem}@media (max-width:600px){.detail-siblings a{grid-template-columns:1fr;gap:.15rem}}.detail-series{border-top:1px solid var(--border-light);margin-top:1.4rem;padding-top:1.4rem}.series-btn{font-family:var(--sans);color:var(--accent);background:var(--accent-light);border:1px solid var(--accent);border-radius:var(--radius);cursor:pointer;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:all .15s}.series-btn:hover{background:var(--accent);color:#fff}.series-banner{background:var(--accent-light);border:1px solid var(--accent);border-radius:var(--radius);align-items:center;gap:.8rem;margin-bottom:1rem;padding:.6rem .8rem;font-size:.85rem;display:flex}.series-banner strong{color:var(--accent)}.series-banner button{font-family:var(--sans);border:1px solid var(--border);cursor:pointer;color:var(--text-muted);background:0 0;border-radius:3px;margin-left:auto;padding:.2rem .5rem;font-size:.75rem}.series-banner button:hover{border-color:var(--accent);color:var(--text)}footer{border-top:1px solid var(--border);margin-top:auto;padding:1.8rem 2rem}.footer-inner{max-width:var(--content);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:2rem;margin:0 auto;display:flex}.footer-cols{flex-wrap:wrap;gap:3rem;display:flex}.footer-col{flex-direction:column;gap:.35rem;display:flex}.footer-col-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.2rem;font-size:.7rem;font-weight:700}.footer-col a{color:var(--text-muted);font-size:.82rem;text-decoration:none}.footer-col a:hover{color:var(--accent);text-decoration:none}.coffee-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);white-space:nowrap;padding:.35rem .7rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:all .15s}.coffee-btn:hover,.refresh-btn:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}.footer-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.refresh-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text-muted);white-space:nowrap;cursor:pointer;padding:.35rem .7rem;font-size:.75rem;font-weight:600;transition:all .15s}.refresh-btn:disabled{opacity:.5;cursor:default}.deadline-soon{color:var(--accent);font-weight:600}.deadline-badge{color:#1a4b8b;vertical-align:middle;letter-spacing:.04em;background:#e0ecf5;border-radius:2px;margin-left:.3rem;padding:.1rem .35rem;font-size:.6rem;font-weight:600}.deadline-badge--urgent{color:#8b4a1a;background:#f5e8e0}.inbox-main{padding:1.5rem 1rem 3rem;overflow:hidden}@media (min-width:600px){.inbox-main{padding:1.5rem 2rem 3rem}}.inbox-intro{max-width:48rem;color:var(--text-muted);margin-bottom:1.25rem;font-size:.875rem;line-height:1.6}.inbox-intro a{color:var(--accent);text-decoration:none}.inbox-intro a:hover{text-decoration:underline}.inbox-badge,.inbox-badge-inline{letter-spacing:.03em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);vertical-align:middle;white-space:nowrap;opacity:.85;border-radius:3px;padding:.05em .4em;font-size:.65rem;font-weight:600;display:inline-block}a.inbox-badge{text-decoration:none;transition:background .12s,color .12s,opacity .12s}a.inbox-badge:hover{background:var(--accent);color:#fff;opacity:1}.inbox-toolbar{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.inbox-search{font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);flex:1;max-width:24rem;padding:.65rem 1rem;font-size:1rem}.inbox-search:focus{border-color:var(--accent);outline:none}.inbox-count{font-family:var(--mono);color:var(--text-muted);font-size:.75rem}.inbox-row{border-bottom:1px solid var(--border-light);cursor:pointer;grid-template-columns:4.5rem 10rem 1fr 1fr 8rem;align-items:center;gap:.8rem;padding:.6rem .8rem;transition:background .12s;display:grid}.inbox-row:hover{background:var(--bg-card)}.inbox-source-tag{white-space:nowrap;letter-spacing:.02em;border-radius:3px;padding:.15em .45em;font-size:.65rem;font-weight:600;display:inline-block}.inbox-source-tag-mobile{white-space:nowrap;letter-spacing:.02em;vertical-align:middle;border-radius:3px;margin-left:.4em;padding:.1em .35em;font-size:.6rem;font-weight:600;display:none}.inbox-source-tag.source-wurfpost,.inbox-source-tag-mobile.source-wurfpost{background:var(--bg-card);color:var(--text-muted);border:1px solid var(--border-light)}.inbox-source-tag.source-eurodisc,.inbox-source-tag-mobile.source-eurodisc{color:#3b5bdb;background:#e8f0fe;border:1px solid #bfcef7}.inbox-author{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.inbox-subject{align-items:center;gap:.4rem;font-size:.85rem;font-weight:500;display:flex;overflow:hidden}.inbox-subject>:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.inbox-preview{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.inbox-date{font-family:var(--mono);color:var(--text-muted);text-align:right;white-space:nowrap;font-size:.72rem}.inbox-pagination{color:var(--text-muted);justify-content:center;align-items:center;gap:1rem;padding:1.5rem 0;font-size:.9rem;display:flex}.inbox-pagination button{border:1px solid var(--border);cursor:pointer;color:var(--text);background:0 0;border-radius:4px;padding:.3rem .75rem;font-size:.85rem}.inbox-pagination button:disabled{opacity:.35;cursor:default}.inbox-loading,.inbox-empty{text-align:center;color:var(--text-muted);padding:3rem 1rem;font-size:.95rem}.inbox-message{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0;padding:2rem;overflow:hidden}.inbox-detail{max-width:900px;margin:0 auto}.inbox-msg-header{border-bottom:1px solid var(--border-light);margin-bottom:1.5rem;padding-bottom:1rem}.inbox-msg-header h2{margin-bottom:.5rem;font-size:1.3rem;font-weight:700}.inbox-msg-meta{color:var(--text-muted);flex-wrap:wrap;gap:1.5rem;font-size:.82rem;display:flex}.inbox-msg-meta span:first-child{color:var(--text);font-weight:600}.inbox-msg-body{font-family:var(--sans);white-space:pre-wrap;word-wrap:break-word;word-break:break-word;overflow-wrap:anywhere;max-width:100%;color:var(--text);font-size:.9rem;line-height:1.65}.auth-btn{font-family:var(--mono);border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);cursor:pointer;white-space:nowrap;border-radius:3px;margin-left:auto;padding:.3rem .7rem;font-size:.72rem;transition:all .15s}.auth-btn:hover{border-color:var(--accent);color:var(--text)}.lang-btn{font-family:var(--mono);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:3px;padding:.3rem .6rem;font-size:.72rem;transition:all .15s}.lang-btn:hover{border-color:var(--accent);color:var(--text)}.login-prompt-btn{font-family:var(--sans);color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:.88rem;font-weight:500;text-decoration:underline}.login-modal-overlay{z-index:1000;background:#1a1a1873;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.login-modal-overlay[hidden]{display:none}.login-modal-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:22rem;margin:1rem;padding:2rem;position:relative}.login-modal-box h2{margin-bottom:.4rem;font-size:1.1rem;font-weight:700}.login-modal-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:.2rem;font-size:1.4rem;line-height:1;position:absolute;top:.9rem;right:1rem}.login-modal-close:hover{color:var(--text)}.login-email-input{width:100%;font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);margin-bottom:.7rem;padding:.55rem .8rem;font-size:.9rem;display:block}.login-email-input:focus{border-color:var(--accent);outline:none}.login-email-input[hidden]{display:none}.login-submit-btn{width:100%;font-family:var(--sans);background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:.55rem 1rem;font-size:.9rem;font-weight:600;transition:opacity .15s;display:block}.login-submit-btn:hover{opacity:.87}.login-submit-btn:disabled{opacity:.5;cursor:default}.login-error{color:var(--accent);margin-bottom:.6rem;font-size:.82rem}.login-mode-toggle{text-align:center;color:var(--text-muted);margin-top:.9rem;font-size:.8rem}.login-mode-btn{color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:.8rem;text-decoration:underline}.login-success-msg{text-align:center;padding:.5rem 0 .2rem}.login-success-msg .checkmark{color:var(--accent);margin-bottom:.7rem;font-size:2rem}.login-success-msg p{color:var(--text-muted);font-size:.88rem;line-height:1.5}.profile-main{max-width:900px;margin:0 auto;padding:2rem 1rem 3rem;overflow:hidden}@media (min-width:600px){.profile-main{padding:2rem 2rem 3rem}}.account-main{overflow-x:clip}.profile-gated{color:var(--text-muted);padding:2rem 0;font-size:.95rem}.account-layout{grid-template-columns:15rem minmax(0,1fr);align-items:start;gap:2.5rem;display:grid}.account-nav{flex-direction:column;gap:1.1rem;display:flex;position:sticky;top:1.5rem}.account-nav-head{flex-direction:column;gap:.15rem;padding:0 .6rem;display:flex}.account-nav-title{font-size:1.25rem;font-weight:700}.account-nav-email{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.account-nav-group{flex-direction:column;gap:.1rem;display:flex}.account-nav-group-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:0 .6rem .3rem;font-size:.7rem;font-weight:600}.account-nav-item{border-radius:var(--radius);color:var(--text);align-items:center;gap:.6rem;padding:.45rem .6rem;font-size:.9rem;text-decoration:none;transition:background .15s,color .15s;display:flex}.account-nav-item svg{color:var(--text-muted);flex-shrink:0}.account-nav-item:hover{background:var(--tag-bg);text-decoration:none}.account-nav-item.active{background:var(--accent-light);color:var(--accent);font-weight:600}.account-nav-item.active svg{color:var(--accent)}.account-nav-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.account-nav-count{background:var(--tag-bg);text-align:center;min-width:20px;color:var(--text-muted);border-radius:9px;padding:0 5px;font-size:.72rem;font-weight:600;line-height:18px}.account-nav-item.active .account-nav-count{background:var(--bg-card);color:var(--accent)}.account-panel{min-width:0;max-width:900px}.account-panel-title{border-bottom:1px solid var(--border);align-items:center;gap:.6rem;margin-bottom:.4rem;padding-bottom:.7rem;font-size:1.35rem;font-weight:700;display:flex}.account-panel-title svg{color:var(--accent)}@media (max-width:799px){.account-layout{grid-template-columns:minmax(0,1fr);gap:1.2rem}.account-nav{scrollbar-width:none;flex-direction:row;gap:.4rem;margin:0 -2rem;padding:0 2rem .3rem;position:static;overflow-x:auto}.account-nav::-webkit-scrollbar{display:none}.account-nav-head,.account-nav-group-label{display:none}.account-nav-group{flex-direction:row;gap:.4rem}.account-nav-item{background:var(--bg-card);box-shadow:var(--chip-shadow);border-radius:999px;flex-shrink:0;padding:.4rem .75rem;font-size:.85rem}.account-nav-item.active{box-shadow:var(--chip-shadow-pressed)}.account-nav-label{overflow:visible}.account-panel-title{font-size:1.15rem}}@media (max-width:720px){.account-nav{margin:0 -1rem;padding:0 1rem .3rem}}.profile-follow-row,.profile-search-row{border-bottom:1px solid var(--border-light);align-items:center;gap:1rem;padding:.8rem 0;display:flex}.profile-follow-info,.profile-search-info{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.profile-follow-name,.profile-search-label{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;text-decoration:none;overflow:hidden}.profile-follow-name:hover,.profile-search-label:hover{color:var(--accent);text-decoration:none}.profile-follow-loc,.profile-search-summary{color:var(--text-muted);font-size:.78rem}.profile-row-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.profile-delete-btn{cursor:pointer;color:var(--text-muted);border-radius:var(--radius);background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;line-height:1;transition:color .15s,background .15s;display:inline-flex}.profile-delete-btn svg,.profile-delete-btn i{width:14px;height:14px}.profile-delete-btn:hover{color:var(--accent);background:var(--accent-light)}.profile-follows-note{color:var(--text-muted);margin:.5rem 0 0;font-size:.75rem}.notif-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.notif-checkbox{opacity:0;width:0;height:0;position:absolute}.notif-slider{background:var(--border);border-radius:9px;flex-shrink:0;width:32px;height:18px;transition:background .2s;display:inline-block;position:relative}.notif-slider:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0000002e}.notif-checkbox:checked+.notif-slider{background:var(--accent)}.notif-checkbox:checked+.notif-slider:after{transform:translate(14px)}.notif-label{color:var(--text-muted);white-space:nowrap;font-size:.75rem}.location-filter{flex-direction:column;gap:.35rem;display:flex}.location-input-row{align-items:center;gap:.25rem;display:flex}.location-plz-input{font-family:var(--mono);border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-card);color:var(--text);width:5rem;min-height:1.75rem;padding:.3rem .5rem;font-size:.72rem}.location-plz-input:focus{border-color:var(--accent);outline:none}.location-gps-btn{border-radius:var(--radius);background:var(--bg-card);width:1.75rem;height:1.75rem;box-shadow:var(--chip-shadow);color:var(--text-muted);cursor:pointer;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.location-gps-btn svg,.location-gps-btn i{pointer-events:none;width:13px;height:13px}.location-gps-btn:hover{box-shadow:var(--chip-shadow-hover);color:var(--accent)}.location-gps-btn.active{background:var(--tag-active-bg);color:var(--tag-active-text);box-shadow:var(--chip-shadow-pressed);border-color:#0000}.location-gps-btn.loading{opacity:.5;pointer-events:none}.location-clear-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.1rem .15rem;font-size:1rem;line-height:1}.location-clear-btn:hover{color:var(--text)}.location-radius-chips[hidden]{display:none}.event-row--outside-range{opacity:.45}.save-search-bar{margin:.6rem 0 .2rem}.save-search-bar[hidden]{display:none}.save-search-trigger{font-family:var(--sans);color:var(--accent);background:var(--accent-light);border:1px solid var(--accent);border-radius:var(--radius);cursor:pointer;align-items:center;gap:.35rem;padding:.35rem .8rem;font-size:.8rem;font-weight:600;transition:all .15s;display:inline-flex}.save-search-trigger svg,.save-search-trigger i{width:13px;height:13px}.save-search-trigger:hover{background:var(--accent);color:#fff}.save-search-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.4rem;padding:.6rem .8rem;display:flex}.save-search-form[hidden]{display:none}.save-search-input{min-width:160px;font-family:var(--sans);color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);outline:none;flex:1;padding:.35rem .6rem;font-size:.88rem}.save-search-input:focus{border-color:var(--accent)}.save-search-save{font-family:var(--sans);color:#fff;background:var(--accent);border-radius:var(--radius);cursor:pointer;border:none;padding:.35rem .75rem;font-size:.82rem;font-weight:600;transition:opacity .15s}.save-search-save:hover{opacity:.85}.save-search-cancel{font-family:var(--sans);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:0 0;padding:.35rem .65rem;font-size:.82rem;font-weight:500;transition:border-color .15s,color .15s}.save-search-cancel:hover{border-color:var(--text-muted);color:var(--text)}.legal-page{max-width:720px}.legal-page h1{margin-bottom:.4rem;font-size:1.8rem;font-weight:700}.legal-page .legal-updated{color:var(--text-muted);margin-bottom:2rem;font-size:.85rem}.legal-page h2{margin-top:2rem;margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.legal-page h3{margin-top:1.2rem;margin-bottom:.4rem;font-size:.95rem;font-weight:600}.legal-page p{color:var(--text);margin-bottom:.75rem;line-height:1.6}.legal-page ul{margin-bottom:.75rem;padding-left:1.4rem;line-height:1.7}.faq-list{margin-top:1.5rem}.faq-item{border-bottom:1px solid var(--border)}.faq-item:first-child{border-top:1px solid var(--border)}.faq-item summary{cursor:pointer;color:var(--text);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;font-size:1rem;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;flex-shrink:0;width:1rem;height:1rem;transition:transform .2s}.faq-item[open] summary:after{transform:rotate(180deg)}.faq-item summary:hover{color:var(--accent)}.faq-item .faq-body{padding-bottom:1.2rem}.faq-item .faq-body p{color:var(--text);margin-bottom:.75rem;line-height:1.6}.faq-item .faq-body p:last-child{margin-bottom:0}.faq-item .faq-body pre{margin:0}.faq-code-wrap{margin:.75rem 0;position:relative}.faq-copy-btn{background:var(--bg);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:4px;padding:.2rem .55rem;font-size:.75rem;line-height:1.4;position:absolute;top:.5rem;right:.5rem}.faq-copy-btn:hover{color:var(--text);border-color:var(--text-muted)}.cookie-table{border-collapse:collapse;width:100%;margin:1rem 0 1.2rem;font-size:.9rem}.cookie-table th,.cookie-table td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:.55rem .75rem}.cookie-table th{background:var(--tag-bg);font-weight:600}.cookie-table code{font-family:var(--mono);font-size:.82rem}@media (max-width:960px){header{padding:1.2rem 1rem}.logo img{width:1.25rem;height:1.25rem}.logo{font-size:1.25rem}.header-end{background:var(--bg);border-bottom:2px solid var(--text);z-index:100;flex-direction:column;align-items:flex-start;gap:.4rem;padding:.8rem 1rem 1rem;display:none;position:absolute;top:100%;left:0;right:0}.header-end.menu-open{display:flex}.header-end .header-nav{flex-direction:column;gap:0;width:100%}.header-end .header-nav .nav-link{border-radius:4px;width:100%;padding:.65rem .5rem;font-size:.95rem}.header-end .auth-btn{margin-top:.4rem}.menu-btn{cursor:pointer;color:var(--text);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;margin-left:auto;padding:.4rem;display:flex}.menu-btn:hover{background:var(--tag-bg)}}@media (max-width:720px){main{padding:1.2rem 1rem 2rem}.list-header{display:none}.event-row{grid-template-columns:1fr;gap:.2rem;padding:.8rem .5rem}.event-row .col-date{order:-1;font-size:.75rem}.event-row .col-name{white-space:normal;font-size:1rem}.event-row .col-city{font-size:.8rem}.event-row .col-surface,.event-row .col-size,.event-row .col-age-group,.event-row .col-updated,.event-row .col-surface-size{display:none}.event-row .col-mode-meta{color:var(--text-muted);align-self:center;margin-left:.4rem;font-size:.78rem;display:inline}.detail-grid{grid-template-columns:1fr;gap:1.2rem}.detail-header{flex-direction:column}.detail-header-right{align-self:flex-start}.filters{grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:.6rem;margin-bottom:1rem;display:grid}.filters .filter-group{display:contents}.filters .filter-group label{letter-spacing:.05em;min-height:var(--filter-tap);align-items:center;font-size:.62rem;display:flex}.filters .filter-chips{scrollbar-width:none;flex-wrap:nowrap;gap:.4rem;margin:-.4rem;padding:.4rem;overflow:auto hidden}.filters .filter-chips::-webkit-scrollbar{display:none}.filters .chip,.filters .age-dropdown-wrap{flex:none}.filters .filter-chips.has-more{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),#0000)}.filters .age-option{min-height:var(--filter-tap)}.filters .chip{min-height:var(--filter-tap);align-items:center;padding:0 .6rem;font-size:.7rem;display:inline-flex}.filters .date-filter input[type=date],.filters .location-plz-input{min-height:var(--filter-tap);padding:0 .55rem;font-size:.7rem}.filters .location-plz-input{width:5.5rem}.filters .location-gps-btn,.filters .location-clear-btn{width:var(--filter-tap);height:var(--filter-tap);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.filters .location-clear-btn{background:var(--bg-card);box-shadow:var(--chip-shadow);border-radius:var(--radius)}.filters-more-toggle{min-height:var(--filter-tap);grid-column:2;justify-self:start;align-items:center;gap:.25rem;display:inline-flex}.filters-more-toggle .chip-count{margin-left:0}.filters-more-toggle[aria-expanded=true] .age-caret{transform:rotate(180deg)}.filters-more[data-open=false]{display:none}.inbox-toolbar{flex-direction:column;align-items:flex-start;gap:.6rem}.inbox-search{width:100%;max-width:100%}.inbox-row{grid-template-columns:1fr;gap:.15rem;padding:.7rem .5rem}.inbox-row .inbox-preview{display:none}.inbox-row .inbox-date{text-align:left}.inbox-row .inbox-source-tag{display:none}.inbox-row .inbox-source-tag-mobile{display:inline-block}.inbox-message{padding:1rem}.inbox-msg-header h2{word-break:break-word;font-size:1.1rem}.inbox-msg-meta{gap:.5rem}.inbox-msg-body{max-width:100%;font-size:.82rem}}.detail-pickup-section{border-top:1px solid var(--border-light);margin-top:2rem;padding-top:1.5rem}.detail-pickup-section[hidden]{display:none}.detail-pickup-heading{color:var(--text);align-items:center;gap:.4rem;margin-bottom:.9rem;font-size:1rem;font-weight:700;display:flex}.pickup-help-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;align-items:center;padding:0;font-size:1rem;line-height:1;display:inline-flex}.pickup-help-btn:hover{color:var(--text)}.pickup-help-btn svg,.pickup-help-btn i{width:.95rem;height:.95rem;line-height:1}.pickup-help-box{max-width:22rem}.pickup-help-content p{color:var(--text-muted);margin-bottom:.75rem;font-size:.85rem;line-height:1.5}.pickup-help-content p:last-child{margin-bottom:0}.pickup-help-content strong{color:var(--text)}.pickup-list{flex-direction:column;margin-bottom:1rem;display:flex}.pickup-row{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;display:flex}.pickup-row:last-child{border-bottom:none}.pickup-row-info{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.pickup-row-name{color:var(--text);font-size:1rem;font-weight:600}.pickup-row-meta{color:var(--text-muted);font-size:.78rem}.pickup-row-action{flex-shrink:0}.pickup-own-tag{background:var(--accent-light);color:var(--accent);vertical-align:.12em;border-radius:4px;margin-left:.45rem;padding:.05rem .4rem;font-size:.68rem;font-weight:600;display:inline-block}.pickup-row-remove{border-radius:var(--radius);color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:-.5rem -.5rem -.5rem 0;padding:.5rem;transition:color .15s,background .15s;display:inline-flex}.pickup-row-remove:hover{color:var(--accent);background:var(--accent-light)}@media (max-width:640px){.pickup-row{grid-template-columns:minmax(0,1fr) auto;gap:.5rem .75rem;display:grid}.pickup-row-info{grid-area:1/1}.pickup-row-action{grid-area:2/1;justify-self:start}.pickup-row-remove{grid-area:1/2;align-self:start;margin-top:-.25rem;margin-bottom:0}.pickup-contact-btn,.pickup-mark-solved-btn{padding:.4rem .7rem}}.pickup-solved-badge{color:#388e3c;white-space:nowrap;background:#e8f5e9;border-radius:4px;padding:.15rem .45rem;font-size:.7rem;font-weight:600;display:inline-block}.pickup-edit-prompt{color:var(--accent);align-items:center;gap:.3rem;font-size:.8rem;text-decoration:none;display:inline-flex}.pickup-edit-prompt:hover{text-decoration:underline}.pickup-edit-prompt svg,.pickup-edit-prompt i{flex-shrink:0;width:12px;height:12px}.pickup-contact-btn{font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);cursor:pointer;white-space:nowrap;padding:.25rem .6rem;font-size:.78rem;font-weight:500;transition:border-color .15s,color .15s}.pickup-contact-btn:hover{border-color:var(--accent);color:var(--accent)}.pickup-contact-count{color:var(--accent);font-size:.78rem;font-weight:600}.pickup-mark-solved-btn{font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);cursor:pointer;white-space:nowrap;padding:.3rem .65rem;font-size:.78rem;font-weight:500;transition:border-color .15s,color .15s}.pickup-mark-solved-btn:hover{color:#388e3c;border-color:#388e3c}.pickup-mark-solved-btn:disabled{opacity:.5;cursor:default}.pickup-register-btn{font-family:var(--sans);background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:.55rem 1.1rem;font-size:.85rem;font-weight:600;transition:opacity .15s}.pickup-register-btn:hover{opacity:.87}.pickup-register-btn:disabled{opacity:.5;cursor:default}.pickup-inline-form{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);max-width:420px;margin-bottom:1rem;padding:1.1rem 1.2rem}.pickup-inline-form p{color:var(--text-muted);margin-bottom:.8rem;font-size:.82rem}.pickup-inline-form input,.pickup-inline-form select{width:100%;font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);box-sizing:border-box;height:2.4rem;margin-bottom:.65rem;padding:.5rem .75rem;font-size:.88rem;display:block}.pickup-inline-form input:focus,.pickup-inline-form select:focus{border-color:var(--accent);outline:none}.pickup-inline-form-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.pickup-submit-btn{font-family:var(--sans);background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:opacity .15s}.pickup-submit-btn:hover{opacity:.87}.pickup-submit-btn:disabled{opacity:.5;cursor:default}.pickup-cancel-btn{font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;background:0 0;padding:.5rem .8rem;font-size:.85rem}.pickup-note-box{color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.8rem;padding:.6rem .8rem;font-size:.82rem;line-height:1.5}.pickup-note-box a{color:var(--accent);word-break:break-all}.pickup-empty-note{color:var(--text-muted);margin-bottom:.8rem;font-size:.82rem}.pickup-contact-modal{z-index:1000;background:#1a1a1873;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pickup-contact-modal[hidden]{display:none}.pickup-contact-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:26rem;margin:1rem;padding:2rem;position:relative}.pickup-contact-box h2{margin-bottom:.25rem;font-size:1.05rem;font-weight:700}.pickup-contact-box .pickup-contact-subtitle{color:var(--text-muted);margin-bottom:1rem;font-size:.8rem}.pickup-contact-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:.2rem;font-size:1.4rem;line-height:1;position:absolute;top:.9rem;right:1rem}.pickup-contact-close:hover{color:var(--text)}.pickup-contact-box textarea{width:100%;font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);resize:vertical;min-height:100px;margin-bottom:.7rem;padding:.55rem .8rem;font-size:.88rem;display:block}.pickup-contact-box textarea:focus{border-color:var(--accent);outline:none}.pickup-contact-from{color:var(--text-muted);margin-bottom:.9rem;font-size:.78rem}.pickup-contact-error{color:var(--accent);margin-bottom:.5rem;font-size:.82rem}.pickup-contact-success{text-align:center;padding:.5rem 0}.pickup-contact-success .checkmark{color:#388e3c;margin-bottom:.5rem;font-size:2rem}.pickup-contact-success p{color:var(--text-muted);font-size:.88rem}.profile-pickup-form{padding:.8rem 0 .4rem}.profile-pickup-form input,.profile-pickup-form select{font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);box-sizing:border-box;width:100%;max-width:320px;height:2.4rem;margin-bottom:.65rem;padding:.5rem .75rem;font-size:.88rem;display:block}.profile-pickup-form input:focus,.profile-pickup-form select:focus{border-color:var(--accent);outline:none}.profile-pickup-save-btn{font-family:var(--sans);background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:.5rem 1.1rem;font-size:.85rem;font-weight:600;transition:opacity .15s}.profile-pickup-save-btn:hover{opacity:.87}.profile-pickup-save-btn:disabled{opacity:.5;cursor:default}.profile-pickup-saved-note{color:#388e3c;margin-left:.6rem;font-size:.78rem}.profile-reg-row{border-bottom:1px solid var(--border-light);flex-wrap:wrap;align-items:center;gap:1rem;padding:.7rem 0;display:flex}.profile-reg-info{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.profile-reg-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;text-decoration:none;overflow:hidden}.profile-reg-name:hover{color:var(--accent)}.profile-reg-meta{color:var(--text-muted);font-size:.75rem}.profile-reg-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.profile-reg-solve-btn{font-family:var(--sans);border-radius:var(--radius);color:#388e3c;cursor:pointer;white-space:nowrap;background:#e8f5e9;border:1px solid #a5d6a7;padding:.25rem .6rem;font-size:.75rem;font-weight:500;transition:background .15s}.profile-reg-solve-btn:hover{background:#c8e6c9}.profile-reg-solve-btn:disabled{opacity:.5;cursor:default}.clubs-source-note{color:var(--text-muted);margin-bottom:1rem;font-size:.8rem;line-height:1.5}.clubs-source-note a{color:var(--accent)}.clubs-list-header{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);grid-template-columns:1fr 8rem 1fr 11rem 6rem;gap:.5rem;padding:.5rem .8rem;font-size:.7rem;font-weight:600;display:grid}.club-row{border-bottom:1px solid var(--border-light);cursor:pointer;color:var(--text);grid-template-columns:1fr 8rem 1fr 11rem 6rem;gap:.5rem;padding:.75rem .8rem;text-decoration:none;transition:background .12s;display:grid}.club-row:hover{background:var(--bg-card);text-decoration:none}.col-club-name{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.col-club-city{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;overflow:hidden}.col-club-teams{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.club-team-count{color:var(--text);margin-right:.3rem;font-weight:600}.club-team-names{font-size:.78rem}.col-club-divisions{flex-wrap:nowrap;align-items:center;gap:.2rem;display:flex;overflow:hidden}.col-club-season{color:var(--text-muted);font-size:.82rem;font-family:var(--mono);text-align:right}.club-association{color:var(--text-muted);margin-top:.2rem;font-size:.82rem}.club-comment{color:var(--text-muted);background:var(--tag-bg);border-radius:var(--radius);margin-bottom:1.5rem;padding:.8rem;font-size:.85rem;line-height:1.5}.club-teams-section{border-top:1px solid var(--border-light);margin-top:1.5rem;padding-top:1.2rem}.club-header-left{align-items:center;gap:.8rem;min-width:0;display:flex}.club-logo{object-fit:contain;border-radius:var(--radius);background:var(--tag-bg);flex-shrink:0;width:52px;height:52px}.club-hosted-section{border-top:1px solid var(--border-light);margin-top:1.5rem;padding-top:1.2rem}.club-hosted-list{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.club-hosted-list li a{background:var(--tag-bg);border-radius:var(--radius);color:var(--text);padding:.35rem .7rem;font-size:.85rem;text-decoration:none;display:inline-block}.club-hosted-list li a:hover{background:var(--border-light)}.detail-section-heading{color:var(--text);margin-bottom:.9rem;font-size:1rem;font-weight:700}.team-item{border:1px solid var(--border-light);border-radius:var(--radius);margin-bottom:.5rem;overflow:hidden}.team-item-toggle{cursor:pointer;text-align:left;width:100%;color:inherit;font:inherit;background:0 0;border:none;padding:.8rem;transition:background .12s;display:block;position:relative}.team-item-toggle:hover:not(:disabled){background:var(--bg-hover)}.team-item-toggle:disabled{cursor:default}.team-item-chevron{color:var(--text-muted);font-size:.65rem;position:absolute;top:.8rem;right:.8rem}.team-item-header{flex-wrap:wrap;align-items:center;gap:.5rem;padding-right:1.5rem;display:flex}.team-item-name{font-size:.92rem;font-weight:600}.team-item-meta{color:var(--text-muted);margin-top:.25rem;font-size:.78rem}.team-item-event-count{color:var(--text-muted)}.team-item-comment{color:var(--text-muted);margin-top:.3rem;font-size:.8rem;font-style:italic}.team-events-list{border-top:1px solid var(--border-light);padding:0 .8rem .8rem}.team-events-empty{color:var(--text-muted);padding:.6rem .8rem;font-size:.8rem}.team-events-year{margin-top:.6rem}.team-events-year-label{color:var(--text-muted);font-size:.75rem;font-weight:700;font-family:var(--mono);margin-bottom:.2rem}.team-event-row{border-bottom:1px solid var(--border-light);grid-template-columns:3.5rem 1fr auto 2.5rem;align-items:center;gap:.4rem;padding:.3rem 0;font-size:.8rem;display:grid}.team-event-row:last-child{border-bottom:none}.team-event-date{color:var(--text-muted);font-family:var(--mono);font-size:.75rem}.team-event-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.team-event-roster{color:var(--text-muted);font-size:.75rem}.team-event-meta{align-items:center;gap:.3rem;display:flex}.team-event-meta .mode-tag{padding:.05rem .3rem;font-size:.6rem}.team-event-league,.team-event-surface{color:var(--text-muted);font-size:.7rem}.team-event-standing{text-align:right;font-family:var(--mono);color:var(--text-muted);font-size:.78rem;font-weight:600}.team-search-wrap{position:relative}.team-search-results{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius);z-index:10;max-height:260px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #0000001a}.team-search-item{cursor:pointer;text-align:left;border:none;border-bottom:1px solid var(--border-light);background:0 0;flex-wrap:wrap;align-items:center;gap:.3rem .5rem;width:100%;padding:.5rem .7rem;font-size:.85rem;display:flex}.team-search-item:last-child{border-bottom:none}.team-search-item:hover{background:var(--bg-hover)}.team-search-name{font-weight:600}.team-search-club{color:var(--text-muted);font-size:.78rem}.team-search-divs{gap:.25rem;display:flex}.team-search-divs .mode-tag{padding:.1rem .35rem;font-size:.65rem}#team-detail-map{border-radius:var(--radius);height:250px}@media (max-width:700px){.clubs-list-header{display:none}.club-row{grid-template-columns:1fr;gap:.15rem;padding:.7rem .5rem}.col-club-city,.col-club-teams{font-size:.78rem}.col-club-season{display:none}.team-event-row{grid-template-columns:3rem 1fr 2rem}.team-event-meta{display:none}}.pickup-card-badge{vertical-align:middle;align-items:center;gap:.35rem;margin-left:.3rem;display:inline-flex}.pickup-card-badge-part{background:var(--accent-light);color:var(--accent);letter-spacing:.02em;white-space:nowrap;border-radius:2px;align-items:center;gap:.15rem;padding:.1rem .35rem;font-size:.6rem;font-weight:600;display:inline-flex}.pickup-card-badge-part svg{width:.7rem;height:.7rem}.pickups-title{color:var(--text);margin-bottom:.4rem;font-size:1.5rem;font-weight:700}.pickups-intro{color:var(--text-muted);max-width:42rem;margin-bottom:1.75rem;font-size:.9rem;line-height:1.5}.pickups-main{max-width:900px;margin:0 auto;padding:2rem 1rem 3rem}@media (min-width:600px){.pickups-main{padding:2rem 2rem 3rem}}.pickups-overview{flex-direction:column;gap:2rem;display:flex}.pickups-event-group{border:1px solid var(--border-light);border-radius:8px;padding:1rem 1.25rem .5rem}.pickups-event-header{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.5rem;display:flex}.pickups-event-name{color:var(--text);font-size:1.1rem;font-weight:700;text-decoration:none}a.pickups-event-name:hover{color:var(--accent)}.pickups-event-date{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:.8rem}.pickups-sublist{margin-top:.5rem}.pickups-sublist-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);align-items:center;gap:.35rem;margin:.75rem 0 .25rem;font-size:.8rem;font-weight:600;display:flex}.list-toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.6rem 0 1rem;display:flex}.list-toolbar .map-toggle-btn{margin-bottom:0}.list-toolbar .save-search-bar{flex:auto;min-width:0;margin:0}.detail-header-title{min-width:0}.detail-pickup-link{color:var(--accent);align-items:center;gap:.3rem;margin-top:.35rem;font-size:.85rem;text-decoration:none;display:inline-flex}.detail-pickup-link svg{flex-shrink:0}.detail-pickup-link:hover{text-decoration:underline}.action-bar{display:none}@media (max-width:700px){.action-bar{z-index:1100;padding:.6rem .8rem;padding-bottom:calc(.6rem + env(safe-area-inset-bottom));background:var(--bg-card);border-top:1px solid var(--border);gap:.5rem;display:flex;position:fixed;bottom:0;left:0;right:0}.action-bar[data-compact=true]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.action-bar-secondary{flex:1;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:.5rem;display:grid}.action-bar .follow-wrap,.action-bar .follow-btn,.action-bar-primary{min-width:0}.action-bar .follow-wrap{display:grid}.action-bar .follow-btn span,.action-bar-primary span{text-overflow:ellipsis;overflow:hidden}.action-bar .follow-btn,.action-bar-primary{width:100%;min-height:44px;font-family:var(--sans);border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;gap:.4rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.action-bar .follow-btn{color:var(--accent);background:var(--accent-light);border:1px solid var(--accent)}.action-bar-primary{color:#fff;background:var(--accent);border:1px solid var(--accent);padding:0}.action-bar-primary:hover,.action-bar-primary:active{background:#b8400f}.action-bar[data-compact=true] .follow-btn span,.action-bar[data-compact=true] .follow-chevron{display:none}.action-bar .follow-menu{top:auto;bottom:calc(100% + .4rem)}.detail-card--has-action-bar .detail-header-right{display:none}.detail-view,.detail-card{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}}.planner-title{margin:0 0 .4rem;font-size:1.3rem;font-weight:600}.planner-title svg{vertical-align:-2px;color:var(--vote-yes)}.planner-intro{color:var(--text-muted);max-width:46rem;margin:0 0 1.2rem;font-size:.9rem}.planner-subheading{margin:1.6rem 0 .4rem;font-size:.95rem;font-weight:600}.planner-back-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:.3rem;margin-bottom:.8rem;padding:0;font-size:.85rem;display:inline-flex}.planner-back-btn:hover{color:var(--accent)}.planner-select{padding-bottom:calc(5rem + env(safe-area-inset-bottom))}.list-header--selectable,.event-row--selectable{padding-left:2.4rem;position:relative}.list-header--selectable .col-select{display:none}.event-row--selectable .col-select{align-items:center;display:flex;position:absolute;top:50%;left:.7rem;transform:translateY(-50%)}.event-select-box{width:1rem;height:1rem;accent-color:var(--accent);pointer-events:none}.event-row--selected,.event-row--selected:hover{background:var(--accent-light)}.planner-form{flex-direction:column;gap:.4rem;max-width:32rem;display:flex}.planner-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-top:.6rem;font-size:.78rem;font-weight:600}.planner-input,.planner-textarea,.planner-share-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);width:100%;color:var(--text);padding:.5rem .7rem;font-family:inherit;font-size:.9rem}.planner-textarea{resize:vertical}.planner-input:focus,.planner-textarea:focus{border-color:var(--accent);outline:none}.planner-form .notif-toggle{margin-top:.9rem}.planner-item-list{border-top:1px solid var(--border)}.planner-item-row{border-bottom:1px solid var(--border-light);grid-template-columns:10rem 1fr 10rem 2rem;align-items:center;gap:.5rem;padding:.6rem .2rem;display:grid}.planner-item-date{font-family:var(--mono);color:var(--text-muted);white-space:nowrap;font-size:.8rem}.planner-item-name{font-size:.92rem}.planner-item-city{color:var(--text-muted);font-size:.82rem}.planner-actions{align-items:center;gap:.6rem;margin-top:1.4rem;display:flex}.planner-bar{z-index:60;padding:.7rem 1.2rem calc(.7rem + env(safe-area-inset-bottom));background:var(--bg-card);border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:.8rem;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 10px #1a1a180f}.planner-bar-count{font-size:.88rem;font-weight:600}.planner-done{max-width:34rem}.planner-share-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.2rem;display:flex}.planner-share-input{font-family:var(--mono);flex:16rem;font-size:.82rem}.planner-done-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.planner-done-actions a{align-items:center;text-decoration:none;display:inline-flex}.profile-plans-intro{color:var(--text-muted);margin:0 0 .7rem;font-size:.85rem}.profile-plan-list{margin-top:1rem}.profile-plan-row{border-bottom:1px solid var(--border-light);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;padding:.8rem 0;display:flex}.profile-plan-info{flex-direction:column;min-width:0;display:flex}.profile-plan-name{color:var(--text);font-weight:600;text-decoration:none}.profile-plan-name:hover{color:var(--accent)}.profile-plan-meta{color:var(--text-muted);font-size:.8rem}.profile-plan-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.profile-plan-actions .share-btn{padding:.3rem .6rem;font-size:.8rem}@media (max-width:720px){.planner-item-row{grid-template-columns:1fr 2rem;gap:.15rem .5rem}.planner-item-date{order:-1;grid-column:1}.planner-item-name,.planner-item-city{grid-column:1}.planner-item-row .profile-delete-btn{grid-area:1/2/span 3;align-self:center}}.plan-page{max-width:62rem}.plan-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.plan-title{margin:0;font-size:1.4rem;font-weight:600}.plan-intro{color:var(--text);white-space:pre-line;margin:.6rem 0 0;font-size:.92rem}.plan-closed-banner{background:var(--tag-bg);border-radius:var(--radius);color:var(--text-muted);margin:.9rem 0 0;padding:.6rem .8rem;font-size:.85rem}.plan-meta{color:var(--text-muted);margin:.5rem 0 1.2rem;font-size:.82rem}.plan-identity{flex-wrap:wrap;gap:.5rem;margin-bottom:1.2rem;display:flex}.plan-name-input,.plan-comment-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);padding:.5rem .7rem;font-family:inherit;font-size:.9rem}.plan-name-input{flex:0 14rem}.plan-comment-input{flex:18rem}.plan-name-input:focus,.plan-comment-input:focus{border-color:var(--accent);outline:none}.plan-hp{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.vote-control{gap:.15rem;display:inline-flex}.vote-btn{border:1px solid var(--border);background:var(--bg-card);min-width:1.9rem;font-family:var(--mono);color:var(--text-muted);cursor:pointer;border-radius:3px;padding:.25rem 0;font-size:.82rem;line-height:1.2;transition:background .12s,color .12s}.vote-btn--yes:hover:not(:disabled){border-color:var(--vote-yes);color:var(--vote-yes)}.vote-btn--maybe:hover:not(:disabled){border-color:var(--vote-maybe);color:var(--vote-maybe)}.vote-btn--no:hover:not(:disabled){border-color:var(--vote-no);color:var(--vote-no)}.vote-btn.active:hover:not(:disabled){color:#fff}.vote-btn:disabled{cursor:default;opacity:.6}.vote-btn--yes.active{background:var(--vote-yes);border-color:var(--vote-yes);color:#fff}.vote-btn--maybe.active{background:var(--vote-maybe);border-color:var(--vote-maybe);color:#fff}.vote-btn--no.active{background:var(--vote-no);border-color:var(--vote-no);color:#fff}.vote-mark{font-family:var(--mono);font-size:.95rem;font-weight:600}.vote-mark--yes{color:var(--vote-yes)}.vote-mark--maybe{color:var(--vote-maybe)}.vote-mark--no{color:var(--vote-no)}.vote-mark--none{color:var(--border)}.plan-tally{font-family:var(--mono);gap:.3rem;font-size:.8rem;display:inline-flex}.plan-tally-yes{color:var(--vote-yes);font-weight:600}.plan-tally-maybe{color:var(--vote-maybe)}.plan-tally-no{color:var(--vote-no)}.plan-matrix-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);overflow-x:auto}.plan-matrix{border-collapse:collapse;width:100%}.plan-matrix th,.plan-matrix td{border-bottom:1px solid var(--border-light);text-align:center;vertical-align:middle;padding:.55rem .7rem}.plan-matrix thead th{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;font-size:.7rem;font-weight:600}.plan-matrix tbody tr:last-child th,.plan-matrix tbody tr:last-child td{border-bottom:none}.plan-matrix .plan-col-event{z-index:1;background:var(--bg-card);text-align:left;min-width:15rem;font-weight:400;position:sticky;left:0}.plan-matrix .plan-col-me{background:var(--accent-light)}.plan-col-event .plan-item-date{font-family:var(--mono);color:var(--text-muted);font-size:.75rem;display:block}.plan-col-event .plan-item-name{color:var(--text);font-size:.92rem;text-decoration:none;display:block}a.plan-item-name:hover{color:var(--accent);text-decoration:underline}.plan-col-event .plan-item-city{color:var(--text-muted);font-size:.78rem;display:block}.plan-col-person{text-overflow:ellipsis;max-width:6rem;overflow:hidden}.plan-cards{display:none}.plan-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:.15rem;margin-bottom:.7rem;padding:.85rem .9rem .9rem;display:flex}.plan-card-head{justify-content:space-between;align-items:baseline;gap:.6rem;margin-bottom:.1rem;display:flex}.plan-tally--card{flex-shrink:0;gap:.55rem;font-size:.78rem}.plan-tally--card>span{font-weight:600}.plan-card .plan-item-date{font-family:var(--mono);color:var(--text-muted);font-size:.75rem}.plan-card .plan-item-name{color:var(--text);font-size:1rem;font-weight:600;text-decoration:none}.plan-card .plan-item-city{color:var(--text-muted);font-size:.8rem}.plan-card-vote{margin-top:.75rem}.plan-card-vote .vote-control{gap:.4rem;display:flex}.plan-card-vote .vote-btn{flex:1 1 0;min-width:0;padding:.55rem 0;font-size:1rem}.plan-card-people{flex-wrap:wrap;gap:.3rem;margin-top:.6rem;display:flex}.plan-card-empty{color:var(--text-muted);font-size:.8rem}.plan-person-chip{font-family:var(--mono);background:var(--tag-bg);color:var(--text-muted);border-radius:3px;padding:.15rem .4rem;font-size:.72rem}.plan-person-chip--yes{background:var(--vote-yes-bg);color:var(--vote-yes)}.plan-person-chip--maybe{background:var(--vote-maybe-bg);color:var(--vote-maybe)}.plan-person-chip--no{background:var(--vote-no-bg);color:var(--vote-no)}.plan-actions{flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:1.2rem;display:flex}.plan-hint{color:var(--text-muted);flex-basis:100%;margin:0;font-size:.78rem}@media (max-width:700px){.plan-matrix-wrap{display:none}.plan-cards{display:block}.plan-head{align-items:center}.plan-title{font-size:1.2rem}}.discs-main{display:block}.discs-title{margin-bottom:.4rem;font-size:1.5rem;font-weight:700}.discs-intro{color:var(--text-muted);max-width:42rem;margin-bottom:1.2rem;font-size:.9rem;line-height:1.5}.discs-toolbar{flex-flow:row-reverse wrap-reverse;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:1.2rem;display:flex}.disc-upload-btn{font-family:var(--sans);background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-size:.9rem;font-weight:600;transition:opacity .15s;display:inline-flex}.disc-upload-btn:hover{opacity:.87}.disc-upload-btn:disabled{opacity:.5;cursor:default}.disc-cancel-btn{font-family:var(--sans);color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.55rem .4rem;font-size:.85rem;font-weight:500;transition:color .15s}.disc-cancel-btn:hover{color:var(--text)}.disc-cancel-btn:disabled{opacity:.5;cursor:default}.disc-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.2rem;display:grid}.disc-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;scroll-margin-top:5rem;transition:border-color .12s;display:flex;overflow:hidden}.disc-card:hover{border-color:var(--text-muted)}.disc-card-media{aspect-ratio:1;background:var(--tag-bg)}.disc-card-img{object-fit:cover;width:100%;height:100%;display:block}.disc-card-body{flex-direction:column;flex:1;gap:.3rem;padding:.7rem .8rem .8rem;display:flex}.disc-card-title{font-size:.92rem;font-weight:600;line-height:1.25}.disc-card-meta{color:var(--text-muted);font-size:.78rem}.disc-card-hidden{color:var(--accent);font-size:.75rem}.disc-card-actions{flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:auto;padding-top:.6rem;display:flex}.disc-action-btn{font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;background:0 0;align-items:center;gap:.3rem;padding:.3rem .5rem;font-size:.75rem;transition:color .12s,border-color .12s,background .12s;display:inline-flex}.disc-action-btn:hover{color:var(--text);border-color:var(--text-muted)}.disc-action-btn svg{width:.85rem;height:.85rem}.disc-action-btn--active{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.disc-action-count{font-family:var(--mono);font-size:.72rem}.disc-action-note{color:var(--text-muted);cursor:help;margin-left:auto;font-size:.7rem}.disc-sort{background:var(--tag-bg);border:1px solid var(--border);border-radius:var(--radius);gap:.2rem;padding:.15rem;display:inline-flex}.disc-sort-btn{font-family:var(--sans);border-radius:calc(var(--radius) - 2px);color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.3rem .6rem;font-size:.78rem;transition:color .12s,background .12s}.disc-sort-btn:hover{color:var(--text)}.disc-sort-btn--active{background:var(--bg-card);color:var(--text);font-weight:600}.disc-action-btn--icon{border-color:#0000;margin-left:auto;padding:.3rem}.disc-action-btn--icon+.disc-action-btn--icon{margin-left:0}.disc-upload-modal{z-index:1000;background:#1a1a1873;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.disc-upload-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:26rem;max-height:90dvh;padding:1.5rem;position:relative;overflow-y:auto}.disc-upload-box h2{margin-bottom:1rem;font-size:1.1rem;font-weight:700}.disc-upload-drop{aspect-ratio:1;background:var(--tag-bg);border:1px dashed var(--border);border-radius:var(--radius);width:100%;color:var(--text-muted);font-family:var(--sans);cursor:pointer;justify-content:center;align-items:center;margin-bottom:1rem;font-size:.85rem;display:flex;overflow:hidden}.disc-upload-drop:hover{border-color:var(--accent)}.disc-upload-preview{object-fit:cover;width:100%;height:100%}.disc-cropper{margin-bottom:.6rem}.disc-crop-frame{aspect-ratio:1;background:var(--tag-bg);border:1px solid var(--border);border-radius:var(--radius);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;position:relative;overflow:hidden}.disc-crop-frame:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.disc-crop-frame:active{cursor:grabbing}.disc-crop-img{transform-origin:0 0;pointer-events:none;max-width:none;position:absolute;top:0;left:0}.disc-crop-mask{pointer-events:none;border-radius:var(--radius);position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff59}.disc-crop-zoom{color:var(--text-muted);align-items:center;gap:.5rem;margin:.5rem 0 .15rem;display:flex}.disc-crop-zoom input[type=range]{accent-color:var(--accent);cursor:pointer;flex:1}.disc-crop-hint{color:var(--text-muted);font-size:.72rem}.disc-upload-replace{font-family:var(--sans);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;background:0 0;margin:0 0 1rem;padding:.3rem .55rem;font-size:.75rem;display:block}.disc-upload-replace:hover:not(:disabled){color:var(--text);border-color:var(--text-muted)}.disc-upload-replace:disabled{opacity:.5;cursor:default}.disc-upload-form label{color:var(--text-muted);margin-bottom:.65rem;font-size:.78rem;font-weight:600;display:block}.disc-upload-form input,.disc-upload-form select{font-family:var(--sans);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);box-sizing:border-box;width:100%;height:2.4rem;margin-top:.25rem;padding:.5rem .75rem;font-size:.88rem;font-weight:400}.disc-upload-form input:focus,.disc-upload-form select:focus{border-color:var(--accent);outline:none}.disc-form-hint{color:var(--text-muted);font-size:.75rem;line-height:1.4}.disc-form-error{color:var(--accent);margin-top:.6rem;font-size:.82rem}.disc-form-stage{color:var(--text-muted);margin-top:.6rem;font-size:.82rem}.disc-upload-actions{justify-content:flex-end;align-items:center;gap:.4rem;margin-top:1.2rem;display:flex}@media (max-width:700px){.disc-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.8rem}}.profile-disc-row{border-bottom:1px solid var(--border-light);align-items:center;gap:1rem;padding:.8rem 0;display:flex}.profile-disc-thumb{object-fit:cover;border-radius:var(--radius);background:var(--tag-bg);flex-shrink:0;width:44px;height:44px}.profile-disc-info{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.profile-disc-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;overflow:hidden}.profile-disc-meta{color:var(--text-muted);font-size:.78rem}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.changelog-intro{color:var(--text-muted);max-width:46rem;margin:0 0 2.2rem;line-height:1.65}.changelog-list{margin:0;padding:0;list-style:none}.changelog-entry{grid-template-columns:8.5rem 1fr;gap:0 1.5rem;display:grid}.changelog-entry .changelog-month{color:var(--text-muted);letter-spacing:.02em;padding-top:.15rem;font-size:.82rem;font-weight:600}.changelog-entry .changelog-body{border-left:1px solid var(--border-light);padding-bottom:1.6rem;padding-left:1.5rem}.changelog-entry:last-child .changelog-body{border-left-color:#0000;padding-bottom:0}.changelog-entry .changelog-body h2{margin:0 0 .35rem;font-size:1.05rem;font-weight:600;position:relative}.changelog-entry .changelog-body h2:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;margin-left:-4px;position:absolute;top:.45em;left:-1.5rem}.changelog-entry .changelog-body p{color:var(--text);margin:0;line-height:1.6}.changelog-link{color:var(--accent);margin-top:.5rem;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-block}.changelog-link:hover{text-decoration:underline}.changelog-feedback{border-top:1px solid var(--border);color:var(--text-muted);margin-top:1rem;padding-top:1.5rem;font-size:.9rem;line-height:1.6}.changelog-feedback a{color:var(--accent)}@media (max-width:640px){.changelog-entry{grid-template-columns:1fr;gap:0}.changelog-entry .changelog-month{margin-bottom:.3rem;padding-top:0}.changelog-entry .changelog-body{border-left:0;padding-bottom:1.4rem;padding-left:0}.changelog-entry .changelog-body h2:before{display:none}}.not-found-main{text-align:center;max-width:720px;margin:0 auto;padding:2rem 1rem 3rem}.not-found-title{margin:0 0 1rem;font-size:clamp(1.5rem,5vw,2.2rem)}.not-found-image{width:100%;max-width:460px;height:auto;margin:0 auto 1rem;display:block;-webkit-mask-image:linear-gradient(#0000,#000 20%);mask-image:linear-gradient(#0000,#000 20%)}.not-found-text{max-width:460px;color:var(--text-muted);margin:0 auto 1.5rem}.not-found-home{color:#fff;background:var(--accent);border-radius:var(--radius);padding:.6rem 1.2rem;font-weight:600;text-decoration:none;display:inline-block}.not-found-home:hover{background:#b8400f;text-decoration:none}.otter-loader{opacity:0;flex-direction:column;align-items:center;gap:.4rem;padding:2rem 0;animation:.3s .3s forwards otter-loader-in;display:flex}.otter-loader-label{color:var(--text-muted);font-size:.85rem}.otter-disc{transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out infinite otter-disc-toss}.otter-body{animation:1.2s ease-in-out infinite otter-bob}.otter-eyes{transform-box:fill-box;transform-origin:50%;animation:3.6s step-end infinite otter-blink}@keyframes otter-loader-in{to{opacity:1}}@keyframes otter-disc-toss{0%,to{transform:translateY(8px)rotate(-6deg)}50%{transform:translateY(-4px)rotate(6deg)scaleX(.85)}}@keyframes otter-bob{0%,to{transform:translateY(0)}50%{transform:translateY(1.5px)}}@keyframes otter-blink{0%,94%{transform:scaleY(1)}95%,to{transform:scaleY(.1)}}.skeleton{background:linear-gradient(90deg, var(--tag-bg) 25%, var(--border-light) 50%, var(--tag-bg) 75%);border-radius:var(--radius);background-size:200% 100%;animation:1.4s ease-in-out infinite skeleton-shimmer}.skeleton-filter{height:5.5rem;margin-bottom:1rem}.skeleton-row{height:2.6rem;margin-bottom:.5rem}.loading-main{width:100%}.skeleton-card{min-height:18rem}.skeleton-title{width:60%;height:1.8rem;margin-bottom:1rem}.skeleton-line{height:1rem;margin-bottom:.6rem}.skeleton-line--short{width:40%}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.otter-disc,.otter-body,.otter-eyes,.skeleton{animation:none}.otter-loader{animation-duration:0s}}
