.diagnostic-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10000;opacity:0;visibility:hidden;background:#121418b3;justify-content:center;align-items:center;width:100vw;height:100vh;padding:1.5rem;transition:opacity .3s,visibility .3s;display:flex;position:fixed;top:0;left:0}.diagnostic-overlay.active{opacity:1;visibility:visible}.diagnostic-modal{background:#fff;border:1px solid #00000014;border-radius:16px;flex-direction:column;width:100%;max-width:760px;max-height:90vh;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 40px -10px #00000040}.diagnostic-header{background:#faf9f6;border-bottom:1px solid #f0eee9;padding:1.5rem 2rem 1rem;position:relative}.diagnostic-close{color:#71717a;cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.75rem;line-height:1;transition:color .2s;position:absolute;top:1.25rem;right:1.5rem}.diagnostic-close:hover{color:#18181b}.diagnostic-progress-wrap{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.diagnostic-step-tag{color:var(--color-accent,#8c533e);text-transform:uppercase;letter-spacing:1.5px;font-size:.75rem;font-weight:700}.diagnostic-progress-bar{background:#e4e2dd;border-radius:2px;width:100%;height:4px;overflow:hidden}.diagnostic-progress-fill{background:var(--color-accent,#8c533e);width:20%;height:100%;transition:width .4s}.diagnostic-body{flex-grow:1;padding:2rem;overflow-y:auto}.diagnostic-question-title{font-family:var(--font-display,"Playfair Display", serif);color:#1c1917;margin-bottom:.5rem;font-size:1.45rem;font-weight:700;line-height:1.3}.diagnostic-question-desc{color:#78716c;margin-bottom:1.5rem;font-size:.95rem}.diagnostic-options{flex-direction:column;gap:.85rem;display:flex}.diagnostic-option{cursor:pointer;text-align:left;color:#292524;background:#fff;border:1.5px solid #e7e5e4;border-radius:12px;align-items:flex-start;gap:1rem;padding:1.1rem 1.25rem;font-family:inherit;transition:all .2s;display:flex}.diagnostic-option:hover{border-color:var(--color-accent,#8c533e);background:#fdfbf9;transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.diagnostic-option.selected{border-color:var(--color-accent,#8c533e);background:#fcf8f5;box-shadow:0 0 0 2px #8c533e26}.diagnostic-badge{color:#57534e;background:#f5f5f4;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;font-weight:700;transition:all .2s;display:inline-flex}.diagnostic-option:hover .diagnostic-badge,.diagnostic-option.selected .diagnostic-badge{background:var(--color-accent,#8c533e);color:#fff}.diagnostic-option-text{color:#292524;font-size:.98rem;font-weight:500;line-height:1.45}.diagnostic-footer{background:#faf9f6;border-top:1px solid #f0eee9;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 2rem;display:flex}.diagnostic-btn-back{color:#57534e;cursor:pointer;background:0 0;border:1px solid #d6d3d1;border-radius:8px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:600;transition:all .2s}.diagnostic-btn-back:hover:not(:disabled){color:#1c1917;background:#f5f5f4;border-color:#a8a29e}.diagnostic-btn-back:disabled{opacity:.4;cursor:not-allowed}.diagnostic-btn-early-exit{color:var(--color-accent,#8c533e);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;border-radius:6px;align-items:center;gap:.4rem;padding:.5rem .75rem;font-size:.88rem;font-weight:600;text-decoration:underline;transition:all .2s;display:inline-flex}.diagnostic-btn-early-exit:hover{color:#6e3d2c;background:#8c533e14}.result-screen{animation:.4s fadeInResult}@keyframes fadeInResult{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.result-badge-header{color:var(--color-accent,#8c533e);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:.5rem;font-size:.75rem;font-weight:700;display:inline-block}.result-main-card{align-items:flex-start;gap:1.75rem;margin-bottom:1.75rem;display:flex}.result-image-box{text-align:center;flex-shrink:0;width:170px}.result-image-box img{border:1px solid #0000000f;border-radius:10px;width:100%;height:auto;box-shadow:0 8px 24px #0000001f}.result-info-box{flex-grow:1}.result-book-title{font-family:var(--font-display,"Playfair Display", serif);color:#1c1917;margin-bottom:.35rem;font-size:1.6rem;font-weight:700;line-height:1.25}.result-book-subtitle{color:var(--color-accent,#8c533e);margin-bottom:.75rem;font-size:.95rem;font-weight:600}.result-rationale{color:#57534e;border-left:3px solid var(--color-accent,#8c533e);background:#faf9f6;border-radius:8px;padding:.85rem 1rem;font-size:.92rem;line-height:1.5}.result-section-title{color:#292524;text-transform:uppercase;letter-spacing:.75px;align-items:center;gap:.5rem;margin-top:1.5rem;margin-bottom:.75rem;font-size:.9rem;font-weight:700;display:flex}.result-list{flex-direction:column;gap:.5rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.result-list-item{color:#3f3f46;align-items:flex-start;gap:.65rem;font-size:.92rem;line-height:1.45;display:flex}.match-icon{color:#15803d;flex-shrink:0;margin-top:-1px;font-size:1rem;font-weight:700}.spec-icon{color:#78716c;flex-shrink:0;margin-top:-3px;font-size:1.1rem}.result-actions{border-top:1px solid #f0eee9;flex-wrap:wrap;gap:.85rem;margin-top:1.75rem;padding-top:1.25rem;display:flex}.result-actions .btn-primary,.result-actions .btn-secondary{text-align:center;flex:1;min-width:170px;padding:.85rem 1rem;font-size:.92rem}.result-restart-wrap{text-align:center;margin-top:1rem}.btn-restart{color:#78716c;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;font-size:.85rem;text-decoration:underline;transition:color .2s}.btn-restart:hover{color:#1c1917}@media (width<=640px){.diagnostic-modal{max-height:95vh}.diagnostic-body{padding:1.25rem}.result-main-card{text-align:center;flex-direction:column;align-items:center}.result-image-box{width:140px}.result-rationale{text-align:left}.result-actions{flex-direction:column}.result-actions .btn-primary,.result-actions .btn-secondary{width:100%}.diagnostic-footer{flex-direction:column;align-items:stretch;padding:1rem}.diagnostic-btn-back{text-align:center;order:2}.diagnostic-btn-early-exit{text-align:center;order:1;justify-content:center}}
