/* Generated by tools/sync_public_hub_ui.mjs from database-worker/public/federal.html (its inline <style> block). Do not edit. */
.hub-fed * { box-sizing:border-box; }
.hub-fed header { padding:14px 22px; border-bottom:2px solid var(--border-strong);
           display:flex; align-items:center; gap:14px; flex-wrap:wrap;
           justify-content:space-between; }
.hub-fed header h1 { font-size:17px; margin:0; letter-spacing:.4px; }
.hub-fed header .sub { color:var(--muted); font-size:12.5px; }
.hub-fed header .up { color:var(--muted); text-decoration:none; font-size:12px;
               border:1px solid var(--border-strong); border-radius:6px;
               padding:3px 9px; white-space:nowrap; }
.hub-fed header .up:hover { color:var(--text); background:var(--panel2); }
.hub-fed section { background:var(--panel); border:1px solid var(--border);
            border-radius:8px; padding:16px 18px; margin-bottom:18px; }
.hub-fed h2 { font-size:13px; text-transform:uppercase; letter-spacing:1.2px;
       color:var(--gold); margin:0 0 12px; }
.hub-fed .row { display:flex; flex-wrap:wrap; gap:10px; align-items:flex-end; }
.hub-fed label { display:flex; flex-direction:column; gap:3px; font-size:11.5px;
          color:var(--muted); }
.hub-fed input,
.hub-fed select,
.hub-fed button { background:var(--panel2); color:var(--text);
    font:inherit; border:1px solid var(--control-border); border-radius:5px;
    padding:7px 10px; max-width:300px; }
.hub-fed button { cursor:pointer; }
.hub-fed .lblgroup { display:flex; flex-direction:column; gap:3px; font-size:11.5px;
              color:var(--muted); }
.hub-fed .hint { color:var(--faint); font-size:11.5px; margin-top:10px; }
.hub-fed .hint a { color:var(--gold); display:inline-flex; align-items:center;
            min-height:24px; }
.hub-fed .hint button { background:none; border:0; padding:0; margin:0; font:inherit;
                 color:var(--gold); text-decoration:underline; cursor:pointer;
                 display:inline-flex; align-items:center; min-height:24px; }
.hub-fed .hint button:hover { color:var(--text); }
.hub-fed .hint button:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
.hub-fed .asof { border-left:3px solid var(--gold); background:var(--panel2);
          padding:9px 13px; margin:0 0 14px; font-size:12px;
          color:var(--muted); border-radius:0 5px 5px 0; }
.hub-fed .asof b { color:var(--text); }
.hub-fed .count { color:var(--muted); font-size:12.5px; margin:14px 0 4px; }
.hub-fed .count b { color:var(--gold); font-size:17px;
             font-variant-numeric:tabular-nums; }
.hub-fed .act { border:1px solid var(--border);
         border-left:var(--rule,3px) solid var(--accent);
         border-radius:5px; padding:12px 14px; margin-top:10px;
         background:var(--panel2);
         display:grid; grid-template-columns:76px 1fr; gap:0 15px; }
.hub-fed .rail { text-align:center; padding-top:1px; }
.hub-fed .rail .mon { font:700 11.5px/1 "Segoe UI", system-ui, sans-serif;
               text-transform:uppercase; letter-spacing:1.8px;
               color:var(--muted); }
.hub-fed .rail .day { font:600 25px/1.05 "Segoe UI", system-ui, sans-serif;
               color:var(--text); font-variant-numeric:tabular-nums;
               margin-top:1px; }
.hub-fed .rail .yr { font:600 12px/1 "Segoe UI", system-ui, sans-serif;
              color:var(--faint); letter-spacing:.8px; margin-top:1px; }
.hub-fed .rail .approx { font:400 9.5px/1.2 "Segoe UI"; color:var(--faint);
                  margin-top:3px; letter-spacing:.4px; }
.hub-fed .rail .chip { display:inline-block; margin-top:9px; padding:4px 7px;
                border-radius:4px; font:700 11.5px/1.15 "Segoe UI", sans-serif;
                letter-spacing:.4px; max-width:100%; overflow-wrap:anywhere;
                border:1px solid; }
