.discovery-page { overflow:auto; background:#faf6ed; color:#173252; font-family:var(--isekari-font-ui); }
.discovery-page main { width:min(1120px,100%); margin:auto; padding:32px 24px 80px; }
.discovery-page a { color:inherit; }.back { display:inline-flex; align-items:center; min-height:44px; text-decoration:none; }
.eyebrow { color:#89622f; font-size:11px; letter-spacing:.18em; margin:24px 0; }
#progress { display:flex; align-items:center; gap:9px; margin-bottom:24px; min-height:10px; }
#progress span { width:7px; height:7px; flex:0 0 7px; border-radius:50%; background:#e3ddd2; }
#progress .done { background:#c6ab7b; }#progress .active { background:#9b702f; box-shadow:0 0 0 2px #eee2cd; }
.discovery-page h1 { font:500 clamp(34px,5vw,56px)/1.12 var(--isekari-font-display); margin:0 0 20px; }
.discovery-page h2 { font:500 27px/1.2 var(--isekari-font-display); }
.hint { color:#657482; font-size:13px; line-height:1.8; max-width:700px; }
.choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:30px 0; max-width:850px; }
.discovery-page button { cursor:pointer; min-height:48px; border:1px solid #d9ccb7; border-radius:10px; padding:15px 20px; background:transparent; color:#173252; font:500 14px/1.5 var(--isekari-font-ui); }
.choices button { text-align:left; }.choices button[aria-pressed=true] { border-color:#a87c40; background:#f0e7d7; }
.discovery-page button:hover { border-color:#a87c40; }.discovery-page :focus-visible { outline:2px solid #9a702f; outline-offset:4px; }
.actions { display:flex; flex-wrap:wrap; gap:12px; margin:28px 0; }.discovery-page .primary { background:#173252; color:#fff7e6; border-color:#173252; }
.discovery-page button:disabled { opacity:.45; cursor:default; }.results { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:32px 0; }
.recommendation { padding:22px; border:1px solid #e0d5c4; border-radius:14px; min-width:0; background:#fffaf2; font-family:var(--isekari-font-ui); }
.recommendation:first-child { border-color:#b49362; }.recommendation h2 { font:600 clamp(17px,1.5vw,20px)/1.4 var(--isekari-font-ui); overflow-wrap:anywhere; margin:0 0 12px; }
.recommendation h3 { font:600 13px/1.5 var(--isekari-font-ui); margin:18px 0 6px; }.recommendation p { font:400 13px/1.7 var(--isekari-font-ui); margin:12px 0; }
.recommendation .first-choice { color:#8a652f; font-size:10px; font-weight:600; letter-spacing:.045em; margin:0 0 10px; }
.tags { display:flex; flex-wrap:wrap; gap:6px; }.tags span { font:500 10px/1.4 var(--isekari-font-ui); background:#f0e9dd; padding:4px 8px; border-radius:20px; }
.recommendation a { display:inline-flex; min-height:44px; align-items:center; color:#86602d; font:500 12px/1.5 var(--isekari-font-ui); }.recommendation button { display:block; min-height:44px; padding:9px 13px; font-size:12px; margin-top:4px; }
.discovery-page .edit-answers { min-height:44px; padding:0; border:0; font-size:12px; color:#6d7780; }
.replacement { animation:arrival .22s ease; }
#conversation { animation:arrival .25s ease; }@keyframes arrival { from { opacity:.3; transform:translateY(6px); } to { opacity:1; transform:none; } }
@media(max-width:1000px) { .results { grid-template-columns:repeat(2,minmax(0,1fr)); }.recommendation:first-child { grid-column:1/-1; } }
@media(max-width:580px) { .discovery-page main { padding:20px 20px 50px; }.choices,.results { grid-template-columns:1fr; }.actions .primary { width:100%; }.recommendation { padding:18px; }.results { margin:18px 0; gap:14px; }.recommendation p { font-size:12px; line-height:1.7; }.recommendation h3 { margin-top:14px; } }
@media(prefers-reduced-motion:reduce) { #conversation,.replacement { animation:none; } }
