.report-paper-wrapper{width:100%;padding:24px;background:var(--color-bg-subtle, #f1f5f9);border-radius:var(--radius, 8px);box-sizing:border-box;display:flex;justify-content:center}.legal-print-sheet{width:100%;max-width:900px;background:#fff!important;color:#000!important;padding:35px 40px;font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:1.4;box-shadow:0 4px 20px #00000026;border-radius:6px;box-sizing:border-box}.print-header{text-align:center;margin-bottom:20px;border-top:3px double #000000;border-bottom:3px double #000000;padding:10px 0}.print-company-name{font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px;color:#000}.print-report-title{font-size:14px;font-weight:700;text-transform:uppercase;margin:0 0 4px;color:#000}.print-report-date{font-size:12px;font-weight:700;margin:0;color:#000}.print-meta-grid{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:6px 16px;margin-bottom:15px;font-size:12px;color:#000}.print-meta-label{font-weight:700;color:#333}.print-meta-val{color:#000}.print-table{width:100%;border-collapse:collapse;margin-bottom:20px;font-size:11px;color:#000}.print-table th{border-top:1px solid #000000;border-bottom:1px solid #000000;padding:6px 8px;font-weight:700;text-transform:uppercase;text-align:left;color:#000}.print-table td{padding:4px 8px;vertical-align:top;color:#000}.print-row-mayor td{font-weight:700;padding-top:6px;color:#000}.print-row-detail td{font-weight:400;color:#222}.print-col-code{width:140px;font-family:Courier New,Courier,monospace}.print-col-concept{width:auto}.print-col-amount{width:110px;text-align:right;font-family:Courier New,Courier,monospace}.print-total-row td{border-top:1px solid #000000;border-bottom:3px double #000000;font-weight:700;padding:6px 8px;color:#000}.print-signatures{display:flex;justify-content:space-between;margin-top:50px;padding-top:20px;gap:20px}.print-signature-box{flex:1;text-align:center}.print-signature-line{border-top:1px solid #000000;margin-bottom:6px}.print-signature-title{font-weight:700;font-size:11px;color:#000}.print-partida-block{margin-bottom:25px;page-break-inside:avoid}.print-partida-header{font-weight:700;margin-bottom:6px;font-size:12px;display:flex;justify-content:space-between;border-bottom:1px solid #ccc;padding-bottom:4px;color:#000}@media print{header,nav,aside,.sidebar,.topbar,.page-header,.print-hide{display:none!important}body{background:#fff!important;color:#000!important;margin:0!important;padding:0!important}.report-paper-wrapper{background:transparent!important;padding:0!important;border-radius:0!important}.legal-print-sheet{max-width:100%!important;width:100%!important;box-shadow:none!important;padding:0!important;border-radius:0!important}@page{size:letter;margin:15mm 12mm}}:root{--color-primary: #0076b6;--color-primary-dark: #00669e;--color-navy: #1f2a44;--color-sidebar-bg: #1f2a44;--color-bg: #f4f6f9;--color-card: #ffffff;--color-border: #e3e7ee;--color-text: #1f2a44;--color-text-muted: #6b7587;--sidebar-width: 260px;--sidebar-width-collapsed: 64px;--topbar-height: 60px;--radius: 8px;--font: "Segoe UI", system-ui, -apple-system, sans-serif;--color-lowest-price-bg: rgba(30, 126, 52, .08);--color-success: #1e7e34;--color-success-bg: rgba(40, 167, 69, .12);--color-warning: #a06a00;--color-warning-bg: rgba(255, 193, 7, .18);--color-danger: #d9534f;--color-danger-bg: rgba(217, 83, 79, .12);--color-info: #0f6fa8;--color-info-bg: rgba(0, 118, 182, .12);--color-neutral-bg: rgba(107, 117, 135, .12)}[data-theme=dark]{--color-navy: #e2e8f0;--color-bg: #0f172a;--color-card: #1e293b;--color-border: #334155;--color-text: #e2e8f0;--color-text-muted: #94a3b8;--color-lowest-price-bg: rgba(40, 167, 69, .2);--color-success: #4ade80;--color-success-bg: rgba(74, 222, 128, .16);--color-warning: #fbbf24;--color-warning-bg: rgba(251, 191, 36, .18);--color-danger: #f87171;--color-danger-bg: rgba(248, 113, 113, .16);--color-info: #7ec8e3;--color-info-bg: rgba(126, 200, 227, .16);--color-neutral-bg: rgba(148, 163, 184, .16)}*{box-sizing:border-box}body{margin:0;font-family:var(--font);color:var(--color-text);background:var(--color-bg);overflow-x:hidden}a{color:var(--color-primary);text-decoration:none}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-family:inherit;font-size:14px;color:var(--color-text);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:9px 12px}input:not([type=checkbox]):not([type=radio]):not([type=range]):focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0076b61f}input:disabled,select:disabled,textarea:disabled{background:var(--color-bg);color:var(--color-text-muted);cursor:not-allowed}input[type=checkbox],input[type=radio]{accent-color:var(--color-primary);cursor:pointer}.layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--color-sidebar-bg);color:#cdd4e0;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;transition:width .22s ease;overflow:hidden;z-index:10}.sidebar--collapsed{width:var(--sidebar-width-collapsed)}.sidebar__brand{height:var(--topbar-height);display:flex;align-items:center;gap:10px;padding:0 12px;color:#fff;font-weight:700;font-size:18px;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.sidebar__brand-name{display:flex;align-items:center;gap:10px;white-space:nowrap}.sidebar__hamburger{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:#ffffffb3;cursor:pointer;padding:6px;border-radius:var(--radius);flex-shrink:0}.sidebar__hamburger:hover{color:#fff;background:#ffffff14}.sidebar__nav{padding:12px 8px;overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.sidebar__nav::-webkit-scrollbar{width:6px}.sidebar__nav::-webkit-scrollbar-track{background:transparent}.sidebar__nav::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:999px}.sidebar__nav::-webkit-scrollbar-thumb:hover{background:#ffffff52}.sidebar__group-label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#7b86a0;padding:14px 12px 6px}.sidebar__link{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius);color:#cdd4e0;font-size:14px;cursor:pointer}.sidebar__link:hover{background:#ffffff0f;color:#fff}.sidebar__link.active{background:var(--color-primary);color:#fff}.sidebar__module{display:flex;flex-direction:column}.sidebar__module-head,.sidebar__module-link{display:flex;align-items:center;gap:12px;width:100%;padding:11px 12px;border:none;background:none;color:#cdd4e0;font-size:14px;font-family:inherit;font-weight:600;border-radius:var(--radius);cursor:pointer;text-align:left}.sidebar__module-head:hover,.sidebar__module-link:hover{background:#ffffff0f;color:#fff}.sidebar__module-link.active{background:var(--color-primary);color:#fff}.sidebar__module-head.active{color:#fff}.sidebar__module-head.active:not(.open){background:#0076b647;border-left:3px solid var(--color-primary);padding-left:9px}.sidebar--collapsed .sidebar__module-head.active{background:var(--color-primary);border-left:none;padding-left:11px}.sidebar__sublink.sub-active{color:#fff;background:#ffffff14}.sidebar__sublink.sub-active:not(.open){border-left:2px solid rgba(0,118,182,.7);padding-left:26px}.sidebar__module-label{flex:1}.sidebar__chevron{transition:transform .18s ease;opacity:.7}.sidebar__module-head.open .sidebar__chevron,.sidebar__sublink.open .sidebar__chevron{transform:rotate(180deg)}.sidebar__soon{opacity:.55}.sidebar--collapsed .sidebar__module-head,.sidebar--collapsed .sidebar__module-link,.sidebar--collapsed .sidebar__link{justify-content:center;padding:11px}.sidebar__footer{padding:8px;border-top:1px solid rgba(255,255,255,.08);flex-shrink:0}.sidebar__footer-row{display:flex;align-items:center;gap:2px}.sidebar__user-btn{display:flex;align-items:center;gap:10px;flex:1;min-width:0;background:none;border:none;color:#cdd4e0;font-size:13px;font-family:inherit;cursor:pointer;padding:9px 10px;border-radius:var(--radius);text-align:left;white-space:nowrap}.sidebar__user-btn:hover,.sidebar__user-btn.active{background:#ffffff14;color:#fff}.sidebar__user-name{flex:1;overflow:hidden;text-overflow:ellipsis;min-width:0}.sidebar--collapsed .sidebar__user-btn{justify-content:center;flex:none;padding:9px}.sidebar__theme-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:none;border:none;color:#cdd4e0;cursor:pointer;padding:9px;border-radius:var(--radius)}.sidebar__theme-btn:hover{background:#ffffff0f;color:#fff}.sidebar__user-panel{position:fixed;background:#1a2540;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);overflow:hidden;box-shadow:0 -4px 24px #0006;z-index:500;min-width:180px}.sidebar__user-panel-header{display:flex;align-items:center;gap:10px;padding:12px 14px;color:#cdd4e0}.sidebar__user-panel-name{font-size:13px;font-weight:600;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__user-panel-divider{height:1px;background:#ffffff1a;margin:0}.sidebar__user-panel-item{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;color:#cdd4e0;font-size:13.5px;font-family:inherit;cursor:pointer;padding:11px 14px;text-align:left;text-decoration:none}.sidebar__user-panel-item:hover{background:#ffffff12;color:#fff}.sidebar__submenu{display:flex;flex-direction:column;gap:1px;margin:2px 0 6px}.sidebar__sublink{font-weight:500;font-size:13.5px;width:100%;border:none;background:none;font-family:inherit;text-align:left;cursor:pointer}.main{flex:1;margin-left:var(--sidebar-width);display:flex;flex-direction:column;transition:margin-left .22s ease;min-width:0;max-width:calc(100vw - var(--sidebar-width))}.layout--collapsed .main{margin-left:var(--sidebar-width-collapsed);max-width:calc(100vw - var(--sidebar-width-collapsed))}.topbar{height:var(--topbar-height);background:var(--color-card);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:5}.topbar__user{display:flex;align-items:center;gap:10px;color:var(--color-text-muted);font-size:14px}.topbar__logout{display:inline-flex;align-items:center;background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:6px;border-radius:var(--radius)}.topbar__logout:hover{color:var(--color-primary);background:var(--color-bg)}.breadcrumbs{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-muted);min-width:0}.breadcrumbs a{color:var(--color-text-muted)}.breadcrumbs a:hover{color:var(--color-primary)}.breadcrumbs .current{color:var(--color-navy);font-weight:600}.breadcrumbs .sep{color:#c2c9d6}.breadcrumbs__full{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.breadcrumbs__compact{display:none;align-items:center;gap:8px}.workarea{padding:24px;min-width:0;max-width:100%}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.page-title{font-size:20px;font-weight:700;color:var(--color-navy);margin:0}.card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:20px}.table--cards-wrapper{scrollbar-width:thin;scrollbar-color:var(--color-primary) var(--color-border)}.table--cards-wrapper::-webkit-scrollbar{height:6px;width:6px}.table--cards-wrapper::-webkit-scrollbar-track{background:var(--color-border);border-radius:999px}.table--cards-wrapper::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:999px}.table--cards-wrapper::-webkit-scrollbar-thumb:hover{background:var(--color-primary-dark)}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;padding:12px 14px;color:var(--color-text-muted);font-weight:600;border-bottom:2px solid var(--color-border);text-transform:uppercase;font-size:12px;letter-spacing:.04em}.table td{padding:12px 14px;border-bottom:1px solid var(--color-border)}.table tr:hover td{background:var(--color-bg)}.row-actions{display:flex;gap:6px;justify-content:flex-end}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-card);color:var(--color-navy);cursor:pointer}.icon-btn:hover{background:var(--color-bg);color:var(--color-primary)}.icon-btn--danger:hover{color:#c0392b;border-color:#f3c6c0}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600}.badge--on{background:#e3f1f9;color:var(--color-primary-dark)}.badge--off{background:#eef0f4;color:var(--color-text-muted)}.badge--success{background:var(--color-success-bg);color:var(--color-success)}.badge--warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge--danger{background:var(--color-danger-bg);color:var(--color-danger)}.badge--info{background:var(--color-info-bg);color:var(--color-info)}.badge--primary{background:var(--color-primary);color:#fff}.badge--neutral{background:var(--color-neutral-bg);color:var(--color-text-muted)}.alert{padding:12px 14px;border-radius:var(--radius);border:1px solid transparent;border-left-width:4px;font-size:13px;line-height:1.5}.alert--success{background:var(--color-success-bg);border-color:var(--color-success);color:var(--color-text)}.alert--warning{background:var(--color-warning-bg);border-color:var(--color-warning);color:var(--color-text)}.alert--danger{background:var(--color-danger-bg);border-color:var(--color-danger);color:var(--color-text)}.alert--info{background:var(--color-info-bg);border-color:var(--color-info);color:var(--color-text)}@keyframes afis-spin{to{transform:rotate(360deg)}}.spin{animation:afis-spin .9s linear infinite;transform-origin:center}.btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:var(--radius);border:1px solid transparent;font-size:14px;font-weight:600;cursor:pointer}.btn--primary{background:var(--color-primary);color:#fff}.btn--primary:hover{background:var(--color-primary-dark)}.btn--secondary{background:var(--color-card);color:var(--color-text);border:1px solid var(--color-border);transition:background .15s ease,border-color .15s ease,color .15s ease}.btn--secondary:hover{background:var(--color-bg);border-color:var(--color-primary);color:var(--color-primary)}.btn--ghost{background:var(--color-card);color:var(--color-navy);border-color:var(--color-border)}.btn--ghost:hover{background:var(--color-bg)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px 20px;align-items:start}.form-grid .form-field--full,.form-grid .form-field:has(textarea){grid-column:1 / -1}.form-grid--narrow{max-width:460px;grid-template-columns:1fr}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:13px;font-weight:600;color:var(--color-navy)}.form-field input,.form-field textarea,.form-field select{padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius);font-size:14px;font-family:inherit;color:var(--color-text);background:var(--color-card)}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0076b61f}.form-actions{display:flex;gap:12px;margin-top:8px}.form-error{color:#c0392b;font-size:13px}.form-notice{color:var(--color-primary-dark);font-size:13px}.form-page{max-width:1280px;margin:0 auto}.form-grid--sized{grid-template-columns:repeat(12,1fr)}.form-grid--sized .form-field{grid-column:span 3}.form-grid--sized .form-field--2{grid-column:span 2}.form-grid--sized .form-field--3{grid-column:span 3}.form-grid--sized .form-field--4{grid-column:span 4}.form-grid--sized .form-field--6{grid-column:span 6}.form-grid--sized .form-field--8{grid-column:span 8}.form-grid--sized .form-field--full{grid-column:1 / -1}@media(max-width:860px){.form-grid--sized .form-field{grid-column:span 6!important}}@media(max-width:560px){.form-grid--sized .form-field{grid-column:1 / -1!important}}.doc-head{padding:14px 16px;margin-bottom:10px}.doc-head .form-grid{gap:12px 16px}.doc-head .form-field{gap:4px}.doc-head .form-field label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.doc-head .form-field label .btn{text-transform:none;letter-spacing:normal}.doc-head input,.doc-head textarea,.doc-head select{padding:7px 10px;font-size:13px}.list-toolbar{display:flex;gap:12px;margin-bottom:14px;flex-wrap:wrap;align-items:center}.list-toolbar__search{display:flex;gap:8px;flex:1;min-width:220px}.list-toolbar__search input{flex:1;min-width:0}.list-toolbar select{min-width:180px}.toggle-label{display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:13px;font-weight:600;color:var(--color-navy)}.toggle-input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.toggle-track{position:relative;display:inline-block;width:38px;height:22px;background:#cbd3dc;border-radius:999px;transition:background .2s;flex-shrink:0}.toggle-track:after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #00000026}.toggle-input:checked+.toggle-track,.toggle-track.on{background:var(--color-primary)}.toggle-input:checked+.toggle-track:after,.toggle-track.on:after{transform:translate(16px)}.select{padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius);font-size:14px;font-family:inherit;color:var(--color-text);background:var(--color-card)}.select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0076b61f}.perm-subject{display:flex;flex-wrap:wrap;gap:18px;align-items:flex-end}.perm-hint{margin:12px 0 0;font-size:13px;color:var(--color-text-muted);background:var(--color-bg);border-left:3px solid var(--color-primary);padding:8px 12px;border-radius:0 var(--radius) var(--radius) 0}.segmented{display:inline-flex;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;background:var(--color-card);width:fit-content}.segmented__btn{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border:none;background:var(--color-card);color:var(--color-text-muted);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer}.segmented__btn+.segmented__btn{border-left:1px solid var(--color-border)}.segmented__btn.active{background:var(--color-primary);color:#fff}.matrix-toolbar{display:flex;align-items:center;justify-content:space-between;margin:18px 0 8px}.matrix-toolbar__count{font-size:13px;color:var(--color-text-muted);font-weight:600}.matrix-toolbar__actions{display:flex;gap:8px}.btn--sm{padding:6px 12px;font-size:13px}.matrix-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius)}.matrix{margin:0}.matrix thead th{position:sticky;top:var(--topbar-height);background:var(--color-card);z-index:1}.matrix .matrix__flag{text-align:center;width:92px}.matrix td.matrix__flag input,.matrix__colhead input{width:16px;height:16px;cursor:pointer}.matrix__colhead{display:inline-flex;flex-direction:column;align-items:center;gap:4px}.matrix__label{display:inline-flex;align-items:center;gap:6px}.matrix__toggle{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:none;color:var(--color-text-muted);cursor:pointer;border-radius:4px;flex-shrink:0}.matrix__toggle:hover{background:var(--color-bg);color:var(--color-primary)}.matrix__toggle--leaf{cursor:default}.matrix__toggle--leaf:hover{background:none}.matrix__row-depth-0 td{background:#eef7fc;border-bottom:2px solid var(--color-border)}.matrix__row-depth-0:hover td{background:#e3f1f9}.matrix__row-depth-0 .matrix__label span{font-weight:700;color:var(--color-primary-dark);text-transform:uppercase;font-size:13px}.matrix__row-depth-1 td{background:#f7f9fc}.matrix__row-depth-1:hover td{background:#f1f5fa}.matrix__row-depth-1 .matrix__label span{font-weight:600;color:var(--color-navy)}.matrix__row-depth-2 td{background:#fff}.matrix__row-depth-2:hover td{background:#f7f9fc}.matrix__row-depth-2 .matrix__label span{color:var(--color-text)}.access-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.access-card{display:flex;align-items:center;gap:16px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:18px 20px;color:var(--color-text);transition:border-color .15s ease,box-shadow .15s ease}.access-card:hover{border-color:var(--color-primary);box-shadow:0 4px 16px #0076b61a}.access-card__icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:#e3f1f9;color:var(--color-primary-dark);flex-shrink:0}.access-card__body{display:flex;flex-direction:column;gap:4px;flex:1}.access-card__title{font-weight:700;color:var(--color-navy);font-size:15px}.access-card__text{font-size:13px;color:var(--color-text-muted);line-height:1.45}.access-card__chevron{color:var(--color-text-muted);flex-shrink:0}.flow-stage-list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.flow-stage-item{display:flex;align-items:center;gap:12px;border:1px solid var(--color-border);border-radius:var(--radius);padding:10px 12px;background:#fafbfd}.flow-stage-item__order{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:999px;background:var(--color-primary);color:#fff;font-weight:700;font-size:13px;flex-shrink:0}.flow-stage-item__icon{color:var(--color-text-muted);display:inline-flex}.flow-stage-item__body{display:flex;flex-direction:column;gap:2px;flex:1}.flow-stage-item__name{font-weight:600;color:var(--color-navy)}.flow-stage-item__meta{font-size:12.5px;color:var(--color-text-muted)}.stage-card{margin-top:14px}.stage-card__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.stage-card__order{font-weight:700;color:var(--color-navy);background:var(--color-bg);padding:4px 12px;border-radius:999px;font-size:13px}.stage-card__fields{display:grid;grid-template-columns:1fr 220px;gap:16px;margin-bottom:14px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--color-border);border-radius:999px;padding:5px 6px 5px 10px;font-size:13px;color:var(--color-text)}.chip__tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:999px}.chip__tag--role{background:#e3f1f9;color:var(--color-primary-dark)}.chip__tag--user{background:#eef0f4;color:var(--color-text-muted)}.chip__remove{display:inline-flex;align-items:center;border:none;background:none;color:var(--color-text-muted);cursor:pointer;padding:2px;border-radius:50%}.chip__remove:hover{color:#c0392b}.settings-group{margin-bottom:18px}.settings-group__title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary-dark);margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--color-border)}.setting-row{display:grid;grid-template-columns:1fr 320px 32px;align-items:center;gap:16px}.setting-row__meta{display:flex;flex-direction:column;gap:3px}.setting-row__meta label{font-size:14px;font-weight:600;color:var(--color-navy)}.setting-row__key{font-size:12px;color:var(--color-text-muted);font-family:monospace}.setting-row__input input[type=text],.setting-row__input input[type=number],.setting-row__input textarea{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius);font-size:14px;font-family:inherit;color:var(--color-text)}.setting-row__input input[type=text]:focus,.setting-row__input input[type=number]:focus,.setting-row__input textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0076b61f}.setting-row__input select{width:100%}.audit-filters{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;align-items:end}.audit-filters__actions{grid-column:1 / -1;display:flex;gap:10px}.pagination{display:flex;align-items:center;justify-content:space-between;margin-top:16px}.pagination__info{font-size:13px;color:var(--color-text-muted)}.pagination__buttons{display:flex;gap:8px}.detail-row{display:grid;grid-template-columns:180px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-border);font-size:14px}.detail-row:last-child{border-bottom:none}.detail-row__label{color:var(--color-text-muted);font-weight:600}.detail-row__value{color:var(--color-text);word-break:break-word}.json-block{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);padding:14px;font-size:12.5px;font-family:Consolas,Courier New,monospace;color:var(--color-navy);overflow-x:auto;margin:0;white-space:pre-wrap;word-break:break-word}.email-input{display:flex;gap:10px;align-items:stretch}.email-input input{flex:1}.coming-soon{display:flex;flex-direction:column;align-items:center;text-align:center;padding:56px 24px;gap:8px}.coming-soon__icon{color:var(--color-primary);opacity:.85}.coming-soon__title{color:var(--color-navy);margin:8px 0 0;font-size:20px}.coming-soon__text{color:var(--color-text-muted);max-width:460px;line-height:1.5}.role-selector{display:flex;flex-direction:column;gap:2px;border:1px solid var(--color-border);border-radius:var(--radius);padding:8px;max-height:220px;overflow-y:auto}.role-selector__item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius);cursor:pointer;font-size:14px}.role-selector__item:hover{background:var(--color-bg)}.role-selector__item input{width:16px;height:16px}.role-selector__code{margin-left:auto;font-size:11px;color:var(--color-text-muted);background:var(--color-bg);padding:2px 8px;border-radius:999px}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-sidebar-bg);padding:20px}.login__card{background:var(--color-card);width:100%;max-width:380px;border-radius:12px;padding:32px 28px;display:flex;flex-direction:column;gap:16px;box-shadow:0 12px 40px #00000040}.login__brand{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--color-navy);font-size:24px;font-weight:800}.login__subtitle{text-align:center;color:var(--color-text-muted);font-size:14px;margin:0 0 4px}.login__input{display:flex;align-items:center;gap:8px;border:1px solid var(--color-border);border-radius:var(--radius);padding:0 12px;color:var(--color-text-muted)}.login__input:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #0076b61f}.login__input input{border:none;outline:none;padding:10px 0;flex:1;font-size:14px;font-family:inherit;color:var(--color-text);background:transparent}.catalog-layout{display:flex;height:calc(100vh - 160px);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-card);overflow:hidden}.catalog-tree{width:40%;border-right:1px solid var(--color-border);overflow-y:auto;padding:4px 4px 12px;flex-shrink:0}.catalog-detail{flex:1;overflow-y:auto;padding:24px}.catalog-detail__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;gap:12px}.catalog-detail__fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tree-node{display:flex;flex-direction:column}.tree-node__row{display:flex;align-items:center;gap:5px;padding:5px 8px;border-radius:6px;cursor:pointer;font-size:13px;-webkit-user-select:none;user-select:none}.tree-node__row:hover{background:var(--color-bg)}.tree-node__row.selected{background:#dceefb;color:var(--color-primary-dark);font-weight:600;border-left:3px solid var(--color-primary);border-top-left-radius:0;border-bottom-left-radius:0}.tree-node__code{font-weight:700;color:var(--color-navy);min-width:56px;font-size:12.5px;flex-shrink:0}.tree-node__name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-node__toggle{display:inline-flex;align-items:center;flex-shrink:0}.tree-node__actions{display:none;gap:2px;flex-shrink:0}.tree-node__row:hover .tree-node__actions{display:flex}.entry-lines-table{width:100%;border-collapse:collapse;font-size:13px}.entry-lines-table th,.entry-lines-table td{padding:8px 10px;border-bottom:1px solid var(--color-border)}.entry-lines-table thead th{background:var(--color-bg);font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.entry-lines-table input,.entry-lines-table select{font-size:13px;padding:5px 8px;border:1px solid var(--color-border);border-radius:4px;font-family:inherit}.entry-lines-table input:focus,.entry-lines-table select:focus{outline:none;border-color:var(--color-primary)}.entry-totals{display:flex;gap:24px;font-size:13px;font-weight:600;color:var(--color-navy)}.entry-totals__diff--error{color:#c0392b}.dgrid-wrap{overflow:auto;max-height:var(--dgrid-max-h, 60vh);border:1px solid var(--color-border);border-radius:var(--radius)}.dgrid{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.dgrid thead th{position:sticky;top:0;z-index:1;background:var(--color-bg);text-align:left;padding:8px 10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);white-space:nowrap}.dgrid thead th:last-child{border-right:none}.dgrid tbody td{padding:0;background:var(--color-card);border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border)}.dgrid tbody td:last-child{border-right:none}.dgrid tbody tr:last-child td{border-bottom:none}.dgrid tbody tr:nth-child(2n) td{background:var(--color-bg)}.dgrid__idx{width:38px;text-align:center;color:var(--color-text-muted);font-size:12px;background:var(--color-bg)!important;padding:0 6px;-webkit-user-select:none;user-select:none}.dgrid__action{width:44px;text-align:center;padding:0 4px!important}.dgrid__action .icon-btn{width:28px;height:28px}.dgrid__drag{width:30px;text-align:center;padding:0!important;background:var(--color-bg)!important}.dgrid__drag-handle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:26px;color:var(--color-text-muted);cursor:grab}.dgrid__drag-handle:active{cursor:grabbing}.dgrid__drag-handle:hover{color:var(--color-primary)}.dgrid__row--drop-before td{box-shadow:inset 0 2px 0 0 var(--color-primary)}.dgrid__row--drop-after td{box-shadow:inset 0 -2px 0 0 var(--color-primary)}.dgrid-cell{width:100%;border:none!important;border-radius:0!important;background:transparent!important;padding:7px 10px!important;margin:0;font-size:13px;font-family:inherit;color:var(--color-text);box-shadow:none!important;outline:none!important}.dgrid-cell:focus{outline:none!important;box-shadow:none!important}.dgrid-cell:disabled{background:transparent!important;cursor:default}.dgrid-cell--num{text-align:right;font-variant-numeric:tabular-nums}.dgrid-cell--mono{font-family:Consolas,Courier New,monospace}textarea.dgrid-cell--area{display:block;resize:none;overflow:hidden;min-height:34px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.dgrid tbody td:focus-within{box-shadow:inset 0 0 0 2px var(--color-primary)}.dgrid__static{display:block;padding:7px 10px;font-size:13px;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dgrid__static--num{text-align:right;font-variant-numeric:tabular-nums}.dgrid__static--muted{color:var(--color-text-muted)}.dgrid tfoot td{position:sticky;bottom:0;z-index:1;padding:9px 10px;font-weight:700;color:var(--color-navy);background:var(--color-bg);border-top:2px solid var(--color-border)}.dgrid-acct{display:flex;align-items:center;gap:8px;min-width:300px}.dgrid-acct__code{width:112px;flex-shrink:0}.dgrid-acct__search{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:26px;height:26px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text-muted);cursor:pointer}.dgrid-acct__search:hover{color:var(--color-primary);border-color:var(--color-primary)}.dgrid-acct__name{flex:1;font-size:12px;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:8px}.dgrid-acct__name--error{color:#c0392b}[data-theme=dark] .dgrid tfoot td,[data-theme=dark] .dgrid-cell{color:var(--color-text)}.tabs{display:flex;flex-wrap:wrap;border-bottom:2px solid var(--color-border);margin-bottom:24px;gap:0}.tab-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:none;background:none;font-size:14px;font-weight:600;color:var(--color-text-muted);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s}.tab-btn:hover{color:var(--color-navy)}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.profile-hero{display:flex;align-items:center;gap:20px;margin-bottom:20px}.profile-hero__avatar{flex-shrink:0;width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-navy));color:#fff;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:700;letter-spacing:.02em}.profile-hero__info{min-width:0}.profile-hero__name{margin:0 0 6px;font-size:20px;font-weight:700;color:var(--color-navy)}.profile-hero__meta{display:flex;flex-wrap:wrap;gap:6px 18px;color:var(--color-text-muted);font-size:13px}.profile-hero__meta span{display:inline-flex;align-items:center;gap:6px}.profile-hero__roles{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}.profile-hero__username{font-size:13px;font-weight:600;color:var(--color-text-muted)}.profile-form{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.profile-form__full{grid-column:1 / -1}.profile-section-hint{color:var(--color-text-muted);font-size:13px;line-height:1.5;margin:0 0 18px}.profile-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.input-affix{position:relative;display:flex;align-items:center}.input-affix__icon{position:absolute;left:12px;color:var(--color-text-muted);pointer-events:none}.input-affix input{width:100%;padding-left:36px!important;padding-right:40px!important}.input-affix__btn{position:absolute;right:6px;display:inline-flex;padding:6px;border:none;background:none;color:var(--color-text-muted);cursor:pointer;border-radius:6px}.input-affix__btn:hover{color:var(--color-navy)}.pwd-strength{display:flex;align-items:center;gap:10px;margin-top:8px}.pwd-strength__bar{flex:1;height:6px;border-radius:999px;background:var(--color-border);overflow:hidden}.pwd-strength__fill{display:block;height:100%;border-radius:999px;transition:width .25s ease,background .25s ease}.pwd-strength__fill.weak{background:#e74c3c}.pwd-strength__fill.fair{background:#e6a700}.pwd-strength__fill.good{background:#2e9e5b}.pwd-strength__fill.strong{background:#1f8f4e}.pwd-strength__label{font-size:12px;font-weight:600}.pwd-strength__label.weak{color:#e74c3c}.pwd-strength__label.fair{color:#b88600}.pwd-strength__label.good,.pwd-strength__label.strong{color:#2e9e5b}.contacts-list{display:flex;flex-direction:column;gap:14px}.contact-row{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg)}.contact-row__fields{flex:1;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.contact-row__remove{flex-shrink:0;display:inline-flex;padding:9px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-card);color:#c0392b;cursor:pointer}.contact-row__remove:hover{background:#fdecea;border-color:#f5c6cb}.contacts-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 20px;text-align:center;color:var(--color-text-muted)}.sidebar__flyout{position:fixed;left:var(--sidebar-width-collapsed);background:var(--color-card);border:1px solid var(--color-border);border-radius:0 var(--radius) var(--radius) var(--radius);min-width:220px;max-height:420px;overflow-y:auto;box-shadow:4px 8px 24px #00000026;z-index:200;padding:6px}.sidebar__flyout-header{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);padding:6px 10px 8px}.flyout__link{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--radius);font-size:14px;color:var(--color-text);font-weight:500;width:100%;background:none;border:none;font-family:inherit;cursor:pointer;text-align:left;text-decoration:none;white-space:nowrap}.flyout__link:hover{background:var(--color-bg);color:var(--color-primary)}.flyout__link.active{background:#e3f1f9;color:var(--color-primary-dark);font-weight:600}.flyout__link.open .sidebar__chevron{transform:rotate(180deg)}.flyout__sublink{padding-left:32px;font-size:13.5px;font-weight:400}[data-theme=dark] .sidebar__flyout{box-shadow:4px 8px 24px #00000073}[data-theme=dark] .flyout__link{color:var(--color-text)}[data-theme=dark] .flyout__link:hover{background:var(--color-bg);color:var(--color-primary)}[data-theme=dark] .flyout__link.active{background:#1a3a5c;color:#7ec8e3}[data-theme=dark] body{background:var(--color-bg);color:var(--color-text)}[data-theme=dark] .topbar,[data-theme=dark] .card{background:var(--color-card);border-color:var(--color-border)}[data-theme=dark] .page-title,[data-theme=dark] .breadcrumbs .current{color:var(--color-text)}[data-theme=dark] .breadcrumbs .sep{color:var(--color-border)}[data-theme=dark] .table th{color:var(--color-text-muted);border-color:var(--color-border)}[data-theme=dark] .table td{border-color:var(--color-border)}[data-theme=dark] .table tr:hover td{background:#1e3048}[data-theme=dark] .btn--ghost{background:var(--color-card);color:var(--color-text);border-color:var(--color-border)}[data-theme=dark] .btn--ghost:hover{background:var(--color-bg)}[data-theme=dark] .icon-btn{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .icon-btn:hover{background:var(--color-bg)}[data-theme=dark] .form-field input,[data-theme=dark] .form-field textarea,[data-theme=dark] .form-field select,[data-theme=dark] .select,[data-theme=dark] .entry-lines-table input,[data-theme=dark] .entry-lines-table select,[data-theme=dark] .setting-row__input input,[data-theme=dark] .setting-row__input textarea{background:var(--color-bg);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .form-field label,[data-theme=dark] .setting-row__meta label{color:var(--color-text)}[data-theme=dark] .catalog-layout,[data-theme=dark] .catalog-tree{background:var(--color-card);border-color:var(--color-border)}[data-theme=dark] .catalog-detail{background:var(--color-card)}[data-theme=dark] .tree-node__row:hover{background:#1e3048}[data-theme=dark] .tree-node__row.selected{background:#1a3a5c;color:#7ec8e3;border-left:3px solid var(--color-primary);border-top-left-radius:0;border-bottom-left-radius:0}[data-theme=dark] .tree-node__code{color:var(--color-text)}[data-theme=dark] .matrix-wrap{border-color:var(--color-border)}[data-theme=dark] .matrix thead th{background:var(--color-card)}[data-theme=dark] .matrix__row-depth-0 td{background:#1a2a3e;border-bottom:2px solid var(--color-border)}[data-theme=dark] .matrix__row-depth-0:hover td{background:#223750}[data-theme=dark] .matrix__row-depth-0 .matrix__label span{color:#7ec8e3}[data-theme=dark] .matrix__row-depth-1 td{background:#162032}[data-theme=dark] .matrix__row-depth-1:hover td{background:#1e3048}[data-theme=dark] .matrix__row-depth-1 .matrix__label span{color:var(--color-text)}[data-theme=dark] .matrix__row-depth-2 td{background:#0f172a}[data-theme=dark] .matrix__row-depth-2:hover td{background:#162032}[data-theme=dark] .matrix__row-depth-2 .matrix__label span{color:var(--color-text-muted)}[data-theme=dark] .access-card{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .access-card__title{color:var(--color-text)}[data-theme=dark] .flow-stage-item{background:var(--color-card);border-color:var(--color-border)}[data-theme=dark] .stage-card__order{background:var(--color-bg);color:var(--color-text)}[data-theme=dark] .chip{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .segmented{background:var(--color-card);border-color:var(--color-border)}[data-theme=dark] .segmented__btn{background:var(--color-card);color:var(--color-text-muted)}[data-theme=dark] .segmented__btn+.segmented__btn{border-color:var(--color-border)}[data-theme=dark] .json-block{background:var(--color-bg);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .perm-hint{background:var(--color-card)}[data-theme=dark] .role-selector{border-color:var(--color-border)}[data-theme=dark] .role-selector__item:hover{background:var(--color-bg)}[data-theme=dark] .role-selector__code{background:var(--color-bg);color:var(--color-text-muted)}[data-theme=dark] .badge--on{background:#1a3a5c;color:#7ec8e3}[data-theme=dark] .badge--off{background:#253047;color:var(--color-text-muted)}[data-theme=dark] .tabs{border-color:var(--color-border)}[data-theme=dark] .tab-btn:hover,[data-theme=dark] .profile-hero__name{color:var(--color-text)}[data-theme=dark] .contact-row{background:var(--color-bg);border-color:var(--color-border)}[data-theme=dark] .contact-row__remove{background:var(--color-card);border-color:var(--color-border)}[data-theme=dark] .contact-row__remove:hover{background:#3a1d22;border-color:#5a2a30}[data-theme=dark] .input-affix__btn:hover{color:var(--color-text)}[data-theme=dark] .entry-lines-table thead th{background:var(--color-bg)}[data-theme=dark] .entry-lines-table th,[data-theme=dark] .entry-lines-table td{border-color:var(--color-border)}[data-theme=dark] .topbar__logout:hover{background:var(--color-bg)}[data-theme=dark] .detail-row{border-color:var(--color-border)}[data-theme=dark] .detail-row__label{color:var(--color-text-muted)}[data-theme=dark] .detail-row__value{color:var(--color-text)}[data-theme=dark] input[type=checkbox],[data-theme=dark] input[type=radio]{accent-color:var(--color-primary);color-scheme:dark}[data-theme=dark] input[type=date]{background:var(--color-bg);color:var(--color-text);border-color:var(--color-border);color-scheme:dark}[data-theme=dark] input[type=file]{color:var(--color-text);color-scheme:dark}[data-theme=dark] input[type=file]::file-selector-button{background:var(--color-card);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;padding:5px 10px;border-radius:var(--radius)}[data-theme=dark] select{background:var(--color-bg);color:var(--color-text);border-color:var(--color-border);color-scheme:dark}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#00000073;display:flex;align-items:center;justify-content:center}.modal-sheet{background:var(--color-card);border-radius:var(--radius);box-shadow:0 8px 32px #0003;display:flex;flex-direction:column}[data-theme=dark] .modal-sheet{box-shadow:0 8px 40px #0000008c}.modal-sheet__header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--color-border)}.modal-sheet__header h3{margin:0;font-size:16px;color:var(--color-text)}.modal-sheet__search{padding:10px 14px;border-bottom:1px solid var(--color-border)}.modal-sheet__search input{width:100%;box-sizing:border-box;padding:7px 10px 7px 30px;border:1px solid var(--color-border);border-radius:var(--radius);font-size:13px;font-family:inherit;background:var(--color-bg);color:var(--color-text)}.modal-sheet__search input:focus{outline:none;border-color:var(--color-primary)}.modal-sheet__body{flex:1;overflow-y:auto;padding:6px 8px}.modal-sheet__footer{padding:10px 20px;border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;gap:12px}.notice-info{border:1px solid #ffe082;background:#fff8e1;color:#7c6200;border-radius:var(--radius);padding:10px 14px;font-size:13px;margin-bottom:14px}.notice-success{border:1px solid #a5d6a7;background:#e8f5e9;color:#2e7d32;border-radius:var(--radius);padding:14px;margin-top:16px}.notice-warning{border:1px solid #ffcc80;background:#fff3e0;color:#b35900;border-radius:var(--radius);padding:12px 14px;font-size:13px;margin-bottom:14px}.notice-error{border:1px solid #f5c6cb;background:#fdecea;color:#c0392b;border-radius:var(--radius);padding:12px 14px;font-size:13px;margin-bottom:14px}.notice-error-pre{background:#fff;border-radius:4px;padding:8px;max-height:120px;overflow-y:auto;font-size:12px;color:#c0392b;margin-top:10px}[data-theme=dark] .notice-info{border-color:#7c6200;background:#221b00;color:#ffe082}[data-theme=dark] .notice-success{border-color:#2a5c2e;background:#0f2e12;color:#a5d6a7}[data-theme=dark] .notice-warning{border-color:#7a4a10;background:#2a1c08;color:#ffcc80}[data-theme=dark] .notice-error{border-color:#5a2a30;background:#2a1012;color:#ef9a9a}[data-theme=dark] .notice-error-pre{background:#1a0a0a;color:#ef9a9a}.skeleton{background:linear-gradient(90deg,var(--color-border) 25%,rgba(0,0,0,.04) 37%,var(--color-border) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.3s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.skeleton-row td{vertical-align:middle}[data-theme=dark] .skeleton{background:linear-gradient(90deg,#2a3856 25%,#ffffff0f 37%,#2a3856 63%);background-size:400% 100%}.form-grid--fluid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;max-width:none}.form-grid--fluid .form-field--full{grid-column:1 / -1}.form-field--error input,.form-field--error select,.form-field--error textarea{border-color:#c0392b!important;box-shadow:0 0 0 3px #c0392b1f!important}.form-field__error{display:flex;align-items:center;gap:5px;color:#c0392b;font-size:12.5px;font-weight:500;margin:0}[data-theme=dark] .form-field__error{color:#ef9a9a}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:299}.topbar__mobile-hamburger{display:none;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:6px;border-radius:var(--radius);flex-shrink:0}.topbar__mobile-hamburger:hover{color:var(--color-primary);background:var(--color-bg)}.topbar__left{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden}@media(max-width:1024px){.audit-filters{grid-template-columns:repeat(3,1fr)}.stage-card__fields{grid-template-columns:1fr}}@media(max-width:768px){.sidebar{transform:translate(-100%);transition:width .22s ease,transform .25s ease;width:var(--sidebar-width)!important;z-index:300}.sidebar--mobile-open{transform:translate(0);box-shadow:4px 0 24px #0000004d}[data-theme=dark] .sidebar--mobile-open{box-shadow:4px 0 32px #0000008c}.main{margin-left:0!important;max-width:100vw!important}.topbar{padding:0 14px}.topbar__mobile-hamburger{display:inline-flex}.topbar__user span{display:none}.workarea{padding:14px}.card{overflow-x:auto}.table--cards thead{display:none}.table--cards,.table--cards tbody,.table--cards tr,.table--cards td{display:block;width:100%}.table--cards tr{border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:10px;padding:4px 12px;background:var(--color-card)}.table--cards tr:hover td{background:transparent}.table--cards td{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:9px 0;border:none;border-bottom:1px solid var(--color-border);text-align:right;min-height:38px}.table--cards td:last-child{border-bottom:none}.table--cards td:before{content:attr(data-label);font-weight:600;color:var(--color-text-muted);text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.table--cards td .row-actions{justify-content:flex-end}.table--cards td[colspan]{text-align:center;border-bottom:none;justify-content:center}.table--cards td[colspan]:before{content:none}.table--cards .skeleton-row td:before{content:none}.table--cards-wrapper{overflow-x:visible!important;overflow-y:visible!important;flex:none!important;min-height:unset!important}.table--cards{min-width:0!important;width:100%!important}.card{height:auto!important;overflow:visible!important;max-height:none!important}.page-header{flex-wrap:wrap;gap:10px}.page-title{font-size:18px}.audit-filters{grid-template-columns:repeat(2,1fr)}.profile-form,.contact-row__fields{grid-template-columns:1fr}.profile-hero{flex-direction:column;align-items:flex-start}.setting-row{grid-template-columns:1fr;gap:8px}.catalog-layout{flex-direction:column;height:auto;min-height:500px}.catalog-tree{width:100%;max-height:260px;border-right:none;border-bottom:1px solid var(--color-border)}.catalog-detail{min-height:240px;padding:16px}.stage-card__fields{grid-template-columns:1fr}.detail-row{grid-template-columns:1fr;gap:2px;padding:8px 0}.detail-row__label{font-size:12px;margin-bottom:2px}.matrix-toolbar{flex-wrap:wrap;gap:10px}.perm-subject{flex-direction:column;align-items:flex-start}.modal-backdrop{align-items:flex-end;padding:0}.modal-sheet{width:100%!important;max-height:90vh;border-radius:var(--radius) var(--radius) 0 0}.tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.access-cards{grid-template-columns:1fr}.pagination{flex-wrap:wrap;gap:10px}.entry-totals{flex-wrap:wrap;gap:8px}.breadcrumbs__full{display:none}.breadcrumbs__compact{display:inline-flex}.catalog-detail__header{flex-direction:column}.catalog-detail__fields{grid-template-columns:1fr}.tree-node__name{white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word;line-height:1.35}.tree-node__row{align-items:flex-start}}.toast-stack{position:fixed;top:18px;right:18px;z-index:2000;display:flex;flex-direction:column;gap:10px;max-width:380px;width:calc(100vw - 36px);pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:12px;background:var(--color-card);border:1px solid var(--color-border);border-left:4px solid var(--color-text-muted);border-radius:var(--radius);padding:13px 14px;box-shadow:0 8px 28px #00000029;animation:toast-in .22s cubic-bezier(.21,1.02,.73,1)}@keyframes toast-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.toast__icon{flex-shrink:0;display:inline-flex;margin-top:1px}.toast__body{flex:1;min-width:0}.toast__title{margin:0 0 2px;font-size:13.5px;font-weight:700;color:var(--color-navy)}.toast__msg{margin:0;font-size:13.5px;line-height:1.4;color:var(--color-text);word-break:break-word}.toast__close{flex-shrink:0;display:inline-flex;border:none;background:none;color:var(--color-text-muted);cursor:pointer;padding:2px;border-radius:6px}.toast__close:hover{color:var(--color-text);background:var(--color-bg)}.toast--success{border-left-color:#2e9e5b}.toast--success .toast__icon{color:#2e9e5b}.toast--error{border-left-color:#c0392b}.toast--error .toast__icon{color:#c0392b}.toast--warning{border-left-color:#e6a700}.toast--warning .toast__icon{color:#e6a700}.toast--info{border-left-color:var(--color-primary)}.toast--info .toast__icon{color:var(--color-primary)}[data-theme=dark] .toast__title{color:var(--color-text)}.confirm-dialog{background:var(--color-card);border-radius:12px;box-shadow:0 16px 48px #00000047;padding:26px 24px 20px;width:100%;max-width:400px;margin:16px;text-align:center;animation:confirm-in .18s ease}@keyframes confirm-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.confirm-dialog__icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;margin-bottom:14px}.confirm-dialog__icon--default{background:#e3f1f9;color:var(--color-primary-dark)}.confirm-dialog__icon--warning{background:#fff4d6;color:#b88600}.confirm-dialog__icon--danger{background:#fdecea;color:#c0392b}.confirm-dialog__title{margin:0 0 8px;font-size:18px;font-weight:700;color:var(--color-navy)}.confirm-dialog__message{margin:0 0 22px;font-size:14px;line-height:1.5;color:var(--color-text-muted)}.confirm-dialog__actions{display:flex;gap:10px;justify-content:center}.confirm-dialog__actions .btn{min-width:110px;justify-content:center}.btn--danger{background:#c0392b;color:#fff}.btn--danger:hover{background:#a93226}[data-theme=dark] .confirm-dialog__title{color:var(--color-text)}[data-theme=dark] .confirm-dialog__icon--default{background:#1a3a5c;color:#7ec8e3}[data-theme=dark] .confirm-dialog__icon--warning{background:#3a2e0a;color:#ffd34d}[data-theme=dark] .confirm-dialog__icon--danger{background:#3a1d22;color:#ef9a9a}@media(max-width:480px){.audit-filters{grid-template-columns:1fr}.toast-stack{top:auto;bottom:12px;right:12px;left:12px;width:auto;max-width:none}.confirm-dialog__actions{flex-direction:column-reverse}.confirm-dialog__actions .btn{width:100%}.form-actions{flex-direction:column}.form-actions .btn{width:100%;justify-content:center}.workarea{padding:10px}.card{padding:14px}.matrix-toolbar__actions{flex-wrap:wrap}}
