:root{
    --black: #1a1a1a;
    --near-black: #141414;
    --panel-line: #1a1a1a;
    --gray-line: #d9d9d9;
    --gray-text: #6b6b6b;
    --white: #ffffff;
    --off-white: #f6f6f5;
    --neg: #b23b2e;
    --pos: #3b6b3f;
  }
  *{box-sizing:border-box;}
  body{
    margin:0;
    background:var(--off-white);
    color:var(--black);
    font-family:'Inter',sans-serif;
  }
  .wrap{max-width:1600px;margin:0 auto;}   /* Oct 27 2026 (Jayd): use the screen, wrap text, no sideways scrolling */
  /* The Buyer's Card page runs wider so the full Breakeven Detail table fits in the
     right column without horizontal scrolling on a desktop — the directory pages stay
     at the narrower cap since they're single-column. */
  .wrap.wrap-wide{max-width:none;}

  /* Header bar */
  .topbar{
    background:var(--white);
    border-bottom:1px solid var(--gray-line);
    padding:16px 24px;
    display:flex;align-items:center;justify-content:space-between;
    flex-wrap:wrap;gap:12px;
  }
  .brand{display:flex;align-items:center;gap:10px;}
  .brand-logo-img{height:26px;width:auto;display:block;}
  .hero-logo-img{height:56px;width:auto;display:block;margin:0 auto 20px;}
  .topbar-tag{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.7rem;
    letter-spacing:1.5px;text-transform:uppercase;color:var(--gray-text);
  }
  .reset-btn{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.72rem;
    letter-spacing:1px;text-transform:uppercase;color:var(--black);
    background:none;border:1px solid var(--black);border-radius:2px;
    padding:9px 18px;cursor:pointer;
  }
  .reset-btn:hover{background:var(--black);color:var(--white);}
  /* Phone widths: the nav buttons shrink and wrap so all of them fit on screen — at
     full size, Closeout Analytics and Reset sat off the right edge of an iPhone. The
     page-name tag goes; the hero right below says where you are. */
  @media (max-width: 700px){
    .topbar{ padding:12px 10px; }
    .topbar-tag{ display:none; }
    .topbar-nav{ flex-wrap:wrap; gap:6px !important; }
    .reset-btn{ font-size:0.58rem; letter-spacing:0.4px; padding:7px 8px; }
  }

  /* Hero */
  .hero{
    background:var(--near-black);
    color:var(--white);
    padding:56px 24px 48px;
    text-align:center;
  }
  .hero-eyebrow{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.78rem;
    letter-spacing:2px;text-transform:uppercase;color:var(--white);margin-bottom:12px;
  }
  .hero-desc{
    max-width:640px;margin:0 auto;color:#cfcfcf;font-size:0.98rem;line-height:1.6;
  }

  .content{padding:32px 24px 70px;}

  /* ---- Left sidebar (desktop) + bottom tab bar (phone) — shared.js buildChrome ---------- */
  .sidenav{
    position:fixed;top:0;left:0;bottom:0;width:220px;box-sizing:border-box;z-index:800;
    background:var(--near-black);color:var(--white);display:flex;flex-direction:column;
    padding:22px 14px 18px;
  }
  .sn-brand img{width:126px;height:auto;display:block;margin:0 10px 26px;filter:invert(1);}
  .sn-nav{display:flex;flex-direction:column;gap:2px;overflow-y:auto;min-height:0;}
  .sn-section{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.56rem;letter-spacing:1.4px;text-transform:uppercase;
    color:#8a8a86;padding:14px 10px 4px;
  }
  .tabbar .sn-section{display:none;}
  .sn-item{
    display:flex;align-items:center;gap:10px;padding:10px 10px;border-radius:3px;
    color:#d6d6d2;text-decoration:none;font-family:'Inter',sans-serif;font-size:0.88rem;
  }
  .sn-item svg{width:16px;height:16px;flex:0 0 16px;}
  .sn-item:hover{background:#2c2c2a;color:var(--white);}
  .sn-item.active{background:var(--white);color:var(--black);font-weight:600;}
  .sn-foot{margin-top:auto;border-top:1px solid #3a3a38;padding:14px 10px 0;}
  .sn-foot-lbl{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.58rem;letter-spacing:1.4px;
    text-transform:uppercase;color:#9a9a96;margin-bottom:6px;
  }
  .sn-foot-line{font-size:0.78rem;color:#d6d6d2;display:flex;align-items:center;gap:8px;}
  .sn-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:0 0 8px;}
  .sn-out{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.58rem;letter-spacing:1px;text-transform:uppercase;
    color:#9a9a96;text-decoration:none;border:1px solid #3a3a38;border-radius:2px;padding:4px 8px;white-space:nowrap;
  }
  .sn-out:hover{color:var(--white);border-color:var(--white);}
  .sn-out-mobile{color:var(--gray-text);border-color:var(--gray-line);}
  .sn-out-mobile:hover{color:var(--black);border-color:var(--black);}
  body.has-sidenav .content{margin-left:220px;}
  .mobilebar, .tabbar, .buying-subnav, .tab-more{display:none;}
  .tab-more[hidden]{display:none !important;}
  @media (max-width:900px){
    .sidenav{display:none;}
    body.has-sidenav .content{margin-left:0;padding-bottom:96px;}
    .mobilebar{
      display:flex;align-items:center;justify-content:space-between;gap:12px;
      padding:12px 16px;background:var(--white);border-bottom:1px solid var(--gray-line);
    }
    .mobilebar .topbar-tag{display:block;}
    /* Bigger tabs (per Jayd): 8 tabs with short labels, larger icons and type. */
    .tabbar{
      display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);position:fixed;left:0;right:0;bottom:0;z-index:800;   /* as many equal columns as tabs (Oct 10: 5 section tabs, 4 for viewers) */
      background:var(--white);border-top:1px solid var(--gray-line);
      padding:8px 2px calc(10px + env(safe-area-inset-bottom));
    }
    .tabbar .sn-item{
      flex-direction:column;gap:4px;padding:6px 0;border-radius:0;min-height:52px;justify-content:center;
      font-family:'Inter',sans-serif;font-weight:600;font-size:0.66rem;letter-spacing:0;
      color:#8a8a86;text-align:center;background:none;border:none;cursor:pointer;
    }
    .tabbar .sn-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;}
    .tabbar .sn-item svg{width:26px;height:26px;flex:0 0 26px;}
    .tab-more{
      display:block;position:fixed;right:8px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:801;min-width:200px;
      background:var(--white);border:1px solid var(--black);border-radius:3px;box-shadow:0 8px 24px rgba(0,0,0,0.18);padding:6px;
    }
    .tab-more .sn-item{color:var(--black);font-size:0.95rem;padding:12px 12px;}
    .tab-more .sn-item svg{width:20px;height:20px;}
    .tab-more .sn-item.active{background:var(--off-white);}
    .buying-subnav{
      display:flex;gap:8px;overflow-x:auto;padding:10px 14px;background:var(--white);border-bottom:1px solid var(--gray-line);
      -webkit-overflow-scrolling:touch;
    }
    .buying-subnav a{
      flex:0 0 auto;padding:9px 14px;border:1px solid var(--gray-line);border-radius:999px;text-decoration:none;
      font-family:'Inter',sans-serif;font-weight:600;font-size:0.85rem;color:var(--black);white-space:nowrap;
    }
    .buying-subnav a.active{background:var(--black);color:var(--white);border-color:var(--black);}
    /* Buying pages on a phone (per Jayd): the top bar + page buttons stay pinned while you scroll. */
    body.buying-page .mobilebar{position:sticky;top:0;z-index:700;height:52px;box-sizing:border-box;}
    body.buying-page .buying-subnav{position:sticky;top:52px;z-index:699;box-shadow:0 2px 6px rgba(0,0,0,0.06);}
    .mobilebar .sn-out-mobile{display:none;}
    body.has-sidenav .content{padding-bottom:112px;}
    .tabbar .sn-item:hover{background:none;}
    .tabbar .sn-item.active{background:none;color:var(--black);}
    .hscroll-proxy{bottom:84px;}
  }

  .grid{
    display:grid;
    grid-template-columns: 340px 1fr;
    gap:24px;
    align-items:start; /* let .right size to its own content instead of stretching to match .left, so position:sticky below has somewhere to stick */
  }
  .grid > div{ min-width:0; } /* let grid tracks shrink below content's natural width (e.g. the wide table) instead of forcing the whole page wider */
  .right{
    position:sticky;
    top:20px;
    max-height:calc(100vh - 40px);
    overflow-y:auto;
  }
  @media (max-width:900px){
    .grid{grid-template-columns:1fr;}
    /* side-by-side sticky only makes sense in the 2-column layout — once the columns
       stack on narrower screens, pin it back into normal document flow */
    .right{ position:static; max-height:none; overflow-y:visible; }
  }

  .panel{
    background:var(--white);
    border:1px solid var(--black);
    border-radius:2px;
    padding:20px 20px 22px;
    margin-bottom:18px;
  }
  .panel h2{
    font-family:'Archivo',sans-serif;font-weight:700;
    font-size:0.76rem;text-transform:uppercase;letter-spacing:1.5px;
    color:var(--black);margin:0 0 16px;padding-bottom:10px;
    border-bottom:2px solid var(--black);
  }

  label{
    display:block;font-family:'Archivo',sans-serif;font-weight:700;
    font-size:0.68rem;letter-spacing:0.6px;text-transform:uppercase;
    margin:14px 0 6px;color:#333;
  }
  label:first-of-type{margin-top:0;}
  .row2 > div > label{ line-height:1.3; min-height:2.6em; }
  select, input[type=number], input[type=text], input[type=password], input[type=date]{
    width:100%;padding:9px 10px;border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;font-size:0.9rem;background:var(--off-white);color:var(--black);
  }
  select:focus, input:focus{outline:2px solid var(--black);outline-offset:0;}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
  .hint{font-size:0.72rem;color:var(--gray-text);margin-top:5px;line-height:1.5;}

  /* Buyer's card display */
  .board{
    background:var(--near-black);
    color:var(--white);
    border-radius:2px;
    padding:28px 28px 24px;
    margin-bottom:22px;
  }
  .board-top{
    display:flex;justify-content:space-between;align-items:flex-start;
    margin-bottom:4px;flex-wrap:wrap;gap:8px;
    border-bottom:1px solid #3a3a3a;padding-bottom:16px;
  }
  .board-sale{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.5rem;}
  .board-actions{display:flex;gap:8px;flex-wrap:wrap;}
  .share-btn{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.7rem;
    letter-spacing:1px;text-transform:uppercase;color:var(--white);
    background:none;border:1px solid var(--white);border-radius:2px;
    padding:8px 16px;cursor:pointer;flex:none;
  }
  .share-btn:hover{background:var(--white);color:var(--near-black);}
  .share-status{
    font-family:'Inter',sans-serif;font-size:0.74rem;color:#a8a8a8;
    margin-top:14px;min-height:1em;
  }
  .manual-fallback{
    margin-top:14px;padding-top:14px;border-top:1px solid #3a3a3a;
  }
  .manual-fallback-label{
    font-family:'Inter',sans-serif;font-size:0.72rem;color:#8a8a8a;margin-bottom:6px;line-height:1.4;
  }
  #manualCopyBox{
    width:100%;min-height:90px;resize:vertical;
    background:#0d0d0d;color:var(--white);border:1px solid #3a3a3a;border-radius:2px;
    font-family:'Inter',sans-serif;font-size:0.8rem;line-height:1.5;padding:10px;
  }
  .cards{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;margin-top:16px;
    background:#3a3a3a;
  }
  .card{
    background:var(--near-black);
    padding:16px 12px 14px;
    text-align:center;
  }
  .card .wt{font-family:'Archivo',sans-serif;font-weight:600;font-size:0.9rem;color:#cfcfcf;}
  .card .price{
    font-family:'Archivo',sans-serif;font-weight:800;color:var(--white);font-size:1.7rem;margin:6px 0 2px;
  }
  .card .cwt{font-family:'Archivo',sans-serif;font-weight:700;color:#8a8a8a;font-size:0.62rem;text-transform:uppercase;letter-spacing:1px;}
  .empty{color:#8a8a8a;font-family:'Inter',sans-serif;font-size:0.85rem;padding:10px 0;}

  table{width:100%;border-collapse:collapse;font-family:'Inter',sans-serif;font-size:0.78rem;}
  th{
    text-align:right;font-family:'Archivo',sans-serif;font-weight:700;color:var(--black);text-transform:uppercase;
    font-size:0.62rem;letter-spacing:0.5px;padding:8px 5px;border-bottom:2px solid var(--black);
    white-space:normal;line-height:1.3;vertical-align:bottom;
  }
  th:first-child, td:first-child{text-align:left;}
  td{text-align:right;padding:7px 5px;border-bottom:1px solid var(--gray-line);white-space:normal;vertical-align:middle;}   /* text wraps (Oct 27 2026, per Jayd); numbers have no spaces so they stay whole */
  /* The Breakeven Detail packs 15 columns — slightly tighter cells so the whole table
     fits the right column without a horizontal slider on ordinary desktop widths. */
  #detailTable th, #detailTable td{ padding:8px 5px; }
  tr:hover td{background:var(--off-white);}
  .neg{color:var(--neg);font-weight:600;}
  .pos{color:var(--pos);font-weight:600;}

  .footnote{font-size:0.74rem;color:var(--gray-text);line-height:1.6;margin-top:6px;}

  .panel-head-row{display:flex;align-items:center;justify-content:space-between;gap:12px;}
  .panel-head-row h2{margin:0;}
  .download-btn{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.7rem;
    letter-spacing:1px;text-transform:uppercase;color:var(--black);
    background:none;border:1px solid var(--black);border-radius:2px;
    padding:8px 16px;cursor:pointer;flex:none;
  }
  .download-btn:hover{background:var(--black);color:var(--white);}
  .print-header{display:none;}
  #printArea{display:none;}
  .table-scroll{overflow-x:auto;}
  .warn{
    background:var(--black);color:var(--white);border-radius:2px;
    padding:12px 16px;font-size:0.8rem;margin-bottom:0;line-height:1.5;
  }
  .warn strong{font-family:'Archivo',sans-serif;letter-spacing:0.5px;}

  .basis-block{
    margin-top:16px;padding-top:16px;border-top:1px solid var(--gray-line);
  }
  .basis-stepper{
    display:flex;align-items:stretch;gap:6px;margin-top:4px;
  }
  .basis-stepper input{text-align:center;font-weight:700;}
  .dollar-input-wrap{
    flex:1;display:flex;align-items:center;justify-content:center;gap:2px;
    border:1px solid var(--gray-line);border-radius:2px;background:var(--off-white);
  }
  .dollar-input-wrap .dollar-prefix{ font-family:'Archivo',sans-serif;font-weight:800;font-size:1.3rem;color:var(--black); }
  .basis-stepper .dollar-input-wrap input{
    border:none;background:none;padding:9px 2px;width:auto;max-width:90px;text-align:left;
  }
  #targetProfit{
    font-family:'Archivo',sans-serif !important;font-weight:800 !important;font-size:1.3rem !important;
  }
  .step-btn{
    width:38px;flex:0 0 38px;border:1px solid var(--black);border-radius:2px;background:var(--white);
    font-family:'Archivo',sans-serif;font-size:1.1rem;font-weight:700;color:var(--black);
    cursor:pointer;line-height:1;
  }
  .step-btn:hover{background:var(--black);color:var(--white);}
  .step-btn:active{transform:translateY(1px);}

  /* Searchable checkbox multi-select (Source/Region/Buyer/Feedyard filters) */
  .multiselect{ position:relative; }
  .multiselect-toggle{
    width:100%;text-align:left;padding:9px 26px 9px 10px;border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;font-size:0.9rem;background:var(--off-white);color:var(--black);
    cursor:pointer;position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  .multiselect-toggle::after{
    content:'▾';position:absolute;right:10px;top:50%;transform:translateY(-50%);
    font-size:0.7rem;color:var(--gray-text);
  }
  .multiselect-panel{
    display:none;flex-direction:column;position:absolute;z-index:20;top:calc(100% + 4px);left:0;min-width:260px;
    background:var(--white);border:1px solid var(--black);border-radius:2px;
    padding:10px;box-shadow:0 4px 14px rgba(0,0,0,0.18);max-height:320px;
  }
  .multiselect-panel.open{ display:flex; }
  .multiselect-search{
    width:100%;padding:7px 8px;border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;font-size:0.85rem;margin-bottom:8px;background:var(--off-white);color:var(--black);
  }
  .multiselect-actions{ display:flex;gap:8px;margin-bottom:8px;flex:0 0 auto; }
  .multiselect-actions button{
    flex:1;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.62rem;letter-spacing:0.4px;
    text-transform:uppercase;border:1px solid var(--black);border-radius:2px;background:var(--white);
    padding:6px 4px;cursor:pointer;
  }
  .multiselect-actions button:hover{ background:var(--black);color:var(--white); }
  .multiselect-list{ overflow-y:auto; }
  .multiselect-option{
    display:flex;align-items:center;gap:8px;padding:5px 2px;font-size:0.82rem;
    font-family:'Inter',sans-serif;cursor:pointer;
  }
  .multiselect-option:hover{ background:var(--off-white); }
  .multiselect-option .ms-check{
    width:16px;flex:0 0 16px;text-align:center;font-weight:700;color:var(--black);visibility:hidden;
  }
  .multiselect-option.checked .ms-check{ visibility:visible; }
  .multiselect-option.checked .ms-label{ font-weight:600; }
  .multiselect-option .ms-label{ overflow-wrap:anywhere; }

  .location-search-wrap{ position:relative; }
  .location-suggestions{
    display:none;position:absolute;z-index:20;top:calc(100% + 2px);left:0;right:0;
    background:var(--white);border:1px solid var(--black);border-radius:2px;
    max-height:220px;overflow-y:auto;box-shadow:0 4px 14px rgba(0,0,0,0.18);
  }
  .location-suggestions.open{ display:block; }
  .location-suggestion{
    padding:8px 10px;font-family:'Inter',sans-serif;font-size:0.85rem;cursor:pointer;
  }
  .location-suggestion:hover{ background:var(--off-white); }

  /* Advanced Filters: toggle checklist + the (hidden-until-toggled) controls it reveals */
  .filter-toggle-list{
    display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;margin-top:12px;
  }
  .filter-toggle-list label{
    display:flex;align-items:center;gap:6px;margin:0;font-weight:600;text-transform:none;
    letter-spacing:0;font-size:0.8rem;color:var(--black);cursor:pointer;
  }
  .filter-toggle-list input{ width:auto;margin:0; }
  .adv-filter-row{ display:none;margin-top:14px; }
  .adv-filter-row.on{ display:block; }
  .adv-filter-row label:first-of-type{ margin-top:0; }

  .settings-toggle{
    background:none;border:none;color:var(--black);font-family:'Archivo',sans-serif;font-weight:700;
    font-size:0.72rem;letter-spacing:0.4px;text-decoration:underline;cursor:pointer;padding:0;margin-top:12px;
  }
  .settings-panel{display:none;}
  .settings-panel.open{display:block;}

  .delete-feedyard-btn{
    background:none;border:none;color:var(--gray-text);cursor:pointer;
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.62rem;text-transform:uppercase;letter-spacing:0.3px;
  }
  .delete-feedyard-btn:hover{ color:var(--neg); }

  /* Transposed lot viewer: metrics run down a fixed label rail on the left, one column
     per lot scrolling horizontally beside it. The rail is its own table (not a sticky
     column - position:sticky inside this nested scroll container hit a Chrome
     compositing bug that blank-painted the whole page); fixed row heights keep the two
     tables aligned. */
  .lot-flip{
    display:flex;align-items:flex-start;border:1px solid var(--gray-line);border-radius:2px;
    margin-top:8px;background:var(--white);overflow:hidden;
  }
  .lot-flip-scroll{ overflow-x:auto;flex:1 1 auto;min-width:0; }
  .lot-table{
    width:auto; /* override the global table{width:100%} — the label rail must hug its content */
    border-collapse:collapse;font-family:'Inter',sans-serif;font-size:0.72rem;white-space:nowrap;
  }
  .lot-table td{
    height:30px;padding:0 10px;border-bottom:1px solid var(--gray-line);
    text-align:right;vertical-align:middle;
  }
  .lot-flip-labels{ flex:0 0 auto;border-right:2px solid var(--black); }
  .lot-flip-labels td{
    background:var(--black);color:var(--white);text-align:left;
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.62rem;text-transform:uppercase;
    letter-spacing:0.5px;cursor:pointer;user-select:none;border-bottom:1px solid #3a3a3a;
  }
  .lot-table .lot-outlier{ color:var(--neg);font-weight:700; }
  .lot-table .lot-outlier-good{ color:var(--pos);font-weight:700; }
  /* Blend-average column: locked beside the labels, visually part of the rail but
     readable as data — the yardstick each lot column gets compared against. */
  .lot-flip-labels td.lot-avg{
    background:var(--off-white);color:var(--black);cursor:default;
    font-family:'Inter',sans-serif;font-weight:700;font-size:0.72rem;
    text-transform:none;letter-spacing:0;text-align:right;
    border-bottom:1px solid var(--gray-line);
  }
  .lot-x-btn{
    background:none;border:1px solid var(--gray-line);border-radius:2px;color:var(--neg);
    font-size:0.7rem;line-height:1;padding:3px 7px;cursor:pointer;
  }
  .lot-x-btn:hover{ background:var(--neg);color:var(--white);border-color:var(--neg); }

  /* Benchmarking: comparison table with in-cell bars, winner/loser coloring, and a
     headline strip of best-in-class callouts. */
  .bench-headlines{
    display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;
  }
  .bench-chip{
    background:var(--off-white);border:1px solid var(--gray-line);border-radius:2px;
    padding:8px 12px;font-size:0.74rem;line-height:1.45;
  }
  .bench-chip .bc-label{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.58rem;text-transform:uppercase;
    letter-spacing:0.5px;color:var(--gray-text);display:block;
  }
  .bench-chip .bc-value{font-weight:700;color:var(--black);}
  .bench-table-wrap{ overflow-x:auto;margin-top:10px; }
  .bench-table{ width:100%;border-collapse:collapse;font-family:'Inter',sans-serif;font-size:0.78rem;white-space:normal; }
  .bench-table th{
    text-align:right;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;
    text-transform:uppercase;letter-spacing:0.4px;color:var(--black);
    padding:7px 5px;border-bottom:2px solid var(--black);cursor:pointer;user-select:none;
    white-space:normal;line-height:1.3;vertical-align:bottom;
  }
  .bench-table th:nth-child(2){ text-align:left; }
  .bench-table td{
    position:relative;text-align:right;padding:7px 8px;border-bottom:1px solid var(--gray-line);
  }
  .bench-table td:first-child{ font-weight:700;white-space:nowrap; }
  .bench-table td:nth-child(2){ text-align:left;font-weight:600; }
  .bench-table .bench-bar{
    position:absolute;left:2px;top:3px;bottom:3px;background:rgba(26,26,26,0.07);border-radius:1px;z-index:0;
  }
  .bench-table td > span{ position:relative;z-index:1; }
  .bench-best{ color:var(--pos);font-weight:700; }
  .bench-worst{ color:var(--neg);font-weight:700; }
  .bench-thin td{ opacity:0.5; }

  .rate-loc-list{
    max-height:200px;overflow-y:auto;border:1px solid var(--gray-line);border-radius:2px;
    background:var(--off-white);padding:8px 10px;margin-top:6px;
  }
  .rate-loc-list label{
    display:flex;align-items:center;gap:8px;margin:0 0 4px;
    font-family:'Inter',sans-serif;font-weight:400;font-size:0.8rem;
    text-transform:none;letter-spacing:0;color:var(--black);cursor:pointer;
  }
  .rate-loc-list input[type="checkbox"]{ width:auto;margin:0;accent-color:var(--black); }
  .rate-loc-list .rate-loc-current{ font-weight:700; }

  .save-profile-btn{
    background:var(--black);color:var(--white);border:1px solid var(--black);border-radius:2px;
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.62rem;text-transform:uppercase;letter-spacing:0.4px;
    padding:6px 12px;cursor:pointer;
  }
  .save-profile-btn:hover{ background:var(--white);color:var(--black); }
  .delete-profile-btn{
    background:none;border:none;padding:0;color:var(--gray-text);cursor:pointer;
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.62rem;text-transform:uppercase;letter-spacing:0.4px;
  }
  .delete-profile-btn:hover{ color:var(--neg); }

  .research-grid{ display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px; }
  .research-stat{ background:var(--off-white);border:1px solid var(--gray-line);border-radius:2px;padding:8px 10px; }
  .research-stat .rs-label{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.54rem;
    text-transform:uppercase;letter-spacing:0.3px;color:var(--gray-text);
  }
  .research-stat .rs-value{ font-family:'Archivo',sans-serif;font-weight:800;font-size:1rem;color:var(--black);margin-top:2px; }
  @media (max-width:600px){
    .research-grid{ grid-template-columns:repeat(2,1fr); }
  }
  .settings-row{
    display:grid;grid-template-columns:1fr 90px 1fr;gap:8px;align-items:center;
    margin-bottom:6px;
  }
  .settings-row input, .settings-row select{
    padding:5px 6px;font-size:0.74rem;border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;background:var(--off-white);
  }
  .settings-row .period-label{
    font-size:0.76rem;font-family:'Inter',sans-serif;font-weight:600;color:#333;
  }
  .settings-head{
    display:grid;grid-template-columns:1fr 90px 1fr;gap:8px;
    font-family:'Archivo',sans-serif;font-weight:700;
    font-size:0.6rem;text-transform:uppercase;letter-spacing:0.5px;color:var(--gray-text);margin-bottom:6px;
  }

  .futures-row{
    display:grid;grid-template-columns:1fr 90px;gap:8px;align-items:center;
    margin-bottom:6px;font-size:0.78rem;font-family:'Inter',sans-serif;font-weight:500;color:#333;
  }
  .futures-row input{padding:5px 6px;font-size:0.78rem;}

  .ration-block{ margin-top:16px; padding-top:14px; border-top:1px solid var(--gray-line); }
  .ration-block:first-of-type{ margin-top:14px; }
  .ration-block-title{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.72rem;
    text-transform:uppercase;letter-spacing:0.6px;color:#333;margin-bottom:8px;
  }
  .ingredient-head{
    display:grid;grid-template-columns:1fr 34px 38px 42px 14px;gap:4px;
    font-family:'Archivo',sans-serif;font-weight:700;
    font-size:0.56rem;text-transform:uppercase;letter-spacing:0.3px;color:var(--gray-text);margin-bottom:5px;
  }
  .ingredient-row{
    display:grid;grid-template-columns:1fr 34px 38px 42px 14px;gap:4px;align-items:center;
    margin-bottom:5px;min-width:0;
  }
  .ingredient-row input{
    min-width:0;width:100%;
    padding:4px 3px;font-size:0.68rem;border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;background:var(--off-white);
  }
  .ingredient-row input[type=number]::-webkit-outer-spin-button,
  .ingredient-row input[type=number]::-webkit-inner-spin-button{
    -webkit-appearance:none;margin:0;
  }
  .ingredient-row input[type=number]{
    -moz-appearance:textfield;appearance:textfield;
  }
  .ingredient-row input[type=text]{ text-align:left; }
  .ingredient-row input[type=number]{ text-align:right; }
  .ingredient-row .rm-btn{
    background:none;border:none;color:#b6ab8f;cursor:pointer;font-size:0.9rem;line-height:1;padding:0;
  }
  .ingredient-row .rm-btn:hover{ color:var(--neg); }

  .feedyard-head{
    display:grid;grid-template-columns:44px 1.1fr 1.8fr 0.9fr 0.5fr 40px 1.1fr 0.9fr 40px 40px 24px;gap:6px;
    font-family:'Archivo',sans-serif;font-weight:700;
    font-size:0.6rem;text-transform:uppercase;letter-spacing:0.3px;color:var(--gray-text);margin-bottom:16px;
    min-width:910px;
  }
  .feedyard-row{
    display:grid;grid-template-columns:44px 1.1fr 1.8fr 0.9fr 0.5fr 40px 1.1fr 0.9fr 40px 40px 24px;gap:6px;align-items:center;
    margin-bottom:14px;min-width:910px;
  }
  .feedyard-row .icon-link{
    display:flex;align-items:center;justify-content:center;
    border:1px solid var(--gray-line);border-radius:2px;background:var(--off-white);
    height:100%;min-height:34px;text-decoration:none;font-size:1rem;
  }
  .feedyard-row .icon-link:hover{ background:var(--black); }
  .feedyard-row .icon-link.disabled{ pointer-events:none;opacity:0.3; }
  .feedyard-row input{
    min-width:0;width:100%;
    padding:6px 6px;font-size:0.76rem;border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;background:var(--off-white);color:var(--black);
  }
  .feedyard-row .text-btn{
    border:1px solid var(--black);border-radius:2px;background:var(--white);color:var(--black);
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;text-transform:uppercase;
    letter-spacing:0.3px;padding:6px 2px;cursor:pointer;
  }
  .feedyard-row .text-btn:hover{ background:var(--black);color:var(--white); }
  .feedyard-row .rm-btn{
    background:none;border:none;color:#b6ab8f;cursor:pointer;font-size:0.9rem;line-height:1;padding:0;
  }
  .feedyard-row .rm-btn:hover{ color:var(--neg); }

  .avail-pen-head{
    display:grid;grid-template-columns:22px 1.3fr 0.6fr 0.8fr 1fr 0.9fr 24px 30px;gap:6px;
    font-family:'Archivo',sans-serif;font-weight:700;
    font-size:0.6rem;text-transform:uppercase;letter-spacing:0.3px;color:var(--gray-text);margin-bottom:6px;
    min-width:620px;
  }
  .avail-pen-row{
    display:grid;grid-template-columns:22px 1.3fr 0.6fr 0.8fr 1fr 0.9fr 24px 30px;gap:6px;align-items:center;
    margin-bottom:6px;min-width:620px;font-family:'Inter',sans-serif;font-size:0.82rem;
    padding:6px 0;border-bottom:1px solid var(--gray-line);
  }
  .avail-pen-row.dragging{ opacity:0.4; }
  .avail-pen-total{
    font-weight:700;border-bottom:none;border-top:2px solid var(--black);
    font-family:'Archivo',sans-serif;
  }

  /* Shipping Schedule table */
  .ship-head{
    display:grid;grid-template-columns:1.2fr 70px 70px 0.9fr 100px 140px 90px 24px 24px;gap:6px;
    font-family:'Archivo',sans-serif;font-weight:700;
    font-size:0.56rem;text-transform:uppercase;letter-spacing:0.3px;color:var(--gray-text);
    margin-bottom:6px;border-bottom:2px solid var(--black);padding-bottom:6px;
    min-width:910px;
  }
  .ship-row{
    display:grid;grid-template-columns:1.2fr 70px 70px 0.9fr 100px 140px 90px 24px 24px;gap:6px;align-items:center;
    margin-bottom:6px;min-width:910px;font-family:'Inter',sans-serif;font-size:0.82rem;
    padding:4px 0;border-bottom:1px solid var(--gray-line);
  }
  .ship-row .ship-select{
    width:18px;height:18px;justify-self:center;cursor:pointer;accent-color:var(--black);
  }
  .ship-row input{
    min-width:0;width:100%;padding:6px 6px;font-size:0.78rem;
    border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;background:var(--off-white);color:var(--black);
  }
  .ship-total{
    font-weight:700;border-bottom:none;border-top:2px solid var(--black);
    font-family:'Archivo',sans-serif;
  }

  /* Purchases table */
  .purch-head{
    display:grid;grid-template-columns:110px 1.1fr 1fr 1fr 1fr 60px 70px 75px 80px 80px 75px 90px 70px 110px 1.3fr 24px 24px;gap:6px;
    font-family:'Archivo',sans-serif;font-weight:700;
    font-size:0.56rem;text-transform:uppercase;letter-spacing:0.3px;color:var(--gray-text);
    margin-bottom:6px;border-bottom:2px solid var(--black);padding-bottom:6px;
    min-width:1750px;
  }
  .purch-row{
    display:grid;grid-template-columns:110px 1.1fr 1fr 1fr 1fr 60px 70px 75px 80px 80px 75px 90px 70px 110px 1.3fr 24px 24px;gap:6px;align-items:center;
    margin-bottom:6px;min-width:1750px;font-family:'Inter',sans-serif;font-size:0.82rem;
    padding:4px 0;border-bottom:1px solid var(--gray-line);
  }
  .purch-row .purch-select{
    width:18px;height:18px;justify-self:center;cursor:pointer;accent-color:var(--black);
  }
  .purch-row input{
    min-width:0;width:100%;padding:6px 6px;font-size:0.78rem;
    border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;background:var(--off-white);color:var(--black);
  }
  .purch-total{
    font-weight:700;border-bottom:none;border-top:2px solid var(--black);
    font-family:'Archivo',sans-serif;
  }

  .upload-btn{
    display:inline-flex;align-items:center;justify-content:center;
    border:1px solid var(--black);border-radius:2px;background:var(--white);
    color:var(--black);font-family:'Archivo',sans-serif;font-weight:700;font-size:0.72rem;
    text-transform:uppercase;letter-spacing:0.4px;padding:10px 16px;cursor:pointer;
    line-height:1;text-align:center;
    margin:0; /* the global form-label margin (14px top) skews these out of line otherwise */
  }
  .upload-btn:hover{ background:var(--black);color:var(--white); }
  .avail-pen-row .drag-handle{
    cursor:grab;color:var(--gray-text);font-size:0.9rem;user-select:none;text-align:center;
  }
  .avail-pen-row .rm-btn{
    background:none;border:none;color:#b6ab8f;cursor:pointer;font-size:0.9rem;line-height:1;padding:0;
  }
  .avail-pen-row .rm-btn:hover{ color:var(--neg); }
  .avail-pen-row .avail-head-input{
    min-width:0;width:100%;padding:5px 6px;font-size:0.82rem;text-align:right;
    border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;background:var(--off-white);color:var(--black);
  }
  .avail-pen-row .avail-date-input{
    min-width:0;width:100%;padding:4px 6px;font-size:0.8rem;
    border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;background:var(--off-white);color:var(--black);
  }
  .avail-pen-row .avail-notes-input{
    min-width:0;width:100%;padding:5px 6px;font-size:0.8rem;
    border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;background:var(--off-white);color:var(--black);
  }

  .pen-feedyard-group{ margin-top:18px;padding-top:14px;border-top:1px solid var(--gray-line); }
  .pen-feedyard-group:first-child{ margin-top:0;padding-top:0;border-top:none; }
  .pen-feedyard-group .panel-head-row{ margin-bottom:10px; }
  .pen-feedyard-group .feedyard-name-wrap{ display:flex;align-items:center;gap:8px; }
  .pen-feedyard-group .feedyard-name-input{
    border:none;background:none;padding:0;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.72rem;
    text-transform:uppercase;letter-spacing:0.6px;color:#333;width:auto;min-width:120px;
  }
  .pen-feedyard-group .edit-feedyard-name-btn{
    background:none;border:none;color:var(--gray-text);cursor:pointer;
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;text-transform:uppercase;letter-spacing:0.3px;
  }
  .pen-feedyard-group .edit-feedyard-name-btn:hover{ color:var(--black); }
  .pen-feedyard-group .delete-feedyard-btn{
    background:none;border:none;color:var(--gray-text);cursor:pointer;
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.62rem;text-transform:uppercase;letter-spacing:0.3px;
  }
  .pen-feedyard-group .delete-feedyard-btn:hover{ color:var(--neg); }
  .pen-row-head{
    display:grid;grid-template-columns:90px 90px 1fr 150px 24px;gap:6px;
    font-family:'Archivo',sans-serif;font-weight:700;
    font-size:0.56rem;text-transform:uppercase;letter-spacing:0.3px;color:var(--gray-text);margin-bottom:5px;
    min-width:520px;
  }
  .pen-row{
    display:grid;grid-template-columns:90px 90px 1fr 150px 24px;gap:6px;align-items:center;
    margin-bottom:5px;min-width:520px;
  }
  .pen-row input{
    min-width:0;width:100%;
    padding:6px 6px;font-size:0.76rem;border:1px solid var(--gray-line);border-radius:2px;
    font-family:'Inter',sans-serif;background:var(--off-white);color:var(--black);
  }
  .pen-row .rm-btn{
    background:none;border:none;color:#b6ab8f;cursor:pointer;font-size:0.9rem;line-height:1;padding:0;
  }
  .pen-row .rm-btn:hover{ color:var(--neg); }

  .ration-total{
    font-family:'Space Mono','Inter',monospace;font-size:0.74rem;color:#333;
    margin-top:8px;padding-top:8px;border-top:1px solid var(--gray-line);line-height:1.6;
  }
  .ration-total .warn-inline{ color:var(--neg); font-weight:600; }
  .ration-total .result{ font-weight:700; font-size:0.82rem; }

  .brand-footnote{
    font-size:0.7rem;color:var(--gray-text);text-align:center;padding:18px 24px 0;line-height:1.6;
  }

  .scroll-hint{
    display:none;
    font-family:'Inter',sans-serif;font-size:0.7rem;color:var(--gray-text);
    margin-bottom:6px;
  }

  @media (max-width:600px){
    /* iOS Safari auto-zooms the page when a focused input's font is under 16px — keep every
       editable field at 16px on phones so tapping into one doesn't jolt the whole layout. */
    input, select, textarea{ font-size:16px !important; }
    .basis-stepper input{ font-size:16px !important; }

    .topbar{ padding:12px 16px; }
    .content{ padding:20px 14px 50px; }
    .hero{ padding:36px 16px 32px; }
    .hero-logo-img{ height:auto; width:min(320px, 85vw); margin-bottom:16px; }
    .brand-logo-img{ height:22px; }
    .hero-desc{ font-size:0.9rem; }

    .panel{ padding:16px 14px 18px; }
    .board{ padding:18px 16px 16px; }
    .board-sale{ font-size:1.2rem; }
    .card .price{ font-size:1.35rem; }

    .row2{ grid-template-columns:1fr 1fr; gap:8px; }
    .settings-row, .settings-head{ grid-template-columns:1fr 64px 1fr; gap:5px; font-size:0.68rem; }
    .settings-row .period-label{ font-size:0.68rem; }
    .settings-row select{ font-size:12px !important; padding:4px; }

    table{ font-size:0.72rem; }
    th, td{ padding:7px 6px; }

    .scroll-hint{ display:block; }
  }

  /* #printArea is a plain body-level div, deliberately outside .right's sticky/scroll
     ancestry — printing #detailTable in place there caused Chrome to emit blank extra
     pages, so the button clones the header + table into this isolated container instead. */
  @media print{
    @page{ size: landscape; margin: 12mm; }

    body > *:not(#printArea){ display:none !important; }
    #printArea{ display:block !important; }

    #printArea .print-header{
      display:flex; flex-direction:column; align-items:flex-start; gap:6px;
      margin-bottom:14px; padding-bottom:10px; border-bottom:2px solid var(--black);
    }
    #printArea .print-label{
      font-family:'Archivo',sans-serif;font-weight:700;font-size:0.76rem;
      text-transform:uppercase;letter-spacing:1.5px;color:var(--black);
    }
    /* Explicit width + flex:none: an image given only a height inside a flex column can
       be laid out at zero width by some print engines (iOS Safari especially), which is
       how this logo kept vanishing from the PDF while the rest of the header printed.
       print-color-adjust keeps the artwork from being dropped by "background graphics
       off" style print settings. */
    #printArea .print-logo{
      height:32px; width:auto; max-width:none; flex:0 0 auto; display:block;
      -webkit-print-color-adjust:exact; print-color-adjust:exact;
    }
    #printArea .print-logo-svg{ color:#000; }
    #printArea .print-logo-svg svg{ height:32px; width:auto; display:block; }
    #printArea .print-sub{ font-family:'Inter',sans-serif; font-size:0.8rem; color:#333; }

    #printArea table{ width:100%; font-size:8.5px; }
    /* Every other row lightly shaded (Hedging PDF, per Jayd); exact so print keeps the fill. */
    #printArea table.zebra tbody tr:nth-child(even) td{ background:#eeeeeb; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
    #printArea th, #printArea td{ padding:4px 5px; }

    #printArea .print-ration-grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; }
    #printArea .print-ration-title{
      font-family:'Archivo',sans-serif;font-weight:700;font-size:0.72rem;
      text-transform:uppercase;letter-spacing:0.6px;color:#333;margin-bottom:8px;
    }
    #printArea .print-ration-total{
      font-family:'Inter',sans-serif;font-size:9.5px;color:#333;
      margin-top:8px;padding-top:8px;border-top:1px solid var(--gray-line);line-height:1.6;
    }
  }

  /* ---- Midcon Lineup additions ------------------------------------------------ */
  /* Due chips: colored flags in the lineup grid for work coming due or overdue. */
  .chip{
    display:inline-block;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;
    letter-spacing:0.8px;text-transform:uppercase;padding:3px 7px;border-radius:2px;
    margin:1px 2px;white-space:nowrap;
  }
  .chip-due{background:#f4e9c8;color:#7a5d00;border:1px solid #d9c47a;}
  .chip-over{background:#f3ddd9;color:var(--neg);border:1px solid #ddaba3;}
  .chip-ok{background:#e2ecdf;color:var(--pos);border:1px solid #b7ccb2;}
  .chip-info{background:#e8e8e6;color:#444;border:1px solid var(--gray-line);}

  #lineupTable tbody tr{cursor:pointer;}
  #lineupTable tbody tr:hover{background:#efefec;}
  th[data-sort]{cursor:pointer;}
  th[data-sort]:hover{color:var(--black);}

  /* Lot detail drawer */
  .drawer-back{
    display:none;position:fixed;inset:0;background:rgba(20,20,20,0.45);z-index:40;
  }
  .drawer{
    display:none;position:fixed;top:0;right:0;bottom:0;width:min(560px, 100vw);
    background:var(--white);z-index:41;overflow-y:auto;padding:20px 22px 40px;
    border-left:2px solid var(--black);
  }
  .drawer.open, .drawer-back.open{display:block;}
  .drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;}
  .drawer h3{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.72rem;
    letter-spacing:1.2px;text-transform:uppercase;color:var(--gray-text);
    margin:22px 0 8px;border-bottom:1px solid var(--gray-line);padding-bottom:6px;
  }
  .field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;}
  .field-grid label{margin-top:0;}
  .stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-top:8px;}
  .stat{border:1px solid var(--gray-line);padding:8px 10px;background:var(--off-white);}
  .stat .k{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.58rem;letter-spacing:0.8px;text-transform:uppercase;color:var(--gray-text);}
  .stat .v{font-family:'Inter',sans-serif;font-weight:600;font-size:1.02rem;color:var(--black);margin-top:3px;}
  .event-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--gray-line);font-size:0.8rem;flex-wrap:wrap;}
  .event-row .ev-type{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.62rem;letter-spacing:0.8px;text-transform:uppercase;min-width:120px;}
  .mini-btn{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;letter-spacing:0.8px;
    text-transform:uppercase;color:var(--black);background:none;border:1px solid var(--gray-line);
    border-radius:2px;padding:5px 9px;cursor:pointer;
  }
  .mini-btn:hover{border-color:var(--black);}
  .mini-btn.danger:hover{border-color:var(--neg);color:var(--neg);background:none;}

  /* Schedules tabs */
  .tab-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;}
  .tab-btn{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.68rem;letter-spacing:1px;
    text-transform:uppercase;color:var(--gray-text);background:none;border:1px solid var(--gray-line);
    border-radius:2px;padding:9px 16px;cursor:pointer;
  }
  .tab-btn.active{color:var(--white);background:var(--black);border-color:var(--black);}
  .week-head{
    font-family:'Archivo',sans-serif;font-weight:800;font-size:0.78rem;letter-spacing:1px;
    text-transform:uppercase;color:var(--black);margin:20px 0 6px;
    border-bottom:2px solid var(--black);padding-bottom:5px;
  }
  tr.done-row td{color:var(--gray-text);text-decoration:line-through;}

  @media (max-width:700px){
    .field-grid{grid-template-columns:1fr;}
    .drawer{padding:16px 14px 40px;}
  }

  /* Multi-select dropdown (feedlot filter) */
  .dd-wrap{position:relative;}
  .dd-btn{
    font-family:'Inter',sans-serif;font-size:0.85rem;color:var(--black);
    background:var(--white);border:1px solid var(--gray-line);border-radius:2px;
    padding:10px 14px;cursor:pointer;min-width:170px;text-align:left;
  }
  .dd-btn:hover{border-color:var(--black);}
  .dd-panel{
    display:none;position:absolute;top:100%;left:0;z-index:30;min-width:230px;
    max-height:320px;overflow-y:auto;background:var(--white);
    border:1px solid var(--black);border-radius:2px;padding:10px 12px;
    box-shadow:0 6px 18px rgba(0,0,0,0.12);
  }
  .dd-panel.open{display:block;}
  .dd-actions{
    font-family:'Archivo',sans-serif;font-weight:700;font-size:0.62rem;
    letter-spacing:0.8px;text-transform:uppercase;margin-bottom:8px;
    padding-bottom:6px;border-bottom:1px solid var(--gray-line);
  }
  .dd-actions a{color:var(--black);}
  .dd-row{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:0.82rem;cursor:pointer;}
  .dd-row input{width:auto;margin:0;}

