@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,Noto Sans JP,sans-serif;color:#1d2925;background:#f5f7f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--green: #183f35;--green-2: #245c4b;--muted: #6d7974;--line: #e2e8e3;--card: #ffffff}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh}.site-header{height:76px;padding:0 max(22px,calc((100% - 1180px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--green);color:#fff}.brand-copy{display:flex;flex-direction:column;gap:3px}.brand-copy strong{font-size:14px;letter-spacing:.08em}.brand-copy small{color:var(--muted);font-size:11px}.header-link{display:flex;align-items:center;gap:7px;color:#4b5b54;font-size:13px;font-weight:600}.hero{color:#fff;padding:54px 22px 36px;text-align:center;background:radial-gradient(ellipse at 80% 10%,rgba(85,137,102,.26),transparent 36%),linear-gradient(135deg,#14372f,#1e4b3d 70%,#193b32)}.hero-kicker{display:flex;justify-content:center;align-items:center;gap:7px;color:#c6e2d2;font-size:11px;font-weight:700;letter-spacing:.17em}.hero h1{margin:17px 0 9px;font-size:clamp(27px,4vw,42px);letter-spacing:.02em}.hero p{margin:0;color:#d4e0d9;font-size:14px}.hero-search{width:min(660px,100%);height:56px;margin:26px auto 17px;padding:0 17px;display:flex;align-items:center;gap:12px;color:#6b7972;background:#fff;border-radius:14px;box-shadow:0 10px 30px #0000001f}.hero-search input{flex:1;min-width:0;border:0;outline:0;color:#1d2925;font-size:14px;background:transparent}.clear-query{border:0;background:#edf1ee;color:#4f5e56;border-radius:50%;width:25px;height:25px}.hero-chips{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.chip{color:#e5eee8;border:1px solid rgba(255,255,255,.25);background:transparent;border-radius:99px;padding:8px 17px;font-size:12px}.chip.active,.chip:hover{background:#fff;color:var(--green);border-color:#fff}.content-grid{width:min(1180px,calc(100% - 40px));margin:32px auto 70px;display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start}.filter-panel{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden}.filter-heading{width:100%;padding:18px;display:flex;justify-content:space-between;align-items:center;background:#fff;border:0;font-weight:700;color:#26362e}.filter-heading span{display:flex;align-items:center;gap:9px}.chevron{transition:transform .2s}.chevron.open{transform:rotate(180deg)}.filter-fields{padding:0 18px 18px;display:flex;flex-direction:column;gap:17px}.filter-fields label{display:flex;flex-direction:column;gap:8px}.filter-fields label>span{display:flex;align-items:center;gap:6px;color:#526158;font-size:12px;font-weight:700}.filter-fields select{width:100%;border:1px solid #dfe6e0;border-radius:9px;padding:11px 10px;color:#2c3932;background:#fff;font-size:13px;outline-color:#76a28d}.reset-button{border:1px solid #dfe6e0;background:#fff;color:#53645a;border-radius:9px;padding:10px 12px;display:inline-flex;justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:600}.results-heading{display:flex;justify-content:space-between;align-items:end;margin:2px 0 18px}.eyebrow{margin:0 0 5px;font-size:10px;color:#71877a;letter-spacing:.15em;font-weight:700}.results-heading h2{margin:0;font-size:24px;letter-spacing:-.02em}.results-count{display:flex;align-items:baseline;gap:4px;color:#758078;font-size:12px}.results-count strong{color:var(--green);font-size:25px}.event-list{display:flex;flex-direction:column;gap:14px}.event-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;transition:box-shadow .18s,transform .18s}.event-card:hover{box-shadow:0 8px 24px #14372a0f;transform:translateY(-1px)}.event-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.type-pill{padding:5px 9px;border-radius:6px;background:#edf5ef;color:#2b654d;font-size:10px;font-weight:700;white-space:nowrap}.type-pill.major{background:#fff2db;color:#98651a}.type-pill.satellite{background:#f0ebfa;color:#6c4b9a}.type-pill.unknown{background:#edf0ee;color:#5d6962}.location{display:flex;align-items:center;gap:4px;color:#718078;font-size:11px}.event-card h3{margin:14px 0 5px;font-size:18px;line-height:1.45}.organizer{color:#718078;font-size:12px;margin:0 0 16px}.event-meta{display:flex;flex-wrap:wrap;gap:9px 20px;padding:13px 0;border-top:1px solid #edf0ed;border-bottom:1px solid #edf0ed}.meta-item{display:flex;align-items:center;gap:7px;color:#4d5d53;font-size:12px}.meta-item svg{color:#789082;flex-shrink:0}.event-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:15px}.fee{display:flex;flex-direction:column;gap:3px}.fee small{color:#7b877f;font-size:10px}.fee strong{color:var(--green);font-size:22px;letter-spacing:-.03em}.fee span{color:#6e7c73;font-size:11px}.detail-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--green);color:#fff;border-radius:9px;padding:11px 14px;font-size:12px;font-weight:700;white-space:nowrap}.detail-button:hover{background:var(--green-2)}.prize-note{margin:14px 0 0;color:#53635a;font-size:12px}.source-note{margin-top:12px;color:#9aa39d;font-size:10px}.notice,.setup-hint{display:flex;align-items:flex-start;gap:8px;border-radius:10px;padding:11px 12px;margin-bottom:12px;font-size:11px;line-height:1.6}.notice{color:#77551c;background:#fff6e5;border:1px solid #f2e4c5}.setup-hint{color:#536b5b;background:#eaf2ec;border:1px solid #d9e7dc}.notice svg,.setup-hint svg{flex-shrink:0;margin-top:1px}.error-box{padding:14px;border-radius:10px;color:#8d2929;background:#fff0f0;font-size:12px;margin-bottom:12px}.empty-state{min-height:220px;background:#fff;border:1px dashed #d9e1da;border-radius:16px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;color:#7c8981;text-align:center;padding:24px}.empty-state strong{color:#34463a;font-size:14px}.empty-state span{font-size:12px}.spinner{width:25px;height:25px;border:3px solid #e1e8e2;border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.reload-button{display:flex;align-items:center;justify-content:center;gap:7px;margin:20px auto 0;border:0;background:transparent;color:#6b7b70;font-size:12px;padding:9px}.site-footer{background:#18372f;color:#d5e1d9;padding:28px 22px;text-align:center}.footer-brand{display:flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:12px;letter-spacing:.08em}.site-footer p{max-width:600px;margin:12px auto;color:#afc2b6;font-size:11px;line-height:1.8}.site-footer>span{color:#92a99a;font-size:10px}@media(max-width:760px){.site-header{height:66px;padding:0 16px}.brand-mark{width:38px;height:38px}.brand-copy strong{font-size:11px;letter-spacing:.04em}.brand-copy small{font-size:10px}.header-link{font-size:11px}.hero{padding:38px 17px 28px}.hero h1{margin-top:15px}.hero p{font-size:12px}.hero-search{height:52px;margin-top:22px;border-radius:12px}.hero-search input{font-size:13px}.content-grid{width:calc(100% - 28px);margin:20px auto 44px;display:flex;flex-direction:column;gap:22px}.filter-panel,.events-section{width:100%}.filter-heading{padding:15px}.filter-fields{padding:0 15px 15px}.results-heading{margin-bottom:14px}.results-heading h2{font-size:21px}.event-card{padding:16px;border-radius:14px}.event-card h3{font-size:16px}.event-card-top{align-items:flex-start}.location{text-align:right;justify-content:flex-end}.event-meta{flex-direction:column;gap:10px}.fee strong{font-size:21px}.detail-button{padding:10px 11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.favorite-chip{display:inline-flex;align-items:center;gap:6px}.favorite-chip.active{color:#b72f4a}.card-top-actions{display:flex;align-items:center;gap:9px}.favorite-button{flex-shrink:0;display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid #e1e8e2;border-radius:50%;background:#fff;color:#7b8980;transition:color .15s,background .15s,border-color .15s}.favorite-button:hover{border-color:#e8a2ad;color:#c23c55;background:#fff7f8}.favorite-button.saved{color:#d3415c;border-color:#f0c2cb;background:#fff2f4}.results-count{flex-wrap:wrap;justify-content:flex-end}.favorites-toggle{display:inline-flex;align-items:center;gap:5px;margin-left:8px;padding:7px 9px;border:1px solid #e0e7e1;border-radius:8px;color:#627168;background:#fff;font-size:11px;font-weight:600}.favorites-toggle.selected{color:#bd3650;border-color:#efc3cb;background:#fff2f4}@media(max-width:760px){.card-top-actions{gap:5px}.favorite-button{width:34px;height:34px}.favorites-toggle{margin-left:0}}
