*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);font-size:var(--text-lg);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg-app);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-link);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-link-hover)}hr{border:0;border-top:1px solid var(--color-divider);opacity:1}::selection{background:var(--color-primary-soft);color:var(--color-primary-soft-fg)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}h1,.ds-h1,h2,.ds-h2,h3,.ds-h3{font-family:var(--font-display);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);color:var(--color-text-primary);margin:0}h1,.ds-h1{font-size:var(--text-4xl);line-height:1.25}h2,.ds-h2{font-size:var(--text-3xl);line-height:1.3}h3,.ds-h3{font-size:var(--text-2xl);line-height:1.35}h4,h5,h6{font-family:var(--font-sans);font-weight:var(--weight-bold);color:var(--color-text-primary);margin:0}h4{font-size:1rem}h5,h6{font-size:var(--text-xl)}.ds-numeric,.ds-kpi-value{font-family:var(--font-display);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-display);font-variant-numeric:tabular-nums}.ds-kpi-value{font-size:var(--text-kpi);line-height:var(--leading-tight);color:var(--color-text-primary)}.ds-eyebrow{font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--color-text-muted)}.ds-muted{color:var(--color-text-muted)!important}.ds-subtle{color:var(--color-text-subtle)!important}.text-muted{color:var(--color-text-muted)!important}.small{font-size:var(--text-base)}.btn{--btn-bg: transparent;--btn-fg: var(--color-text-secondary);--btn-border: transparent;--btn-bg-hover: var(--color-surface-hover);--btn-fg-hover: var(--color-text-primary);--btn-border-hover: var(--color-border-strong);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--control-h-md);padding:0 var(--space-4);border:1px solid var(--btn-border);border-radius:var(--radius-md);background:var(--btn-bg);color:var(--btn-fg);font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--weight-semibold);line-height:1;white-space:nowrap;cursor:pointer;text-decoration:none;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.btn:hover{background:var(--btn-bg-hover);color:var(--btn-fg-hover);border-color:var(--btn-border-hover)}.btn:focus-visible{outline:none;border-color:var(--color-focus);box-shadow:var(--focus-ring)}.btn:active{transform:translateY(1px)}.btn:disabled,.btn.disabled{background:var(--color-border)!important;color:var(--color-text-subtle)!important;border-color:transparent!important;cursor:default;pointer-events:none;opacity:1;transform:none}.btn-sm{height:var(--control-h-sm);padding:0 var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-base);gap:var(--space-1)}.btn-lg{height:var(--control-h-lg);padding:0 var(--space-5);border-radius:var(--radius-lg);font-size:var(--text-xl)}.btn-xl{height:var(--control-h-xl);padding:0 var(--space-6);border-radius:.75rem;font-size:.9375rem}.btn[aria-busy=true]{background:var(--color-primary-hover)!important;color:var(--color-on-primary)!important;cursor:default;pointer-events:none}.btn-icon{width:var(--control-h-md);padding:0;flex-shrink:0}.btn-icon.btn-sm{width:var(--control-h-sm)}.btn-icon.btn-lg{width:var(--control-h-lg)}.btn i,.btn svg{font-size:.9em;flex-shrink:0}.btn-primary,.btn-success{--btn-bg: var(--color-primary);--btn-fg: var(--color-on-primary);--btn-border: transparent;--btn-bg-hover: var(--color-primary-hover);--btn-fg-hover: var(--color-on-primary);--btn-border-hover: transparent}.btn-secondary,.btn-outline-secondary,.btn-light,.btn-outline-primary,.btn-outline-dark{--btn-bg: var(--color-surface);--btn-fg: var(--color-text-secondary);--btn-border: var(--color-border-strong);--btn-bg-hover: var(--color-surface-alt);--btn-fg-hover: var(--color-text-primary);--btn-border-hover: var(--color-border-strong)}.btn-outline-primary{--btn-fg: var(--color-link);--btn-border: var(--color-primary);--btn-fg-hover: var(--color-primary-hover);--btn-bg-hover: var(--color-primary-soft);--btn-border-hover: var(--color-primary);border-width:1.5px}.btn-ghost,.btn-link{--btn-bg: transparent;--btn-fg: var(--color-link);--btn-border: transparent;--btn-bg-hover: var(--color-primary-soft);--btn-fg-hover: var(--color-link-hover);--btn-border-hover: transparent;text-decoration:none}.btn-danger{--btn-bg: var(--color-danger);--btn-fg: #ffffff;--btn-border: transparent;--btn-bg-hover: var(--color-danger-fg);--btn-fg-hover: #ffffff;--btn-border-hover: transparent}.btn-outline-danger{--btn-bg: var(--color-surface);--btn-fg: var(--color-danger);--btn-border: var(--color-danger-line);--btn-bg-hover: var(--color-danger-soft);--btn-fg-hover: var(--color-danger-fg);--btn-border-hover: var(--color-danger)}.btn-warning,.btn-outline-warning{--btn-bg: var(--color-surface);--btn-fg: var(--color-warning);--btn-border: var(--color-border-strong);--btn-bg-hover: var(--color-warning-soft);--btn-fg-hover: var(--color-warning-fg);--btn-border-hover: var(--color-warning)}.btn-info,.btn-outline-info{--btn-bg: var(--color-surface);--btn-fg: var(--color-info);--btn-border: var(--color-border-strong);--btn-bg-hover: var(--color-info-soft);--btn-fg-hover: var(--color-info-fg);--btn-border-hover: var(--color-info)}.btn-dark{--btn-bg: var(--nav-bg);--btn-fg: #ffffff;--btn-border: transparent;--btn-bg-hover: var(--nav-bg-deep);--btn-fg-hover: #ffffff;--btn-border-hover: transparent}.btn-group{display:inline-flex;gap:var(--space-2)}.btn-group>.btn{border-radius:var(--radius-md)!important}.ds-segmented{display:inline-flex;gap:2px;padding:3px;border-radius:var(--radius-md);background:var(--color-surface-sunken)}.ds-segmented>button,.ds-segmented>a{height:1.875rem;padding:0 var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-size:var(--text-base);font-weight:var(--weight-medium);cursor:pointer;display:inline-flex;align-items:center;transition:background-color var(--transition-fast)}.ds-segmented>.active,.ds-segmented>[aria-pressed=true]{background:var(--color-surface);color:var(--color-primary-soft-fg);font-weight:var(--weight-semibold);box-shadow:var(--shadow-sm)}.form-label,label.form-label{display:block;margin-bottom:var(--space-1);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-text-secondary)}.form-control,.form-select,textarea.form-control{display:block;width:100%}.form-control,.form-select,.input-group-text,textarea.form-control{height:var(--control-h-lg);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background-color:var(--color-surface);color:var(--color-text-primary);font-family:var(--font-sans);font-size:var(--text-xl);line-height:normal;box-shadow:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}textarea.form-control{height:auto;min-height:6rem;padding:var(--space-3);line-height:var(--leading-normal)}.form-control::placeholder{color:var(--color-text-disabled)}.form-control.input-with-icon{padding-left:2.75rem}.form-control.input-with-icon.password-input{padding-right:2.75rem}.form-control:focus,.form-select:focus{border-color:var(--color-focus);background-color:var(--color-surface);color:var(--color-text-primary);box-shadow:var(--focus-ring);outline:none}.form-control:disabled,.form-control[readonly],.form-select:disabled{background-color:var(--color-surface-sunken);color:var(--color-text-subtle);border-color:var(--color-border)}.form-control-sm,.form-select-sm{height:var(--control-h-md);font-size:var(--text-md);border-radius:var(--radius-md)}.form-select{padding-right:var(--space-8);background-position:right var(--space-3) center}.input-group-text{background-color:var(--color-surface-alt);color:var(--color-text-muted);font-size:var(--text-md)}.form-text{font-size:var(--text-base);color:var(--color-text-muted)}.form-check-input{width:1.25rem;height:1.25rem;margin-top:.125rem;border:1.5px solid var(--color-border-strong);border-radius:var(--radius-xs);background-color:var(--color-surface);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.form-check-input[type=radio]{border-radius:var(--radius-pill)}.form-check-input:checked{background-color:var(--color-primary);border-color:var(--color-primary)}.form-check-input:focus{border-color:var(--color-focus);box-shadow:var(--focus-ring)}.form-check-label{font-size:var(--text-lg);color:var(--color-text-secondary);cursor:pointer}.form-switch .form-check-input{width:2.5rem;height:1.4375rem;border-radius:var(--radius-pill)}.is-invalid,.form-control.is-invalid,.form-select.is-invalid{border-color:var(--color-danger)!important}.is-invalid:focus{box-shadow:0 0 0 4px var(--color-danger-soft)!important}.invalid-feedback,.text-danger{color:var(--color-danger-fg)!important;font-size:var(--text-base)}.is-valid,.form-control.is-valid{border-color:var(--color-success)!important}.card{position:relative;display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-2xl);background-color:var(--color-surface);box-shadow:none;transition:box-shadow var(--transition-base),border-color var(--transition-base)}.card:hover{box-shadow:var(--shadow-sm);transform:none}.card-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5) var(--space-3);background:transparent;border-bottom:1px solid var(--color-divider);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;color:var(--color-text-primary)}.card-header h1,.card-header h2,.card-header h3,.card-header h4,.card-header h5,.card-header h6{font-family:var(--font-sans);font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:normal;color:var(--color-text-primary)}.card-header i,.card-header .text-primary{color:var(--color-primary)!important}.card-header p,.card-header .card-subtitle{margin:0;font-size:var(--text-base);font-weight:var(--weight-regular);color:var(--color-text-muted)}.card-body{padding:var(--space-5)}.card-footer{padding:var(--space-4) var(--space-5);background:var(--color-surface-alt);border-top:1px solid var(--color-divider);border-radius:0 0 var(--radius-2xl) var(--radius-2xl)}.card-title{font-family:var(--font-sans);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-text-primary)}.ds-stat-card{display:flex;flex-direction:column;min-height:9.375rem;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:var(--color-surface);color:var(--color-text-primary);overflow:hidden;transition:border-color var(--transition-base),box-shadow var(--transition-base)}a.ds-stat-card:hover{border-color:var(--color-primary-line);box-shadow:var(--shadow-sm);color:var(--color-text-primary)}.ds-stat-card__label{font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-muted)}.ds-stat-card__icon{color:var(--color-text-disabled);flex-shrink:0}.ds-stat-card__trend{display:inline-flex;align-items:center;gap:var(--space-1);padding:3px var(--space-2);border-radius:var(--radius-pill);background:var(--color-success-soft);color:var(--color-success-fg);font-size:var(--text-sm);font-weight:var(--weight-bold)}.ds-stat-card__trend--down{background:var(--color-danger-soft);color:var(--color-danger-fg)}.table-responsive{border-radius:0 0 var(--radius-2xl) var(--radius-2xl);overflow-x:auto}.table{width:100%;margin:0;border-collapse:collapse;color:var(--color-text-secondary);font-size:var(--text-md);--bs-table-bg: transparent;--bs-table-color: var(--color-text-secondary)}.table>thead>tr>th,.table thead th{height:var(--table-head-h);padding:0 var(--space-3);background:var(--color-surface-alt);border-bottom:1px solid var(--color-border);border-top:0;color:var(--color-text-muted);font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;text-align:left;white-space:nowrap;vertical-align:middle}.table>thead>tr>th:first-child,.table>tbody>tr>td:first-child{padding-left:var(--space-5)}.table>thead>tr>th:last-child,.table>tbody>tr>td:last-child{padding-right:var(--space-5)}.table>tbody>tr>td,.table tbody td{height:var(--table-row-h);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider);border-top:0;color:var(--color-text-secondary);font-size:var(--text-md);vertical-align:middle}.table>tbody>tr:last-child>td{border-bottom:0}.table>tbody>tr{transition:background-color var(--transition-fast)}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover{background-color:var(--color-surface-alt);color:var(--color-text-secondary)}.table-striped>tbody>tr:nth-of-type(odd)>td{background-color:var(--color-surface-alt)}.table .ds-cell-strong,.table td.ds-cell-strong{color:var(--color-text-primary);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.table .ds-cell-num,.table td.text-end{font-variant-numeric:tabular-nums}.table .ds-cell-actions{text-align:right;white-space:nowrap}.table .ds-cell-actions .btn{height:var(--table-act-h);width:var(--table-act-h);padding:0;border-radius:var(--radius-sm)}.table .ds-cell-actions .btn-danger,.table .ds-cell-actions .btn-outline-danger{--btn-bg: var(--color-surface);--btn-fg: var(--color-danger);--btn-border: var(--color-danger-line);--btn-bg-hover: var(--color-danger-soft);--btn-fg-hover: var(--color-danger-fg);--btn-border-hover: var(--color-danger)}.table th .ds-sort{display:inline-flex;align-items:center;gap:var(--space-1);color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit}.table th .ds-sort i{font-size:.625rem;color:var(--color-border-strong)}.table th[aria-sort] .ds-sort{color:var(--color-primary-soft-fg)}.table th[aria-sort] .ds-sort i{color:var(--color-primary)}.table-light,.table>:not(caption)>*>*{background-color:transparent}.table-dark{--bs-table-bg: var(--nav-bg);--bs-table-color: var(--nav-fg)}.badge,.badge-status{display:inline-flex;align-items:center;gap:var(--space-1);padding:4px var(--space-3);border:0;border-radius:var(--radius-pill);background:var(--color-neutral-soft);color:var(--color-neutral-fg);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:1.35;white-space:nowrap;vertical-align:middle}.badge-status--success,.badge.bg-success,.badge.text-bg-success{background:var(--color-success-soft)!important;color:var(--color-success-fg)!important}.badge-status--warning,.badge.bg-warning,.badge.text-bg-warning{background:var(--color-warning-soft)!important;color:var(--color-warning-fg)!important}.badge-status--danger,.badge.bg-danger,.badge.text-bg-danger{background:var(--color-danger-soft)!important;color:var(--color-danger-fg)!important}.badge-status--info,.badge.bg-info,.badge.text-bg-info{background:var(--color-info-soft)!important;color:var(--color-info-fg)!important}.badge-status--secondary,.badge.bg-secondary,.badge.bg-light,.badge.text-bg-secondary{background:var(--color-neutral-soft)!important;color:var(--color-neutral-fg)!important}.badge-status--primary,.badge.bg-primary,.badge.text-bg-primary{background:var(--color-primary-soft)!important;color:var(--color-primary-soft-fg)!important}.badge-status--strong,.badge.bg-dark,.badge.text-bg-dark{background:var(--nav-bg)!important;color:var(--brand-200)!important}.ds-count{min-width:1.125rem;height:1.125rem;padding:0 var(--space-1);border-radius:var(--radius-pill);background:var(--color-danger);color:#fff;font-size:.625rem;font-weight:var(--weight-bold);display:inline-flex;align-items:center;justify-content:center}.alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);color:var(--color-text-primary);font-size:var(--text-lg)}.alert>:not(.btn-close):not(i):not(.fas):not(.far):not(.fab){min-width:0;flex:1 1 auto}.alert>i,.alert>.fas,.alert>.far,.alert>.fab{flex-shrink:0;line-height:1.4}.alert-success{background:var(--color-success-soft);border-color:var(--color-primary-line);color:var(--color-success-fg)}.alert-warning{background:var(--color-warning-soft);border-color:var(--color-warning-soft);color:var(--color-warning-fg)}.alert-danger,.alert-error{background:var(--color-danger-soft);border-color:var(--color-danger-line);color:var(--color-danger-fg)}.alert-info{background:var(--color-info-soft);border-color:var(--color-info-soft);color:var(--color-info-fg)}.alert .btn-close{margin-left:auto;flex-shrink:0}.app-feedback-stack{position:fixed;top:var(--space-5);right:var(--space-5);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-3);width:23rem;max-width:calc(100vw - var(--space-8));pointer-events:none}.app-feedback-stack>*{pointer-events:auto}.app-feedback-toast{border-radius:var(--radius-xl);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-lg);color:var(--color-text-primary);animation:ds-toast-in var(--transition-slow) both}.app-feedback-toast.alert-success{border-color:var(--color-primary-line)}.app-feedback-toast.alert-danger{border-color:var(--color-danger-line)}@keyframes ds-toast-in{0%{opacity:0;transform:translate(1rem)}to{opacity:1;transform:none}}.ds-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface-alt)}.ds-banner--danger{background:var(--color-danger-soft);border-color:var(--color-danger-line)}.ds-banner--warning{background:var(--color-warning-soft);border-color:var(--color-warning-soft)}.ds-banner--info{background:var(--color-info-soft);border-color:var(--color-info-soft)}.ds-banner__icon{width:2.25rem;height:2.25rem;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--color-surface)}.ds-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-2);padding:var(--space-10) var(--space-7)}.ds-empty__icon{width:4.75rem;height:4.75rem;border-radius:var(--radius-pill);background:var(--color-surface-alt);display:flex;align-items:center;justify-content:center;color:var(--color-primary-line);font-size:1.75rem}.ds-empty__title{margin:var(--space-2) 0 0;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-semibold);letter-spacing:-.015em;color:var(--color-text-primary)}.ds-empty__text{margin:0;max-width:21rem;font-size:var(--text-lg);line-height:var(--leading-snug);color:var(--color-text-muted)}.ds-empty__actions{margin-top:var(--space-3);display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.ds-skeleton{border-radius:var(--radius-xs);background:linear-gradient(90deg,var(--color-surface-sunken) 25%,var(--color-surface-alt) 50%,var(--color-surface-sunken) 75%);background-size:200% 100%;animation:ds-shimmer 1.4s linear infinite}@keyframes ds-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.modal-content{border:0;border-radius:var(--radius-modal);background:var(--color-surface);box-shadow:var(--shadow-modal)}.modal-content{overflow:hidden}.modal-header{gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);border-radius:var(--radius-modal) var(--radius-modal) 0 0;background:transparent}.modal-header .btn-close{width:2.125rem;height:2.125rem;flex-shrink:0;margin:0;padding:0;border-radius:var(--radius-md);background-color:var(--color-surface-sunken);opacity:1;transition:background-color var(--transition-fast)}.modal-header .btn-close:hover{background-color:var(--color-border)}.modal-header .btn-close:focus-visible{box-shadow:var(--focus-ring)}.modal-title{flex-grow:1;min-width:0;font-family:var(--font-display);font-size:1.125rem;font-weight:var(--weight-semibold);letter-spacing:-.015em;color:var(--color-text-primary)}.modal-body{padding:var(--space-4) var(--space-5);font-size:var(--text-xl);color:var(--color-text-secondary)}.modal-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-surface-alt);gap:var(--space-3)}.modal-footer .btn{height:var(--control-h-lg);border-radius:var(--radius-lg);font-size:var(--text-xl)}.modal-backdrop.show{background:var(--nav-bg-deep);opacity:.55}.swal2-popup{border-radius:var(--radius-modal)!important;background:var(--color-surface)!important;box-shadow:var(--shadow-modal)!important;font-family:var(--font-sans)!important;padding:var(--space-7) var(--space-6) var(--space-5)!important}.swal2-title{font-family:var(--font-display)!important;font-size:var(--text-3xl)!important;font-weight:var(--weight-semibold)!important;letter-spacing:-.015em!important;color:var(--color-text-primary)!important}.swal2-html-container{font-size:var(--text-xl)!important;line-height:var(--leading-relaxed)!important;color:var(--color-text-secondary)!important}.swal2-actions{gap:var(--space-3)!important;width:100%!important;margin-top:var(--space-2)!important}.swal2-styled.swal2-confirm,.swal2-styled.swal2-deny,.swal2-styled.swal2-cancel{flex-grow:1;height:var(--control-h-lg)!important;margin:0!important;padding:0 var(--space-4)!important;border-radius:var(--radius-lg)!important;font-family:var(--font-sans)!important;font-size:var(--text-xl)!important;font-weight:var(--weight-semibold)!important;box-shadow:none!important}.swal2-styled.swal2-confirm{background:var(--color-primary)!important;color:var(--color-on-primary)!important;border:0!important}.swal2-styled.swal2-cancel{background:var(--color-surface)!important;color:var(--color-text-secondary)!important;border:1px solid var(--color-border-strong)!important}.swal2-styled.swal2-deny{background:var(--color-danger)!important;color:#fff!important;border:0!important}.swal2-styled:focus-visible{box-shadow:var(--focus-ring)!important}.swal2-icon.swal2-success{border-color:var(--color-primary-line)!important;color:var(--color-primary)!important}.swal2-icon.swal2-success .swal2-success-ring{border-color:var(--color-primary-line)!important}.swal2-icon.swal2-success [class^=swal2-success-line]{background-color:var(--color-primary)!important}.swal2-icon.swal2-error{border-color:var(--color-danger-line)!important;color:var(--color-danger)!important}.swal2-icon.swal2-error [class^=swal2-x-mark-line]{background-color:var(--color-danger)!important}.swal2-icon.swal2-warning{border-color:var(--color-warning-soft)!important;color:var(--color-warning)!important}.swal2-icon.swal2-info,.swal2-icon.swal2-question{border-color:var(--color-info-soft)!important;color:var(--color-info)!important}.swal2-container{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dropdown-menu{padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-dropdown);font-size:var(--text-md)}.dropdown-item{display:flex;align-items:center;gap:var(--space-3);height:2.5rem;padding:0 var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-size:var(--text-lg);white-space:nowrap}.dropdown-item:hover,.dropdown-item:focus{background:var(--color-surface-alt);color:var(--color-text-primary)}.dropdown-item.active,.dropdown-item:active{background:var(--color-primary-soft);color:var(--color-primary-soft-fg)}.dropdown-item i{width:1.0625rem;flex-shrink:0;text-align:center;color:var(--color-text-muted)}.dropdown-item--danger,.dropdown-item.text-danger{color:var(--color-danger-fg)!important;font-weight:var(--weight-semibold)}.dropdown-item--danger i,.dropdown-item.text-danger i{color:var(--color-danger-fg)}.dropdown-item--danger:hover,.dropdown-item.text-danger:hover{background:var(--color-danger-soft);color:var(--color-danger-fg)!important}.dropdown-divider{margin:var(--space-1) 0;border-top-color:var(--color-divider)}.nav-tabs{gap:var(--space-1);border-bottom:1px solid var(--color-border)}.nav-tabs .nav-link{padding:var(--space-2) var(--space-4);border:0;border-bottom:2px solid transparent;border-radius:0;color:var(--color-text-muted);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.nav-tabs .nav-link:hover{color:var(--color-text-primary);border-bottom-color:var(--color-border-strong)}.nav-tabs .nav-link.active{background:transparent;color:var(--color-primary);border-bottom-color:var(--color-primary)}.nav-pills .nav-link{border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--text-md);font-weight:var(--weight-semibold)}.nav-pills .nav-link.active{background:var(--color-primary);color:var(--color-on-primary)}.pagination{gap:var(--space-1);margin:0}.page-link{min-width:var(--control-h-md);height:var(--control-h-md);display:flex;align-items:center;justify-content:center;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md)!important;background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--text-md);font-weight:var(--weight-semibold)}.page-link:hover{background:var(--color-surface-alt);border-color:var(--color-border-strong);color:var(--color-text-primary)}.page-item.active .page-link{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.page-item.disabled .page-link{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text-disabled)}.ds-divider{height:1px;background:var(--color-divider);border:0;margin:var(--space-4) 0}.ds-surface{background:var(--color-surface)}.ds-surface-alt{background:var(--color-surface-alt)}.ds-radius-card{border-radius:var(--radius-2xl)}.ds-shadow-sm{box-shadow:var(--shadow-sm)}.ds-shadow-md{box-shadow:var(--shadow-md)}.ds-shadow-lg{box-shadow:var(--shadow-lg)}.ds-icon-tile{width:2.125rem;height:2.125rem;border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--color-primary-soft);color:var(--color-primary)}.ds-icon-tile--success{background:var(--color-success-soft);color:var(--color-success)}.ds-icon-tile--warning{background:var(--color-warning-soft);color:var(--color-warning)}.ds-icon-tile--danger{background:var(--color-danger-soft);color:var(--color-danger)}.ds-icon-tile--info{background:var(--color-info-soft);color:var(--color-info)}.ds-icon-tile--neutral{background:var(--color-neutral-soft);color:var(--color-text-muted)}.text-primary{color:var(--color-primary)!important}.text-success{color:var(--color-success)!important}.text-warning{color:var(--color-warning)!important}.text-info{color:var(--color-info)!important}.text-dark{color:var(--color-text-primary)!important}.text-secondary{color:var(--color-text-muted)!important}.bg-light{background-color:var(--color-surface-alt)!important}.bg-white{background-color:var(--color-surface)!important}.bg-primary{background-color:var(--color-primary)!important}.border,.border-top,.border-bottom,.border-start,.border-end{border-color:var(--color-border)!important}.progress{height:.5rem;border-radius:var(--radius-pill);background:var(--color-surface-sunken)}.progress-bar{background:var(--color-primary);border-radius:var(--radius-pill)}.tooltip-inner{max-width:15rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--neutral-900);color:var(--neutral-0);font-size:var(--text-base);line-height:var(--leading-snug);text-align:left}.tooltip .tooltip-arrow:before{border-top-color:var(--neutral-900);border-bottom-color:var(--neutral-900);border-left-color:var(--neutral-900);border-right-color:var(--neutral-900)}.spinner-border{border-color:var(--color-primary);border-right-color:transparent}@media (max-width: 767.98px){.card-body{padding:var(--space-4)}.card-header{padding:var(--space-4) var(--space-4) var(--space-3)}.table>thead>tr>th:first-child,.table>tbody>tr>td:first-child{padding-left:var(--space-4)}.table>thead>tr>th:last-child,.table>tbody>tr>td:last-child{padding-right:var(--space-4)}.app-feedback-stack{top:auto;bottom:var(--space-4);left:var(--space-4);right:var(--space-4);width:auto}.btn{padding:0 var(--space-3)}.ds-segmented{overflow-x:auto}}@media print{.sidebar,.app-topbar,.sidebar-overlay,.page-actions,.app-feedback-stack,.btn{display:none!important}.card{border:1px solid var(--color-border);box-shadow:none;break-inside:avoid}body{background:#fff}}.ds-theme-dot{width:1.25rem;height:1.25rem;flex-shrink:0;border-radius:var(--radius-xs);border:1px solid var(--color-border);background:var(--color-primary)}.ds-theme-dot[data-dot=verde]{background:linear-gradient(135deg,#2e7452 50%,#0c3522 50%)}.ds-theme-dot[data-dot=azul]{background:linear-gradient(135deg,#1a5f9e 50%,#0d2a48 50%)}.ds-theme-dot[data-dot=roxo]{background:linear-gradient(135deg,#653bb0 50%,#2d1a51 50%)}.ds-theme-dot[data-dot=terracota]{background:linear-gradient(135deg,#9c5a11 50%,#46280b 50%)}.ds-theme-dot[data-dot=escuro]{background:linear-gradient(135deg,#56b282 50%,#101512 50%)}.dropdown-item[data-theme-option].active{background:var(--color-primary-soft);color:var(--color-primary-soft-fg)}.dropdown-item[data-theme-option].active:after{content:"";font-family:"Font Awesome 6 Free";font-weight:900;margin-left:auto;font-size:.75rem;color:var(--color-primary)}.swal2-styled.swal2-confirm.swal-platform-confirm--danger{background:var(--color-danger)!important;color:#fff!important}.ds-identity{display:flex;align-items:center;gap:var(--space-3);min-width:0}.ds-identity__avatar{width:2.125rem;height:2.125rem;flex-shrink:0;border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary-soft-fg);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:var(--weight-bold);overflow:hidden}.ds-identity__avatar img{width:100%;height:100%;object-fit:cover}.ds-identity__avatar--muted{background:var(--color-surface-sunken);color:var(--color-text-secondary)}.ds-identity__body{min-width:0;display:flex;flex-direction:column;gap:2px}.ds-identity__name{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ds-identity__meta{font-size:var(--text-base);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ds-filter-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:.8125rem;background:var(--color-surface);text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.ds-filter-card:hover{border-color:var(--color-border-strong)}.ds-filter-card__label{font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-muted)}.ds-filter-card__value{font-family:var(--font-display);font-size:1.375rem;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.ds-filter-card.active,.ds-filter-card[aria-pressed=true]{border-color:var(--color-primary);border-width:1.5px;background:var(--color-primary-soft)}.ds-filter-card.active .ds-filter-card__label,.ds-filter-card[aria-pressed=true] .ds-filter-card__label{color:var(--color-link)}.ds-filter-card.active .ds-filter-card__value,.ds-filter-card[aria-pressed=true] .ds-filter-card__value{color:var(--color-primary-soft-fg)}.ds-bulk-bar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;min-height:3.125rem;padding:var(--space-2) var(--space-4);border:1px solid var(--color-success-line);border-radius:var(--radius-lg);background:var(--color-success-soft)}.ds-bulk-bar__count{font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--color-success-fg)}.ds-bulk-bar__divider{width:1px;height:1.375rem;background:var(--color-success-line)}.ds-bulk-bar .btn{height:var(--table-act-h);border-color:var(--color-success-line);color:var(--color-link);font-size:var(--text-base)}.ds-table-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-divider);font-size:var(--text-base);color:var(--color-text-muted)}.ds-table-foot strong{font-weight:var(--weight-semibold);color:var(--color-text-primary)}.ds-drawer{display:flex;flex-direction:column;border-radius:var(--radius-modal);background:var(--color-surface);box-shadow:var(--shadow-modal);overflow:hidden}.ds-drawer__header{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0;padding:var(--space-4);border-bottom:1px solid var(--color-border)}.ds-drawer__title{flex-grow:1;margin:0;font-family:var(--font-sans);font-size:.9375rem;font-weight:var(--weight-bold);color:var(--color-text-primary)}.ds-drawer__body{flex-grow:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.ds-drawer__footer{flex-shrink:0;display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface-alt)}.ds-drawer__footer .btn{flex-grow:1;height:2.625rem}.ds-fieldset{margin:0 0 var(--space-4);padding:0 var(--space-5) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:var(--color-surface)}.ds-fieldset>legend{float:none;width:auto;margin:0 0 0 var(--space-1);padding:0 var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text-primary)}.ds-fieldset>legend+*{margin-top:var(--space-3)}.ds-input-affix{position:relative;display:flex;align-items:center}.ds-input-affix__prefix,.ds-input-affix__suffix{position:absolute;font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--color-text-subtle);pointer-events:none}.ds-input-affix__prefix{left:var(--space-3)}.ds-input-affix__suffix{right:var(--space-3)}.ds-input-affix__prefix~.form-control{padding-left:2.625rem}.ds-input-affix__suffix~.form-control{padding-right:2.625rem}.form-label.required:after{content:" *";color:var(--color-danger);font-weight:var(--weight-bold)}.ds-pick-list{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.ds-pick-list__item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-divider);cursor:pointer;transition:background-color var(--transition-fast)}.ds-pick-list__item:last-child{border-bottom:0}.ds-pick-list__item:hover{background:var(--color-surface-alt)}.ds-pick-list__item.is-selected{background:var(--color-primary-soft)}.ds-pick-list__body{flex-grow:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ds-pick-list__title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.ds-pick-list__meta{font-size:var(--text-base);color:var(--color-text-muted)}.ds-pick-list__value{flex-shrink:0;font-size:var(--text-lg);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.ds-total-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-success-line);border-radius:var(--radius-lg);background:var(--color-success-soft);color:var(--color-success-fg);font-size:var(--text-md)}.ds-total-bar__value{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);font-variant-numeric:tabular-nums}.ds-note{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-info-line);border-radius:var(--radius-lg);background:var(--color-info-soft);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary)}.ds-note>i{flex-shrink:0;margin-top:2px;color:var(--color-info)}.ds-note--success{border-color:var(--color-success-line);background:var(--color-success-soft)}.ds-note--success>i{color:var(--color-success)}.ds-note--warning{border-color:var(--color-warning-line);background:var(--color-warning-soft)}.ds-note--warning>i{color:var(--color-warning)}.ds-note--danger{border-color:var(--color-danger-line);background:var(--color-danger-soft)}.ds-note--danger>i{color:var(--color-danger)}.ds-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--space-4) var(--space-6)}.ds-field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.ds-field__label{font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-subtle)}.ds-field__value{font-size:var(--text-lg);color:var(--color-text-primary);overflow-wrap:anywhere}.ds-field__value--num{font-variant-numeric:tabular-nums}.ds-field__value--pending{color:var(--color-warning)}.ds-field--wide{grid-column:span 2}.ds-split{display:inline-flex;align-items:stretch}.ds-split>.btn:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.ds-split>.btn:last-child{width:2.5rem;padding:0;border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:inset 1px 0 #ffffff40}
