.romance-page{box-sizing:border-box;width:min(100%, var(--m-stage-width));background:var(--m-bg);margin:0 auto}.romance-page *,.romance-page :before,.romance-page :after{box-sizing:border-box}.romance-page a{color:inherit}.romance-page button,.romance-page input{font:inherit}.romance-nav{z-index:20;min-height:var(--m-control-height);padding:0 var(--m-space-lg);border-bottom:var(--m-border-width) solid var(--m-line);background:color-mix(in srgb, var(--m-bg) 94%, transparent);-webkit-backdrop-filter:blur(var(--m-sticky-blur));backdrop-filter:blur(var(--m-sticky-blur));justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.romance-nav a{font-size:var(--m-font-copy);font-weight:800;text-decoration:none}.romance-nav span{color:var(--m-muted);font-size:var(--m-font-meta)}.romance-hero{min-height:calc(var(--m-screen-height) - var(--m-control-height));position:relative;overflow:hidden}.media-slot{border:var(--m-border-width) solid var(--m-line);background:var(--m-surface);color:var(--m-dim);place-items:center;display:grid;overflow:hidden}.media-slot img{object-fit:cover;object-position:center 25%;width:100%;height:100%;display:block}.hero-slot{border-width:0;position:absolute;inset:0}.hero-shade{background:color-mix(in srgb, var(--m-bg) 48%, transparent);position:absolute;inset:0}.hero-copy{inset:auto var(--m-space-lg) var(--m-space-2xl);z-index:1;position:absolute}.hero-copy p,.romance-boundary>p,.story-copy p,.flow-heading>p,.flow-step>p{margin:0 0 var(--m-space-md);color:var(--m-accent-strong);font-size:var(--m-font-meta);letter-spacing:var(--m-letter-spacing-eyebrow);font-weight:800}.hero-copy h1{letter-spacing:-.03em;word-break:keep-all;margin:0;font-size:clamp(32px,8.6vw,38px);line-height:1.1}.hero-copy>span{margin-top:var(--m-space-md);color:var(--m-muted);font-size:var(--m-font-label);display:block}.hero-copy>a{min-height:var(--m-hero-cta-height);margin-top:var(--m-space-xl);border-radius:var(--m-radius-control);background:var(--m-accent);place-items:center;font-weight:800;text-decoration:none;display:grid}.romance-boundary,.consultation-flow{padding:var(--m-space-section) var(--m-space-lg)}.romance-boundary h2,.story-copy h2,.flow-heading h2{font-size:var(--m-font-heading-md);line-height:var(--m-leading-heading);letter-spacing:-.02em;word-break:keep-all;margin:0}.romance-boundary ul{gap:var(--m-space-md);margin:var(--m-space-xl) 0 0;padding:0;list-style:none;display:grid}.romance-boundary li{padding:var(--m-space-md) 0 var(--m-space-md) var(--m-space-xl);border-top:var(--m-border-width) solid var(--m-line);color:var(--m-muted);font-size:var(--m-font-label);line-height:var(--m-leading-compact);position:relative}.romance-boundary li:before{color:var(--m-accent-strong);content:"✓";position:absolute;left:0}.story-beat{border-top:var(--m-border-width) solid var(--m-line);border-bottom:var(--m-border-width) solid var(--m-line);display:grid}.webtoon-slot{aspect-ratio:4/5;border-width:0;width:100%}.story-copy{padding:var(--m-space-2xl) var(--m-space-lg)}.story-copy>span{margin-top:var(--m-space-md);color:var(--m-muted);font-size:var(--m-font-copy);line-height:var(--m-leading-body);word-break:keep-all;display:block}.consultation-flow{scroll-margin-top:var(--m-control-height)}.romance-page.flow-active #consultation,.romance-page.flow-active .consultation-flow{min-height:calc(100svh - var(--m-control-height))}.flow-heading>span{margin-top:var(--m-space-md);color:var(--m-muted);font-size:var(--m-font-copy);line-height:var(--m-leading-body);word-break:keep-all;display:block}.concern-list{gap:var(--m-space-md);margin-top:var(--m-space-2xl);display:grid}.concern-list button{gap:var(--m-space-sm);padding:var(--m-space-card);border:var(--m-border-width) solid var(--m-line);border-radius:var(--m-radius-surface);background:var(--m-surface);color:var(--m-text);text-align:left;cursor:pointer;display:grid}.concern-list button:hover{border-color:var(--m-accent);background:var(--m-surface-raised)}.concern-list button span{color:var(--m-accent-strong);font-size:var(--m-font-meta);letter-spacing:.04em;font-weight:800}.concern-list button strong{font-size:var(--m-font-heading-sm);line-height:var(--m-leading-heading-sm);word-break:keep-all}.concern-list button small{color:var(--m-muted);font-size:var(--m-font-label);line-height:var(--m-leading-compact);word-break:keep-all}.flow-step,.teaser-result{align-content:start;gap:var(--m-space-md);width:100%;margin-top:var(--m-space-2xl);padding:var(--m-space-card);border:var(--m-border-width) solid var(--m-line);border-radius:var(--m-radius-surface);background:var(--m-surface);animation:.22s ease-out both romance-step-in;display:grid}.flow-step h3,.teaser-result h3{margin:0 0 var(--m-space-md);font-size:var(--m-font-heading-md);line-height:var(--m-leading-heading);word-break:keep-all}.flow-step label,.flow-step legend{color:var(--m-muted);font-size:var(--m-font-label)}.flow-step input{width:100%;min-height:var(--m-touch-target);padding:var(--m-space-field) var(--m-space-md);border:var(--m-border-width) solid var(--m-line);border-radius:var(--m-radius-control);background:var(--m-bg);color:var(--m-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.flow-step .birthdate-input{gap:var(--m-space-sm);color:var(--m-muted);display:grid}.flow-step .birthdate-input span{font-size:var(--m-font-label)}.flow-step .birthdate-input small{color:var(--m-muted)}.flow-step fieldset{border:0;min-width:0;margin:0;padding:0}.flow-step legend{margin-bottom:var(--m-space-sm)}.choice-row{gap:var(--m-space-sm);grid-template-columns:repeat(2,1fr);display:grid}.choice-row label,.unknown{align-items:center;gap:var(--m-space-sm);min-height:var(--m-touch-target);padding:0 var(--m-space-md);border:var(--m-border-width) solid var(--m-line);color:var(--m-text);display:flex}.choice-row input,.unknown input{width:auto;min-height:auto;accent-color:var(--m-accent);padding:0}.flow-step small{color:var(--m-muted);font-size:var(--m-font-meta);line-height:var(--m-leading-compact)}.step-copy{color:var(--m-muted);font-size:var(--m-font-copy);line-height:var(--m-leading-body);word-break:keep-all}.option-list{gap:var(--m-space-sm);display:grid}.option-list button{min-height:var(--m-touch-target);padding:var(--m-space-md);border:var(--m-border-width) solid var(--m-line);border-radius:var(--m-radius-control);background:var(--m-bg);color:var(--m-text);text-align:left;cursor:pointer;font-weight:700}.option-list button:hover{border-color:var(--m-accent);background:var(--m-surface-raised)}.form-error{color:var(--m-accent-strong);font-size:var(--m-font-meta);margin:0}.primary,.secondary,.text-button{min-height:var(--m-touch-target);border-radius:var(--m-radius-control);cursor:pointer;font-weight:800}.primary{background:var(--m-accent);color:var(--m-text);border:0}.secondary{border:var(--m-border-width) solid var(--m-line);background:var(--m-surface-raised);color:var(--m-text)}.text-button{color:var(--m-muted);background:0 0;border:0}.primary.link{min-height:var(--m-control-height);place-items:center;text-decoration:none;display:grid}.primary:active,.secondary:active{transform:scale(var(--m-active-scale))}.result-kicker{color:var(--m-accent-strong);font-size:var(--m-font-meta);letter-spacing:.05em;justify-content:space-between;font-weight:800;display:flex}.result-body{color:var(--m-muted);font-size:var(--m-font-copy);line-height:var(--m-leading-body);word-break:keep-all;text-align:left;margin:0}.evidence{margin-top:var(--m-space-md);border-top:var(--m-border-width) solid var(--m-line);display:grid}.evidence div{justify-content:space-between;gap:var(--m-space-md);padding:var(--m-space-md) 0;border-bottom:var(--m-border-width) solid var(--m-line);font-size:var(--m-font-label);display:flex}.evidence span{color:var(--m-muted)}.evidence strong{text-align:right}.provenance{gap:var(--m-space-sm);padding:var(--m-space-md);border:var(--m-border-width) solid var(--m-line);background:var(--m-bg);display:grid}.provenance p{padding-left:var(--m-space-lg);color:var(--m-muted);font-size:var(--m-font-meta);line-height:var(--m-leading-compact);margin:0;position:relative}.provenance p:before{color:var(--m-accent-strong);content:"·";position:absolute;left:0}.provenance .confidence{color:var(--m-text)}.action{padding:var(--m-space-card);background:var(--m-paper);color:var(--m-paper-ink)}.action span{font-size:var(--m-font-meta);font-weight:800}.action p{margin:var(--m-space-sm) 0 0;font-size:var(--m-font-copy);line-height:var(--m-leading-copy)}.locked{margin-top:var(--m-space-md)}.locked>p{margin:0 0 var(--m-space-sm);color:var(--m-accent-strong);font-size:var(--m-font-meta);font-weight:800}.locked ol{margin:0;padding:0;list-style:none;display:grid}.locked li{justify-content:space-between;align-items:center;gap:var(--m-space-md);min-height:var(--m-touch-target);border-top:var(--m-border-width) solid var(--m-line);color:var(--m-muted);font-size:var(--m-font-label);display:flex}.locked li span{color:var(--m-dim);font-size:var(--m-font-meta);order:2}.result-actions{gap:var(--m-space-sm);margin-top:var(--m-space-md);display:grid}.share-status{color:var(--m-muted);font-size:var(--m-font-meta);text-align:center;margin:0}.romance-footer{justify-content:center;gap:var(--m-space-xl);padding:var(--m-space-2xl) var(--m-space-lg);border-top:var(--m-border-width) solid var(--m-line);color:var(--m-muted);font-size:var(--m-font-meta);display:flex}.romance-page :is(a,button,input):focus-visible{outline:var(--m-focus-width) solid var(--m-accent-strong);outline-offset:var(--m-focus-offset)}@keyframes romance-step-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.primary:active,.secondary:active{transform:none}.flow-step,.teaser-result{animation:none}}.progressive-input .romance-personal-fields{gap:8px}.romance-personal-fields .romance-field-label,.romance-personal-fields>label:not(.progressive-input-unknown){margin-top:4px;font-size:14px}
