/* Canada Product Compliance Navigator — front-end styles */
.lbic-cn{--w:#FAFCFB;--b1:#DCEEF7;--b2:#EDF6FB;--g:#E2F1E4;--ink:#27445A;--accent:#A9535C;--line:#dbe6ee;--muted:#5c6f80;--card:#fff;
  --gate:#b23b3b;--gate-bg:#f6e3e2;--action:#a4651a;--action-bg:#f7ecd9;--research:#7f6b12;--research-bg:#f5efd4;
  --importer:#2b6f9c;--importer-bg:#e0eef7;--specialist:#6b4c9a;--specialist-bg:#ece4f5;--done:#2c6e49;--done-bg:#e2f1e8;--info:#6a7c88;--info-bg:#eceff1;
  font-family:Manrope,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);line-height:1.55;max-width:980px;margin:0 auto;-webkit-font-smoothing:antialiased;}
.lbic-cn *{box-sizing:border-box;}
.lbic-cn h1,.lbic-cn h2,.lbic-cn h3{font-family:Newsreader,Georgia,serif;font-weight:600;color:var(--ink);line-height:1.15;margin:0;}
.lbic-cn p{margin:0;}
.lbic-cn a{color:var(--importer);}

/* hero */
.cn-hero{text-align:center;padding:38px 16px 8px;}
.cn-eyebrow{font-family:Manrope,sans-serif;font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;}
.cn-hero-title{font-size:clamp(28px,4.5vw,40px);margin:0 0 12px;}
.cn-hero-sub{font-size:16px;color:var(--muted);max-width:60ch;margin:0 auto 8px;}
.cn-hero-trust{font-size:13px;color:var(--muted);font-weight:600;margin:6px 0 16px;}
.cn-hero-cta{margin:0 0 10px;}
.cn-hero-note{font-size:12.5px;color:var(--muted);font-style:italic;}

/* buttons */
.cn-btn{display:inline-block;padding:12px 20px;border-radius:10px;font-family:Manrope,sans-serif;font-weight:700;font-size:15px;cursor:pointer;border:1.5px solid transparent;text-decoration:none;}
.cn-btn-primary{background:var(--ink);color:#fff;}
.cn-btn-ghost{background:#fff;color:var(--ink);border-color:var(--line);}
.cn-btn-small{padding:7px 12px;font-size:13px;}
.cn-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}

.cn-app{padding:8px 16px 20px;}
.cn-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 22px;box-shadow:0 1px 2px rgba(39,68,90,.05);}

/* resume / prefill */
.cn-resume,.cn-prefill{margin:16px 0;background:var(--b2);}
.cn-prefill-h{font-weight:700;margin:0 0 6px;}
.cn-prefill-p{font-size:14px;color:var(--muted);margin:2px 0;}
.cn-resume-btns,.cn-prefill-btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;}

/* progress */
.cn-progress{margin:8px 0 20px;}
.cn-progress-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px;}
.cn-progress-label{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);}
.cn-progress-title{font-family:Newsreader,serif;font-size:17px;color:var(--ink);}
.cn-progress-bar{height:6px;background:var(--b1);border-radius:99px;overflow:hidden;}
.cn-progress-fill{display:block;height:100%;background:var(--ink);border-radius:99px;transition:width .25s;}

/* questions */
.cn-q{border:0;margin:0 0 20px;padding:0;}
.cn-q-legend{font-family:Newsreader,serif;font-size:19px;color:var(--ink);margin:0 0 8px;padding:0;display:block;}
.cn-req{color:var(--accent);}
.cn-q-help{font-size:13.5px;color:var(--muted);margin:0 0 12px;}
.cn-opts{display:flex;flex-direction:column;gap:8px;}
.cn-opt{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:10px;padding:11px 14px;cursor:pointer;background:#fff;}
.cn-opt:hover{border-color:var(--importer);}
.cn-opt input{margin-top:3px;}
.cn-opt-text{font-size:15px;}
.cn-q-text input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;font-size:15px;font-family:inherit;}
.cn-q-invalid .cn-opt,.cn-q-invalid input{border-color:var(--gate);}
.cn-error{background:var(--gate-bg);color:var(--gate);border-radius:8px;padding:10px 14px;margin:0 0 14px;font-size:14px;font-weight:600;}
.cn-nav{display:flex;justify-content:space-between;align-items:center;margin-top:24px;gap:12px;}
.cn-loading{padding:40px 0;text-align:center;color:var(--muted);}

