:root{
  --bg:#f4f1eb;
  --surface:#ffffff;
  --surface-soft:#faf8f4;
  --ink:#171816;
  --muted:#6e706b;
  --line:#e2ddd3;
  --line-strong:#cbc3b7;
  --teal:#0d5554;
  --teal-dark:#092f31;
  --teal-soft:#e6f0ee;
  --orange:#c55c13;
  --orange-dark:#9e4208;
  --orange-soft:#fff0e4;
  --gold:#c58a2b;
  --green:#236a47;
  --red:#a83c35;
  --yellow:#8a5c13;
  --shadow-sm:0 4px 14px rgba(23,24,22,.06);
  --shadow:0 18px 45px rgba(23,24,22,.09);
  --shadow-lg:0 32px 80px rgba(9,47,49,.18);
  --radius-sm:10px;
  --radius:16px;
  --radius-lg:24px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
a{color:var(--teal);text-underline-offset:3px}
a:hover{color:var(--orange-dark)}
img{max-width:100%;display:block}
svg{pointer-events:none}

.icon{width:19px;height:19px;display:inline-block;vertical-align:-4px;flex:0 0 auto}
.muted{color:var(--muted)}
.empty{color:var(--muted);padding:18px 4px;margin:0}
.full{grid-column:1/-1;width:100%}
.inline{display:inline-flex}

/* Marca: símbolo original de La Morisma, sin texto */
.brand-logo{width:48px;height:48px;object-fit:contain;flex:0 0 auto;padding:5px;border-radius:13px;background:#fff;border:1px solid rgba(13,85,84,.15);box-shadow:0 7px 18px rgba(9,47,49,.13)}
.brand-logo.large{width:82px;height:82px;padding:8px;border-radius:20px;box-shadow:0 18px 42px rgba(9,47,49,.16)}
.auth-visual-overlay .brand-logo{background:rgba(255,255,255,.94);border-color:rgba(255,255,255,.45);box-shadow:0 10px 26px rgba(0,0,0,.24)}

/* Cabecera pública */
.public-header{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0 clamp(20px,4vw,58px);background:rgba(255,255,255,.94);border-bottom:1px solid rgba(203,195,183,.65);position:sticky;top:0;z-index:50;backdrop-filter:blur(14px)}
.public-brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;min-width:0}
.public-brand strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.22rem;line-height:1.05}
.public-brand small{display:block;color:var(--muted);font-size:.71rem;letter-spacing:.045em;margin-top:4px}
.public-nav{display:flex;align-items:center;gap:24px}
.public-nav>a:not(.button){color:#3f423e;text-decoration:none;font-size:.9rem;font-weight:750}
.member-header{position:relative}

/* Aplicación interna · navegación superior */
.app-frame{min-height:100vh}
.app-workspace{min-width:0;display:flex;flex-direction:column;min-height:100vh}
.app-header{position:sticky;top:0;z-index:70;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 6px 22px rgba(9,47,49,.06)}
.app-topbar{min-height:72px;padding:10px clamp(18px,3vw,38px);display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:22px;background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}
.topbar-brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;min-width:0}
.topbar-brand .brand-logo{width:44px;height:44px;padding:4px}
.topbar-brand strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.08rem;line-height:1.05}
.topbar-brand small{display:block;color:var(--muted);font-size:.67rem;margin-top:3px;white-space:nowrap}
.topbar-title{display:flex;flex-direction:column;min-width:0;padding-left:8px;border-left:1px solid var(--line)}
.topbar-kicker{font-size:.62rem;font-weight:900;color:var(--orange);letter-spacing:.14em}
.topbar-title strong{font-family:Georgia,"Times New Roman",serif;font-size:1.12rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-actions{display:flex;align-items:center;gap:10px}
.user-chip{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:.8rem}
.user-chip strong{display:block;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-chip small{display:block;color:var(--muted);font-size:.67rem}
.user-chip.light{color:var(--ink)}
.user-avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--teal-soft);color:var(--teal);font-weight:900}
.user-avatar .icon{width:17px;height:17px}
.icon-button,.menu-button{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:11px;background:#fff;color:#555b56;cursor:pointer}
.icon-button:hover,.menu-button:hover{color:var(--orange);border-color:#d5b99d;background:var(--orange-soft)}
.menu-button{display:none}
.top-nav{min-height:48px;padding:5px clamp(18px,3vw,38px);display:flex;align-items:center;gap:5px;background:linear-gradient(180deg,#103537 0%,#0b2d2f 100%);color:#fff}
.top-nav-link,.top-nav-group>summary{min-height:38px;display:flex;align-items:center;gap:8px;padding:8px 11px;border-radius:9px;color:#dce8e6;text-decoration:none;font-size:.82rem;font-weight:780;white-space:nowrap;cursor:pointer;list-style:none}
.top-nav-group>summary::-webkit-details-marker{display:none}
.top-nav-link:hover,.top-nav-group>summary:hover{background:rgba(255,255,255,.09);color:#fff}
.top-nav-link.active,.top-nav-group.active>summary{background:#fff;color:var(--teal-dark);box-shadow:0 5px 15px rgba(0,0,0,.16)}
.top-nav-link.active .icon,.top-nav-group.active>summary .icon{color:var(--orange)}
.top-nav .icon{width:17px;height:17px;color:#a9c7c5}
.top-nav-group{position:relative}
.top-nav-group[open]>summary{background:rgba(255,255,255,.12);color:#fff}
.top-nav-group.active[open]>summary{background:#fff;color:var(--teal-dark)}
.top-nav-chevron{font-size:1rem;line-height:1;margin-left:2px;transition:transform .16s ease}
.top-nav-group[open] .top-nav-chevron{transform:rotate(180deg)}
.top-nav-dropdown{position:absolute;top:calc(100% + 7px);left:0;min-width:255px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 22px 55px rgba(9,47,49,.2);display:grid;gap:3px;z-index:90}
.top-nav-dropdown-right{left:auto;right:0}
.top-nav-dropdown a{display:flex;align-items:center;gap:10px;min-height:40px;padding:9px 10px;border-radius:8px;color:#35413e;text-decoration:none;font-size:.82rem;font-weight:720}
.top-nav-dropdown a:hover{background:var(--teal-soft);color:var(--teal-dark)}
.top-nav-dropdown a.active{background:var(--teal);color:#fff}
.top-nav-dropdown a.active .icon{color:#fff}
.top-nav-dropdown .nav-badge{margin-left:auto}
.top-nav-security{margin-left:auto;display:flex;align-items:center;gap:7px;color:#9fb8b6;font-size:.69rem;white-space:nowrap;padding-left:10px}
.top-nav-security .icon{width:15px;height:15px;color:#efb36b}

/* Contenedores */
.container{width:100%;max-width:1320px;margin:0 auto;padding:34px clamp(18px,3.1vw,44px) 72px}
.content{max-width:1500px}
.public-container{max-width:1240px;min-height:calc(100vh - 148px)}
.member-container{max-width:1120px;min-height:calc(100vh - 148px)}
.site-footer{display:flex;justify-content:center;gap:12px;padding:24px;color:#80827d;font-size:.72rem;border-top:1px solid rgba(226,221,211,.8)}
.site-footer span+span:before{content:"·";margin-right:12px}
.site-footer a{color:var(--teal);font-weight:800;text-decoration:none}.site-footer a:hover{color:var(--orange-dark);text-decoration:underline}
.app-frame+.site-footer{background:#fff}

/* Títulos */
.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:24px}
.page-head h1,.auth-main h1,.setup-intro h1{font-family:Georgia,"Times New Roman",serif;font-weight:700;letter-spacing:-.035em;color:#142021}
.page-head h1{font-size:clamp(2rem,3.5vw,3.15rem);line-height:1.02;margin:.1em 0 .2em}
.page-head p{color:var(--muted);margin:.45em 0;max-width:760px;font-size:.98rem}
.eyebrow{display:block;color:var(--orange);font-weight:900;letter-spacing:.145em;font-size:.68rem;text-transform:uppercase}
h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.02em}

/* Paneles y tarjetas */
.card,.auth-card,.success-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.card{padding:24px;margin-bottom:22px}
.card:hover{border-color:#d6cec2}
.compact-card{padding:14px}
.card h2{margin:0 0 15px;font-size:1.35rem}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:12px}
.section-head h2{margin:0}
.section-head>a{font-size:.84rem;font-weight:800;text-decoration:none}

/* Botones */
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 16px;border:1px solid var(--line-strong);border-radius:11px;background:#fff;color:#282c28;text-decoration:none;font-weight:820;font-size:.87rem;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}
.button:hover{color:inherit;transform:translateY(-1px);box-shadow:0 8px 20px rgba(23,24,22,.1)}
.button.primary{background:linear-gradient(145deg,var(--teal),#126765);color:#fff;border-color:var(--teal);box-shadow:0 9px 20px rgba(13,85,84,.18)}
.button.primary:hover{background:var(--teal-dark);color:#fff}
.button.secondary{background:linear-gradient(145deg,var(--orange),#d37824);color:#fff;border-color:var(--orange)}
.button.secondary:hover{background:var(--orange-dark);color:#fff}
.button.dark{background:#172324;color:#fff;border-color:#172324}
.button.ghost{background:transparent;box-shadow:none}
.button.danger{background:var(--red);color:#fff;border-color:var(--red)}
.button.small{min-height:35px;padding:6px 11px;font-size:.78rem;border-radius:9px}
.button-large{min-height:50px;font-size:.94rem;border-radius:13px}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.actions-panel{display:flex;justify-content:space-between;align-items:end;gap:20px}

/* Formularios */
.form-stack{display:grid;gap:17px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.form-grid h2{margin-bottom:0}
.public-form{max-width:940px;margin-inline:auto}
.public-form h2{padding-top:18px;border-top:1px solid var(--line);font-size:1.45rem}
.public-form h2:first-child{border-top:0;padding-top:0}
label{display:grid;gap:7px;font-weight:760;font-size:.86rem;color:#383c38}
input,select,textarea{width:100%;min-height:45px;padding:11px 13px;border:1px solid #cfc8bd;border-radius:10px;background:#fff;color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease;font-size:.92rem}
input::placeholder,textarea::placeholder{color:#a29e97}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--teal);box-shadow:0 0 0 4px rgba(13,85,84,.11)}
textarea{min-height:120px;resize:vertical}
small{display:block;color:var(--muted);font-weight:450}
.input-with-icon{position:relative;display:flex;align-items:center}
.input-with-icon>.icon{position:absolute;left:13px;color:#828a84;width:18px;height:18px}
.input-with-icon input{padding-left:43px}
.password-field input{padding-right:58px}
.password-toggle{position:absolute;right:7px;min-width:43px;height:31px;border:0;border-radius:8px;background:var(--surface-soft);color:var(--teal);font-size:.72rem;font-weight:850;cursor:pointer}
.password-toggle:hover{background:var(--teal-soft)}
.check-row{display:flex;align-items:flex-start;gap:10px}
.check-row input,.consents input,.permission-grid input{width:auto;min-height:0;margin-top:4px;accent-color:var(--teal)}
.consents{display:grid;gap:12px;padding:18px;background:var(--surface-soft);border-radius:13px;border:1px solid var(--line)}
.consents label{display:flex;align-items:flex-start;gap:10px;font-weight:560}
.inline-form{display:flex;align-items:end;gap:12px}
.inline-form.wrap{flex-wrap:wrap}
.reject-form{display:flex;align-items:end;gap:10px;flex:1;max-width:590px}
.search{display:flex;gap:9px;align-items:center}
.search input{min-width:300px}
.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:17px;background:var(--surface-soft);border:1px solid var(--line);border-radius:13px}
.permission-grid label{display:flex;align-items:flex-start;gap:8px;font-weight:580;padding:8px;border-radius:8px}
.permission-grid label:hover{background:#fff}

/* Avisos y ayuda */
.alert{display:flex;align-items:flex-start;gap:11px;padding:14px 16px;border-radius:12px;margin-bottom:20px;border:1px solid transparent;box-shadow:var(--shadow-sm);font-size:.88rem}
.alert-icon{width:22px;height:22px;display:grid;place-items:center;flex:0 0 auto}
.alert.success{background:#e7f4ec;color:#185d3b;border-color:#c6e4d2}
.alert.error{background:#fbe8e5;color:#8e302a;border-color:#f0c9c4}
.alert.warning{background:#fff3d8;color:#74500f;border-color:#ecdba9}
.help-panel{display:flex;align-items:flex-start;gap:14px;background:linear-gradient(135deg,#e8f2f0,#f4f8f7);border:1px solid #c8dfdb;border-left:5px solid var(--teal);border-radius:14px;padding:17px 19px;margin-bottom:22px}
.help-panel.compact{max-width:none}
.help-panel p{margin:.2em 0;color:#4e6360;font-size:.88rem}
.help-icon{width:26px;height:26px;color:var(--teal)}
.help-note{background:#f4efe5;border-radius:10px;padding:12px;color:#665e54}
.help-note.compact{padding:9px 12px;font-size:.81rem}
.warning-text{color:var(--red);display:flex;align-items:center;gap:8px}
.security-tip{display:flex;align-items:flex-start;gap:10px;margin-top:19px;padding:13px;border-radius:11px;background:var(--teal-soft);color:#44615d;font-size:.78rem}
.security-tip .icon{color:var(--teal)}

/* Home pública */
.morisma-hero{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(310px,.62fr);gap:55px;min-height:calc(100vh - 155px);align-items:center;padding:32px 0 45px}
.hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.3rem,7vw,6.65rem);letter-spacing:-.055em;line-height:.87;margin:.16em 0 .22em;color:#142021;max-width:770px}
.hero-copy>p{font-size:1.08rem;color:var(--muted);max-width:650px}
.hero-poster{height:min(650px,70vh);min-height:510px;border-radius:29px;overflow:hidden;box-shadow:var(--shadow-lg);transform:rotate(1deg);background:#fff;border:8px solid #fff}
.hero-poster img{width:100%;height:100%;object-fit:cover;object-position:center}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:34px}
.steps div{position:relative;background:#fff;border:1px solid var(--line);padding:13px;border-radius:13px;box-shadow:var(--shadow-sm)}
.steps strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;color:var(--orange)}
.steps span{font-size:.74rem;color:var(--muted);line-height:1.3}

/* Login y recuperación */
.auth-layout{max-width:990px;margin:42px auto 28px;display:grid;grid-template-columns:minmax(300px,.88fr) minmax(390px,1.12fr);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;background:#fff;min-height:600px}
.auth-layout-compact{min-height:565px}
.auth-visual{position:relative;min-height:100%;overflow:hidden;background:var(--teal-dark)}
.auth-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,27,28,.04) 20%,rgba(5,27,28,.88) 100%)}
.auth-visual img{width:100%;height:100%;object-fit:cover;object-position:23% center;filter:saturate(.92) contrast(1.04)}
.auth-visual-overlay{position:absolute;left:24px;right:24px;bottom:25px;z-index:2;display:flex;align-items:center;gap:12px;color:#fff}
.auth-visual-overlay strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.08rem}
.auth-visual-overlay span{display:block;color:#d3dfdc;font-size:.75rem}
.auth-card.auth-main{border:0;border-radius:0;box-shadow:none;padding:clamp(32px,5vw,62px);display:flex;flex-direction:column;justify-content:center}
.auth-main h1{font-size:clamp(2.2rem,4vw,3.35rem);line-height:.98;margin:.17em 0 .35em}
.auth-intro{color:var(--muted);font-size:.92rem;margin:0 0 24px;max-width:520px}
.auth-form{margin-top:4px}
.auth-links{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;font-size:.8rem}
.auth-links a{font-weight:750;text-decoration:none}
.back-link{display:inline-flex;align-items:center;gap:4px;width:max-content;margin-bottom:29px;color:var(--muted);text-decoration:none;font-size:.78rem;font-weight:760}
.back-link .icon{width:16px;height:16px}

/* Configuración inicial */
.setup-shell{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(430px,1.2fr);gap:48px;align-items:center;max-width:1080px;margin:45px auto}
.setup-intro{padding:34px}
.setup-intro h1{font-size:clamp(2.7rem,5vw,4.6rem);line-height:.92;margin:.22em 0}
.setup-intro>p{color:var(--muted);font-size:1rem;max-width:480px}
.setup-points{display:grid;gap:10px;margin-top:28px}
.setup-points span{display:flex;align-items:center;gap:10px;color:#4f5852;font-size:.84rem;font-weight:730}
.setup-points .icon{color:var(--teal)}
.setup-card{padding:30px;box-shadow:var(--shadow)}
.step-number{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:var(--orange);color:#fff;font-weight:900;margin-bottom:12px}
.setup-card h2{margin:0}
.setup-card p{margin:.25em 0 0}

/* Resumen */
.stat-grid{display:grid;grid-template-columns:repeat(var(--wizard-steps,5),minmax(0,1fr));gap:14px;margin-bottom:22px}
.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:19px;text-decoration:none;color:var(--ink);position:relative;min-height:170px;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.stat-card:after{content:"";position:absolute;width:95px;height:95px;border-radius:50%;right:-44px;top:-45px;background:var(--teal-soft)}
.stat-card:hover{color:var(--ink);transform:translateY(-3px);box-shadow:var(--shadow);border-color:#c8d8d5}
.stat-card.attention{border-top:4px solid var(--orange)}
.stat-card.attention:after{background:var(--orange-soft)}
.stat-card span{display:block;color:var(--muted);font-size:.77rem;margin-top:20px}
.stat-card strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:2.55rem;line-height:1.05;margin-top:2px}
.stat-card small{margin-top:7px;font-size:.7rem;line-height:1.35}
.stat-icon{width:27px;height:27px;color:var(--teal);position:relative;z-index:2}
.stat-card.attention .stat-icon{color:var(--orange)}
.two-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}

/* Listas y tablas */
.simple-list{display:grid}
.simple-list>a,.simple-list>span{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 5px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}
.simple-list>a:hover{background:var(--surface-soft);padding-left:10px;padding-right:10px;border-radius:9px;color:var(--ink)}
.simple-list>a:last-child,.simple-list>span:last-child{border-bottom:0}
.compact-list{max-width:380px}
.table-wrap{overflow:auto;padding:0}
.table-wrap>table{min-width:760px}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:.65rem;text-transform:uppercase;letter-spacing:.09em;color:#777c76;background:#faf9f6;white-space:nowrap}
tbody tr:hover{background:#fcfbf8}
tbody tr:last-child td{border-bottom:0}
td{font-size:.84rem}
td a{font-weight:850;text-decoration:none}
.status,.priority{display:inline-flex;align-items:center;border-radius:999px;background:#eee;padding:5px 9px;font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.035em;white-space:nowrap}
.status.active,.status.approved,.status.paid,.status.sent,.status.settled{background:#ddf1e5;color:#155d3a}
.status.pending,.status.review,.status.pending_billing,.status.included,.status.generated,.status.waiting,.status.pending_current_email,.status.pending_new_email,.status.pending_review{background:#fff0c8;color:#79510d}
.status.open,.status.in_progress{background:#ddecf1;color:#185b6d}
.status.rejected,.status.failed,.status.cancelled,.status.returned,.status.deceased,.status.closed{background:#f7deda;color:#8b2923}
.priority.low{background:#eee}
.priority.normal{background:#e2edf0;color:#1d5964}
.priority.high{background:#fff0c8;color:#7a500b}
.priority.urgent{background:#f5d9d5;color:#922a24}
.filters,.subnav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.filters a,.subnav a{padding:8px 13px;border-radius:999px;background:#fff;border:1px solid var(--line);text-decoration:none;color:#454944;font-size:.77rem;font-weight:730}
.filters a:hover,.subnav a:hover{border-color:#a6c2be;color:var(--teal)}
.filters a.active,.subnav a.active{background:var(--teal);color:#fff;border-color:var(--teal);box-shadow:0 6px 14px rgba(13,85,84,.16)}

/* Fichas y tickets */
.detail-list dl,.mini-dl{display:grid;grid-template-columns:155px 1fr;gap:10px;margin:0}
.detail-list dt,.mini-dl dt{color:var(--muted);font-size:.78rem}
.detail-list dd,.mini-dl dd{margin:0;font-weight:680;font-size:.86rem}
.conversation{display:grid;gap:12px;background:#f8f5ef}
.message{max-width:84%;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.message.outgoing{margin-left:auto;background:#e5f0ee;border-color:#c8dfdb}
.message.internal{margin-left:auto;margin-right:auto;max-width:100%;background:#fff3d9;border-style:dashed}
.message p{margin:.35em 0}
.ticket-layout{grid-template-columns:minmax(0,1.45fr) minmax(270px,.7fr)}
.comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.comparison>div{padding:18px;border-radius:13px;background:#f8f5ef;border:1px solid var(--line)}
.card-preview{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}
.card-preview img{width:100%;height:auto}
.sensitive-value{padding:12px;border-radius:9px;background:#fff3d9;border:1px solid #eedda9;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;word-break:break-all}

/* Firma */
.signature-box canvas{width:100%;height:220px;background:#fff;border:2px dashed #aaa095;border-radius:12px;touch-action:none}
.signature-box .button{margin-top:8px}

/* Estados vacíos y resultados */
.empty-state{text-align:center;padding:30px 20px}
.empty-state .empty-icon{width:48px;height:48px;color:var(--orange);margin:0 auto 14px}
.empty-state h1{font-family:Georgia,"Times New Roman",serif;margin:.2em 0}
.empty-state p{color:var(--muted);max-width:460px;margin:0 auto 22px}
.danger-state .empty-icon{color:var(--red)}
.success-panel{padding:34px;text-align:center;max-width:760px;margin:45px auto}
.error-panel{padding:35px;text-align:center}
.error-mark{font-size:2rem;color:var(--red)}

/* Portal socio */
.member-portal{display:grid;gap:22px}
.profile-form,.payment-form,.reveal-form{display:grid;gap:14px}

/* reCAPTCHA */
.g-recaptcha{max-width:100%;overflow:hidden}

/* Responsive */
@media(max-width:1180px){
  .stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .morisma-hero{gap:34px}
}

@media(max-width:960px){
  .app-topbar{min-height:66px;grid-template-columns:auto 1fr auto;gap:12px;padding:8px 16px}
  .topbar-brand small{display:none}
  .topbar-brand .brand-logo{width:40px;height:40px}
  .menu-button{display:grid}
  .top-nav{display:none;padding:8px 12px 14px;align-items:stretch;flex-direction:column;gap:4px;max-height:calc(100vh - 66px);overflow:auto}
  body.top-nav-open .top-nav{display:flex}
  .top-nav-link,.top-nav-group>summary{width:100%;min-height:44px;padding:10px 12px}
  .top-nav-group{width:100%}
  .top-nav-dropdown,.top-nav-dropdown-right{position:static;min-width:0;margin:3px 0 7px;padding:5px;border:0;border-radius:9px;background:rgba(255,255,255,.08);box-shadow:none}
  .top-nav-dropdown a{color:#e6efee;min-height:42px}
  .top-nav-dropdown a:hover{background:rgba(255,255,255,.1);color:#fff}
  .top-nav-dropdown a.active{background:#fff;color:var(--teal-dark)}
  .top-nav-security{margin:5px 0 0;padding:10px 12px;border-top:1px solid rgba(255,255,255,.1)}
  .morisma-hero{grid-template-columns:1fr;min-height:auto;padding-top:45px}
  .hero-copy{text-align:center}
  .hero-copy>p{margin-inline:auto}
  .hero-copy .actions{justify-content:center}
  .hero-poster{height:590px;max-width:500px;width:100%;margin:auto;transform:none}
  .auth-layout,.setup-shell{grid-template-columns:1fr;max-width:620px}
  .auth-layout{min-height:0}
  .auth-visual{height:230px;min-height:230px}
  .auth-visual img{object-position:center 27%}
  .setup-shell{gap:0;margin-top:25px}
  .setup-intro{padding:30px 18px;text-align:center}
  .setup-intro .brand-logo{margin-inline:auto}
  .setup-points{width:max-content;max-width:100%;margin-inline:auto;text-align:left}
  .permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .public-nav>a:not(.button){display:none}
}

@media(max-width:760px){
  .container{padding:25px 16px 55px}
  .public-header{height:70px;padding:0 15px}
  .public-brand small{display:none}
  .public-brand .brand-logo{width:40px;height:40px;padding:4px}
  .public-nav{gap:8px}
  .form-grid,.two-cols,.comparison,.ticket-layout{grid-template-columns:1fr}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stat-card{min-height:150px;padding:16px}
  .stat-card strong{font-size:2.2rem}
  .steps{grid-template-columns:repeat(2,1fr)}
  .hero-copy h1{font-size:clamp(3rem,15vw,5rem)}
  .hero-poster{min-height:420px;height:118vw;max-height:590px}
  .page-head{display:block}
  .page-head h1{font-size:2.35rem}
  .inline-form,.actions-panel,.reject-form,.search{align-items:stretch;flex-direction:column}
  .search input{min-width:0}
  .permission-grid{grid-template-columns:1fr}
  .detail-list dl,.mini-dl{grid-template-columns:1fr;gap:3px 10px}
  .detail-list dd,.mini-dl dd{margin-bottom:9px}
  .message{max-width:95%}
  .site-footer{display:block;text-align:center}
  .site-footer span{display:block}
  .site-footer span+span:before{display:none}
  .user-chip>span:last-child{display:none}
  .topbar-title strong{font-size:1rem}
}

@media(max-width:500px){
  .public-nav .button{font-size:0;width:41px;padding:0}
  .public-nav .button .icon{margin:0}
  .auth-layout{margin:18px 0;border-radius:18px}
  .auth-card.auth-main{padding:30px 22px}
  .auth-visual{height:185px;min-height:185px}
  .auth-visual-overlay{left:18px;bottom:18px}
  .stat-grid{grid-template-columns:1fr}
  .stat-card{min-height:135px}
  .steps{grid-template-columns:1fr 1fr}
  .button{width:100%}
  .actions .button{width:100%}
  .filters,.subnav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}
  .filters a,.subnav a{white-space:nowrap}
}

@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

.dashboard-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:25px;padding:4px 2px}
.dashboard-welcome h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.15rem,3.6vw,3.4rem);letter-spacing:-.04em;line-height:1;margin:.13em 0 .2em;color:#142021}
.dashboard-welcome p{color:var(--muted);max-width:710px;margin:.4em 0 0}
.dashboard-quick-actions{display:flex;gap:9px;flex:0 0 auto}
@media(max-width:760px){.dashboard-welcome{display:block}.dashboard-quick-actions{margin-top:18px;display:grid;grid-template-columns:1fr 1fr}.dashboard-quick-actions .button{width:100%}}
@media(max-width:500px){.dashboard-quick-actions{grid-template-columns:1fr}}

.auth-card:not(.auth-main){max-width:580px;margin:48px auto;padding:32px}
.auth-card:not(.auth-main)>h1{font-family:Georgia,"Times New Roman",serif;font-size:2.35rem;line-height:1;margin:.1em 0 .35em}
.auth-card:not(.auth-main)>form{display:grid;gap:16px;margin-top:22px}

/* Configuración clara y guiada */
details.card{padding:0;overflow:hidden}
details.card>summary{list-style:none;cursor:pointer;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff}
details.card>summary::-webkit-details-marker{display:none}
details.card>summary:after{content:"+";display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--teal-soft);color:var(--teal);font-size:1.2rem;font-weight:900}
details.card[open]>summary{border-bottom:1px solid var(--line)}
details.card[open]>summary:after{content:"−"}
.settings-details{padding:24px}
.help-note code{display:inline-block;margin-top:5px;padding:3px 7px;border-radius:6px;background:#fff;border:1px solid var(--line);color:var(--teal-dark);font-size:.78rem}

/* 0.2.4 · Formularios públicos y área de socio mobile-first */
.required{color:#b42318;font-weight:950}
.required-note{margin:0 0 2px;color:var(--muted);font-size:.82rem;font-weight:650}
.mobile-first-form{position:relative}
.mobile-first-form .field,.mobile-first-form .check-field,.mobile-first-form .signature-box{scroll-margin-top:105px}
.form-section-title{display:flex;align-items:center;gap:11px;margin:8px 0 1px!important;padding-top:24px!important;color:#1d2928}
.form-section-title>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:50%;background:var(--teal);color:#fff;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.88rem;font-weight:950}
.field{position:relative}
.field>small{margin-top:-1px;line-height:1.4}
.field.has-error input,.field.has-error select,.field.has-error textarea,input.is-invalid,select.is-invalid,textarea.is-invalid{border:2px solid #d92d20!important;background:#fff8f7!important;box-shadow:0 0 0 4px rgba(217,45,32,.09)!important}
.field.has-error>label,.field.has-error{color:#8f1d16}
.field-error{display:flex;align-items:flex-start;gap:7px;margin-top:2px;padding:8px 10px;border-radius:9px;background:#fff0ee;color:#a01d16;font-size:.78rem;font-weight:760;line-height:1.35}
.field-error-icon{width:17px;height:17px;flex:0 0 auto;margin-top:1px}
.signature-box.has-error{padding:12px;border:2px solid #d92d20;border-radius:13px;background:#fff8f7}
.check-field.has-error{padding:10px;border:2px solid #d92d20;border-radius:10px;background:#fff8f7;color:#8f1d16}
.validation-summary{grid-column:1/-1;padding:17px 18px;border:2px solid #d92d20;border-radius:13px;background:#fff4f2;color:#7a271a;box-shadow:0 10px 24px rgba(180,35,24,.08);scroll-margin-top:95px}
.validation-summary[hidden]{display:none}
.validation-summary-title{display:flex;align-items:center;gap:9px;font-size:1rem}
.validation-summary-title .icon{color:#d92d20}
.validation-summary p{margin:5px 0 7px;font-size:.84rem}
.validation-summary ul{margin:0;padding-left:22px}
.validation-summary li{margin:3px 0}
.validation-summary a{color:#9e1c14;font-weight:800}
.signature-box canvas{display:block;width:100%;max-width:700px;height:220px;border:2px dashed #bdb5aa;border-radius:12px;background:#fff;touch-action:none;cursor:crosshair}
.signature-box canvas:focus{outline:3px solid rgba(13,85,84,.15)}
.signature-actions{display:flex;align-items:center;gap:12px;margin-top:10px}
.form-submit-wrap{display:grid;gap:7px;text-align:center;margin-top:3px}
.form-submit-wrap .form-submit{width:100%;min-height:56px;font-size:1rem}
.recaptcha-wrap{display:flex;justify-content:center;overflow:hidden}
.public-page-head{max-width:940px;margin-inline:auto}
.member-mobile-grid{display:grid;grid-template-columns:minmax(220px,.68fr) minmax(0,1.32fr);gap:26px;align-items:start}
.member-fees-panel{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}
.member-fees-panel h3{margin:0 0 9px}
.profile-form{padding:21px;border:1px solid var(--line);border-radius:15px;background:#fff}
.profile-form-intro h3{font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;margin:.15em 0}
.profile-form-intro p{margin:.15em 0 7px;color:var(--muted);font-size:.86rem}
.member-card-actions{margin-top:0;justify-content:flex-end}

@media(max-width:900px){
  .mobile-first-form.form-grid{grid-template-columns:1fr}
  .mobile-first-form .desktop-spacer{display:none}
  .public-form{max-width:720px}
  .member-mobile-grid{grid-template-columns:1fr}
  .member-fees-panel{order:0}
  .profile-form{order:1}
}

@media(max-width:760px){
  .public-container,.member-container{padding-left:13px;padding-right:13px}
  .public-page-head,.member-page-head{padding:2px 3px 0;margin-bottom:17px}
  .public-page-head h1,.member-page-head h1{font-size:2rem;line-height:1.04}
  .public-page-head p,.member-page-head p{font-size:.94rem;line-height:1.45}
  .mobile-help{padding:14px;margin-bottom:15px}
  .mobile-first-form.card{padding:18px 15px;border-radius:15px;margin-bottom:18px}
  .mobile-first-form{gap:19px}
  .mobile-first-form label{font-size:.98rem;gap:8px}
  .mobile-first-form input,.mobile-first-form select,.mobile-first-form textarea{min-height:54px;padding:13px 14px;border-width:2px;border-radius:11px;font-size:16px;line-height:1.25}
  .mobile-first-form textarea{min-height:135px}
  .mobile-first-form small{font-size:.78rem}
  .form-section-title{font-size:1.28rem!important;padding-top:20px!important;margin-top:3px!important}
  .form-section-title>span{width:32px;height:32px}
  .consents{padding:13px;gap:8px}
  .consents .check-field{display:grid;grid-template-columns:27px minmax(0,1fr);align-items:start;gap:10px;padding:11px 8px;font-size:.91rem;line-height:1.45}
  .consents input[type="checkbox"]{width:24px;height:24px;margin:0;min-height:24px}
  .consents>.field-error{margin-top:-7px;margin-bottom:4px}
  .signature-box canvas{height:175px}
  .signature-actions{align-items:stretch;flex-direction:column}
  .signature-actions .button{min-height:48px;width:100%}
  .form-submit-wrap{margin-top:2px;padding-top:5px}
  .form-submit-wrap .form-submit{min-height:58px;font-size:1.04rem;border-radius:13px}
  .validation-summary{padding:15px 14px}
  .member-portal{padding:17px 14px}
  .member-summary-head{display:grid;gap:12px}
  .member-summary-head h2{font-size:1.45rem}
  .member-card-actions{display:grid;grid-template-columns:1fr;margin:0;width:100%}
  .member-card-actions .button{width:100%}
  .member-fees-panel,.profile-form{padding:15px 13px}
  .profile-form{gap:17px}
  .member-header .public-brand strong{font-size:1rem}
  .member-header .top-actions{gap:5px}
  .member-header .user-chip{display:none}
  .member-header .button{width:auto;min-width:62px;min-height:43px;font-size:.82rem}
  .responsive-table table,.responsive-table thead,.responsive-table tbody,.responsive-table tr,.responsive-table td{display:block;width:100%}
  .responsive-table table{min-width:0}
  .responsive-table thead{display:none}
  .responsive-table tr{padding:11px 13px;margin-bottom:10px;border:1px solid var(--line);border-radius:12px;background:#fff}
  .responsive-table td{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:8px 0;border:0;text-align:right}
  .responsive-table td:before{content:attr(data-label);color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em;text-align:left}
  .changes-card{padding:17px 14px}
}

@media(max-width:420px){
  .public-header{padding-left:10px;padding-right:10px}
  .public-brand strong{font-size:1.02rem}
  .public-container,.member-container{padding-left:9px;padding-right:9px}
  .mobile-first-form.card{padding:16px 12px;border-left:0;border-right:0;border-radius:12px}
  .form-section-title{font-size:1.2rem!important}
  .g-recaptcha{transform:scale(.91);transform-origin:center top;margin-bottom:-7px}
}

@supports(padding:max(0px)){
  @media(max-width:760px){
    .public-header,.member-header{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
    .public-container,.member-container{padding-bottom:max(55px,calc(35px + env(safe-area-inset-bottom)))}
  }
}
.recaptcha-wrap.has-error{display:grid;justify-items:center;gap:8px;padding:12px;border:2px solid #d92d20;border-radius:12px;background:#fff8f7}

/* 0.3.0 · acciones rápidas, alta interna, comunicados y correo entrante */
.row-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}
.action-icon{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--teal);text-decoration:none;transition:.15s ease}
.action-icon .icon{width:18px;height:18px}.action-icon:hover{background:var(--teal-soft);border-color:#a8c8c3;transform:translateY(-1px)}
.action-icon.whatsapp{color:#187a4c}.action-icon.disabled{opacity:.32;cursor:not-allowed;background:#f5f5f3}
.nested-grid{margin-top:12px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fafbf9}
[data-adult-fields][hidden],[data-minor-fields][hidden]{display:none!important}
.audience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}
.mini-stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow-sm)}
.mini-stat strong{display:block;font-size:1.8rem;color:var(--teal-dark);line-height:1}.mini-stat span{display:block;color:var(--muted);font-size:.8rem;margin-top:8px}
.compact-stats .stat-card{min-height:110px}.stat-word{font-size:1.15rem!important;line-height:1.25!important}
.status.queued,.status.sending{background:#e2edf0;color:#1d5964}.status.completed{background:#ddf1e5;color:#155d3a}
.source-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:.72rem;font-weight:800;background:#eef3f2;color:#49605e}.source-badge .icon{width:14px;height:14px}.source-badge.email{background:#e5f0ee;color:#155f5c}
.message-attachments{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.attachment-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:9px;background:#eef5f3;border:1px solid #d2e3df;text-decoration:none;font-size:.76rem}.attachment-chip .icon{width:15px;height:15px}.attachment-chip small{color:var(--muted)}
.inbox-settings{margin-top:22px}.inbox-actions{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.inbox-actions form{margin:0}.text-danger{color:#a32018;font-size:.76rem;line-height:1.35;display:block;max-width:340px;white-space:normal}

@media(max-width:900px){.audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .row-actions{gap:8px}.action-icon{width:44px;height:44px;border-radius:12px}.action-icon .icon{width:20px;height:20px}
  .members-grid table{min-width:760px}.members-grid{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .inbox-actions{display:grid;grid-template-columns:1fr}.inbox-actions .button{width:100%}
}
@media(max-width:520px){.audience-grid{grid-template-columns:1fr 1fr}.mini-stat{padding:14px}.mini-stat strong{font-size:1.55rem}.mini-stat span{font-size:.75rem}.nested-grid{padding:12px}}

/* 0.4.0 · editor HTML, grids avanzados y legales */
.rich-editor-field{display:block}.rich-editor-field .field-label{display:block;font-weight:780;margin-bottom:7px}.rich-toolbar{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:8px;border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0;background:#f8faf9}.rich-toolbar button{min-height:36px;padding:6px 10px;border:1px solid #d7e0dd;background:#fff;border-radius:7px;color:var(--ink);font:inherit;font-size:.76rem;font-weight:760;cursor:pointer}.rich-toolbar button:hover,.rich-toolbar button:focus{border-color:var(--teal);color:var(--teal);outline:none}.toolbar-sep{width:1px;height:24px;background:var(--line);margin:0 3px}.rich-editor{min-height:260px;padding:18px;border:1px solid var(--line);border-radius:0 0 12px 12px;background:#fff;font-size:16px;line-height:1.55;outline:none;overflow:auto}.rich-editor:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(13,98,97,.10)}.rich-editor-field.has-error .rich-editor{border:2px solid var(--red);background:#fff8f7}.rich-editor h2,.rich-editor h3,.rich-preview h2,.rich-preview h3,.campaign-html-preview h2,.campaign-html-preview h3{font-family:inherit;color:#173b3a}.rich-preview-card{border:1px dashed #cdd9d6;border-radius:12px;padding:14px;background:#fafcfb}.rich-preview{margin-top:12px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:10px;line-height:1.6}.campaign-html-preview{max-width:760px;line-height:1.65}
.grid-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:12px;align-items:end;padding:16px;border-bottom:1px solid var(--line);background:#fbfcfb;min-width:720px}.grid-toolbar-main{display:flex;gap:9px;align-items:end;flex-wrap:wrap}.grid-search-wrap{min-width:230px;flex:1}.grid-search-wrap label,.grid-filter-wrap label,.grid-size-wrap label{display:block;margin-bottom:5px;color:var(--muted);font-size:.67rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.grid-toolbar input,.grid-toolbar select{min-height:40px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;font:inherit;font-size:.82rem}.grid-filter-wrap select{max-width:185px}.grid-meta{text-align:right;color:var(--muted);font-size:.76rem;white-space:nowrap;padding-bottom:10px}table[data-grid] th:not([data-no-sort]){cursor:pointer;user-select:none;position:relative;padding-right:28px}table[data-grid] th:not([data-no-sort]):after{content:'↕';position:absolute;right:10px;opacity:.32;font-size:.75rem}table[data-grid] th.grid-sort-asc:after{content:'↑';opacity:1;color:var(--teal)}table[data-grid] th.grid-sort-desc:after{content:'↓';opacity:1;color:var(--teal)}.grid-pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;min-width:720px;padding:13px 16px;background:#fbfcfb}.grid-page-buttons{display:flex;gap:6px;align-items:center}.grid-page-buttons button{min-width:38px;height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:800;cursor:pointer}.grid-page-buttons button:disabled{opacity:.35;cursor:not-allowed}.grid-page-current{font-size:.78rem;color:var(--muted)}.grid-empty-generated td{text-align:center!important;color:var(--muted);padding:26px!important}
.legal-hero{max-width:840px;margin:30px auto 18px;text-align:center}.legal-hero h1{font-size:clamp(2.4rem,6vw,4rem);margin:.16em 0}.legal-hero p{color:var(--muted)}.legal-page{max-width:900px;margin:0 auto 35px;padding:clamp(24px,5vw,48px)}.legal-page h2{margin-top:1.7em;color:#173b3a}.legal-page p{line-height:1.72;color:#35413f}.legal-identity{display:grid;grid-template-columns:150px 1fr;gap:8px 18px;padding:18px;background:#f8faf9;border-radius:12px}.legal-identity dt{font-weight:850;color:var(--muted)}.legal-identity dd{margin:0}.legal-updated{margin-top:30px!important;padding-top:16px;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)!important}
.site-footer-rich{display:grid;grid-template-columns:minmax(220px,1fr) minmax(230px,1fr) minmax(230px,1fr);gap:28px;align-items:start;padding:28px clamp(18px,5vw,64px);background:#f7f9f8;border-top:1px solid var(--line);color:#52605d;font-size:.77rem;text-align:left}.footer-brand-block{display:flex;gap:12px;align-items:center}.footer-logo{width:48px;height:48px;object-fit:contain}.footer-brand-block strong{display:block;color:#203432;font-size:.86rem}.footer-brand-block span{display:block;margin-top:3px}.footer-contact-block,.footer-legal-block{display:grid;gap:7px}.footer-contact-block a,.footer-contact-block span,.footer-legal-block a,.footer-legal-block span{display:flex;align-items:center;gap:7px;color:#52605d;text-decoration:none}.footer-contact-block a:hover,.footer-legal-block a:hover{color:var(--teal)}.footer-contact-block .icon{width:15px;height:15px;flex:0 0 auto}.footer-legal-block>span:last-child{display:block}.member-action-panel{padding:20px;border:1px solid var(--line);border-radius:14px;background:#fafcfb}.member-action-panel h3{margin-top:0}.member-action-panel p{color:var(--muted);line-height:1.55}.profile-change-dedicated{max-width:780px;margin-inline:auto}.form-section-title{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:4px 0 14px;margin-top:8px}.form-section-title h2{margin:0;font-size:1.15rem}.form-section-title p{margin:3px 0 0;color:var(--muted);font-size:.8rem}.step-badge{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--teal);color:#fff;font-weight:900;flex:0 0 auto}
.form-collapsible{border:1px solid var(--line);border-radius:13px;background:#fbfcfb;overflow:hidden}
.form-collapsible>summary{cursor:pointer;user-select:none;list-style:none;margin:0;padding:14px 16px;border-bottom:0;background:#f5f8f7}
.form-collapsible>summary::-webkit-details-marker{display:none}
.form-collapsible[open]>summary{border-bottom:1px solid var(--line)}
.collapsible-summary .collapse-indicator{margin-left:auto;padding:5px 9px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.72rem;font-weight:850;color:var(--teal)}
.form-collapsible[open] .collapse-indicator{font-size:0}
.form-collapsible[open] .collapse-indicator::after{content:"Cerrar";font-size:.72rem}
.collapsible-content{padding:18px}

@media(max-width:760px){.rich-toolbar{gap:4px}.rich-toolbar button{min-height:42px;padding:8px 11px}.rich-editor{min-height:230px;padding:15px}.grid-toolbar{display:block;min-width:0;padding:13px}.grid-toolbar-main{display:grid;grid-template-columns:1fr}.grid-search-wrap{min-width:0}.grid-filter-wrap select{max-width:none;width:100%}.grid-meta{text-align:left;padding:10px 0 0}.grid-pagination{min-width:0;display:grid;justify-content:stretch}.grid-page-buttons{justify-content:space-between}.site-footer-rich{grid-template-columns:1fr;text-align:left;padding:25px 20px}.footer-legal-block{padding-top:8px;border-top:1px solid var(--line)}.legal-identity{grid-template-columns:1fr;gap:2px}.legal-identity dd{margin-bottom:9px}}

/* 0.5.0 · Pendientes en menú, estadísticas y control de cuotas */
.top-nav a,.top-nav summary{position:relative}
.nav-badge{margin-left:auto;min-width:1.55rem;height:1.55rem;padding:0 .38rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#c43a35;color:#fff;font-size:.75rem;font-weight:800;line-height:1;box-shadow:0 0 0 2px rgba(255,255,255,.16)}
.statistics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0}.statistics-grid .card{margin:0}.bar-list,.rank-list{display:grid;gap:.72rem}.bar-row>div:first-child,.rank-list>div{display:flex;justify-content:space-between;gap:1rem;align-items:center}.bar-track{height:.55rem;background:#e7eeee;border-radius:999px;overflow:hidden;margin-top:.3rem}.bar-track span{display:block;height:100%;background:var(--primary,#0d4f50);border-radius:999px}.rank-list>div{padding:.58rem 0;border-bottom:1px solid #e8eeee}.rank-list>div:last-child{border-bottom:0}.rank-list b{display:inline-grid;place-items:center;width:1.55rem;height:1.55rem;border-radius:50%;background:#eef4f3;color:#0d4f50;margin-right:.45rem}.compact-stats{margin-bottom:1rem}.compact-stats .stat{min-height:auto}.fee-bulk-form{padding:0;overflow:hidden}.fee-bulk-toolbar{padding:1rem;display:flex;gap:.75rem;align-items:end;flex-wrap:wrap;background:#f6f9f8;border-bottom:1px solid #dfe8e6}.fee-bulk-toolbar label{min-width:150px;flex:1}.fee-bulk-toolbar .button{flex:0 0 auto}.selection-note{padding:.75rem 1rem;background:#fff;border-bottom:1px solid #e7eeee;color:#536361}.link-button{border:0;background:none;padding:0;color:#0d4f50;text-decoration:underline;cursor:pointer;font:inherit}.checkbox-col{width:44px;text-align:center}.fee-members-grid input[type=checkbox]{width:20px;height:20px}.inbox-sync-state{margin:.85rem 0;padding:.75rem 1rem;background:#f6f9f8;border-radius:.65rem;color:#536361}
@media(max-width:800px){.statistics-grid{grid-template-columns:1fr}.fee-bulk-toolbar{display:grid;grid-template-columns:1fr 1fr}.fee-bulk-toolbar .button{grid-column:1/-1;width:100%;min-height:50px}.fee-members-grid th:nth-child(4),.fee-members-grid td:nth-child(4),.fee-members-grid th:nth-child(6),.fee-members-grid td:nth-child(6){display:none}}
@media(max-width:560px){.fee-bulk-toolbar{grid-template-columns:1fr}.fee-bulk-toolbar .button{grid-column:auto}.nav-badge{min-width:1.45rem;height:1.45rem}}

/* 0.6.0 · importación, previsualización de envíos y conciliación bancaria */
.status.matched{background:#e8f2f0;color:#17635f}.status.imported{background:#e7f4ec;color:#216b3a}.status.invalid,.status.duplicate{background:#fff0ee;color:#a43831}.status.pending_email{background:#fff4dc;color:#8a5a00}
.legacy-mandate-confirm{padding:14px 16px;border-top:1px solid var(--line);background:#fff9ec}.legacy-mandate-confirm .check-field{margin:0}.filter-summary{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 0}.filter-summary span{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef4f3;color:#345653;font-size:.75rem}.stack-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.import-grid small,.bank-return-grid small{display:block;color:var(--muted);margin-top:3px}
@media(max-width:760px){.legacy-mandate-confirm{padding:13px}.stack-actions{display:grid;grid-template-columns:1fr}.stack-actions .button{width:100%}}

/* 0.7.0 · calidad, 2FA, estados y justificantes */
.two-factor-secret{display:grid;gap:6px;margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f7faf9}.two-factor-secret span{font-size:.72rem;font-weight:850;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.two-factor-secret code{font-size:1.05rem;font-weight:850;letter-spacing:.11em;word-break:break-all;color:var(--teal-dark)}.break-code{display:block;white-space:normal;word-break:break-all;padding:10px;background:#f5f6f5;border-radius:8px}.success-box{padding:16px;border:1px solid #bddfca;background:#eff9f2;border-radius:12px;margin-bottom:18px;color:#1e5e39}.success-box strong{display:flex;gap:8px;align-items:center}.success-box p{margin:.45rem 0}.compact-form{max-width:580px}.approval-form{display:grid;gap:16px;min-width:min(100%,620px)}.approval-panel{align-items:start}.payment-extra[hidden]{display:none!important}.payment-extra{padding:14px;border:1px solid var(--line);border-radius:12px;background:#f8faf9}.page-tools{justify-content:flex-end;margin-bottom:10px}.pre-notice-card{border-left:4px solid var(--teal)}.sensitive-value{padding:12px;border:1px solid #efc774;border-radius:10px;background:#fff9e8;font-family:ui-monospace,Consolas,monospace;font-weight:800;letter-spacing:.04em}.status.inactive{background:#edf0f0;color:#56625f}.status.deceased{background:#ececec;color:#555}.status.cancelled{background:#f1eceb;color:#74504a}
@media(max-width:760px){.page-tools{display:grid;grid-template-columns:1fr 1fr}.page-tools .button{width:100%}.approval-panel{display:grid}.approval-form{min-width:0}.two-factor-secret code{font-size:.88rem}.payment-form .consents{grid-column:1/-1}}
@media(max-width:430px){.page-tools{grid-template-columns:1fr}}

/* 0.8.0 · Stripe e importación con mapeo */
.step-strip{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.step-strip span{padding:9px 13px;border-radius:999px;background:#eef2f0;color:#65716b;font-size:.84rem;font-weight:700}.step-strip span.active{background:#1f5a45;color:#fff}
.mapping-grid{display:grid;gap:10px;margin:16px 0 24px}.mapping-row{display:grid;grid-template-columns:minmax(190px,1fr) 34px minmax(220px,1fr);gap:12px;align-items:end;padding:14px;border:1px solid #dfe6e2;border-radius:12px;background:#fbfcfb}.mapping-source{display:flex;flex-direction:column;gap:3px}.mapping-source small{color:#6c7772;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mapping-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#78847e;font-weight:700}.mapping-arrow{font-size:1.35rem;color:#7b8b83;text-align:center;padding-bottom:13px}
.payment-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.payment-option{display:flex;gap:11px;align-items:flex-start;padding:15px;border:2px solid #dfe6e2;border-radius:14px;background:#fff;cursor:pointer}.payment-option:has(input:checked){border-color:#25684f;background:#f3faf6;box-shadow:0 0 0 3px rgba(37,104,79,.08)}.payment-option input{width:20px;height:20px;margin-top:2px}.payment-option span{display:flex;flex-direction:column;gap:3px}.payment-option small{color:#67736d;line-height:1.35}.bank-payment-section{padding:16px;border-radius:14px;background:#f7f9f8;border:1px solid #e2e8e5}.bank-payment-section h3{margin-top:0}.nested-grid{margin:0}
.plugin-card code{word-break:break-all}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.top-gap{margin-top:14px}.payment-pending .check{background:#fff2d9;color:#9b6500}
@media(max-width:760px){.mapping-row{grid-template-columns:1fr}.mapping-arrow{transform:rotate(90deg);padding:0}.payment-choice,.check-grid{grid-template-columns:1fr}.payment-option{min-height:64px}.step-strip{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.step-strip span{white-space:nowrap}}
.stripe-recurring-consent[hidden]{display:none!important}

/* 0.8.1 · Control reforzado de duplicados en importaciones */
.import-row-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;min-width:230px}.import-row-actions .muted{font-size:.84rem}.button.small{min-height:34px;padding:.4rem .65rem;font-size:.82rem}.button.danger-outline{background:#fff;border-color:#c83a3a;color:#a61f1f}.button.danger-outline:hover{background:#fff1f1}.import-duplicate-help{margin-bottom:1rem}
@media(max-width:720px){.import-row-actions{align-items:stretch;flex-direction:column}.import-row-actions .button{width:100%;justify-content:center}.import-duplicate-help p{line-height:1.5}}


/* 0.9.0 · control de calidad, permisos y evidencias */
.quality-grid{margin-bottom:1.2rem}.quality-sections{align-items:start}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.permission-grid label{display:flex;gap:.6rem;align-items:flex-start;padding:.72rem .8rem;border:1px solid var(--line);border-radius:10px;background:#fbfcfc}.permission-grid input{width:18px;height:18px;margin-top:1px}.danger-zone{border-color:#ebc7c2!important;background:#fff8f7!important}.evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.evidence-grid>div{display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fafcfb}.evidence-grid strong{font-size:.82rem}.evidence-grid span{font-weight:750;color:#233c39}.evidence-grid small{color:var(--muted)}
@media(max-width:760px){.permission-grid,.evidence-grid{grid-template-columns:1fr}.quality-sections{grid-template-columns:1fr}}

/* 0.10.0 · estado del sistema, copias y preparación de pruebas */
.system-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px}.health-card{display:flex;gap:12px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow-sm)}.health-card .health-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;flex:0 0 auto}.health-card .health-icon .icon{width:20px;height:20px}.health-card>div:last-child{display:grid;gap:3px;min-width:0}.health-card span{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:850}.health-card strong{font-size:.91rem;line-height:1.35;overflow-wrap:anywhere}.health-ok .health-icon{background:#e8f5ed;color:#21633d}.health-warning .health-icon{background:#fff2d9;color:#936000}.health-error .health-icon{background:#fde9e7;color:#aa2f28}.system-columns{align-items:start}.backup-list{display:grid;margin-top:16px;border-top:1px solid var(--line)}.backup-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 2px;border-bottom:1px solid var(--line)}.backup-row>div:first-child{display:grid;gap:3px;min-width:0}.backup-row small{color:var(--muted);overflow-wrap:anywhere}.backup-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.simple-status-list{display:grid;margin:12px 0 18px}.simple-status-list>div{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 0;border-bottom:1px solid var(--line)}.simple-status-list>div:last-child{border-bottom:0}.simple-status-list span:first-child{font-weight:750}.simple-status-list strong{text-align:right;font-size:.83rem}.readiness-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.readiness-list>div{display:flex;gap:9px;align-items:flex-start;padding:13px;border-radius:12px;border:1px solid var(--line);background:#fafcfb}.readiness-list .icon{width:19px;height:19px;flex:0 0 auto;margin-top:1px}.readiness-list>div.ready .icon{color:#247148}.readiness-list>div.pending .icon{color:#a86600}.readiness-list span{display:grid;gap:3px}.readiness-list strong{font-size:.84rem}.readiness-list small{color:var(--muted);line-height:1.35}
@media(max-width:1050px){.system-health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.readiness-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.system-health-grid,.readiness-list{grid-template-columns:1fr}.backup-row{align-items:flex-start}.backup-actions{flex-direction:column;align-items:flex-end}.simple-status-list>div{display:grid}.simple-status-list strong{text-align:left}.system-columns{grid-template-columns:1fr}}

/* 0.11.6 · Provincia única y protección anti-spam automática */
[data-province-es-wrap][hidden],[data-province-other-wrap][hidden]{display:none!important}
.spam-trap{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.spam-status{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:7px 10px;border:1px solid #cfe1dd;border-radius:9px;background:#f2f8f6;color:#48635f;font-size:.76rem;font-weight:720}
.spam-status .icon{width:15px;height:15px;color:var(--teal)}
.recaptcha-wrap>.spam-status{justify-self:start}
@media(max-width:760px){.recaptcha-wrap>.spam-status{justify-self:stretch}}

/* 0.12.0 · gestión, auditoría y analítica */
.member-actions{flex-wrap:wrap}.action-form{margin:0}.action-form .action-icon{font:inherit;padding:0;cursor:pointer}.action-icon.danger-action{color:#a61f1f;border-color:#e8c3c3}.action-icon.danger-action:hover{background:#fff0f0;border-color:#d99b9b}.member-quick-actions{align-items:center}.member-email-target{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.member-email-target .button{margin-left:auto}
.analytics-filter,.audit-filters{display:flex;gap:.75rem;align-items:end;flex-wrap:wrap;margin-bottom:1rem}.analytics-filter label,.audit-filters label{min-width:150px;flex:1}.audit-filters .audit-search{min-width:240px;flex:2}.audit-filters .actions{margin:0}.analytics-grid .analytics-daily{grid-column:1/-1}.analytics-daily .bar-row strong small{font-weight:500;color:var(--muted)}
.audit-meta summary{cursor:pointer;color:var(--teal);font-weight:700}.audit-meta pre{max-width:420px;max-height:240px;overflow:auto;white-space:pre-wrap;word-break:break-word;background:#f6f8f7;padding:.7rem;border-radius:.6rem;font-size:.75rem}.table-wrap code{font-size:.8rem;word-break:break-all}
@media(max-width:800px){.analytics-filter,.audit-filters{display:grid;grid-template-columns:1fr 1fr}.analytics-filter .button,.audit-filters .actions,.audit-filters .audit-search{grid-column:1/-1}.member-email-target .button{margin-left:0;width:100%}.member-quick-actions{width:100%}.member-quick-actions .button{flex:1 1 auto;justify-content:center}}

/* 0.12.0 ampliado · informe de cuotas y cambio público de datos */
.fee-money-stats .stat strong{font-size:clamp(1.35rem,2vw,2rem)}
.collection-progress .section-head{align-items:flex-end}
.collection-progress .section-head>strong{font-size:2rem;line-height:1;color:var(--primary,#0d4f50)}
.progress-track{height:14px;border-radius:999px;background:#e7ecec;overflow:hidden;margin:14px 0 10px}
.progress-track>span{display:block;height:100%;border-radius:inherit;background:currentColor;color:var(--primary,#0d4f50)}
.collection-legend{display:flex;gap:18px;justify-content:space-between;flex-wrap:wrap;color:#5f6b6d;font-size:.92rem}
.fee-report-filter{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.fee-report-filter label{min-width:180px}
.public-form-head{max-width:850px}
@media print{
  .app-header,.site-footer,.subnav,.fee-report-filter,.page-head .actions,.top-nav{display:none!important}
  .content,.container{max-width:none!important;width:100%!important;padding:0!important}
  .card,.stat{box-shadow:none!important;break-inside:avoid}
  body{background:#fff!important}
}

/* 0.13.0 · informes, cuotas, remesas, portal y SEO */
.panel-kicker{display:block;color:var(--orange);font-size:.63rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase;margin-bottom:3px}
.report-page-head{align-items:flex-end}
.report-page-head .actions{margin-top:0;justify-content:flex-end}
.report-filter-bar{display:flex;align-items:end;gap:14px;padding:16px 18px;margin-bottom:18px;background:linear-gradient(135deg,#fff,#f8faf8)}
.report-filter-bar>div:first-child{display:grid;gap:2px;margin-right:auto}.report-filter-bar>div:first-child small{color:var(--muted)}
.report-filter-bar label{min-width:155px}.report-filter-bar select{min-height:42px}
.report-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:34px;align-items:center;padding:28px 30px;border-color:#cfdedb;background:linear-gradient(135deg,#fff 0%,#f6fbf9 68%,#edf5f2 100%);overflow:hidden;position:relative}
.report-hero:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-105px;top:-115px;background:rgba(13,85,84,.055);pointer-events:none}
.report-hero-copy{position:relative;z-index:1}.report-hero-copy h2{font-size:1.35rem;margin:.2rem 0 .9rem}
.report-big-number{display:flex;align-items:baseline;gap:11px;flex-wrap:wrap}.report-big-number strong{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.05rem,4vw,3.65rem);line-height:.95;color:var(--teal-dark);letter-spacing:-.045em}.report-big-number span{color:var(--muted);font-weight:700}
.report-progress{height:11px;margin:19px 0 8px;background:#dfe9e6}.report-progress>span{background:linear-gradient(90deg,var(--teal),#2a8b6c)}
.report-progress-meta{display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-size:.8rem}.report-progress-meta strong{color:var(--teal)}
.report-ring-wrap{display:grid;justify-items:center;gap:8px;min-width:150px;position:relative;z-index:1}.report-ring{--paid:0;width:126px;height:126px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--teal) calc(var(--paid)*1%),#e3eae8 0);position:relative}.report-ring:before{content:"";position:absolute;inset:13px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #e7eeeb}.report-ring>div{position:relative;text-align:center;display:grid}.report-ring strong{font-family:Georgia,"Times New Roman",serif;font-size:1.65rem;line-height:1;color:var(--teal-dark)}.report-ring span{font-size:.66rem;color:var(--muted);font-weight:800;text-transform:uppercase}.report-ring-wrap>small{color:var(--muted);text-align:center;max-width:155px}
.compact-hero{padding:22px 25px}.compact-hero .report-big-number strong{font-size:clamp(1.85rem,3vw,2.75rem)}
.hero-side-actions{display:grid;gap:8px;justify-items:stretch;min-width:190px;position:relative;z-index:1}
.report-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0 0 22px}.report-kpi-grid.compact-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.report-kpi{min-width:0;display:flex;gap:12px;align-items:flex-start;padding:17px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.report-kpi:after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#a5b2ae}.report-kpi-icon{width:20px;height:20px;flex:0 0 auto;margin-top:2px}.report-kpi>div{display:grid;min-width:0}.report-kpi span{font-size:.71rem;font-weight:850;color:var(--muted);text-transform:uppercase;letter-spacing:.045em}.report-kpi strong{font-family:Georgia,"Times New Roman",serif;font-size:1.42rem;line-height:1.05;margin:5px 0 4px;white-space:nowrap}.report-kpi small{font-size:.7rem;color:var(--muted);line-height:1.3}.kpi-success{color:#1d6b46}.kpi-success:after{background:#2e8b5c}.kpi-warning{color:#8a5c13}.kpi-warning:after{background:#d59a37}.kpi-danger{color:#9a312a}.kpi-danger:after{background:#c95b54}.kpi-info{color:#23677a}.kpi-info:after{background:#4a90a6}.kpi-muted{color:#64706d}.kpi-muted:after{background:#9da8a4}.kpi-neutral{color:var(--teal-dark)}.kpi-neutral:after{background:var(--teal)}
.report-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr);gap:18px;align-items:stretch}.report-panel{margin-bottom:22px;min-width:0}.report-panel .section-head strong{font-size:.95rem;color:var(--teal)}
.month-chart{height:250px;display:flex;align-items:stretch;gap:10px;padding:13px 5px 0;overflow-x:auto}.month-column{min-width:65px;flex:1;display:grid;grid-template-rows:1fr auto auto;gap:6px;text-align:center}.month-bar-wrap{height:160px;display:flex;align-items:flex-end;justify-content:center;padding:0 8px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(13,85,84,.015),rgba(13,85,84,.045));border-radius:8px 8px 0 0}.month-bar{display:block;width:min(34px,65%);min-height:8px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#2f8a70,var(--teal));box-shadow:0 5px 13px rgba(13,85,84,.15)}.month-column>strong{font-size:.71rem;color:#29423e;white-space:nowrap}.month-column>small{font-size:.64rem;color:var(--muted);line-height:1.35}
.report-rank-list{display:grid}.report-rank-list>div{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.report-rank-list>div:last-child{border-bottom:0}.report-rank-list>div>span{display:flex;align-items:center;gap:9px;font-weight:760}.report-rank-list b{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:var(--teal-soft);color:var(--teal);font-size:.7rem}.report-rank-list>div>strong{display:grid;text-align:right;font-size:.86rem}.report-rank-list strong small{font-weight:500;color:var(--muted);font-size:.66rem}
.report-table-card{padding:0;overflow:hidden}.report-table-card>.section-head{padding:20px 22px 9px;margin:0}.report-table-card>.table-wrap{border:0;border-radius:0}.result-pill{display:inline-flex;align-items:center;min-height:29px;padding:5px 10px;border-radius:999px;background:var(--teal-soft);color:var(--teal);font-size:.7rem;font-weight:850;white-space:nowrap}.table-subtext{display:block;color:var(--muted);font-size:.68rem;margin-top:3px;font-weight:500}
.empty-state-card{display:flex;align-items:center;gap:18px;padding:28px}.empty-state-icon{width:44px;height:44px;color:var(--teal);padding:10px;border-radius:13px;background:var(--teal-soft)}.empty-state-card>div{flex:1}.empty-state-card h2{margin-bottom:5px}.empty-state-card p{margin:0;color:var(--muted)}
.create-fee-card{padding:0}.create-fee-card>summary{font-weight:800}.create-fee-card .settings-details{padding-top:18px}
.fee-bulk-form{padding:0;overflow:hidden}.fee-bulk-toolbar{display:grid;grid-template-columns:auto minmax(180px,1fr) minmax(150px,.7fr) minmax(150px,.7fr) auto;gap:10px;align-items:end;padding:15px 18px;background:#f8faf9;border-bottom:1px solid var(--line)}.fee-bulk-toolbar label{margin:0}.selection-note{display:flex;align-items:center;gap:8px;font-size:.78rem;color:var(--muted);padding-bottom:10px}.selection-note strong{color:var(--teal)}.muted-control{opacity:.45}.checkbox-col{width:42px;text-align:center}.checkbox-col input{width:18px;height:18px;accent-color:var(--teal)}.link-button{border:0;background:none;color:var(--teal);font:inherit;font-size:.76rem;font-weight:800;cursor:pointer;padding:0}.fee-members-grid{border:0;border-radius:0}
.remittance-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.remittance-readiness{padding:22px}.compact-year-filter select{min-width:110px}.readiness-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}.readiness-good,.readiness-bad{display:flex;align-items:center;gap:11px;padding:15px;border-radius:12px;border:1px solid}.readiness-good{background:#edf8f1;border-color:#cce6d5;color:#236b45}.readiness-bad{background:#fff3e6;border-color:#efcfaa;color:#8a5317}.readiness-good>span,.readiness-bad>span{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:rgba(255,255,255,.72);flex:0 0 auto}.readiness-good strong,.readiness-bad strong{display:block}.readiness-good small,.readiness-bad small{display:block;margin-top:2px;opacity:.8}.remittance-actions-grid{grid-template-columns:1fr 1fr}.workflow-card{margin:0!important}.workflow-card>summary{justify-content:flex-start!important}.workflow-card>summary:after{margin-left:auto}.workflow-card summary>span:last-of-type{display:grid}.workflow-card summary small{display:block;color:var(--muted);font-weight:500;font-size:.72rem;margin-top:2px}.workflow-number{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--teal);color:#fff;font-weight:900;flex:0 0 auto}.remittance-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}.remittance-flow>div{position:relative;padding:13px;border-radius:12px;background:#f5f7f6;border:1px solid var(--line);color:var(--muted)}.remittance-flow>div.done{background:#ebf6ef;border-color:#cbe2d3;color:#236747}.remittance-flow span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;border:1px solid currentColor;font-size:.7rem;font-weight:900;margin-bottom:7px}.remittance-flow strong{display:block;font-size:.82rem}.remittance-status-hero{padding:22px}.remittance-status-action{display:flex;align-items:center;gap:14px;justify-content:space-between;padding-top:14px;margin-top:14px;border-top:1px solid var(--line)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Área del socio */
.portal-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 18px}.portal-summary-card{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff}.portal-summary-card>.icon{width:22px;height:22px;color:var(--teal)}.portal-summary-card span{display:block;color:var(--muted);font-size:.7rem;font-weight:800;text-transform:uppercase}.portal-summary-card strong{display:block;margin-top:2px;font-size:.95rem}.member-portal{overflow:hidden}.member-summary-head{padding-bottom:16px;border-bottom:1px solid var(--line)}.member-mobile-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.member-fees-panel{padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff}.member-fees-panel h3{margin-top:0}.portal-fee-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.portal-fee-row:last-child{border-bottom:0}.portal-fee-row>strong{font-size:.88rem}.portal-fee-row>span:nth-child(2){color:var(--muted);font-size:.77rem}.portal-fee-row .button{min-height:31px;padding:4px 8px;font-size:.7rem}

/* SEO y landing pública */
.seo-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}.seo-status-grid .health-card{margin:0}.seo-status-grid small{color:var(--muted);line-height:1.35}.join-hero{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:34px;align-items:center;margin:22px 0;padding:clamp(26px,5vw,52px);background:linear-gradient(135deg,#fff 0%,#f4faf7 70%,#edf5f2 100%)}.join-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.4rem,5vw,4.7rem);line-height:.95;letter-spacing:-.045em;margin:.15em 0 .25em}.join-hero p{max-width:720px;color:var(--muted);font-size:1.02rem}.join-fee-card{padding:24px;border-radius:18px;background:var(--teal-dark);color:#fff;box-shadow:0 20px 42px rgba(9,47,49,.18)}.join-fee-card span,.join-fee-card small{display:block;color:#bdd3cf}.join-fee-card strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:3rem;line-height:1;margin:8px 0}.join-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.join-info-card{position:relative}.join-info-card h2{margin-top:8px}.join-info-card p{color:var(--muted);margin-bottom:0}.join-step{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--orange-soft);color:var(--orange-dark);font-weight:950}.join-existing{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:0}.join-existing p{color:var(--muted);margin-bottom:0}.join-existing .actions{margin-top:0;justify-content:flex-end}

@media(max-width:1150px){.report-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-kpi-grid.compact-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.fee-bulk-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.fee-bulk-toolbar>.selection-note,.fee-bulk-toolbar>button{grid-column:auto}.join-hero{grid-template-columns:minmax(0,1fr) 230px}}
@media(max-width:850px){.report-hero{grid-template-columns:1fr}.report-ring-wrap{justify-self:start;grid-template-columns:auto 1fr;align-items:center}.report-grid,.remittance-actions-grid{grid-template-columns:1fr}.readiness-metrics{grid-template-columns:1fr}.member-mobile-grid{grid-template-columns:1fr}.portal-summary-grid,.seo-status-grid,.join-info-grid{grid-template-columns:1fr}.join-hero{grid-template-columns:1fr}.join-fee-card{max-width:330px}.join-existing{display:block}.join-existing .actions{justify-content:flex-start;margin-top:16px}}
@media(max-width:620px){.report-kpi-grid,.report-kpi-grid.compact-kpis{grid-template-columns:1fr 1fr}.report-filter-bar{display:grid;grid-template-columns:1fr}.report-filter-bar>div:first-child{margin-right:0}.report-filter-bar label{min-width:0}.report-filter-bar .button{width:100%}.report-hero{padding:21px}.report-ring{width:105px;height:105px}.month-chart{height:225px}.month-bar-wrap{height:140px}.fee-bulk-toolbar{grid-template-columns:1fr}.remittance-flow{grid-template-columns:1fr}.report-page-head{display:block}.report-page-head .actions{justify-content:flex-start}.join-hero{padding:26px 20px}.join-hero h1{font-size:2.55rem}.join-fee-card{max-width:none}.portal-summary-grid{grid-template-columns:1fr}.portal-fee-row{grid-template-columns:auto 1fr auto}.portal-fee-row .button{grid-column:1/-1;width:100%}}
@media(max-width:430px){.report-kpi-grid,.report-kpi-grid.compact-kpis{grid-template-columns:1fr}.report-kpi{min-height:96px}.report-big-number strong{font-size:2.05rem}}

@media print{
  .report-hero,.report-kpi,.report-panel,.report-table-card{box-shadow:none!important}
  .report-filter-bar,.report-actions,.hero-side-actions,.fee-bulk-toolbar,.remittance-actions-grid{display:none!important}
  .report-kpi-grid{grid-template-columns:repeat(3,1fr)!important}
  .report-grid{grid-template-columns:1fr 1fr!important}
}
.public-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:18px}.public-feature-grid .card{margin:0}.public-feature-grid h2{margin:.25rem 0 .55rem}.public-feature-grid p{color:var(--muted);line-height:1.6}.public-feature-grid a{font-weight:850;text-decoration:none}.portal-request-columns{align-items:start}.portal-request-columns .card{height:100%}
@media(max-width:850px){.public-feature-grid{grid-template-columns:1fr}}

/* 0.13.1 · Revisión móvil: cabeceras y navegación */
@media(max-width:960px){
  body.top-nav-open{overflow:hidden}
  .top-nav{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
}

@media(max-width:820px){
  .app-topbar{
    min-height:0;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:"brand actions" "title title";
    gap:7px 10px;
    padding:8px 12px 9px;
  }
  .topbar-brand{grid-area:brand;gap:8px;min-width:0;overflow:hidden}
  .topbar-brand .brand-logo{width:36px;height:36px;padding:3px;border-radius:10px}
  .topbar-brand>span{min-width:0}
  .topbar-brand strong{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .topbar-brand small{display:none}
  .app-topbar .top-actions{grid-area:actions;gap:6px;justify-self:end;min-width:max-content}
  .app-topbar .user-chip{display:none}
  .app-topbar .icon-button,.app-topbar .menu-button{width:38px;height:38px;border-radius:10px}
  .topbar-title{
    grid-area:title;
    min-width:0;
    padding:7px 1px 0;
    border-left:0;
    border-top:1px solid var(--line);
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:baseline;
    gap:8px;
  }
  .topbar-kicker{font-size:.56rem;letter-spacing:.11em;white-space:nowrap}
  .topbar-title strong{min-width:0;font-size:.96rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .top-nav{max-height:calc(100dvh - 102px);padding:7px 10px max(14px,env(safe-area-inset-bottom))}
  .top-nav-security{white-space:normal;line-height:1.35}

  .public-header{gap:10px}
  .public-brand{gap:8px;overflow:hidden}
  .public-brand>span{min-width:0}
  .public-brand strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .public-nav{flex:0 0 auto}

  .page-head{gap:14px}
  .page-head .actions{max-width:100%}
  .row-actions{flex-wrap:wrap;white-space:normal}
}

@media(max-width:560px){
  .app-topbar{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}
  .topbar-title{grid-template-columns:minmax(0,1fr)}
  .topbar-kicker{display:none}
  .topbar-title strong{font-size:.94rem}
  .public-header{height:66px;padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}
  .public-brand .brand-logo{width:36px;height:36px;padding:3px}
  .public-brand strong{font-size:.98rem}
  .member-header .button{min-width:56px;min-height:38px;padding:6px 10px}
  .container{padding-left:12px;padding-right:12px}
  .card{padding:18px 15px}
}

@media(max-width:380px){
  .topbar-brand .brand-logo{width:32px;height:32px}
  .topbar-brand strong{font-size:.92rem}
  .app-topbar .icon-button,.app-topbar .menu-button{width:35px;height:35px}
  .topbar-title strong{font-size:.9rem}
  .public-brand strong{font-size:.93rem}
  .member-header .button{min-width:52px;padding-inline:8px}
}

/* 0.14.0 · Gestión administrativa asistida */
.admin-guide{margin:0 0 18px;padding:16px 18px;border:1px solid #cfe0db;border-radius:15px;background:linear-gradient(135deg,#f9fcfb,#f1f7f4);box-shadow:var(--shadow-sm)}
.admin-guide-head{display:flex;gap:11px;align-items:center;margin-bottom:12px}.admin-guide-icon{width:24px;height:24px;color:var(--teal)}.admin-guide-head>div{display:grid}.admin-guide-head strong{font-size:.95rem;color:var(--teal-dark)}
.admin-guide ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;list-style:none;margin:0;padding:0}.admin-guide li{display:flex;gap:8px;align-items:flex-start;padding:10px 11px;border-radius:11px;background:#fff;border:1px solid #e0ebe7}.admin-guide li>span{display:grid;place-items:center;flex:0 0 auto;width:23px;height:23px;border-radius:8px;background:var(--teal);color:#fff;font-size:.68rem;font-weight:900}.admin-guide li p{margin:1px 0 0;font-size:.73rem;line-height:1.4;color:#425653}.admin-guide-note{margin:10px 0 0;padding-top:10px;border-top:1px solid #dbe8e4;color:var(--muted);font-size:.72rem}
.admin-wizard{padding:0;overflow:hidden}.admin-wizard-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-bottom:1px solid var(--line);background:#f7faf9}.admin-wizard-progress button{appearance:none;border:0;border-right:1px solid var(--line);background:transparent;min-width:0;padding:12px 8px;display:flex;justify-content:center;align-items:center;gap:7px;color:#7a8784;cursor:pointer}.admin-wizard-progress button:last-child{border-right:0}.admin-wizard-progress button>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e4ebe8;font-size:.7rem;font-weight:900}.admin-wizard-progress button strong{font-size:.72rem;white-space:nowrap}.admin-wizard-progress button.active{background:#edf7f3;color:var(--teal)}.admin-wizard-progress button.active>span{background:var(--teal);color:#fff}.admin-wizard-progress button.done{color:#35665c}.admin-wizard-progress button.done>span{background:#cfe7dc;color:#175a45}.admin-wizard-progress button[hidden]{display:none!important}
.admin-wizard-step{padding:24px 25px}.admin-wizard-step[hidden]{display:none!important}.wizard-step-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px}.wizard-step-number{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border-radius:12px;background:var(--teal);color:#fff;font-weight:950}.wizard-step-head h2{margin:2px 0 4px;font-size:1.22rem}.wizard-step-head p{margin:0;color:var(--muted);font-size:.8rem;max-width:740px}.wizard-step-head [hidden]{display:none!important}
.wizard-tip{display:flex;gap:9px;align-items:flex-start;margin-top:16px;padding:11px 13px;border-radius:11px;background:#edf7f3;color:#315b52;font-size:.75rem}.wizard-tip>.icon{width:18px;height:18px;flex:0 0 auto}.wizard-tip.warning{background:#fff5e8;color:#7a531c}.decision-card{padding:14px 16px;border:1px solid #d7e5e1;border-radius:13px;background:#fafcfb;margin-bottom:12px}.decision-card .check-field{margin:0}.decision-card small{display:block;color:var(--muted);margin-top:2px}
.admin-wizard-step>.wizard-nav{display:flex;justify-content:space-between;gap:10px;margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}.admin-wizard-step>.wizard-nav .button:last-child{margin-left:auto}.wizard-final-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.wizard-review{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 18px}.wizard-review-item{display:grid;grid-template-columns:minmax(120px,.65fr) minmax(0,1fr);gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fafcfa}.wizard-review-item span{font-size:.69rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:850}.wizard-review-item strong{font-size:.78rem;overflow-wrap:anywhere}.wizard-review-empty{grid-column:1/-1;color:var(--muted);font-size:.78rem}.final-options-grid{padding-top:3px}.final-action-summary{padding:13px 14px;border-radius:12px;background:#eaf6ef;border:1px solid #cae3d4;color:#285f45}.final-action-summary>div{display:flex;gap:10px;align-items:flex-start}.final-action-summary .icon{width:19px;height:19px;flex:0 0 auto}
.guided-action-dialog{border:0;border-radius:18px;padding:0;width:min(610px,calc(100vw - 28px));max-height:min(760px,calc(100vh - 30px));box-shadow:0 24px 70px rgba(12,38,34,.28);overflow:hidden}.guided-action-dialog::backdrop{background:rgba(13,34,31,.5);backdrop-filter:blur(2px)}.guided-dialog-head{padding:20px 22px 15px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#f9fcfb,#edf6f2)}.guided-dialog-head .panel-kicker{margin-bottom:4px}.guided-dialog-head h2{margin:0;font-size:1.25rem}.guided-dialog-body{padding:20px 22px;overflow:auto;max-height:520px}.guided-dialog-stage[hidden]{display:none!important}.guided-dialog-stage h3{font-size:1rem;margin:0 0 8px}.guided-dialog-stage>p{color:var(--muted);font-size:.8rem}.guided-dialog-summary{display:grid;gap:7px;margin-top:12px}.guided-dialog-summary>div{display:flex;justify-content:space-between;gap:15px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#fafcfa;font-size:.75rem}.guided-dialog-summary span{color:var(--muted)}.guided-dialog-summary strong{text-align:right;overflow-wrap:anywhere}.guided-effect{padding:14px;border-radius:12px;background:#edf7f3;color:#315b52;font-size:.8rem;line-height:1.5}.guided-effect.danger{background:#fff0ef;color:#7f352f;border:1px solid #efcac6}.guided-dialog-footer{display:flex;gap:9px;justify-content:flex-end;padding:14px 22px;border-top:1px solid var(--line);background:#fafbfa}.guided-dialog-footer [data-guided-back]{margin-right:auto}
.task-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px}.task-guide-card{display:flex;gap:12px;align-items:flex-start;padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow-sm);text-decoration:none;color:inherit}.task-guide-card:hover{border-color:#b7d3cb;transform:translateY(-1px)}.task-guide-card>.icon{width:21px;height:21px;color:var(--teal);flex:0 0 auto}.task-guide-card strong{display:block;color:var(--teal-dark);font-size:.85rem}.task-guide-card small{display:block;color:var(--muted);font-size:.7rem;line-height:1.4;margin-top:3px}
.guided-checklist{display:grid;gap:7px;margin:12px 0 0;padding:0;list-style:none}.guided-checklist li{display:flex;gap:8px;align-items:flex-start;font-size:.76rem;color:#425653}.guided-checklist li:before{content:"✓";display:grid;place-items:center;width:20px;height:20px;border-radius:7px;background:#e4f3ec;color:#216746;font-size:.67rem;font-weight:900;flex:0 0 auto}
@media(max-width:760px){.admin-wizard-progress{display:flex;overflow-x:auto;scrollbar-width:none}.admin-wizard-progress::-webkit-scrollbar{display:none}.admin-wizard-progress button{min-width:112px;flex:0 0 auto}.admin-wizard-step{padding:18px 15px}.wizard-step-head{gap:10px}.wizard-step-number{width:34px;height:34px}.wizard-review{grid-template-columns:1fr}.wizard-review-item{grid-template-columns:1fr;gap:3px}.wizard-final-actions,.admin-wizard-step>.wizard-nav{flex-wrap:wrap}.wizard-final-actions .button,.admin-wizard-step>.wizard-nav .button{flex:1 1 auto}.task-guide-grid{grid-template-columns:1fr}.admin-guide ol{grid-template-columns:1fr}.guided-dialog-footer{padding:12px 14px;flex-wrap:wrap}.guided-dialog-body{padding:16px}.guided-dialog-head{padding:17px 16px 13px}}

/* 0.14.0 · Centro de tareas administrativas */
.assistant-section{margin:0 0 24px}.assistant-section>.section-head{margin-bottom:12px}.admin-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-process-card{display:flex;gap:13px;align-items:flex-start;padding:17px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:var(--shadow-sm)}.admin-process-card>.process-icon{width:24px;height:24px;color:var(--teal);flex:0 0 auto;margin-top:1px}.admin-process-card>div{min-width:0;display:grid;align-content:start}.admin-process-card strong{font-size:.9rem;color:var(--teal-dark)}.admin-process-card ol{margin:9px 0 13px;padding-left:19px;color:#52625f;font-size:.72rem;line-height:1.55}.admin-process-card .button{justify-self:start}.assistant-section:nth-of-type(even) .admin-process-card{background:#fbfcfb}
@media(max-width:980px){.admin-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.admin-process-grid{grid-template-columns:1fr}.admin-process-card{padding:15px}.admin-process-card ol{margin-bottom:10px}}

/* 0.15.0 · Operativa diaria, bandeja de trabajo y acciones avanzadas */
.work-summary-grid .stat-card{position:relative;overflow:hidden}.work-summary-grid .stat-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--teal)}.work-summary-grid .stat-danger::before{background:#b93a31}.work-summary-grid .stat-warning::before{background:#c88618}
.work-queue-list{display:grid;gap:11px}.work-task-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px 17px;border:1px solid var(--line);border-left:4px solid #8aa39d;border-radius:14px;background:#fff;box-shadow:var(--shadow-sm)}.work-task-card.priority-high{border-left-color:#c88618}.work-task-card.priority-urgent{border-left-color:#b93a31}.work-task-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#edf6f2;color:var(--teal)}.priority-high .work-task-icon{background:#fff5df;color:#986414}.priority-urgent .work-task-icon{background:#fff0ef;color:#a43a32}.work-task-icon .icon{width:21px;height:21px}.work-task-main{min-width:0}.work-task-title{display:flex;gap:10px;align-items:center}.work-task-title h2{margin:0;font-size:.96rem}.work-task-main p{margin:4px 0 0;color:var(--muted);font-size:.76rem}.work-count{display:inline-grid;place-items:center;min-width:26px;height:24px;padding:0 7px;border-radius:999px;background:#e8efed;font-size:.72rem;font-weight:900}.priority-high .work-count{background:#fff0c9;color:#835609}.priority-urgent .work-count{background:#f8d9d6;color:#8d2d27}.empty-state-large{text-align:center;padding:42px 25px}.empty-state-large .empty-state-icon{width:42px;height:42px;color:var(--teal);margin-bottom:10px}.empty-state-large h2{margin:0 0 6px}
.bulk-action-bar{display:grid;grid-template-columns:minmax(180px,1.3fr) repeat(3,minmax(145px,.8fr)) auto;gap:12px;align-items:end;margin-bottom:12px;padding:14px 16px}.bulk-action-bar>div{align-self:center}.bulk-action-bar strong{display:block}.bulk-action-bar small{display:block;color:var(--muted);font-size:.7rem}.bulk-action-bar label{font-size:.7rem;font-weight:800}.bulk-action-bar select{margin-top:4px}.bulk-ticket-form .table-wrap{margin-top:0}
.ticket-reply-form{display:grid;gap:13px}.ticket-reply-form label{display:grid;gap:5px}.ticket-reply-form input[type=file]{padding:10px;background:#fafcfb;border:1px dashed #b9c9c5;border-radius:10px}.ticket-reply-form textarea{min-height:150px}
.campaign-send-head{align-items:flex-end}.campaign-schedule{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.campaign-schedule label{display:grid;gap:3px;min-width:245px;font-size:.72rem;font-weight:800}.campaign-schedule label small{font-weight:500;color:var(--muted)}.campaign-runtime-actions{justify-content:flex-end;margin:0 0 12px}.campaign-runtime-actions form{margin:0}
.permission-presets{padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:#fafcfb;margin:6px 0 12px}.permission-presets>strong{display:block;font-size:.82rem}.permission-presets>.muted{display:block;font-size:.7rem;margin:2px 0 9px}.permission-presets .button-row{gap:7px;flex-wrap:wrap}
@media(max-width:900px){.bulk-action-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.bulk-action-bar>div{grid-column:1/-1}.bulk-action-bar .button{width:100%}.campaign-send-head{align-items:stretch}.campaign-schedule{width:100%}.campaign-schedule label{flex:1 1 240px}.work-task-card{grid-template-columns:auto minmax(0,1fr)}.work-task-card>.button{grid-column:2;justify-self:start}}
@media(max-width:560px){.bulk-action-bar{grid-template-columns:1fr}.bulk-action-bar>div{grid-column:auto}.work-task-card{grid-template-columns:1fr;padding:14px}.work-task-icon{width:38px;height:38px}.work-task-card>.button{grid-column:auto;width:100%}.campaign-schedule{display:grid}.campaign-schedule label{min-width:0}.campaign-schedule .button{width:100%}.permission-presets .button{width:100%}}