/* ---- Load Sheets pen menu (sold list): click a pen, its sheets print --------------- */
.sheet-pick{
  display:block;width:100%;text-align:left;background:none;border:none;cursor:pointer;
  padding:8px 14px;font-family:'Inter',sans-serif;font-size:0.85rem;font-weight:600;
  color:var(--black);
}
.sheet-pick:hover{background:var(--black);color:var(--white);}
.sheet-pick:hover span{color:var(--white) !important;}
.sheet-pick:disabled{color:var(--gray-text);cursor:not-allowed;}
.sheet-pick:disabled:hover{background:none;color:var(--gray-text);}

/* ---- Point-and-click time picker (sold list load/dock) ------------------------------ */
.time-btn{
  font-family:'Inter',sans-serif;font-size:0.82rem;color:var(--black);
  background:var(--white);border:1px solid var(--gray-line);border-radius:2px;
  padding:8px 10px;min-width:82px;cursor:pointer;
}
.time-btn:hover{border-color:var(--black);}
.time-btn.empty{color:var(--gray-text);}
.time-pop{
  position:fixed;z-index:1000;width:284px;padding:10px;
  background:var(--white);border:1px solid var(--black);border-radius:2px;
  box-shadow:0 6px 18px rgba(0,0,0,0.15);
}
.tp-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;}
.tp-mins{display:flex;gap:4px;margin-top:8px;}
.tp-btn{
  font-family:'Inter',sans-serif;font-size:0.72rem;font-weight:600;color:var(--black);
  background:var(--white);border:1px solid var(--gray-line);border-radius:2px;
  padding:6px 0;cursor:pointer;flex:1;
}
.tp-btn:hover:not(:disabled){background:var(--black);color:var(--white);}
.tp-btn.sel{background:var(--black);color:var(--white);}
.tp-btn:disabled{opacity:0.35;cursor:not-allowed;}

