.roles-list[data-v-03d011ca]{--brand-primary:#e5252a;--brand-secondary:#254f87;--brand-accent:#c79a2b;--surface:#fff;--surface-soft:#f6f8fc;--text-primary:#172133;--text-muted:#5f6880;--border-soft:#e4e8f1;background:#f8fafc;min-height:100vh;padding-bottom:16px}.list-hero[data-v-03d011ca]{padding:4px 0 8px}.list-crumb[data-v-03d011ca]{margin:0;font-size:13px;color:#64748b}.list-title[data-v-03d011ca]{margin:4px 0;font-size:32px;line-height:1.1;color:#0f172a;font-weight:700}.list-subtitle[data-v-03d011ca]{margin:0;font-size:14px;color:#475569}.roles-panel[data-v-03d011ca]{border-radius:10px;border:1px solid #e2e8f0;box-shadow:0 4px 14px rgba(15,23,42,.06);overflow:hidden;background:#fff}.roles-card__toolbar[data-v-03d011ca]{padding:12px;border-bottom:1px solid #e2e8f0}.toolbar-actions[data-v-03d011ca]{display:flex;align-items:center;justify-content:flex-end;gap:8px}.roles-search[data-v-03d011ca]{max-width:100%}.btn-nuevo[data-v-03d011ca]{border-radius:8px}.roles-content-wrap[data-v-03d011ca]{background:var(--surface-soft)}.roles-table[data-v-03d011ca]{background:var(--surface)}.roles-table[data-v-03d011ca] thead th{color:#64748b!important;font-weight:600;font-size:12px;letter-spacing:.2px;text-transform:uppercase;background:#f8fafc}.roles-table[data-v-03d011ca] tbody td{color:#334155;font-size:14px;border-bottom:1px solid #eef2f7}.roles-table[data-v-03d011ca] tbody tr:hover td{background:#f8fafc}.role-name-cell[data-v-03d011ca]{display:flex;align-items:center;gap:8px;font-weight:600}.role-color-dot[data-v-03d011ca]{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.role-code-badge[data-v-03d011ca]{display:inline-flex;align-items:center;padding:2px 10px;background:rgba(37,79,135,.08);color:var(--brand-secondary);font-weight:700;font-size:11px;letter-spacing:.05em;border-radius:6px}.role-code-badge--inverse[data-v-03d011ca]{background:hsla(0,0%,100%,.18);color:#fff}.status-chip[data-v-03d011ca]{font-weight:700}.status-chip--active[data-v-03d011ca]{background-color:#1f9d63!important}.status-chip--inactive[data-v-03d011ca]{background-color:#d94848!important}.table-action-btn[data-v-03d011ca]{margin:0 2px}.table-action-btn--edit[data-v-03d011ca]{border:1px solid rgba(37,79,135,.3)!important;color:#254f87!important;background:rgba(37,79,135,.1)!important;box-shadow:none!important}.table-action-btn--menus[data-v-03d011ca]{border:1px solid rgba(199,154,43,.3)!important;color:#c79a2b!important;background:rgba(199,154,43,.1)!important;box-shadow:none!important}.table-action-btn--delete[data-v-03d011ca]{border:1px solid rgba(229,37,42,.3)!important;color:#e5252a!important;background:rgba(229,37,42,.1)!important;box-shadow:none!important}.roles-mobile-list[data-v-03d011ca]{background:var(--surface-soft)}.role-mobile-card[data-v-03d011ca]{border-radius:14px;border:1px solid var(--border-soft);box-shadow:0 10px 28px rgba(20,37,70,.08);overflow:hidden}.role-mobile-card__head[data-v-03d011ca]{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:14px;background:linear-gradient(135deg,var(--role-color,#254f87),rgba(0,0,0,.18));color:#fff}.role-mobile-card__head-main[data-v-03d011ca]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.role-mobile-card__title[data-v-03d011ca]{margin:0;font-weight:700;font-size:15px;color:#fff}.role-mobile-card__body[data-v-03d011ca]{padding:12px 14px}.role-mobile-card__row[data-v-03d011ca]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:6px 0}.role-mobile-card__row .label[data-v-03d011ca]{color:var(--text-muted);font-size:12px;font-weight:600}.role-mobile-card__row .value[data-v-03d011ca]{color:var(--text-primary);font-size:13px;font-weight:600;text-align:right}.role-mobile-card__actions[data-v-03d011ca]{display:flex;justify-content:flex-end;gap:8px;padding:0 14px 14px;flex-wrap:wrap}.mobile-action-btn[data-v-03d011ca]{border-radius:9px}.mobile-pagination[data-v-03d011ca]{display:flex;justify-content:center;padding:12px 0 4px}.mobile-pagination[data-v-03d011ca] .v-pagination__item--active{background-color:var(--brand-primary)!important;color:#fff!important}@media (max-width:960px){.roles-toolbar[data-v-03d011ca]{padding:10px}.roles-search[data-v-03d011ca]{max-width:none}}.role-dialog-card{border-radius:14px;overflow:hidden}.role-dialog-title{background:linear-gradient(90deg,rgba(37,79,135,.1),rgba(199,154,43,.1));color:#254f87;font-weight:700;font-size:17px!important;padding:16px 24px!important}.role-dialog-title strong{color:#e5252a;margin-left:4px}.menus-assign-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 16px;background:#fff}.menus-assign-toolbar{display:flex;align-items:center;gap:8px;padding:10px 16px;background:linear-gradient(90deg,rgba(37,79,135,.06),rgba(199,154,43,.04))}.menus-assign-counter strong{color:#e5252a;font-size:14px}.menus-assign-counter{font-size:12px;font-weight:600;color:#254f87}.menus-assign-list{padding:8px 16px 16px;background:#fff}.menu-assign-group+.menu-assign-group{margin-top:6px;padding-top:6px;border-top:1px dashed rgba(37,79,135,.12)}.menu-assign-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;transition:background-color .15s ease}.menu-assign-row:hover{background:rgba(37,79,135,.05)}.menu-assign-row--root{font-weight:700;color:#172133}.menu-assign-row--child{color:#4b5563;font-size:13px}.menu-assign-children{margin-left:18px;padding-left:8px;border-left:2px dashed rgba(37,79,135,.18)}.menu-assign-checkbox{width:16px;height:16px;accent-color:#e5252a;cursor:pointer}.menu-assign-label{flex:1}.menu-assign-route{font-size:11px;color:#5f6880;font-weight:500;background:rgba(37,79,135,.06);padding:2px 6px;border-radius:4px}.v-alert{border-radius:0;border-width:4px 0 0 0;border-style:solid;color:#fff;display:flex;font-size:14px;margin:4px auto;padding:16px;position:relative;transition:.3s cubic-bezier(.25,.8,.5,1)}.v-alert .v-alert__icon.v-icon,.v-alert__dismissible .v-icon{align-self:center;color:rgba(0,0,0,.3);font-size:24px}.v-alert--outline .v-icon{color:inherit!important}.v-alert__icon{margin-right:16px}.v-alert__dismissible{align-self:flex-start;color:inherit;margin-left:16px;margin-right:0;text-decoration:none;transition:.3s cubic-bezier(.25,.8,.5,1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.v-alert__dismissible:hover{opacity:.8}.v-alert--no-icon .v-alert__icon{display:none}.v-alert>div{align-self:center;flex:1 1}@media screen and (max-width:600px){.v-alert__icon{display:none}}.v-alert.v-alert{border-color:rgba(0,0,0,.12)!important}.v-alert.v-alert--outline{border:1px solid currentColor!important}.v-form>.container{padding:16px}.v-form>.container>.layout>.flex{padding:8px}.v-form>.container>.layout:only-child{margin:-8px}.v-form>.container>.layout:not(:only-child){margin:auto -8px}.theme--light.v-pagination .v-pagination__item{background:#fff;color:#000;width:auto;min-width:34px;padding:0 5px}.theme--light.v-pagination .v-pagination__item--active{color:#fff}.theme--light.v-pagination .v-pagination__navigation{background:#fff}.theme--light.v-pagination .v-pagination__navigation .v-icon{color:rgba(0,0,0,.54)}.theme--dark.v-pagination .v-pagination__item{background:#424242;color:#fff;width:auto;min-width:34px;padding:0 5px}.theme--dark.v-pagination .v-pagination__item--active{color:#fff}.theme--dark.v-pagination .v-pagination__navigation{background:#424242}.theme--dark.v-pagination .v-pagination__navigation .v-icon{color:#fff}.v-pagination{align-items:center;display:inline-flex;list-style-type:none;margin:0;max-width:100%;padding:0}.v-pagination>li{align-items:center;display:flex}.v-pagination--circle .v-pagination__item,.v-pagination--circle .v-pagination__more,.v-pagination--circle .v-pagination__navigation{border-radius:50%}.v-pagination--disabled{pointer-events:none;opacity:.6}.v-pagination__item{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);border-radius:4px;font-size:14px;background:transparent;height:34px;width:34px;margin:.3rem;text-decoration:none;transition:.3s cubic-bezier(0,0,.2,1)}.v-pagination__item--active{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.v-pagination__navigation{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);display:inline-flex;justify-content:center;align-items:center;text-decoration:none;height:2rem;border-radius:4px;width:2rem;margin:.3rem 10px}.v-pagination__navigation .v-icon{font-size:2rem;transition:.2s cubic-bezier(.4,0,.6,1);vertical-align:middle}.v-pagination__navigation--disabled{opacity:.6;pointer-events:none}.v-pagination__more{margin:.3rem;display:inline-flex;align-items:flex-end;justify-content:center;height:2rem;width:2rem}.application--is-rtl .v-snack__content .v-btn{margin:0 24px 0 0}.v-snack{position:fixed;display:flex;align-items:center;color:#fff;pointer-events:none;z-index:1000;font-size:14px;left:0;right:0}.v-snack--absolute{position:absolute}.v-snack--top{top:0}.v-snack--bottom{bottom:0}.v-snack__wrapper{background-color:#323232;pointer-events:auto;box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.v-snack__content,.v-snack__wrapper{display:flex;align-items:center;width:100%}.v-snack__content{height:48px;padding:14px 24px;justify-content:space-between;overflow:hidden}.v-snack__content .v-btn{color:#fff;flex:0 0 auto;padding:8px;margin:0 0 0 24px;height:auto;min-width:auto;width:auto}.v-snack__content .v-btn__content{margin:-2px}.v-snack__content .v-btn:before{display:none}.v-snack--multi-line .v-snack__content{height:80px;padding:24px}.v-snack--vertical .v-snack__content{height:112px;padding:24px 24px 14px;flex-direction:column;align-items:stretch}.v-snack--vertical .v-snack__content .v-btn.v-btn{justify-content:flex-end;padding:0;margin-left:0;margin-top:24px}.v-snack--vertical .v-snack__content .v-btn__content{flex:0 0 auto;margin:0}.v-snack--auto-height .v-snack__content{height:auto}@media only screen and (min-width:600px){.application--is-rtl .v-snack__content .v-btn:first-of-type{margin-left:0;margin-right:42px}}@media only screen and (min-width:600px){.v-snack__wrapper{width:auto;max-width:568px;min-width:288px;margin:0 auto;border-radius:2px}.v-snack--left .v-snack__wrapper{margin-left:0}.v-snack--right .v-snack__wrapper{margin-right:0}.v-snack--left,.v-snack--right{margin:0 24px}.v-snack--left.v-snack--top,.v-snack--right.v-snack--top{transform:translateY(24px)}.v-snack--left.v-snack--bottom,.v-snack--right.v-snack--bottom{transform:translateY(-24px)}.v-snack__content .v-btn:first-of-type{margin-left:42px}}.v-snack-transition-enter-active,.v-snack-transition-leave-active{transition:transform .4s cubic-bezier(.25,.8,.5,1)}.v-snack-transition-enter-active .v-snack__content,.v-snack-transition-leave-active .v-snack__content{transition:opacity .3s linear .1s}.v-snack-transition-enter .v-snack__content{opacity:0}.v-snack-transition-enter-to .v-snack__content,.v-snack-transition-leave .v-snack__content{opacity:1}.v-snack-transition-enter.v-snack.v-snack--top,.v-snack-transition-leave-to.v-snack.v-snack--top{transform:translateY(calc(-100% - 8px))}.v-snack-transition-enter.v-snack.v-snack--bottom,.v-snack-transition-leave-to.v-snack.v-snack--bottom{transform:translateY(100%)}.theme--light.v-textarea.v-text-field--solo-inverted.v-text-field--solo.v-input--is-focused textarea{color:#fff}.theme--dark.v-textarea.v-text-field--solo-inverted.v-text-field--solo.v-input--is-focused textarea{color:rgba(0,0,0,.87)}.application--is-rtl .v-textarea.v-text-field--enclosed .v-text-field__slot{margin-right:0;margin-left:-12px}.application--is-rtl .v-textarea.v-text-field--enclosed .v-text-field__slot textarea{padding-right:0;padding-left:12px}.v-textarea textarea{flex:1 1 auto;line-height:18px;max-width:100%;min-height:32px;outline:none;padding:7px 0 8px;width:100%}.v-textarea .v-text-field__prefix{padding-top:4px;align-self:start}.v-textarea.v-text-field--full-width.v-text-field--single-line .v-text-field__slot textarea,.v-textarea.v-text-field--full-width .v-text-field__slot textarea{margin-top:0}.v-textarea.v-text-field--full-width.v-text-field--single-line .v-text-field__details,.v-textarea.v-text-field--full-width .v-text-field__details{bottom:4px}.v-textarea.v-text-field--enclosed .v-text-field__slot{margin-right:-12px}.v-textarea.v-text-field--enclosed .v-text-field__slot textarea{padding-right:12px}.v-textarea.v-text-field--box .v-text-field__prefix,.v-textarea.v-text-field--box textarea,.v-textarea.v-text-field--enclosed .v-text-field__prefix,.v-textarea.v-text-field--enclosed textarea{margin-top:24px}.v-textarea.v-text-field--box.v-text-field--single-line .v-text-field__prefix,.v-textarea.v-text-field--box.v-text-field--single-line textarea,.v-textarea.v-text-field--enclosed.v-text-field--single-line .v-text-field__prefix,.v-textarea.v-text-field--enclosed.v-text-field--single-line textarea{margin-top:12px}.v-textarea.v-text-field--box.v-text-field--single-line .v-label,.v-textarea.v-text-field--enclosed.v-text-field--single-line .v-label{top:18px}.v-textarea.v-text-field--box.v-text-field--single-line.v-text-field--outline .v-input__control,.v-textarea.v-text-field--enclosed.v-text-field--single-line.v-text-field--outline .v-input__control{padding-top:0}.v-textarea.v-text-field--solo{align-items:flex-start}.v-textarea.v-text-field--solo .v-input__append-inner,.v-textarea.v-text-field--solo .v-input__append-outer,.v-textarea.v-text-field--solo .v-input__prepend-inner,.v-textarea.v-text-field--solo .v-input__prepend-outer{align-self:flex-start;margin-top:16px}.v-textarea--auto-grow textarea{overflow:hidden}.v-textarea--no-resize textarea{resize:none}