:root:has(body>main[data-app-theme=refined]){--color-brand-dark:#19263d;--color-brand-accent:#334766;--color-brand-muted:#647086;--color-brand-white:#fff;--color-brand-light:#f4f5fa;--color-brand-danger:#c9324c;--color-brand-secondary:#a2aec0;--color-brand-gradient-mid:#283b59;--color-brand-danger-hover:#ac243d;--color-brand-danger-light:#e64c66;--app-gold:#b29a67;--app-rating-track:#dfe4ed;--app-rating-input-track:#8794a7;--app-highlight-start:#c9324c20;--app-highlight-end:#c9324c20;--app-heading-font:"Yu Mincho", "Hiragino Mincho ProN", "Noto Serif JP", serif;--background:var(--color-brand-light);--foreground:var(--color-brand-dark);--card:var(--color-brand-white);--card-foreground:var(--color-brand-dark);--popover:var(--color-brand-white);--popover-foreground:var(--color-brand-dark);--primary:var(--color-brand-accent);--primary-foreground:#fff;--secondary:#e9edf4;--secondary-foreground:var(--color-brand-dark);--muted:#e9edf4;--muted-foreground:var(--color-brand-muted);--accent:#e9edf4;--accent-foreground:var(--color-brand-dark);--destructive:var(--color-brand-danger);--border:#d7deea;--input:#bdc7d7;--ring:var(--color-brand-accent);--color-hh-background:var(--background);--color-hh-headline:var(--foreground);--color-hh-paragraph:var(--muted-foreground);--color-hh-button:var(--color-brand-accent);--color-hh-button-text:#fff;--color-hh-card:#fff;--color-hh-highlight:var(--color-brand-danger);--color-hh-secondary:var(--color-brand-secondary);--color-hh-tertiary:var(--color-brand-danger);--color-hh-stroke:var(--color-brand-dark)}:root:has(body>main[data-app-theme=refined]) main h1,:root:has(body>main[data-app-theme=refined]) .app-section-title{font-family:var(--app-heading-font);letter-spacing:.04em;text-wrap:balance;overflow-wrap:anywhere}:root:has(body>main[data-app-theme=refined]){scroll-padding-block:5rem}:root:has(body>main[data-app-theme=refined]) main [id],:root:has(body>main[data-app-theme=refined]) :is(input,textarea,select,button,a){scroll-margin-block:6rem}:root:has(body>main[data-app-theme=refined]) :is(button,a,input,select,textarea){touch-action:manipulation}:root:has(body>main[data-app-theme=refined]) .app-dialog{width:100%;max-width:none;height:100%;max-height:none;color:var(--foreground);background:0 0;border:0;margin:0;padding:1rem;position:fixed;inset:0}:root:has(body>main[data-app-theme=refined]) .app-dialog[open]{place-items:center;display:grid}:root:has(body>main[data-app-theme=refined]) .app-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#121e328c}:root:has(body>main[data-app-theme=refined]) .app-dialog-panel{overscroll-behavior:contain;border:1px solid var(--border);background:var(--card);border-radius:1rem;width:100%;max-width:28rem;max-height:calc(100dvh - 2rem);overflow-y:auto;box-shadow:0 20px 70px #121e3233}:root:has(body>main[data-app-theme=refined]) .header-glass{border-bottom:1px solid var(--border);background:#fffffff5}:root:has(body>main[data-app-theme=refined]) .app-rewards-banner{color:#f0e5cc;background:var(--color-brand-dark);border-bottom:1px solid #b29a6740}:root:has(body>main[data-app-theme=refined]) .app-hero{color:#fff;background:linear-gradient(125deg,#121e32,#20314d)}:root:has(body>main[data-app-theme=refined]) .app-hero:after{content:"";pointer-events:none;border:1px solid #a2aec03d;position:absolute;inset:12px}:root:has(body>main[data-app-theme=refined]) .app-hero h1{color:#fff;font-weight:700;line-height:1.5}:root:has(body>main[data-app-theme=refined]) .app-hero h1 br{display:block}:root:has(body>main[data-app-theme=refined]) .app-hero .rich-text-highlight{color:#ff8496}:root:has(body>main[data-app-theme=refined]) .app-hero-badge{color:#e4d4b1;background:#ffffff0a;border-color:#b29a6759}:root:has(body>main[data-app-theme=refined]) .app-hero-badge>span{background:var(--app-gold);animation:none}:root:has(body>main[data-app-theme=refined]) .app-hero-secondary{color:#fff;background:#ffffff0f;border-color:#ffffff4d;border-radius:8px}:root:has(body>main[data-app-theme=refined]) .app-hero-secondary:hover{background:#ffffff1f;border-color:#fff9}:root:has(body>main[data-app-theme=refined]) .btn-shimmer,:root:has(body>main[data-app-theme=refined]) .app-cta{color:#fff;background:linear-gradient(#d23853,#b82743);border-radius:8px;transition:background .18s,box-shadow .18s,transform .18s;animation:none;box-shadow:inset 0 1px #ffffff40,0 3px 10px #ac243d2e}:root:has(body>main[data-app-theme=refined]) .btn-shimmer:hover,:root:has(body>main[data-app-theme=refined]) .app-cta:hover{background:linear-gradient(#cc354f,#a9213b);animation:none;box-shadow:inset 0 1px #fff3,0 4px 14px #ac243d3d}:root:has(body>main[data-app-theme=refined]) .app-cta.fab-button{border-radius:50%}:root:has(body>main[data-app-theme=refined]) .glass-card,:root:has(body>main[data-app-theme=refined]) .dropdown-glass{border:1px solid var(--border);background:#fffffff7;box-shadow:0 12px 36px #19263d12,0 2px 4px #19263d08}:root:has(body>main[data-app-theme=refined]) .dropdown-glass{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff}:root:has(body>main[data-app-theme=refined]) .app-card,:root:has(body>main[data-app-theme=refined]) .shadow-card,:root:has(body>main[data-app-theme=refined]) .section-card{box-shadow:0 0 0 1px #19263d17,0 3px 12px #19263d0a}:root:has(body>main[data-app-theme=refined]) .app-card:hover,:root:has(body>main[data-app-theme=refined]) .section-card:hover{transform:translateY(-1px);box-shadow:0 0 0 1px #19263d26,0 6px 20px #19263d12}:root:has(body>main[data-app-theme=refined]) .app-cta-panel{box-shadow:inset 0 0 0 4px var(--color-brand-light);background:#fff;border-color:#bdc7d7}:root:has(body>main[data-app-theme=refined]) .input-glow:focus{box-shadow:0 0 0 3px #3347661f}:root:has(body>main[data-app-theme=refined]) :is(input,textarea)::placeholder{color:var(--color-brand-muted);opacity:1}:root:has(body>main[data-app-theme=refined]) :is(a,button,input,select,textarea,[tabindex]):focus-visible{outline-offset:3px;outline:2px solid #7184a3}:root:has(body>main[data-app-theme=refined]) .score-slider::-webkit-slider-thumb{border-color:var(--color-brand-danger);box-shadow:0 1px 4px #19263d33}:root:has(body>main[data-app-theme=refined]) .score-slider::-moz-range-thumb{border-color:var(--color-brand-danger);box-shadow:0 1px 4px #19263d33}:root:has(body>main[data-app-theme=refined]) .app-mobile-nav{padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -3px 16px #19263d0a}:root:has(body>main[data-app-theme=refined]) .animate-pulse-ring{animation:none}:root:has(body>main[data-app-theme=refined]) .animate-float-slow,:root:has(body>main[data-app-theme=refined]) .animate-float-medium{opacity:.08;animation:none}@media not (min-width:48rem){:root:has(body>main[data-app-theme=refined]) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){font-size:1rem}:root:has(body>main[data-app-theme=refined]) footer{padding-bottom:calc(5rem + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){:root:has(body>main[data-app-theme=refined]) .app-confetti{display:none}:root:has(body>main[data-app-theme=refined]) *,:root:has(body>main[data-app-theme=refined]) :before,:root:has(body>main[data-app-theme=refined]) :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}:root:has(body>main[data-app-theme=refined]) .animate-on-scroll{opacity:1;transform:none}}
.story-prose{--story-ink:var(--color-brand-dark);--story-muted:var(--color-brand-muted);--story-accent:var(--color-brand-danger);--story-gold:var(--app-gold,#b29a67);--story-rule:var(--border,#d7deea);--story-tint:var(--color-brand-light);color:var(--story-ink);letter-spacing:.02em;overflow-wrap:anywhere;font-feature-settings:"palt" 1;font-size:1.0625rem;line-height:2}.story-prose>*+*{margin-top:1.4em}.story-prose p:empty:after{content:" "}.story-prose :is(h2,h3){font-family:var(--app-heading-font,serif);letter-spacing:.04em;text-wrap:balance;scroll-margin-top:6rem;line-height:1.55}.story-prose h2{border-bottom:1px solid var(--story-rule);margin-top:2.6em;padding:.2em 0 .55em;font-size:1.45rem;font-weight:700;position:relative}.story-prose h2:after{content:"";background:linear-gradient(90deg, var(--story-accent), var(--story-gold));width:3.5rem;height:2px;position:absolute;bottom:-1px;left:0}.story-prose h3{border-left:3px solid var(--story-gold);margin-top:2em;padding-left:.9em;font-size:1.18rem;font-weight:700}.story-prose a{color:var(--story-accent);text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:1px}.story-prose a:hover{text-decoration-thickness:2px}.story-prose strong{font-weight:700}.story-prose mark{color:inherit;background:linear-gradient(#0000 58%,#e5c77d8c 58%);padding:0 .1em}.story-prose :is(ul,ol){padding-left:1.5em}.story-prose ul{list-style:outside}.story-prose ol{list-style:decimal}.story-prose li+li{margin-top:.35em}.story-prose li::marker{color:var(--story-gold);font-weight:700}.story-prose li>p{margin:0}.story-prose blockquote{background:var(--story-tint);color:var(--story-muted);border-radius:.75rem;margin-inline:0;padding:1.1em 1.3em 1.1em 3rem;position:relative}.story-prose blockquote:before{content:"“";color:var(--story-gold);font-family:Georgia,serif;font-size:2.6rem;line-height:1;position:absolute;top:.2rem;left:.9rem}.story-prose blockquote>*+*{margin-top:.8em}.story-prose hr{text-align:center;border:0;height:auto;margin-block:3em;overflow:visible}.story-prose hr:after{content:"◆ ◆ ◆";letter-spacing:1.2em;color:var(--story-gold);font-size:.55rem;display:inline-block}.story-prose figure{margin-inline:0}.story-prose img{background:var(--story-tint);border-radius:.875rem;width:100%;height:auto;display:block}.story-prose figcaption{text-align:center;color:var(--story-muted);margin-top:.6em;font-size:.8125rem;line-height:1.6}.story-prose .story-callout{background:#3347660d;border:1px solid #3347662e;border-radius:.875rem;padding:1.5em 1.3em 1.1em;font-size:.975rem;line-height:1.9;position:relative}.story-prose .story-callout[data-variant=caution]{background:#c9324c0d;border-color:#c9324c40}.story-prose .story-callout-label{background:var(--color-brand-accent);color:#fff;letter-spacing:.12em;border-radius:999px;padding:.1em .75em;font-size:.6875rem;font-weight:700;line-height:1.6;position:absolute;top:-.7em;left:1em}.story-prose .story-callout[data-variant=caution] .story-callout-label{background:var(--story-accent)}.story-prose .story-callout>p{margin:0}.story-editor .ProseMirror{outline:none;min-height:50vh;padding-bottom:30vh}.story-editor .ProseMirror .story-callout:before{content:"POINT";background:var(--color-brand-accent);color:#fff;letter-spacing:.12em;border-radius:999px;padding:.1em .75em;font-size:.6875rem;font-weight:700;line-height:1.6;position:absolute;top:-.7em;left:1em}.story-editor .ProseMirror .story-callout[data-variant=caution]:before{content:"注意";background:var(--color-brand-danger)}.story-editor .ProseMirror :is(p,h2,h3,aside).is-empty:before{content:attr(data-placeholder);float:left;pointer-events:none;height:0;color:var(--color-brand-muted);opacity:.55}.story-editor .ProseMirror img.ProseMirror-selectednode{outline:3px solid var(--color-brand-accent);outline-offset:3px}.story-editor .ProseMirror img{cursor:default}.story-editor .ProseMirror .has-focus:not(img){box-shadow:-14px 0 0 -11px var(--app-gold,#b29a67);border-radius:.25rem}.story-editor .ProseMirror-gapcursor:after{border-top-color:var(--color-brand-dark)}.story-carousel{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.story-carousel::-webkit-scrollbar{display:none}.story-carousel>*{scroll-snap-align:start}@media not (min-width:48rem){.story-prose{font-size:1rem;line-height:1.95}.story-prose h2{font-size:1.28rem}.story-prose h3{font-size:1.1rem}}
