@charset "UTF-8";@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/fonts/plus-jakarta-sans-latin-wght-normal.woff2) format("woff2-variations")}:root{color-scheme:light;--ec-sidebar:#102f46;--ec-sidebar-text:#f5f8fa;--ec-primary:#17577c;--ec-primary-soft:#e4f1f7;--ec-accent:#69d1c5;--ec-canvas:#f5f7f9;--ec-surface:#ffffff;--ec-text:#17222b;--ec-muted:#667681;--ec-border:#dce3e8;--ec-success:#237a57;--ec-success-soft:#e4f4ec;--ec-warning:#d67b25;--ec-neutral-soft:#edf1f3;--ec-shadow:0 8px 28px rgba(25,47,62,.055);font-family:Plus Jakarta Sans Variable,Plus Jakarta Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-optical-sizing:auto;font-synthesis:none;color:var(--ec-text);background:var(--ec-canvas)}*{box-sizing:border-box}html{min-height:100%;margin:0;font-size:17px}body{min-height:100%;margin:0;min-width:320px;font-family:inherit;font-size:16px;line-height:1.55;letter-spacing:-.008em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:630;line-height:1.18}strong,b{font-weight:620}button,input,select,textarea{font:inherit}button,.p-button{font-size:.9rem}.p-component{font-family:inherit;letter-spacing:-.008em}.p-button,.p-button:hover,.p-button:focus,.p-button:visited{font-weight:600;letter-spacing:-.012em;text-decoration:none}.p-tag{font-weight:650;letter-spacing:.015em}.p-inputtext,.p-select-label,.p-multiselect-label{font-weight:500}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb,var(--ec-accent) 75%,transparent);outline-offset:2px}.semantic-metrics{gap:.68rem!important;overflow:visible!important;border:0!important;background:transparent!important;box-shadow:none!important}.semantic-metrics>article{--metric-bg:#f2f5f7;--metric-border:#dce5e9;--metric-accent:#536b78;--metric-icon-bg:#e5ecef;border:1px solid var(--metric-border)!important;border-radius:.78rem!important;background:var(--metric-bg)!important;box-shadow:0 5px 16px #1f37450b!important}.semantic-metrics>article.tone-neutral{--metric-bg:#f2f5f7;--metric-border:#dce5e9;--metric-accent:#536b78;--metric-icon-bg:#e5ecef}.semantic-metrics>article.tone-info{--metric-bg:#eef5fa;--metric-border:#d3e4ee;--metric-accent:#326b89;--metric-icon-bg:#ddecf4}.semantic-metrics>article.tone-warning{--metric-bg:#fff7e8;--metric-border:#f0dfc0;--metric-accent:#94651d;--metric-icon-bg:#f8ebcf}.semantic-metrics>article.tone-danger{--metric-bg:#fff0ee;--metric-border:#f0d2ce;--metric-accent:#a84a42;--metric-icon-bg:#f6deda}.semantic-metrics>article.tone-success{--metric-bg:#ecf7f1;--metric-border:#cfe8db;--metric-accent:#28765a;--metric-icon-bg:#d8efe3}.semantic-metrics>article strong{color:var(--metric-accent)!important}.semantic-metrics>article small{color:#586d78!important}.semantic-metrics>article em,.semantic-metrics>article div>span{color:#71818a!important}.semantic-metrics>article>span:has(ecodir-icon){background:var(--metric-icon-bg)!important;color:var(--metric-accent)!important}.semantic-metrics>article.tone-danger>span:has(ecodir-icon),.semantic-metrics>article.tone-warning>span:has(ecodir-icon),.semantic-metrics>article.tone-success>span:has(ecodir-icon),.semantic-metrics>article.tone-info>span:has(ecodir-icon){box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--metric-accent) 12%,transparent)}.semantic-inline-metrics>span{border:1px solid var(--metric-border, #dce5e9)!important;background:var(--metric-bg, #f2f5f7)!important;color:#657782!important}.semantic-inline-metrics>span strong{color:var(--metric-accent, #536b78)!important}.semantic-inline-metrics>.tone-success{--metric-bg:#ecf7f1;--metric-border:#cfe8db;--metric-accent:#28765a}.semantic-inline-metrics>.tone-warning{--metric-bg:#fff7e8;--metric-border:#f0dfc0;--metric-accent:#94651d}.semantic-inline-metrics>.tone-danger{--metric-bg:#fff0ee;--metric-border:#f0d2ce;--metric-accent:#a84a42}@media(max-width:720px){.semantic-metrics{gap:.55rem!important}}app-codirs-page table.codir-table{min-width:58rem;table-layout:fixed}app-codirs-page .codir-table th:nth-child(1){width:13%}app-codirs-page .codir-table th:nth-child(2){width:23%}app-codirs-page .codir-table th:nth-child(3){width:12%}app-codirs-page .codir-table th:nth-child(4){width:15%}app-codirs-page .codir-table th:nth-child(5){width:19%}app-codirs-page .codir-table th:nth-child(6){width:11%}app-codirs-page .codir-table th:nth-child(7){width:7%}app-codirs-page .codir-title-line{display:flex;align-items:center;justify-content:space-between;gap:.4rem}app-directions-page .overlay{position:fixed;z-index:50;inset:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0a1f2d57;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}app-directions-page .editor{display:flex;flex-direction:column;width:min(34rem,100%);max-height:calc(100vh - 2rem);overflow:hidden;border:1px solid rgba(220,227,232,.9);border-radius:1rem;background:var(--ec-surface);box-shadow:0 24px 70px #0a1f2d38;animation:direction-pop-in .18s ease-out}app-directions-page .editor>header{display:flex;align-items:center;justify-content:space-between;padding:1.15rem 1.3rem;border-bottom:1px solid var(--ec-border)}app-directions-page .editor>header span{color:var(--ec-primary);font-size:.61rem;font-weight:620;letter-spacing:.09em}app-directions-page .editor>header h2{margin:.12rem 0 0;font-size:1.1rem;font-weight:620}app-directions-page .editor>header button{display:grid;place-items:center;width:2rem;height:2rem;border:0;border-radius:.5rem;background:transparent;color:var(--ec-muted);cursor:pointer}app-directions-page .editor>header button:hover{background:var(--ec-canvas);color:var(--ec-text)}app-directions-page .editor form{display:flex;flex:1;min-height:0;flex-direction:column}app-directions-page .editor-body{display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:1.3rem}app-directions-page .editor-body label{display:grid;gap:.38rem;margin-top:1rem;color:#334a57;font-size:.76rem;font-weight:610}app-directions-page .editor-body label:first-of-type{margin-top:0}app-directions-page .editor-body label>.field-label{display:flex;align-items:center;gap:.25rem;color:#3d4a53}app-directions-page .editor-body .field-label b{color:#b34e45;font-weight:580}app-directions-page .editor-body .field-label em{margin-left:auto;color:var(--ec-muted);font-size:.61rem;font-style:normal;font-weight:450}app-directions-page .editor-body input,app-directions-page .editor-body textarea{width:100%;padding:.62rem .7rem;border:1px solid var(--ec-border);border-radius:.58rem;background:#fff;color:var(--ec-text);font-size:.75rem;outline:0}app-directions-page .editor-body textarea{resize:vertical}app-directions-page .editor-body input:focus,app-directions-page .editor-body textarea:focus{border-color:var(--ec-primary);box-shadow:0 0 0 3px var(--ec-primary-soft)}app-directions-page .editor-body input:disabled,app-directions-page .editor-body textarea:disabled{background:#f5f7f8;color:#687780}app-directions-page .field-hint,app-directions-page .field-error{display:flex;align-items:center;gap:.35rem;margin-top:.3rem;font-size:.62rem}app-directions-page .field-hint{color:var(--ec-muted)}app-directions-page .field-error{color:#a3423a}app-directions-page .character-count{margin-top:.3rem;color:var(--ec-muted);font-size:.6rem;text-align:right}app-directions-page .read-only-note,app-directions-page .form-error,app-directions-page .dependency-note{display:flex;align-items:flex-start;gap:.45rem;padding:.65rem .7rem;border-radius:.6rem;font-size:.68rem}app-directions-page .read-only-note{margin-bottom:.2rem;background:#f1f6f8;color:#456270}app-directions-page .form-error{margin-top:1rem;background:#fff3f2;color:#963e36}app-directions-page .editor dl{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin:1.25rem 0 0;padding-top:1rem;border-top:1px solid var(--ec-border)}app-directions-page .editor dl div{display:grid;gap:.1rem}app-directions-page .editor dt{color:var(--ec-muted);font-size:.6rem}app-directions-page .editor dd{margin:0;font-size:.72rem}app-directions-page .editor footer,app-directions-page .confirmation footer{display:flex;justify-content:flex-end;gap:.6rem;padding:1rem 1.3rem;border-top:1px solid var(--ec-border)}app-directions-page .secondary{display:inline-flex;align-items:center;justify-content:center;min-height:2.3rem;padding:.48rem .75rem;border:1px solid var(--ec-border);border-radius:.58rem;background:#fff;color:var(--ec-text);font-size:.72rem;cursor:pointer}app-directions-page .confirmation-overlay{align-items:center;justify-content:center;padding:1rem}app-directions-page .confirmation{width:min(27rem,100%);padding:1.35rem;border-radius:.9rem;background:#fff;box-shadow:0 22px 65px #0a1f2d38;animation:direction-pop-in .16s ease-out}app-directions-page .confirmation-icon{display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:.75rem;background:#fff4ed;color:#a75c2d}app-directions-page .confirmation-icon.activation{background:#edf8f4;color:#237a57}app-directions-page .confirmation h2{margin:.9rem 0 .35rem;font-size:1.05rem;font-weight:620}app-directions-page .confirmation>p{margin:0;color:var(--ec-muted);font-size:.74rem}app-directions-page .confirmation>p strong{color:var(--ec-text)}app-directions-page .dependency-note{margin-top:1rem;background:#fff8eb;color:#81541e}app-directions-page .confirmation footer{margin:1.2rem -1.35rem -1.35rem;padding-bottom:1.1rem}app-directions-page .confirm-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.3rem;padding:.48rem .75rem;border:1px solid #ad5b4f;border-radius:.58rem;background:#ad5b4f;color:#fff;font-size:.72rem;cursor:pointer}app-directions-page .confirm-button.activate{border-color:var(--ec-success);background:var(--ec-success)}app-directions-page .toast{position:fixed;z-index:70;right:1.5rem;bottom:1.5rem;display:flex;align-items:center;gap:.5rem;max-width:min(26rem,100vw - 2rem);padding:.78rem .9rem;border:1px solid #ccebdd;border-radius:.65rem;background:#f0f9f5;color:#176447;box-shadow:0 12px 35px #133b2d29;font-size:.7rem}app-directions-page .toast.error{border-color:#f1d0cd;background:#fff3f2;color:#963e36}app-directions-page .editor{width:min(46rem,100%);height:min(46rem,100dvh - 2rem)}app-directions-page .editor>header,app-directions-page .editor form>footer{flex:0 0 auto}app-directions-page .editor form{overflow:hidden}app-directions-page .editor-body{min-height:0;gap:.9rem;overscroll-behavior:contain;scrollbar-gutter:stable}app-directions-page .editor-body>*{flex:0 0 auto;min-width:0}app-directions-page .direction-form-section{overflow:hidden;border:1px solid #d8e3e8;border-radius:.82rem;background:#fff;box-shadow:0 3px 14px #163d5309}app-directions-page .direction-section-heading{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.68rem;padding:.72rem .82rem;border-bottom:1px solid #dbe6ea;background:#f2f6f8}app-directions-page .direction-section-heading>.direction-section-index{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.58rem;background:#17577c;color:#fff;font-size:.66rem;font-weight:680;letter-spacing:.02em}app-directions-page .direction-section-heading h3{margin:0;color:#244553;font-size:.88rem;font-weight:650;letter-spacing:-.012em}app-directions-page .direction-section-heading p{margin:.12rem 0 0;color:#6e808a;font-size:.66rem;font-weight:460;line-height:1.4}app-directions-page .direction-section-body{padding:.85rem}app-directions-page .direction-form-grid{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:.75rem}app-directions-page .direction-form-grid label,app-directions-page .direction-section-body>label{min-width:0;margin-top:0}app-directions-page .direction-form-grid label>small,app-directions-page .direction-section-body>label>small{color:#788891;font-size:.61rem;font-weight:470;line-height:1.4}app-directions-page .direction-section-body input[aria-invalid=true],app-directions-page .direction-section-body textarea[aria-invalid=true]{border-color:#bd665c;background:snow}app-directions-page .direction-outcome{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.58rem;margin-top:.72rem;padding:.65rem .7rem;border:1px solid #d9e8ee;border-radius:.62rem;background:#f4f8fa;color:#385766}app-directions-page .direction-outcome>span{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.5rem;background:#e3eff4;color:#17577c}app-directions-page .direction-outcome strong{display:block;font-size:.68rem;font-weight:640}app-directions-page .direction-outcome p{margin:.08rem 0 0;color:#6d7f88;font-size:.62rem;line-height:1.45}app-directions-page .editor form>footer{align-items:center;background:#fbfcfc}app-directions-page .editor-state{display:inline-flex;align-items:center;gap:.42rem;color:#74828a;font-size:.62rem;font-weight:540}app-directions-page .editor-state i{width:.42rem;height:.42rem;border-radius:50%;background:#78a58f;box-shadow:0 0 0 3px #e6f1eb}app-directions-page .editor-state.pending{color:#86612b}app-directions-page .editor-state.pending i{background:#d19a37;box-shadow:0 0 0 3px #f8edd5}app-directions-page .editor-footer-spacer{flex:1 1 auto}app-directions-page .director-modal{height:min(52rem,100dvh - 2rem);max-height:calc(100dvh - 2rem)}app-directions-page .director-modal>header,app-directions-page .director-modal>.director-modal-footer{flex:0 0 auto}app-directions-page .director-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:1rem 1.15rem}app-directions-page .director-body>*{min-width:0}app-directions-page .director-section{overflow:hidden;border:1px solid #d8e3e8;border-radius:.82rem;background:#fff;box-shadow:0 3px 14px #163d5309}app-directions-page .director-section+.director-section{margin-top:.85rem;padding-top:0;border-top:1px solid #d8e3e8}app-directions-page .director-section-title{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;margin:0;padding:.7rem .8rem;border-bottom:1px solid #dbe6ea;background:#f2f6f8}app-directions-page .director-section-index{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.58rem;background:#17577c;color:#fff;font-size:.66rem;font-weight:680}app-directions-page .director-section-title h3{font-size:.84rem}app-directions-page .director-section-title p{line-height:1.4}app-directions-page .director-section-content{padding:.82rem}app-directions-page .director-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}app-directions-page .director-form-grid>*{min-width:0}app-directions-page .director-modal input[aria-invalid=true],app-directions-page .director-modal select[aria-invalid=true]{border-color:#bd665c;background:snow}@keyframes direction-pop-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media(max-width:700px){app-directions-page .director-modal{height:calc(100dvh - 1rem);max-height:calc(100dvh - 1rem)}app-directions-page .director-form-grid,app-directions-page .appointment-grid{grid-template-columns:1fr}app-directions-page .director-section-title{grid-template-columns:auto minmax(0,1fr)}app-directions-page .director-section-title .current-badge{grid-column:2;justify-self:start}}@media(max-width:600px){app-directions-page .overlay{padding:.75rem}app-directions-page .editor{width:100%;height:calc(100dvh - 1.5rem);max-height:calc(100dvh - 1.5rem);border-radius:.85rem}app-directions-page .direction-form-grid{grid-template-columns:1fr}app-directions-page .editor form>footer{flex-wrap:wrap}app-directions-page .editor-state{width:100%}app-directions-page .toast{right:1rem;bottom:1rem;left:1rem}}@media(prefers-reduced-motion:reduce){app-directions-page .editor,app-directions-page .confirmation{animation:none}}.ecodir-section-number,app-communications-page .editor .form-section>.section-heading>span:first-child,app-decisions-page .decision-modal .form-section>.section-title>span:first-child,app-documents-page .history-section>.section-title>span:first-child,app-validations-page .content-section>.section-title>span:first-child,app-validations-page .history-panel>.section-title>span:first-child{display:grid!important;place-items:center!important;flex:0 0 auto!important;width:2rem!important;min-width:2rem!important;height:2rem!important;padding:0!important;border:0!important;border-radius:.58rem!important;background:#17577c!important;color:#fff!important;font-size:.66rem!important;font-weight:680!important;line-height:1!important;letter-spacing:.02em!important;box-shadow:0 3px 8px #17577c29!important;white-space:nowrap!important}.user-dialog .p-dialog-content{padding-top:.4rem}.user-dialog .p-dialog-header{padding-bottom:.9rem}.user-dialog .user-form{display:grid;gap:.9rem}.user-dialog .read-only-note,.user-dialog .form-error{display:flex;align-items:center;gap:.45rem;padding:.65rem .7rem;border-radius:.6rem;background:#f1f6f8;color:#456270;font-size:.68rem}.user-dialog .form-error{background:#fff3f2;color:#963e36}.user-dialog .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.user-dialog .form-grid label{display:grid;gap:.35rem;color:#3d4a53;font-size:.7rem;font-weight:580}.user-dialog .form-grid label.wide{grid-column:1/-1}.user-dialog .form-grid label span b,.user-dialog fieldset legend b{color:#b34e45}.user-dialog .form-grid input,.user-dialog .form-select select{width:100%;padding:.62rem .7rem;border:1px solid var(--ec-border);border-radius:.58rem;background:#fff;color:var(--ec-text);font-size:.74rem;outline:0}.user-dialog .form-grid input:focus,.user-dialog .form-select select:focus{border-color:var(--ec-primary);box-shadow:0 0 0 3px var(--ec-primary-soft)}.user-dialog .form-grid input:disabled,.user-dialog .form-select select:disabled{background:#f5f7f8;color:#687780}.user-dialog .select-wrap{position:relative;display:flex;align-items:center;width:100%}.user-dialog .select-wrap ecodir-icon{position:absolute;right:.55rem;color:var(--ec-muted);pointer-events:none}.user-dialog .form-select select{max-width:none;padding-right:2rem;appearance:none}.user-dialog .field-error{color:#a3423a;font-size:.62rem}.user-dialog fieldset{margin:0;padding:.8rem;border:1px solid var(--ec-border);border-radius:.7rem}.user-dialog fieldset legend{padding:0 .3rem;color:#3d4a53;font-size:.7rem;font-weight:580}.user-dialog fieldset legend em{margin-left:.3rem;padding:.14rem .34rem;border-radius:.35rem;background:#edf5f8;color:#446b7d;font-size:.56rem;font-style:normal;font-weight:570}.user-dialog fieldset>p{margin:0 0 .65rem;color:var(--ec-muted);font-size:.65rem}.user-dialog .role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.user-dialog .role-grid label{cursor:pointer}.user-dialog .role-grid input{position:absolute;opacity:0;pointer-events:none}.user-dialog .role-grid span{display:flex;align-items:center;gap:.4rem;padding:.48rem .55rem;border:1px solid var(--ec-border);border-radius:.5rem;color:var(--ec-muted);font-size:.66rem}.user-dialog .role-grid ecodir-icon{opacity:0}.user-dialog .role-grid label.checked span{border-color:#b8d5e2;background:var(--ec-primary-soft);color:var(--ec-primary)}.user-dialog .role-grid label.checked ecodir-icon{opacity:1}.user-dialog .role-grid label.inactive:not(.checked){cursor:not-allowed;opacity:.58}.user-dialog .account-meta{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:.8rem;padding:.75rem;border-radius:.65rem;background:#f6f8f9}.user-dialog .account-meta div{display:grid}.user-dialog .account-meta span{color:var(--ec-muted);font-size:.59rem}.user-dialog .account-meta strong{font-size:.68rem;font-weight:580}.user-dialog .account-meta button{display:flex;align-items:center;gap:.4rem;padding:.45rem .55rem;border:1px solid var(--ec-border);border-radius:.5rem;background:#fff;color:var(--ec-primary);font-size:.65rem;cursor:pointer}.user-dialog .p-dialog-footer .p-button:not(.p-button-text){border-color:var(--ec-primary);background:var(--ec-primary);color:#fff}.user-dialog .p-dialog-footer .p-button:not(.p-button-text):hover{border-color:#204f69;background:#204f69}.status-dialog .p-dialog-header{display:none}.status-dialog .p-dialog-content{padding-top:1.35rem}.status-dialog .status-confirmation{text-align:center}.status-dialog .confirmation-icon{display:grid;place-items:center;width:2.8rem;height:2.8rem;margin:0 auto;border-radius:.75rem;background:#fff4ed;color:#a75c2d}.status-dialog .confirmation-icon.activation{background:#edf8f4;color:#237a57}.status-dialog .status-confirmation h2{margin:.8rem 0 .3rem;font-size:1.05rem}.status-dialog .status-confirmation p{margin:0;color:var(--ec-muted);font-size:.74rem}@media(max-width:700px){.user-dialog .form-grid,.user-dialog .role-grid{grid-template-columns:1fr}.user-dialog .form-grid label.wide{grid-column:auto}.user-dialog .account-meta{grid-template-columns:1fr}}.role-dialog{max-height:92vh}.role-dialog .p-dialog-header{padding-bottom:.85rem}.role-dialog .p-dialog-content{overflow-y:auto;padding-top:.35rem}.role-dialog .role-form{display:grid;gap:1rem}.role-dialog .role-heading{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.9rem;border:1px solid #0f344a;border-radius:.75rem;background:#0f344a;color:#fff}.role-dialog .role-symbol{display:grid;place-items:center;width:2.65rem;height:2.65rem;border-radius:.7rem;background:#ffffff1a;color:#fff;box-shadow:0 4px 14px #0516211f}.role-dialog .role-heading>div>span{color:#b8ced9;font-size:.61rem;font-weight:680;letter-spacing:.1em}.role-dialog .role-heading h2{margin:.12rem 0 0;color:#fff;font-size:1.08rem;font-weight:650}.role-dialog .role-heading dl{display:flex;gap:1.2rem;margin:0}.role-dialog .role-heading dl div{display:grid;justify-items:end}.role-dialog .role-heading dt{color:#b8ced9;font-size:.61rem}.role-dialog .role-heading dd{color:#fff}.role-dialog .role-heading dd{margin:0;color:var(--ec-primary);font-size:.86rem;font-weight:620}.role-dialog .read-only-note,.role-dialog .form-error{display:flex;align-items:center;gap:.45rem;padding:.65rem .7rem;border-radius:.6rem;background:#f1f6f8;color:#456270;font-size:.7rem}.role-dialog .form-error{background:#fff3f2;color:#963e36}.role-dialog .description-field{display:grid;gap:.35rem;color:#3d4a53;font-size:.72rem;font-weight:580}.role-dialog .description-field b{color:#b34e45}.role-dialog .description-field textarea{width:100%;resize:vertical;padding:.62rem .7rem;border:1px solid var(--ec-border);border-radius:.58rem;background:#fff;color:var(--ec-text);font-size:.75rem;line-height:1.5;outline:0}.role-dialog .description-field textarea:focus{border-color:var(--ec-primary);box-shadow:0 0 0 3px var(--ec-primary-soft)}.role-dialog .description-field textarea:disabled{background:#f5f7f8;color:#687780}.role-dialog .field-error{color:#a3423a;font-size:.64rem}.role-dialog .permissions-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding-top:.15rem}.role-dialog .permissions-heading h3{margin:0;font-size:.88rem;font-weight:620}.role-dialog .permissions-heading p{margin:.18rem 0 0;color:var(--ec-muted);font-size:.66rem}.role-dialog .permissions-heading>strong{color:var(--ec-primary);font-size:.68rem;font-weight:620;white-space:nowrap}.role-dialog .permission-groups{display:grid;gap:.55rem}.role-dialog details{overflow:hidden;border:1px solid var(--ec-border);border-radius:.68rem;background:#fff}.role-dialog summary{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.65rem;padding:.7rem .8rem;cursor:pointer;list-style:none}.role-dialog summary::-webkit-details-marker{display:none}.role-dialog summary div{display:grid;gap:.08rem}.role-dialog summary strong{color:var(--ec-text);font-size:.73rem;font-weight:600}.role-dialog summary small{color:var(--ec-muted);font-size:.62rem}.role-dialog summary>span{padding:.2rem .4rem;border-radius:.38rem;background:#f0f4f7;color:#51626f;font-size:.6rem;font-weight:600}.role-dialog summary>ecodir-icon{color:var(--ec-muted);transition:transform .16s ease}.role-dialog details[open] summary{border-bottom:1px solid var(--ec-border);background:#fafcfd}.role-dialog details[open] summary>ecodir-icon{transform:rotate(180deg)}.role-dialog .group-content{padding:.65rem .75rem .75rem}.role-dialog .group-content>button{display:block;margin:0 0 .5rem auto;padding:.25rem .4rem;border:0;background:transparent;color:var(--ec-primary);font-size:.61rem;font-weight:570;cursor:pointer}.role-dialog .permission-list{display:grid;grid-template-columns:1fr 1fr;gap:.42rem}.role-dialog .permission-list label{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.45rem;min-width:0;padding:.5rem .55rem;border:1px solid var(--ec-border);border-radius:.5rem;background:#fff;cursor:pointer}.role-dialog .permission-list label.checked{border-color:#b8d5e2;background:#f2f8fb}.role-dialog .permission-list label.disabled{cursor:not-allowed;opacity:.76}.role-dialog .permission-list input{position:absolute;opacity:0;pointer-events:none}.role-dialog .permission-check{display:grid;place-items:center;width:1.12rem;height:1.12rem;border:1px solid #bdc9d0;border-radius:.28rem;background:#fff;color:#fff}.role-dialog label.checked .permission-check{border-color:var(--ec-primary);background:var(--ec-primary)}.role-dialog .permission-copy{display:grid;min-width:0;gap:.05rem}.role-dialog .permission-copy strong{overflow:hidden;color:#35434c;font-size:.66rem;font-weight:590;text-overflow:ellipsis;white-space:nowrap}.role-dialog .permission-copy small{overflow:hidden;color:var(--ec-muted);font-size:.57rem;text-overflow:ellipsis;white-space:nowrap}.role-dialog .level{padding:.18rem .3rem;border-radius:.32rem;background:#eef3f5;color:#5c6c76;font-size:.51rem;font-weight:620;letter-spacing:.035em}.role-dialog .level[data-level=CONTRIBUTION]{background:#edf5fa;color:#35647c}.role-dialog .level[data-level=GESTION]{background:#fff3e7;color:#8b541e}.role-dialog .sensitive{display:grid;place-items:center;color:#a36132}.role-dialog .p-dialog-footer{display:flex;align-items:center}.role-dialog .role-footer-spacer{flex:1}.role-dialog .p-dialog-footer .p-button:not(.p-button-text){border-color:var(--ec-primary);background:var(--ec-primary);color:#fff}.role-dialog .p-dialog-footer .p-button:not(.p-button-text):hover{border-color:#204f69;background:#204f69}app-roles-page .toast{position:fixed;z-index:120;right:1.5rem;bottom:1.5rem;display:flex;align-items:center;gap:.5rem;max-width:min(28rem,100vw - 2rem);padding:.78rem .9rem;border:1px solid #ccebdd;border-radius:.65rem;background:#f0f9f5;color:#176447;box-shadow:0 12px 35px #133b2d29;font-size:.72rem}app-roles-page .toast.error{border-color:#f1d0cd;background:#fff3f2;color:#963e36}@media(max-width:700px){.role-dialog .role-heading{grid-template-columns:auto 1fr}.role-dialog .role-heading dl{grid-column:1/-1;justify-content:space-between}.role-dialog .permission-list{grid-template-columns:1fr}.role-dialog .permissions-heading{align-items:flex-start;flex-direction:column}.role-dialog .p-dialog-footer{flex-wrap:wrap}.role-dialog .role-footer-spacer{display:none}app-roles-page .toast{right:1rem;bottom:1rem;left:1rem}}table.ecodir-data-table td{font-size:.68rem}table.ecodir-data-table td>strong,table.ecodir-data-table .table-title-ellipsis{font-size:.73rem}table.ecodir-data-table td>small{font-size:.58rem}table.ecodir-data-table{width:100%;min-width:0!important;table-layout:fixed}table.ecodir-data-table th,table.ecodir-data-table td{min-width:0;overflow:hidden;text-overflow:ellipsis}table.ecodir-data-table th{white-space:nowrap}table.ecodir-data-table th:last-child,table.ecodir-data-table td:last-child{width:4.75rem}table.ecodir-data-table td>strong,table.ecodir-data-table td>small{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}table .table-title-ellipsis{display:block;min-width:0;overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}@media(max-width:680px){table.ecodir-data-table{min-width:44rem!important}}app-reference-types-page .feedback-state{display:grid;justify-items:center;gap:.35rem;padding:3.5rem 1rem;text-align:center}app-reference-types-page .feedback-icon{display:grid;place-items:center;width:2.6rem;height:2.6rem;margin-bottom:.2rem;border-radius:.75rem;background:var(--ec-primary-soft);color:var(--ec-primary)}app-reference-types-page .feedback-icon.error{background:#fff3f2;color:#963e36}app-reference-types-page .feedback-state strong{font-size:.84rem;font-weight:610}app-reference-types-page .feedback-state p{margin:0;color:var(--ec-muted);font-size:.73rem}app-reference-types-page .feedback-state button{display:flex;align-items:center;gap:.4rem;margin-top:.5rem;padding:.42rem .6rem;border:1px solid var(--ec-border);border-radius:.5rem;background:#fff;color:var(--ec-primary);font-size:.7rem;cursor:pointer}app-reference-types-page .overlay{position:fixed;z-index:50;inset:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0a1f2d57;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}app-reference-types-page .editor{display:flex;flex-direction:column;width:min(40rem,100%);max-height:calc(100vh - 2rem);overflow:hidden;border:1px solid rgba(220,227,232,.9);border-radius:1rem;background:var(--ec-surface);box-shadow:0 24px 70px #0a1f2d38;animation:direction-pop-in .18s ease-out}app-reference-types-page .editor>header{display:flex;align-items:center;justify-content:space-between;padding:1.05rem 1.25rem;border-bottom:1px solid var(--ec-border)}app-reference-types-page .editor>header span{color:var(--ec-primary);font-size:.61rem;font-weight:620;letter-spacing:.09em}app-reference-types-page .editor>header h2{margin:.12rem 0 0;font-size:1.08rem;font-weight:620}app-reference-types-page .editor>header button{display:grid;place-items:center;width:2rem;height:2rem;border:0;border-radius:.5rem;background:transparent;color:var(--ec-muted);cursor:pointer}app-reference-types-page .editor>header button:hover{background:var(--ec-canvas);color:var(--ec-text)}app-reference-types-page .editor form{display:flex;flex:1;min-height:0;flex-direction:column}app-reference-types-page .editor-body{display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:1.2rem 1.25rem}app-reference-types-page .form-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:.75rem}app-reference-types-page .editor-body label{display:grid;gap:.36rem;margin-top:.9rem;color:#334a57;font-size:.76rem;font-weight:610}app-reference-types-page .form-grid label{margin-top:0}app-reference-types-page .field-label{display:flex;align-items:center;gap:.25rem}app-reference-types-page .field-label b{color:#b34e45}app-reference-types-page .field-label em{margin-left:auto;color:var(--ec-muted);font-size:.64rem;font-style:normal;font-weight:500}app-reference-types-page .editor-body input,app-reference-types-page .editor-body textarea,app-reference-types-page .editor-body select{width:100%;padding:.62rem .7rem;border:1px solid var(--ec-border);border-radius:.58rem;background:#fff;color:var(--ec-text);font-size:.75rem;outline:0}app-reference-types-page .editor-body textarea{resize:vertical}app-reference-types-page .editor-body input:focus,app-reference-types-page .editor-body textarea:focus,app-reference-types-page .editor-body select:focus{border-color:var(--ec-primary);box-shadow:0 0 0 3px var(--ec-primary-soft)}app-reference-types-page .editor-body input:disabled,app-reference-types-page .editor-body textarea:disabled,app-reference-types-page .editor-body select:disabled{background:#f5f7f8;color:#687780}app-reference-types-page .editor-body .select-wrap select{appearance:none;padding-right:2rem}app-reference-types-page .field-hint,app-reference-types-page .field-error{display:flex;align-items:center;gap:.35rem;margin-top:.3rem;font-size:.62rem}app-reference-types-page .field-hint{color:var(--ec-muted)}app-reference-types-page .field-error{color:#a3423a}app-reference-types-page .character-count{margin-top:.25rem;color:var(--ec-muted);font-size:.6rem;text-align:right}app-reference-types-page .configuration-fields{margin-top:1rem;padding:.8rem;border:1px solid #d7e4e9;border-radius:.72rem;background:#f5f8fa}app-reference-types-page .configuration-heading{display:flex;align-items:center;gap:.55rem;margin-bottom:.75rem}app-reference-types-page .configuration-heading>span{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.52rem;background:#fff;color:var(--ec-primary)}app-reference-types-page .configuration-heading>div{display:grid;gap:.02rem}app-reference-types-page .configuration-heading strong{font-size:.72rem;font-weight:600}app-reference-types-page .configuration-heading small{color:var(--ec-muted);font-size:.61rem}app-reference-types-page .configuration-fields .form-grid{grid-template-columns:1fr 1fr}app-reference-types-page .document-fields label>small{color:var(--ec-muted);font-size:.58rem;font-weight:450}app-reference-types-page .input-suffix{position:relative}app-reference-types-page .input-suffix input{padding-right:4.2rem}app-reference-types-page .input-suffix span{position:absolute;top:50%;right:.7rem;transform:translateY(-50%);color:var(--ec-muted);font-size:.62rem;pointer-events:none}app-reference-types-page .read-only-note,app-reference-types-page .form-error,app-reference-types-page .dependency-note{display:flex;align-items:flex-start;gap:.45rem;padding:.65rem .7rem;border-radius:.6rem;font-size:.68rem}app-reference-types-page .read-only-note{margin-bottom:.8rem;background:#f1f6f8;color:#456270}app-reference-types-page .form-error{margin-top:1rem;background:#fff3f2;color:#963e36}app-reference-types-page .editor dl{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin:1rem 0 0;padding-top:.85rem;border-top:1px solid var(--ec-border)}app-reference-types-page .editor dl div{display:grid;gap:.1rem}app-reference-types-page .editor dt{color:var(--ec-muted);font-size:.6rem}app-reference-types-page .editor dd{margin:0;font-size:.72rem}app-reference-types-page .editor footer,app-reference-types-page .confirmation footer{display:flex;justify-content:flex-end;gap:.6rem;padding:.9rem 1.25rem;border-top:1px solid var(--ec-border)}app-reference-types-page .secondary{display:inline-flex;align-items:center;justify-content:center;min-height:2.3rem;padding:.48rem .75rem;border:1px solid var(--ec-border);border-radius:.58rem;background:#fff;color:var(--ec-text);font-size:.72rem;cursor:pointer}app-reference-types-page .confirmation{width:min(28rem,100%);padding:1.35rem;border-radius:.9rem;background:#fff;box-shadow:0 22px 65px #0a1f2d38;animation:direction-pop-in .16s ease-out}app-reference-types-page .confirmation-icon{display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:.75rem;background:#fff4ed;color:#a75c2d}app-reference-types-page .confirmation-icon.activation{background:#edf8f4;color:#237a57}app-reference-types-page .confirmation h2{margin:.9rem 0 .35rem;font-size:1.05rem;font-weight:620}app-reference-types-page .confirmation>p{margin:0;color:var(--ec-muted);font-size:.74rem}app-reference-types-page .confirmation>p strong{color:var(--ec-text)}app-reference-types-page .dependency-note{margin-top:1rem;background:#fff8eb;color:#81541e}app-reference-types-page .dependency-note.neutral{background:#eef5f8;color:#456270}app-reference-types-page .confirmation footer{margin:1.2rem -1.35rem -1.35rem;padding-bottom:1.1rem}app-reference-types-page .confirm-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.3rem;padding:.48rem .75rem;border:1px solid #ad5b4f;border-radius:.58rem;background:#ad5b4f;color:#fff;font-size:.72rem;cursor:pointer}app-reference-types-page .confirm-button.activate{border-color:var(--ec-success);background:var(--ec-success)}app-reference-types-page .toast{position:fixed;z-index:70;right:1.5rem;bottom:1.5rem;display:flex;align-items:center;gap:.5rem;max-width:min(28rem,100vw - 2rem);padding:.78rem .9rem;border:1px solid #ccebdd;border-radius:.65rem;background:#f0f9f5;color:#176447;box-shadow:0 12px 35px #133b2d29;font-size:.72rem}app-reference-types-page .toast.error{border-color:#f1d0cd;background:#fff3f2;color:#963e36}@media(max-width:620px){app-reference-types-page .form-grid,app-reference-types-page .configuration-fields .form-grid{grid-template-columns:1fr}app-reference-types-page .toast{right:1rem;bottom:1rem;left:1rem}}app-rubrics-page .feedback-state{display:grid;justify-items:center;gap:.35rem;padding:3.5rem 1rem;text-align:center}app-rubrics-page .feedback-icon{display:grid;place-items:center;width:2.6rem;height:2.6rem;margin-bottom:.2rem;border-radius:.75rem;background:var(--ec-primary-soft);color:var(--ec-primary)}app-rubrics-page .feedback-icon.error{background:#fff3f2;color:#963e36}app-rubrics-page .feedback-state strong{font-size:.84rem;font-weight:610}app-rubrics-page .feedback-state p{margin:0;color:var(--ec-muted);font-size:.73rem}app-rubrics-page .feedback-state button{display:flex;align-items:center;gap:.4rem;margin-top:.5rem;padding:.42rem .6rem;border:1px solid var(--ec-border);border-radius:.5rem;background:#fff;color:var(--ec-primary);font-size:.7rem;cursor:pointer}app-rubrics-page .overlay{position:fixed;z-index:50;inset:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0a1f2d57;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}app-rubrics-page .editor{display:flex;flex-direction:column;width:min(52rem,100%);max-height:calc(100vh - 2rem);overflow:hidden;border:1px solid rgba(220,227,232,.9);border-radius:1rem;background:var(--ec-surface);box-shadow:0 24px 70px #0a1f2d38;animation:direction-pop-in .18s ease-out}app-rubrics-page .editor>header{display:flex;align-items:center;justify-content:space-between;padding:1.05rem 1.25rem;border-bottom:1px solid var(--ec-border)}app-rubrics-page .editor>header span{color:var(--ec-primary);font-size:.61rem;font-weight:620;letter-spacing:.09em}app-rubrics-page .editor>header h2{margin:.12rem 0 0;font-size:1.08rem;font-weight:620}app-rubrics-page .editor>header button{display:grid;place-items:center;width:2rem;height:2rem;border:0;border-radius:.5rem;background:transparent;color:var(--ec-muted);cursor:pointer}app-rubrics-page .editor>header button:hover{background:var(--ec-canvas);color:var(--ec-text)}app-rubrics-page .editor form{display:flex;flex:1;min-height:0;flex-direction:column}app-rubrics-page .editor-body{display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:1.2rem 1.25rem}app-rubrics-page .form-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:.75rem}app-rubrics-page .editor-body label{display:grid;gap:.32rem;margin-top:.9rem;color:#3d4a53;font-size:.7rem;font-weight:580}app-rubrics-page .form-grid label{margin-top:0}app-rubrics-page .field-label{display:flex;align-items:center;gap:.25rem}app-rubrics-page .field-label b{color:#b34e45}app-rubrics-page .field-label em{margin-left:auto;color:var(--ec-muted);font-size:.61rem;font-style:normal;font-weight:450}app-rubrics-page .editor-body input:not([type=checkbox]),app-rubrics-page .editor-body textarea,app-rubrics-page .editor-body select{width:100%;padding:.62rem .7rem;border:1px solid var(--ec-border);border-radius:.58rem;background:#fff;color:var(--ec-text);font-size:.75rem;outline:0}app-rubrics-page .editor-body textarea{resize:vertical}app-rubrics-page .editor-body input:focus,app-rubrics-page .editor-body textarea:focus,app-rubrics-page .editor-body select:focus{border-color:var(--ec-primary);box-shadow:0 0 0 3px var(--ec-primary-soft)}app-rubrics-page .editor-body input:disabled,app-rubrics-page .editor-body textarea:disabled,app-rubrics-page .editor-body select:disabled{background:#f5f7f8;color:#687780}app-rubrics-page .parent-select select{appearance:none;padding-right:2rem}app-rubrics-page .parent-select ecodir-icon{position:absolute;right:.62rem;pointer-events:none}app-rubrics-page .field-hint,app-rubrics-page .field-error{display:flex;align-items:center;gap:.35rem;margin-top:.3rem;font-size:.62rem}app-rubrics-page .field-hint{color:var(--ec-muted)}app-rubrics-page .field-error{color:#a3423a}app-rubrics-page .character-count{margin-top:.25rem;color:var(--ec-muted);font-size:.6rem;text-align:right}app-rubrics-page .assignment-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--ec-border)}app-rubrics-page .assignment-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:.7rem}app-rubrics-page .assignment-heading h3{margin:0;font-size:.78rem;font-weight:610}app-rubrics-page .assignment-heading p{margin:.12rem 0 0;color:var(--ec-muted);font-size:.62rem}app-rubrics-page .assignment-heading>strong{color:var(--ec-primary);font-size:.63rem;font-weight:600}app-rubrics-page .assignment-grid{display:grid;grid-template-columns:1fr 1fr;gap:.42rem}app-rubrics-page .assignment-grid article{display:flex;align-items:center;justify-content:space-between;gap:.45rem;min-width:0;padding:.5rem .55rem;border:1px solid var(--ec-border);border-radius:.52rem;background:#fff}app-rubrics-page .assignment-grid article.assigned{border-color:#b8d5e2;background:#f2f8fb}app-rubrics-page .type-check{display:flex!important;align-items:center;min-width:0;gap:.4rem;margin:0!important;cursor:pointer}app-rubrics-page .type-check input{position:absolute;opacity:0;pointer-events:none}app-rubrics-page .type-check>span{display:grid;place-items:center;width:1.05rem;height:1.05rem;border:1px solid #bdc9d0;border-radius:.28rem;background:#fff;color:transparent}app-rubrics-page article.assigned .type-check>span{border-color:var(--ec-primary);background:var(--ec-primary);color:#fff}app-rubrics-page .type-check strong{overflow:hidden;color:#35434c;font-size:.64rem;font-weight:580;text-overflow:ellipsis;white-space:nowrap}app-rubrics-page .required-check{display:flex!important;align-items:center;gap:.3rem;margin:0!important;color:#516773!important;font-size:.55rem!important;white-space:nowrap;cursor:pointer}app-rubrics-page .required-check input{width:.8rem;height:.8rem;margin:0;accent-color:#17577c}app-rubrics-page .required-check.disabled{cursor:not-allowed;opacity:.45}app-rubrics-page .read-only-note,app-rubrics-page .form-error,app-rubrics-page .dependency-note{display:flex;align-items:flex-start;gap:.45rem;padding:.65rem .7rem;border-radius:.6rem;font-size:.68rem}app-rubrics-page .read-only-note{margin-bottom:.8rem;background:#f1f6f8;color:#456270}app-rubrics-page .form-error{margin-top:1rem;background:#fff3f2;color:#963e36}app-rubrics-page .editor dl{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem;margin:1rem 0 0;padding-top:.85rem;border-top:1px solid var(--ec-border)}app-rubrics-page .editor dl div{display:grid;gap:.1rem}app-rubrics-page .editor dt{color:var(--ec-muted);font-size:.58rem}app-rubrics-page .editor dd{margin:0;font-size:.7rem}app-rubrics-page .assignment-grid article.inactive-type:not(.assigned){opacity:.58}app-rubrics-page .type-check strong small{display:inline;margin-left:.3rem;padding:.1rem .25rem;border-radius:.25rem;background:#eef1f3;color:#737f87;font-size:.48rem;font-weight:560}app-rubrics-page .editor footer,app-rubrics-page .confirmation footer{display:flex;justify-content:flex-end;gap:.6rem;padding:.9rem 1.25rem;border-top:1px solid var(--ec-border)}app-rubrics-page .secondary{display:inline-flex;align-items:center;justify-content:center;min-height:2.3rem;padding:.48rem .75rem;border:1px solid var(--ec-border);border-radius:.58rem;background:#fff;color:var(--ec-text);font-size:.72rem;cursor:pointer}app-rubrics-page .confirmation{width:min(28rem,100%);padding:1.35rem;border-radius:.9rem;background:#fff;box-shadow:0 22px 65px #0a1f2d38;animation:direction-pop-in .16s ease-out}app-rubrics-page .confirmation-icon{display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:.75rem;background:#fff4ed;color:#a75c2d}app-rubrics-page .confirmation-icon.activation{background:#edf8f4;color:#237a57}app-rubrics-page .confirmation h2{margin:.9rem 0 .35rem;font-size:1.05rem;font-weight:620}app-rubrics-page .confirmation>p{margin:0;color:var(--ec-muted);font-size:.74rem}app-rubrics-page .confirmation>p strong{color:var(--ec-text)}app-rubrics-page .dependency-note{margin-top:.7rem;background:#fff8eb;color:#81541e}app-rubrics-page .dependency-note.neutral{background:#eef5f8;color:#456270}app-rubrics-page .confirmation footer{margin:1.2rem -1.35rem -1.35rem;padding-bottom:1.1rem}app-rubrics-page .confirm-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.3rem;padding:.48rem .75rem;border:1px solid #ad5b4f;border-radius:.58rem;background:#ad5b4f;color:#fff;font-size:.72rem;cursor:pointer}app-rubrics-page .confirm-button.activate{border-color:var(--ec-success);background:var(--ec-success)}app-rubrics-page .toast{position:fixed;z-index:70;right:1.5rem;bottom:1.5rem;display:flex;align-items:center;gap:.5rem;max-width:min(30rem,100vw - 2rem);padding:.78rem .9rem;border:1px solid #ccebdd;border-radius:.65rem;background:#f0f9f5;color:#176447;box-shadow:0 12px 35px #133b2d29;font-size:.72rem}app-rubrics-page .toast.error{border-color:#f1d0cd;background:#fff3f2;color:#963e36}@media(max-width:700px){app-rubrics-page .form-grid,app-rubrics-page .assignment-grid{grid-template-columns:1fr}app-rubrics-page .editor dl{grid-template-columns:1fr 1fr}app-rubrics-page .assignment-heading{align-items:flex-start;flex-direction:column}app-rubrics-page .toast{right:1rem;bottom:1rem;left:1rem}}:root{--ec-type-caption:.71rem;--ec-type-label:.75rem;--ec-type-body:.78rem;--ec-type-control:.76rem;--ec-type-table:.73rem}.content>:not(router-outlet):not(ecodir-page-navigation):not(app-dashboard) :where(p,li,dd){font-size:var(--ec-type-body)!important;line-height:1.55}.content>:not(router-outlet):not(ecodir-page-navigation):not(app-dashboard) :where(small,.field-hint,.field-error,.character-count){font-size:var(--ec-type-caption)!important;line-height:1.45}.content>:not(router-outlet):not(ecodir-page-navigation):not(app-dashboard) :where(label,legend,.field-label){font-size:var(--ec-type-label)!important;line-height:1.4}.content>:not(router-outlet):not(ecodir-page-navigation):not(app-dashboard) :where(input,select,textarea){font-size:var(--ec-type-control)!important;line-height:1.45}.content>:not(router-outlet):not(ecodir-page-navigation):not(app-dashboard) table.ecodir-data-table td{font-size:var(--ec-type-table)!important;line-height:1.4}.content>:not(router-outlet):not(ecodir-page-navigation):not(app-dashboard) table.ecodir-data-table td>strong,.content>:not(router-outlet):not(ecodir-page-navigation):not(app-dashboard) table.ecodir-data-table .table-title-ellipsis{font-size:.76rem!important;line-height:1.35}.content>:not(router-outlet):not(ecodir-page-navigation):not(app-dashboard) table.ecodir-data-table td>small{font-size:.66rem!important}.p-dialog :where(label,legend,.field-label){font-size:var(--ec-type-label)!important;line-height:1.4}.p-dialog :where(input,select,textarea){font-size:var(--ec-type-control)!important;line-height:1.45}.p-dialog :where(.field-hint,.field-error,.character-count){font-size:var(--ec-type-caption)!important;line-height:1.45}button.ecodir-blocked-action,a.ecodir-blocked-action{cursor:help!important;opacity:.72}button.ecodir-blocked-action:hover,a.ecodir-blocked-action:hover{opacity:.88}.codir-actions-page-layout{display:grid;grid-template-columns:17.5rem minmax(0,1fr);gap:1rem;align-items:start;transition:grid-template-columns .22s ease}.codir-actions-page-layout.actions-panel-collapsed{grid-template-columns:4.15rem minmax(0,1fr)}.codir-actions-page-content{min-width:0}@media(max-width:74rem){.codir-actions-page-layout{grid-template-columns:15.5rem minmax(0,1fr)}.codir-actions-page-layout.actions-panel-collapsed{grid-template-columns:4.15rem minmax(0,1fr)}}@media(max-width:60rem){.codir-actions-page-layout,.codir-actions-page-layout.actions-panel-collapsed{grid-template-columns:minmax(0,1fr)}ecodir-codir-actions-aside{grid-row:1}.codir-actions-page-content{grid-row:2}}@media print{.codir-actions-page-layout{display:block}}:where(form button[type=submit],form footer button,form .form-actions button,[role=dialog] footer button,.p-dialog-footer button):not([aria-label]){font-size:.9rem!important}:where(form button[type=submit],form footer button,form .form-actions button,[role=dialog] footer button,.p-dialog-footer button):not([aria-label])>ecodir-icon{display:none!important}@media(max-width:34rem){:where(form button[type=submit],form footer button,form .form-actions button,[role=dialog] footer button,.p-dialog-footer button):not([aria-label]):has(>ecodir-icon){display:inline-flex;align-items:center;justify-content:center;flex:0 0 2.65rem;width:2.65rem;min-width:2.65rem;min-height:2.55rem;padding-inline:0!important;gap:0!important;font-size:0!important}:where(form button[type=submit],form footer button,form .form-actions button,[role=dialog] footer button,.p-dialog-footer button):not([aria-label]):has(>ecodir-icon)>ecodir-icon{display:inline-flex!important;margin:0!important}:where(form button[type=submit],form footer button,form .form-actions button,[role=dialog] footer button,.p-dialog-footer button):not([aria-label]):has(>ecodir-icon)>span:not(.button-spinner){position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}}