/* ---- Trucking chips (sold list): one pill per company, tiny round controls ---------- */
.tk-wrap{display:flex;flex-direction:column;align-items:center;gap:4px;}
.tk-chip{
  display:inline-flex;align-items:center;gap:1px;white-space:nowrap;
  border:1px solid var(--gray-line);border-radius:999px;padding:2px 4px 2px 11px;
  font-family:'Inter',sans-serif;font-size:0.78rem;background:var(--white);
}
.tk-chip .tk-name{font-weight:600;color:var(--black);margin-right:4px;}
.tk-ctl{
  width:20px;height:20px;border:none;border-radius:50%;background:none;padding:0;
  display:inline-flex;align-items:center;justify-content:center;cursor:pointer;
  font-family:'Inter',sans-serif;font-size:0.72rem;font-weight:700;color:var(--gray-text);line-height:1;
}
.tk-ctl:hover{background:var(--black);color:var(--white);}

/* ---- Dashboard (dashboard.html) ------------------------------------------------------- */
.dash-top{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:18px;}
.dash-date{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.66rem;letter-spacing:1.6px;text-transform:uppercase;color:var(--gray-text);}
.dash-greet{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.7rem;margin-top:4px;color:var(--black);}
.dash-actions{display:flex;gap:8px;margin-left:auto;align-items:center;}
.dash-actions a.download-btn{text-decoration:none;display:inline-flex;align-items:center;}
.dash-primary{background:var(--black) !important;color:var(--white) !important;border-color:var(--black) !important;}
.dash-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:16px;}
.kpi{background:var(--white);border:1px solid var(--gray-line);border-radius:2px;padding:14px 16px;display:flex;flex-direction:column;gap:5px;text-decoration:none;color:var(--black);}
.kpi:hover{border-color:var(--black);}
.kpi-lbl{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;letter-spacing:1.4px;text-transform:uppercase;color:var(--gray-text);}
.kpi-val{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.6rem;line-height:1.1;}
.kpi-val small{font-size:0.7rem;color:var(--gray-text);font-weight:700;margin-left:2px;}
.kpi-sub{font-size:0.78rem;color:var(--gray-text);}
.dash-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;align-items:start;}
.dash-col{display:flex;flex-direction:column;gap:0;min-width:0;}
.dash-card{padding:16px 18px 14px;margin-bottom:16px;}
.dash-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:2px solid var(--black);padding-bottom:8px;margin-bottom:10px;}
.dash-card-head h2{margin:0;padding:0;border:none;font-size:0.7rem;}
.dash-card-head a{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.62rem;letter-spacing:1px;text-transform:uppercase;color:var(--black);text-decoration:none;white-space:nowrap;}
.dash-card-head a:hover{text-decoration:underline;}
.dash-card table{font-size:0.8rem;}
.dash-card td, .dash-card th{padding:6px 6px;}
.dash-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px;}
.dash-tile{background:var(--off-white);border-radius:2px;padding:8px 10px;}
.dash-tile .kpi-lbl{font-size:0.56rem;}
.dash-tile b{font-size:0.95rem;display:block;margin-top:3px;}
.due-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;background:var(--off-white);border-radius:2px;margin-bottom:6px;font-size:0.82rem;}
.due-row.over{background:#f7e6e4;}
.due-row .due-when{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;letter-spacing:1px;text-transform:uppercase;color:var(--gray-text);white-space:nowrap;}
.due-row.over .due-when{color:var(--neg);}
.bunk-row{display:flex;justify-content:space-between;gap:10px;padding:6px 4px;border-bottom:1px solid #ececea;font-size:0.82rem;}
.bunk-row:last-child{border-bottom:none;}
.wx-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;text-align:center;}
.wx-day{background:var(--off-white);border-radius:2px;padding:9px 4px;}
.wx-day.hot{background:#f7e6e4;} .wx-day.cold{background:#e9eef6;} .wx-day.wet{background:#e9eef6;} .wx-day.wind{background:#f4efe1;}
.wx-day .kpi-lbl{font-size:0.56rem;}
.wx-day .wx-t{font-weight:700;font-size:1.1rem;margin:3px 0;}
.wx-day .wx-s{font-size:0.7rem;color:var(--gray-text);line-height:1.3;}
.wx-day.hot .wx-t, .wx-day.hot .wx-s{color:var(--neg);} .wx-day.cold .wx-t, .wx-day.wet .wx-s{color:#2f5ea8;}
.dash-empty{color:var(--gray-text);font-size:0.82rem;padding:6px 0;}
@media (max-width: 1100px){ .dash-kpis{grid-template-columns:repeat(3,minmax(0,1fr));} .dash-grid{grid-template-columns:1fr;} }
@media (max-width: 640px){
  .dash-kpis{grid-template-columns:repeat(2,minmax(0,1fr));} .dash-tiles{grid-template-columns:repeat(2,minmax(0,1fr));}
  .wx-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;} .dash-actions{margin-left:0;width:100%;}
}

/* Lineup in embed mode (drawer shown over another page, e.g. Hedging): nothing but the drawer. */
body.embed{background:transparent !important;}
body.embed .sidenav, body.embed .mobilebar, body.embed .tabbar, body.embed .content, body.embed .hscroll-proxy{display:none !important;}
.drawer-frame{position:fixed;inset:0;width:100%;height:100%;border:0;z-index:3000;background:transparent;color-scheme:normal;}
.drawer-loading{position:fixed;inset:0;z-index:2999;background:rgba(0,0,0,0.35);display:flex;align-items:center;justify-content:center;
  font-family:'Archivo',sans-serif;font-weight:700;font-size:0.72rem;letter-spacing:1.4px;text-transform:uppercase;color:#fff;}

/* Feedyard Directory cards (feedyards.html) */
.dir-card{border:1px solid var(--gray-line);border-radius:2px;padding:12px 14px;margin-bottom:8px;background:var(--white);}
.dir-card:hover{border-color:var(--black);}
.dir-card button[disabled]{opacity:0.4;cursor:not-allowed;}

/* Drawer color-mix picker: the active "Mixed" preset */
.cm-preset.cm-on{background:var(--black);color:var(--white);border-color:var(--black);}

a.lot-link{color:var(--black);text-decoration:none;border-bottom:1px dotted var(--gray-text);}
a.lot-link:hover{border-bottom-color:var(--black);}

/* ---- Sticky table header (Hedging page, per Jayd) -----------------------------------------
   The wrapper becomes the vertical scroller (capped to the window) so the header row pins to
   its top and the totals row to its bottom while the rows scroll between them. */
/* Lineup pen cell: biggest pen + a '+N' pill that expands the list (per Jayd, Sep 30) */
.pen-toggle{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.62rem;letter-spacing:0.6px;padding:2px 7px;margin-left:4px;background:var(--off-white);border:1px solid var(--gray-line);border-radius:10px;color:var(--gray-text);cursor:pointer;line-height:1.3;}
.pen-toggle:hover{background:var(--black);color:var(--white);border-color:var(--black);}
/* Schedules lot sheet (per Jayd, Sep 29): implants blue, ration changes amber, Experior violet */
.sc-legend{display:flex;gap:16px;flex-wrap:wrap;align-items:center;font-size:0.75rem;color:var(--gray-text);margin-top:10px;}
.sc-legend span{display:inline-flex;align-items:center;gap:6px;}
.sc-sw{display:inline-block;width:14px;height:14px;border-radius:2px;}
#sheetTable th, #sheetTable td{padding:6px 5px;}
/* Two header rows: only the column names stick (both at top:0 would overlap). */
.table-scroll.sticky-head #sheetTable thead tr:first-child th{position:static;box-shadow:none;}
#sheetTable th.sc-group{text-align:center;border-bottom:2px solid currentColor;letter-spacing:1.4px;}
td.sc-cell{text-align:center;white-space:nowrap;border-left:2px solid var(--white);line-height:1.25;font-size:0.76rem;}
.sc-imp{background:#fbf0c4;color:#6b5200;}
.sc-rat{background:#f6ead7;color:#784507;}
/* Each ration column its own soft color, implants yellow (per Travis, Oct 27). */
.sc-rat.sc-rat0{background:#dfeedd;color:#2c5a2a;}
.sc-rat.sc-rat1{background:#dde9f5;color:#1d4a80;}
.sc-rat.sc-rat2{background:#f9e2cf;color:#7a3d0c;}
.sc-exp{background:#ebe5f2;color:#4a3570;}
th.sc-imp, th.sc-rat, th.sc-exp{background:transparent;}
.sc-imp, .sc-rat, .sc-exp{-webkit-print-color-adjust:exact;print-color-adjust:exact;}
td.sc-done{opacity:0.62;}
td.sc-over{color:var(--neg);font-weight:700;box-shadow:inset 0 0 0 1.5px var(--neg);}
td.sc-empty{background:transparent;color:#c4c4c4;}
td.sc-cell[data-cell]{cursor:pointer;}
td.sc-off{background:repeating-linear-gradient(135deg,#f6f6f5 0 6px,#e6e6e4 6px 8px) !important;color:#9a9a9a !important;text-decoration:line-through;box-shadow:none;}
td.sc-off .sc-name{color:#9a9a9a;}
td.sc-cell[data-edit]{user-select:none;}
.sc-donebtn{display:block;margin:3px auto 0;padding:1px 7px;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.58rem;letter-spacing:1px;text-transform:uppercase;background:var(--white);border:1px solid currentColor;border-radius:2px;color:inherit;cursor:pointer;}
.sc-donebtn:hover{background:var(--black);color:var(--white);border-color:var(--black);}
.sc-name{display:block;font-weight:700;font-size:0.7rem;letter-spacing:0.3px;}
button.sc-mark{all:unset;cursor:pointer;display:block;width:100%;}
button.sc-mark:focus-visible{outline:2px solid var(--black);}
/* Hedging table tightened to fit without side-scrolling (per Jayd, Sep 25) */
#acctTable th, #acctTable td, #hlTable th, #hlTable td{padding:6px 4px;}
#acctTable td input[type=number], #acctTable td input[type=text], #acctTable td input[type=date], #hlTable td input[type=number], #hlTable td input[type=text], #hlTable td input[type=date]{padding:5px 5px;font-size:0.8rem;}
#acctTable td .hint, #hlTable td .hint{white-space:normal;}
#acctTable .acct-pens{max-width:120px;}
#acctTable td .mini-btn, #hlTable td .mini-btn{padding:5px 7px;}
.table-scroll.sticky-head{max-height:calc(100vh - 150px);overflow:auto;}
.table-scroll.sticky-head thead th{position:sticky;top:0;background:var(--white);z-index:3;box-shadow:inset 0 -2px 0 var(--black);}
.table-scroll.sticky-head tfoot td{position:sticky;bottom:0;background:var(--white);z-index:3;box-shadow:inset 0 2px 0 var(--black);}
@media (max-width:900px){ .table-scroll.sticky-head{max-height:calc(100vh - 210px);} }

/* ---- View-only accounts (body.viewer, set by applyRole in shared.js) ------------------- */
body.viewer [data-ro]{opacity:0.6;pointer-events:none;background:var(--off-white) !important;}
body.viewer .viewer-hide{display:none !important;}
body.viewer .sn-foot::after{content:"View-only account";display:block;margin-top:8px;font-size:0.72rem;color:#9a9a96;}

/* ---- Sticky horizontal scrollbar proxy (shared.js) ----------------------------------- */
.hscroll-proxy{
  position:fixed;bottom:0;height:16px;overflow-x:auto;overflow-y:hidden;z-index:900;
  background:var(--white);border-top:1px solid var(--gray-line);display:none;
}
.hscroll-proxy > div{height:1px;}

/* ---- Sold list checklist: feedyards / truckers / load sheets, tap to tick ------------ */
.ck-title{
  font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;letter-spacing:0.8px;
  text-transform:uppercase;color:var(--gray-text);margin:10px 0 4px;
}
.ck-row{
  display:flex;align-items:center;gap:10px;width:100%;text-align:left;
  font-family:'Inter',sans-serif;font-size:0.88rem;color:var(--black);
  background:none;border:none;padding:6px 4px;cursor:pointer;border-radius:2px;
}
.ck-row:hover{background:var(--off-white);}
/* Plain ✓ like the feedlot filter / Buyers Card picker (per Jayd) — no boxes. */
.ck-row.done{font-weight:600;}
.ck-box{
  width:18px;flex:0 0 18px;display:inline-block;text-align:left;
  font-size:0.9rem;font-weight:700;line-height:1;color:var(--black);
}

/* ---- Sold list: two stacked lines per pen (deal on top, logistics under it) ----------
   so nothing needs a horizontal scroll to reach trucks/times (per Jayd). */
tr.deal-row td{border-bottom:none;padding-bottom:4px;}
tr.logi-row td{padding-top:0 !important;}
tr.deal-row:hover td, tr.logi-row:hover td{background:none;}
.logi-line{display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center;padding:0 0 4px 4px;}
.logi-item{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;}
.logi-lbl{
  font-family:'Archivo',sans-serif;font-weight:700;font-size:0.58rem;letter-spacing:0.8px;
  text-transform:uppercase;color:var(--gray-text);margin-right:2px;
}
.tk-x:hover{background:var(--neg);color:var(--white);}
.tk-add{
  width:22px;height:22px;border:1px dashed var(--gray-text);border-radius:50%;background:none;padding:0;
  display:inline-flex;align-items:center;justify-content:center;cursor:pointer;
  font-family:'Inter',sans-serif;font-size:0.8rem;font-weight:700;color:var(--gray-text);line-height:1;
}
.tk-add:hover{border-color:var(--black);color:var(--black);}

/* ---- Margin Trax (Oct 4) ---- */
.mt-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;align-items:start;}
.mt-col{min-width:0;}
.mt-headgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 18px;}
.mt-headgrid label{margin-top:0;}
.mt-headval{font-weight:600;font-size:0.95rem;padding:9px 0;}
.mt-kv{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--gray-line);font-size:0.82rem;}
.mt-kv span{color:#333;}
.mt-kv b{font-weight:600;text-align:right;}
.mt-kvgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;}
.mt-net{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px 14px;border:2px solid var(--black);border-radius:2px;}
.mt-net span{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.72rem;letter-spacing:1.2px;text-transform:uppercase;}
.mt-net b{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.5rem;}
.mt-table{font-size:0.8rem;}
.mt-table th{font-size:0.62rem;}
.mt-table td,.mt-table th{padding:7px 8px;}
.mt-table input{padding:6px 8px;}
.mt-colpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 14px;margin-top:8px;}
.mt-colpick label{display:flex;align-items:center;gap:6px;margin:0;text-transform:none;letter-spacing:0;font-family:'Inter',sans-serif;font-weight:500;font-size:0.78rem;cursor:pointer;}
.mt-legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:8px;font-size:0.74rem;color:var(--gray-text);}
.mt-legend span,.mt-legend button{display:inline-flex;align-items:center;gap:6px;}
.mt-legend i{display:inline-block;width:18px;height:3px;border-radius:1px;}
/* Oct 6: clickable legend + hover tip */
.mt-legend button{background:none;border:0;padding:2px 0;font:inherit;color:inherit;cursor:pointer;}
.mt-legend button:hover{color:var(--black);}
.mt-legend button.off{opacity:0.4;text-decoration:line-through;}
.mt-chart{position:relative;}
.mt-chart-ctl{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:8px;}
.mt-chart-ctl .mini-btn.on{background:var(--black);color:#fff;border-color:var(--black);}
.mt-chart-ctl .mini-btn:disabled{opacity:0.35;cursor:default;}
.mt-chart svg .mtc-hit{cursor:crosshair;}
.mt-tip{position:absolute;top:8px;left:0;z-index:5;pointer-events:none;background:#1a1a1a;color:#fff;font-size:0.72rem;line-height:1.6;padding:6px 10px;border-radius:2px;white-space:nowrap;box-shadow:0 4px 12px rgba(0,0,0,0.18);}
.mt-tip .mt-tip-d{font-weight:700;margin-bottom:2px;}
.mt-tip i{display:inline-block;width:10px;height:3px;border-radius:1px;margin-right:6px;vertical-align:middle;}
.mt-settles{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;}
#mtTable tbody tr:hover{background:#efefec;}
#mtTable td,#mtTable th{white-space:normal;}
.mt-head .mt-headgrid select{padding:9px 10px;}
@media (max-width:900px){
  .mt-grid{grid-template-columns:1fr;}
  .mt-headgrid{grid-template-columns:1fr 1fr;}
}
@media (max-width:600px){
  .mt-headgrid{grid-template-columns:1fr;}
  .mt-kvgrid{grid-template-columns:1fr;}
  .mt-net b{font-size:1.25rem;}
}
/* Margin Trax grid: draggable column headings (Oct 4) */
#mtTable th[draggable]{cursor:grab;user-select:none;}
#mtTable th.th-dragging{opacity:0.45;}
#mtTable th.th-over-left{box-shadow:inset 3px 0 0 var(--black), inset 0 -2px 0 var(--black) !important;}
#mtTable th.th-over-right{box-shadow:inset -3px 0 0 var(--black), inset 0 -2px 0 var(--black) !important;}
/* Margin Trax grid: heading label + filter funnel, and the filter menu (Oct 4) */
#mtTable .mt-th{display:flex;align-items:center;gap:6px;justify-content:flex-end;}
#mtTable th[style*='text-align:left'] .mt-th{justify-content:flex-start;}
#mtTable .mt-th-lbl{cursor:pointer;}
#mtTable .mt-th-fbtn{flex:none;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gray-line);border-radius:2px;background:var(--white);color:var(--gray-text);cursor:pointer;padding:0;}
#mtTable .mt-th-fbtn:hover{border-color:var(--black);color:var(--black);}
#mtTable .mt-th-fbtn.on{background:var(--black);color:var(--white);border-color:var(--black);}
.mt-fmenu{position:fixed;z-index:3500;width:280px;background:var(--white);border:1px solid var(--black);border-radius:2px;box-shadow:0 8px 24px rgba(0,0,0,0.18);padding:14px;display:flex;flex-direction:column;gap:8px;}
.mt-fmenu-title{font-size:0.95rem;font-weight:500;margin-bottom:2px;}
.mt-fmenu select,.mt-fmenu input{width:100%;padding:8px 10px;}
.mt-fmenu-btns{display:flex;gap:8px;margin-top:4px;}
.mt-fmenu-btns .reset-btn{flex:1;}
/* Margin Trax lockup as the page title (Oct 4) */
#mtTitle{display:flex;align-items:center;}
#mtTitle svg{height:22px;width:auto;display:block;}
.sidenav .sn-item svg path[fill='currentColor']{stroke:none;}
/* Margin Trax lot snapshot PDF — one letter-portrait page, styled after Midcon's report (Oct 4) */
@media print{
  /* Lot Snapshot PDF, dressed up (Oct 13): Margin Trax logo big on the left, the lot on the right, headline tiles */
  #printArea .mtq{ font-family:'Inter',sans-serif; color:#1a1a1a; font-size:10.4px; --mtb:#1E3EC9; }
  #printArea .mtq-head{ display:flex; justify-content:space-between; align-items:flex-end; gap:18px; margin:0 0 9px; }
  #printArea .mtq-mark svg{ height:46px; width:auto; display:block; }
  #printArea .mtq-lot{ text-align:right; }
  #printArea .mtq-kicker{ font-family:'Archivo',sans-serif; font-weight:700; font-size:8px; letter-spacing:0.16em; text-transform:uppercase; color:var(--mtb); -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  #printArea .mtq-lotname{ font-family:'Archivo',sans-serif; font-stretch:125%; font-variation-settings:'wdth' 125; font-weight:800; font-size:21px; line-height:1.05; letter-spacing:0.01em; margin:2px 0 3px; }
  #printArea .mtq-lotsub{ font-size:9px; color:#222; line-height:1.4; }
  #printArea .mtq-dim{ color:#666; font-size:8px; }
  #printArea .mtq-rule{ height:5px; background:var(--mtb); margin:0 0 10px; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  #printArea .mtq-tiles{ display:grid; grid-template-columns:1.25fr 1fr 1fr 1fr; gap:8px; margin:0 0 12px; }
  #printArea .mtq-tile{ background:#f2f3f6; border-radius:3px; padding:7px 10px 8px; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  #printArea .mtq-tile-net{ background:#fff; border:2px solid #1a1a1a; padding:6px 9px 7px; }
  #printArea .mtq-tl{ font-family:'Archivo',sans-serif; font-weight:700; font-size:7.5px; letter-spacing:0.1em; text-transform:uppercase; color:#555; }
  #printArea .mtq-tv{ font-family:'Archivo',sans-serif; font-weight:800; font-size:16px; line-height:1.15; margin-top:2px; font-variant-numeric:tabular-nums; }
  #printArea .mtq-tile-net .mtq-tv{ font-size:20px; }
  #printArea .mtq-ts{ font-size:7.5px; color:#555; margin-top:2px; }
  #printArea .mtq-cols{ display:grid; grid-template-columns:1fr 1fr; gap:0 22px; align-items:start; }
  #printArea .mtq-sec{ margin-bottom:11px; break-inside:avoid; }
  #printArea .mtq-sec h3{ font-family:'Archivo',sans-serif; font-weight:700; font-size:8.5px; letter-spacing:0.12em; text-transform:uppercase; margin:0 0 3px; padding-bottom:3px; border-bottom:1.5px solid var(--mtb); color:var(--mtb); -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  #printArea .mtq-r{ display:flex; justify-content:space-between; gap:8px; padding:2.5px 0; border-bottom:1px solid #ececea; line-height:1.25; font-variant-numeric:tabular-nums; }
  #printArea .mtq-r span{ font-weight:500; color:#333; }
  #printArea .mtq-r b{ font-weight:600; white-space:nowrap; text-align:right; color:#1a1a1a; }
  #printArea .mtq-r small{ color:#666; font-weight:400; }
  #printArea .mtq-r3{ display:grid; grid-template-columns:1fr 88px 88px; }
  #printArea .mtq-r5{ display:grid; grid-template-columns:1fr 36px 36px 36px 44px; }
  #printArea .mtq-r6{ display:grid; grid-template-columns:1fr 26px 30px 26px 40px 44px; font-size:8.2px; }
  #printArea .mtq-r6 span{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  #printArea .mtq-hdr{ border-bottom:0; padding-bottom:0; }
  #printArea .mtq-hdr b, #printArea .mtq-hdr span{ font-weight:700; font-size:7.5px; color:#666; text-transform:uppercase; letter-spacing:0.06em; }
  #printArea .mtq-shade{ background:#f2f3f6; -webkit-print-color-adjust:exact; print-color-adjust:exact; padding:2px 3px; margin-top:5px; }
  #printArea .mtq-pos{ margin-top:6px; }
  #printArea .mtq-none{ color:#666; font-size:8.5px; padding:3px 0; }
  #printArea .mtq .neg{ color:#b23b2e; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  #printArea .mtq .pos{ color:#2f6b3a; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  #printArea .mtq-wide .mtq-chart{ border:1px solid #dcdde2; border-radius:3px; padding:6px 8px 4px; }
  #printArea .mtq-chart svg{ width:100%; height:auto; max-height:150px; display:block; }
  #printArea .mtq-legend{ font-size:7.5px; color:#555; margin-top:4px; display:flex; flex-wrap:wrap; align-items:center; gap:4px 12px; }
  #printArea .mtq-legend i{ display:inline-block; width:14px; height:0; border-top:2px solid; margin-right:4px; vertical-align:middle; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  #printArea .mtq-legend .k1{ border-color:#1a1a1a; } #printArea .mtq-legend .k2{ border-color:#2f6b3a; } #printArea .mtq-legend .k3{ border-color:#1E3EC9; } #printArea .mtq-legend .k4{ border-top:2px dashed #b23b2e; }
  #printArea .mtq-foot{ position:fixed; bottom:0; left:0; right:0; display:flex; justify-content:space-between; font-size:7.5px; color:#555; border-top:1px solid #dcdde2; padding-top:4px; }
}
/* Show List packer PDF — phone-readable portrait sheet (Oct 5) */
@media print{
  #printArea .pk{ font-family:'Inter',sans-serif; color:#1a1a1a; }
  #printArea .pk-yard{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin:14px 0 4px; padding-bottom:4px; border-bottom:2px solid #1a1a1a; font-family:'Archivo',sans-serif; font-weight:800; font-size:15px; }
  #printArea .pk-yard span:last-child{ font-family:'Inter',sans-serif; font-weight:500; font-size:11px; color:#333; }
  #printArea .pk-table{ width:100%; border-collapse:collapse; font-size:14px; break-inside:avoid; }
  #printArea .pk-table th{ font-family:'Archivo',sans-serif; font-weight:700; font-size:10px; letter-spacing:1px; text-transform:uppercase; color:#333; text-align:left; padding:6px 8px 4px; border-bottom:1px solid #1a1a1a; }
  #printArea .pk-table td{ padding:8px; border-bottom:1px solid #e3e3e0; white-space:nowrap; text-align:left; }
  #printArea .pk-table td:nth-child(3), #printArea .pk-table td:nth-child(4), #printArea .pk-table th:nth-child(3), #printArea .pk-table th:nth-child(4){ text-align:right; }
  #printArea .pk-table tbody tr:nth-child(even) td{ background:#efefec; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  #printArea .pk-table td:first-child{ font-weight:700; }
  #printArea .pk-total{ margin-top:12px; font-family:'Archivo',sans-serif; font-weight:700; font-size:12px; text-align:right; }
}
/* Show list: drag-and-drop row order (Oct 5) */
.sl-grip{width:34px;text-align:center !important;cursor:grab;white-space:nowrap;color:var(--gray-text);user-select:none;padding-left:4px !important;padding-right:4px !important;}
.sl-grip .sl-dots{display:block;font-size:0.95rem;letter-spacing:-2px;line-height:1;}
.sl-grip .sl-mv{border:0;background:none;color:var(--gray-text);cursor:pointer;font-size:0.55rem;padding:1px 3px;line-height:1;}
.sl-grip .sl-mv:hover{color:var(--black);}
tr.sl-dragging td{opacity:0.45;}
tr.sl-over-top td{box-shadow:inset 0 3px 0 var(--black);}
tr.sl-over-bottom td{box-shadow:inset 0 -3px 0 var(--black);}
/* Margin Trax single-pick dropdown (Research look) — Oct 5 */
.mt-pick .dd-btn{font-size:0.9rem;padding:9px 12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mt-pick .dd-panel{max-height:360px;}
.mt-pick .dd-row{padding:6px 0;font-size:0.88rem;}
.mt-pick .dd-row:hover{background:#f1f1ee;}
.mt-pick .dd-actions{border-bottom:0;padding-bottom:0;margin-bottom:4px;}
.mt-pick .dd-actions input{padding:8px 10px;}
/* Margin Trax Dashboard (Oct 7) */
.mtd{display:flex;flex-direction:column;gap:20px;}
.mtd-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:12px;}
.mtd-eyebrow{font-family:'Archivo',sans-serif;font-weight:800;font-size:0.72rem;letter-spacing:2px;color:#1e4fd8;}
.mtd-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;}
.mtd-kpi{background:#fff;border:1px solid var(--black);border-radius:2px;padding:14px 16px;min-width:0;}
.mtd-lbl{font-family:'Archivo',sans-serif;font-size:0.64rem;letter-spacing:1.6px;color:var(--gray-text);}
.mtd-val{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.7rem;margin-top:6px;line-height:1.1;white-space:nowrap;}
.mtd-val.neg{color:var(--neg);} .mtd-val.pos{color:var(--pos);}
.mtd-of{font-size:0.95rem;color:var(--gray-text);font-weight:600;}
.mtd-row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.mtd-cov{display:inline-block;width:64px;height:7px;background:#e4e4e2;border-radius:4px;overflow:hidden;vertical-align:middle;} .mtd-cov i{display:block;height:100%;}   /* Every open lot: hedged bar (Oct 27 2026) */
.mtd-allbox{max-height:460px;margin-top:10px;}   /* Every open lot: a box that scrolls on its own (per Jayd: "way too long to scroll through") */
.mtd-line{cursor:pointer;} .mtd-line:hover td{background:#f4f4f1;} .mtd-line.open td{background:#f4f4f1;font-weight:500;}
.mtd-caret{display:inline-block;width:14px;color:var(--gray-text);font-size:0.75rem;}
.mtd-detail td{padding:0 0 10px;background:#fbfbf9;}
.mtd-detail .mtd-lcols{border:1px solid var(--gray-line);border-top:0;}
.mtd-lot{border:1px solid var(--gray-line);border-radius:2px;margin-top:12px;cursor:pointer;}   /* Every open lot blocks (Oct 27 2026) */
.mtd-lot:hover{background:#fafaf8;}
.mtd-lh{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:10px 16px;border-bottom:1px solid var(--gray-line);}
.mtd-lname{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.05rem;}
.mtd-k{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;letter-spacing:0.8px;text-transform:uppercase;color:var(--gray-text);margin-right:5px;}
.mtd-v{font-weight:600;font-size:0.92rem;}
.mtd-sep{color:#c4c4c4;}
.mtd-lcols{display:grid;grid-template-columns:1.1fr 1.15fr 1.15fr 1fr 1fr;}
.mtd-lcol{padding:10px 16px;border-right:1px solid var(--gray-line);min-width:0;}
.mtd-lcol:last-child{border-right:0;}
.mtd-lcol h3{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;letter-spacing:1.2px;text-transform:uppercase;color:var(--blue,#1e3ec9);margin:0 0 6px;}
.mtd-lr{display:flex;justify-content:space-between;gap:10px;font-size:0.8rem;padding:3px 0;border-bottom:1px solid #f0f0ee;}
.mtd-lr:last-child{border-bottom:0;}
.mtd-lr span{color:var(--gray-text);} .mtd-lr b{font-weight:600;text-align:right;}
.mtd-netbox{border:1px solid var(--blue,#1e3ec9);border-radius:2px;padding:8px 10px;margin-top:6px;}
.mtd-netl{font-size:0.78rem;font-weight:600;}
.mtd-netv{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.5rem;line-height:1.1;margin-top:2px;}
@media (max-width:1100px){ .mtd-lcols{grid-template-columns:repeat(2,minmax(0,1fr));} .mtd-lcol{border-right:0;border-top:1px solid var(--gray-line);} }
.mtd-row2{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:20px;}
.mtd-tile{margin:0;min-width:0;}
.mtd-tile-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;border-bottom:2px solid var(--black);padding-bottom:8px;}
.mtd-tile-head h2{margin:0;}
.mtd-sub{font-family:'Archivo',sans-serif;font-size:0.64rem;letter-spacing:1.4px;margin-top:12px;}
.mtd-sub.pos{color:var(--pos);} .mtd-sub.neg{color:var(--neg);}
.mtd-table{width:100%;margin-top:8px;}
.mtd-table td,.mtd-table th{white-space:normal;}
.mtd-row{cursor:pointer;} .mtd-row:hover td{background:#efefec;}
.mtd-months{display:flex;flex-direction:column;gap:12px;margin-top:14px;font-size:0.86rem;}
.mtd-month-top{display:flex;justify-content:space-between;gap:10px;}
.mtd-track{position:relative;height:10px;background:#e9e9e6;border-radius:2px;margin-top:6px;overflow:hidden;}
.mtd-fill{position:absolute;left:0;top:0;bottom:0;background:var(--black);border-radius:2px;}
.mtd-fill.over{background:#1e4fd8;}
.mtd-month-note{margin:3px 0 0;font-size:0.72rem;} .mtd-month-note.over{color:#1e4fd8;font-weight:600;}
.mtd-yards td:nth-child(2){min-width:220px;}
.mtd-bar{position:relative;height:22px;}
.mtd-bar .mtd-zero{position:absolute;left:50%;top:0;bottom:0;width:1px;background:#9a9a9a;}
.mtd-bar .mtd-barfill{position:absolute;top:5px;height:12px;} .mtd-barfill.neg{background:var(--neg);} .mtd-barfill.pos{background:var(--pos);}
.mtd-bar span{position:absolute;top:3px;font-size:0.76rem;font-weight:600;}
.mtd-looks{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;font-size:0.86rem;}
.mtd-look{padding:9px 0;border-top:1px solid var(--gray-line);display:flex;gap:10px;align-items:flex-start;}
.mtd-look a{color:inherit;text-decoration:none;} .mtd-look a:hover{text-decoration:underline;}
.mtd-dot{flex:0 0 8px;width:8px;height:8px;border-radius:50%;margin-top:6px;background:#1e4fd8;}
.mtd-dot.red{background:var(--neg);} .mtd-dot.amber{background:#c98a1e;} .mtd-dot.blue{background:#1e4fd8;}
@media (max-width:1100px){ .mtd-kpis{grid-template-columns:repeat(3,minmax(0,1fr));} .mtd-row3{grid-template-columns:minmax(0,1fr);} .mtd-row2{grid-template-columns:minmax(0,1fr);} }
@media (max-width:700px){ .mtd-kpis{grid-template-columns:repeat(2,minmax(0,1fr));} .mtd-val{font-size:1.4rem;} }
#mtdLock .mtd-table td:first-child,#mtdLock .mtd-table th:first-child{white-space:normal;min-width:120px;}
.mt-pickchip{display:inline-flex;align-items:center;gap:8px;font-size:0.84rem;font-weight:600;padding:6px 8px 6px 12px;border:1px solid var(--black);border-radius:2px;background:#fff;}
.mt-pickchip .mini-btn{padding:2px 7px;}
/* Hedging table rebuild (Oct 7): ▸ opens an account's positions */
.hl-caret{all:unset;cursor:pointer;display:inline-block;width:16px;margin-right:4px;color:var(--gray-text);font-size:0.8rem;text-align:center;}
.hl-caret:hover{color:var(--black);}
.hl-caret:focus-visible{outline:2px solid var(--black);}
.hl-pos{border-collapse:collapse;font-size:0.76rem;}
.hl-pos td{padding:1px 10px 1px 0 !important;border:0 !important;white-space:nowrap;text-align:left !important;background:transparent !important;}
.hl-pos td:nth-child(n+2){text-align:right !important;color:var(--gray-text);}
.hl-pos td:last-child{color:inherit;font-weight:600;}
/* Margin to lock in fits its tile (per Jayd, Oct 7: "i want it all to fit"): tighter cells, lot column wraps, at stake compact */
#mtdLock .mtd-table td,#mtdLock .mtd-table th{padding:7px 5px;}
#mtdLock .mtd-table td:first-child,#mtdLock .mtd-table th:first-child{min-width:0;width:44%;padding-left:0;}
#mtdLock .table-scroll{overflow-x:visible;}
/* Hedging page rebuild (Oct 8, from the approved mockup) */
.hl2{display:flex;flex-direction:column;gap:18px;}
.hl2-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:12px;}
.hl2-eyebrow{font-family:'Archivo',sans-serif;font-weight:800;font-size:0.68rem;letter-spacing:2px;color:#1e4fd8;}
.hl2-title{margin:2px 0 0;font-family:'Archivo',sans-serif;font-weight:800;font-size:1.6rem;border:0;padding:0;}
.hl2-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.hl2-kpi{background:#fff;border:1px solid var(--black);border-radius:2px;padding:14px 16px;min-width:0;}
.hl2-lbl{font-family:'Archivo',sans-serif;font-size:0.64rem;letter-spacing:1.6px;color:var(--gray-text);}
.hl2-big{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.7rem;margin-top:6px;line-height:1.1;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;}
.hl2-big.neg{color:var(--neg);} .hl2-big.pos{color:var(--pos);}
.hl2-ctl{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap;padding:14px 0 12px;border-bottom:2px solid var(--black);}
.hl2-ctl select{min-width:220px;}
.hl2-cols,.hl2-row{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1.1fr) minmax(0,2fr) minmax(0,2fr) 36px;gap:0 18px;align-items:start;}
.hl2-cols{padding:10px 0 6px;font-family:'Archivo',sans-serif;font-size:0.64rem;letter-spacing:1.6px;color:var(--gray-text);border-bottom:1px solid var(--gray-line);}
.hl2-row{padding:14px 0;border-bottom:1px solid var(--gray-line);}
.hl2-row.planned{background:#f7f3e8;margin:0 -20px;padding-left:20px;padding-right:20px;}
.hl2-row.open{background:#fafaf8;margin:0 -20px;padding-left:20px;padding-right:20px;border-bottom:0;}
.hl2-lot{font-weight:700;font-size:0.95rem;text-decoration:none;color:var(--black);} .hl2-lot:hover{color:#1e4fd8;text-decoration:underline;}
.hl2-mini{font:inherit;font-size:0.62rem;font-weight:700;letter-spacing:1px;padding:2px 7px;border:1px solid #c9c9c4;border-radius:2px;background:#fff;cursor:pointer;color:var(--black);}
.hl2-mini:hover{border-color:var(--black);}
.hl2-pnl{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.15rem;} .hl2-pnl.neg{color:var(--neg);} .hl2-pnl.pos{color:var(--pos);}
.hl2-cov{min-width:0;} .hl2-covtop{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:0.84rem;}
.hl2-chip{font-family:'Archivo',sans-serif;font-size:0.66rem;font-weight:700;letter-spacing:.6px;white-space:nowrap;color:var(--gray-text);}
.hl2-chip.neg{color:var(--neg);} .hl2-chip.pos{color:var(--pos);} .hl2-chip.blue{color:#1e4fd8;}
.hl2-track{position:relative;height:6px;background:#e9e9e6;border-radius:2px;margin-top:6px;overflow:hidden;}
.hl2-fill{position:absolute;left:0;top:0;bottom:0;background:var(--black);} .hl2-fill.over{background:#1e4fd8;}
.hl2-fill.ok{background:var(--pos);} .hl2-fill.thin{background:#b0741a;} .hl2-fill.need{background:var(--neg);}   /* bar matches the chip (Oct 8) */
.hl2-caret{font:inherit;font-size:0.9rem;width:30px;height:30px;border:1px solid #c9c9c4;border-radius:2px;background:#fff;cursor:pointer;color:var(--black);}
.hl2-caret.on{background:var(--black);color:#fff;border-color:var(--black);}
.hl2-detail{background:#fafaf8;margin:0 -20px;padding:4px 20px 18px;border-bottom:1px solid var(--gray-line);display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:24px;}
.hl2-pos{width:100%;border-collapse:collapse;font-size:0.82rem;} .hl2-pos th{font-family:'Archivo',sans-serif;font-size:0.62rem;letter-spacing:1.2px;color:var(--gray-text);font-weight:600;text-align:right;padding:6px 8px;border-bottom:1px solid var(--black);}
.hl2-pos td{text-align:right;padding:7px 8px;border-bottom:1px solid var(--gray-line);white-space:nowrap;} .hl2-pos tr.grp td{font-weight:700;}
.hl2-kv{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:7px 0;border-bottom:1px solid var(--gray-line);font-size:0.84rem;} .hl2-kv span{color:var(--gray-text);} .hl2-kv input{width:72px;text-align:right;padding:4px 6px;font-size:0.84rem;}
.hl2-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-top:12px;font-size:0.76rem;color:var(--gray-text);}
.hl2-row input[type=text],.hl2-row input[type=number],.hl2-row input[type=date]{padding:3px 6px;font-size:0.82rem;}
@media (max-width:1100px){ .hl2-kpis{grid-template-columns:repeat(2,minmax(0,1fr));} .hl2-cols{display:none;} .hl2-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;} .hl2-row > div:nth-child(3),.hl2-row > div:nth-child(4){grid-column:1 / span 2;} .hl2-detail{grid-template-columns:minmax(0,1fr);} }
@media (max-width:700px){ .hl2-kpis{grid-template-columns:minmax(0,1fr);} .hl2-row{grid-template-columns:minmax(0,1fr) 36px;} .hl2-row > div:nth-child(2){text-align:left !important;} .hl2-row > div:nth-child(3),.hl2-row > div:nth-child(4){grid-column:1;} }
.hl2-chip.amber{color:#b0741a;}
.mtd-month-note.thin{color:#b0741a;font-weight:600;}
/* Same colors as the Hedging page (Oct 9): red short · amber thin by delta · blue extra · green covered */
.mtd-fill.need{background:var(--neg);} .mtd-fill.thin{background:#b0741a;} .mtd-fill.ok{background:var(--pos);}
.mtd-month-note.need{color:var(--neg);font-weight:600;} .mtd-month-note.ok{color:var(--pos);font-weight:600;}
/* Corn risk from dry matter (Oct 8) */
.hl2-lock{display:inline-flex;align-items:center;gap:5px;font-size:0.74rem;color:var(--gray-text);margin-top:7px;cursor:pointer;user-select:none;} .hl2-lock input{margin:0;width:auto;}
.hl2-corn{margin-top:14px;} .hl2-corn summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;} .hl2-corn summary::-webkit-details-marker{display:none;}
.hl2-cbars{display:flex;align-items:flex-end;gap:6px;margin:16px 0 4px;overflow-x:auto;padding-bottom:2px;}
.hl2-cbar{flex:1 0 38px;min-width:38px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;}
.hl2-cbar-stack{width:72%;display:flex;flex-direction:column-reverse;border-radius:2px 2px 0 0;overflow:hidden;} .hl2-cbar-stack > span{display:block;width:100%;}
.hl2-cbar-n{font-size:0.66rem;color:var(--gray-text);margin-bottom:3px;white-space:nowrap;} .hl2-cbar-m{font-size:0.66rem;color:var(--gray-text);margin-top:4px;text-align:center;line-height:1.2;border-top:1px solid var(--black);width:100%;padding-top:3px;}
.hl2-cbar.fut .hl2-cbar-m{font-weight:700;color:var(--black);}
.hl2-ckey{display:flex;gap:14px;flex-wrap:wrap;font-size:0.74rem;color:var(--gray-text);} .hl2-ckey i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px;}
.hl2-pos tr[data-cornc]{cursor:pointer;} .hl2-pos tr[data-cornc]:hover td{background:#f6f6f3;}
/* Free hedge accounts (Oct 8) */
.hl2-acctchip{font-family:'Inter',sans-serif;font-size:0.78rem;font-weight:600;padding:3px 9px;border:1px solid var(--black);border-radius:2px;background:#fff;color:var(--black);cursor:pointer;width:auto;} .hl2-acctchip:hover{background:var(--black);color:#fff;}
/* Reports page (Oct 9 2026) */
.rep-cal-row{display:flex;gap:10px;flex-wrap:wrap;}
.rep-cal-item{display:flex;flex-direction:column;gap:2px;border:1px solid var(--gray-line);border-radius:2px;padding:8px 12px;min-width:150px;color:var(--black);text-decoration:none;font-size:0.82rem;background:#fff;}
.rep-cal-item:hover{border-color:var(--black);} .rep-cal-item.today{border:2px solid #2b4a78;}
.rep-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-top:16px;}
.rep-tab{font-family:'Inter',sans-serif;font-size:0.84rem;font-weight:600;padding:7px 12px;border:1px solid var(--black);border-radius:2px;background:#fff;color:var(--black);cursor:pointer;width:auto;}
.rep-tab.on{background:var(--black);color:#fff;} .rep-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#2b4a78;vertical-align:1px;margin-left:3px;}
.rep-next{background:#fff;border-left:4px solid #2b4a78;padding:8px 12px;margin-top:12px;font-size:0.86rem;box-shadow:0 1px 3px rgba(0,0,0,.08);}
.rep-banner{background:#fff7d6;border:1px solid #e0c060;padding:8px 10px;margin:10px 0;font-size:0.86rem;}
.rep-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:14px 0;}
.rep-card{background:#ebebeb;border-radius:2px;padding:12px;text-align:center;}
.rep-card-lbl{font-family:'Archivo',sans-serif;font-size:0.66rem;font-weight:700;letter-spacing:1.2px;color:var(--gray-text);text-transform:uppercase;}
.rep-card-val{font-family:'Archivo',sans-serif;font-size:1.7rem;font-weight:800;margin-top:4px;}
.rep-card-tag{font-weight:700;font-size:0.8rem;margin-top:4px;text-transform:uppercase;letter-spacing:.6px;}
.rep-summary{background:#ebebeb;padding:12px 16px;font-size:0.95rem;line-height:1.55;border-radius:2px;}
.rep-table td.pos{color:var(--pos);} .rep-table td.neg{color:var(--neg);} .rep-card-tag.pos{color:var(--pos);} .rep-card-tag.neg{color:var(--neg);}
.rep-title{font-family:"Archivo",sans-serif;font-size:1.55rem;font-weight:800;margin:2px 0 0;line-height:1.15;}
.rep-est{border:1px solid var(--gray-line);border-radius:2px;padding:12px 14px;margin-top:12px;background:#fafaf8;} .rep-est-ros{display:flex;gap:18px;flex-wrap:wrap;} .rep-est-ro{display:flex;flex-direction:column;font-size:0.82rem;} .rep-est-ro span{color:var(--gray-text);font-size:0.72rem;}
.mtd-reps{background:#fff;border-left:4px solid #2b4a78;padding:8px 12px;margin:12px 0 0;font-size:0.86rem;box-shadow:0 1px 3px rgba(0,0,0,.08);} .mtd-reps a{font-weight:600;}
/* Hedging print picks (Oct 9) */
.hl2-pick{width:auto;margin:3px 0 0;transform:scale(1.15);cursor:pointer;}
/* Purchase invoices in the lot drawer (Oct 9) */
.inv-box{border:1px solid var(--gray-line);border-radius:2px;padding:10px 12px;margin:8px 0 12px;background:#fafaf8;}
.inv-table{width:100%;border-collapse:collapse;margin-top:6px;} .inv-table th{font-family:'Archivo',sans-serif;font-size:0.62rem;letter-spacing:1px;color:var(--gray-text);text-align:left;padding:4px;font-weight:600;text-transform:uppercase;} .inv-table td{padding:3px 4px;} .inv-table{table-layout:fixed;} .inv-table input{width:100%;min-width:0;padding:6px 5px;font-size:0.82rem;} .inv-table th:nth-child(1){width:13%;} .inv-table th:nth-child(2){width:16%;} .inv-table th:nth-child(3){width:21%;} .inv-table th:nth-child(4){width:17%;} .inv-table th:nth-child(5){width:24%;} .inv-table th:nth-child(6){width:9%;} .inv-table td .mini-btn{padding:4px 6px;} .inv-table tfoot td{padding:6px 4px;font-size:0.86rem;border-top:1px solid var(--black);}
/* Add a lot — short form (Oct 10) */
.addlot-back{position:fixed;inset:0;background:rgba(0,0,0,0.38);z-index:2000;display:flex;align-items:flex-start;justify-content:center;padding:4vh 12px;overflow:auto;}
.addlot{background:#fff;border:1px solid var(--black);border-radius:2px;width:min(760px,100%);display:flex;flex-direction:column;max-height:92vh;}
.addlot-head{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 18px;border-bottom:1px solid var(--gray-line);} .addlot-title{font-family:'Archivo',sans-serif;font-size:1.25rem;font-weight:800;}
.addlot-body{padding:4px 18px 14px;overflow:auto;} .addlot-body h3{margin:14px 0 6px;}
.addlot-foot{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 18px;border-top:1px solid var(--gray-line);background:#fafaf8;}
@media (max-width:700px){ .addlot-back{padding:0;} .addlot{max-height:100vh;height:100%;} }
/* Closeout Snapshot (Oct 10 2026) */
.co-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:14px;}
.co-list{width:100%;border-collapse:collapse;font-size:0.88rem;}
.co-list th{text-align:left;font-size:0.72rem;text-transform:uppercase;letter-spacing:0.04em;color:var(--gray-text);padding:6px 8px;border-bottom:1px solid var(--gray-line);white-space:normal;}
.co-list td{padding:8px;border-bottom:1px solid var(--gray-line);white-space:normal;}
.co-list th.num,.co-list td.num{text-align:right;}
.co-list tbody tr[data-id]{cursor:pointer;} .co-list tbody tr[data-id]:hover{background:#f6f6f3;} .co-list tbody tr.on{background:#eef2f8;}
.co-list td.pos,.co-kv td.pos{color:var(--pos);} .co-list td.neg,.co-kv td.neg,.co-banner .neg{color:var(--neg);}
.co-tag{display:inline-block;font-size:0.7rem;font-weight:700;padding:1px 6px;border-radius:2px;background:#eee;color:#555;vertical-align:1px;}
.co-tag.ok{background:#e3f1e6;color:#1d6b33;} .co-tag.warn{background:#fdf0dc;color:#8a5a00;}
.co-chg{font-weight:600;} .co-chg.busy{color:#8a5a00;} .co-chg.quiet{color:#1d6b33;}
.co-head{display:flex;gap:28px;flex-wrap:wrap;background:var(--black);color:#fff;padding:14px 18px;border-radius:2px;font-family:"Archivo",sans-serif;font-size:1.25rem;}
.co-head-l{font-size:0.78rem;text-transform:uppercase;letter-spacing:0.06em;opacity:0.7;margin-right:6px;font-family:"Inter",sans-serif;}
.co-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin:12px 0 8px;}
.co-actions .danger{color:var(--neg);border-color:var(--neg);}
.co-banner{padding:10px 14px;border-radius:2px;font-size:0.88rem;line-height:1.5;border-left:4px solid #c98a00;background:#fdf6e8;}
.co-banner.ok{border-left-color:#1d6b33;background:#eef7f0;}
.co-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:14px;align-items:start;}
@media (max-width:1100px){.co-grid{grid-template-columns:1fr;}}
.co-card{border:1px solid var(--gray-line);border-radius:2px;padding:14px 16px;background:#fff;min-width:0;}
.co-card h3{font-family:"Archivo",sans-serif;font-size:1.05rem;color:#2b4a78;margin:4px 0 8px;}
.co-card h3 + .co-kv{margin-bottom:16px;}
.co-kv{width:100%;border-collapse:collapse;font-size:0.85rem;}
.co-kv th{text-align:left;font-weight:600;padding:6px 8px 6px 0;border-top:1px solid var(--gray-line);width:52%;vertical-align:top;}
.co-kv td{padding:6px 0;border-top:1px solid var(--gray-line);vertical-align:top;overflow-wrap:anywhere;}
.co-kv input{width:100%;padding:5px 7px;font-size:0.85rem;}
.co-pb{font-size:0.72rem;color:var(--gray-text);margin-top:2px;}
.co-int{margin-top:14px;padding:12px;background:#f7f7f4;border:1px solid var(--gray-line);border-radius:2px;}
.co-changes{margin-top:16px;}
#printArea .co-print{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;font-size:8.5pt;}
#printArea .co-pcard{margin-bottom:10px;} #printArea .co-ptitle{font-weight:700;color:#2b4a78;font-size:10pt;margin:0 0 4px;}
#printArea .co-print table{width:100%;} #printArea .co-print td{padding:3px 5px;}
.co-banner,.co-banner.warn,.co-banner.ok{color:var(--black);}
.co-kv th{text-transform:none;letter-spacing:0;font-size:0.84rem;border-bottom:none;color:var(--black);}
.co-kv{table-layout:fixed;}
.co-list-box{max-height:46vh;overflow:auto;border:1px solid var(--gray-line);}
.co-list-box .co-list th{position:sticky;top:0;background:#fff;z-index:1;}
.co-kv td.co-pb{white-space:normal;overflow-wrap:break-word;}
.co-list th.co-sortable{cursor:pointer;user-select:none;} .co-list th.co-sortable:hover{color:var(--black);}
.co-list th[data-dir="asc"]::after{content:' ▲';font-size:0.65rem;} .co-list th[data-dir="desc"]::after{content:' ▼';font-size:0.65rem;}
.co-list th[data-dir="asc"],.co-list th[data-dir="desc"]{color:var(--black);}

/* Margin Trax pages: more of the logo's blue (per Jayd, Oct 10 2026) — accents only; red / green P&L colors unchanged */
body.mt-page{--mt-blue:#1E3EC9;--mt-tint:#eef1fc;}
body.mt-page #mtTitle{border-bottom:3px solid var(--mt-blue);}
body.mt-page .mtd-eyebrow,body.mt-page .hl2-eyebrow{color:var(--mt-blue);}
body.mt-page .panel h2,body.mt-page .mtd-tile-head{border-bottom-color:var(--mt-blue);}
body.mt-page .panel h3{color:var(--mt-blue);}
body.mt-page .mtd-kpi{border-top:4px solid var(--mt-blue);}
body.mt-page table th{border-bottom-color:var(--mt-blue);}
body.mt-page #mtTable tbody tr:hover td,body.mt-page .mtd-row:hover td{background:var(--mt-tint);}
body.mt-page .download-btn:hover,body.mt-page .reset-btn:hover{background:var(--mt-blue);border-color:var(--mt-blue);color:#fff;}
body.mt-page .mini-btn.on,body.mt-page .mt-chart-ctl .mini-btn.on{background:var(--mt-blue);border-color:var(--mt-blue);color:#fff;}
body.mt-page select:focus,body.mt-page input:focus,body.mt-page .dd-btn:focus{border-color:var(--mt-blue);outline:none;box-shadow:0 0 0 2px rgba(30,62,201,0.15);}
body.mt-page .dd-panel.open{border-color:var(--mt-blue);}
body.mt-page .mt-net{border-color:var(--mt-blue);} body.mt-page .mt-net span{color:var(--mt-blue);}
body.mt-page .mtd-dot,body.mt-page .mtd-dot.blue,body.mt-page .mtd-fill.over{background:var(--mt-blue);}
body.mt-page .mtd-month-note.over{color:var(--mt-blue);}
body.mt-page .mtd-reps{border-left-color:var(--mt-blue);}
body.mt-page .content a:not(.download-btn):not(.mini-btn):not(.sn-item){color:var(--mt-blue);}

/* Margin Trax — the vendor app's look, upgraded (per Jayd, Oct 10 2026): soft blue-gray page, white cards with a light
   shadow instead of black outlines, a black header band with blue-outlined controls, blue section titles and buttons. */
body.mt-page{background:#e8ecf2;}
body.mt-page .panel,body.mt-page .mtd-kpi{border:0;border-radius:6px;box-shadow:0 1px 2px rgba(16,24,40,0.06),0 2px 8px rgba(16,24,40,0.06);}
body.mt-page .mtd-kpi{border-top:4px solid var(--mt-blue);}
body.mt-page .panel h2,body.mt-page .mtd-tile-head h2{color:var(--mt-blue);}
body.mt-page .download-btn{color:var(--mt-blue);border-color:var(--mt-blue);border-radius:4px;}
body.mt-page .download-btn:hover{background:var(--mt-blue);color:#fff;}
body.mt-page .mt-net{border:2px solid var(--mt-blue);border-radius:6px;}
/* the black band */
body.mt-page .mt-headpanel{padding-top:0;overflow:visible;}
body.mt-page .mt-band{background:#141414;color:#fff;margin:0 -20px 18px;padding:18px 20px 20px;border-radius:6px 6px 0 0;}
body.mt-page .mt-headpanel.mt-band-only{padding-bottom:0;}
body.mt-page .mt-headpanel.mt-band-only .mt-band{margin-bottom:0;border-radius:6px;}
body.mt-page .mt-band #mtTitle{color:#fff;}
body.mt-page .mt-band label{color:#c9d2f4;}
body.mt-page .mt-band .hint{color:#aab1c2;}
body.mt-page .mt-band select,body.mt-page .mt-band input[type=text],body.mt-page .mt-band .dd-btn{background:#fff;color:var(--black);border:1.5px solid var(--mt-blue);border-radius:4px;}
body.mt-page .mt-band .dd-panel{color:var(--black);}
body.mt-page .mt-band .dd-panel label{color:#333;}
body.mt-page .mt-band .download-btn{color:#fff;border-color:#6f86e8;}
body.mt-page .mt-band .download-btn:hover{background:var(--mt-blue);border-color:var(--mt-blue);}
@media (max-width:600px){ body.mt-page .mt-band{margin:0 -14px 16px;padding:14px;} }
/* Lot snapshot header (feedyard / lot / pen / account) in black too, like the vendor's Lot Snapshot */
body.mt-page .mt-head{background:#141414;color:#fff;}
body.mt-page .mt-head label{color:#c9d2f4;}
body.mt-page .mt-head .hint{color:#aab1c2;}
body.mt-page .mt-head .mt-headval{color:#fff;}
body.mt-page .mt-head select,body.mt-page .mt-head input{background:#fff;color:var(--black);border:1.5px solid var(--mt-blue);border-radius:4px;}
body.mt-page .mt-head .download-btn,body.mt-page .mt-head .mini-btn{color:#fff;border-color:#6f86e8;background:none;}
body.mt-page .mt-head .download-btn:hover,body.mt-page .mt-head .mini-btn:hover{background:var(--mt-blue);border-color:var(--mt-blue);color:#fff;}
body.mt-page .mt-head a{color:#9fb0f5;}

/* Margin Trax What if (Oct 10 2026) */
.wi-row{margin-top:14px;}
.wi-top{display:flex;justify-content:space-between;gap:10px;font-size:0.86rem;}
.wi-top b{font-weight:700;}
.wi-range{width:100%;margin:8px 0 2px;padding:0;border:0;background:none;accent-color:var(--mt-blue,#1E3EC9);cursor:pointer;}
.wi-ticks{display:flex;justify-content:space-between;font-size:0.72rem;color:var(--gray-text);}
.wi-out{margin-top:16px;border-top:1px solid var(--gray-line);padding-top:10px;}
.wi-net{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;border:2px solid var(--mt-blue,#1E3EC9);border-radius:6px;margin-bottom:6px;}
.wi-net span{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.72rem;letter-spacing:1.2px;text-transform:uppercase;color:var(--mt-blue,#1E3EC9);}
.wi-net b{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.4rem;}
.wi-net b.neg,.wi-out .neg{color:var(--neg);} .wi-net b.pos,.wi-out .pos{color:var(--pos);}
.wi-group{margin-top:14px;padding:4px 12px 10px;border-left:3px solid var(--mt-blue,#1E3EC9);background:#f6f8fe;border-radius:0 4px 4px 0;}
.wi-group-h{font-size:0.78rem;font-weight:700;margin-top:6px;}
.wi-group .wi-row{margin-top:10px;}

/* Margin Trax Dashboard — book What if (Oct 11 2026) */
.mtd-wi{margin:16px 0;padding:0;}
.mtd-wi > summary{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;padding:16px 20px;cursor:pointer;list-style:none;border-top:4px solid var(--mt-blue,#1E3EC9);border-radius:6px;}
.mtd-wi > summary::-webkit-details-marker{display:none;}
.mtd-wi-title{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.82rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--mt-blue,#1E3EC9);}
.mtd-wi-title::before{content:'▸ ';}
.mtd-wi[open] .mtd-wi-title::before{content:'▾ ';}
.mtd-wi-body{display:flex;flex-wrap:wrap;gap:22px;padding:0 20px 20px;border-top:2px solid var(--mt-blue,#1E3EC9);margin:0 20px;padding-left:0;padding-right:0;}
.mtd-wi-ctl{flex:1 1 320px;min-width:0;}
.mtd-wi-out{flex:1.3 1 420px;min-width:0;padding-top:14px;}
.mtd-wi-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.mtd-wi-kpis .mtd-val{font-size:1.45rem;}
.mtd-wi-hedge{margin:12px 0 4px;padding:10px 14px;background:#f7f7f4;border:1px solid var(--gray-line);border-radius:6px;font-size:0.84rem;line-height:1.5;}
.mtd-wi-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:6px;}
.mtd-wi-lot{display:flex;justify-content:space-between;gap:8px;padding:7px 0;border-bottom:1px solid #eee;font-size:0.84rem;text-decoration:none;color:inherit;}
.mtd-wi-lot:hover{background:var(--mt-tint,#eef1fc);}
@media (max-width:700px){ .mtd-wi-kpis{grid-template-columns:1fr;} .mtd-wi-lists{grid-template-columns:1fr;} }
.mtd-wi-roll{display:block;font-size:0.7rem;font-weight:600;color:#8a5a00;margin-top:2px;}
.mtd-wi-rollnote{margin:10px 0 4px;padding:9px 12px;background:#fdf6e8;border-left:4px solid #c98a00;border-radius:0 4px 4px 0;font-size:0.82rem;line-height:1.5;}
#mtTable .mt-pick{width:34px;min-width:34px;padding-left:6px;padding-right:2px;text-align:center;cursor:pointer;}
#mtTable .mt-pick input{width:auto;margin:0;cursor:pointer;accent-color:var(--mt-blue,#1E3EC9);}
#mtTable tbody tr.mt-picked td{background:#eaf0ff;}
#mtTable .mt-hand{display:inline-block;margin-left:4px;padding:0 5px;border-radius:3px;background:#ececea;color:var(--gray-text);font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;vertical-align:1px;cursor:help;}
/* Grid headings wrap onto two lines so the columns size to the numbers, not the heading (per Jayd, Oct 12) */
#mtTable th{white-space:normal;vertical-align:bottom;padding-left:8px;padding-right:8px;}
#mtTable td{padding-left:8px;padding-right:8px;}
#mtTable .mt-th{align-items:flex-end;}
#mtTable .mt-th-lbl{display:block;max-width:7.2em;line-height:1.25;overflow-wrap:normal;}
#mtTable th[style*='text-align:left'] .mt-th-lbl{max-width:none;}
.sl-pwt-box{display:inline-flex;align-items:stretch;border:1px solid var(--gray-line);border-radius:3px;background:var(--white);overflow:hidden;}
.sl-pwt-box input{width:54px;border:0 !important;border-radius:0;text-align:right;padding:4px 6px;font-weight:600;background:transparent;box-shadow:none;}
.sl-pwt-box input:focus{outline:none;}
.sl-pwt-box:focus-within{border-color:var(--black);box-shadow:0 0 0 2px rgba(30,62,201,0.18);}
.sl-pwt-box.trim{background:#fff7e0;border-color:#c98a00;}
.sl-pwt-arrows{display:flex;flex-direction:column;border-left:1px solid var(--gray-line);}
.sl-pwt-box.trim .sl-pwt-arrows{border-left-color:#e2c27a;}
.sl-pwt-arrows button{flex:1;border:0;background:transparent;padding:0 6px;font-size:0.55rem;line-height:1;cursor:pointer;color:var(--gray-text);min-height:13px;}
.sl-pwt-arrows button+button{border-top:1px solid var(--gray-line);}
.sl-pwt-arrows button:hover{background:var(--black);color:var(--white);}
.sl-pwt-arrows button:disabled{opacity:0.35;cursor:default;background:transparent;color:var(--gray-text);}
.sl-pwt-hint{margin:2px 0 0;min-height:0;}
/* Hedging PDF, larger (per Jayd, Oct 12 — positions get put on / taken off from this sheet) */
#printArea table.hl2-print{font-size:10.5pt;border-collapse:collapse;}
#printArea .hl2-print th{font-size:8.5pt;padding:5px 6px;vertical-align:bottom;}
#printArea .hl2-print td{padding:6px 6px 2px;}
#printArea .hl2-print tbody.hl2-print-acct{break-inside:avoid;page-break-inside:avoid;}
#printArea .hl2-print tbody.hl2-print-acct:nth-of-type(even) td{background:#eeeeeb;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
#printArea .hl2-print tbody.hl2-print-acct + tbody.hl2-print-acct tr.hl2-print-main td{border-top:1.5px solid #9a9a96;}
#printArea .hl2-print tr.hl2-print-main td{border-bottom:none;}
#printArea .hl2-print tr.hl2-print-main td.b{font-weight:700;}   /* account # and lot, wherever PDF settings puts them (Oct 15) */
#printArea .hl2-print tr.hl2-print-detail td{font-size:10pt;color:#1a1a1a;text-align:left;padding:2px 6px 8px;border-top:none;line-height:1.45;white-space:normal;}
#mtSumWi .mtd-wi{margin:14px 0 12px;}
#mtTable .mt-wi-d{font-size:0.7rem;font-weight:700;line-height:1.1;}
#mtTable td[data-wicell],#mtTable td[data-witot]{background:rgba(30,62,201,0.05);}

/* ---- PDF letterhead (Oct 12): MIDCON │ SHEET NAME, facts on the right, a per-sheet rule (color + style) ---- */
#printArea .lh-print{container-type:inline-size;margin:0 0 12px;}
#printArea .lh-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-bottom:9px;}
#printArea .lh-lockup{--h:min(30px, calc(64cqw / (8.6 + var(--n) * 1.12)));display:flex;align-items:center;gap:calc(var(--h) * 0.55);min-width:0;}
#printArea .lh-logo{display:block;flex:none;color:#000;line-height:0;}
#printArea .lh-logo svg,#printArea .lh-logo img{height:var(--h);width:auto;display:block;}
#printArea .lh-div{display:block;flex:none;width:1.5px;height:calc(var(--h) * 1.25);background:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
#printArea .lh-name{font-family:'Archivo','Arial Narrow',Arial,sans-serif;font-stretch:125%;font-variation-settings:'wdth' 125;font-weight:700;font-size:calc(var(--h) * 1.38);line-height:0.74;letter-spacing:0.05em;white-space:nowrap;padding-top:calc(var(--h) * 0.04);color:#000;}
#printArea .lh-meta{flex:none;text-align:right;font-family:'Inter',sans-serif;font-size:8.5pt;line-height:1.45;color:#222;font-variant-numeric:tabular-nums;}
#printArea .lh-meta .k{color:#666;text-transform:uppercase;letter-spacing:0.08em;font-size:7pt;font-weight:600;}
#printArea .lh-meta b{font-weight:600;}
#printArea .lh-rule{height:12px;--c:var(--doc);-webkit-print-color-adjust:exact;print-color-adjust:exact;}
#printArea .lh-r-solid{background:linear-gradient(var(--c),var(--c)) 0 50%/100% 5px no-repeat;}
#printArea .lh-r-heavy{background:var(--c);}
#printArea .lh-r-double{background:linear-gradient(var(--c),var(--c)) 0 2px/100% 3px no-repeat,linear-gradient(var(--c),var(--c)) 0 8px/100% 3px no-repeat;}
#printArea .lh-r-dashed{background:repeating-linear-gradient(90deg,var(--c) 0 26px,transparent 26px 36px) 0 50%/100% 6px no-repeat;}
#printArea .lh-r-dotted{background:radial-gradient(circle,var(--c) 3.2px,transparent 3.6px) 0 50%/11px 12px repeat-x;}
#printArea .lh-r-thickthin{background:linear-gradient(var(--c),var(--c)) 0 0/100% 6px no-repeat,linear-gradient(var(--c),var(--c)) 0 10px/100% 1.5px no-repeat;}
#printArea .lh-r-thinthick{background:linear-gradient(var(--c),var(--c)) 0 0/100% 1.5px no-repeat,linear-gradient(var(--c),var(--c)) 0 5px/100% 7px no-repeat;}
#printArea .lh-r-hatch{background:repeating-linear-gradient(-45deg,var(--c) 0 4px,transparent 4px 9px);border-top:1.5px solid var(--c);border-bottom:1.5px solid var(--c);}
#printArea .lh-r-triple{background:linear-gradient(var(--c),var(--c)) 0 1px/100% 1.5px no-repeat,linear-gradient(var(--c),var(--c)) 0 5px/100% 1.5px no-repeat,linear-gradient(var(--c),var(--c)) 0 9px/100% 1.5px no-repeat;}
#printArea .lh-r-dashdot{background:repeating-linear-gradient(90deg,var(--c) 0 22px,transparent 22px 28px,var(--c) 28px 33px,transparent 33px 39px) 0 50%/100% 5px no-repeat;}
#printArea .lh-r-thickdouble{background:linear-gradient(var(--c),var(--c)) 0 0/100% 4.5px no-repeat,linear-gradient(var(--c),var(--c)) 0 7.5px/100% 4.5px no-repeat;}
#printArea .lh-r-shortdash{background:repeating-linear-gradient(90deg,var(--c) 0 8px,transparent 8px 14px) 0 50%/100% 6px no-repeat;}
#printArea .lh-r-ladder{background:repeating-linear-gradient(90deg,var(--c) 0 2px,transparent 2px 8px);border-top:1.5px solid var(--c);border-bottom:1.5px solid var(--c);}
#printArea .lh-logo-alt svg,#printArea .lh-logo-alt img{height:calc(var(--h) * 1.75);}   /* the Margin Trax logo: its lettering is small inside the mark */
/* What If PDF body, larger (Oct 13) */
#printArea table.wi-print{ font-size:11.5pt; margin-top:4px; }
#printArea table.wi-print th{ font-size:9pt; padding:6px 10px; text-transform:uppercase; letter-spacing:0.06em; }
#printArea table.wi-print td{ padding:7px 10px; }
#printArea table.wi-print td:first-child{ font-weight:500; color:#333; }
#printArea table.wi-print tr.chg td{ font-weight:700; color:#000; }
#printArea .wi-print-chg{ margin-top:14px; font-size:15pt; }
#printArea .wi-print-note{ margin-top:8px; font-size:10pt; line-height:1.5; color:#444; }
#printArea table.wi-print tr.mine td{ font-weight:700; color:#000; }
#printArea .wi-hl{ background:#ffe36e; padding:2px 7px; border-radius:2px; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
#printArea .wi-hl small{ font-size:9pt; font-weight:600; }
#printArea .wi-you{ display:inline-block; margin-left:8px; padding:1px 6px; border-radius:2px; background:#1a1a1a; color:#fff; font-size:7pt; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; vertical-align:2px; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
#printArea .wi-print-key{ margin-top:6px; font-size:9.5pt; color:#333; }
/* Margin Trax lots PDF body, larger (Oct 13) */
#printArea table.mt-print{ width:100%; border-collapse:collapse; font-variant-numeric:tabular-nums; }
#printArea table.mt-print th{ font-size:0.72em; text-transform:uppercase; letter-spacing:0.05em; padding:5px 5px; vertical-align:bottom; border-bottom:2px solid #1E3EC9; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
#printArea table.mt-print td{ padding:6px 5px; white-space:nowrap; border-bottom:1px solid #e2e2de; }
#printArea table.mt-print td.lot{ font-weight:700; }
/* Hedging: Positions filter (Oct 13) */
.hl-posf{position:relative;display:flex;flex-direction:column;}
.hl-posbtn{min-width:220px;max-width:300px;text-align:left;font:inherit;font-size:0.92rem;padding:9px 12px;border:1px solid var(--gray-line);border-radius:2px;background:var(--white);color:var(--black);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.hl-posbtn.on{border-color:var(--black);box-shadow:inset 0 0 0 1px var(--black);font-weight:600;}
.hl-pospanel{position:absolute;z-index:40;top:100%;left:0;margin-top:4px;width:min(420px,92vw);max-height:440px;overflow:auto;background:var(--white);border:1px solid var(--black);border-radius:2px;box-shadow:0 10px 28px rgba(0,0,0,.18);padding:8px 10px 10px;}
.hl-posbar{display:flex;gap:6px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:2px 0 8px;border-bottom:1px solid var(--gray-line);margin-bottom:4px;}
.hl-posbar .hint{flex:1 1 180px;}
.hl-posgrp{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.68rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--gray-text);margin:10px 0 2px;}
.hl-posopt{display:flex;align-items:center;gap:8px;padding:6px 4px;margin:0;border-radius:2px;cursor:pointer;text-transform:none;letter-spacing:0;font-size:0.88rem;}
.hl-posopt:hover{background:#f2f3f6;}
.hl-posopt input{width:auto;margin:0;flex:none;}
.hl-posname{font-weight:600;flex:1;min-width:0;}
.hl-posqty{color:var(--gray-text);font-size:0.78rem;white-space:nowrap;font-variant-numeric:tabular-nums;}
.hl-possum{margin:12px 0 0;padding:10px 12px;border:1px solid var(--black);border-radius:2px;display:grid;gap:10px;}
.hl-possum-row{display:grid;gap:5px;}
.hl-possum-accts{display:flex;flex-wrap:wrap;gap:6px;}
.hl-possum-accts span{font-size:0.8rem;background:#f2f3f6;border-radius:2px;padding:3px 8px;font-variant-numeric:tabular-nums;}
.hl-possum-accts span.dim{opacity:0.55;}
/* Readable PDF tables (Oct 13): fitPrintTables sets each table's size; these hold for the measuring AND the print */
#printArea table.pp-fit{ width:100%; border-collapse:collapse; font-variant-numeric:tabular-nums; }
#printArea table.pp-fit th{ font-size:0.74em; text-transform:uppercase; letter-spacing:0.04em; padding:5px 6px; vertical-align:bottom; border-bottom:2px solid #1a1a1a; }
#printArea table.pp-fit td{ padding:5px 6px; border-bottom:1px solid #e2e2de; }
#printArea table.pp-fit td{ white-space:nowrap; }
#printArea table.pp-fit.pp-wrap td.pp-txt{ white-space:normal; min-width:7.5em; }   /* wraps to ~2 lines at most */
#printArea table.pp-fit th{ white-space:normal; }
/* Hedging Show: tick several (Oct 13) */
.hl-showdd{display:flex;flex-direction:column;min-width:240px;}
.hl-showdd .dd-btn{min-width:240px;max-width:320px;text-align:left;font-size:0.92rem;padding:9px 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.hl-showdd .dd-btn.on{border-color:var(--black);box-shadow:inset 0 0 0 1px var(--black);font-weight:600;}
.hl-showdd .dd-panel{width:min(380px,92vw);max-height:460px;overflow:auto;}
.hl-showdd .dd-row{padding:6px 0;font-size:0.88rem;}
.hl-showbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:0 0 8px;margin:0 0 4px;border-bottom:1px solid var(--gray-line);}
.hl-seg{display:inline-flex;border:1.5px solid var(--black);border-radius:2px;overflow:hidden;}
.hl-seg button{font:600 0.78rem inherit;padding:4px 12px;border:0;background:var(--white);color:var(--black);cursor:pointer;}
.hl-seg button.on{background:var(--black);color:var(--white);}
.hl-posopt .hl-tick{width:18px;flex:none;display:inline-block;font-weight:700;color:var(--black);}
.chip.chip-gone{background:#1a1a1a;color:#fff;border-color:#1a1a1a;}   /* Hedging: shipped / closed, closeout not final (Oct 13) */
.mt-fwd-done{text-align:left !important;background:#eef3e8;color:#2f4f2f;font-size:0.82rem;line-height:1.45;padding:8px 10px !important;}   /* forward sales covered by actual sales (Oct 13) */
.co-numin{text-align:right;font-variant-numeric:tabular-nums;}   /* Closeout edit boxes formatted like the locked view (Oct 14) */
.mt-shipped{display:inline-block;font-size:0.68rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;padding:1px 6px;border-radius:2px;background:#E7F3EA;color:#1F6B35;vertical-align:1px;}   /* Margin Trax: shipped forward-sale rows (Oct 14) */
/* Margin Trax tables on a phone (per Jayd, Oct 14 — Cattle Sales ran off the screen): cells wrap, and a cell's gray note sits
   under its number instead of beside it */
@media (max-width: 700px){
  .mt-table td{white-space:normal;}
  .mt-table td .hint{display:block;margin-top:2px !important;font-size:0.66rem;line-height:1.3;}
}
@media (max-width: 700px){
  .mt-table td[style*="nowrap"]{white-space:normal !important;}   /* Forward Sales: Edit / Reset / Sold List stack instead of pushing the page */
  .mt-table td .mini-btn{margin:2px 0;}
  body.mt-page .panel{overflow-x:auto;}   /* a table still wider than the phone (hedge positions) scrolls inside its panel, not the page */
}
/* Phone pass on every page (Oct 14): the rest of Margin Trax fits a phone */
@media (max-width: 700px){
  .mt-table th{white-space:normal;}
  .mt-table td,.mt-table th{padding:6px 5px;}
  /* Hedging rows: the margin block was auto-placed in the 36px arrow column — lot info + arrow on top, everything else full width under */
  .hl2-row > div:nth-child(1){grid-column:1;grid-row:1;}
  .hl2-row > div:nth-child(5){grid-column:2;grid-row:1;}
  .hl2-row > div:nth-child(2){grid-column:1;}
  body.mt-page .mt-band .panel-head-row{flex-wrap:wrap;gap:8px;}
  .hl2-corn table.hl2-pos{display:block;overflow-x:auto;}   /* the corn table scrolls on its own; the panel stays put */
}
@media (max-width: 700px){
  .hl2-row.planned,.hl2-row.open{margin:0 -14px;padding-left:14px;padding-right:14px;}   /* phone panels pad 14px, not 20 */
  .mt-table{font-size:0.74rem;}
}
/* Lots summary Total row (per Jayd, Oct 14 — 'blurry and confusing'): the pinned row is solid. The What If column's 5% tint was
   see-through, so the rows scrolling under showed through the total ($109.53 over $46.67); the same tint is now opaque, and a white
   band under the row hides the sliver of the next row that peeked out below it */
#mtTable tfoot td{background-color:var(--white);box-shadow:inset 0 2px 0 var(--black),0 10px 0 0 var(--white);}
#mtTable tfoot td[data-witot]{background:linear-gradient(rgba(30,62,201,0.05),rgba(30,62,201,0.05)),var(--white);}
/* Lots summary tick boxes drawn in CSS (Oct 14): Chrome paints its native checkboxes in their own layer, ABOVE the pinned Total row,
   so a sliver of the next row's box showed through it whatever the stacking. Same look: grey box, blue tick, blue dash for "some". */
#mtTable .mt-pick input[type=checkbox]{-webkit-appearance:none;appearance:none;width:15px;height:15px;border:1.5px solid #6b6f78;border-radius:3px;background:#fff;display:inline-block;vertical-align:middle;position:relative;}
#mtTable .mt-pick input[type=checkbox]:checked,#mtTable .mt-pick input[type=checkbox]:indeterminate{background:#1E3EC9;border-color:#1E3EC9;}
#mtTable .mt-pick input[type=checkbox]:checked::after{content:'';position:absolute;left:4px;top:1px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
#mtTable .mt-pick input[type=checkbox]:indeterminate::after{content:'';position:absolute;left:2.5px;top:5px;width:7px;height:2px;background:#fff;}
#mtTable .mt-pick input[type=checkbox]:focus-visible{outline:2px solid #1E3EC9;outline-offset:1px;}
/* …and the real cause of the strip under the Total (Oct 14, 2nd report): Chrome draws a collapsed-border table's row text over the
   bottom few pixels of its pinned header/footer cells. Separate borders with no spacing look the same and pin cleanly. */
#mtTable{border-collapse:separate;border-spacing:0;}
.hl2-wiline{margin-top:4px;font-size:0.82rem;white-space:nowrap;padding:2px 6px;border-radius:3px;background:rgba(30,62,201,0.07);display:inline-block;}   /* Hedging: What if net margin per account (Oct 15) */
.hl2-wilbl{font-size:0.62rem;font-weight:700;letter-spacing:0.06em;color:var(--mt-blue,#1E3EC9);}
/* Needs a look keeps its levels on Margin Trax (per Jayd, Oct 15 — 'everything is blue'): the Margin Trax blue theme painted every
   dot and every line blue. Dots by level again; each item's bold headline in its level's color (red = act, amber = watch, blue = info)
   and the rest of the line in normal text. */
body.mt-page .mtd-dot.red{background:var(--neg);} body.mt-page .mtd-dot.amber{background:#c98a1e;}
body.mt-page .content .mtd-look a:not(.download-btn):not(.mini-btn):not(.sn-item){color:var(--black,#1a1a1a);}   /* beats the blanket Margin Trax link-blue rule */
body.mt-page .mtd-look.lvl-red a > b{color:var(--neg);} body.mt-page .mtd-look.lvl-amber a > b{color:#9a640e;} body.mt-page .mtd-look.lvl-blue a > b{color:var(--mt-blue);}
/* Hedging PDF settings panel + the contracts table on the sheet (per Jayd, Oct 15) */
.hl-pdfset{margin:0 0 14px;padding:14px 16px;}
.hl-pdfset-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.hl-pdfset-sub{font-family:'Archivo',sans-serif;font-size:0.66rem;letter-spacing:0.1em;color:var(--mt-blue,#1E3EC9);margin:14px 0 6px;font-weight:700;}
.hl-pdfset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px 16px;}
.hl-pdfopt{display:flex;align-items:center;gap:8px;font-size:0.86rem;text-transform:none;letter-spacing:0;font-weight:400;margin:0;cursor:pointer;}
.hl-pdfopt input{width:auto;margin:0;accent-color:var(--mt-blue,#1E3EC9);}
#printArea table.hl2-print-pos{width:auto;min-width:60%;border-collapse:collapse;margin:6px 0 2px;font-size:9pt;}
#printArea table.hl2-print-pos th{font-size:7.5pt;padding:2px 8px;border-bottom:1px solid #1a1a1a;text-align:right;background:transparent;}
#printArea table.hl2-print-pos td{padding:2px 8px;text-align:right;border-top:none;background:transparent !important;}
#printArea table.hl2-print-pos tr.grp td{font-weight:700;border-top:1px solid #c9c9c4;}

/* Hedging: what's ticked for Print selected, incl. picks the filter hides (Oct 19) */
.hl-pickbar { margin: 8px 0 0; padding: 8px 12px; background: var(--gray-bg, #f4f5f7); border-radius: 6px; font-size: 0.82rem; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.hl-pickchip { display: inline-flex; align-items: center; gap: 6px; padding: 2px 4px 2px 10px; border: 1px solid var(--border, #d8dbe0); border-radius: 999px; background: #fff; font-weight: 600; }
.hl-pickchip button { border: 0; background: none; cursor: pointer; font-size: 1rem; line-height: 1; padding: 0 6px; color: var(--neg, #b42318); }

/* Ready Pens fits without side-scrolling (per Jayd, Oct 19 — dead space between Feedlot and Pen): text columns wrap and sit
   left, numbers stay on one line, tighter padding. Cols: 1 feedlot 2 pen 3 lot 4 head 5 color. */
#readyTable th, #readyTable td{ padding:7px 5px; }
#readyTable td:nth-child(-n+3), #readyTable td:nth-child(5), #readyTable th:nth-child(-n+3), #readyTable th:nth-child(5){ text-align:left; }
#readyTable td:nth-child(1){ white-space:normal; min-width:84px; max-width:120px; }
#readyTable td:nth-child(2){ white-space:normal; max-width:96px; }
#readyTable td:nth-child(3){ white-space:normal; }
#readyTable td:nth-child(4){ min-width:78px; }
#readyTable td:nth-child(5){ white-space:normal; max-width:104px; }
#readyTable td:nth-child(4) .hint{ white-space:normal !important; line-height:1.25; }

/* Ready Pens lot links (Oct 26): one color whether or not the snapshot was visited (the browser was painting visited ones purple) */
#readyTable td a,#readyTable td a:visited{color:#1E3EC9;text-decoration:none;font-weight:600;}
#readyTable td a:hover{text-decoration:underline;}

/* Accuracy page (Oct 26 2026) */
.ac-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin-top:12px;}
.ac-controls label{display:block;font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;letter-spacing:0.8px;text-transform:uppercase;color:var(--gray-text);margin-bottom:4px;}
.ac-controls select,.ac-controls input{min-width:150px;}
.ac-seg{display:inline-flex;border:1px solid var(--black);border-radius:2px;overflow:hidden;}
.ac-seg button{font:inherit;font-weight:600;font-size:0.8rem;padding:7px 14px;background:var(--white);border:0;cursor:pointer;color:var(--black);}
.ac-seg button.on{background:var(--black);color:var(--white);}
.ac-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:14px;}
.ac-tile{border:1px solid var(--gray-line);background:var(--off-white);padding:10px 12px;min-width:0;}
.ac-tile .k{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.58rem;letter-spacing:0.8px;text-transform:uppercase;color:var(--gray-text);}
.ac-tile .v{font-family:'Archivo',sans-serif;font-weight:800;font-size:1.5rem;line-height:1.1;margin-top:4px;color:var(--black);font-variant-numeric:tabular-nums;}
.ac-tile .s{font-size:0.7rem;color:var(--gray-text);margin-top:4px;line-height:1.35;}
.ac-tile.big{grid-column:span 2;background:var(--black);color:var(--white);border-color:var(--black);}
.ac-tile.big .k{color:#bdbdbd;} .ac-tile.big .v{color:var(--white);font-size:2.4rem;} .ac-tile.big .s{color:#d6d6d6;}
.ac-h{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.7rem;letter-spacing:1px;text-transform:uppercase;color:var(--black);margin:22px 0 6px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.ac-h .hint{margin:0;text-transform:none;letter-spacing:0;font-weight:400;}
.ac-insights{margin:12px 0 0;padding:10px 14px;border-left:3px solid var(--black);background:var(--off-white);font-size:0.82rem;line-height:1.5;}
.ac-insights b{font-weight:700;}
.ac-trend{border:1px solid var(--gray-line);background:var(--white);margin-top:8px;padding:8px 6px 2px;}
.ac-trend svg{width:100%;height:auto;display:block;}
.ac-table tr.sel td{background:#eef2ff;}
.ac-table tbody tr{cursor:pointer;} .ac-table tbody tr:hover td{background:#f3f3f1;}
.ac-score{display:inline-block;min-width:34px;text-align:center;padding:2px 6px;border-radius:2px;font-weight:800;font-family:'Archivo',sans-serif;}
.ac-score.g{background:#dfeedd;color:var(--pos);} .ac-score.a{background:#f4ead6;color:#7a5a00;} .ac-score.r{background:#f6dcd8;color:var(--neg);} .ac-score.n{background:var(--off-white);color:var(--gray-text);}
.ac-pill{display:inline-block;font-size:0.62rem;font-weight:700;letter-spacing:0.5px;text-transform:uppercase;padding:1px 6px;border-radius:2px;background:var(--off-white);border:1px solid var(--gray-line);color:var(--gray-text);margin-left:6px;}
.ac-pill.on{background:#e6efe5;border-color:#bcd3ba;color:var(--pos);}
@media (max-width:700px){ .ac-tile.big{grid-column:span 2;} .ac-tile .v{font-size:1.2rem;} .ac-tile.big .v{font-size:1.9rem;} }
/* Feeding accuracy card (Oct 26 2026) */
.fa-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));}
.fa-tile .v{font-size:1.15rem;line-height:1.25;}
.fa-tile .s{font-size:0.7rem;color:var(--gray-text);margin-top:3px;line-height:1.3;}
.fa-h{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.68rem;letter-spacing:1px;text-transform:uppercase;color:var(--gray-text);margin:16px 0 6px;}
.fa-table{width:100%;border-collapse:collapse;font-size:0.78rem;}
.fa-table th{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.58rem;letter-spacing:0.6px;text-transform:uppercase;color:var(--gray-text);text-align:right;padding:4px 6px;border-bottom:1px solid var(--black);}
.fa-table td{padding:4px 6px;border-bottom:1px solid var(--gray-line);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;}
.fa-table tr.fa-flag td{background:#fff4f2;}
.fa-tile .v.pos,.fa-table .pos,.fa-tile .pos{color:var(--pos,#2f6b3a);} .fa-tile .v.neg,.fa-table .neg,.fa-tile .neg{color:var(--neg,#b23b2e);}
.ac-h select{width:auto;min-width:0;}
.ac-pgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px;}
@media (max-width:860px){.ac-pgrid{grid-template-columns:1fr;}}
.ac-pcol{border:1px solid var(--gray-line);border-radius:2px;padding:10px 14px;background:var(--white);}
.ac-ptitle{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.66rem;letter-spacing:0.8px;text-transform:uppercase;margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--gray-line);}
.ac-ptitle.bad{color:var(--neg);}
.ac-ptitle.good{color:var(--pos);}
.ac-pitem{font-size:0.82rem;line-height:1.45;padding:5px 0;border-bottom:1px dotted var(--gray-line);}
.ac-pitem:last-child{border-bottom:0;}
.ac-pitem b{font-weight:700;}
.ac-pitem a{color:var(--black);font-weight:600;text-decoration:underline;text-decoration-color:var(--gray-line);}
.ac-pchip{display:inline-block;font-family:'Archivo',sans-serif;font-size:0.58rem;font-weight:700;letter-spacing:0.6px;text-transform:uppercase;padding:1px 6px;border-radius:2px;border:1px solid var(--gray-line);color:var(--gray-text);margin-right:4px;vertical-align:middle;}
.ac-pchip.strong{border-color:var(--black);color:var(--black);}
.ac-legrow{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:6px 2px 0;font-size:0.78rem;}
.ac-leg{display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:2px 6px;border-radius:2px;border:1px solid transparent;white-space:nowrap;}
.ac-leg:hover{border-color:var(--gray-line);background:var(--off-white);}
.ac-leg i{display:inline-block;width:18px;height:4px;border-radius:2px;}
.ac-leg.x{border-color:var(--gray-line);font-weight:600;}
.ac-leg.x b{color:var(--gray-text);margin-left:2px;}
.ac-legrow input{width:200px;font-size:0.78rem;padding:4px 8px;}
.ac-pickbtn{padding:2px 7px;font-size:0.68rem;white-space:nowrap;}
.ac-pickbtn.on{background:var(--black);color:var(--white);}
.ac-paygrid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;margin-top:10px;align-items:start;}
@media (max-width:1100px){.ac-paygrid{grid-template-columns:1fr;}}
.ac-scatter svg{width:100%;height:auto;border:1px solid var(--gray-line);border-radius:2px;background:var(--white);}
.ac-sw{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px;}
.ac-dd{position:relative;display:inline-block;}
.ac-dd .mini-btn{padding:3px 9px;font-size:0.72rem;text-transform:none;letter-spacing:0;}
.ac-ddp{display:none;position:absolute;top:calc(100% + 4px);left:0;z-index:50;min-width:230px;max-height:340px;overflow:auto;background:var(--white);border:1px solid var(--black);border-radius:2px;padding:6px 4px;box-shadow:0 6px 18px rgba(0,0,0,0.14);font-family:Inter,sans-serif;text-transform:none;letter-spacing:0;font-weight:400;font-size:0.8rem;}
.ac-dd.open .ac-ddp{display:block;}
.ac-ddi{display:flex;align-items:center;gap:7px;padding:4px 8px;cursor:pointer;white-space:nowrap;border-radius:2px;}
.ac-ddi:hover{background:var(--off-white);}
.ac-ddi.all{font-weight:600;border-bottom:1px solid var(--gray-line);margin-bottom:4px;}
.ac-ddi input{margin:0;width:auto;}
.ac-ddi i{display:inline-block;width:14px;height:4px;border-radius:2px;}
.ac-ddh{font-family:'Archivo',sans-serif;font-weight:700;font-size:0.6rem;letter-spacing:0.8px;text-transform:uppercase;color:var(--gray-text);padding:8px 8px 2px;}
.ac-dds{padding:2px 4px 6px;}
.ac-dds input{width:100%;font-size:0.78rem;padding:4px 8px;}
