*{box-sizing:border-box;margin:0;padding:0}body{color:#1a1a2e;background:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.app{max-width:640px;min-height:100vh;margin:0 auto;padding:20px}.app:has(.results-page){max-width:960px}.start-page{text-align:center;padding-top:80px}.start-page h1{margin-bottom:8px;font-size:1.8rem}.start-page p{color:#666;margin-bottom:32px}.start-form{gap:8px;max-width:400px;margin:0 auto;display:flex}.start-form input{border:2px solid #ddd;border-radius:8px;flex:1;padding:12px 16px;font-size:1rem}.start-form input:focus{border-color:#4a6cf7;outline:none}.start-form button{color:#fff;cursor:pointer;background:#4a6cf7;border:none;border-radius:8px;padding:12px 24px;font-size:1rem}.start-form button:hover{background:#3a5ce5}.start-form button:disabled{background:#ccc}.progress-bar{background:#e0e0e0;border-radius:8px;height:8px;margin-bottom:24px;position:relative}.progress-fill{background:#4a6cf7;border-radius:8px;height:100%;transition:width .3s}.progress-text{color:#888;font-size:.8rem;position:absolute;top:12px;right:0}.screen-renderer{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014}.section-label{color:#4a6cf7;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:.85rem;font-weight:600}.screen-title{margin-bottom:16px;font-size:1.3rem;line-height:1.4}.helper-text{color:#888;margin-bottom:16px;font-size:.9rem}.checkbox-list{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.checkbox-item{cursor:pointer;background:#f8f9fc;border-radius:8px;align-items:center;gap:10px;padding:12px 16px;display:flex}.checkbox-item:hover{background:#eef1f8}.checkbox-item input[type=checkbox]{accent-color:#4a6cf7;width:20px;height:20px}.bool-question{margin-bottom:20px}.question-label{margin-bottom:12px;font-size:1.1rem}.bool-options{gap:8px;display:flex}.bool-btn{cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:8px;flex:1;padding:14px;font-size:1rem;transition:all .2s}.bool-btn.active{color:#4a6cf7;background:#eef1ff;border-color:#4a6cf7;font-weight:600}.freq-scale{margin-bottom:16px}.freq-options{flex-direction:column;gap:8px;display:flex}.freq-option{cursor:pointer;background:#f8f9fc;border-radius:8px;align-items:center;gap:10px;padding:10px 14px;display:flex}.freq-option input[type=radio]{accent-color:#4a6cf7}.tag-multi{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.tag-btn{cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:20px;padding:10px 16px;font-size:.9rem;transition:all .2s}.tag-btn.active{color:#4a6cf7;background:#eef1ff;border-color:#4a6cf7}.nav-buttons{gap:12px;margin-top:24px;display:flex}.btn-back{cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:8px;padding:14px 24px;font-size:1rem}.btn-next{color:#fff;cursor:pointer;background:#4a6cf7;border:none;border-radius:8px;flex:1;padding:14px 24px;font-size:1rem}.btn-next:hover{background:#3a5ce5}.results-page{padding-top:20px}.results-page h1{margin-bottom:20px;font-size:1.6rem}.tabs{background:#e0e0e0;border-radius:8px;gap:4px;margin-bottom:20px;padding:4px;display:flex}.tabs button{cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:10px;font-size:.9rem}.tabs button.active{background:#fff;font-weight:600;box-shadow:0 1px 3px #0000001a}.json-view{white-space:pre-wrap;word-break:break-all;background:#f8f9fc;border-radius:8px;padding:16px;font-size:.8rem;overflow-x:auto}.replay-step{background:#fff;border-radius:8px;margin-bottom:12px;padding:16px;box-shadow:0 1px 4px #0000000f}.replay-step h3{margin-bottom:4px;font-size:1rem}.step-meta{color:#888;margin-bottom:8px;font-size:.8rem}.results-actions{gap:12px;margin-top:24px;display:flex}.results-actions button{cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:8px;flex:1;padding:14px;font-size:1rem}.results-actions button:first-child{color:#fff;background:#4a6cf7;border-color:#4a6cf7}.summary-section{margin-bottom:20px}.summary-section h2{margin-bottom:10px;font-size:1.1rem}.summary-section.attention{background:#fff3cd;border-radius:8px;padding:16px}.finding-card{background:#fff;border-radius:8px;align-items:center;gap:10px;margin-bottom:8px;padding:12px 16px;display:flex;box-shadow:0 1px 4px #0000000f}.certainty{border-radius:12px;padding:4px 10px;font-size:.8rem;font-weight:600}.certainty.probable{color:#856404;background:#ffeeba}.certainty.possible{color:#155724;background:#d4edda}.finding-topic{font-size:1rem}.no-auto-supplements{color:#888;margin-top:16px;font-size:.85rem;font-style:italic}.report-section{margin-bottom:20px}.report-section h2{margin-bottom:10px;font-size:1.1rem}.report-section.safety{background:#f8d7da;border-radius:8px;padding:16px}.report-section.caution{background:#fff3cd;border-radius:8px;padding:16px}.route-card,.hypothesis-card,.bundle-card,.caution-card{background:#fff;border-radius:6px;margin-bottom:6px;padding:10px 14px;font-size:.9rem;box-shadow:0 1px 3px #0000000f}.route-card.safety{background:#f5c6cb}.verify{color:#4a6cf7;margin-left:8px;font-size:.85rem}details{margin-top:16px}details summary{cursor:pointer;color:#888;font-size:.85rem}.copy-btn{color:#fff;cursor:pointer;background:#4a6cf7;border:none;border-radius:8px;align-items:center;gap:6px;margin-bottom:16px;padding:8px 16px;font-size:.9rem;transition:background .2s;display:inline-flex}.copy-btn:hover{background:#3a5ce5}.md-content{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f}.md-content h1{margin-bottom:12px;font-size:1.4rem}.md-content h2{border-bottom:1px solid #eee;margin:16px 0 8px;padding-bottom:4px;font-size:1.15rem}.md-content h3{margin:12px 0 6px;font-size:1rem}.md-content table{border-collapse:collapse;width:100%;margin:8px 0;font-size:.9rem}.md-content th,.md-content td{text-align:left;border:1px solid #e0e0e0;padding:6px 10px}.md-content th{background:#f5f7fa;font-weight:600}.md-content blockquote{color:#555;background:#f8f9fc;border-left:3px solid #4a6cf7;border-radius:0 6px 6px 0;margin:8px 0;padding:4px 12px}.md-content code{background:#f0f0f0;border-radius:3px;padding:2px 5px;font-size:.85rem}.md-content pre{background:#f8f9fc;border-radius:8px;padding:12px;font-size:.8rem;overflow-x:auto}.md-content pre code{background:0 0;padding:0}.md-content hr{border:none;border-top:1px solid #e0e0e0;margin:12px 0}.md-content ul,.md-content ol{padding-left:20px}.md-content li{margin:4px 0}.item-control{margin-bottom:16px}.loading{text-align:center;color:#888;padding:60px 20px}.error,.error-page p{color:#e74c3c;text-align:center;margin-top:12px}.error-page button{cursor:pointer;border:1px solid #ddd;border-radius:6px;margin-top:12px;padding:8px 16px}
