.avp-wrap{--avp-primario:#ff5c60;--avp-secundario:#ff8f45;--avp-gradiente:linear-gradient(135deg,#ff5c60 0%,#ff8f45 100%);
	max-width:1200px;margin:0 auto;display:flex;gap:24px;align-items:flex-start;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#22242b}
.avp-wrap *{box-sizing:border-box}
.avp-wrap button,.avp-wrap input,.avp-wrap select{font-family:inherit;font-size:100%}

/* Sidebar */
.avp-sidebar{width:240px;flex-shrink:0;background:#fff;border:1px solid #ececef;border-radius:16px;padding:20px;position:sticky;top:20px}
.avp-bienvenida{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid #ececef}
.avp-avatar{width:38px;height:38px;border-radius:50%;background:var(--avp-gradiente);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;flex-shrink:0}
.avp-bienvenida div{display:flex;flex-direction:column;line-height:1.3}
.avp-bienvenida strong{font-size:11px;color:#8a8f98;text-transform:uppercase;letter-spacing:.03em}
.avp-bienvenida span{font-size:14px;font-weight:700}

.avp-menu{display:flex;flex-direction:column;gap:4px}
.avp-menu__item{all:unset;box-sizing:border-box;width:100%;text-align:left;padding:10px 12px;border-radius:10px;font-size:13.5px;font-weight:600;color:#4b4f58;cursor:pointer}
.avp-menu__item:hover{background:#faf9fb}
.avp-menu__item.active{background:rgba(255,92,96,.08);color:var(--avp-primario);font-weight:800}

.avp-cerrar-sesion{display:block;margin-top:18px;padding-top:18px;border-top:1px solid #ececef;color:#8a8f98;font-size:13px;font-weight:600;text-decoration:none}
.avp-cerrar-sesion:hover{color:var(--avp-primario)}

/* Contenido */
.avp-contenido{flex:1;min-width:0;background:#fff;border:1px solid #ececef;border-radius:16px;padding:28px}
.avp-vista{display:none}
.avp-vista.active{display:block}
.avp-contenido h2{margin:0 0 6px;font-size:20px;font-weight:800}
.avp-sub{color:#8a8f98;font-size:13.5px;margin:0 0 20px}
.avp-subtitulo{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:#8a8f98;margin:24px 0 12px}
.avp-vacio{color:#8a8f98;padding:20px 0;text-align:center}
.avp-nota{font-size:12px;color:#8a8f98;margin-top:14px}

/* Opciones (nueva reserva) */
.avp-opciones{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.avp-opcion{all:unset;box-sizing:border-box;display:flex;flex-direction:column;gap:6px;padding:24px;border:1.5px solid #ececef;border-radius:14px;cursor:pointer;text-align:left}
.avp-opcion:hover{border-color:var(--avp-primario);background:rgba(255,92,96,.03)}
.avp-opcion__icono{font-size:26px}
.avp-opcion strong{font-size:15px}
.avp-opcion span{font-size:12.5px;color:#8a8f98}

/* Tarjetas (comisiones) */
.avp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:10px}
.avp-card{background:#faf9fb;border:1px solid #ececef;border-radius:12px;padding:16px 18px}
.avp-card span{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#8a8f98}
.avp-card strong{display:block;font-size:22px;margin-top:6px}
.avp-card--accent{background:var(--avp-gradiente);border:none}
.avp-card--accent span,.avp-card--accent strong{color:#fff}

/* Tablas */
.avp-tabla-wrap{overflow-x:auto}
.avp-tabla{width:100%;border-collapse:collapse}
.avp-tabla th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:#8a8f98;padding:10px 12px;border-bottom:1px solid #ececef;white-space:nowrap}
.avp-tabla td{padding:12px;border-bottom:1px solid #f2f2f4;font-size:13px;vertical-align:top}

.avp-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:800;text-transform:uppercase;white-space:nowrap}
.avp-badge--pendiente,.avp-badge--en_proceso{background:#fff2df;color:#c8791a}
.avp-badge--pagado,.avp-badge--confirmada{background:#e4f7ea;color:#1f9d55}
.avp-badge--cancelada{background:#fde8e8;color:#e34848}
.avp-badge--reembolsado{background:#eee;color:#6b7280}

/* Formulario de perfil */
.avp-form{display:flex;flex-direction:column;gap:14px;max-width:420px}
.avp-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#4b4f58}
.avp-form label small{font-weight:400;color:#9a9ea5}
.avp-form input{padding:11px 12px;border:1.5px solid #ececef;border-radius:10px;font-size:14px}
.avp-form input:focus{outline:none;border-color:var(--avp-primario)}
.avp-btn{all:unset;box-sizing:border-box;background:var(--avp-gradiente);color:#fff;padding:12px 22px;border-radius:10px;font-weight:800;font-size:14px;cursor:pointer;text-align:center;width:fit-content}
.avp-form-msg{font-size:13px;font-weight:600}
.avp-form-msg.ok{color:#1f9d55}
.avp-form-msg.error{color:#e34848}

.avp-aviso{padding:20px;background:#fde8e8;border-radius:10px;color:#e34848;font-weight:600}

/* Login */
.avp-wrap--login{display:flex;justify-content:center;padding:60px 16px}
.avp-login-box{background:#fff;border:1px solid #ececef;border-radius:16px;padding:32px;max-width:380px;width:100%;text-align:center}
.avp-login-box h2{margin:0 0 6px}
.avp-login-box form{text-align:left;display:flex;flex-direction:column;gap:14px;margin-top:20px}
.avp-login-box label{font-size:13px;font-weight:600;color:#4b4f58;display:flex;flex-direction:column;gap:6px}
.avp-login-box input[type=text],.avp-login-box input[type=password]{padding:11px 12px;border:1.5px solid #ececef;border-radius:10px;font-size:14px;width:100%}
.avp-login-box input[type=submit]{all:unset;box-sizing:border-box;background:var(--avp-gradiente);color:#fff;padding:12px;border-radius:10px;font-weight:800;text-align:center;cursor:pointer;margin-top:6px}
.avp-login-box .forgetmenot{display:flex;align-items:center;gap:6px;font-size:12.5px;color:#8a8f98}

@media(max-width:820px){
	.avp-wrap{flex-direction:column}
	.avp-sidebar{width:100%;position:static}
	.avp-menu{flex-direction:row;flex-wrap:wrap}
	.avp-menu__item{width:auto}
	.avp-opciones{grid-template-columns:1fr}
}
