.modulia-button{font-family:var(--modulia-font-family);font-size:var(--modulia-font-size-base);font-weight:500;line-height:var(--modulia-line-height);min-height:var(--modulia-touch-target);min-width:var(--modulia-touch-target);padding:var(--modulia-space-2) var(--modulia-space-4);border-radius:var(--modulia-radius);border:1px solid transparent;cursor:pointer;box-shadow:var(--modulia-shadow-xs);transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease,transform .12s ease}.modulia-button:focus-visible{outline:none;box-shadow:var(--modulia-focus-ring)}.modulia-button:disabled{cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.modulia-button--primary{background-color:var(--modulia-color-primary);color:var(--modulia-color-on-primary)}.modulia-button--primary:not(:disabled):hover{background-color:var(--modulia-color-primary-hover);box-shadow:var(--modulia-shadow-md);transform:translateY(-1px)}.modulia-button--secondary{background-color:var(--modulia-color-surface);color:var(--modulia-color-text);border-color:var(--modulia-color-border);box-shadow:none}.modulia-button--secondary:not(:disabled):hover{background-color:var(--modulia-color-surface-muted);border-color:var(--modulia-color-primary);color:var(--modulia-color-primary)}.modulia-button--danger{background-color:var(--modulia-color-danger);color:var(--modulia-color-on-primary)}.modulia-button--danger:not(:disabled):hover{box-shadow:var(--modulia-shadow-md);transform:translateY(-1px)}.modulia-button--ghost{background-color:transparent;color:var(--modulia-color-text-muted);box-shadow:none}.modulia-button--ghost:not(:disabled):hover{background-color:var(--modulia-color-surface-muted);color:var(--modulia-color-text)}@media (prefers-reduced-motion:reduce){.modulia-button{transition:none}.modulia-button:not(:disabled):hover{transform:none}}.modulia-sheet-overlay{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:200;display:flex;align-items:flex-end;justify-content:stretch;animation:modulia-sheet-fade .18s ease-out}@keyframes modulia-sheet-fade{0%{opacity:0}to{opacity:1}}.modulia-sheet{background:#ffffff;border-radius:16px 16px 0 0;padding:var(--modulia-space-3,12px) var(--modulia-space-4,16px) calc(var(--modulia-space-4, 16px) + env(safe-area-inset-bottom, 0px));width:100%;max-width:480px;margin:0 auto;max-height:80dvh;overflow-y:auto;box-shadow:0 -10px 30px rgba(0,0,0,.18);animation:modulia-sheet-slide .24s cubic-bezier(.2,.8,.3,1)}@keyframes modulia-sheet-slide{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modulia-sheet:focus-visible{outline:2px solid var(--modulia-color-primary,#1d4ed8);outline-offset:-2px}.modulia-sheet-agarre{width:40px;height:4px;border-radius:2px;background:var(--modulia-color-border,#cbd5e1);margin:0 auto var(--modulia-space-3,12px)}.modulia-sheet-titulo{margin:0 0 var(--modulia-space-2,8px);font-size:16px;font-family:var(--modulia-font-display)}@media (prefers-reduced-motion:reduce){.modulia-sheet,.modulia-sheet-overlay{animation:none;transition:none}}.modulia-avatar{width:32px;height:32px;border-radius:50%;background:var(--modulia-color-primary,#1d4ed8);color:#ffffff;display:flex;justify-content:center;flex-shrink:0}.modulia-avatar,.modulia-badge{align-items:center;font-size:13px;font-weight:600}.modulia-badge{display:inline-flex;gap:6px;padding:3px 10px 3px 3px;border-radius:8px;letter-spacing:.1px;white-space:nowrap;border:1px solid transparent;line-height:1.25}.modulia-badge:not(:has(.modulia-badge__icono)):before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none;margin-left:4px}.modulia-badge__icono{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;flex:none}.modulia-badge--sm{font-size:12px;padding:2px 8px 2px 2px;gap:5px}.modulia-badge--sm .modulia-badge__icono{width:17px;height:17px;border-radius:5px}.modulia-badge--sm:not(:has(.modulia-badge__icono)):before{width:6px;height:6px;margin-left:4px}.modulia-badge--info{background:var(--modulia-status-info-bg);color:var(--modulia-status-info-fg);border-color:var(--modulia-status-info-border)}.modulia-badge--info .modulia-badge__icono{background:var(--modulia-status-info-border)}.modulia-badge--success{background:var(--modulia-status-success-bg);color:var(--modulia-status-success-fg);border-color:var(--modulia-status-success-border)}.modulia-badge--success .modulia-badge__icono{background:var(--modulia-status-success-border)}.modulia-badge--warning{background:var(--modulia-status-warning-bg);color:var(--modulia-status-warning-fg);border-color:var(--modulia-status-warning-border)}.modulia-badge--warning .modulia-badge__icono{background:var(--modulia-status-warning-border)}.modulia-badge--danger{background:var(--modulia-status-danger-bg);color:var(--modulia-status-danger-fg);border-color:var(--modulia-status-danger-border)}.modulia-badge--danger .modulia-badge__icono{background:var(--modulia-status-danger-border)}.modulia-badge--neutral{background:var(--modulia-status-neutral-bg);color:var(--modulia-status-neutral-fg);border-color:var(--modulia-status-neutral-border)}.modulia-badge--neutral .modulia-badge__icono{background:var(--modulia-status-neutral-border)}.modulia-page-header{background:var(--modulia-color-surface,#ffffff);border:1px solid var(--modulia-color-border,#cbd5e1);border-radius:12px;padding:var(--modulia-space-6,24px);margin-bottom:var(--modulia-space-6,24px)}.modulia-page-header__cuerpo{display:grid;gap:var(--modulia-space-1,4px);min-width:0}.modulia-page-header__principal{display:flex;align-items:center;justify-content:space-between;gap:var(--modulia-space-3,12px);flex-wrap:wrap}.modulia-page-header__titulo{font-family:var(--modulia-font-display);font-size:26px;font-weight:700;color:var(--modulia-color-text,#0f172a);margin:0;overflow-wrap:anywhere}.modulia-page-header__subtitulo{font-size:14px}.modulia-page-header__meta,.modulia-page-header__subtitulo{color:var(--modulia-color-text-muted,#475569);margin:var(--modulia-space-1,4px) 0 0 0}.modulia-page-header__meta{font-size:13px}.modulia-page-header__acciones{display:flex;gap:var(--modulia-space-2,8px);flex-wrap:wrap;margin-top:var(--modulia-space-3,12px)}@media (min-width:1024px){.modulia-page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--modulia-space-4,16px)}.modulia-page-header__cuerpo{flex:1 1 auto}.modulia-page-header__acciones{margin-top:0;flex:none}}.modulia-page-header--brand{position:relative;overflow:hidden;background:var(--modulia-brand-night,#0f172a);border-color:var(--modulia-brand-night-soft,#1e293b)}.modulia-page-header--brand:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--modulia-brand-gradient)}.modulia-page-header--brand .modulia-page-header__titulo{color:var(--modulia-brand-on-night,#ffffff)}.modulia-page-header--brand .modulia-page-header__meta,.modulia-page-header--brand .modulia-page-header__subtitulo{color:var(--modulia-brand-on-night-muted,#94a3b8)}@media (max-width:768px){.modulia-page-header{padding:var(--modulia-space-4,16px);border-radius:10px}.modulia-page-header__titulo{font-size:20px}}.modulia-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--modulia-space-1,4px);padding:var(--modulia-space-4,16px);background:var(--modulia-color-surface,#ffffff);border:1px dashed var(--modulia-color-border,#cbd5e1);border-radius:10px}.modulia-empty__icono{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--modulia-color-surface-muted,#f1f5f9);color:var(--modulia-color-text-muted,#475569);flex:none}.modulia-empty__titulo{margin:0;font-size:16px;font-weight:600;color:var(--modulia-color-text,#0f172a)}.modulia-empty__descripcion{margin:0;font-size:14px;color:var(--modulia-color-text-muted,#475569);max-width:42ch}.modulia-empty__accion{margin-top:var(--modulia-space-2,8px)}.modulia-skeleton{display:inline-block;width:100%;background:var(--modulia-color-surface-muted,#f1f5f9);border-radius:6px;animation:modulia-skeleton-shimmer 1.5s ease-in-out infinite}.modulia-skeleton--texto{border-radius:4px}.modulia-skeleton--circulo{border-radius:50%}.modulia-skeleton--rectangulo{border-radius:10px}@keyframes modulia-skeleton-shimmer{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.modulia-skeleton{animation:none}}.modulia-spinner-caja{display:inline-flex;align-items:center}.modulia-spinner{display:inline-block;border-radius:50%;border:3px solid var(--modulia-color-border,#cbd5e1);border-top-color:var(--modulia-color-primary,#1d4ed8);animation:modulia-spinner-rotacion .8s linear infinite}@keyframes modulia-spinner-rotacion{to{transform:rotate(1turn)}}.modulia-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}@media (prefers-reduced-motion:reduce){.modulia-spinner{animation:none}}