/* Taxplorer — site styles (extracted from index.html) */
  :root{
    --navy:#021978;--navy-hover:#02198D;--peri:#B8BEDB;--peri-soft:#f0f4ff;
    --bg:#f8f9fb;--red:#c0392b;--red-soft:#fdecea;--green:#1c7a3e;--green-soft:#eaf6ee;--ink:#333;--muted:#888;
  }
  *{box-sizing:border-box}
  body{margin:0;background:#fff;font-family:'Manrope',sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}
  a{color:inherit}
  .navbar{background:#fff;border-bottom:1px solid #eee;padding:.45rem 8%;display:flex;align-items:center;position:sticky;top:0;z-index:100}
  .brand{display:flex;align-items:center;cursor:pointer;background:none;border:none;font-family:inherit;text-decoration:none}
  .logo-svg{width:29px;height:35px;margin-right:9px}
  .logotitle{font-weight:700;font-size:22px;color:var(--ink)}
  .nav-right{margin-left:auto;display:flex;align-items:center;gap:26px}
  .nav-link-custom{font-weight:700;color:#555;font-size:13px;text-decoration:none;cursor:pointer;background:none;border:none;font-family:inherit;padding:0}
  .nav-link-custom:hover,.nav-link-custom.active{color:var(--navy)}
  .btn-download-nav{background:var(--navy);color:#fff;border-radius:5px;font-weight:700;padding:9px 22px;border:2px solid var(--navy);cursor:pointer;font-family:inherit;font-size:13px;text-decoration:none}
  .btn-download-nav:hover{background:var(--navy-hover)}
  .nav-quiz{color:#8A2B4D;font-weight:800;font-size:13px;text-decoration:none;cursor:pointer;background:none;border:none;font-family:inherit;padding:0;letter-spacing:.2px}
  .nav-quiz:hover,.nav-quiz.active{color:#6f1f3c;text-decoration:underline;text-underline-offset:4px}
  .page{display:none;animation:fade .3s ease}.page.active{display:block}
  @keyframes fade{from{opacity:0}to{opacity:1}}
  .section-container{padding:80px 8%;background:#fff}
  .text-blue{color:var(--navy)!important}
  .hr{padding:0 8%}.hr hr{border:none;border-top:1px solid #eee;margin:0}
  h1,h2,h3{color:var(--navy)}
  .dashboard-card{background:var(--bg);border:1px solid #eef0f2;border-radius:20px;padding:20px;height:100%;box-shadow:0 2px 10px rgba(0,0,0,.02)}
  .clean-card{padding:24px}
  .card-header{font-weight:700;color:#333;margin-bottom:6px}
  .metric-label{font-size:14px;font-weight:700;color:#555;margin-bottom:10px;text-align:center}
  .blue-circle{background:var(--peri);color:var(--navy);font-size:20px;font-weight:800;width:75px;height:75px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto}
  .grid2{display:grid;grid-template-columns:1fr 1fr;gap:25px}
  .grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px}
  .grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
  .hero-container{background:linear-gradient(rgba(10,20,70,.55),rgba(10,20,70,.55)),url('images/world_map.jpg') center/cover no-repeat,radial-gradient(circle at 20% 30%,#0a2a8a,#020c37);padding:100px 8%;color:#fff}
  .hero-container h1{color:#fff;font-weight:800;font-size:50px;margin:0 0 18px}
  .hero-container p.sub{font-size:19px;max-width:760px;margin-bottom:46px;opacity:.9;line-height:1.5}
  .c-card-white{background:#fff;border-radius:15px;padding:2.2rem;transition:all .3s ease;box-shadow:0 10px 30px rgba(0,0,0,.05);cursor:pointer;color:var(--navy);text-decoration:none}
  .c-card-white h3,.c-card-white p,.c-card-white .read-more{text-decoration:none}
  .c-card-white h3{margin:0 0 8px}.c-card-white p{color:#555;font-size:14px;margin:0}
  .c-card-white:hover{background:var(--navy-hover);color:#fff;transform:translateY(-5px)}
  .c-card-white:hover h3,.c-card-white:hover p,.c-card-white:hover .read-more{color:#fff!important}
  .read-more{font-weight:700;margin-top:15px;display:inline-block;color:var(--navy)}
  .company-hero-img{width:100%;height:280px;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,.1);object-fit:cover;display:block}
  .company-hero-ph{width:100%;height:280px;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,.1);background:linear-gradient(135deg,#0a2a8a,#020c37);display:flex;align-items:center;justify-content:center;color:#fff;opacity:.92;font-weight:300;letter-spacing:1px}
  select,input[type=text]{font-family:inherit;font-size:15px;padding:11px 14px;border:1px solid #cdd2e0;border-radius:8px;color:var(--navy);font-weight:700;background:#fff}
  select{width:100%}
  .combo{position:relative;max-width:520px}
  .combo-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:inherit;font-size:16px;font-weight:700;color:var(--navy);background:#fff;border:1px solid #cdd2e0;border-radius:8px;padding:12px 16px;cursor:pointer;text-align:left}
  .combo-trigger:hover{border-color:var(--navy)}
  .combo-trigger[aria-expanded="true"]{border-color:var(--navy);box-shadow:0 0 0 3px var(--peri-soft)}
  .combo-caret{color:var(--navy);font-size:11px;transition:transform .15s}
  .combo-trigger[aria-expanded="true"] .combo-caret{transform:rotate(180deg)}
  .combo-panel{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #e3e7f0;border-radius:12px;box-shadow:0 16px 44px rgba(2,25,120,.15);padding:8px;z-index:70}
  .combo-search{width:100%;font-family:inherit;font-size:14px;font-weight:500;color:var(--navy);border:1px solid #e3e7f0;border-radius:8px;padding:10px 12px;margin-bottom:6px;outline:none}
  .combo-search::placeholder{color:#aab;font-weight:500}
  .combo-search:focus{border-color:var(--peri);box-shadow:0 0 0 3px var(--peri-soft)}
  .combo-list{max-height:300px;overflow-y:auto}
  .combo-opt{padding:10px 12px;border-radius:8px;font-size:15px;font-weight:700;color:var(--navy);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .combo-opt.active{background:var(--peri-soft)}
  .combo-opt[aria-selected="true"]{background:var(--peri)}
  .combo-empty{padding:14px 12px;color:#999;font-size:14px;text-align:center}
  .report-badge{display:inline-block;padding:6px 18px;border-radius:20px;font-weight:700;font-size:12px;margin-left:10px;letter-spacing:.3px;color:#fff}
  .badge-label{margin-left:15px;font-size:12px;font-weight:700;color:#8a94a6}
  .badge-complete{background:#28a745}.badge-good{background:#71c285}.badge-partial{background:#ffc107;color:#333}.badge-limited{background:#fd7e14}.badge-very-limited{background:#dc3545}
  .section-subtitle{font-size:14px;color:var(--muted);margin-top:-5px;margin-bottom:30px}
  .year-selector-wrapper{display:flex;align-items:center;gap:15px;margin-bottom:30px;flex-wrap:wrap}
  .year-selector-wrapper label{font-weight:700;color:#333}
  .year-pills{display:flex;gap:8px;flex-wrap:wrap}
  .year-pill{border:2px solid #cdd2e0;background:#fff;color:var(--navy);font-weight:700;border-radius:8px;padding:7px 16px;cursor:pointer;font-family:inherit}
  .year-pill.on{background:var(--navy);color:#fff;border-color:var(--navy)}
  .haven-pct{font-size:28px;font-weight:800;color:var(--navy);text-align:center;margin:10px 0}
  .haven-sublabel{font-size:12px;color:var(--muted);text-align:center}
  .caveat-box{background:#f0f4ff;border:1px solid var(--peri);border-radius:12px;padding:16px 20px;font-size:13.5px;line-height:1.65;color:#333;margin-top:20px}
  .caveat-box strong{color:var(--navy)}
  .chart-empty{display:flex;align-items:center;justify-content:center;height:300px;color:#aaa;font-size:14px;text-align:center;padding:0 20px}
  table.cbcr{width:100%;border-collapse:collapse;font-size:13px}
  table.cbcr th{text-align:right;padding:10px 12px;border-bottom:2px solid #eef0f5;color:#667;font-size:11px;text-transform:uppercase;letter-spacing:.4px;cursor:default}
  table.cbcr th:first-child{text-align:left}
  table.cbcr td{text-align:right;padding:9px 12px;border-bottom:1px solid #f2f4f8;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
  table.cbcr td:first-child{text-align:left;color:var(--navy);font-weight:800}
  table.cbcr th.l,table.cbcr td.l{text-align:left}
  table.cbcr td.l{font-weight:600;color:#555}
  table.cbcr td.l:first-child{color:var(--navy);font-weight:800}
  .haven-flag{color:var(--red);font-size:10px;font-weight:800;margin-left:6px}
  .home-flag{color:#2f8f5b;font-size:10px;font-weight:800;margin-left:6px}
  .glossary{margin:0 0 18px;border:1px solid #eef0f5;border-radius:10px;background:#fafbfc;padding:0 16px}
  .glossary summary{cursor:pointer;font-weight:700;color:var(--navy);padding:13px 0;font-size:14px}
  .gloss-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 26px;padding:6px 0 16px}
  .gloss-item{font-size:12.5px;line-height:1.5}
  .gloss-item b{color:var(--navy);display:block;font-size:12px}
  .gloss-item span{color:#666}
  .gloss-h{font-weight:800;color:var(--navy);font-size:12px;text-transform:uppercase;letter-spacing:.4px;padding:10px 0 2px;border-top:1px solid #eef0f5;margin-top:6px}
  .report-badge{cursor:help}
  @media(max-width:700px){.gloss-grid{grid-template-columns:1fr}}
  .pub-card{background:#fff;border-radius:15px;padding:2rem;box-shadow:0 5px 20px rgba(0,0,0,.05);margin-bottom:25px;border-left:5px solid var(--navy)}
  .pub-type{display:inline-block;background:var(--peri);color:var(--navy);padding:3px 12px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase;margin-bottom:10px}
  .pub-title{margin:0 0 6px;font-size:19px}.pub-authors{color:#444;font-weight:700;font-size:14px;margin:0 0 2px}
  .pub-date{color:var(--muted);font-size:13px;margin:0 0 12px}.pub-card p.desc{color:#555;font-size:14px;margin:0 0 12px;line-height:1.6}
  .pub-link{color:var(--navy);font-weight:700;text-decoration:none}.pub-link:hover{text-decoration:underline}
  .btn-download-secondary{background:#fff;color:var(--navy);border:2px solid var(--navy);border-radius:5px;font-weight:700;padding:9px 22px;cursor:pointer;font-family:inherit;font-size:13px}
  .cite-box{background:var(--peri-soft);border:1px solid var(--peri);border-radius:12px;padding:20px 25px;margin-bottom:24px;font-size:14px;color:#333;line-height:1.8}
  .data-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:18px;flex-wrap:wrap}
  .pager{display:flex;gap:10px;align-items:center;margin-top:16px;font-size:13px;color:#555}
  .pager button{font-family:inherit;border:1px solid #cdd2e0;background:#fff;border-radius:7px;padding:6px 14px;cursor:pointer;font-weight:700;color:var(--navy)}
  .pager button:disabled{opacity:.4;cursor:default}
  .footer{background:var(--navy);color:#cdd5f0;padding:30px 8% 18px}
  .footer .cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;margin-bottom:18px}
  .footer-logo{height:34px;margin-bottom:10px;filter:brightness(0) invert(1)}
  .footer-heading{color:#fff;font-size:13px;font-weight:700;margin:0 0 6px}
  .footer-text{font-size:12px;line-height:1.6;color:#b9c2e6;margin:0}
  .footer-link{color:#fff;text-decoration:underline;cursor:pointer}
  .footer-link:hover{opacity:.85}
  .footer-divider{border-top:1px solid rgba(255,255,255,.15);margin:4px 0 12px}
  .footer-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#9aa6d4;flex-wrap:wrap;gap:8px}
  .loading{padding:120px 8%;text-align:center;color:var(--muted);font-size:16px}
  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
  h1[tabindex]:focus,h2[tabindex]:focus{outline:none}
  #game .gtagline{font-size:20px;font-weight:700;color:#8A2B4D;margin:0 0 18px;line-height:1.35;max-width:620px}
  @media (max-width:700px){
    table.cbcr thead{display:none}
    table.cbcr,table.cbcr tbody,table.cbcr tr,table.cbcr td{display:block;width:100%}
    table.cbcr tr{margin-bottom:14px;border:1px solid #eef0f5;border-radius:12px;padding:4px 2px;background:#fff}
    table.cbcr td{text-align:right;padding:7px 14px;border:none;display:flex;justify-content:space-between;align-items:center;gap:14px}
    table.cbcr td::before{content:attr(data-label);font-weight:700;color:#999;font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;text-align:left}
    table.cbcr td:first-child{justify-content:flex-start;font-size:15px;padding-top:11px;border-bottom:1px solid #f2f4f8;margin-bottom:4px}
    table.cbcr td:first-child::before{display:none}
  }
  @media (max-width:820px){.grid2,.grid3,.grid4{grid-template-columns:1fr}.nav-right{gap:13px}.nav-link-custom{font-size:13px}.hero-container h1{font-size:34px}.logotitle{font-size:22px}.footer .cols{grid-template-columns:1fr}}

/* ---- Tax Quiz (game page) ---- */
  #game .gstage{max-width:820px;margin:0 auto;padding:54px 24px 90px}
  #game .geyebrow{font-weight:700;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--navy);opacity:.65;margin-bottom:12px}
  #game .gintro h1{font-weight:800;font-size:42px;line-height:1.1;margin:0 0 16px}
  #game .glede{font-size:18px;line-height:1.6;color:#555;max-width:600px;margin:0 0 30px}
  #game .grow{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
  #game .gbtn{background:var(--navy);color:#fff;border:none;border-radius:8px;font-weight:700;font-size:15px;padding:14px 30px;cursor:pointer;font-family:inherit;transition:transform .15s,background .2s}
  #game .gbtn:hover{background:var(--navy-hover);transform:translateY(-2px)}#game .gbtn:disabled{background:#c7ccde;transform:none;cursor:default}
  #game .gghost{background:#fff;color:var(--navy);border:2px solid var(--navy);border-radius:8px;font-weight:700;font-size:14px;padding:12px 24px;cursor:pointer;font-family:inherit}
  #game .gprog{display:flex;align-items:center;gap:14px;margin-bottom:24px}
  #game .gdots{display:flex;gap:8px}#game .gdot{width:9px;height:9px;border-radius:50%;background:#dfe3ee}
  #game .gdot.done{background:var(--peri)}#game .gdot.active{background:var(--navy);transform:scale(1.35)}
  #game .gpill{margin-left:auto;font-weight:800;color:var(--navy);background:var(--peri-soft);border:1px solid var(--peri);border-radius:20px;padding:6px 16px;font-size:13px}
  #game .gcard{background:#fff;border-radius:18px;box-shadow:0 10px 40px rgba(2,25,120,.07);padding:34px}
  #game .gco{display:flex;align-items:center;gap:13px;margin-bottom:18px}
  #game .glogo{width:44px;height:44px;border-radius:11px;background:var(--peri);color:var(--navy);display:flex;align-items:center;justify-content:center;font-weight:800;flex-shrink:0}
  #game .gmeta{font-size:12px;color:var(--muted);font-weight:600}
  #game .gmblock{margin-bottom:22px}
  #game .gmq{font-weight:800;font-size:16px;color:var(--navy);margin-bottom:12px;display:flex;align-items:center;gap:11px}
  #game .gmq svg{width:20px;height:20px;stroke:var(--navy);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  #game .gchips{display:flex;flex-wrap:wrap;gap:10px}
  #game .gchip{background:var(--bg);border:2px solid #eef0f5;border-radius:12px;padding:10px 15px;cursor:pointer;font-family:inherit;font-weight:700;font-size:14px;color:var(--navy);display:flex;align-items:center;gap:10px;transition:all .15s}
  #game .gchip:hover{border-color:var(--navy);transform:translateY(-2px)}
  #game .gchip.sel{background:var(--navy);color:#fff;border-color:var(--navy)}#game .gchip:disabled{cursor:default;transform:none}
  #game .giso{font-size:11px;font-weight:800;background:var(--peri-soft);color:var(--navy);border-radius:5px;padding:3px 7px;min-width:34px;text-align:center}
  #game .gflag{display:inline-block;vertical-align:middle;width:23px;height:16px;border-radius:3px;overflow:hidden;flex-shrink:0;box-shadow:0 0 0 1px rgba(0,0,0,.1)}
  #game .gflag img{width:23px;height:16px;object-fit:cover;display:block}
  #game .gval{display:inline-flex;align-items:center;gap:6px}
  #game .gchip.win{border-color:var(--green);background:var(--green-soft);color:#15592e}
  #game .gchip.bad{border-color:var(--red);background:var(--red-soft);color:var(--red)}
  #game .gval{margin-left:2px;font-size:12px;font-weight:700;opacity:.9}
  #game .gtag{display:inline-flex;align-items:center;vertical-align:middle;font-size:9px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;border-radius:999px;padding:3px 9px;margin-left:2px;line-height:1}
  #game .gtag.hi{background:var(--green);color:#fff}#game .gtag.you{background:#dfe3ee;color:#555}
  #game .gsubmit{margin-top:24px;display:flex;justify-content:flex-end}
  #game .ginsight{background:var(--peri-soft);border:1px solid var(--peri);border-radius:12px;padding:18px 22px;margin-top:22px;font-size:14px;line-height:1.65;color:#2c3147}
  #game .ginsight strong{color:var(--navy)}#game .ginsight .b{display:block;font-weight:800;color:var(--navy);font-size:15px;margin-bottom:6px}
  #game .gend{background:#fff;border-radius:18px;box-shadow:0 10px 40px rgba(2,25,120,.07);padding:44px;text-align:center}
  #game .gscore{font-size:56px;font-weight:800;color:var(--navy)}#game .gscore span{font-size:26px;color:var(--peri)}
  #game .gfoot{margin-top:28px;font-size:12px;color:var(--muted);text-align:center;line-height:1.6}

/* ---- Company permalink share button ---- */
.share-btn{margin-left:14px;background:#fff;border:1px solid #cdd2e0;border-radius:20px;color:var(--navy);font-family:inherit;font-weight:700;font-size:12px;padding:6px 14px;cursor:pointer}
.share-btn:hover{border-color:var(--navy);background:var(--peri-soft)}
.share-btn.copied{background:var(--green-soft);border-color:var(--green);color:var(--green)}
