/* URBI V21 — accesibilidad y recordatorios */
.v21-shade[hidden],.v21-panel[hidden]{display:none!important}
.v21-launch,.v21-menu-btn{border:1px solid #9fd4f4;background:#e7f6ff;color:#15577f;border-radius:99px;padding:10px 13px;font-size:12px;font-weight:800;cursor:pointer;min-height:42px}
.v21-menu-btn{border-radius:12px;text-align:left;width:100%}
.v21-shade{position:fixed;inset:0;background:#0b243dba;backdrop-filter:blur(5px);z-index:9400}
.v21-panel{position:fixed;z-index:9401;left:50%;top:50%;transform:translate(-50%,-50%);width:min(740px,calc(100vw - 24px));max-height:92dvh;overflow:auto;background:#f6fbff;color:#173c59;border:1px solid #bfdfef;border-radius:24px;box-shadow:0 25px 65px #061c3970;font-family:system-ui,-apple-system,Segoe UI,sans-serif}
.v21-head{background:linear-gradient(130deg,#e3f8ff,#f2f4ff);padding:22px;display:flex;gap:14px;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #d6e9f6}
.v21-head small{color:#147eb0;font-size:10px;letter-spacing:.12em;font-weight:850}.v21-head h2{font-size:26px;color:#124567;line-height:1.2;margin:5px 0}.v21-head p{margin:5px 0 0;color:#4b6e86;font-size:13px;line-height:1.5}
.v21-close{background:#fff;border:1px solid #b5daef;border-radius:12px;width:46px;height:46px;flex:none;color:#134d73;cursor:pointer;font-size:21px}
.v21-main{padding:19px 22px 22px;display:grid;gap:15px}
.v21-alert{border:1px solid #c9e4f0;border-radius:13px;padding:12px 15px;background:#e9f6fd;font-size:13px;line-height:1.5;color:#1e5272;min-height:40px}
.v21-alert.error{border-color:#f0c9c6;background:#fff1ef;color:#8c2e2c}.v21-alert.good{border-color:#a7dac5;background:#ebf9f2;color:#145b40}
.v21-card{background:#fff;border:1px solid #d1e6f1;border-radius:18px;padding:17px;display:grid;gap:10px}
.v21-card h3{font-size:17px;color:#16496a;margin:0}.v21-card p{font-size:13px;color:#516e82;line-height:1.5;margin:0}.v21-card .v21-hint{font-size:12px}
.v21-actions{display:flex;gap:8px;flex-wrap:wrap}.v21-actions button{border-radius:11px;border:1px solid #a4d3ee;background:#fff;color:#135880;min-height:44px;padding:10px 13px;font-size:13px;font-weight:750;cursor:pointer}.v21-actions .v21-primary{background:linear-gradient(120deg,#097ddd,#07b1e2);border-color:#078dd9;color:white}.v21-actions button:disabled{opacity:.5;cursor:not-allowed}
.v21-card label{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700;color:#2d5371}.v21-card input[type=checkbox]{width:20px;height:20px;accent-color:#087bbf}
.v21-tasklist{margin:0;padding:0;list-style:none;display:grid;gap:8px;max-height:32dvh;overflow:auto}.v21-tasklist li{padding:12px 14px;border-radius:12px;background:#f1f8fe;border:1px solid #d5e7f3;display:grid;gap:4px;word-break:break-word}.v21-tasklist strong{font-size:13px}.v21-tasklist small{font-size:11px;color:#557992}
.v21-footer{font-size:12px;color:#5a758b;padding:0 4px 8px;line-height:1.6}
.v21-panel button:focus-visible,.v21-launch:focus-visible,.v21-menu-btn:focus-visible{outline:3px solid #148bdb;outline-offset:3px}
body.v21-open{overflow:hidden}
@media(max-width:720px){.v21-launch{display:none!important}.v21-panel{inset:0;transform:none;width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.v21-head{padding:16px}.v21-head h2{font-size:23px}.v21-main{padding:15px 14px 100px}.v21-card{padding:14px}.v21-actions button{flex:1 1 160px}}
@media(prefers-reduced-motion:reduce){.v21-panel *{animation:none!important;transition:none!important}}
