@charset "UTF-8";.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}@font-face{font-family:Plex Mono;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2) format("woff2")}@font-face{font-family:Plex Mono;font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/ibm-plex-mono-500.woff2) format("woff2")}@font-face{font-family:Plex Sans;font-weight:400 600;font-style:normal;font-display:swap;src:url(/fonts/ibm-plex-sans-var.woff2) format("woff2")}@font-face{font-family:"Plex Serif";font-weight:600;font-style:normal;font-display:swap;src:url(/fonts/ibm-plex-serif-600.woff2) format("woff2")}@font-face{font-family:"Plex Serif";font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/ibm-plex-serif-700.woff2) format("woff2")}:root{--swatch-breu: #03133b;--swatch-papel: #dce4f0;--swatch-grafite: #6d84a8;--swatch-latao: #c79a3e;--bg: #e4eaf6;--surface: #f8fafe;--surface-2: #dce4f0;--text: #0a1b33;--text-muted: #3c4e68;--border: #c1cee0;--border-strong: #6d84a8;--brass: #a8792a;--brass-fill: #c79a3e;--brass-ink: #241505;--good: #2f7a57;--warn: #c1791f;--critical: #a83b32;--on-good: #f4faf7;--on-warn: #241505;--on-critical: #faf1ef;--grid-line: rgba(10, 27, 51, .07);--arc-line: rgba(10, 27, 51, .16);--font-display: "Plex Serif", Georgia, serif;--font-body: "Plex Sans", -apple-system, "Segoe UI", sans-serif;--font-mono: "Plex Mono", "SFMono-Regular", Consolas, monospace}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #03133b;--surface: #0e2a52;--surface-2: #163a66;--text: #eaf0fb;--text-muted: #9fb4d6;--border: #204373;--border-strong: #3e6099;--brass: #e0b563;--brass-fill: #d4ac5e;--brass-ink: #1c1002;--good: #4fae82;--warn: #e0a13f;--critical: #d3695f;--on-good: #06140d;--on-warn: #1c1002;--on-critical: #1a0705;--grid-line: rgba(234, 240, 251, .08);--arc-line: rgba(234, 240, 251, .18)}}:root[data-theme=dark]{--bg: #03133b;--surface: #0e2a52;--surface-2: #163a66;--text: #eaf0fb;--text-muted: #9fb4d6;--border: #204373;--border-strong: #3e6099;--brass: #e0b563;--brass-fill: #d4ac5e;--brass-ink: #1c1002;--good: #4fae82;--warn: #e0a13f;--critical: #d3695f;--on-good: #06140d;--on-warn: #1c1002;--on-critical: #1a0705;--grid-line: rgba(234, 240, 251, .08);--arc-line: rgba(234, 240, 251, .18)}.page{max-width:820px;margin:0 auto;padding:32px 24px;font-family:var(--font-body);color:var(--text)}.page h1{font-family:var(--font-display);font-weight:600;font-size:1.5rem;margin:0 0 4px}.hint{color:var(--text-muted);font-size:.85rem;margin:0}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.filters{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap}.filters input,.filters select{flex:1;min-width:180px}td.empty{text-align:center;color:var(--text-muted);padding:24px 10px}.error{color:var(--critical);font-size:.85rem;margin:0 0 16px}.warning{color:var(--warn);font-size:.85rem;margin:0 0 16px}.toggle{position:relative;display:inline-flex;align-items:center;width:36px;height:20px;cursor:pointer}.toggle input{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:pointer}.toggle-track{position:absolute;inset:0;background:var(--border-strong);border-radius:10px;transition:background-color .15s ease}.toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface);transition:transform .15s ease}.toggle input:checked+.toggle-track{background:var(--brass-fill)}.toggle input:checked+.toggle-track:after{transform:translate(16px)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--brass-fill);outline-offset:2px}.primary{display:inline-block;padding:9px 16px;border:none;background:var(--brass-fill);color:var(--brass-ink);font-family:var(--font-body);font-weight:600;font-size:.88rem;text-decoration:none;cursor:pointer;flex:none}.secondary{display:inline-block;padding:9px 16px;background:transparent;color:var(--text-muted);border:1px solid var(--border);font-family:var(--font-body);font-size:.88rem;text-decoration:none;cursor:pointer}.field{display:flex;flex-direction:column;margin-bottom:14px}label{font-size:.78rem;color:var(--text-muted);margin-bottom:5px}input,select{font-family:var(--font-body);font-size:.92rem;padding:9px 11px;border:1px solid var(--border);background:var(--bg);color:var(--text)}input:focus-visible,select:focus-visible{outline:2px solid var(--brass-fill);outline-offset:1px}input.ng-invalid.ng-touched,select.ng-invalid.ng-touched{border-color:var(--critical)}.modal-form{display:flex;flex-direction:column}.form-card{display:flex;flex-direction:column;max-width:480px;background:var(--surface);border:1px solid var(--border);padding:24px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:10px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:24px}.tabs a{padding:10px 16px;color:var(--text-muted);text-decoration:none;font-size:.88rem;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs a:hover{color:var(--text)}.tabs a.active{color:var(--text);font-weight:600;border-bottom-color:var(--brass-fill)}table{width:100%;border-collapse:collapse;font-size:.9rem}th{text-align:left;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-strong);padding:8px 10px}td{padding:10px;border-bottom:1px solid var(--border)}.actions{display:flex;gap:8px;justify-content:flex-end}table button,table a{display:inline-block;padding:5px 10px;font-family:var(--font-body);font-size:.8rem;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);text-decoration:none;cursor:pointer}table button.secondary{background:transparent;color:var(--text-muted);border:1px solid var(--border)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0}.icon-button.danger:hover{color:var(--critical);border-color:var(--critical)}.pagination{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:18px}.pagination-nav,.pagination-page{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 8px;font-family:var(--font-body);font-size:.85rem;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer}.pagination-nav:hover:not(:disabled):not(.active),.pagination-page:hover:not(:disabled):not(.active){background:var(--surface-2)}.pagination-nav:disabled,.pagination-page:disabled{color:var(--text-muted);border-color:var(--border);cursor:not-allowed}.pagination-page.active{background:var(--brass-fill);border-color:var(--brass-fill);color:var(--brass-ink);font-weight:600;cursor:default}.pagination-ellipsis{padding:0 4px;color:var(--text-muted)}.pagination-status{margin-left:8px;color:var(--text-muted);font-size:.82rem}.ng-select{font-family:var(--font-body);font-size:.92rem}.ng-select .ng-select-container{min-height:38px;align-items:center;background:var(--bg);border:1px solid var(--border);border-radius:0;color:var(--text)}.ng-select.ng-select-single .ng-select-container{height:38px}.ng-select .ng-value-container{padding-left:11px}.ng-select .ng-value-container .ng-placeholder{color:var(--text-muted)}.ng-select .ng-value-container .ng-input>input{color:var(--text);font-family:var(--font-body)}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:var(--text-muted) transparent transparent}.ng-select .ng-clear-wrapper{color:var(--text-muted)}.ng-select .ng-clear-wrapper:hover .ng-clear,.ng-select .ng-clear-wrapper:focus .ng-clear{color:var(--critical)}.ng-select .ng-spinner-loader{border-color:var(--border) var(--border) var(--border) var(--brass-fill)}.ng-select.ng-select-focused:not(.ng-select-opened) .ng-select-container{border-color:var(--brass-fill);outline:2px solid var(--brass-fill);outline-offset:1px;box-shadow:none}.ng-select.ng-select-opened>.ng-select-container{border-color:var(--border-strong);background:var(--surface)}.ng-select.ng-select-disabled>.ng-select-container{background:var(--surface-2);color:var(--text-muted)}.ng-dropdown-panel{background:var(--surface);border:1px solid var(--border-strong);font-family:var(--font-body);font-size:.9rem;box-shadow:0 2px 8px #0a1b3326}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{background:var(--surface);color:var(--text);padding:8px 11px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background:var(--surface-2)}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{background:var(--brass-fill);color:var(--brass-ink);font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:var(--text-muted)}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{color:var(--text-muted);font-weight:600}.ng-dropdown-panel .ng-dropdown-header,.ng-dropdown-panel .ng-dropdown-footer{border-color:var(--border);color:var(--text-muted)}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:var(--font-body)}
