:root{--primary: #3b82f6;--primary-dark: #2563eb;--success: #10b981;--danger: #ef4444;--warning: #f59e0b;--bg: #f9fafb;--card-bg: #ffffff;--text: #1f2937;--text-light: #6b7280;--border: #e5e7eb;--shadow: rgba(0, 0, 0, .1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--bg);color:var(--text);line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:2rem}.card{background:var(--card-bg);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px var(--shadow);border:1px solid var(--border)}.btn{padding:.5rem 1rem;border-radius:6px;border:none;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{opacity:.9}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{opacity:.9}.btn-secondary{background:var(--bg);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:#f3f4f6}.input-group{margin-bottom:1rem}.input-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text);font-size:.875rem}.input-group input,.input-group textarea,.input-group select{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;font-size:.875rem;font-family:inherit}.input-group input:focus,.input-group textarea:focus,.input-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f61a}.input-group textarea{resize:vertical;min-height:80px}h1{font-size:2rem;margin-bottom:1.5rem;color:var(--text)}h2{font-size:1.5rem;margin-bottom:1rem;color:var(--text)}h3{font-size:1.25rem;margin-bottom:.75rem;color:var(--text)}.grid{display:grid;gap:1.5rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.image-preview{width:100%;max-width:300px;height:auto;border-radius:6px;border:1px solid var(--border);margin-top:.5rem}.badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.badge-success{background:#d1fae5;color:#065f46}.badge-danger{background:#fee2e2;color:#991b1b}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:var(--card-bg);border-radius:8px;padding:2rem;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal h2{margin-bottom:1.5rem}.flex{display:flex;gap:.5rem}.flex-end{justify-content:flex-end}.mb-2{margin-bottom:1rem}.loading{text-align:center;padding:2rem;color:var(--text-light)}.result-card{border-left:4px solid var(--primary);padding-left:1rem}.result-card.success{border-left-color:var(--success)}.result-card.failure{border-left-color:var(--danger)}.probability{font-size:2rem;font-weight:700;margin:1rem 0}.reasons{list-style:none;padding:0}.reasons li{padding:.5rem 0;border-bottom:1px solid var(--border)}.reasons li:last-child{border-bottom:none}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-light)}.file-input-wrapper{position:relative;display:inline-block}.file-input-wrapper input[type=file]{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}
