@import"https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@600;700&family=Zen+Kaku+Gothic+New:wght@400;600;700&display=swap";:root{--bg: #f7f1e8;--panel: #ffffff;--panelEdge: #e7dccb;--text: #1e1b18;--muted: #6f655a;--accent: #0b6b6b;--accent2: #e0703a;--mapFill: #f2e8da;--mapStroke: #cbbca6;--pin: #0b6b6b;--pinSelected: #e0703a;--pinHover: #0f8a88;--pinStroke: #1c1916;--font-body: "Zen Kaku Gothic New", "Noto Sans JP", sans-serif;--font-display: "Shippori Mincho", "Hiragino Mincho ProN", serif;--shadow: 0 20px 45px rgba(18, 16, 14, .08)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background:radial-gradient(1200px 600px at 80% -10%,rgba(11,107,107,.12),transparent 60%),radial-gradient(800px 500px at 5% 15%,rgba(224,112,58,.1),transparent 55%),var(--bg);color:var(--text)}.page{max-width:1200px;margin:0 auto;padding:24px 18px 40px;display:flex;flex-direction:column;gap:16px}.hero{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding:22px;border-radius:20px;background:var(--panel);border:1px solid var(--panelEdge);box-shadow:var(--shadow);position:relative;overflow:hidden;animation:fadeUp .6s ease both}.hero:before{content:"";position:absolute;right:-120px;top:-160px;width:320px;height:320px;background:radial-gradient(circle,rgba(11,107,107,.2),transparent 70%);pointer-events:none}.heroText{position:relative;z-index:1}.eyebrow{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);font-weight:700}.heroTitle{font-family:var(--font-display);font-size:clamp(26px,3vw,40px);margin:8px 0 6px}.heroLead{margin:0;color:var(--muted);max-width:560px}.heroActions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;z-index:1}.toolbar{background:var(--panel);border:1px solid var(--panelEdge);border-radius:18px;padding:16px;box-shadow:var(--shadow);display:grid;gap:12px;animation:fadeUp .6s ease both}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.stat{background:#fbf6ee;border:1px solid var(--panelEdge);border-radius:14px;padding:10px 12px}.statLabel{font-size:12px;color:var(--muted)}.statValue{font-family:var(--font-display);font-size:22px;font-weight:700;margin-top:4px}.filters{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:10px;align-items:end}.field{display:grid;gap:6px;font-size:12px;color:var(--muted)}.input,.select{width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--panelEdge);background:#fff;font-family:var(--font-body);font-size:14px;transition:border-color .2s ease,box-shadow .2s ease}.input:focus,.select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0b6b6b1f}.layout{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;animation:fadeUp .6s ease both}.mapPanel,.listPanel{background:var(--panel);border:1px solid var(--panelEdge);border-radius:18px;padding:14px;box-shadow:var(--shadow)}.panelHeader{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;gap:12px}.panelTitle{font-weight:700;font-size:16px}.panelSubtitle,.panelHint{font-size:12px;color:var(--muted)}.mapWrap{background:#fbf7f1;border:1px dashed var(--panelEdge);border-radius:14px;padding:8px}.list{display:flex;flex-direction:column;gap:10px}.listHeader{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:10px}.listTitle{font-weight:700;font-size:16px}.listMeta{font-size:12px;color:var(--muted)}.listItems{display:grid;gap:10px}.filterChips{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.chipButton{appearance:none;border:1px solid var(--panelEdge);background:#f1e7da;color:#5b4c3b;padding:2px 8px;border-radius:999px;font-size:12px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.chipButton:hover{border-color:#d9cbb8;box-shadow:0 6px 12px #11111114}.card{background:#fff;border:1px solid var(--panelEdge);border-radius:14px;padding:12px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;animation:fadeUp .4s ease both}.card:hover{transform:translateY(-2px);box-shadow:0 12px 22px #11111114;border-color:#d9cbb8}.card[data-selected=true]{border-color:var(--accent);box-shadow:0 12px 24px #0b6b6b2e}.card[data-hovered=true]{border-color:var(--accent2)}.metaRow{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.badge{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;background:#0b6b6b1f;color:var(--accent);font-size:12px;font-weight:600}.chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#f1e7da;color:#5b4c3b;font-size:12px}.name{font-weight:700}.sub{margin-top:6px;font-size:13px;color:var(--muted)}.tags{display:inline-flex;flex-wrap:wrap;gap:6px;margin-left:6px}.tagButton{appearance:none;border:1px solid var(--panelEdge);background:#f1e7da;color:#5b4c3b;padding:2px 8px;border-radius:999px;font-size:12px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease}.tagButton:hover{border-color:#d9cbb8;box-shadow:0 6px 12px #11111114}.tagButton[data-active=true]{background:var(--accent);color:#fff;border-color:transparent}.tagButton.ghost{background:transparent;border-style:dashed;color:var(--accent)}.tagButton.ghost[data-active=true]{background:var(--accent);color:#fff;border-style:solid}.tagMuted{font-size:12px;color:var(--muted)}.videoRow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:6px}.link{color:var(--text);text-decoration:underline;text-underline-offset:3px;font-weight:600}.link:hover{color:var(--accent)}.note{margin-top:6px;font-size:12px;color:var(--muted)}.empty{background:#fbf3e7;border:1px dashed var(--panelEdge);border-radius:12px;padding:14px;color:var(--muted)}.btn{appearance:none;border:1px solid var(--panelEdge);background:#fff;color:var(--text);padding:8px 12px;border-radius:12px;cursor:pointer;font-size:13px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.btn:hover{transform:translateY(-1px);border-color:#d9cbb8;box-shadow:0 8px 16px #11111114}.btn.primary{background:var(--accent);color:#fff;border-color:transparent}.btn.primary:hover{box-shadow:0 10px 20px #0b6b6b40}.btn.ghost{border-style:dashed;background:transparent;color:var(--accent)}.btn.slim{padding:8px 10px;font-size:12px}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.picker{background:var(--panel);border:1px solid var(--panelEdge);border-radius:18px;padding:14px;box-shadow:var(--shadow);display:grid;gap:10px;animation:fadeUp .4s ease both}.pickerHeader{display:flex;justify-content:space-between;align-items:baseline}.pickerTitle{font-weight:700}.pickerNote{font-size:13px;color:var(--muted)}.pickerSub{font-size:12px;margin-top:6px}.footer{font-size:12px;color:var(--muted);text-align:center;padding:10px 0 0}.map-shape{transition:fill .2s ease,stroke .2s ease}.map-pin{transform-box:fill-box;transform-origin:center;transition:transform .2s ease,opacity .2s ease}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:980px){.layout,.filters{grid-template-columns:1fr}.hero{flex-direction:column;align-items:flex-start}.heroActions{width:100%}}
