.activity-filters{display:flex;gap:16px;align-items:end;padding:20px;margin-bottom:20px;flex-wrap:wrap}.activity-filters label{display:grid;gap:8px;flex:1;min-width:160px;font-size:14px}.activity-filters select{min-height:44px;width:100%;padding:9px 12px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:8px}.activity-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.activity-kpis>div{padding:22px}.activity-kpis small{font-size:14px;color:var(--muted)}.activity-kpis strong{display:block;font-size:32px;margin-top:8px}.activity-map-panel,.activity-chart-grid>.panel,.activity-venues{padding:24px;margin-bottom:22px}.activity-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.activity-panel-head h2,.activity-chart-grid h2,.activity-venues h2{font-size:20px;margin:0 0 10px}.activity-panel-head p,.activity-note{font-size:14px;color:var(--muted);margin:6px 0}.activity-map{height:430px;width:100%;border-radius:16px;border:1px solid var(--line);isolation:isolate;z-index:0}.activity-korea-map{--map-water:#e7f0f5;--map-grid:#5c718d16;--map-surface:#eaf2f6;--map-peninsula:#d1e0ea;--map-peninsula-dark:#9ab2c5;--map-region:#cadbe6;--map-region-active:#83b8d4;--map-line:#52748d;--map-ink:#17334f;--map-popover:#fbfdff;position:relative;height:620px;overflow:hidden;background:radial-gradient(circle at 77% 19%,#fff9 0 3%,transparent 20%),linear-gradient(142deg,var(--map-surface),var(--map-water));box-shadow:inset 0 1px #fff8,0 16px 32px #122a4010}.activity-map-grid{position:absolute;inset:0;background-image:linear-gradient(var(--map-grid) 1px,transparent 1px),linear-gradient(90deg,var(--map-grid) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(145deg,#0008,transparent 80%)}.activity-peninsula-relief{position:absolute;z-index:1;left:50%;top:0;height:100%;width:min(68%,520px);transform:translateX(-46%);filter:drop-shadow(0 17px 14px #16314938)}.peninsula-shadow{fill:var(--map-peninsula-dark);transform:translate(0 16px);opacity:.6}.peninsula-north{fill:#c7d4dc;stroke:#95aab9;stroke-width:4}.peninsula-north-ridge{fill:none;stroke:#a5bac8;stroke-width:4;stroke-linecap:round;opacity:.65}.peninsula-region{fill:var(--map-region);stroke:#edf6fb;stroke-width:4;stroke-linejoin:round;transition:fill .24s ease,filter .24s ease,transform .24s ease}.peninsula-region.has-activity{fill:#a4cbe0}.peninsula-region.is-active{fill:var(--map-region-active);filter:brightness(1.06)}.peninsula-coast{fill:none;stroke:var(--map-line);stroke-width:5;stroke-linejoin:round;opacity:.92}.activity-region-controls,.activity-map-pins{position:absolute;inset:0;z-index:3;pointer-events:none}.activity-region-chip,.activity-venue-pin{position:absolute;left:var(--x);top:var(--y);pointer-events:auto;transform:translate(-50%,-50%);border:0;font:inherit;cursor:pointer}.activity-region-chip{display:grid;grid-template-columns:auto auto;align-items:center;gap:5px;min-height:28px;padding:4px 7px;border:1px solid #66829a55;border-radius:999px;background:#f8fcffdf;color:var(--map-ink);box-shadow:0 4px 10px #213c5222;font-size:12px;line-height:1;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.activity-region-chip b{display:grid;place-items:center;min-width:17px;height:17px;padding:0 3px;border-radius:50%;background:#286f9f;color:#fff;font-size:11px}.activity-region-chip:not(.has-activity){opacity:.36;cursor:default}.activity-region-chip.has-activity:hover,.activity-region-chip.is-active{background:#173a5c;color:#fff;box-shadow:0 10px 18px #173a5c42;transform:translate(-50%,-56%) scale(1.05)}.activity-region-chip.is-active b{background:#ffd79a;color:#16334f}.activity-venue-pin{width:30px;height:30px;padding:0;border-radius:50%;background:var(--pin);color:#fff;border:3px solid #fff;box-shadow:0 4px 10px #12304a5c;transition:transform .18s ease,box-shadow .18s ease}.activity-venue-pin:before{content:"";position:absolute;inset:-7px;border:1px solid var(--pin);border-radius:50%;opacity:.45;animation:activity-pulse 2.1s ease-out infinite}.activity-venue-pin span{font-size:12px;font-weight:800}.activity-venue-pin:hover,.activity-venue-pin.is-active{transform:translate(-50%,-72%) scale(1.27);box-shadow:0 13px 20px #12304a69;z-index:6}.activity-map-hint,.activity-map-popover{position:absolute;z-index:6;left:24px;top:24px;width:min(310px,39%);color:var(--map-ink);background:var(--map-popover);border:1px solid #6d8da455;border-radius:15px;box-shadow:0 16px 28px #102b4530;backdrop-filter:blur(8px)}.activity-map-hint{display:grid;gap:6px;padding:16px 18px;font-size:14px;line-height:1.55;animation:activity-pop .36s cubic-bezier(.2,.8,.2,1) both}.activity-map-hint strong{font-size:16px}.activity-map-popover{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:17px;animation:activity-pop .34s cubic-bezier(.2,.82,.2,1) both}.activity-map-kicker{display:block;color:#2a709d;font-size:12px;font-weight:800;letter-spacing:.07em}.activity-map-popover h3{margin:4px 0 6px;font-size:18px;line-height:1.35}.activity-map-popover p{margin:0;color:#536a7d;font-size:13px;line-height:1.5}.activity-map-popover-close{width:28px;height:28px;padding:0;border:0;border-radius:50%;background:#eaf2f7;color:#38546a;font-size:20px;cursor:pointer}.activity-map-popover-list{grid-column:1/-1;display:grid;gap:7px}.activity-map-popover-list button{display:grid;grid-template-columns:9px minmax(0,1fr);column-gap:8px;align-items:center;width:100%;padding:9px;border:1px solid #cfe0eb;border-radius:9px;background:#f8fbfd;color:#29485f;text-align:left;cursor:pointer;font:inherit}.activity-map-popover-list button:hover,.activity-map-popover-list button.selected{background:#e9f5fb;border-color:#7eb6d5}.activity-map-popover-list button>span{grid-row:1/3;width:8px;height:8px;border-radius:50%;background:var(--pin)}.activity-map-popover-list strong{font-size:13px}.activity-map-popover-list small{color:#62798d;font-size:11px}.activity-map-selected{grid-column:1/-1;display:grid;gap:3px;padding:10px;border-top:1px solid #d8e6ee;font-size:13px}.activity-map-selected span{color:#5f778b;font-size:12px}.activity-map-selected .btn{margin-top:4px;justify-self:start}.activity-map-caption{position:absolute;z-index:4;right:20px;bottom:17px;max-width:340px;margin:0;color:#426276b8;font-size:10px;letter-spacing:.08em;text-align:right}.activity-picker{height:300px;min-height:0;margin:12px 0;border-radius:12px;background:#dce7eb}.activity-map .leaflet-control-attribution{font-size:12px;color:#243448;background:#fffffff0;max-width:100%}.activity-map .leaflet-control-attribution a{color:#145b91}.activity-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.activity-field{display:inline-flex;gap:6px;align-items:center;color:var(--ink);font-size:14px;white-space:nowrap}.activity-field:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--field)}.activity-chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.activity-bars{display:grid;gap:12px}.activity-bars button{display:grid;grid-template-columns:105px 1fr 52px;gap:14px;align-items:center;border:0;color:var(--ink);background:transparent;cursor:pointer;min-height:42px;text-align:left;font:inherit;font-size:14px;padding:4px}.activity-bars button:hover{background:var(--surface-alt)}.activity-bars button:disabled{cursor:default;opacity:.65}.activity-bars i{height:10px;background:var(--surface-alt);border-radius:8px;overflow:hidden}.activity-bars b{display:block;height:100%;min-width:0;border-radius:8px}.activity-bars strong{text-align:right}.activity-table-wrap{overflow:auto}.activity-venues table{width:100%;border-collapse:collapse;font-size:14px}.activity-venues td,.activity-venues th{padding:13px 10px;border-bottom:1px solid var(--line);text-align:left}.activity-list{display:grid;gap:16px}.activity-list.detail{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-card{padding:24px;min-width:0}.activity-card h3{margin:12px 0;font-size:20px;overflow-wrap:anywhere}.activity-description{font-size:16px;white-space:pre-line;line-height:1.7}.activity-meta{font-size:14px;line-height:1.7;color:var(--muted);overflow-wrap:anywhere}.activity-timing{font-size:13px;color:var(--muted);margin-left:10px}.activity-list.list .activity-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.activity-empty{padding:28px;text-align:center;color:var(--muted);grid-column:1/-1}.activity-place-results{display:grid;gap:8px;margin-top:12px;font-size:14px}.activity-place-results button{text-align:left;white-space:normal;justify-content:start}.activity-panel-head button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}html[data-theme=dark] .activity-korea-map{--map-water:#0a1c2e;--map-grid:#b6d8f71a;--map-surface:#10263a;--map-peninsula:#24465e;--map-peninsula-dark:#112b40;--map-region:#315c77;--map-region-active:#4c94bd;--map-line:#86b6d1;--map-ink:#eaf5ff;--map-popover:#102a40ed}html[data-theme=dark] .peninsula-north{fill:#1f3d53;stroke:#557a94}html[data-theme=dark] .peninsula-north-ridge{stroke:#557a94}html[data-theme=dark] .peninsula-region{stroke:#18344b}html[data-theme=dark] .activity-region-chip{background:#16344bdc;color:#eaf5ff;border-color:#86b6d166}html[data-theme=dark] .activity-region-chip.has-activity:hover,html[data-theme=dark] .activity-region-chip.is-active{background:#8fc6e7;color:#092139}html[data-theme=dark] .activity-map-popover p,html[data-theme=dark] .activity-map-popover-list small,html[data-theme=dark] .activity-map-selected span{color:#b7d0e2}html[data-theme=dark] .activity-map-popover-list button{background:#15334a;color:#ebf5ff;border-color:#426783}html[data-theme=dark] .activity-map-popover-list button:hover,html[data-theme=dark] .activity-map-popover-list button.selected{background:#1e4a67;border-color:#78b4d6}@keyframes activity-pop{from{opacity:0;transform:translateY(12px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes activity-pulse{0%{transform:scale(.5);opacity:.7}70%,100%{transform:scale(1.8);opacity:0}}@media(max-width:850px){.activity-chart-grid,.activity-list.detail{grid-template-columns:1fr}.activity-kpis{grid-template-columns:repeat(2,1fr)}.activity-map{height:350px}.activity-korea-map{height:570px}.activity-picker{height:280px}.activity-panel-head{align-items:start;flex-wrap:wrap}.activity-map-panel,.activity-chart-grid>.panel,.activity-venues{padding:18px}.activity-list.list .activity-card{display:block}.activity-bars button{grid-template-columns:95px 1fr 45px;gap:8px}.activity-peninsula-relief{width:88%;left:56%;transform:translateX(-50%)}.activity-map-hint,.activity-map-popover{left:14px;top:14px;width:min(282px,72%)}.activity-region-chip{font-size:10px;min-height:24px;padding:3px 5px}.activity-region-chip b{min-width:15px;height:15px;font-size:10px}.activity-venue-pin{width:26px;height:26px}.activity-map-caption{left:15px;right:15px;bottom:12px;font-size:9px;text-align:left}}@media print{.activity-map,.activity-filters{display:none}}.activity-geographic-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:20px;align-items:start}.activity-geographic-map{height:760px;background:#d9e8ed}.activity-geographic-sidebar{min-width:0}.activity-region-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.activity-region-buttons button{min-height:44px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:14px;cursor:pointer}.activity-region-buttons b{font-size:13px;margin-left:5px}.activity-region-buttons button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.activity-geo-label button{display:flex;align-items:center;gap:4px;white-space:nowrap;min-height:32px;padding:5px 8px;background:#fff;color:#17334f;border:1px solid #53798d;border-radius:8px;font:600 14px/1.2 sans-serif;box-shadow:0 2px 5px #18344b33;cursor:pointer}.activity-geo-label b{background:#236b93;color:white;border-radius:12px;padding:2px 5px;font-size:12px}.activity-geo-label button[aria-pressed=true]{background:#174e72;color:white;outline:3px solid #efb84e}.activity-region-detail{margin-top:20px;max-height:550px;overflow:auto;padding:4px}.activity-region-detail h3{font-size:20px;margin:0}.activity-region-record{border-top:1px solid var(--line);padding:18px 0}.activity-region-record h4{font-size:18px;margin:10px 0;overflow-wrap:anywhere}.activity-region-record p,.activity-region-instruction{font-size:14px;line-height:1.7;color:var(--muted);white-space:pre-line;overflow-wrap:anywhere}.activity-region-buttons button:focus-visible,.activity-geo-label button:focus-visible{outline:3px solid #e9a42c;outline-offset:2px}@media(max-width:850px){.activity-geographic-layout{grid-template-columns:1fr}.activity-geographic-map{height:640px}.activity-region-detail{max-height:none}.activity-region-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}}.activity-geographic-map{position:relative;background:#e8f2f8;overflow:hidden;height:760px}.activity-real-peninsula{display:block;width:100%;height:calc(100% - 32px)}.geo-region{fill:#bfd8e7;stroke:#526f83;stroke-width:1;fill-rule:evenodd;cursor:pointer;transition:fill .15s}.geo-region.has-activity{fill:#55a2cd}.geo-region:hover,.geo-region:focus,.geo-region.is-active{fill:#f5be54;outline:none;stroke:#9b601c;stroke-width:2}.geo-north{fill:#ced8df;stroke:#8295a4;stroke-width:1;fill-rule:evenodd}.geo-north-label,.geo-sea-label{font:18px sans-serif;fill:#5c768b;letter-spacing:4px}.geo-location{fill:#25455a;pointer-events:none}.geo-venue{fill:#ed8033;stroke:white;stroke-width:2;cursor:pointer}.geo-source{position:absolute;bottom:8px;left:10px;right:10px;text-align:center;font-size:12px;color:#4d687d;margin:0}html[data-theme=dark] .activity-geographic-map{background:#10283b}html[data-theme=dark] .geo-north{fill:#344a5a;stroke:#728b9f}html[data-theme=dark] .geo-region{fill:#345e78;stroke:#abcadd}html[data-theme=dark] .geo-region.has-activity{fill:#5cadd6}html[data-theme=dark] .geo-region:hover,html[data-theme=dark] .geo-region:focus,html[data-theme=dark] .geo-region.is-active{fill:#efb84e;stroke:#ffe1a1}html[data-theme=dark] .geo-source,html[data-theme=dark] .geo-north-label,html[data-theme=dark] .geo-sea-label{color:#b6cadb;fill:#b6cadb}html[data-theme=dark] .geo-location{fill:#f2f7fc}@media(max-width:850px){.activity-geographic-map{height:650px}}.activity-venues>summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;font-size:20px;font-weight:700;line-height:1.4;min-height:44px}.activity-venues>summary::-webkit-details-marker{display:none}.activity-venues>summary small{font-size:14px;font-weight:500;color:var(--muted)}.activity-venues>summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:4px}.activity-venues-toggle{margin-left:auto;display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:600;color:var(--accent)}.activity-venues-toggle::before{content:"펼치기"}.activity-venues-toggle::after{content:"⌄";font-size:20px;line-height:1}.activity-venues[open] .activity-venues-toggle::before{content:"접기"}.activity-venues[open] .activity-venues-toggle::after{transform:rotate(180deg)}.activity-venues[open] .activity-table-wrap{margin-top:14px}.activity-list.list .activity-card{display:grid;grid-template-columns:minmax(145px,34%) minmax(0,1fr) max-content;align-items:center;column-gap:18px}.activity-list.list .activity-card>div:nth-child(2){min-width:0}.activity-list.list .activity-card>.button-group{justify-self:end}.activity-list.list .activity-card:not(:has(.activity-select)){grid-template-columns:minmax(0,1fr) max-content}@media(max-width:700px){.activity-list.list .activity-card{grid-template-columns:minmax(0,1fr) max-content;row-gap:12px}.activity-list.list .activity-card .activity-select{grid-column:1;grid-row:1}.activity-list.list .activity-card>div:nth-child(2){grid-column:1 / -1;grid-row:2}.activity-list.list .activity-card>.button-group{grid-column:2;grid-row:1}.activity-list.list .activity-card:not(:has(.activity-select))>div:first-child{grid-column:1;grid-row:1}}.activity-field-filter{flex:2 1 360px;min-width:min(100%,320px);margin:0;padding:0;border:0}.activity-field-filter legend{padding:0 0 8px;font-size:14px;color:var(--ink)}.activity-field-filter>div{display:flex;flex-wrap:wrap;gap:8px}.activity-filters .activity-field-filter label{display:inline-flex;align-items:center;flex:0 0 auto;gap:6px;min-width:0;padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);cursor:pointer;line-height:1.35}.activity-filters .activity-field-filter label:has(input:checked){border-color:var(--accent);background:var(--surface-alt);font-weight:700}.activity-field-filter input{width:17px;height:17px;margin:0;accent-color:var(--accent)}.activity-field-filter label:focus-within{outline:2px solid var(--accent);outline-offset:2px}.activity-filter-status{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:0 0 20px;font-size:14px;color:var(--ink)}.activity-filter-status strong{font-weight:700;overflow-wrap:anywhere}.activity-filter-status span{color:var(--muted)}.activity-filter-status .btn{min-height:34px;padding:5px 10px;white-space:normal}.activity-panel-head:has([data-activity=reset]) .button-group{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}@media(max-width:700px){.activity-field-filter{flex-basis:100%}.activity-panel-head:has([data-activity=reset]) .button-group{justify-content:flex-start}}.activity-list-heading{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.activity-list-heading h2{margin:0}.activity-list-heading .btn{min-height:44px;white-space:nowrap}.activity-list-heading .btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.activity-list[hidden]{display:none}.activity-series-add{align-self:flex-start;margin-top:10px}.activity-series-create{margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.activity-series-create[hidden]{display:none}.activity-series-create>input{width:100%;margin-top:8px}.activity-series-create .button-group{margin-top:12px;flex-wrap:wrap}
