:root{
    --paper:#E9E7D9;
    --paper-raised:#F4F2E7;
    --ink:#211E16;
    --ink-soft:#57543F;
    --green-900:#24402F;
    --green-700:#3C6349;
    --green-050:#DDE6DC;
    --ochre:#A9772A;
    --ochre-text:#7A5419;
    --ochre-soft:#EFE1C4;
    --rust:#9C3B2A;
    --rust-soft:#F3DCD4;
    --blue-soft:#DCE7F2;
    --blue-text:#24507A;
    --warn-bg:#F9E39A;
    --line:#C7C0A7;
    --line-strong:#A79F84;
    --focus:#3C6349;
    --shadow: 0 1px 2px rgba(33,30,22,.06);
  }
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]){
      --paper:#181B15;
      --paper-raised:#20241C;
      --ink:#ECE7D6;
      --ink-soft:#AFA98F;
      --green-900:#8FBB9E;
      --green-700:#6FA383;
      --green-050:#26332A;
      --ochre:#D9AC5C;
      --ochre-text:#D9AC5C;
      --ochre-soft:#3A311E;
      --rust:#E08066;
      --rust-soft:#3A2420;
      --blue-soft:#1E2A36;
      --blue-text:#8DB4DA;
      --warn-bg:#4A3B12;
      --line:#3A3E30;
      --line-strong:#4C5140;
      --focus:#8FBB9E;
      --shadow: 0 1px 2px rgba(0,0,0,.3);
    }
  }
  :root[data-theme="dark"]{
    --ochre-text:#D9AC5C;
    --paper:#181B15;
    --paper-raised:#20241C;
    --ink:#ECE7D6;
    --ink-soft:#AFA98F;
    --green-900:#8FBB9E;
    --green-700:#6FA383;
    --green-050:#26332A;
    --ochre:#D9AC5C;
    --ochre-soft:#3A311E;
    --rust:#E08066;
    --rust-soft:#3A2420;
    --blue-soft:#1E2A36;
    --blue-text:#8DB4DA;
    --warn-bg:#4A3B12;
    --line:#3A3E30;
    --line-strong:#4C5140;
    --focus:#8FBB9E;
    --shadow: 0 1px 2px rgba(0,0,0,.3);
  }

  *{box-sizing:border-box;}
  /* Scoped to our own wrapper, not the real <body> — a theme's own body
     background/color rules would otherwise win the cascade and leave our
     content sitting on white with the wrong text colors. */
  .cea-ar-root{
    display:block;
    background:var(--paper);
    color:var(--ink);
    font-family:"IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
    font-size:15px;
    line-height:1.5;
  }
  /* The theme's own h1/h2/h3 rules have equal selector specificity and load
     after ours, so without an explicit color here the theme wins the
     cascade by source order — headings render in the theme's fixed grey
     regardless of light/dark mode, unreadable against our dark surfaces. */
  h1,h2,h3{
    font-family:"Fraunces", Georgia, serif;
    font-weight:500;
    text-wrap:balance;
    margin:0;
    color:var(--ink);
  }
  input[type="text"]{
    font-variant-numeric: tabular-nums;
  }

  /* ---------- shell ---------- */
  /* Single column — the two-column layout with a sticky summary rail made
     the form's own left-hand column hard to read at a glance, so the
     summary moved into the pre-submit confirmation modal (see
     dialog#confirm-modal) instead of living beside the form. */
  .shell{
    max-width:760px;
    margin:0 auto;
    padding:40px 28px 120px;
  }

  .doc-head{
    margin-bottom:34px;
    padding-bottom:26px;
    border-bottom:1px solid var(--line-strong);
  }
  .doc-head .kicker{
    color:var(--ink-soft);
    font-size:13px;
    margin-bottom:6px;
  }
  .doc-head h1{
    font-size:30px;
    letter-spacing:-.01em;
  }
  .doc-head p{
    margin:10px 0 0;
    color:var(--ink-soft);
    font-size:14.5px;
  }

  /* ---------- sections ---------- */
  .section{
    padding:28px 0;
    border-bottom:1px solid var(--line);
  }
  .section:first-of-type{ padding-top:0; }
  .section-head{
    display:flex;
    align-items:baseline;
    gap:12px;
    margin-bottom:18px;
  }
  .section-num{
    font-family:"IBM Plex Mono", monospace;
    font-size:13px;
    color:var(--green-700);
    border:1px solid var(--green-700);
    border-radius:50%;
    width:24px;
    height:24px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
  }
  .section-head h2{
    font-size:19px;
  }
  .section-note{
    color:var(--ink-soft);
    font-size:13.5px;
    margin:-8px 0 18px 36px;
  }
  .section-body{ margin-left:36px; }

  .legal-notice{
    display:flex;
    gap:14px;
    align-items:flex-start;
    margin-top:22px;
    padding:16px 18px;
    background:var(--ochre-soft);
    border:1px solid var(--ochre);
    border-radius:4px;
  }
  .legal-notice .icon{
    width:26px; height:26px; flex-shrink:0;
    border-radius:50%;
    background:var(--paper-raised);
    color:var(--ochre);
    border:1px solid var(--ochre);
    display:flex; align-items:center; justify-content:center;
    font-family:"Fraunces", serif;
    font-size:14px;
  }
  .legal-notice p{ margin:0; font-size:13.5px; line-height:1.55; color:var(--ink-soft); overflow-wrap:anywhere; }
  .legal-notice a{ color:var(--ochre-text); text-decoration-thickness:1px; }

  /* ---------- field basics ---------- */
  label{
    display:block;
    font-size:13px;
    color:var(--ink-soft);
    margin-bottom:6px;
  }
  .req{ color:var(--rust); }
  .field{ display:flex; flex-direction:column; }
  input[type="text"], input[type="date"], input[type="email"], select, textarea{
    font:inherit;
    color:var(--ink);
    background:var(--paper-raised);
    border:1px solid var(--line-strong);
    border-radius:3px;
    padding:9px 11px;
    width:100%;
  }
  textarea{
    resize:vertical;
    min-height:120px;
    line-height:1.5;
  }
  input:focus-visible, select:focus-visible, button:focus-visible, .upload:focus-within{
    outline:2px solid var(--focus);
    outline-offset:1px;
  }
  input.invalid-flag{
    background:var(--warn-bg);
    border-color:var(--rust);
    color:var(--ink);
  }
  .field-error-note{
    display:none;
    align-items:center;
    gap:5px;
    margin-top:6px;
    font-size:12px;
    font-weight:500;
    color:var(--rust);
  }
  .field-error-note.show{ display:flex; }
  .field-error-note::before{
    content:"!";
    display:flex;
    align-items:center;
    justify-content:center;
    width:14px; height:14px;
    border-radius:50%;
    background:var(--rust);
    color:var(--warn-bg);
    font-size:10px;
    font-weight:600;
    flex-shrink:0;
  }

  .row2{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
  @media (max-width:560px){ .row2{ grid-template-columns:1fr; } }
  .upload{
    border:1px dashed var(--line-strong);
    border-radius:4px;
    padding:16px;
    display:flex;
    align-items:center;
    gap:12px;
    background:var(--paper-raised);
    cursor:pointer;
    position:relative;
  }
  /* Visually hidden but still reachable with Tab (display:none took it out of
     the tab order); the label around it shows the focus ring via :focus-within. */
  .upload input{ position:absolute; left:0; top:0; width:1px; height:1px; opacity:0; overflow:hidden; }
  .upload .icon{
    width:34px; height:34px; flex-shrink:0;
    border-radius:50%;
    background:var(--green-050);
    color:var(--green-700);
    display:flex; align-items:center; justify-content:center;
  }
  .upload .txt{ font-size:13.5px; }
  .upload .txt strong{ display:block; font-weight:500; color:var(--ink); }
  .upload .txt span{ color:var(--ink-soft); font-size:12.5px; }
  .file-list{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:10px;
  }
  .file-chip{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 8px 6px 12px;
    border-radius:100px;
    background:var(--green-050);
    border:1px solid var(--green-700);
    font-size:12.5px;
    color:var(--green-700);
    max-width:100%;
  }
  .file-chip-name{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    max-width:260px;
  }
  .file-chip-remove{
    flex-shrink:0;
    width:28px; height:28px;
    margin:-5px -4px -5px -4px; /* bigger tap target without making the chip taller */
    border-radius:50%;
    border:none;
    background:transparent;
    color:inherit;
    font-size:15px;
    line-height:1;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
  }
  .file-chip-remove:hover, .file-chip-remove:focus-visible{
    background:var(--rust);
    color:#fff;
  }
  /* dialog header/footer chrome for the review modal */
  .sm-head{
    display:flex; align-items:center; justify-content:space-between;
    padding:16px 18px;
    border-bottom:1px solid var(--line);
  }
  .sm-head h3{ font-size:17px; }
  .sm-close{
    font:inherit; font-size:20px; line-height:1;
    background:none; border:none; color:var(--ink-soft); cursor:pointer; padding:4px;
  }
  .sm-foot{
    display:flex; justify-content:flex-end; gap:10px;
    padding:14px 18px;
    border-top:1px solid var(--line);
  }
  .sm-cancel{
    font:inherit; font-size:14px;
    background:none;
    border:none;
    color:var(--ink-soft);
    cursor:pointer;
    padding:10px 14px;
  }

  /* Submitting overlay: a non-dismissable dialog shown for the whole
     file-upload + Airtable round trip, since the small inline
     "submit-hint" text alone was easy to miss and filers weren't sure
     the click had registered. */
  dialog#submitting-modal{
    border:none;
    border-radius:6px;
    padding:0;
    width:min(360px, 92vw);
    background:var(--paper-raised);
    color:var(--ink);
    box-shadow:0 12px 36px rgba(0,0,0,.28);
  }
  dialog#submitting-modal::backdrop{ background:rgba(20,18,12,.5); }
  .submitting-body{ padding:28px 22px; text-align:center; }
  .submitting-body h3{ margin:16px 0 8px; font-size:17px; }
  .submitting-body p{ margin:0; font-size:13.5px; line-height:1.6; color:var(--ink-soft); }
  .submitting-spinner{
    width:38px; height:38px; margin:0 auto; border-radius:50%;
    border:4px solid var(--line); border-top-color:var(--green-700);
    animation:submitting-spin 0.8s linear infinite;
  }
  @media (prefers-reduced-motion: reduce){ .submitting-spinner{ animation-duration:2.4s; } }
  @keyframes submitting-spin{ to{ transform:rotate(360deg); } }

  .certify{
    display:flex;
    gap:12px;
    align-items:flex-start;
    margin-top:22px;
    padding:16px;
    background:var(--paper-raised);
    border:1px solid var(--line);
    border-radius:4px;
  }
  .certify input{ margin-top:3px; width:16px; height:16px; accent-color:var(--green-700); flex-shrink:0; }
  .certify p{ margin:0; font-size:13px; color:var(--ink-soft); }

  .submit-row{
    margin-top:26px;
    display:flex;
    align-items:center;
    gap:16px;
  }
  button.primary{
    font:inherit;
    font-weight:500;
    background:var(--green-900);
    color:var(--paper-raised);
    border:none;
    border-radius:3px;
    padding:12px 22px;
    cursor:pointer;
  }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) button.primary{ color:#0F140F; } }
  :root[data-theme="dark"] button.primary{ color:#0F140F; }
  button.primary:disabled, button.primary[aria-disabled="true"]{ opacity:.55; }
  button.primary:not(:disabled):not([aria-disabled="true"]):hover{ background:var(--green-700); }
  .submit-hint{ font-size:12.5px; color:var(--ink-soft); }

  /* Full-page confirmation: after submitting, the whole form (#ar-form-view)
     hides and this replaces it, so there's no doubt the responses went through. */
  .ar-success-view{
    max-width:520px;
    margin:0 auto;
    padding:72px 28px 100px;
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
  }
  .ar-success-view[hidden]{ display:none; }
  .ar-success-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:56px; height:56px;
    flex-shrink:0;
    border-radius:50%;
    background:var(--green-700);
    color:var(--paper-raised);
    font-size:26px;
    line-height:1;
    margin-bottom:20px;
  }
  .ar-success-view h2{
    font-size:24px;
    margin-bottom:12px;
  }
  .ar-success-view h2:focus{ outline:none; } /* focused by script.js so it is announced */
  #submit-success-msg{
    margin:0 0 26px;
    font-size:15px;
    line-height:1.55;
    color:var(--ink-soft);
  }
  .download-pdf-btn{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:10px 18px;
    border:1px solid var(--green-700);
    border-radius:4px;
    font-size:13.5px;
    font-weight:500;
    color:var(--green-700);
    text-decoration:none;
    background:transparent;
  }
  .download-pdf-btn:hover, .download-pdf-btn:focus-visible{
    background:var(--green-700);
    color:var(--paper-raised);
  }
  .download-pdf-btn[hidden]{ display:none; }

  .validation-summary{
    margin-top:16px;
    padding:14px 18px;
    background:var(--rust-soft);
    border:1px solid var(--rust);
    border-radius:4px;
  }
  .validation-summary strong{ color:var(--ink); font-size:13.5px; }
  .validation-summary ul{ margin:8px 0 0; padding-left:20px; }
  .validation-summary li{ font-size:13px; color:var(--ink-soft); margin-top:4px; }

  .btn-outline{
    font:inherit;
    font-weight:500;
    background:transparent;
    color:var(--ink-soft);
    border:1px solid var(--line-strong);
    border-radius:3px;
    padding:10px 18px;
    cursor:pointer;
  }
  .btn-outline:not(:disabled):hover, .btn-outline:focus-visible{
    color:var(--ink);
    border-color:var(--ink-soft);
  }
  .btn-outline:disabled{ opacity:.45; cursor:default; }

  /* Printing: the "Download all responses (PDF)" button is the real way to
     print; this keeps a browser print readable. The light colors are forced
     (a dark-mode device would otherwise print light text on white paper; the
     selectors match the dark blocks' specificity and come later), and the
     controls that do nothing on paper are left out. */
  @media print{
    :root, :root:not([data-theme="light"]), :root[data-theme="dark"]{
      --paper:#E9E7D9;
      --paper-raised:#F4F2E7;
      --ink:#211E16;
      --ink-soft:#57543F;
      --green-900:#24402F;
      --green-700:#3C6349;
      --green-050:#DDE6DC;
      --ochre:#A9772A;
      --ochre-text:#7A5419;
      --ochre-soft:#EFE1C4;
      --rust:#9C3B2A;
      --rust-soft:#F3DCD4;
      --blue-soft:#DCE7F2;
      --blue-text:#24507A;
      --warn-bg:#F9E39A;
      --line:#C7C0A7;
      --line-strong:#A79F84;
      --focus:#3C6349;
      --shadow:none;
    }
    header, footer, nav, .upload, #upload-input, .submit-row, .report-tools,
    .kicker, dialog, #open-section, .item-tiles, .tile-legend, .item-nav, .item-pos,
    .item-actions, #submit-section, .another-row{ display:none !important; }
    .cea-ar-root{ color:#000; background:#fff; }
    input, textarea, select{ border-color:#999 !important; }
  }

  /* ---------- pre-submit review modal ---------- */
  dialog#confirm-modal{
    border:none;
    border-radius:6px;
    padding:0;
    width:min(440px, 92vw);
    background:var(--paper-raised);
    color:var(--ink);
    box-shadow:0 12px 36px rgba(0,0,0,.28);
  }
  dialog#confirm-modal::backdrop{ background:rgba(20,18,12,.5); }
  .rail-head{
    padding:16px 18px;
    background:var(--green-900);
    color:var(--paper-raised);
  }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .rail-head{ color:#0F140F; } }
  :root[data-theme="dark"] .rail-head{ color:#0F140F; }
  .rail-head .month{ font-family:"Fraunces", serif; font-size:16px; font-weight:500; }
  .rail-head .biz{ font-size:12px; opacity:.85; margin-top:2px; }
  .rail-body{ padding:16px 18px; }
  .rail-line{
    display:flex;
    justify-content:space-between;
    align-items:baseline;
    padding:7px 0;
    font-size:13px;
  }
  .rail-line .l{ color:var(--ink-soft); }
  .rail-line .v{ font-family:"IBM Plex Mono", monospace; }

  @media (prefers-reduced-motion: no-preference){
    button.primary{ transition: background .15s ease; }
  }

  /* ---- Audit Response Form: item lookup ---- */
  .cea-ar-root .lookup-row{display:grid; grid-template-columns:1.6fr 1fr auto; gap:12px; align-items:end;}
  .cea-ar-root .lookup-row .primary{white-space:nowrap;}
  @media (max-width:640px){ .cea-ar-root .lookup-row{grid-template-columns:1fr;} }
  /* Phones: no indent under the section numbers and narrower side margins, so
     the item card and answer box get the screen's full width. */
  @media (max-width:640px){
    .cea-ar-root .shell{padding-left:16px; padding-right:16px;}
    .cea-ar-root .section-body{margin-left:0;}
    .cea-ar-root .section-note{margin-left:0;}
    .cea-ar-root .ar-success-view{padding-left:16px; padding-right:16px;}
  }
  .cea-ar-root .lookup-msg{margin-top:12px; font-size:14px; color:var(--rust);}
  .cea-ar-root .lookup-msg.ok{color:var(--green-700);}
  .cea-ar-root .item-card{margin-top:20px; border:1px solid var(--line-strong); border-radius:6px; background:var(--paper-raised); box-shadow:var(--shadow); overflow:hidden;}
  .cea-ar-root .item-card-head{display:flex; flex-wrap:wrap; gap:8px 16px; align-items:baseline; padding:14px 18px; background:var(--green-050); border-bottom:1px solid var(--line);}
  .cea-ar-root .item-card-head .item-id{font-family:"IBM Plex Mono", monospace; font-weight:600; font-size:15px; color:var(--green-900);}
  .cea-ar-root .item-card-head .item-kind{font-size:13px; color:var(--ink-soft);}
  .cea-ar-root .item-card-head .item-status{margin-left:auto; font-size:12px; padding:2px 10px; border-radius:999px;} /* colors come from .st-* */
  /* Status colors, shared by the tiles, the legend and the item card's badge. */
  .cea-ar-root .st-needs{background:var(--ochre-soft); color:var(--ochre-text); border:1px solid var(--ochre);}
  .cea-ar-root .st-changed{background:var(--blue-soft); color:var(--blue-text); border:1px solid var(--blue-text);}
  .cea-ar-root .st-moreinfo{background:var(--rust-soft); color:var(--rust); border:1px solid var(--rust);}
  .cea-ar-root .st-responded{background:var(--green-050); color:var(--green-700); border:1px solid var(--green-700);}
  .cea-ar-root .st-accepted{background:var(--green-700); color:var(--paper-raised); border:1px solid var(--green-700);}
  .cea-ar-root .item-tiles{display:grid; grid-template-columns:repeat(auto-fill, minmax(54px, 1fr)); gap:6px; margin:4px 0 8px;}
  .cea-ar-root .item-tile{position:relative; display:inline-flex; align-items:center; justify-content:center; gap:3px; min-height:40px; padding:4px 8px; border-radius:6px; font-size:14px; font-weight:600; letter-spacing:.02em; cursor:pointer; line-height:1.1;}
  .cea-ar-root .item-tile:hover{filter:brightness(.96);}
  .cea-ar-root .item-tile.current{outline:2px solid var(--ink); outline-offset:2px;}
  .cea-ar-root .item-tile:focus-visible{outline:2px solid var(--focus); outline-offset:2px;}
  .cea-ar-root .tile-mark{font-size:12px; font-weight:700;}
  .cea-ar-root .tile-legend{display:flex; flex-wrap:wrap; align-items:center; gap:6px 8px; margin:0 0 16px; font-size:12px; color:var(--ink-soft);}
  .cea-ar-root .tile-legend .item-tile{min-height:0; padding:2px 10px; font-family:inherit; font-size:12px; font-weight:500; cursor:default;}
  .cea-ar-root .tile-legend .item-tile:hover{filter:none;}
  /* Needs Response stands out more than the other statuses: a 2px border, with
     1px less padding so the tile, legend chip and badge keep their size. */
  .cea-ar-root .st-needs{border-width:2px;}
  .cea-ar-root .item-tile.st-needs{padding:3px 7px;}
  .cea-ar-root .tile-legend .item-tile.st-needs, .cea-ar-root .item-card-head .item-status.st-needs{padding:1px 9px;}
  .cea-ar-root .more-info-banner{margin:12px 0; padding:10px 14px; border-left:3px solid var(--rust); background:var(--rust-soft); color:var(--ink); font-size:14px; line-height:1.5;}
  .cea-ar-root .item-card [hidden]{display:none;}
  .cea-ar-root .item-card dl{margin:0; padding:6px 18px 14px; display:grid; grid-template-columns:170px 1fr; gap:10px 16px;}
  .cea-ar-root .item-card dt{font-size:13px; font-weight:600; color:var(--ink-soft); padding-top:2px;}
  .cea-ar-root .item-card dd{margin:0; font-size:15px; line-height:1.5; white-space:pre-line;}
  .cea-ar-root .item-card dd.required-action{font-weight:500; color:var(--ink);}
  @media (max-width:640px){ .cea-ar-root .item-card dl{grid-template-columns:1fr; gap:2px;} .cea-ar-root .item-card dd{margin-bottom:10px;} }
  /* Accepted items, and items saved but not yet reloaded: the response stays
     readable, selectable and scrollable (readOnly, not disabled or faded);
     only the ways to change it are taken away. */
  .cea-ar-root .response-box.locked .upload, .cea-ar-root .response-box.locked .upload-note{display:none;}
  .cea-ar-root .response-box textarea[readonly], .cea-ar-root .response-box input[readonly]{background:transparent; border-style:dashed; cursor:default;}
  .cea-ar-root .another-row{display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-top:20px;}

  /* ---- 2.0: whole-report navigation ---- */
  .cea-ar-root .item-nav{display:grid; grid-template-columns:auto 1fr auto; gap:10px; align-items:center;}
  .cea-ar-root .item-nav select{min-width:0; width:100%;}
  @media (max-width:640px){ .cea-ar-root .item-nav{grid-template-columns:1fr 1fr;} .cea-ar-root .item-nav select{grid-column:1 / -1; grid-row:1;} }
  .cea-ar-root .item-pos{margin-top:8px; font-size:13px; color:var(--ink-soft);}
  .cea-ar-root .response-box{margin-top:20px;}
  .cea-ar-root .prior-note{margin-bottom:16px; padding:10px 14px; border-left:3px solid var(--green-700); background:var(--green-050); font-size:14px; line-height:1.5; overflow-wrap:anywhere;}
  .cea-ar-root .item-actions{display:flex; gap:12px; align-items:center; justify-content:space-between; flex-wrap:wrap; margin-top:16px; min-height:36px;}
  .cea-ar-root .item-change{font-size:14px; color:var(--ochre-text); font-weight:500;}
  .cea-ar-root .item-actions-btns{display:flex; gap:10px; flex-wrap:wrap; margin-left:auto;}
  .cea-ar-root .item-actions-btns [hidden]{display:none;}
  .cea-ar-root .submit-error{font-size:14px; line-height:1.5; color:var(--ink); overflow-wrap:anywhere;}
  .cea-ar-root .rail-body .rail-line .v{text-align:right;}

  /* ---- 2.1: download all responses ---- */
  .cea-ar-root .report-tools{display:flex; flex-wrap:wrap; gap:8px 14px; align-items:center; margin-bottom:18px;}
  .cea-ar-root .report-tools .btn-outline{color:var(--green-700); border-color:var(--green-700);}
  .cea-ar-root .report-tools .btn-outline:not(:disabled):hover, .cea-ar-root .report-tools .btn-outline:focus-visible{background:var(--green-700); color:var(--paper-raised);}
  .cea-ar-root .report-tools .btn-outline:disabled{opacity:.55; cursor:progress;}
  .cea-ar-root .report-tools-note{font-size:13px; color:var(--ink-soft);}
  .cea-ar-root #report-tools-wrap{margin-top:14px;}
  .cea-ar-root #report-tools-wrap .report-tools{margin-bottom:8px;}
  .cea-ar-root #download-all-msg{margin:0 0 8px;}
  .cea-ar-root #download-all-msg:empty{display:none;}
