@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#07152d;--navy2:#10264a;--ink:#10213d;--muted:#718096;--teal:#22d3b6;--blue:#3b82f6;--line:#e6edf5;--surface:#fff;--bg:#f5f8fc;--shadow:0 14px 42px rgba(20,43,78,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.topbar{height:78px;padding:0 max(5vw,22px);display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:white;border-bottom:1px solid rgba(255,255,255,.1)}.brand{display:flex;gap:11px;align-items:center;color:inherit;text-decoration:none}.brand-icon{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#24d5bd,#4289ff);display:grid;place-items:center;font-size:25px;color:#07152d}.brand b,.brand small{display:block;letter-spacing:.08em}.brand b{font:800 13px Manrope,sans-serif}.brand small{font-size:9px;opacity:.7;margin-top:4px;letter-spacing:.18em}.btn{border:0;border-radius:12px;padding:12px 17px;font-weight:700;transition:transform .18s,box-shadow .18s;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:wait;transform:none}.btn-glass{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.2);color:#fff}.btn-glass.notify-on{background:rgba(34,211,182,.16);border-color:var(--teal)}.btn-primary{background:linear-gradient(105deg,#25d6b7,#49a9ef);color:#06172e;box-shadow:0 8px 24px rgba(34,211,182,.2)}.btn-outline{background:white;border:1px solid #dce6f1;color:#243b5a}.full{width:100%}.hero{background:radial-gradient(ellipse at 80% 40%,#173f6d 0%,transparent 42%),linear-gradient(115deg,#07152d,#0b2244 68%,#102e52);color:white;padding:76px max(7vw,24px) 72px;display:flex;align-items:center;justify-content:space-between;gap:36px;min-height:365px;overflow:hidden}.hero-copy{max-width:600px;position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:800;color:#0ba994}.hero .eyebrow{color:#52e7d0;display:flex;align-items:center;gap:8px}.live-dot{width:7px;height:7px;background:#3de4c5;display:inline-block;border-radius:50%;box-shadow:0 0 0 4px rgba(61,228,197,.12)}h1,h2{font-family:Manrope,sans-serif;letter-spacing:-.045em}h1{font-size:clamp(37px,5vw,62px);line-height:1.08;margin:18px 0}h1 em{font-style:normal;background:linear-gradient(90deg,#53e9d0,#66b8ff);color:transparent;background-clip:text}.hero-copy>p{font-size:16px;line-height:1.7;color:#c0cee1;max-width:480px;margin:0 0 25px}.hero-art{width:330px;height:245px;position:relative;flex-shrink:0;display:grid;place-items:center}.orb{position:absolute;border-radius:50%;filter:blur(1px)}.orb1{width:220px;height:220px;background:radial-gradient(circle,rgba(37,214,183,.22),rgba(59,130,246,.02) 70%);border:1px solid rgba(92,213,235,.15)}.orb2{width:155px;height:155px;border:1px solid rgba(255,255,255,.14);box-shadow:0 0 60px rgba(65,155,250,.15)}.storm-icon{font-size:92px;filter:drop-shadow(0 14px 20px rgba(0,0,0,.25));z-index:1}.mini-card{position:absolute;bottom:5px;right:-5px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:13px;padding:12px 14px;font-size:11px;backdrop-filter:blur(12px);display:flex;align-items:center;gap:7px}.mini-card b{color:#65e9d4}.notice-strip{margin:25px auto 0;max-width:1200px;width:calc(100% - 48px);background:#eef9f7;border:1px solid #ccefe7;border-radius:15px;padding:16px 19px;display:flex;align-items:center;gap:14px}.notice-icon{font-size:22px;color:#159b88}.notice-strip div{flex:1}.notice-strip b{font-size:13px}.notice-strip p{font-size:12px;color:#58716f;margin:5px 0 0;line-height:1.5}.notice-strip a{color:#087e71;text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}.dashboard,.how{max-width:1200px;width:calc(100% - 48px);margin:55px auto}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.section-heading h2,.how h2{font-size:32px;margin:8px 0 0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.stat{background:white;border:1px solid var(--line);border-radius:16px;padding:19px;display:flex;align-items:center;gap:14px;box-shadow:0 5px 20px rgba(20,43,78,.025)}.stat-symbol{height:45px;width:45px;display:grid;place-items:center;background:#eef8ff;border-radius:14px;font-size:23px}.stat small,.stat strong{display:block}.stat small{font-size:12px;color:var(--muted);margin-bottom:5px}.stat strong{font:800 25px Manrope,sans-serif}.map-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:18px;align-items:stretch}.map-card,.feed-card{background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.map-title,.feed-head{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.map-title b,.feed-head b{display:block;font:800 14px Manrope,sans-serif}.map-title small,.feed-head small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.map-live{font-size:9px;letter-spacing:.1em;font-weight:800;color:#078d7b;background:#e8faf5;border-radius:7px;padding:7px}.map-live i{width:6px;height:6px;background:#17b99c;display:inline-block;border-radius:50%;margin-right:5px}#map{height:440px;width:100%;background:#e8eff5;z-index:1}.map-legend{padding:13px 17px;display:flex;gap:15px;flex-wrap:wrap;color:#65758b;font-size:10px}.pill{background:#eaf9f5;color:#078d7b;border-radius:20px;padding:6px 8px;font-size:9px;font-weight:800}.feed{padding:0 17px;max-height:440px;overflow:auto}.report-item{display:flex;gap:11px;padding:16px 0;border-bottom:1px solid #edf1f6}.report-item:last-child{border-bottom:0}.report-emoji{width:36px;height:36px;flex-shrink:0;display:grid;place-items:center;border-radius:11px;background:#f0f7ff;font-size:18px}.report-content{min-width:0;flex:1}.report-title{font-size:12px;font-weight:800;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.report-status{font-size:8px;color:#9a6b21;background:#fff6df;padding:4px 5px;border-radius:5px;text-transform:uppercase;letter-spacing:.04em}.report-status.verified{background:#e7f8f1;color:#087e64}.report-place{font-size:10px;color:#536984;margin-top:5px}.report-content p{font-size:11px;line-height:1.5;color:#65758b;margin:7px 0}.report-meta{display:flex;justify-content:space-between;align-items:center;color:#9aa7b8;font-size:10px;gap:8px}.confirm-btn{border:0;background:#edf8f6;color:#087e71;border-radius:7px;padding:6px 8px;font-size:10px}.confirm-btn b{margin-left:4px}.feed-card>.full{border-radius:0;border-width:1px 0 0;padding:15px}.empty-state{padding:35px 20px;text-align:center;color:#718096;font-size:12px;line-height:1.6}.empty-state span{display:block;font-size:28px;margin-bottom:10px}.empty-state b{display:block;color:#334862}.empty-state p{margin:6px 0}.how{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding:28px 0 48px}.how>div:first-child>p{max-width:390px;color:#718096;line-height:1.8;font-size:14px}.steps article{display:flex;gap:17px;padding:0 0 23px;margin-bottom:22px;border-bottom:1px solid #e2eaf3}.steps article:last-child{border:0;margin-bottom:0}.steps article>span{font:800 13px Manrope,sans-serif;color:#13a994;background:#e5faf5;border-radius:10px;width:39px;height:39px;display:grid;place-items:center;flex-shrink:0}.steps b{font:800 14px Manrope,sans-serif}.steps p{margin:6px 0 0;color:#718096;font-size:12px;line-height:1.6}footer{background:#07152d;color:#fff;padding:30px max(5vw,22px);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}footer p{font-size:12px;color:#c3d0e0}footer>small{font-size:10px;color:#8fa1b9}.modal-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(4,14,32,.72);backdrop-filter:blur(6px);display:grid;place-items:center;padding:16px;overflow:auto}.modal-backdrop[hidden]{display:none}.modal{width:min(100%,580px);max-height:calc(100dvh - 32px);overflow:auto;background:#fff;border-radius:22px;padding:26px;box-shadow:0 30px 100px rgba(0,0,0,.3)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:21px}.modal h2{font-size:27px;margin:7px 0}.close-btn{border:0;background:#f0f4f8;width:36px;height:36px;border-radius:10px;font-size:25px;color:#3c506a}.modal form>label,.form-grid label{display:block;font-size:12px;font-weight:700;margin-bottom:15px}.modal input:not([type=checkbox]),.modal select,.modal textarea{display:block;width:100%;margin-top:7px;border:1px solid #dbe5ef;border-radius:10px;padding:12px;color:#1c2f4b;background:white;outline:none}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:#1ebfa9;box-shadow:0 0 0 3px rgba(30,191,169,.1)}.modal textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.muted{font-weight:400;color:#8391a4}.small{font-size:11px}.checkline{display:flex!important;align-items:flex-start;gap:9px;font-weight:500!important;line-height:1.5}.checkline input{margin-top:3px;accent-color:#13a994}.privacy-note{font-size:10px;line-height:1.6;color:#78879a;background:#f4f8fb;padding:11px;border-radius:9px}.form-message{font-size:12px;margin-bottom:10px}.form-message.success{color:#078568}.form-message.error{color:#b42318}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#0d2343;color:white;border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 30px #07152d33;padding:13px 19px;border-radius:12px;font-size:12px;z-index:1200;transition:.25s;max-width:calc(100% - 30px)}.toast.show{opacity:1;transform:translate(-50%,0)}.custom-marker-wrap{background:transparent;border:0}.custom-marker{width:36px;height:36px;display:grid;place-items:center;border-radius:50% 50% 50% 8px;transform:rotate(-45deg);background:var(--marker);box-shadow:0 4px 12px #10213d44;border:2px solid white;font-size:16px}.custom-marker::first-letter{transform:rotate(45deg)}.leaflet-popup-content{font-family:'DM Sans',sans-serif;font-size:12px;line-height:1.5}.leaflet-popup-content p{margin:6px 0}.popup-confirm{border:0;background:#e7f8f3;color:#087e64;border-radius:7px;padding:7px 9px;font-size:11px;font-weight:700}body.modal-open{overflow:hidden}
@media(max-width:850px){.hero{padding-top:54px;padding-bottom:54px}.hero-art{width:230px;transform:scale(.9)}.map-layout{grid-template-columns:1fr}.feed{max-height:none}.how{gap:35px}.notice-strip{flex-wrap:wrap}.notice-strip a{margin-left:36px}}@media(max-width:600px){.topbar{height:68px;padding:0 16px}.brand-icon{width:36px;height:36px}.brand b{font-size:11px}.brand small{font-size:8px}.topbar .btn{font-size:11px;padding:10px}.hero{padding:42px 22px 38px;min-height:0}.hero-art{display:none}h1{font-size:41px}.hero-copy>p{font-size:14px}.notice-strip,.dashboard,.how{width:calc(100% - 28px)}.notice-strip{margin-top:14px;padding:14px;gap:9px}.notice-strip div{flex-basis:calc(100% - 40px)}.notice-strip a{margin-left:32px}.dashboard,.how{margin-top:38px}.section-heading h2,.how h2{font-size:27px}.section-heading .btn{padding:10px;font-size:11px}.stats{gap:8px}.stat{padding:12px 9px;gap:8px;align-items:flex-start}.stat-symbol{width:31px;height:31px;font-size:16px;border-radius:9px}.stat small{font-size:9px;line-height:1.35}.stat strong{font-size:20px}#map{height:350px}.map-title,.feed-head{padding:15px}.map-legend{gap:9px}.how{grid-template-columns:1fr;gap:25px;padding-bottom:35px}.steps article{margin-bottom:16px;padding-bottom:16px}footer{padding:26px 18px;display:block}footer p{margin:18px 0 10px}.modal{padding:21px 17px;border-radius:18px}.modal h2{font-size:24px}.form-grid{grid-template-columns:1fr;gap:0}.modal-backdrop{padding:8px}.modal{max-height:calc(100dvh - 16px)}}

/* ExtensiÃ³n: clima oficial y observaciones ciudadanas */
.official-weather{max-width:1240px;margin:24px auto;padding:24px 28px;border:1px solid #dbe8f4;border-radius:22px;background:linear-gradient(135deg,#fff,#eff8ff);box-shadow:0 12px 35px rgba(16,42,75,.06)}
.official-weather-head{display:flex;align-items:center;justify-content:space-between;gap:24px}.official-weather h2{margin:7px 0;font-size:clamp(22px,3vw,30px);color:#10213d}.official-weather p{margin:0;color:#5d7089;max-width:680px;line-height:1.6}.official-actions{display:flex;gap:10px;flex-wrap:wrap}.official-note{margin-top:16px;padding:11px 14px;border-radius:12px;background:#e5f5f1;color:#17665e;font-size:12px;line-height:1.5}
.report-context{margin-top:5px;color:#0d9488;font-size:11px;font-weight:700}.different-btn{margin-left:6px;background:#eef4ff!important;color:#23466e!important}.popup-confirm{margin:4px 4px 0 0;padding:7px 9px;border:0;border-radius:8px;background:#e7f8f2;color:#11685b;font-weight:700;cursor:pointer}
@media(max-width:700px){.official-weather{margin:16px 12px;padding:18px}.official-weather-head{align-items:flex-start;flex-direction:column}.official-actions{width:100%}.official-actions .btn{flex:1;text-align:center}.different-btn{margin:6px 0 0}}

/* Eliminar separadores horizontales no deseados */
hr {
    display: none !important;
}

/* Evitar l¨ªneas decorativas generadas por pseudo-elementos */
body *::before,
body *::after {
    /* No se eliminan globalmente: conservar iconos y decoraciones necesarias */
}

/* Evitar desbordamientos horizontales de la p¨¢gina */
html,
body {
    max-width: 100%;
    overflow-x: hidden;
}
/* Eliminar el subrayado de todos los enlaces */
a,
a:link,
a:visited,
a:hover,
a:active,
a:focus {
    text-decoration: none !important;
}