.hub-fed .rail .chip.court { font-size:9.5px; letter-spacing:.8px; }
.hub-fed .act .top { display:flex; flex-wrap:wrap; gap:8px; align-items:baseline; }
.hub-fed .act .ttl { font-weight:600; font-size:13.5px; }
.hub-fed .act .actor { color:var(--muted); font-size:12px; }
.hub-fed .act .body { min-width:0; }
@media (max-width:560px) {
.hub-fed .act { grid-template-columns:60px 1fr; gap:0 11px; }
.hub-fed .rail .day { font-size:22px; }
.hub-fed .rail .chip { font-size:10px; padding:3px 5px; }
}
.hub-fed .act .desc { color:var(--muted); font-size:12.5px; margin-top:6px;
               padding-top:6px; border-top:1px dashed var(--border); }
.hub-fed .act .st { font-size:12px; margin-top:6px; color:var(--faint); }
.hub-fed .act .st b { color:var(--muted); font-weight:600; }
.hub-fed .act .dispute-note { font-size:11.5px; margin-top:6px; color:var(--anti-text); }
.hub-fed .act .dispute-note b { font-weight:600; }
.hub-fed .cases { margin-top:9px; padding-top:8px; border-top:1px dashed var(--border); }
.hub-fed .cases-h { font-size:10.5px; text-transform:uppercase; letter-spacing:.8px;
             color:var(--faint); margin-bottom:5px; }
.hub-fed .case-row { font-size:12px; margin-top:6px; }
.hub-fed .case-row:first-of-type { margin-top:0; }
.hub-fed .case-role { display:inline-block; font-size:10.5px; font-weight:700;
               text-transform:uppercase; letter-spacing:.4px; color:var(--blue);
               margin-right:6px; }
.hub-fed .case-name a { color:var(--gold); }
.hub-fed .fh-watch { font:inherit; font-size:12px; min-height:26px; padding:2px 11px; border-radius:999px;
              border:1px solid var(--control-border); background:var(--panel); color:var(--text); cursor:pointer; }
.hub-fed .fh-watch:hover { border-color:var(--gold); }
.hub-fed .fh-watch:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
.hub-fed .case-meta { color:var(--faint); font-size:11px; }
.hub-fed .case-latest { color:var(--muted); font-size:11.5px; margin-top:2px; }
.hub-fed .case-flag { color:var(--anti-text); font-size:11.5px; margin-top:2px;
               font-weight:600; }
.hub-fed .act .docs { margin-top:9px; display:flex; gap:7px; flex-wrap:wrap; }
.hub-fed .act .docs a { display:inline-flex; align-items:center; gap:6px;
                 font-size:11.5px; text-decoration:none; color:var(--text);
                 background:var(--panel); border:1px solid var(--border-strong);
                 border-left:3px solid var(--anti);
                 border-radius:4px; padding:4px 9px 4px 8px; max-width:100%; }
.hub-fed .act .docs a:hover { border-color:var(--gold); color:var(--gold); }
.hub-fed .act .docs .nm { overflow:hidden; text-overflow:ellipsis;
                   white-space:nowrap; max-width:280px; }
.hub-fed .act .docs .meta { color:var(--faint); font-size:10.5px; white-space:nowrap; }
.hub-fed .act .srcs { margin-top:7px; display:flex; gap:10px; flex-wrap:wrap; }
.hub-fed .act .srcs a { color:var(--gold); font-size:11.5px; word-break:break-all;
                 display:inline-flex; align-items:center; min-height:24px; }
.hub-fed .badge { font-size:10.5px; padding:1px 8px; border-radius:9px;
           border:1px solid var(--border-strong); color:var(--muted);
           white-space:nowrap; }
