/* Cloak & Docket — TN "Regulatory Adjacent" v2 layout. ALL rules scoped under #tnv2 so nothing
   bleeds into the shared feed CSS. Loaded only when STATES.TN.format==='v2' and v2 is active. */
#tnv2{--v2bg:#f4f1ea;--v2card:#fbfaf6;--v2ink:#1e2420;--v2navy:#1b2a4a;--v2pine:#0e5a4f;--v2muted:#7c7c72;--v2line:#e4dfce;
  --v2leg:#2f6fb0;--v2legw:#eaf1f8;--v2jud:#b0413e;--v2judw:#f8ecec;--v2reg:#0e7c6b;--v2regw:#e6f4f0;--v2amber:#8a6d3b;--v2exec:#8a6d3b;--v2execw:#f3eee2;
  background:var(--v2bg);color:var(--v2ink);font:14px/1.5 -apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:block}
#tnv2 *{box-sizing:border-box}
#tnv2 a{color:inherit;text-decoration:none}
#tnv2 .v2strip{max-width:1240px;margin:0 auto;padding:12px 18px 0;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
#tnv2 .v2sl{font-size:10px;letter-spacing:.08em;color:var(--v2muted);text-transform:uppercase}
#tnv2 #v2stateSel{border:1px solid var(--v2pine);color:var(--v2pine);background:var(--v2regw);border-radius:8px;font:600 13px/1 sans-serif;padding:7px 10px;cursor:pointer}
#tnv2 .tabs{background:var(--v2card);border-bottom:1px solid var(--v2line);position:sticky;top:0;z-index:20;margin-top:10px}
#tnv2 .tabsin{max-width:1240px;margin:0 auto;padding:0 18px;display:flex;gap:0;align-items:center}
#tnv2 .v2statesel{border:1px solid var(--v2pine);color:var(--v2pine);background:var(--v2regw);border-radius:8px;font:600 13px/1 sans-serif;padding:8px 10px;cursor:pointer;margin-right:14px}
#tnv2 .tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:12px 20px;cursor:pointer;text-align:left}
#tnv2 .tabs .t{font:700 16px/1.1 Georgia,serif;color:var(--v2muted)}#tnv2 .tabs .s{font-size:11px;color:var(--v2muted);margin-top:2px}
#tnv2 .tabs button.on .t{color:var(--v2navy)}#tnv2 .tabs button.on{border-bottom-color:var(--v2navy)}
#tnv2 .tabs button.reg.on .t{color:var(--v2reg)}#tnv2 .tabs button.reg.on{border-bottom-color:var(--v2reg)}
#tnv2 .newtag{background:var(--v2reg);color:#fff;font:700 8.5px/1 sans-serif;letter-spacing:.06em;padding:3px 5px;border-radius:4px;margin-left:6px;vertical-align:middle}
#tnv2 .wrap{max-width:1240px;margin:0 auto;padding:16px 18px 60px}
#tnv2 .layA{display:grid;grid-template-columns:220px 1fr 262px;gap:18px;align-items:start}
@media(max-width:980px){#tnv2 .layA{grid-template-columns:1fr}}
#tnv2 .rail,#tnv2 .cal,#tnv2 .panel{background:var(--v2card);border:1px solid var(--v2line);border-radius:11px;padding:14px}
#tnv2 .rail{position:sticky;top:64px}
#tnv2 .rail h4,#tnv2 .cal h4,#tnv2 .phead{font:700 10.5px/1 sans-serif;letter-spacing:.05em;text-transform:uppercase;color:var(--v2muted);margin:0 0 9px}
#tnv2 .fg{margin-bottom:14px}#tnv2 .fg .opt{display:block;font-size:12.5px;color:#45483f;padding:3px 0;cursor:pointer}
#tnv2 .fg .opt input{margin-right:7px;vertical-align:middle}#tnv2 .fg .cnt{color:var(--v2muted);font-size:11px;margin-left:3px}
#tnv2 .railnote{font-size:11px;color:var(--v2muted);line-height:1.5;border-top:1px dashed var(--v2line);padding-top:9px;margin-top:2px}
#tnv2 .clearf{font-size:11.5px;color:var(--v2reg);font-weight:600;cursor:pointer;background:none;border:0;padding:0;margin-top:2px}
#tnv2 .searchbar{display:flex;gap:8px;margin-bottom:9px}
#tnv2 .searchbar input{flex:1;border:1px solid var(--v2line);border-radius:8px;padding:10px 12px;font:14px inherit;background:#fff}
#tnv2 .searchbar .sb{background:var(--v2pine);color:#fff;border:0;border-radius:8px;padding:0 16px;font:600 13px inherit;cursor:pointer}
#tnv2 .searchbar .sbx{display:none;align-items:center;background:#fff;border:1px solid var(--v2line);border-radius:8px;padding:0 13px;font:600 14px inherit;line-height:1;color:var(--v2muted);cursor:pointer}
#tnv2 .searchbar .sbx:hover{color:var(--v2ink);border-color:var(--v2pine)}
#tnv2 .searchbar.has-q .sbx{display:flex}
#tnv2 .cfoot .srclink{font:600 12px/1 sans-serif;color:var(--v2pine);margin-left:2px}
#tnv2 .cfoot .srclink:hover{text-decoration:underline}
#tnv2 .actions{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}
#tnv2 .act{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--v2line);background:#fff;border-radius:999px;padding:7px 12px;font:600 12px/1 sans-serif;color:#45483f;cursor:pointer}
#tnv2 .act.brief{border-color:var(--v2pine);color:var(--v2pine);background:var(--v2regw)}
#tnv2 .act.on{border-color:var(--v2amber);color:var(--v2amber);background:#f6efe0}
#tnv2 .lead{font:700 22px/1.2 Georgia,serif;color:var(--v2navy);margin:0 0 3px}#tnv2 .lead.reg{color:var(--v2reg)}
#tnv2 .sub{color:var(--v2muted);font-size:13px;margin-bottom:12px;max-width:640px}
#tnv2 .ctxbar{background:var(--v2regw);border:1px solid #cfe6df;border-radius:10px;padding:10px 13px;margin:0 0 12px;display:none;align-items:center;gap:10px}
#tnv2 .ctxbar.show{display:flex}#tnv2 .ctxbar b{color:var(--v2reg)}#tnv2 .ctxbar .x{margin-left:auto;color:var(--v2reg);font-weight:700;cursor:pointer}
#tnv2 .sec{display:flex;align-items:center;gap:9px;margin:18px 0 10px}#tnv2 .sec .bar{width:4px;height:18px;border-radius:2px}
#tnv2 .sec h2{font:700 14px/1 Georgia,serif;margin:0}#tnv2 .sec .count{color:var(--v2muted);font-size:12px}
#tnv2 .sec.reg{background:var(--v2regw);border:1px solid #cfe6df;border-radius:9px;padding:10px 12px}#tnv2 .sec.reg h2{color:var(--v2reg)}#tnv2 .sec.reg .why{margin-left:auto;color:var(--v2reg);font-size:11.5px;font-weight:600}
#tnv2 .card{background:var(--v2card);border:1px solid var(--v2line);border-left:4px solid var(--v2line);border-radius:10px;padding:12px 15px;margin-bottom:10px}
#tnv2 .card.leg{border-left-color:var(--v2leg)}#tnv2 .card.jud{border-left-color:var(--v2jud)}#tnv2 .card.reg{border-left-color:var(--v2reg)}#tnv2 .card.exec{border-left-color:var(--v2exec)}
#tnv2 .ctop{display:flex;align-items:center;gap:8px;margin-bottom:5px;flex-wrap:wrap}
#tnv2 .tag{font:700 9.5px/1 sans-serif;letter-spacing:.04em;padding:4px 7px;border-radius:5px;text-transform:uppercase}
#tnv2 .tag.leg{background:var(--v2legw);color:var(--v2leg)}#tnv2 .tag.jud{background:var(--v2judw);color:var(--v2jud)}#tnv2 .tag.reg{background:var(--v2regw);color:var(--v2reg)}#tnv2 .tag.exec{background:var(--v2execw);color:var(--v2exec)}
#tnv2 .cid{font:700 11.5px/1 monospace;color:var(--v2navy)}
#tnv2 .stb{font:700 9.5px/1 sans-serif;letter-spacing:.03em;color:#fff;background:var(--v2navy);padding:3px 6px;border-radius:5px}
#tnv2 .status{font:600 10.5px/1 sans-serif;color:var(--v2amber);background:#f6efe0;padding:4px 7px;border-radius:5px}#tnv2 .status.pass{color:#2c6b3f;background:#e7f2ea}
#tnv2 .ind{font:600 10px/1 sans-serif;color:var(--v2leg);background:var(--v2legw);border:1px solid #cbdcee;padding:3px 6px;border-radius:5px}
#tnv2 .utype{font:600 10px/1 sans-serif;color:var(--v2reg);background:var(--v2regw);border:1px solid #cfe6df;padding:3px 6px;border-radius:5px}
#tnv2 .ctitle{font:600 14.5px/1.35 Georgia,serif;color:var(--v2navy);margin:2px 0 4px}
#tnv2 .csum{font-size:12.5px;color:#40433d;margin:0 0 7px}
#tnv2 .cfoot{display:flex;gap:11px;align-items:center;font-size:12px;color:var(--v2muted);flex-wrap:wrap}
#tnv2 .cfoot a{color:var(--v2pine);font-weight:600;cursor:pointer}
#tnv2 .filbtn{background:none;border:1px solid var(--v2line);border-radius:6px;padding:5px 10px;font:600 12px/1 inherit;color:var(--v2pine);cursor:pointer}
#tnv2 .foll,#tnv2 .alertb{background:none;border:1px solid var(--v2line);border-radius:6px;padding:5px 9px;font:600 12px/1 inherit;color:var(--v2muted);cursor:pointer}
#tnv2 .foll.on{color:var(--v2amber);border-color:var(--v2amber);background:#f6efe0}
#tnv2 .clink{color:var(--v2pine);font-weight:600;cursor:pointer;background:none;border:0;font-size:12px;padding:0}
#tnv2 .fa{display:inline-flex;gap:8px;white-space:nowrap}
#tnv2 .xlink{display:flex;align-items:center;gap:8px;border-radius:8px;padding:8px 11px;margin-top:8px;font-size:12px}
#tnv2 .xlink.toreg{background:var(--v2regw);border:1px dashed #bcdfd6;color:#2c4a44}#tnv2 .xlink.toreg b{color:var(--v2reg)}
#tnv2 .xlink.toleg{background:var(--v2legw);border:1px dashed #cbdcee;color:#2b3d52}#tnv2 .xlink.toleg b{color:var(--v2leg)}
#tnv2 .xlink .go{margin-left:auto;font-weight:700;white-space:nowrap;cursor:pointer;background:none;border:0;font-size:12px}
#tnv2 .xlink.toreg .go{color:var(--v2reg)}#tnv2 .xlink.toleg .go{color:var(--v2leg)}
#tnv2 .drop{margin-top:8px;border-top:1px solid var(--v2line);padding-top:8px;display:none}#tnv2 .drop.show{display:block}
#tnv2 .frow{display:flex;gap:10px;font-size:12px;padding:4px 0;color:#454842;align-items:baseline}
#tnv2 .fdate{color:var(--v2muted);font:600 11px/1.4 monospace;min-width:82px}#tnv2 .fpdf{color:var(--v2reg);font-weight:600;margin-left:auto;white-space:nowrap}#tnv2 .fparty{color:var(--v2amber);font-size:11px}
#tnv2 .fmore{font-size:11.5px;color:var(--v2muted);padding:5px 0 0}
#tnv2 .fmoreitems{display:none}#tnv2 .fmoreitems.show{display:block}
#tnv2 .fmorebtn{background:none;border:0;color:var(--v2reg);font:600 12px/1 sans-serif;cursor:pointer;padding:7px 0 0}
#tnv2 .fmorebtn:hover{text-decoration:underline}
#tnv2 .tlab{font:700 10px/1 sans-serif;letter-spacing:.04em;text-transform:uppercase;color:var(--v2muted);margin:8px 0 5px}
#tnv2 .vrow{display:flex;gap:10px;font-size:12px;padding:4px 0;color:#454842;align-items:baseline}
#tnv2 .vres{font-weight:600}#tnv2 .vres.p{color:#2c6b3f}#tnv2 .vlink{color:var(--v2leg);font-weight:600;margin-left:auto;white-space:nowrap}
#tnv2 .cal{margin-bottom:16px}
/* live committee schedule mirrored from V1's #schedRail into the v2 Statehouse rail */
#tnv2 .v2sched{padding:12px 14px}
#tnv2 .v2sched .sched-head{gap:3px;margin-bottom:8px}
#tnv2 .v2sched .sched-head h2{font:700 13px/1.2 Georgia,serif;color:var(--v2navy);margin:0}
#tnv2 .v2sched .sched-cal{color:var(--v2pine);font-weight:600}
#tnv2 .v2sched .sched-chambers{flex-direction:column;overflow-x:visible;gap:10px}
#tnv2 .v2sched .sched-chamber{flex:1 1 auto;min-height:0;max-height:320px}
#tnv2 .colist button{display:flex;width:100%;text-align:left;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--v2line);border-radius:9px;padding:8px 10px;margin-bottom:6px;cursor:pointer;font:inherit}
#tnv2 .colist .cn2{font:600 12.5px/1.2 Georgia,serif;color:var(--v2navy)}#tnv2 .colist .cm2{font-size:10.5px;color:var(--v2reg);font-weight:600;white-space:nowrap;margin-left:8px}
#tnv2 .note{font-size:11px;color:var(--v2muted);line-height:1.5}
#tnv2 .empty{color:var(--v2muted);font-size:14px;padding:34px 0;text-align:center}
#tnv2 .comingsoon{max-width:540px;margin:10px auto;padding:34px 22px;text-align:center;background:var(--v2regw);border:1px solid var(--v2line);border-radius:10px}
#tnv2 .comingsoon h3{color:var(--v2reg);font:600 18px/1.3 Georgia,serif;margin:0 0 12px}
#tnv2 .comingsoon p{color:var(--v2ink);opacity:.8;font-size:14px;line-height:1.55;margin:0 auto 10px;max-width:46ch}
#tnv2 .v2more{text-align:center;padding:14px 0 6px}#tnv2 .v2more .act{cursor:pointer}#tnv2 .v2more .act:disabled{opacity:.6}
#tnv2 .v2banner{background:#2a2f2b;color:#f0efe8;font-size:12.5px;text-align:center;padding:7px 12px}#tnv2 .v2banner b{color:#efd9a6}
#tnv2 .loading{text-align:center;color:var(--v2muted);padding:60px 0;font-size:15px}
/* v2 modal (Signals manager) */
#tnv2 .v2modal{position:fixed;inset:0;background:rgba(20,24,20,.45);display:none;align-items:flex-start;justify-content:center;z-index:90;padding:44px 16px;overflow-y:auto}
#tnv2 .v2modal.show{display:flex}
#tnv2 .v2modalbox{background:var(--v2card);border:1px solid var(--v2line);border-radius:14px;max-width:560px;width:100%;padding:22px 24px;box-shadow:0 20px 50px rgba(0,0,0,.3)}
#tnv2 .v2modalbox h3{font:700 18px/1.2 Georgia,serif;color:var(--v2reg);margin:0 0 4px}
#tnv2 .v2mx{float:right;cursor:pointer;color:var(--v2muted);font-weight:700;font-size:16px;line-height:1}
#tnv2 .v2lab{font:600 11px/1 sans-serif;letter-spacing:.03em;text-transform:uppercase;color:var(--v2muted);margin:16px 0 8px}
#tnv2 .v2txt,#tnv2 .v2sel{width:100%;border:1px solid var(--v2line);border-radius:8px;padding:10px 11px;font:14px inherit;background:#fff;color:var(--v2ink)}
#tnv2 .v2txt{resize:vertical}
#tnv2 .v2hint{font-size:12px;color:var(--v2muted);margin:7px 0 0;line-height:1.5}
#tnv2 .v2grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}
#tnv2 .v2grid label{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--v2ink);cursor:pointer}
#tnv2 .v2grid input{width:16px;height:16px;accent-color:var(--v2pine);flex:none}
#tnv2 .v2chk{display:flex;gap:8px;align-items:center;font-size:13.5px;color:var(--v2ink);margin-top:15px}
#tnv2 .v2note{font-size:12px;color:var(--v2muted);line-height:1.5;margin:2px 0 4px}
#tnv2 .v2cta{display:flex;gap:16px;align-items:center;margin-top:18px;flex-wrap:wrap}
#tnv2 .v2save{background:var(--v2pine);color:#fff;border:0;border-radius:8px;padding:10px 16px;font:600 13px inherit;cursor:pointer}
#tnv2 .v2save:disabled{opacity:.6}
#tnv2 .v2cancel{color:var(--v2muted);cursor:pointer;text-decoration:underline;font-size:13.5px}
@media(max-width:560px){#tnv2 .v2grid{grid-template-columns:1fr}}
/* ---- phones (≤640px): make the two-view layout usable on a handset ---- */
@media(max-width:640px){
  #tnv2 .v2strip{padding:10px 12px 0}
  /* tab bar: state selector to its own full-width row, the two tabs split 50/50 below it */
  #tnv2 .tabsin{flex-wrap:wrap;padding:0 10px;gap:0 6px}
  #tnv2 .v2statesel{order:-1;flex:1 1 100%;margin:8px 0 0;text-align:center}
  #tnv2 .tabs button{flex:1 1 0;min-width:0;padding:10px 6px;text-align:center}
  #tnv2 .tabs .t{font-size:14px}
  #tnv2 .tabs .s{display:none}         /* drop the sub-label on phones */
  #tnv2 .newtag{display:none}          /* and the "UTILITY COMMISSION" badge */
  #tnv2 .wrap{padding:12px 12px 44px}
  #tnv2 .layA{gap:14px}
  #tnv2 .layA>div:nth-child(2){order:-1}   /* feed column first; filters + rails fall below */
  #tnv2 .rail{position:static}             /* no sticky rail when it's stacked */
  #tnv2 .lead{font:700 19px/1.2 Georgia,serif}
  #tnv2 .sub{font-size:12.5px}
  #tnv2 .sec.reg{flex-wrap:wrap}
  #tnv2 .sec.reg .why{margin-left:0;flex-basis:100%;margin-top:3px}
  #tnv2 .frow{flex-wrap:wrap}              /* long filing lines wrap instead of overflowing */
  #tnv2 .fdate{min-width:64px}
  #tnv2 .fpdf{margin-left:0}
  #tnv2 .v2modal{padding:18px 8px}
  #tnv2 .v2modalbox{padding:18px 16px}
}
/* when v2 is active, hide the standard feed grid (kept in the DOM so its listeners don't error) */
body.tnv2-on .app{display:none!important}
/* simplified masthead for the v2 (TN) view only — other states keep the full masthead */
body.tnv2-on .masthead .brand__tag,
body.tnv2-on .masthead .brand__ms,
body.tnv2-on .masthead .navlink[href="index.html"],
body.tnv2-on .masthead .navlink[href="index.html#pricing"]{display:none!important}
/* lift the masthead above the sticky v2 tab bar (both were z-index:20) so the Account dropdown,
   which overflows below the masthead, is not painted over by the tab bar */
body.tnv2-on .masthead{z-index:80!important}
body.tnv2-on .v2acct{position:relative;margin-left:12px}
body.tnv2-on .v2acctbtn{background:none;border:1px solid #d8d2c0;border-radius:100px;padding:6px 13px;font:600 12.5px/1 sans-serif;color:#45483f;cursor:pointer}
body.tnv2-on .v2acctbtn:hover{border-color:#b9b29a}
body.tnv2-on .v2acctmenu{position:absolute;right:0;top:calc(100% + 6px);min-width:220px;background:#fbfaf6;border:1px solid #d8d2c0;border-radius:11px;box-shadow:0 14px 36px rgba(0,0,0,.18);padding:7px;display:none;z-index:60}
body.tnv2-on .v2acctmenu.show{display:block}
body.tnv2-on .v2accthd{padding:8px 9px 9px;border-bottom:1px solid #ece7d7;margin-bottom:6px;font:600 12.5px/1.3 sans-serif;color:#1b2a4a;word-break:break-all}
body.tnv2-on .v2acctmenu .cd-signout{display:block!important;width:100%;text-align:left;border:0!important;border-radius:7px;padding:8px 9px;margin:0;background:none;font:500 13px/1.2 sans-serif;color:#40433d;cursor:pointer}
body.tnv2-on .v2acctmenu .cd-signout:hover{background:#efeadd;color:#1e2420}
