:root{color-scheme:light;--bg: #f7f9fc;--surface: #ffffff;--elevated: #ffffff;--border: #7e8b9a;--border-strong: #5c6675;--text: #0b1220;--text-secondary: #35424f;--muted: #5b6b7c;--brand: #0a6a86;--brand-hover: #074d61;--on-brand: #ffffff;--focus: #0b3a6f;--focus-contrast: #ffffff;--danger: #b3261e;--ok: #1e7a45;--warning: #8a5300;--navy-plate: #0d2137}:root[data-theme=dark]{color-scheme:dark;--bg: #0d1626;--surface: #161f33;--elevated: #1f2b43;--border: #6a7a96;--border-strong: #8a99b5;--text: #e8eef6;--text-secondary: #c2cddb;--muted: #9aa8b8;--brand: #45c0dd;--brand-hover: #7ddcf0;--on-brand: #0b1220;--focus: #9ecbf5;--focus-contrast: #0d1626;--danger: #ff8078;--ok: #4cc38a;--warning: #e0a341;--navy-plate: #0d2137}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #0d1626;--surface: #161f33;--elevated: #1f2b43;--border: #6a7a96;--border-strong: #8a99b5;--text: #e8eef6;--text-secondary: #c2cddb;--muted: #9aa8b8;--brand: #45c0dd;--brand-hover: #7ddcf0;--on-brand: #0b1220;--focus: #9ecbf5;--focus-contrast: #0d1626;--danger: #ff8078;--ok: #4cc38a;--warning: #e0a341;--navy-plate: #0d2137}}:root[data-brand=protocol]{color-scheme:light;--bg: #f4f6f4;--surface: #ffffff;--elevated: #ffffff;--border: #d5dbd6;--border-strong: #8a9690;--text: #14211e;--text-secondary: #3c4a44;--muted: #5c6b64;--brand: #1f6b4a;--brand-hover: #184f38;--on-brand: #ffffff;--focus: #143f2e;--focus-contrast: #ffffff;--danger: #b3261e;--ok: #1e7a45;--warning: #8a5300;--navy-plate: #14211e}:root[data-brand=protocol][data-theme=dark]{color-scheme:dark;--bg: #101614;--surface: #171f1c;--elevated: #1e2924;--border: #2c3b36;--border-strong: #6d8078;--text: #e7f0ec;--text-secondary: #c5d4cc;--muted: #9aada4;--brand: #8fcbb0;--brand-hover: #b7ddcc;--on-brand: #101614;--focus: #b7ddcc;--focus-contrast: #101614;--danger: #ff8078;--ok: #4cc38a;--warning: #e0a341;--navy-plate: #14211e}@media(prefers-color-scheme:dark){:root[data-brand=protocol]:not([data-theme=light]){color-scheme:dark;--bg: #101614;--surface: #171f1c;--elevated: #1e2924;--border: #2c3b36;--border-strong: #6d8078;--text: #e7f0ec;--text-secondary: #c5d4cc;--muted: #9aada4;--brand: #8fcbb0;--brand-hover: #b7ddcc;--on-brand: #101614;--focus: #b7ddcc;--focus-contrast: #101614;--danger: #ff8078;--ok: #4cc38a;--warning: #e0a341;--navy-plate: #14211e}}:root{--focus-ring: 0 0 0 2px var(--focus-contrast), 0 0 0 4px var(--focus)}:where(a[href],area[href],button,input,select,textarea,summary,[tabindex],[contenteditable=true]):not(.visually-hidden):focus-visible{outline:2px solid transparent;outline-offset:2px;box-shadow:var(--focus-ring)}:root{--font-ui: "Source Sans 3", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display: "Sora", "Trebuchet MS", "Segoe UI", Tahoma, sans-serif}:root[data-brand=protocol]{--font-display: "Source Serif 4", "Iowan Old Style", Palatino, "Times New Roman", serif}:root{font-family:var(--font-ui)}:where(button,input,select,textarea,optgroup){font-family:inherit}.font-display{font-family:var(--font-display)}[data-surface=ops]{--font-display: var(--font-ui)}:root{--layout-bp-md: 768px;--layout-bp-lg: 1024px;--layout-bp-xl: 1280px;--layout-gutter: 1rem;--layout-gap: 1rem;--layout-max: 75rem;--layout-measure: 68ch;--layout-columns: 1}:where(img,svg,video,canvas,iframe,embed,object){max-inline-size:100%}.layout-page{box-sizing:border-box;inline-size:100%;max-inline-size:var(--layout-max);margin-inline:auto;padding-inline:var(--layout-gutter)}.layout-stack{display:flex;flex-direction:column;gap:var(--layout-gap)}.layout-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--layout-gap)}.layout-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--layout-gap)}.layout-prose{max-inline-size:var(--layout-measure)}.layout-sticky-bar{position:sticky;inset-block-end:0;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--layout-gap);padding-block:var(--layout-gutter);padding-block-end:max(var(--layout-gutter),env(safe-area-inset-bottom));padding-inline:var(--layout-gutter);background:var(--surface);border-block-start:1px solid var(--border)}@media(min-width:768px){:root{--layout-gutter: 1.5rem;--layout-gap: 1.5rem}.layout-grid{grid-template-columns:repeat(var(--layout-columns),minmax(0,1fr))}.layout-sticky-bar{position:static}}@media(min-width:1024px){:root{--layout-gutter: 2rem}}@media(min-width:1280px){:root{--layout-gap: 2rem}}:root{--target-min: 2.75rem;--target-gap: .5rem}:where(a[href],area[href],button,summary,select,textarea,input:not([type=hidden]),[role=button],[role=link],[role=checkbox],[role=radio],[role=switch],[role=tab],[role=menuitem],[role=option],.target):not(.visually-hidden){min-block-size:var(--target-min);min-inline-size:var(--target-min)}.target{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:var(--target-gap);padding-inline:.75rem}.target-primary{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:var(--target-gap);min-block-size:var(--target-min);padding-inline:1rem}.layout-sticky-bar>.target-primary{order:1;flex:1 1 100%}.layout-cluster,.layout-sticky-bar{gap:max(var(--layout-gap),var(--target-gap))}@media(min-width:768px){.layout-sticky-bar>.target-primary{flex:0 0 auto}}@media(hover:hover){.target:hover,.target-primary:hover{background:var(--elevated)}}:root{--table-card-padding: .75rem;--table-cell-gap: .75rem;--table-label-inline-size: 40%;--table-shadow-inline-size: .75rem;--table-cover-inline-size: 1.5rem}.layout-table{display:block;box-sizing:border-box;inline-size:100%;max-inline-size:100%;border-collapse:collapse;color:var(--text)}.layout-table>caption{text-align:start;color:var(--muted);padding-block-end:var(--table-cell-gap)}.layout-table>thead{display:block;position:absolute;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.layout-table>tbody,.layout-table>tfoot{display:block}.layout-table>tbody>tr,.layout-table>tfoot>tr{display:block;box-sizing:border-box;border:1px solid var(--border);background:var(--surface);padding-block:var(--table-card-padding);padding-inline:var(--layout-gutter)}.layout-table>tbody>tr+tr,.layout-table>tfoot>tr{margin-block-start:var(--layout-gap)}.layout-table>tbody>tr>th,.layout-table>tbody>tr>td,.layout-table>tfoot>tr>th,.layout-table>tfoot>tr>td{display:flex;align-items:baseline;justify-content:space-between;gap:var(--table-cell-gap);padding-block:.25rem;text-align:start}.layout-table [data-label]:before{content:attr(data-label);flex:0 0 var(--table-label-inline-size);color:var(--muted)}.layout-table-scroll{display:block;box-sizing:border-box;max-inline-size:100%;overflow-x:auto;overscroll-behavior-inline:contain;background-color:var(--surface);background-image:linear-gradient(to right,var(--surface) 50%,transparent),linear-gradient(to left,var(--surface) 50%,transparent),linear-gradient(to right,var(--border),transparent),linear-gradient(to left,var(--border),transparent);background-position:left center,right center,left center,right center;background-repeat:no-repeat;background-size:var(--table-cover-inline-size) 100%,var(--table-cover-inline-size) 100%,var(--table-shadow-inline-size) 100%,var(--table-shadow-inline-size) 100%;background-attachment:local,local,scroll,scroll}.layout-table--scrolling{display:table;inline-size:auto;min-inline-size:100%;max-inline-size:none;background:none}.layout-table--scrolling>caption{display:table-caption}.layout-table--scrolling>thead{display:table-header-group;position:static;overflow:visible;clip-path:none;white-space:normal}.layout-table--scrolling>tbody,.layout-table--scrolling>tfoot{display:table-row-group}.layout-table--scrolling>tbody>tr,.layout-table--scrolling>tfoot>tr{display:table-row;border:0;background:none;padding-block:0;padding-inline:0;margin-block-start:0}.layout-table--scrolling>thead>tr>th,.layout-table--scrolling>thead>tr>td,.layout-table--scrolling>tbody>tr>th,.layout-table--scrolling>tbody>tr>td,.layout-table--scrolling>tfoot>tr>th,.layout-table--scrolling>tfoot>tr>td{display:table-cell;border-block-end:1px solid var(--border);padding-block:var(--table-card-padding);padding-inline-end:var(--table-cell-gap);text-align:start;vertical-align:baseline;white-space:nowrap}.layout-table--scrolling [data-label]:before{content:none}.layout-table--scrolling :where(img,svg,video,canvas,iframe,embed,object){max-inline-size:none}@media(min-width:768px){.layout-table{display:table}.layout-table>caption{display:table-caption}.layout-table>thead{display:table-header-group;position:static;overflow:visible;clip-path:none;white-space:normal}.layout-table>tbody,.layout-table>tfoot{display:table-row-group}.layout-table>tbody>tr,.layout-table>tfoot>tr{display:table-row;border:0;background:none;padding-block:0;padding-inline:0}.layout-table>tbody>tr+tr,.layout-table>tfoot>tr{margin-block-start:0}.layout-table>thead>tr>th,.layout-table>thead>tr>td,.layout-table>tbody>tr>th,.layout-table>tbody>tr>td,.layout-table>tfoot>tr>th,.layout-table>tfoot>tr>td{display:table-cell;border-block-end:1px solid var(--border);padding-block:var(--table-card-padding);padding-inline-end:var(--table-cell-gap);text-align:start;vertical-align:baseline}.layout-table [data-label]:before{content:none}}@media(min-width:768px){.layout-table--scrolling>thead>tr>th,.layout-table--scrolling>thead>tr>td,.layout-table--scrolling>tbody>tr>th,.layout-table--scrolling>tbody>tr>td,.layout-table--scrolling>tfoot>tr>th,.layout-table--scrolling>tfoot>tr>td{white-space:nowrap}}:root{--motion-fast: .15s;--motion-base: .2s;--motion-slow: .25s;--motion-ease: cubic-bezier(.2, 0, 0, 1);--motion-ease-in-out: cubic-bezier(.4, 0, .2, 1)}@media(prefers-reduced-motion:reduce){:root{--motion-fast: 0s;--motion-base: 0s;--motion-slow: 0s}*,*:before,*:after{animation-duration:1ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:1ms!important;transition-delay:0s!important}:root,*{scroll-behavior:auto!important}}:root{--overlay-max: 32rem;--overlay-radius: .75rem;--overlay-scrim-opacity: .62;--overlay-rise: .75rem;--overlay-pad: 1.25rem;--overlay-sheet-max: 30rem;--overlay-sheet-travel: 1.5rem;--overlay-toast-max: 22rem;--overlay-toast-travel: .5rem;--overlay-toast-layer: 2;--overlay-tone-accent: .1875rem}.modal{box-sizing:border-box;margin:auto;inline-size:calc(100% - 2 * var(--layout-gutter));max-inline-size:var(--overlay-max);max-block-size:calc(100% - 2 * var(--layout-gutter));padding:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--overlay-radius);background:var(--elevated);color:var(--text)}.modal[open]{display:flex;flex-direction:column;animation:overlay-surface-in var(--motion-slow) var(--motion-ease)}.modal::backdrop{background:var(--navy-plate);opacity:var(--overlay-scrim-opacity)}.modal[open]::backdrop{animation:overlay-scrim-in var(--motion-base) var(--motion-ease)}.modal-header{display:flex;flex-direction:column;gap:.25rem;padding:var(--overlay-pad);padding-block-end:0}.modal-heading{margin:0;font-size:1.125rem;font-weight:600;line-height:1.3}.modal-description{margin:0;color:var(--text-secondary)}.modal-body{min-block-size:0;padding:var(--overlay-pad);overflow-y:auto;color:var(--text-secondary)}.modal-actions{display:flex;flex-direction:column;gap:var(--target-gap);margin-block-start:var(--overlay-pad);padding:var(--overlay-pad);border-block-start:1px solid var(--border)}.modal-action{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:var(--target-gap);min-block-size:var(--target-min);padding-inline:1rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);color:var(--text);font:inherit;font-weight:600;cursor:pointer}.modal-action-confirm{border-color:var(--brand);background:var(--brand);color:var(--focus-contrast)}.modal-action-danger{border-color:var(--danger);background:var(--danger);color:var(--focus-contrast)}.modal-action[disabled]{border-color:var(--border);background:var(--surface);color:var(--muted);cursor:not-allowed}.modal-phrase{display:flex;flex-direction:column;gap:.375rem;margin-block-start:var(--overlay-pad)}.modal-phrase:only-child{margin-block-start:0}.modal-phrase-label{color:var(--text);font-weight:600}.modal-phrase-target{padding:.125rem .375rem;border:1px solid var(--border);border-radius:.25rem;background:var(--surface);color:var(--text);font-family:monospace}.modal-phrase-field{box-sizing:border-box;inline-size:100%;min-block-size:var(--target-min);padding-inline:.75rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);color:var(--text);font:inherit}.sheet{box-sizing:border-box;margin:0;inline-size:100%;max-inline-size:none;block-size:100%;padding:0;overflow:hidden;border:0;border-radius:0;background:var(--elevated);color:var(--text)}.sheet[open]{display:flex;flex-direction:column;animation:overlay-sheet-in var(--motion-slow) var(--motion-ease)}.sheet::backdrop{background:var(--navy-plate);opacity:var(--overlay-scrim-opacity)}.sheet[open]::backdrop{animation:overlay-scrim-in var(--motion-base) var(--motion-ease)}.sheet-header{display:grid;grid-template-columns:1fr auto;align-items:start;gap:.25rem var(--target-gap);padding:var(--overlay-pad);padding-block-start:max(var(--overlay-pad),env(safe-area-inset-top));padding-block-end:var(--overlay-pad);border-block-end:1px solid var(--border)}.sheet-heading{grid-column:1;margin:0;font-size:1.125rem;font-weight:600;line-height:1.3}.sheet-description{grid-column:1;margin:0;color:var(--text-secondary)}.sheet-close{box-sizing:border-box;grid-column:2;grid-row:1;display:inline-flex;align-items:center;justify-content:center;min-block-size:var(--target-min);min-inline-size:var(--target-min);padding-inline:.75rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);color:var(--text);font:inherit;font-weight:600;cursor:pointer}.sheet-body{flex:1;min-block-size:0;padding:var(--overlay-pad);overflow-y:auto;color:var(--text-secondary)}.sheet-actions{display:flex;flex-direction:column;gap:var(--target-gap);padding:var(--overlay-pad);padding-block-end:max(var(--overlay-pad),env(safe-area-inset-bottom));border-block-start:1px solid var(--border);background:var(--elevated)}.toast-region{box-sizing:border-box;position:fixed;inset-block-start:0;inset-inline:0;z-index:var(--overlay-toast-layer);display:flex;justify-content:center;padding:var(--overlay-pad);padding-block-start:max(var(--overlay-pad),env(safe-area-inset-top));pointer-events:none}.toast{box-sizing:border-box;display:flex;align-items:flex-start;gap:var(--target-gap);inline-size:100%;max-inline-size:var(--overlay-toast-max);padding:var(--overlay-pad);border:1px solid var(--border);border-radius:var(--overlay-radius);background:var(--elevated);color:var(--text);pointer-events:auto;animation:overlay-toast-in var(--motion-base) var(--motion-ease)}.toast-icon{flex:none;font-weight:700}.toast-message{flex:1;min-inline-size:0;margin:0}.toast-success{border-inline-start:var(--overlay-tone-accent) solid var(--ok)}.toast-success .toast-icon{color:var(--ok)}.toast-info{border-inline-start:var(--overlay-tone-accent) solid var(--brand)}.toast-info .toast-icon{color:var(--brand)}.toast-dismiss{box-sizing:border-box;flex:none;display:inline-flex;align-items:center;justify-content:center;min-block-size:var(--target-min);min-inline-size:var(--target-min);padding-inline:.5rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);color:var(--text);font:inherit;font-weight:600;cursor:pointer}.banner-region,.result-region{display:block}.banner{box-sizing:border-box;display:grid;grid-template-columns:auto 1fr;gap:.25rem var(--target-gap);padding:var(--overlay-pad);border:1px solid var(--border);border-radius:var(--overlay-radius);background:var(--surface);color:var(--text);animation:overlay-banner-in var(--motion-base) var(--motion-ease)}.banner-icon{grid-column:1;grid-row:1;font-weight:700}.banner-content{grid-column:2;display:flex;flex-direction:column;gap:.25rem;min-inline-size:0}.banner-heading{margin:0;font-weight:600}.banner-message{margin:0;color:var(--text-secondary)}.banner-actions{grid-column:2;display:flex;flex-direction:column;gap:var(--target-gap);margin-block-start:var(--overlay-pad)}.banner-retry{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-block-size:var(--target-min);padding-inline:1rem;border:1px solid var(--border);border-radius:.5rem;background:var(--elevated);color:var(--text);font:inherit;font-weight:600;cursor:pointer}.banner-error{border-inline-start:var(--overlay-tone-accent) solid var(--danger)}.banner-error .banner-icon{color:var(--danger)}.banner-offline{border-inline-start:var(--overlay-tone-accent) solid var(--warning)}.banner-offline .banner-icon{color:var(--warning)}@keyframes overlay-scrim-in{0%{opacity:0}to{opacity:var(--overlay-scrim-opacity)}}@keyframes overlay-surface-in{0%{opacity:0;transform:translateY(var(--overlay-rise))}to{opacity:1;transform:translateY(0)}}@keyframes overlay-sheet-in{0%{opacity:0;transform:translateY(var(--overlay-sheet-travel))}to{opacity:1;transform:translateY(0)}}@keyframes overlay-sheet-slide-in{0%{opacity:0;transform:translate(var(--overlay-sheet-travel))}to{opacity:1;transform:translate(0)}}@keyframes overlay-toast-in{0%{opacity:0;transform:translateY(calc(-1 * var(--overlay-toast-travel)))}to{opacity:1;transform:translateY(0)}}@keyframes overlay-toast-rise-in{0%{opacity:0;transform:translateY(var(--overlay-toast-travel))}to{opacity:1;transform:translateY(0)}}@keyframes overlay-banner-in{0%{opacity:0}to{opacity:1}}@media(min-width:768px){.modal-actions{flex-direction:row;justify-content:flex-end}.sheet{margin-inline-start:auto;inline-size:calc(100% - 2 * var(--layout-gutter));max-inline-size:var(--overlay-sheet-max);border-inline-start:1px solid var(--border);border-start-start-radius:var(--overlay-radius);border-end-start-radius:var(--overlay-radius)}.sheet[open]{animation-name:overlay-sheet-slide-in}.sheet-header{padding-block-start:var(--overlay-pad)}.sheet-actions{flex-direction:row;justify-content:flex-end}.toast-region{inset-block-start:auto;inset-block-end:0;justify-content:flex-end;padding-block-start:var(--overlay-pad)}.toast{animation-name:overlay-toast-rise-in}.banner-actions{flex-direction:row}}@media(hover:hover){.modal-action:not([disabled]):hover{border-color:var(--brand)}.modal-action-confirm:not([disabled]):hover,.modal-action-danger:not([disabled]):hover{box-shadow:inset 0 0 0 1px var(--focus-contrast)}.sheet-close:hover,.toast-dismiss:hover,.banner-retry:hover{border-color:var(--brand)}}:root{--field-gap: .375rem;--field-radius: .5rem;--field-pad-inline: .75rem;--field-tone-error: var(--danger);--field-spinner-size: 1rem}.field{display:flex;flex-direction:column;gap:var(--field-gap)}.field-label{color:var(--text);font-weight:600}.field-hint{margin:0;color:var(--text-secondary)}.field-control{box-sizing:border-box;inline-size:100%;min-block-size:var(--target-min);padding-inline:var(--field-pad-inline);border:1px solid var(--border);border-radius:var(--field-radius);background:var(--surface);color:var(--text);font:inherit}.field-control-invalid{border-width:2px;border-color:var(--field-tone-error)}.field-error{display:flex;align-items:flex-start;gap:var(--target-gap);margin:0;color:var(--field-tone-error)}.field-error-icon{display:inline-flex;flex:none;align-items:center;justify-content:center;inline-size:1.25rem;block-size:1.25rem;border:1px solid var(--field-tone-error);border-radius:50%;font-weight:700;line-height:1}.field-error-text{flex:1}.form-submit{display:inline-flex;align-items:center;justify-content:center;gap:var(--target-gap);min-block-size:var(--target-min);min-inline-size:var(--target-min);padding-inline:1rem;border:1px solid var(--brand);border-radius:var(--field-radius);background:var(--brand);color:var(--focus-contrast);font:inherit;font-weight:600;cursor:pointer}.form-submit[disabled]{opacity:.7;cursor:default}.form-submit-label{display:inline}.form-submit-spinner{display:inline-flex;flex:none;align-items:center;justify-content:center;inline-size:var(--field-spinner-size);block-size:var(--field-spinner-size);line-height:1;animation:form-submit-spin var(--motion-slow) linear infinite}@keyframes form-submit-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(hover:hover){.field-control:hover{border-color:var(--brand)}.form-submit:not([disabled]):hover{box-shadow:inset 0 0 0 1px var(--focus-contrast)}}:root{--state-gap: .75rem;--state-max: 28rem;--state-pad: 2rem;--state-icon-size: 3rem}.state{display:flex;flex-direction:column;align-items:center;gap:var(--state-gap);max-inline-size:var(--state-max);margin-inline:auto;padding:var(--state-pad);text-align:center;color:var(--text)}.state-icon{display:inline-flex;flex:none;align-items:center;justify-content:center;inline-size:var(--state-icon-size);block-size:var(--state-icon-size);font-size:var(--state-icon-size);line-height:1}.state-heading{margin:0;color:var(--text);font-weight:600}.state-message{margin:0;color:var(--text-secondary)}.state-actions{display:flex;gap:var(--target-gap)}.state-action{display:inline-flex;align-items:center;justify-content:center;min-block-size:var(--target-min);min-inline-size:var(--target-min);padding-inline:1rem;border:1px solid var(--brand);border-radius:.5rem;background:var(--brand);color:var(--focus-contrast);font:inherit;font-weight:600;cursor:pointer}.state-empty .state-icon{color:var(--muted)}.state-error .state-icon{border:1px solid var(--danger);border-radius:50%;color:var(--danger);font-size:calc(var(--state-icon-size) / 2)}.state-loading .state-spinner{color:var(--brand);animation:state-spin var(--motion-slow) linear infinite}@keyframes state-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(hover:hover){.state-action:hover{box-shadow:inset 0 0 0 1px var(--focus-contrast)}}