.hub-fed .badge.ty { color:var(--blue); border-color:var(--blue); }
.hub-fed .badge.sec { color:var(--faint); }
.hub-fed .badge.t0 { color:var(--pro); border-color:var(--pro); }
.hub-fed .badge.t1,
.hub-fed .badge.t2 { color:var(--gold); border-color:var(--gold); }
.hub-fed .badge.t3,
.hub-fed .badge.t4,
.hub-fed .badge.t5 { color:var(--anti-text);
                                    border-color:var(--anti); }
.hub-fed .act.f-binding { --accent:var(--gold);          --rule:4px; }
.hub-fed .act.f-proposed { --accent:var(--blue);          --rule:3px; }
.hub-fed .act.f-directive { --accent:var(--border-strong); --rule:3px; }
.hub-fed .act.f-admin { --accent:var(--border);        --rule:3px; }
.hub-fed .grp { margin-top:20px; }
.hub-fed .grp > h3 { margin:0; font-size:inherit; font-weight:inherit; }
.hub-fed .grp > h3 > button { display:flex; align-items:center; gap:9px; width:100%;
              font:600 13px/1.4 "Segoe UI", sans-serif; cursor:pointer;
              padding:9px 12px; border:1px solid var(--border);
              border-left:4px solid var(--gaccent, var(--border-strong));
              border-radius:5px; background:var(--panel2); color:var(--text);
              user-select:none; text-align:left; max-width:none; }
.hub-fed .grp > h3 > button:hover { border-color:var(--gold); }
.hub-fed .grp > h3 button .n { font-variant-numeric:tabular-nums; color:var(--gold);
                 font-weight:700; }
.hub-fed .grp > h3 button .force { margin-left:auto; font-weight:400; font-size:11px;
                     color:var(--faint); letter-spacing:.4px;
                     text-align:right; }
.hub-fed .grp > h3 button .caret { color:var(--gold); font-size:13px; width:12px;
                     line-height:1; text-align:center; }
.hub-fed .grp.f-binding { --gaccent:var(--gold); }
.hub-fed .grp.f-proposed { --gaccent:var(--blue); }
.hub-fed .grp.f-directive { --gaccent:var(--border-strong); }
.hub-fed .grp.f-admin { --gaccent:var(--border); }
.hub-fed .grp .rows { padding-left:2px; }
.hub-fed .grp .gmore { margin-top:9px; font-size:12px; }
.hub-fed .badge.disputed { color:var(--anti-text); border-color:var(--anti);
                    cursor:help; }
.hub-fed .view-toggle { display:inline-flex; border:1px solid var(--control-border);
                 border-radius:6px; overflow:hidden; }
.hub-fed .view-toggle button { background:transparent; border:0; border-radius:0;
                        color:var(--faint); font-size:11.5px; padding:6px 12px;
                        max-width:none; }
.hub-fed .view-toggle button + button { border-left:1px solid var(--border); }
.hub-fed .view-toggle button[aria-pressed="true"] { background:var(--gold-fill);
                                             color:var(--on-gold);
                                             font-weight:600; }
.hub-fed #fedDoc { display:none; position:fixed; z-index:60;
            top:5vh; bottom:5vh; left:50%; transform:translateX(-50%);
            width:min(1040px, 94vw); border:1px solid var(--border-strong);
            border-radius:8px; background:#0d0d0d; overflow:hidden;
            box-shadow:0 18px 60px rgba(0,0,0,.75); }
.hub-fed #fedDoc.on { display:flex; flex-direction:column; }
.hub-fed #fedDocBack { display:none; position:fixed; inset:0; z-index:59;
                background:rgba(0,0,0,.6); }
.hub-fed #fedDocBack.on { display:block; }
.hub-fed #fedDocSlot { min-height:0; flex:1 1 auto; display:flex; }
.hub-fed .fd-head { padding:10px 14px; border-bottom:1px solid #2a2724;
             display:flex; gap:12px; align-items:baseline; flex:0 0 auto;
             flex-wrap:wrap; }
