#root{background:#f3f0ff;border-radius:16px;flex-direction:column;gap:28px;max-width:520px;margin:40px auto;padding:21px 25px;display:flex;box-shadow:0 10px 30px #00000014}body{background:#fff;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}h1{color:#5b21b6;text-align:center;margin-top:10px;margin-bottom:5px;font-size:33px}.subtitle{color:#5b21b6;text-align:center;margin-bottom:20px}input{border:1px solid #c4b5fd;border-radius:8px;width:100%;margin-bottom:15px;padding:12px 15px;font-size:16px;transition:border-color .3s,box-shadow .3s}input:focus{border-color:#7c3aed;outline:none;box-shadow:0 0 10px #7c3aed4d}.input-error{background:#fff0f0;border:2px solid red}.autocomplete-list{background:#fff;border:1px solid #c4b5fd;border-radius:8px;max-height:150px;margin:0 0 10px;padding:0;list-style:none;overflow-y:auto}.autocomplete-list li{cursor:pointer;padding:10px;transition:background .2s}.autocomplete-list li:hover{background:#f3f0ff}select{cursor:pointer;background:#fff;border:1px solid #c4b5fd;border-radius:8px;width:100%;max-width:220px;margin:0 auto 15px;padding:12px 15px;font-size:16px;transition:border-color .3s,box-shadow .3s;display:block}select:focus{border-color:#7c3aed;outline:none;box-shadow:0 0 10px #7c3aed4d}.image-preview{text-align:center;margin-top:20px}.image-preview img{border-radius:12px;width:100%;max-width:300px;margin-top:10px;box-shadow:0 4px 12px #0000001a}.buttons-container{flex-direction:column;align-items:center;gap:12px;display:flex}.spinner{border:3px solid #c4b5fd;border-top-color:#7c3aed;border-radius:50%;width:33px;height:33px;margin:20px auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loader{color:#7c3aed;text-align:center;margin-top:10px;margin-bottom:15px;font-size:21px;animation:1.2s infinite pulse}.overlay{z-index:999;background:#ffffffb3;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.overlay-content{color:#7c3aed;flex-direction:column;align-items:center;gap:14px;font-size:18px;display:flex}.btn-primary{color:#fff;cursor:pointer;background:#7c3aed;border:none;border-radius:10px;min-width:160px;padding:16px 26px;font-size:18px;transition:all .2s}.btn-primary:hover{background:#5b21b6;transform:translateY(-1px)}.reset-btn{color:#7c3aed;cursor:pointer;opacity:.8;background:0 0;border:2px solid #7c3aed;border-radius:10px;min-width:110px;padding:10px 16px;font-size:14px;transition:all .2s}.reset-btn:hover{color:#fff;opacity:1;background:#7c3aed}@keyframes pulse{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}button+button{margin-left:12px}button:disabled{cursor:not-allowed;box-shadow:none;background:#c4b5fd}.results-container{flex-direction:column;align-items:center;gap:20px;margin-top:20px;display:flex}.secondary-buttons{gap:10px;display:flex}.result-card{background:#fff;border-radius:16px;flex-direction:column;gap:12px;width:100%;max-width:600px;padding:28px;transition:all .2s;display:flex;box-shadow:0 6px 18px #00000014}.result-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #0000001f}.result-card .prezzo{text-align:center;font-size:22px;font-weight:700}.result-card .range{text-align:center;opacity:.8;font-size:16px}.result-card .motivazione,.result-card .consigli{text-align:left;margin-top:10px;font-size:15px;line-height:1.6}.result-card .motivazione strong,.result-card .consigli strong{margin-bottom:6px;font-size:17px;display:block}.result-card ul{margin-top:6px;padding-left:18px;list-style-type:disc}.result-card .motivazione p{margin:0}.image-preview img{border-radius:12px;width:100%;margin-bottom:10px}.error{color:red;text-align:center;font-size:16px;font-weight:700}.fade-in{opacity:0;animation:.5s forwards fadeIn;transform:translateY(10px)}@keyframes fadeIn{to{opacity:1;transform:translateY(0)}}.history-container{background:#fff;border-radius:12px;margin-top:20px;padding:15px;box-shadow:0 4px 12px #0000000f}.history-container h3{color:#5b21b6;text-align:center;margin-bottom:10px}.history-item{border-bottom:1px solid #eee;padding:6px 0;font-size:14px}.history-item:last-child{border-bottom:none}.history-toggle{justify-content:center;margin-top:15px;display:flex}.empty-history{text-align:center;color:#888;margin-top:15px;font-size:14px;font-style:italic}@media (width<=600px){h1{font-size:36px}input,button{padding:10px 12px;font-size:14px}}
