.spanaly-widget{padding:25px;border-radius:16px;background:#fff;box-shadow:0 8px 20px rgb(0 0 0 / .06);max-width:500px;margin:20px auto;border:1px solid #eee}.spanaly-input{width:100%;padding:10px;margin-bottom:10px;border:1px solid #ccc;border-radius:8px;font-size:15px;box-sizing:border-box}.spanaly-generate-btn{width:100%;background:#b22222;color:#fff;border:none;padding:12px;border-radius:8px;cursor:pointer;font-weight:700;transition:0.3s}.spanaly-generate-btn:hover{opacity:.9}.spanaly-results{display:block;margin-top:20px}.spanaly-budget{text-align:center;font-weight:700;color:#b22222;margin-top:15px}.spanaly-actions{display:flex;gap:10px;margin-top:15px}.spanaly-pdf-btn,.spanaly-map-btn{flex:1;padding:10px;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:700}.spanaly-pdf-btn{background:#333}.spanaly-map-btn{background:#1a73e8}.spanaly-credit{text-align:center;margin-top:12px;font-size:13px;color:#777}.spanaly-credit a{color:#b22222;text-decoration:none;font-weight:700}.spanaly-loading{text-align:center;padding:20px;color:#b22222;font-weight:700;animation:pulse 1s infinite}@keyframes pulse{0%{opacity:.4}50%{opacity:1}100%{opacity:.4}}.spanaly-favorite-btn{flex:1;padding:10px;background:#666;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:700}.spanaly-toast{position:fixed;bottom:20px;right:20px;background:#333;color:#fff;padding:12px 18px;border-radius:8px;z-index:9999;opacity:0;transition:0.3s}.spanaly-toast.show{opacity:1}.spanaly-favorite-active{background:#f4b400}.spanaly-route-link{cursor:pointer;color:#b22222;font-weight:700}.spanaly-route-link:hover{text-decoration:underline}.spanaly-skeleton{background:#f1f1f1;border-radius:10px;height:20px;margin-bottom:12px;animation:skeleton-loading 1s infinite alternate}.spanaly-skeleton.large{height:80px}@keyframes skeleton-loading{from{opacity:.5}to{opacity:1}}#itinerary-output>div>div{background:#fff;border-radius:14px;padding:18px;margin-bottom:18px;box-shadow:0 4px 14px rgb(0 0 0 / .05);border-left:4px solid #b22222;transition:0.3s}#itinerary-output>div>div:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgb(0 0 0 / .08)}