.hub-fed .fd-head b { color:#e8e6e3; font-size:13.5px; }
.hub-fed .fd-meta { color:#a09c97; font-size:11.5px; white-space:nowrap; }
.hub-fed .fd-head .sp { margin-left:auto; }
.hub-fed .fd-head a,
.hub-fed .fd-head button { color:#5b8fb9; font-size:11.5px;
      background:none; border:0; border-bottom:1px solid #5b8fb9;
      border-radius:0; padding:0 0 1px; cursor:pointer; max-width:none;
      text-decoration:none; white-space:nowrap; }
.hub-fed .fd-head a:hover,
.hub-fed .fd-head button:hover { color:#82b2d9; }
.hub-fed .fd-frame { flex:1 1 auto; width:100%; border:0; background:#525659; }
.hub-fed .fd-note { padding:22px 26px; color:#c9c5c0; font-size:13px;
             line-height:1.6; overflow:auto; }
.hub-fed .fd-pages { flex:1 1 auto; overflow:auto; padding:12px;
              background:#525659; -webkit-overflow-scrolling:touch; }
.hub-fed .fd-page { position:relative; margin:0 auto 12px; width:fit-content;
             box-shadow:0 1px 6px rgba(0,0,0,.5); background:#fff; }
.hub-fed .fd-pages canvas { display:block; max-width:100%; }
.hub-fed .fd-pages .fd-note { padding:14px 4px 4px; }
.hub-fed #fedDoc .textLayer {
    color-scheme:only light;
    position:absolute; inset:0; text-align:initial; overflow:clip;
    opacity:1; line-height:1; letter-spacing:normal; word-spacing:normal;
    -webkit-text-size-adjust:none; -moz-text-size-adjust:none; text-size-adjust:none;
    forced-color-adjust:none; transform-origin:0 0; caret-color:CanvasText;
    z-index:0;
    --min-font-size:1;
    --text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));
    --min-font-size-inv:calc(1 / var(--min-font-size));
  }
.hub-fed #fedDoc .textLayer.highlighting { touch-action:none; }
.hub-fed #fedDoc .textLayer span,
.hub-fed #fedDoc .textLayer br {
    color:transparent; position:absolute; white-space:pre; cursor:text;
    transform-origin:0% 0%;
    -webkit-user-select:text; -moz-user-select:text; user-select:text;
  }
.hub-fed #fedDoc .textLayer > :not(.markedContent),
.hub-fed #fedDoc .textLayer .markedContent span:not(.markedContent) {
    z-index:1;
    --font-height:0;
    font-size:calc(var(--text-scale-factor) * var(--font-height));
    --scale-x:1;
    --rotate:0deg;
    transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv));
  }
.hub-fed #fedDoc .textLayer .markedContent { display:contents; }
.hub-fed #fedDoc .textLayer span[role="img"] {
    -webkit-user-select:none; -moz-user-select:none; user-select:none;
    cursor:default;
  }
.hub-fed #fedDoc .textLayer .highlight {
    --highlight-bg-color:rgb(180 0 170 / .25);
    --highlight-selected-bg-color:rgb(0 100 0 / .25);
    --highlight-backdrop-filter:none;
    --highlight-selected-backdrop-filter:none;
    margin:-1px; padding:1px;
    background-color:var(--highlight-bg-color);
    backdrop-filter:var(--highlight-backdrop-filter);
    border-radius:4px;
  }
@media screen and (forced-colors: active) {
.hub-fed #fedDoc .textLayer .highlight {
      --highlight-bg-color:transparent;
      --highlight-selected-bg-color:transparent;
      --highlight-backdrop-filter:var(--hcm-highlight-filter, none);
      --highlight-selected-backdrop-filter:var(--hcm-highlight-selected-filter, none);
    }
}
.hub-fed #fedDoc .textLayer .highlight.appended { position:initial; }
.hub-fed #fedDoc .textLayer .highlight.begin { border-radius:4px 0 0 4px; }
.hub-fed #fedDoc .textLayer .highlight.end { border-radius:0 4px 4px 0; }
.hub-fed #fedDoc .textLayer .highlight.middle { border-radius:0; }
.hub-fed #fedDoc .textLayer .highlight.selected {
    background-color:var(--highlight-selected-bg-color);
    backdrop-filter:var(--highlight-selected-backdrop-filter);
    scroll-margin-top:50px;
  }
