/* Controls keep their own visual language: rounded actions, underlined links,
 * tab selection, sort arrows and circular help. Never box every click target.
 * Keyboard focus remains visible independently of the resting presentation. */
@media screen{
 button,[role=button]{cursor:pointer}
 button.text-button,button.register-open,.dms-upload-status button,.dms-requirement-side button,.email-history-row-main button,button.element-name,[role=button]{text-decoration:underline;text-underline-offset:3px}
 button:focus-visible,[role=button]:focus-visible{outline:3px solid var(--clg-ui-focus,#549d87);outline-offset:2px}
 button:disabled,button[aria-disabled=true],[role=button][aria-disabled=true]{cursor:default}
}
/* Shared presentation tokens. Host themes retain their accepted colours and layouts. */
/* Approved Access value appearance, explicitly adopted by field consumers.
 * Labels, field tools and edit permissions keep their existing ownership. */
.clg-field-value,[data-field-id].clg-field-value{background:#f2f7fb;border:1px solid #e0e9ee;border-radius:4px;padding:2px 4px;color:#16322a;max-width:100%;overflow-wrap:anywhere}
.clg-field-value .clg-field-tools{max-width:100%;flex-wrap:wrap}
.register-search{display:flex;align-items:center;gap:7px;font-weight:600;margin:0}.register-search input{width:220px;max-width:100%;margin:0;padding:5px 8px;border:1px solid var(--clg-ui-line);border-radius:5px}.register-compact .register-tools{gap:8px;margin:4px 0 6px}.register-compact .register-count{margin-left:auto;margin-right:0;order:2}.register-compact .register-help summary{display:inline-grid;place-items:center;width:26px;height:26px;border:1px solid var(--clg-ui-line);border-radius:50%;list-style:none;font-weight:700}.register-compact .register-column-heading{display:flex;align-items:center;gap:3px}.register-compact .register-column-heading>button{display:inline-flex;width:auto;flex:1;min-width:0;gap:6px}.register-compact .register-column-heading .clg-field-tools{flex:none}.register-compact .register-scroll{max-height:calc(100vh - 230px)}@media(max-width:600px){.register-search{flex:1 1 100%}.register-search input{flex:1;width:auto;min-width:0}.register-compact .register-count{order:0}.register-compact .register-scroll{max-height:65vh}}
.clg-number-buttons{display:inline-flex;gap:8px;flex-wrap:nowrap;vertical-align:middle}.clg-number-buttons button.clg-number-button{box-sizing:border-box;width:48px;min-width:48px;min-height:48px;padding:0;font-size:1.5rem;line-height:1;border:1px solid currentColor;border-radius:7px;touch-action:manipulation}.clg-number-buttons button:focus-visible{outline:3px solid var(--clg-ui-focus);outline-offset:2px}.clg-number-control{display:inline-flex;flex-direction:column;align-items:flex-start;gap:8px}.clg-number-control input[type=number]{appearance:textfield;-moz-appearance:textfield}.clg-number-control input::-webkit-inner-spin-button,.clg-number-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.clg-number-control input{min-width:0}
.clg-screen-control.icon-action{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px}.clg-screen-control svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.clg-screen-control:focus-visible{outline:3px solid #549d87;outline-offset:3px}@media(pointer:coarse){.clg-screen-control.icon-action{min-width:44px;min-height:44px}}
:root{--clg-ui-ink:#173d35;--clg-ui-line:#d9e5df;--clg-ui-focus:#549d87;--clg-ui-radius:7px;--clg-ui-gap:8px;--clg-ui-danger:#b42318;--clg-ui-success:#23704f}
.register-tools{display:flex;align-items:center;gap:12px;margin:12px 0 7px;font-size:.8rem;flex-wrap:wrap}.register-count{margin-right:auto}.register-tools button,.register-pager button{font-size:.8rem;padding:5px 9px}.register-help{position:relative}.register-help summary{cursor:pointer;color:var(--clg-ui-ink)}.register-help[open]{flex-basis:100%;padding:12px;background:white;border:1px solid var(--clg-ui-line);order:3}.register-help dl{display:grid;grid-template-columns:minmax(110px,auto) 1fr;gap:6px}.register-help dd{margin:0}.register-help dt{font-weight:700}
.register-columns{position:relative}.register-columns>summary{cursor:pointer;list-style:none;border:1px solid #9fb4ad;border-radius:8px;background:#fff;padding:5px 10px;font-weight:700}.register-columns>summary::-webkit-details-marker{display:none}.register-columns>summary::before{content:"☷";margin-right:6px;color:var(--clg-ui-ink)}.register-column-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:4;min-width:240px;max-height:420px;overflow:auto;padding:12px;border:1px solid var(--clg-ui-line);border-radius:9px;background:#fff;box-shadow:0 8px 28px #173d3530}.register-column-menu fieldset{display:grid;gap:7px;margin:0 0 10px;padding:0;border:0}.register-column-menu legend{font-weight:800;margin-bottom:8px}.register-column-menu label{display:flex;align-items:center;gap:8px;white-space:nowrap}.register-column-menu input{display:inline;width:auto;margin:0}.register-column-menu button{width:100%}
.register-column-menu-wide{width:390px;min-width:0;max-width:calc(100vw - 32px);max-height:none;overflow:visible;padding:12px}.register-column-menu-wide .register-column-search{display:flex;align-items:stretch;flex-direction:column;gap:5px;font-weight:700}.register-column-menu-wide input[type=search]{box-sizing:border-box;width:100%;padding:7px 9px;font-size:.82rem;border:1px solid var(--clg-ui-line);border-radius:5px}.register-column-count{color:#526a62;margin:9px 0;font-size:.76rem}.register-column-menu-wide fieldset{display:block;margin-bottom:10px}.register-column-options{max-height:min(340px,50vh);overflow:auto;overscroll-behavior:contain;border-top:1px solid var(--clg-ui-line);border-bottom:1px solid var(--clg-ui-line)}.register-column-options label{align-items:flex-start;white-space:normal;padding:7px 6px;border-bottom:1px solid #edf2ef;cursor:pointer}.register-column-options label:hover{background:#f0f6f3}.register-column-options label[hidden]{display:none}.register-column-options input[type=checkbox]{flex:none;margin-top:3px}.register-column-options label>span{min-width:0;overflow-wrap:anywhere}.register-column-options strong{display:block;font-weight:600;font-size:.82rem}.register-column-options small{display:block;margin-top:2px;color:#5b7069;font-size:.71rem;font-family:ui-monospace,monospace}.register-column-actions{display:flex;gap:8px}.register-column-actions button{flex:1;width:auto}.register-column-options [data-columns-empty]{margin:14px 6px;color:#526a62}@media(pointer:coarse){.register-column-options label{min-height:44px;box-sizing:border-box}.register-column-options input[type=checkbox]{width:18px;height:18px}}
.register-scroll{border:1px solid var(--clg-ui-line);border-radius:7px;overflow:auto;max-height:calc(100vh - 310px);background:white}.register-table{border-collapse:separate;border-spacing:0;width:100%;font-size:.8rem;white-space:nowrap}.register-table th,.register-table td{padding:5px 8px;border-right:1px solid #e1e9e6;border-bottom:1px solid #e1e9e6;text-align:left;max-width:340px;overflow:hidden;text-overflow:ellipsis;height:32px}.register-table thead{position:sticky;top:0;z-index:1;background:#e6efeb}.register-table th{font-weight:700}.register-table th button{font-size:inherit;font-weight:700;display:flex;justify-content:space-between;gap:14px;width:100%;padding:2px 0;border:0;border-radius:0;background:transparent;text-align:left}.register-table th input{min-width:95px;font-size:.76rem;padding:4px 6px;margin:0;border-radius:4px;font-weight:400}.register-table th:first-child input{min-width:180px}.register-table tbody tr:nth-child(even){background:#f5f8f6}.register-table tbody tr{cursor:pointer}.register-table tbody tr:hover,.register-table tbody tr:focus-within{background:#dcece5}.register-open{padding:1px 5px;font-size:.75rem;border:0;background:transparent;color:var(--clg-ui-ink);text-decoration:underline}.register-table td:last-child{width:45px}.register-pager{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:8px;font-size:.8rem}.register-pager label{display:flex;gap:8px;align-items:center;margin-right:auto}.register-pager select{margin:0;width:auto;padding:4px}
.register-table .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:600px){.register-compact .register-tools{position:relative}.register-compact .register-columns{position:static}.register-compact .register-column-menu-wide{left:0;right:auto;width:min(390px,100%);max-width:none;box-sizing:border-box}}
[data-ui-action-state=working]{cursor:progress}[data-ui-action-state=failed],[data-ui-action-state=uncertain]{outline:2px solid var(--clg-ui-danger)}[data-ui-action-state=succeeded]{outline:2px solid var(--clg-ui-success)}
.register-tools :focus-visible,.register-table :focus-visible,.register-pager :focus-visible,[data-ui-tab-keyboard]:focus-visible{outline:3px solid var(--clg-ui-focus);outline-offset:2px}
@media(max-width:850px){.register-scroll{max-height:65vh}}@media(pointer:coarse){.register-tools button,.register-columns>summary,.register-open,.register-pager button,.register-table th button[data-sort]{min-height:44px}}
/* Tim's 5 October table preferences: compact help and browser-local widths. */
.register-table th[data-heading]{position:relative}
.register-table thead .clg-field-tools{gap:0;flex-wrap:nowrap}
.register-resize{position:absolute;right:0;top:0;height:100%;width:7px;cursor:col-resize;touch-action:none;border-right:2px solid transparent}
.register-resize:hover,.register-resize:focus{border-right-color:#28755c;background:#dcece6}
.register-appearance{border-top:1px solid #d6dfda;padding-top:8px;margin-top:8px}
.register-appearance p{font-size:12px;max-width:420px}.register-appearance-row{display:grid;grid-template-columns:minmax(0,1fr) 80px;gap:8px;padding:5px 0}.register-appearance-row label{display:grid;font-size:11px;overflow-wrap:anywhere}.register-appearance-row input{width:100%;min-width:0;padding:4px}.register-appearance [data-column-editors]{max-height:300px;overflow:auto}
@media(pointer:coarse){.register-table thead .clg-field-action{min-width:44px;min-height:44px}.register-resize{width:16px}}
/* Compact list density is shared; screens must not resize the field tools. */
.register-compact .register-table th input{box-sizing:border-box;min-width:0;width:100%}
.register-compact .register-column-heading>button{white-space:normal;overflow-wrap:normal;line-height:1.2;overflow:hidden}
@media(pointer:fine){.register-compact .register-table th{height:auto;padding:2px 8px;font-size:11px;line-height:14px}.register-compact .register-table th input{height:18px;min-height:18px;padding:1px 5px;font-size:10px}.register-compact .register-table td{height:auto;padding:5px 8px;font-size:11px;line-height:16px}.register-compact .register-open{font-size:11px;line-height:16px}}
button.clg-note-microphone{display:inline-grid;place-items:center;flex:none;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border:0;background:transparent;color:inherit;border-radius:50%;vertical-align:middle}button.clg-note-microphone svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}button.clg-note-microphone:focus-visible{outline:2px solid currentColor;outline-offset:2px}
/* Accepted shared task presentation, 13 October. Hosts use clg-standard-ui;
 * clg-task-surface remains compatible with the first Inspection consumer.
 * Business saves, permissions, field tools and specialized workflows keep their owners. */
:is(.clg-standard-ui,.clg-task-surface){--clg-task-secondary:#50675e;--clg-task-paper:#fff;--clg-task-value:#f2f7fb;font-size:16px;line-height:1.5;color:var(--clg-ui-ink)}
:is(.clg-standard-ui,.clg-task-surface) [hidden]{display:none!important}
:is(.clg-standard-ui,.clg-task-surface) h2{font-size:1.35rem;line-height:1.3;letter-spacing:-.02em;margin:0 0 8px}
:is(.clg-standard-ui,.clg-task-surface) h3{font-size:1.1rem;line-height:1.4;margin:0 0 8px}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-intro{font-size:14px;line-height:1.5;color:var(--clg-task-secondary);margin:0 0 16px;max-width:68ch}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-tabs{display:flex;flex-wrap:wrap;gap:20px;border-bottom:1px solid var(--clg-ui-line);margin:0 0 16px}
:is(.clg-standard-ui,.clg-task-surface) button.clg-task-tab{min-height:48px;border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;color:var(--clg-task-secondary);padding:10px 0;font-size:14px;font-weight:500}
:is(.clg-standard-ui,.clg-task-surface) button.clg-task-tab.active{color:var(--clg-ui-ink);border-bottom-color:var(--clg-ui-ink);font-weight:700}
:is(.clg-standard-ui,.clg-task-surface) .field{display:flex;flex-direction:column;align-items:stretch;min-width:0;gap:5px;margin:0}
:is(.clg-standard-ui,.clg-task-surface) .field-head{font-size:14px;line-height:1.4;font-weight:600;color:var(--clg-ui-ink)}
:is(.clg-standard-ui,.clg-task-surface) .field input:not([type=checkbox]):not([type=radio]),:is(.clg-standard-ui,.clg-task-surface) .field textarea,:is(.clg-standard-ui,.clg-task-surface) .field select{font-size:16px;font-weight:400;line-height:1.5;min-height:44px;border:1px solid #bfcec7;border-radius:5px;background:var(--clg-task-value);padding:9px 11px;color:var(--clg-ui-ink)}
:is(.clg-standard-ui,.clg-task-surface) .field textarea{min-height:88px}
:is(.clg-standard-ui,.clg-task-surface) .form-grid{gap:14px 18px}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-group{border:0;margin:0 0 16px;padding:0;min-width:0}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-group>legend{padding:0;margin-bottom:10px;width:100%}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-hint{font-size:14px;line-height:1.5;color:var(--clg-task-secondary);margin:7px 0 0}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-disclosure{margin-top:16px;border-top:1px solid var(--clg-ui-line);padding-top:10px}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-disclosure>summary{font-size:14px;font-weight:600;color:var(--clg-ui-ink);padding:7px 0;cursor:pointer}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-disclosure>div{padding-top:12px}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-value{background:var(--clg-task-value);padding:12px 14px;border-radius:5px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;font-weight:400;line-height:1.5}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--clg-ui-line);margin-top:16px;padding-top:12px}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-actions [role=status]{flex:1 1 180px;margin:0;font-size:14px;color:var(--clg-task-secondary)}
:is(.clg-standard-ui,.clg-task-surface) button.clg-action,:is(.clg-standard-ui,.clg-task-surface) a.clg-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 14px;background:#e9f1ec;color:var(--clg-ui-ink);border:1px solid #b7cdc1;border-radius:7px;font-size:14px;line-height:1.4;font-weight:600;text-decoration:none}
:is(.clg-standard-ui,.clg-task-surface) button.clg-action-primary{background:var(--clg-ui-ink);border-color:var(--clg-ui-ink);color:#fff}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-actions button.clg-action-primary{box-shadow:0 2px 0 #102b25}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-document{display:flex;gap:10px;align-items:center;min-height:48px;padding:12px 0;border-bottom:1px solid var(--clg-ui-line);font-size:16px;overflow-wrap:anywhere}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-document input{flex:none}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-work{padding:14px 0;border-bottom:1px solid var(--clg-ui-line)}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-work dl{display:grid;grid-template-columns:minmax(130px,1fr) minmax(0,2fr);gap:8px 16px;margin:12px 0 0;font-size:14px}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-work dt{font-weight:600}
:is(.clg-standard-ui,.clg-task-surface) .clg-task-work dd{margin:0;font-weight:400;overflow-wrap:anywhere}
.clg-readable-register .register-table{font-size:14px}
.clg-readable-register .register-table td,.clg-readable-register .register-table th{font-size:14px;line-height:1.4;padding:10px 12px;height:auto}
.clg-readable-register .register-table th input{font-size:14px;height:auto;min-height:34px;padding:6px 8px}
.clg-readable-register .register-table .register-open{font-size:14px;min-height:34px;line-height:1.4;padding:5px 9px}
.clg-readable-register .register-tools,.clg-readable-register .register-pager,.clg-readable-register .register-tools button,.clg-readable-register .register-pager button{font-size:14px}
.clg-readable-register .register-tools button,.clg-readable-register .register-pager button,.clg-readable-register .register-columns>summary{min-height:40px;padding:8px 12px;background:#e9f1ec;border:1px solid #b7cdc1;border-radius:7px;color:var(--clg-ui-ink)}
.clg-readable-register .register-table .register-open{min-height:44px;padding:8px 12px;border:1px solid var(--clg-ui-ink);border-radius:7px;background:var(--clg-ui-ink);color:#fff;text-decoration:none}
.clg-readable-register .register-search input{width:320px;min-height:44px;font-size:16px;font-weight:400}
@media(max-width:600px){.clg-readable-register .register-search input{width:100%;min-width:0}.clg-readable-register .register-table th:last-child,.clg-readable-register .register-table td:last-child{position:sticky;right:0;background:#fff;box-shadow:-4px 0 8px #173d3510}.clg-readable-register .register-table th:last-child{background:#e6efeb}}
@media(max-width:600px){:is(.clg-standard-ui,.clg-task-surface) .clg-task-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}:is(.clg-standard-ui,.clg-task-surface) button.clg-task-tab{text-align:left;white-space:normal}:is(.clg-standard-ui,.clg-task-surface) .form-grid{grid-template-columns:minmax(0,1fr)}:is(.clg-standard-ui,.clg-task-surface) .clg-task-work dl{grid-template-columns:minmax(0,1fr);gap:4px}:is(.clg-standard-ui,.clg-task-surface) .clg-task-work dd{margin-bottom:10px}}
/* Small visible pen, full keyboard/touch target. The owner retains edit/save rules. */
.clg-standard-ui button.clg-field-edit,.clg-task-surface button.clg-field-edit{display:inline-grid;place-items:center;flex:none;min-width:36px;min-height:44px;width:36px;padding:8px;border:1px solid transparent;border-radius:5px;background:transparent;color:#466c62;cursor:pointer}
.clg-field-edit svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.clg-field-edit:hover{background:#e9f1ec!important}.clg-field-edit:focus-visible{outline:3px solid #075e9c;outline-offset:1px}
/* Task bar stays within its host content column. The host reserves --clg-task-bar-space
 * and updates --clg-task-bar-left/right when its sidebar changes. No business state. */
.clg-task-bar{position:fixed;bottom:0;left:var(--clg-task-bar-left,0);right:var(--clg-task-bar-right,0);z-index:20;display:flex;align-items:center;justify-content:space-between;gap:8px 20px;min-height:58px;box-sizing:border-box;padding:6px 18px calc(6px + env(safe-area-inset-bottom));border-top:1px solid #b7cdc1;background:#fff;box-shadow:0 -3px 12px #173d3509;color:#173d35;font:400 14px/1.4 system-ui,sans-serif}
.clg-task-bar-identity{display:flex;align-items:center;gap:10px;flex:1;min-width:0;overflow-wrap:anywhere}
.clg-task-bar-identity small{color:#63776e;font-size:12px}
.clg-task-bar-state{padding:3px 8px;border-radius:999px;background:#edf2f2;white-space:nowrap}
.clg-task-bar-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap;margin-left:auto}
.clg-task-finish{display:inline-flex;align-items:center;gap:5px;margin-left:auto}
.clg-task-completion-slot{display:inline-flex;flex-direction:column;align-items:stretch;gap:1px;min-width:0;border:0;margin:0;padding:0}
.clg-task-completion-slot[hidden]{display:none!important}
.clg-task-completion-slot>small{font-size:9px;line-height:1.1;text-align:center;color:#63776e;font-weight:400}
.clg-task-bar [data-task-completion-placeholder][hidden]{display:none}
.clg-task-next{display:inline-flex;align-items:center;justify-content:center;gap:5px;box-sizing:border-box;min-height:40px;padding:6px 10px;border:1px solid #a9cfb8;border-radius:7px;background:#e7f3ec;color:#12643e;text-decoration:none;font:inherit;white-space:nowrap}
.clg-task-next:hover{background:#d9ecdf}.clg-task-next:focus-visible{outline:3px solid #075e9c;outline-offset:2px}
.clg-task-next[aria-disabled=true]{pointer-events:none;opacity:.55}
@media(pointer:coarse){.clg-task-next{min-height:44px}}
.clg-task-bar button{font:400 14px/1.4 system-ui,sans-serif;min-height:44px;padding:8px 10px;white-space:nowrap;cursor:pointer}
.clg-task-bar button[role=checkbox]{background:transparent;border:1px solid transparent;display:inline-flex;align-items:center;gap:6px}
.clg-task-bar button[role=checkbox] span{font-size:20px}
.clg-task-bar button:focus-visible{outline:3px solid #075e9c;outline-offset:2px}
.clg-task-bar button[aria-checked=true]{color:#12643e}
.clg-task-bar button[data-task-action=block][aria-checked=true]{color:#8d4d05}
.clg-task-bar-navigation{display:flex;gap:5px}
.clg-task-report-icon{display:grid;place-items:center;flex:none;width:40px;min-height:40px;box-sizing:border-box;border:1px solid #c7d0e8;border-radius:7px;background:#edf0fa;color:#425a94;text-decoration:none}
.clg-task-report-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.clg-task-report-icon:focus-visible{outline:3px solid #075e9c;outline-offset:2px}
.clg-task-report-open{--clg-task-report-width:min(620px,45vw);padding-right:var(--clg-task-report-width);box-sizing:border-box}
.clg-task-report-open .clg-task-bar{flex-wrap:wrap;gap:6px 12px}
.clg-task-report-open .clg-task-bar-identity{flex:1 1 140px}
.clg-task-report-open .clg-task-bar-actions{margin-left:auto;max-width:100%}
.clg-task-report-panel{position:fixed;inset:0 0 0 auto;z-index:35;display:flex;flex-direction:column;width:var(--clg-task-report-width);background:#f1f4f5;border-left:1px solid #cbd9df;box-shadow:-3px 0 12px #173d3510;color:#24383d;font:14px/1.4 system-ui,sans-serif}
.clg-task-report-panel>header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px;background:white;border-bottom:1px solid #cbd9df}
.clg-task-report-panel>header strong{flex:1;min-width:180px}
.clg-task-report-panel button{font:inherit;min-height:40px;padding:6px 10px;border:1px solid #cbd9df;border-radius:5px;background:white;color:#245676;cursor:pointer}
.clg-task-report-panel iframe{flex:1;min-height:0;width:100%;border:0}
@media(max-width:850px){.clg-task-report-open{padding-right:0;--clg-task-bar-right:0px!important}.clg-task-report-panel{width:100%}}
@media print{.clg-task-report-panel{display:none}.clg-task-report-open{padding-right:0}}
.clg-task-bar-compact svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.clg-task-bar-compact button{border:1px solid #b7cdc1;border-radius:7px;background:#fff;min-height:40px}
.clg-task-bar-navigation button{display:grid;place-items:center;width:40px;background:#edf0fa;border-color:#c7d0e8;color:#425a94}
.clg-task-bar-compact button[role=checkbox]{border:1px solid #b8d7c3;background:#edf7ef;color:#177245}
.clg-task-bar-compact button[role=checkbox][aria-checked=true]{background:#177245;color:white;border-color:#177245}
.clg-task-bar-compact button[data-task-action=wait]{display:grid;place-items:center;width:40px;padding:6px}
.clg-task-bar-owner-action{background:#e7f3ec!important;border-color:#a9cfb8!important;color:#12643e!important}
.clg-task-bar-clock{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;margin-left:auto}
.clg-task-bar-countdown{font-variant-numeric:tabular-nums;font-size:16px;color:#177245}
.clg-task-bar-clock.overdue .clg-task-bar-countdown,.clg-task-bar-overdue{color:#b42318}
.clg-task-bar-overdue{font-size:12px}
@media(max-width:760px){.clg-task-bar{flex-wrap:wrap;padding-inline:12px;gap:0}.clg-task-bar-identity{flex-basis:100%;padding-top:4px}.clg-task-bar-actions{margin-left:auto}}
/* Shared defaults are intentionally low-specificity: field tools, number controls,
 * menus, recording state and accepted dense research tables retain their semantics. */
.clg-standard-ui :where(button,input,select,textarea){font-family:inherit}
.clg-standard-ui :where(button){min-height:40px;padding:8px 12px;border:1px solid #b7cdc1;border-radius:7px;background:#e9f1ec;color:var(--clg-ui-ink);font-size:14px;line-height:1.4;font-weight:600}
.clg-standard-ui :where(button):disabled{opacity:.55;cursor:default}
.clg-standard-ui :where(.primary,.primary-button,.button-primary,.clg-action-primary){background:var(--clg-ui-ink);border-color:var(--clg-ui-ink);color:#fff}
.clg-standard-ui :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select,textarea){box-sizing:border-box;min-width:0;min-height:44px;font-size:16px;line-height:1.5;font-weight:400;padding:9px 11px;background:var(--clg-task-value);color:var(--clg-ui-ink);border:1px solid #bfcec7;border-radius:5px}
.clg-standard-ui :where(label,dt){font-size:14px;font-weight:600;line-height:1.4}
.clg-standard-ui :where(.control-note,.control-source,.hint){font-size:14px;line-height:1.5;font-weight:400}
.clg-standard-ui :where(h1){font-size:26px;line-height:1.25;letter-spacing:-.02em}
.clg-standard-ui :where(.form-grid,.contact-row){gap:14px 18px}
.clg-standard-ui .clg-task-tabs{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px 20px;overflow:visible;border:0;border-bottom:1px solid var(--clg-ui-line);border-radius:0;background:transparent;padding:0;margin:0 0 16px}
.clg-standard-ui button.clg-task-tab{width:auto;flex:0 1 auto;margin:0;font-size:14px;min-height:44px;white-space:normal}
.clg-standard-ui input:is([type=checkbox],[type=radio]){display:inline-block;width:18px;height:18px;min-height:18px;flex:none;margin:0;vertical-align:middle;accent-color:var(--clg-ui-ink)}
.clg-standard-ui label:has(>input:is([type=checkbox],[type=radio])){display:flex;align-items:center;gap:8px}
.clg-standard-ui .clg-task-tab[aria-pressed=true]{background:transparent;color:var(--clg-ui-ink);border-bottom-color:var(--clg-ui-ink);font-weight:700}
.clg-task-heading,.clg-task-section-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.clg-task-heading{margin-bottom:18px}
.clg-task-section-heading{margin-bottom:14px}
.clg-task-section-heading h2{margin:0}
.clg-task-identity{font-size:14px;color:var(--clg-task-secondary);margin:6px 0 0;overflow-wrap:anywhere}
.clg-task-more{margin-left:auto;position:relative}
.clg-task-more>summary{padding:9px 12px;min-height:40px;border:1px solid #b7cdc1;border-radius:7px;background:#e9f1ec;color:var(--clg-ui-ink);font-size:14px;font-weight:600;cursor:pointer}
.clg-task-more>div{display:flex;flex-direction:column;gap:8px;position:absolute;right:0;top:calc(100% + 6px);z-index:5;width:min(290px,calc(100vw - 36px));padding:12px;background:#fff;border:1px solid var(--clg-ui-line);border-radius:7px;box-shadow:0 8px 24px #173d3520}
.clg-task-more p{font-size:14px;line-height:1.5;margin:8px 0}
.clg-task-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin:0}
.clg-task-fact{min-width:0}
.clg-task-fact dt{font-size:14px;font-weight:600;line-height:1.4;margin:0 0 5px;color:var(--clg-task-secondary)}
.clg-task-fact dd{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;margin:0;font-size:16px;font-weight:400;line-height:1.5;overflow-wrap:anywhere}
.clg-task-fact dd>[data-field-id]{flex:1 1 180px;min-width:0}
.clg-task-fact dd>button{flex:none}
.clg-task-fact-wide{grid-column:1/-1}
.clg-standard-ui .register-tools,.clg-standard-ui .register-pager{font-size:14px}
.clg-standard-ui .register-table{font-size:14px}
@media(max-width:600px){.clg-task-facts{grid-template-columns:minmax(0,1fr)}.clg-task-heading{align-items:flex-start}.clg-task-more{margin-left:0}.clg-task-more>div{left:0;right:auto}.clg-standard-ui .clg-task-tabs{display:flex;gap:0 14px}.clg-standard-ui .clg-task-tabs>button{flex:0 1 auto}}
@media(pointer:coarse){.clg-standard-ui :where(button){min-height:44px}}
/* Tim's 18 October compact register standard: owner filters, Search and Columns
   share a row. Help follows captions; full touch targets stay with field tools. */
.register-compact .register-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 6px}
.register-compact .register-owner-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0;max-width:100%;margin:0}
.register-compact :is(.register-tools,.register-owner-filters)>label{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin:0;font-size:13px;color:#526666}
.register-compact .register-tools .sr-only,.register-compact .register-search>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.register-compact :is(.register-tools,.register-owner-filters)>label>select{min-width:140px;min-height:36px;margin:0;padding:6px 28px 6px 9px;color:var(--clg-ui-ink);background:white;border:1px solid var(--clg-ui-line);border-radius:8px}
.register-compact .register-tools .register-search{margin-left:auto;flex-direction:row;flex:0 1 220px}
.register-compact .register-search input{width:220px;min-height:36px;margin:0}
.register-compact .register-column-heading{position:relative;justify-content:flex-start;gap:0;padding-right:12px}
.register-compact .register-column-heading>button{flex:none;width:auto;justify-content:flex-start;align-items:center;gap:0;overflow:visible}
.register-compact .register-column-heading [data-sort]>span{position:absolute;right:0;top:50%;transform:translateY(-50%)}
.register-compact thead .clg-field-tools .clg-field-action{justify-content:flex-start}
.register-compact .register-table th:first-child input{min-width:0}
.register-compact .register-pager{margin-top:5px}.register-compact .register-pager .register-count{order:0;margin:0 auto 0 0}.register-compact .register-pager label{margin:0}
.register-compact .register-column-actions{align-items:center;flex-wrap:wrap}
@media(pointer:fine){.register-compact .register-table td{height:24px;box-sizing:border-box;padding:2px 7px;font-size:12px;line-height:18px}.register-compact .register-table .status{padding:1px 6px;font-size:11px;line-height:16px}.register-compact .register-table th{padding:1px 7px}.register-compact .register-table th input{height:20px;min-height:20px}.register-compact .register-column-heading>button{height:26px;min-height:26px;box-sizing:border-box}.register-compact .register-open{height:20px;min-height:20px;padding:0 5px;line-height:18px;border:0;background:transparent}}
@media(max-width:600px){.register-compact :is(.register-tools,.register-owner-filters)>label{flex:1;min-width:110px}.register-compact :is(.register-tools,.register-owner-filters)>label>select{width:100%;min-width:0}.register-compact .register-tools .register-search{flex:1;min-width:170px}.register-compact .register-search input{width:100%}}
@media(pointer:coarse){.register-compact :is(.register-tools,.register-owner-filters)>label>select{min-height:44px}}
/* Personal order controls share the visibility menu on every Register. */
.register-column-choice{display:flex;align-items:center;gap:4px}
.register-column-choice[hidden]{display:none}
.register-column-choice>label{flex:1;min-width:0}
.register-column-menu .register-column-choice>button{flex:none;width:28px;min-height:28px;padding:2px;font-size:1rem;line-height:1}
@media(pointer:coarse){.register-column-menu .register-column-choice>button{width:44px;min-height:44px}}
.clg-task-slack-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;min-width:36px;padding:8px;background:transparent;border:0}
.clg-task-bar .clg-task-slack-icon svg{width:18px;height:18px;fill:none;stroke:currentColor}
.clg-task-slack{box-sizing:border-box;position:fixed;inset:auto auto 72px 12px;margin:0;width:min(440px,calc(100vw - 24px));padding:20px;border:1px solid #bbd1c7;border-radius:12px;background:#fff;color:#173f38;max-height:calc(100dvh - 96px);overflow:auto}
.clg-task-slack::backdrop{background:#173f3830}
.clg-task-slack header,.clg-task-slack footer{display:flex;align-items:center;justify-content:space-between;gap:10px}
.clg-task-slack h2{margin:0;font-size:20px}.clg-task-slack label{display:block;margin-top:16px}.clg-task-slack small{color:#617970}
.clg-task-slack :is(select,textarea){display:block;box-sizing:border-box;width:100%;margin-top:5px;padding:10px;font:inherit;border:1px solid #bbd1c7;border-radius:6px;background:#fff;color:inherit}
.clg-task-slack button{padding:8px 12px;font:inherit;border:1px solid #bbd1c7;border-radius:6px;cursor:pointer}.clg-task-slack [data-close]{background:transparent;border:0}
.clg-task-slack blockquote{margin:16px 0;padding-left:12px;border-left:3px solid #bbd1c7;overflow-wrap:anywhere}.clg-task-slack blockquote div{margin:3px 0}.clg-task-slack a{color:#176e5b}.clg-task-slack footer{justify-content:flex-end}.clg-task-slack details{margin-top:16px;font-size:13px}.clg-task-slack-feedback{font-size:13px}
@media(pointer:coarse){.clg-task-slack-icon{width:44px;min-width:44px;min-height:44px}.clg-task-slack :is(select,textarea){font-size:16px}.clg-task-slack button{min-height:44px}}

/* One owner-independent task explanation; the existing Rules renderer is hosted
   inside it. Modal opening/tab changes never replace the owning task screen. */
.clg-task-explanation{box-sizing:border-box;width:min(1000px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:22px;border:1px solid #bbd1c7;border-radius:12px;background:#fff;color:#173f38;overflow:auto}
.clg-task-explanation::backdrop{background:#173f3840}
.clg-task-explanation>header,.clg-task-explanation>footer{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.clg-task-explanation h2{font-size:22px;margin:0}.clg-task-explanation header p{margin:5px 0;color:#526c63}
.clg-task-explanation button,.clg-task-explanation footer a{font:inherit;padding:8px 12px;border:1px solid #bbd1c7;border-radius:6px;background:#f4f8f5;color:inherit;cursor:pointer;text-decoration:none}
.clg-task-explanation button:focus-visible,.clg-task-explanation a:focus-visible{outline:3px solid #317d66;outline-offset:2px}
.clg-task-explanation [aria-label="Close task explanation"]{font-size:22px;border:0;background:transparent}
.clg-task-explanation-tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid #dce7e0;padding:12px 0;margin-bottom:12px}
.clg-task-explanation-tabs [aria-selected="true"]{background:#245f4c;color:#fff;border-color:#245f4c}
.clg-task-explanation-summary .clg-task-evidence-rows{display:grid;grid-template-columns:1fr 1fr;gap:18px;background:#f5f8f5;padding:12px;border-radius:8px}
.clg-task-evidence-rows{margin:0 0 16px}.clg-task-evidence-rows>div{display:grid;grid-template-columns:minmax(120px,25%) minmax(0,1fr);gap:12px;padding:9px 0;border-bottom:1px solid #e5ece7}
.clg-task-evidence-rows dt{color:#526c63}.clg-task-evidence-rows dd{margin:0;overflow-wrap:anywhere;white-space:normal}
.clg-task-evidence-rows dd strong,.clg-task-evidence-rows dd p{white-space:pre-wrap}
.clg-task-evidence-rows dd small{display:block;color:#617970;font-size:12px}.clg-task-evidence-rows dd p{margin:6px 0}.clg-task-evidence-rows details{font-size:12px;color:#526c63;white-space:normal;margin-top:5px}
.clg-task-explanation-summary .clg-task-evidence-rows>div{display:block;border:0}.clg-task-explanation-summary dt{font-size:12px;margin-bottom:5px}
.clg-task-explanation-rules{min-width:0;overflow-x:auto}.clg-task-explanation [data-explanation-content]{min-height:180px}
.clg-task-explanation>footer{align-items:center;border-top:1px solid #dce7e0;padding-top:14px;margin-top:16px}.clg-task-explanation footer>div{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.clg-task-explanation footer small{font-size:12px;color:#617970}
.clg-task-explanation-create{margin-bottom:12px}.clg-task-evidence-notice,.clg-task-evidence-empty{color:#526c63}
@media(max-width:600px){.clg-task-explanation{padding:14px}.clg-task-explanation-summary .clg-task-evidence-rows{grid-template-columns:1fr;gap:8px}.clg-task-evidence-rows>div{grid-template-columns:1fr;gap:4px}.clg-task-explanation>footer{align-items:flex-start;flex-direction:column}.clg-task-explanation-tabs button{min-height:44px;flex:1 0 28%}}
@media(pointer:coarse){.clg-task-explanation button,.clg-task-explanation footer a{min-height:44px;box-sizing:border-box}}

.clg-field-tools{display:inline-flex;align-items:center;vertical-align:middle;gap:0;white-space:nowrap;font-weight:400}
.clg-field-tools .clg-field-action{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;min-width:26px;min-height:26px;margin:0;padding:0;border:0;border-radius:3px;background:transparent;box-shadow:none;color:#285a68;font-family:inherit;vertical-align:middle}
.clg-field-tools .clg-field-circle{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:17px;height:17px;border:1px solid #b8c9cb;border-radius:50%;background:#fff;font-size:11px;line-height:1}
.clg-field-tools button:disabled{opacity:.38;cursor:default}.clg-field-tools button:focus-visible{outline:2px solid #176c88;outline-offset:1px}
.clg-field-inspector{box-sizing:border-box;width:min(980px,94vw);max-height:90vh;overflow:auto;padding:24px;border:1px solid #cbd6d0;border-radius:16px;color:#20332d;background:white;font:15px/1.5 system-ui,sans-serif;box-shadow:0 18px 60px #142b3440}
.clg-field-inspector::backdrop{background:#19342b66}
.clg-tabbed-field-help[open]{display:flex;flex-direction:column;overflow:hidden}
.clg-field-help-header,.clg-field-help-tabs,.clg-field-help-footer,.clg-field-help-notice{flex-shrink:0}
.clg-field-inspector [hidden]{display:none!important}
.clg-field-help-header .clg-field-reference{margin:0 0 6px}
.clg-field-help-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid #dce5df;margin-top:20px;padding-bottom:6px}
.clg-field-help-tab{font:inherit;font-size:14px;border:0;border-radius:7px;padding:10px 14px;color:#52645d;background:transparent;min-height:44px}
.clg-field-help-tab.active{background:#e6f1eb;color:#215540;font-weight:700}
.clg-field-help-tab:hover{background:#f0f6f3}
.clg-field-inspector button:focus-visible,.clg-field-inspector summary:focus-visible,.clg-field-help-content>section:focus-visible{outline:3px solid #176c88;outline-offset:2px}
.clg-field-help-content{min-height:min(220px,25vh);padding:6px 0 22px;overflow-wrap:anywhere;overflow:auto;flex:1 1 auto}
.clg-field-help-context dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.clg-field-help-context dl>div{margin:0!important;min-width:0}
@media(max-width:600px){.clg-field-help-context dl{grid-template-columns:1fr}}
.clg-field-help-content pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;padding:12px;background:#f3f7f5;border-radius:8px}
.clg-field-help-content details{border-top:1px solid #dce5df;margin:18px 0 0;padding:14px 0 0}
.clg-field-help-content summary{cursor:pointer;color:#315b48;font-weight:600}
.clg-field-choices{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0}
.clg-field-choices li{background:#eff5f1;padding:7px 12px;border:1px solid #dce5df;border-radius:7px}
.clg-field-help-notice{padding:12px;border-radius:8px;background:#f4f7e9}
.clg-field-help-footer{display:flex;align-items:center;flex-wrap:wrap;gap:12px;border-top:1px solid #dce5df;padding-top:16px;font-size:13px;color:#62766f}
.clg-field-help-footer>span{margin-right:auto}
.clg-field-help-footer form,.clg-field-help-header form{margin:0}
.clg-help-close{border:0;border-radius:6px;background:transparent;color:#52645d;min-width:44px;min-height:44px;font:24px system-ui}
.clg-help-done{padding:9px 22px;border:0;border-radius:8px;color:white;background:#285b46;min-height:44px}
.clg-field-help-footer>[data-help-problem]{border:0;color:#315b48;background:transparent;min-height:44px}
.clg-field-empty{margin:24px 0;padding:28px;border:1px dashed #ccdbd2;border-radius:12px;background:#f7faf8;text-align:center}
.clg-field-empty>span{font-size:32px;color:#709482}
.clg-field-empty p{max-width:580px;margin:12px auto;color:#62766f}
@media(max-width:600px){.clg-field-inspector{padding:16px;width:96vw;max-height:94vh}.clg-field-help-tab{padding:9px 10px;font-size:13px}.clg-field-help-content{min-height:160px}.clg-field-empty{padding:18px}.clg-field-help-footer>span{flex-basis:100%}}
.clg-field-inspector header{display:flex;justify-content:space-between;gap:16px;align-items:start}.clg-field-inspector h2{font-size:21px;margin:0}.clg-field-inspector h3{font-size:17px;margin:20px 0 8px}.clg-field-inspector h4{font-size:15px}.clg-field-inspector dl>div{padding:10px;background:#f5f8f6;margin:8px 0;border-radius:7px}.clg-field-inspector dt{font-weight:600}.clg-field-inspector dd{margin:4px 0;overflow-wrap:anywhere}.clg-field-reference{font-size:12px;color:#52645d;overflow-wrap:anywhere}.clg-field-rule{padding:10px 0;border-bottom:1px solid #dce5df}
@media(pointer:coarse){.clg-field-tools .clg-field-action{width:44px;height:44px;min-width:44px;min-height:44px}}

.field-journey{--fj-ink:#193f38;--fj-muted:#62766f;--fj-line:#dae5e0;color:var(--fj-ink)}
.field-journey [hidden]{display:none!important}
.field-journey h3{font-size:1.05rem;margin:0 0 12px}
.field-journey h4{margin:12px 0 8px;font-size:.9rem}
.field-journey p{line-height:1.65}
.field-journey code{overflow-wrap:anywhere;font-size:.83rem}
.field-journey button:focus-visible,.fj-viewport:focus-visible,.field-journey summary:focus-visible{outline:3px solid #287aa6;outline-offset:3px}
.fj-introduction{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:19px 24px;background:linear-gradient(115deg,#153f38,#2f6656);border-radius:15px;color:#f5fbf8;box-shadow:0 8px 22px #163c3516}
.fj-introduction>div:first-child{max-width:720px}
.fj-introduction h3{font-size:1.35rem;margin:4px 0 7px;font-weight:700;letter-spacing:-.025em}
.fj-intro-id{display:block;margin-top:8px;font-size:.68rem!important;color:#b8d6c6}
.fj-introduction p{margin:0;font-size:.93rem;color:#e0eee7}
.fj-kicker{font-size:.66rem!important;letter-spacing:.15em;font-weight:800;color:#5c8072;margin:0 0 10px!important}
.fj-introduction .fj-kicker{color:#b9d7c8}
.fj-metrics{display:flex;gap:22px;flex-shrink:0}
.fj-metrics span{font-size:.72rem;color:#cfdfd7;white-space:nowrap}
.fj-metrics strong{display:block;font-size:1.65rem;font-weight:600;line-height:1.35;color:white}
.fj-toolbar{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:20px 0 12px}
.fj-toolbar>p{flex:1;color:var(--fj-muted);font-size:.8rem;margin:0}
.fj-view-switch,.fj-zoom{display:flex;gap:3px;align-items:center;background:#edf3ef;border:1px solid #e0e8e3;padding:4px;border-radius:9px}
.fj-view-switch button,.fj-zoom button{background:transparent;border:0;color:#446158;border-radius:6px;padding:7px 12px;font-size:.78rem}
.fj-view-switch button[aria-pressed=true]{background:white;box-shadow:0 1px 4px #264d3920;color:#17493d}
.fj-zoom button:hover{background:white}
.fj-workspace{display:block}
.fj-map-area{min-width:0}
.fj-map{border:1px solid var(--fj-line);border-radius:13px;overflow:hidden;background-color:#f6f9f7;background-image:radial-gradient(#cbdad2 .75px,transparent .75px);background-size:18px 18px}
.fj-viewport{overflow:auto;max-height:610px;overscroll-behavior:contain}
.fj-map-size{position:relative}
.fj-canvas{position:relative;transform-origin:0 0}
.fj-connections{position:absolute;inset:0;pointer-events:none;overflow:visible}
.fj-connections marker path{fill:#7b9f91}
.fj-edge{fill:none;stroke:#9bb7aa;stroke-width:2}
.fj-edge.review,.fj-edge.old{stroke:#b89b6c;stroke-dasharray:5 4}
.fj-edge.selected{stroke:#246f58;stroke-width:3.5;filter:drop-shadow(0 0 2px #448b7344)}
.fj-node{--fj-color:#2b7162;--fj-tint:#e9f4ef;position:relative;display:flex;flex-direction:column;gap:8px;width:256px;min-height:130px;padding:13px 15px;text-align:left;background:white;color:#25433a;border:1px solid #d6e4dd;border-top:3px solid var(--fj-color);border-radius:11px;box-shadow:0 4px 12px #274e3710;font-weight:400;transition:box-shadow .15s,border-color .15s}
.fj-canvas>.fj-node{position:absolute;height:132px}
.fj-node.orange{--fj-color:#b86b27;--fj-tint:#fff0df}
.fj-node.blue{--fj-color:#3b75a0;--fj-tint:#e8f1fa}
.fj-node.violet{--fj-color:#7f63a9;--fj-tint:#f0eafb}
.fj-node.slate{--fj-color:#687788;--fj-tint:#edf0f4}
.fj-node:hover,.fj-node.selected{border-color:var(--fj-color);box-shadow:0 4px 15px #224e382a}
.fj-node.selected{outline:2px solid var(--fj-color);outline-offset:2px}
.fj-node-top{display:flex;align-items:center;gap:7px;min-width:0}
.fj-node-top strong{font-size:.77rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fj-system-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:25px;height:25px;border-radius:7px;background:var(--fj-tint);color:var(--fj-color);font-size:.6rem;font-weight:800;letter-spacing:.03em}
.fj-role{margin-left:auto;font-size:.59rem;text-transform:uppercase;letter-spacing:.04em;color:#738079;white-space:nowrap}
.fj-node>code{font-size:.77rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:1px 0 0;min-height:20px}
.fj-object{color:#677b72;font-size:.67rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fj-node-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:auto}
.fj-node-bottom>span:last-child{font-size:.9rem;color:var(--fj-color)}
.fj-evidence{display:inline-flex;border-radius:4px;font-size:.58rem!important;font-weight:750;letter-spacing:.03em;padding:3px 6px;line-height:1.2;background:#eff4f0;color:#527063}
.fj-evidence.review{background:#fff2db;color:#8c641e}
.fj-evidence.old{background:#edf0f2;color:#69747c}
.fj-edge-label{position:absolute;z-index:2;max-width:104px;width:104px;height:28px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #b9cec1;border-radius:16px;padding:4px 7px;color:#3b6755;font-size:.61rem;box-shadow:0 2px 5px #2346310b}
.fj-edge-label span{font-size:.6rem;color:#87958e}
.fj-edge-label.review,.fj-edge-label.old{border-style:dashed;border-color:#bea06a;color:#8d6932}
.fj-edge-label:hover,.fj-edge-label.selected{background:#e5f1e9;border-color:#306c55;box-shadow:0 0 0 2px #3b735523}
.fj-inspector{border:1px solid var(--fj-line);border-left:4px solid #609b79;border-radius:13px;background:#fff;padding:20px;margin:18px 0;box-shadow:0 4px 16px #264d3710;font-size:.82rem;overflow-wrap:anywhere}
.fj-inspector .fj-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.fj-inspector h3{font-size:1.18rem}
.fj-inspector p{margin:12px 0}
.fj-return{margin-top:14px;width:100%;padding:10px;background:#eaf3ed;color:#326045;border:1px solid #c7ddcc;border-radius:7px;font-size:.74rem}
.fj-selected-name{margin:18px 0;padding:12px;background:#f0f6f2;border-radius:8px}
.fj-selected-name small{display:block;color:#607e6e;font-size:.67rem;margin-bottom:7px}
.fj-selected-name code{font-size:.91rem}
.fj-facts{margin:14px 0}
.fj-facts>div{padding:8px 0;border-bottom:1px solid #edf1ee;min-width:0}
.fj-facts dt{font-size:.65rem;letter-spacing:.025em;color:#6c8075;font-weight:600;margin:0 0 4px}
.fj-facts dd{font-size:.78rem;line-height:1.5;margin:0;overflow-wrap:anywhere;white-space:pre-wrap}
.fj-endpoints{margin:18px 0;padding:13px;background:#f3f7f4;border-radius:9px;display:flex;flex-direction:column;gap:7px}
.fj-endpoints>span{color:#68a083;font-size:1.2rem}
.fj-endpoints small{font-size:.65rem;color:#698170}
.field-journey details{border-top:1px solid var(--fj-line);margin-top:16px;padding-top:13px;font-size:.8rem}
.field-journey summary{cursor:pointer;font-weight:700;color:#315b48}
.fj-muted,.fj-map-note{color:var(--fj-muted);font-size:.78rem}
.fj-map-note{margin:12px 4px}
.fj-map-note>span{margin-right:5px}
.fj-empty{text-align:center;padding:40px 28px;max-width:580px;margin:auto}
.fj-empty>span{font-size:2.1rem;color:#829f8f}
.fj-empty p{font-size:.83rem;color:var(--fj-muted)}
.fj-unconnected{margin-top:18px;border:1px dashed #c6d5cb;border-radius:11px;padding:16px;background:#fafbf9}
.fj-unconnected h4{margin-top:0}
.fj-unconnected p{font-size:.77rem;color:#728276;margin:7px 0 14px}
.fj-unconnected h4 span,.fj-related h3 span{margin-left:5px;font-size:.74rem;color:#7a8d81}
.fj-loose-nodes{display:flex;gap:12px;flex-wrap:wrap}
.fj-loose-nodes .fj-node{flex:0 1 256px;max-width:100%}
.fj-caution{padding:12px 14px;border:1px solid #eddfbf;border-radius:8px;background:#fff9ec;color:#866725;font-size:.79rem}
.fj-names{margin-top:28px;padding:23px;border:1px solid var(--fj-line);border-radius:13px;background:#fff}
.fj-names>.fj-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.fj-table-scroll{overflow:auto}
.fj-names table{width:100%;border-collapse:collapse;font-size:.78rem;text-align:left}
.fj-names caption{text-align:left;color:#607669;font-size:.69rem;padding:9px 0}
.fj-names th{padding:10px;background:#f0f5f1;border-bottom:1px solid #dfe8e0;color:#637869;font-size:.68rem}
.fj-names td{padding:12px 10px;border-bottom:1px solid #eaf0eb;max-width:420px;overflow-wrap:anywhere}
.fj-source-reference{padding:14px;border:1px solid #e2e9e2;border-radius:9px;margin-top:14px;background:#fafcf9}
.fj-source-reference .fj-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.fj-related{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:26px;padding:10px 3px}
.fj-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.fj-links button{background:#eff5f0;color:#365945;border:1px solid #d7e4d8;border-radius:8px;text-align:left;padding:10px 12px;font-size:.77rem}
.fj-links small{display:block;color:#6f8575;font-size:.65rem;margin-top:4px}
.fj-gap{margin:12px 0;padding:13px;border-left:3px solid #cba763;background:#fcf8ee;border-radius:0 8px 8px 0;font-size:.8rem}
.fj-gap strong{font-size:.7rem;overflow-wrap:anywhere}
.fj-gap p{margin:8px 0}
.fj-gap small{color:#847347}
.fj-steps{padding:0;margin:0;list-style:none;display:flex;flex-direction:column;gap:18px}
.fj-step{display:grid;grid-template-columns:256px 1fr;gap:20px;align-items:center;background:#f4f8f5;border:1px solid #dce7df;border-radius:12px;padding:18px}
.fj-step-locations{display:flex;flex-direction:column;align-items:center;gap:8px}
.fj-step-arrow{font-size:1.4rem;color:#65947d}
.fj-step-process{display:block;text-align:left;background:white;border:1px solid #d7e3da;border-radius:10px;padding:17px;color:#325640;max-width:100%;overflow-wrap:anywhere}
.fj-step-process strong{display:block;font-size:.97rem;margin:8px 0}
.fj-step-process p{font-size:.82rem;font-weight:400}
.fj-step-process.selected{outline:2px solid #548e70;outline-offset:2px}
.fj-step-number{display:inline-flex;width:25px;height:25px;border-radius:50%;align-items:center;justify-content:center;background:#e4efe7;color:#568365;font-size:.75rem}
.fj-step-open{display:block;color:#548465;font-size:.75rem;margin-top:14px}
@media(max-width:1150px){.fj-workspace{grid-template-columns:minmax(0,1fr) 270px}.fj-metrics{gap:14px}.fj-introduction{padding:22px}.fj-step{grid-template-columns:1fr}.fj-step-locations{flex-direction:row;overflow:auto;align-items:stretch}.fj-step-locations .fj-node{flex-shrink:0}.fj-step-arrow{align-self:center;transform:rotate(-90deg)}}
@media(max-width:900px){.fj-workspace{grid-template-columns:1fr}.fj-inspector{position:static;max-height:none}.fj-introduction{align-items:flex-start;flex-direction:column;gap:20px}.fj-metrics{gap:30px}.fj-related{grid-template-columns:1fr;gap:20px}.fj-toolbar>p{flex-basis:100%;order:3}.fj-zoom{margin-left:auto}}
@media(max-width:600px){.fj-introduction{padding:20px}.fj-introduction h3{font-size:1.35rem}.fj-names{padding:16px}.fj-names>.fj-facts,.fj-source-reference .fj-facts,.fj-inspector .fj-facts{grid-template-columns:1fr;gap:0}.fj-step{padding:14px;gap:14px}.fj-step-locations{flex-direction:column;align-items:stretch;overflow:visible}.fj-step-locations .fj-node{width:100%;min-width:0}.fj-step-arrow{transform:none}.fj-loose-nodes .fj-node{flex:1 1 100%;width:100%}.fj-metrics strong{font-size:1.45rem}.fj-names th,.fj-names td{padding:10px 7px}.fj-names table{min-width:540px}}
@media(prefers-reduced-motion:reduce){.fj-node{transition:none}}
