*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#0f0f0f;color:#e8e8e8;min-height:100vh}.app{max-width:900px;margin:0 auto;padding:1rem}header{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;border-bottom:1px solid #2a2a2a;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}header h1{font-size:1.25rem;font-weight:600;color:#fff}nav{display:flex;gap:.5rem;flex-wrap:wrap}button{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:opacity .15s}button:disabled{opacity:.5;cursor:not-allowed}button:hover:not(:disabled){opacity:.85}.btn-primary{background:#4f6ef7;color:#fff}.btn-secondary{background:#2a2a2a;color:#e8e8e8;border:1px solid #3a3a3a}.btn-danger{background:#c0392b;color:#fff}.btn-sm{padding:.3rem .6rem;font-size:.8rem}label{display:block;font-size:.875rem;color:#aaa;margin-bottom:.25rem}input,textarea,select{width:100%;background:#1a1a1a;border:1px solid #333;border-radius:6px;color:#e8e8e8;padding:.5rem .75rem;font-size:.9rem;font-family:inherit;outline:none;transition:border-color .15s}input:focus,textarea:focus,select:focus{border-color:#4f6ef7}textarea{resize:vertical;min-height:100px}.form-group{margin-bottom:1rem}.card{background:#161616;border:1px solid #2a2a2a;border-radius:10px;padding:1.25rem;margin-bottom:1rem}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:.5rem;flex-wrap:wrap}.card-header h3{font-size:1rem;font-weight:600}.question-card{border-left:3px solid #4f6ef7}.type-badge{font-size:.75rem;padding:.2rem .5rem;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.type-noul{background:#1a3a5c;color:#7bb3f0}.type-choice{background:#1a3a2a;color:#7be0a0}.type-score{background:#3a2a1a;color:#e0b07b}.option-row{display:flex;gap:.5rem;margin-bottom:.5rem;align-items:center}.option-row input{flex:1}.result-card{border-left:3px solid #2ecc71}.noul-bar-container{background:#2a2a2a;border-radius:6px;height:24px;overflow:hidden;margin:.5rem 0}.noul-bar{height:100%;background:linear-gradient(90deg,#4f6ef7,#2ecc71);border-radius:6px;transition:width .4s ease;display:flex;align-items:center;justify-content:flex-end;padding-right:.5rem;min-width:2rem}.noul-pct{font-size:.8rem;font-weight:600;color:#fff}.prob-row{display:flex;justify-content:space-between;padding:.25rem 0;border-bottom:1px solid #222;font-size:.875rem}.prob-row:last-child{border-bottom:none}.prob-key{color:#aaa}.prob-val{font-weight:600}.prob-winner{color:#2ecc71}.score-indicator{font-size:2rem;font-weight:700;color:#e0b07b;margin:.5rem 0}.confidence-badge{display:inline-block;background:#1a2a3a;color:#7bb3f0;border-radius:4px;padding:.2rem .6rem;font-size:.8rem;font-weight:600;margin-top:.5rem}.login-wrapper{display:flex;align-items:center;justify-content:center;min-height:80vh}.login-box{background:#161616;border:1px solid #2a2a2a;border-radius:12px;padding:2rem;width:100%;max-width:360px}.login-box h2{margin-bottom:1.5rem;font-size:1.25rem;text-align:center}.error-msg{background:#2a0a0a;border:1px solid #c0392b;border-radius:6px;padding:.75rem 1rem;color:#e07070;font-size:.875rem;margin-bottom:1rem}.warning-msg{background:#2a2000;border:1px solid #e0b030;border-radius:6px;padding:.75rem 1rem;color:#e0d070;font-size:.875rem;margin-bottom:1rem}.success-msg{background:#0a2a0a;border:1px solid #2ecc71;border-radius:6px;padding:.75rem 1rem;color:#70e070;font-size:.875rem;margin-bottom:1rem}.usage-footer{margin-top:1rem;padding-top:.75rem;border-top:1px solid #2a2a2a;font-size:.8rem;color:#666;display:flex;gap:1rem}.history-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border-bottom:1px solid #1e1e1e;gap:1rem;cursor:pointer;transition:background .1s}.history-item:hover{background:#1a1a1a}.history-item:last-child{border-bottom:none}.history-meta{font-size:.8rem;color:#666;margin-top:.25rem}.history-summary{flex:1;overflow:hidden}.history-summary p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.875rem}@media (max-width: 600px){.app{padding:.75rem}.card{padding:1rem}.option-row{flex-direction:column}.option-row input{width:100%}nav button{font-size:.8rem;padding:.4rem .7rem}}