.hub-fed #fedDoc .textLayer.selectionRendering ::-moz-selection { background:transparent; color:transparent; }
.hub-fed #fedDoc .textLayer.selectionRendering ::selection { background:transparent; color:transparent; }
.hub-fed #fedDoc .textLayer br::-moz-selection { background:transparent; }
.hub-fed #fedDoc .textLayer br::selection { background:transparent; }
.hub-fed #fedDoc .textLayer .endOfContent {
    display:block; position:absolute; inset:100% 0 0; z-index:0; cursor:default;
    -webkit-user-select:none; -moz-user-select:none; user-select:none;
  }
.hub-fed #fedDoc .textLayer.selecting .endOfContent { top:0; }
.hub-fed #fedDoc .textLayer ::-moz-selection { background:rgba(180,140,40,.45); color:transparent; }
.hub-fed #fedDoc .textLayer ::selection { background:rgba(180,140,40,.45); color:transparent; }
.hub-fed #fedDoc .textLayer mark { background:rgba(212,160,60,.5); color:transparent;
                    padding:0; border-radius:2px; }
.hub-fed #fedDoc .textLayer mark.on { background:rgba(255,130,40,.8); }
.hub-fed .fd-find { display:flex; align-items:center; gap:8px; flex:0 0 auto;
             padding:7px 12px; border-bottom:1px solid #2a2724;
             background:#101010; }
.hub-fed .fd-find input { flex:1 1 auto; min-width:0; max-width:280px;
                   background:#1a1a1a; color:#e8e6e3; font:inherit;
                   font-size:12.5px; border:1px solid #726b64;
                   border-radius:5px; padding:6px 9px; }
.hub-fed .fd-find button { background:none; border:1px solid #726b64;
                    border-radius:5px; color:#a09c97; font-size:12px;
                    padding:5px 9px; min-width:32px; min-height:30px;
                    cursor:pointer; max-width:none; }
.hub-fed .fd-find button:hover:not(:disabled) { color:#e8e6e3; border-color:#5b8fb9; }
.hub-fed .fd-find button:disabled { opacity:.4; cursor:default; }
.hub-fed .fd-find .n { color:#a09c97; font-size:11.5px; white-space:nowrap;
                font-variant-numeric:tabular-nums; }
.hub-fed .fd-note a { color:#5b8fb9; }
.hub-fed #fedDoc.note-only { bottom:auto; max-height:90vh; }
@media (max-width:560px) {
.hub-fed #fedDoc { top:3vh; width:96vw; }
.hub-fed .fd-head { padding:9px 11px; gap:9px; }
}
.hub-fed .act .docs a { cursor:pointer; }
.hub-fed #more { margin-top:14px; }
.hub-fed a:focus-visible,
.hub-fed button:focus-visible,
.hub-fed summary:focus-visible,
.hub-fed [tabindex]:focus-visible {
    outline:2px solid var(--gold); outline-offset:2px; border-radius:3px; }
.hub-fed .vh { position:absolute; width:1px; height:1px; margin:-1px; padding:0;
        overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
@media (prefers-reduced-motion: reduce) {
.hub-fed *,
.hub-fed *::before,
.hub-fed *::after { animation-duration:.01ms !important;
      animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}
.hub-fed input,
.hub-fed select,
.hub-fed textarea { max-width:100%; }
.hub-fed label { min-width:0; max-width:100%; }
.hub-fed select { max-width:min(300px, 100%); }
.hub-fed [hidden] { display:none !important; }
.hub-fed #tiersView { margin-top:6px; }
.hub-fed .tiers-h { font-size:13.5px; color:var(--text); margin:18px 0 6px; text-transform:none; letter-spacing:0; }
.hub-fed .tiers-lede { color:var(--muted); font-size:13px; max-width:78ch; margin:0 0 12px; }

