.journal-page.svelte-14r8ctp{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;height:100%}@media (min-width: 768px){.journal-page.svelte-14r8ctp{display:grid;grid-template-columns:42% 1fr}}@media (min-width: 1280px){.journal-page.svelte-14r8ctp{grid-template-columns:46% 1fr}}@media (min-width: 1600px){.journal-page.svelte-14r8ctp{grid-template-columns:44% 1fr}}.map-panel.svelte-14r8ctp{position:relative;flex-shrink:0;height:52vw;min-height:240px;max-height:52vh;transition:height .3s ease,min-height .3s ease}.map-panel.map-hidden.svelte-14r8ctp{height:0!important;min-height:0!important;overflow:hidden}.map-toggle-btn.svelte-14r8ctp{display:block;width:100%;background:var(--color-bg-secondary);border:none;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:10px 16px;font-size:12px;font-family:var(--font-sans);color:var(--color-text-secondary);cursor:pointer;text-align:center;white-space:nowrap;line-height:1;flex-shrink:0}@media (min-width: 768px){.map-toggle-btn.svelte-14r8ctp{display:none}.map-panel.svelte-14r8ctp{height:100%;max-height:none}}.map-el.svelte-14r8ctp{width:100%;height:100%;background:var(--color-bg-secondary)}.map-attr.svelte-14r8ctp{position:absolute;bottom:4px;right:6px;font-size:10px;color:#00000073;z-index:400;pointer-events:none;line-height:1.2}.map-attr.svelte-14r8ctp a:where(.svelte-14r8ctp){pointer-events:auto;color:inherit}.content-panel.svelte-14r8ctp{overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;display:flex;flex-direction:column}.content-panel.svelte-14r8ctp::-webkit-scrollbar{display:none}.welcome-block.svelte-14r8ctp{padding:var(--space-6) var(--space-5) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-bg)}.welcome-title.svelte-14r8ctp{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:600;color:var(--color-text);margin:0 0 var(--space-2);line-height:1.2}.welcome-text.svelte-14r8ctp{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-4);line-height:1.6}.clock-row.svelte-14r8ctp{display:flex;align-items:center;gap:var(--space-4)}.lottie-wrap.svelte-14r8ctp{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.lottie-credit.svelte-14r8ctp{font-size:9px;color:var(--color-text-tertiary);text-align:center;margin-top:2px;max-width:100px;line-height:1.2}.clock-info.svelte-14r8ctp{flex:1}.japan-clock.svelte-14r8ctp{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-1)}.clock-label.svelte-14r8ctp{font-size:var(--text-sm);color:var(--color-text-secondary)}.clock-time.svelte-14r8ctp{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:600;color:var(--color-primary);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.clock-message.svelte-14r8ctp{font-size:var(--text-sm);color:var(--color-text-secondary);font-style:italic;margin:0}.stats-bar.svelte-14r8ctp{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:5}.stat-item.svelte-14r8ctp{font-size:var(--text-sm);font-weight:500;color:var(--color-text)}.divider.svelte-14r8ctp{color:var(--color-text-tertiary);font-size:var(--text-sm)}.author-bar.svelte-14r8ctp{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);background:var(--color-primary-light);border-bottom:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-primary);flex-shrink:0}.author-link.svelte-14r8ctp{margin-left:auto;font-weight:600;color:var(--color-primary);text-decoration:none}.author-link.svelte-14r8ctp:hover{text-decoration:underline}.timeline.svelte-14r8ctp{list-style:none;padding:0;margin:0;flex:1}.stop-card.svelte-14r8ctp{padding:var(--space-6) var(--space-5);border-bottom:1px solid var(--color-border);transition:background var(--transition-fast)}.stop-card.svelte-14r8ctp:last-child{border-bottom:none}.stop-card.upcoming.svelte-14r8ctp{opacity:.55}.stop-head.svelte-14r8ctp{display:flex;gap:var(--space-3);align-items:flex-start;margin-bottom:var(--space-4)}.stop-num.svelte-14r8ctp{flex-shrink:0;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700;margin-top:2px}.num-current.svelte-14r8ctp{background:var(--color-primary);color:var(--color-primary-text);box-shadow:0 0 0 3px var(--color-primary-light)}.num-past.svelte-14r8ctp{background:var(--color-text-tertiary);color:#fff}.num-upcoming.svelte-14r8ctp{background:var(--color-bg-secondary);color:var(--color-text-tertiary);border:2px solid var(--color-border)}.stop-info.svelte-14r8ctp{flex:1;min-width:0}.badge.svelte-14r8ctp{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:99px;margin-bottom:var(--space-1)}.badge-current.svelte-14r8ctp{background:#dcfce7;color:#15803d}.badge-past.svelte-14r8ctp{background:var(--color-bg-secondary);color:var(--color-text-tertiary)}.badge-upcoming.svelte-14r8ctp{background:#dbeafe;color:#1d4ed8}.pulse-dot.svelte-14r8ctp{width:7px;height:7px;border-radius:50%;background:#16a34a;display:inline-block;animation:svelte-14r8ctp-pulse 2s ease-in-out infinite}@keyframes svelte-14r8ctp-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.stop-name.svelte-14r8ctp{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:600;color:var(--color-text);margin:0 0 var(--space-1);line-height:1.15}.stop-dates.svelte-14r8ctp{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.nights-label.svelte-14r8ctp{color:var(--color-text-tertiary)}.photo-strip.svelte-14r8ctp{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-1);margin-bottom:var(--space-4)}.photo-strip.svelte-14r8ctp::-webkit-scrollbar{display:none}.photo-thumb.svelte-14r8ctp{flex-shrink:0;width:100px;height:100px;border-radius:10px;overflow:hidden;border:none;padding:0;cursor:pointer;background:var(--color-bg-secondary)}.photo-thumb.svelte-14r8ctp img:where(.svelte-14r8ctp){width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .2s}.photo-thumb.svelte-14r8ctp:hover img:where(.svelte-14r8ctp){transform:scale(1.06)}.photo-more.svelte-14r8ctp{flex-shrink:0;width:100px;height:100px;border-radius:10px;background:var(--color-bg-secondary);border:1.5px dashed var(--color-border);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.photo-more.svelte-14r8ctp:hover{border-color:var(--color-primary);color:var(--color-primary)}.photo-add.svelte-14r8ctp{flex-shrink:0;width:100px;height:100px;border-radius:10px;border:1.5px dashed var(--color-border);background:none;color:var(--color-text-tertiary);font-size:1.4rem;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all var(--transition-fast)}.photo-add.svelte-14r8ctp:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.photo-empty-cta.svelte-14r8ctp{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-tertiary);padding:var(--space-2) var(--space-3);border:1.5px dashed var(--color-border);border-radius:var(--radius-md);text-decoration:none;margin-bottom:var(--space-4);transition:all var(--transition-fast)}.photo-empty-cta.svelte-14r8ctp:hover{border-color:var(--color-primary);color:var(--color-primary)}.entry.svelte-14r8ctp{position:relative;margin-bottom:var(--space-5)}.entry-date-row.svelte-14r8ctp{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.entry-date.svelte-14r8ctp{font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary);flex:1}.entry-date.svelte-14r8ctp:after{content:"";display:inline-block;width:32px;height:1px;background:var(--color-border);margin-left:var(--space-2);vertical-align:middle}.entry-btns.svelte-14r8ctp{display:flex;gap:2px;opacity:0;transition:opacity var(--transition-fast)}.entry.svelte-14r8ctp:hover .entry-btns:where(.svelte-14r8ctp){opacity:1}@media (max-width: 768px){.entry-btns.svelte-14r8ctp{opacity:.5}}.icon-btn.svelte-14r8ctp{background:none;border:none;cursor:pointer;color:var(--color-text-tertiary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:.8rem;min-height:32px;transition:all var(--transition-fast)}.icon-btn.svelte-14r8ctp:hover{background:var(--color-bg-secondary);color:var(--color-text)}.icon-btn-danger.svelte-14r8ctp:hover{background:#fee2e2;color:#dc2626}.entry-body.svelte-14r8ctp{margin:0;font-family:var(--font-serif);font-size:var(--text-lg);line-height:1.9;color:var(--color-text);white-space:pre-wrap;font-style:normal}.entry-photo-strip.svelte-14r8ctp{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;padding:var(--space-2) 0;flex-wrap:wrap}.entry-photo-strip.svelte-14r8ctp::-webkit-scrollbar{display:none}.entry-photo-thumb.svelte-14r8ctp{width:80px;height:60px;flex-shrink:0;border-radius:var(--radius);overflow:hidden;border:none;padding:0;cursor:pointer;background:var(--color-bg-secondary)}.entry-photo-thumb.svelte-14r8ctp img:where(.svelte-14r8ctp){width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .2s ease}.entry-photo-thumb.svelte-14r8ctp:hover img:where(.svelte-14r8ctp){transform:scale(1.05)}.picker-label.svelte-14r8ctp{font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary);margin:var(--space-3) 0 var(--space-2);display:flex;align-items:center;gap:var(--space-2)}.picker-empty.svelte-14r8ctp{font-size:var(--text-sm);color:var(--color-text-tertiary);margin:var(--space-3) 0;display:flex;align-items:center;gap:var(--space-2)}.photo-picker.svelte-14r8ctp{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.picker-thumb.svelte-14r8ctp{position:relative;width:72px;height:54px;border-radius:var(--radius);overflow:hidden;border:2px solid transparent;padding:0;cursor:pointer;background:var(--color-bg-secondary);transition:border-color .15s ease,box-shadow .15s ease}.picker-thumb.svelte-14r8ctp img:where(.svelte-14r8ctp){width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;opacity:.75;transition:opacity .15s ease}.picker-thumb.svelte-14r8ctp:hover img:where(.svelte-14r8ctp){opacity:1}.picker-thumb.picker-selected.svelte-14r8ctp{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.picker-thumb.picker-selected.svelte-14r8ctp img:where(.svelte-14r8ctp){opacity:1}.picker-check.svelte-14r8ctp{position:absolute;top:3px;right:3px;width:18px;height:18px;background:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;color:#fff}.entry-form.svelte-14r8ctp{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4)}.form-day-label.svelte-14r8ctp{font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-2)}.form-date-input.svelte-14r8ctp{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-size:var(--text-sm);margin-bottom:var(--space-3);box-sizing:border-box}.form-textarea.svelte-14r8ctp{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-family:var(--font-serif);font-size:var(--text-base);font-style:italic;line-height:1.8;resize:vertical;box-sizing:border-box;margin-bottom:var(--space-3);transition:border-color var(--transition-fast)}.form-textarea.svelte-14r8ctp:focus{outline:none;border-color:var(--color-primary)}.form-actions.svelte-14r8ctp{display:flex;gap:var(--space-2)}.btn-save.svelte-14r8ctp{background:var(--color-primary);color:var(--color-primary-text);border:none;border-radius:var(--radius-md);padding:var(--space-2) var(--space-5);font-size:var(--text-sm);font-weight:600;cursor:pointer;min-height:38px;transition:background var(--transition-fast)}.btn-save.svelte-14r8ctp:hover:not(:disabled){background:var(--color-primary-dark)}.btn-save.svelte-14r8ctp:disabled{opacity:.5;cursor:not-allowed}.btn-cancel.svelte-14r8ctp{background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;min-height:38px;transition:background var(--transition-fast)}.btn-cancel.svelte-14r8ctp:hover{background:var(--color-bg-secondary)}.add-entry-btn.svelte-14r8ctp{display:flex;align-items:center;gap:var(--space-2);background:none;border:1.5px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--color-text-tertiary);cursor:pointer;min-height:40px;width:100%;margin-bottom:var(--space-4);transition:all var(--transition-fast)}.add-entry-btn.svelte-14r8ctp:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.locations-row.svelte-14r8ctp{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.loc-chip.svelte-14r8ctp{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);padding:3px 10px;border-radius:99px;background:var(--color-bg-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border)}.loc-chip.loc-visited.svelte-14r8ctp{background:var(--color-primary-light);color:var(--color-primary);border-color:transparent}.page-footer.svelte-14r8ctp{padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border);font-size:.72rem;color:var(--color-text-tertiary);text-align:center;flex-shrink:0}.page-footer.svelte-14r8ctp a:where(.svelte-14r8ctp){color:inherit}.loading-state.svelte-14r8ctp,.error-state.svelte-14r8ctp{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--space-4);color:var(--color-text-secondary);font-size:var(--text-sm)}.spinner.svelte-14r8ctp{width:34px;height:34px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:svelte-14r8ctp-spin .75s linear infinite}@keyframes svelte-14r8ctp-spin{to{transform:rotate(360deg)}}.jp-popup .leaflet-popup-content-wrapper{border-radius:10px;box-shadow:0 4px 20px #00000026}.jp-popup .leaflet-popup-tip{display:none}.lb-backdrop.svelte-14r8ctp{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000eb;z-index:1000;display:flex;align-items:center;justify-content:center}.lb-box.svelte-14r8ctp{position:relative;max-width:92vw;display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.lb-img.svelte-14r8ctp{max-width:100%;max-height:84dvh;-o-object-fit:contain;object-fit:contain;border-radius:var(--radius-md)}.lb-caption.svelte-14r8ctp{color:#ffffffb3;font-size:var(--text-sm);margin:0;text-align:center}.lb-close.svelte-14r8ctp{position:fixed;top:var(--space-4);right:var(--space-4);background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:1.1rem;width:44px;height:44px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast)}.lb-close.svelte-14r8ctp:hover{background:#ffffff38}.lb-arrow.svelte-14r8ctp{position:fixed;top:50%;transform:translateY(-50%);background:#ffffff1a;border:1px solid rgba(255,255,255,.18);color:#fff;font-size:1.1rem;width:48px;height:64px;border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast)}.lb-arrow.svelte-14r8ctp:hover{background:#fff3}.lb-prev.svelte-14r8ctp{left:var(--space-3)}.lb-next.svelte-14r8ctp{right:var(--space-3)}.lb-counter.svelte-14r8ctp{position:fixed;bottom:var(--space-5);left:50%;transform:translate(-50%);color:#ffffff80;font-size:var(--text-sm)}