/* classification warnings */
.cn-warns{margin:0 0 18px;display:flex;flex-direction:column;gap:12px;}
.cn-warn{border-left:5px solid var(--specialist);background:var(--specialist-bg);}
.cn-warn-pill{font-weight:700;color:var(--specialist);margin:0 0 6px;}

/* results */
.cn-result-head{margin:6px 0 8px;}
.cn-map-h{font-size:27px;margin:2px 0 8px;}
.cn-prod{font-size:15px;color:var(--muted);margin:0 0 4px;}
.cn-pathway{font-size:16px;margin:2px 0;}
.cn-regs{font-size:13.5px;color:var(--muted);margin:2px 0 0;}
.cn-explainer{font-size:13.5px;color:var(--muted);background:var(--b2);border-radius:10px;padding:10px 14px;margin:14px 0;}
.cn-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 8px;}
.cn-count{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px;text-align:center;}
.cn-count-n{display:block;font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;}
.cn-count-l{display:block;font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:2px;}

.cn-section{margin:26px 0 0;}
.cn-h3{font-size:20px;margin:0 0 12px;padding-bottom:6px;border-bottom:1px solid var(--b1);}
.cn-item{border:1px solid var(--line);border-left-width:5px;border-radius:12px;padding:14px 16px;margin:0 0 12px;background:#fff;}
.cn-item-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;}
.cn-item-title{font-weight:700;font-size:15px;flex:1 1 auto;min-width:200px;}
.cn-item-meta{font-size:12px;color:var(--muted);}
.cn-item-desc{font-size:14px;color:var(--muted);margin:8px 0 0;}
.cn-item-action{font-size:14px;margin:8px 0 0;}
.cn-item-sources{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;}
.cn-src-link{font-size:13px;font-weight:600;}
.cn-audit{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;color:#9fb0bd;margin:8px 0 0;}

/* status colors */
.cn-chip{display:inline-flex;align-items:center;font-size:12px;font-weight:700;padding:3px 9px;border-radius:99px;white-space:nowrap;}
.cn-status-gate{border-left-color:var(--gate);} .cn-status-gate .cn-chip{background:var(--gate-bg);color:var(--gate);}
.cn-status-action{border-left-color:var(--action);} .cn-status-action .cn-chip{background:var(--action-bg);color:var(--action);}
.cn-status-research{border-left-color:var(--research);} .cn-status-research .cn-chip{background:var(--research-bg);color:var(--research);}
.cn-status-importer{border-left-color:var(--importer);} .cn-status-importer .cn-chip{background:var(--importer-bg);color:var(--importer);}
.cn-status-specialist{border-left-color:var(--specialist);} .cn-status-specialist .cn-chip{background:var(--specialist-bg);color:var(--specialist);}
.cn-chip{background:var(--info-bg);color:var(--info);}

/* marks */
.cn-mark{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;}
.cn-mark-lbl{font-size:12px;color:var(--muted);font-weight:600;}
.cn-mark-btn{font-size:12px;padding:4px 10px;border-radius:99px;border:1px solid var(--line);background:#fff;cursor:pointer;color:var(--ink);}
.cn-mark-on{background:var(--done-bg);border-color:var(--done);color:var(--done);font-weight:700;}

.cn-label-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}
.cn-label-list li{font-size:14px;}
.cn-evidence{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}
.cn-evidence li{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:8px 12px;}
.cn-ev-name{flex:1 1 auto;font-size:14px;min-width:180px;}

.cn-src-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;}
.cn-src-card{display:flex;flex-direction:column;gap:2px;border:1px solid var(--line);border-radius:12px;padding:12px 14px;text-decoration:none;background:#fff;}
.cn-src-agency{font-weight:700;font-size:13.5px;color:var(--ink);}
.cn-src-page{font-size:13px;color:var(--importer);}
.cn-src-verified{font-size:11px;color:var(--muted);}

.cn-next{list-style:none;padding:0;margin:0;counter-reset:na;display:flex;flex-direction:column;gap:14px;}
.cn-next li{border:1px solid var(--line);border-radius:12px;padding:14px 16px;}
.cn-next-title{font-weight:700;}
.cn-next-why{font-size:13.5px;color:var(--muted);margin:6px 0 0;}
.cn-next-do{font-size:14px;margin:6px 0 0;}

.cn-save-row{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 0;}
.cn-reviewed{font-size:12px;color:var(--muted);margin:18px 0 0;}
.cn-disclaimer{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;margin-top:12px;}
.cn-noscript{background:var(--action-bg);color:var(--action);padding:12px 16px;border-radius:8px;font-size:14px;margin:16px;}

/* responsive */
@media (max-width:680px){
  .cn-counts{grid-template-columns:repeat(2,1fr);}
  .cn-item-title{min-width:0;}
}

/* evidence progress */
.cn-ev-progress{font-size:13px;color:var(--muted);margin:0 0 12px;font-weight:600;}

/* email my map */
.cn-email{margin:14px 0 0;background:var(--b2);}
.cn-email-form{margin-top:10px;}
.cn-email-input{width:100%;max-width:420px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;font-size:15px;font-family:inherit;}
.cn-consent{display:flex;align-items:flex-start;gap:9px;margin:12px 0 0;font-size:13.5px;color:var(--ink);cursor:pointer;}
.cn-consent input{margin-top:3px;}
.cn-email-actions{margin-top:14px;}
.cn-email-msg{margin:12px 0 0;font-size:14px;font-weight:600;}
.cn-email-ok{background:var(--done-bg);color:var(--done);border-radius:8px;padding:10px 14px;}
/* honeypot — visually hidden, off-screen, not focusable in normal flow */
.cn-hp{position:absolute !important;left:-9999px !important;top:auto;width:1px;height:1px;overflow:hidden;opacity:0;}

/* embed lazy-start prompt */
.cn-embed-start{padding:6px 0 4px;}

/* pathway progression (Step-2 embed) */
.cn-pathway-progress{background:var(--b2);border-radius:14px;padding:16px 20px;margin-top:26px;}
.cn-path-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}
.cn-path-step{font-size:15px;color:var(--ink);}
.cn-path-done{font-weight:600;}
.cn-path-mark{color:var(--done);font-weight:700;}
.cn-path-next{color:var(--muted);}
.cn-path-cta{margin:14px 0 0;}
.cn-path-soon{margin:12px 0 0;font-size:13px;color:var(--muted);font-style:italic;}

/* print-only header (hidden on screen) */
.cn-print-head{display:none;}

/* print stylesheet (§43) */
@media print{
  .cn-noprint,.cn-progress,.cn-mark,.cn-save-row,.cn-email-slot,.cn-email,.cn-hp,.cn-resume,.cn-prefill{display:none !important;}
  .lbic-cn{max-width:none;color:#000;}
  .cn-hero{display:none !important;}
  .cn-print-head{display:block !important;border-bottom:2px solid #000;padding-bottom:8px;margin-bottom:16px;}
  .cn-print-head .cn-print-brand{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;}
  .cn-print-head .cn-print-title{display:block;font-size:18px;font-weight:700;margin-top:2px;}
  .cn-print-head .cn-print-meta{display:block;font-size:12px;color:#333;margin-top:2px;}
  .cn-item,.cn-src-card,.cn-next li,.cn-evidence li,.cn-section{break-inside:avoid;}
  .cn-audit{color:#555 !important;}
  a{color:#000;text-decoration:underline;}
}
