:root{--ink:#22252c;--muted:#626872;--line:#e9e9eb;--red:#d52f39;--light:#fff8f8;--bg:#f8f8fa;--shadow:0 12px 38px rgba(18,23,34,.045)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.65}
a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #e98080;outline-offset:4px;border-radius:8px}
.shell{width:min(1100px,100% - 32px);margin:0 auto}.masthead{background:#fff;border-bottom:1px solid var(--line)}.topbar{display:flex;align-items:center;gap:14px;padding:16px 0}.mark{width:49px;height:49px;object-fit:contain}.brand-text{display:flex;flex-direction:column;line-height:1.3}.brand-name{font-size:21px;line-height:1.15;font-weight:800;letter-spacing:-.04em}.brand-sub{font-size:11px;color:var(--muted);margin-top:4px}.toplink{margin-left:auto;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:12px;font-weight:700;color:#4d525b;white-space:nowrap}.govnote{font-size:11px;color:#858b95;padding-bottom:12px}
main{padding:27px 0 58px}.hero{border-radius:26px;background:linear-gradient(115deg,#fff,#fff7f7);border:1px solid #f2e4e5;padding:34px 34px 30px;box-shadow:var(--shadow)}.overline{color:#bb333d;font-size:11px;letter-spacing:.17em;font-weight:800;text-transform:uppercase}.hero h1{font-size:clamp(27px,4vw,45px);line-height:1.15;letter-spacing:-.055em;margin:12px 0 13px}.hero p{max-width:690px;color:var(--muted);margin:0;font-size:15px}.facts{display:flex;flex-wrap:wrap;gap:13px;margin-top:23px}.fact{display:flex;gap:7px;align-items:center;font-size:12px;font-weight:800;color:#8b3940;background:#fff;border-radius:999px;border:1px solid #f1dede;padding:8px 13px}
.section-title{margin:36px 0 7px;font-size:23px;letter-spacing:-.04em}.section-sub{margin:0 0 19px;color:var(--muted);font-size:13px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.code-card{display:flex;align-items:flex-start;gap:13px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:var(--shadow);transition:transform .15s,border-color .15s,box-shadow .15s;min-height:126px}.code-card:hover{transform:translateY(-2px);border-color:#e6b9bb;box-shadow:0 14px 32px rgba(20,20,30,.065)}.symbol{width:43px;height:43px;border-radius:14px;background:#f9edf0;color:#b82e39;display:flex;align-items:center;justify-content:center;font-size:20px;flex:none}.code-label{display:block;font-size:17px;line-height:1.3;font-weight:800;letter-spacing:-.03em}.code-sub{display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-top:5px}.arrow{margin-left:auto;color:#bc3b45;font-size:24px;font-weight:300}.special{background:linear-gradient(110deg,#fff,#fff7ee);border-color:#efdfce}.special .symbol{background:#fff0de;color:#995619}
.path{font-size:12px;color:var(--muted);margin:0 0 18px}.path a{color:#a8323b}.path span{margin:0 8px;color:#abb1bc}.panel{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow)}.panel h1{font-size:clamp(26px,4vw,39px);letter-spacing:-.045em;line-height:1.25;margin:0 0 12px}.panel .intro{color:#111827;font-size:17px;line-height:1.7;max-width:760px}.question-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:24px}.question-link{display:flex;gap:10px;align-items:flex-start;padding:18px;border:1px solid var(--line);border-radius:13px;font-size:16px;line-height:1.5;font-weight:700}.question-link:hover{border-color:#e3aaaa;background:#fffafa}.question-link .num{color:#c4434d;font-size:11px;font-variant-numeric:tabular-nums;margin-top:3px;font-weight:800}
.answer-title{font-size:18px;letter-spacing:-.02em;margin:26px 0 7px}.answer-body{color:#111827;font-size:18px;line-height:1.8;max-width:800px}.norms{display:block;background:#faf8f8;border-left:3px solid #c63c45;padding:14px 18px;border-radius:0 11px 11px 0;font-size:16px;line-height:1.65;color:#111827}.route{margin-top:16px;color:#1f2937;font-size:16px;line-height:1.65}.notice{margin-top:24px;padding:16px 18px;border-radius:12px;background:#f8f8f9;color:#374151;font-size:15px;line-height:1.7}.cta{margin:24px 0 0;border-radius:20px;background:linear-gradient(120deg,#aa2934,#d1424c);color:#fff;padding:24px}.cta h2{font-size:20px;line-height:1.35;margin:0 0 5px}.cta p{font-size:13px;opacity:.94;margin:0 0 17px}.cta a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 20px;border-radius:12px;background:#fff;color:#a12d35;font-weight:800;font-size:14px}.cta a:hover{background:#fff5f5}.other{margin-top:20px;display:flex;gap:12px;flex-wrap:wrap}.other a{color:#b43540;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.footer{padding:23px 0 37px;border-top:1px solid var(--line);color:#848995;font-size:11px}.footer a{color:#b23a45}.badger{display:inline-flex;border-radius:999px;background:#fff5e4;color:#876026;padding:5px 10px;font-size:10px;font-weight:700;letter-spacing:.01em;margin-bottom:15px}.storelinks{display:flex;gap:10px;flex-wrap:wrap}.storelinks a{font-size:12px;font-weight:800;color:#a52f39;padding:11px 15px;border:1px solid #edcdce;border-radius:12px;background:#fff}.small-links{margin-top:12px;font-size:12px;color:#666}
@media(max-width:850px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.question-list{grid-template-columns:1fr}}
@media(max-width:570px){.shell{width:calc(100% - 28px)}main{padding-top:16px}.topbar{gap:10px;padding-top:11px;padding-bottom:9px}.mark{width:41px;height:41px}.brand-name{font-size:19px}.brand-sub{font-size:10px}.toplink{font-size:10px;padding:7px 10px}.govnote{padding-bottom:9px}.hero{padding:26px 20px;border-radius:20px}.hero h1{font-size:31px}.hero p{font-size:13px}.facts{gap:7px}.fact{font-size:10px;padding:6px 9px}.cards{grid-template-columns:1fr;gap:9px}.code-card{padding:17px;min-height:92px;border-radius:15px}.symbol{width:38px;height:38px;border-radius:12px}.code-label{font-size:16px}.code-sub{font-size:11px}.section-title{font-size:21px;margin-top:28px}.panel{padding:20px 17px;border-radius:18px}.panel h1{font-size:27px}.answer-body{font-size:19px;line-height:1.75}.question-list{margin-top:18px}.cta{padding:21px}.cta h2{font-size:18px}.footer{padding-top:17px}}

/* PaPi 007 — quiet blue system accents; original brand identity and layout retained. */
:root {
  --ink:#202b3a;
  --muted:#2f3742;
  --line:#d7e3f2;
  --bg:#f7f9fc;
  --blue:#2868c3;
  --blue-dark:#174d98;
  --blue-soft:#f0f6ff;
  --shadow:0 10px 32px rgba(29,65,117,.045);
}
a:focus-visible {outline:3px solid #377ed8;outline-offset:3px}
.masthead {border-bottom-color:#dee8f5}
.toplink {border-color:#cbdcf0;color:#245da5;background:#fff;transition:border-color .16s,background .16s,color .16s}
.toplink:hover {border-color:#6e9dd5;background:var(--blue-soft);color:#154985}
.govnote {color:#3a4350}
.hero {
  background:linear-gradient(110deg,#fff 10%,#f3f8ff 100%);
  border:1px solid #cfdff1;
  box-shadow:0 16px 40px rgba(35,83,145,.05);
}
/* Keep the editorial red signature as a small PaPi brand accent. */
.overline {color:#b92f3a}
.fact {color:#2d5d98;background:#fff;border:1px solid #cbdff4}
.code-card {
  border:1px solid #d1e0f0;
  box-shadow:0 5px 17px rgba(28,65,111,.038);
  transition:transform .18s,border-color .18s,box-shadow .18s,background-color .18s;
}
.code-card:hover,.code-card:focus-visible {
  border-color:#5a91d8;
  background:#fbfdff;
  box-shadow:0 13px 30px rgba(33,92,163,.12);
}
.symbol {background:#eef5ff;color:#24599c}
.arrow {color:#3675c8;font-weight:500;transition:transform .18s}
.code-card:hover .arrow {transform:translateX(3px)}
/* Customs retains a subtle warm identity within the common blue-border system. */
.special {background:linear-gradient(115deg,#fff,#fffaf3);border-color:#e5d5bf}
.special .symbol {background:#fff0dd;color:#926029}
.special:hover {border-color:#7b9fc9;background:#fffdf8}
.path a,.other a,.footer a {color:#215fae}
.path a:hover,.other a:hover,.footer a:hover {color:#174681}
.panel {border:1px solid #d5e2f2;box-shadow:0 8px 28px rgba(25,61,107,.045)}
.question-link {
  background:#fff;
  border:1px solid #cddded;
  transition:border-color .16s,background-color .16s,box-shadow .16s,transform .16s;
}
.question-link:hover,.question-link:focus-visible {
  border-color:#5289d1;
  background:#f3f8ff;
  box-shadow:0 4px 13px rgba(32,87,156,.085);
}
/* Question numbers stay red as a tiny brand accent, not the dominant UI color. */
.question-link .num {color:#bc3945}
.norms {background:#f2f7ff;border-left:4px solid #3478cc;color:#34475e}
.notice {background:#f7f9fc;color:#657286;border:1px solid #e2eaf4}
.cta {
  background:linear-gradient(118deg,#174c98 0%,#2869c3 100%);
  border:1px solid #1d59ac;
  box-shadow:0 9px 26px rgba(30,88,167,.14);
}
.cta a {color:#184f9c;background:#fff;transition:background-color .16s,transform .16s}
.cta a:hover {background:#edf5ff;transform:translateY(-1px)}
.storelinks a {color:#205da8;border:1px solid #bcd4f1;background:#fff;transition:border-color .16s,background-color .16s,box-shadow .16s}
.storelinks a:hover {border-color:#508bd3;background:#f0f6ff;box-shadow:0 4px 14px rgba(40,104,195,.085)}
.small-links a {color:#205da8}
@media(prefers-reduced-motion:reduce) {
  html{scroll-behavior:auto}
  .code-card,.question-link,.arrow,.cta a,.storelinks a,.toplink {transition:none!important}
  .code-card:hover,.cta a:hover {transform:none!important}
}

/* PaPi 010 — reading-first typography */
.section-sub{color:#111827;font-size:16px;line-height:1.65}
.code-sub{color:#1f2937}
@media(max-width:570px){
  .panel .intro{font-size:18px;line-height:1.7}
  .question-link{font-size:18px;line-height:1.45}
  .norms{font-size:17px;line-height:1.6}
  .route{font-size:17px;line-height:1.65}
  .notice{font-size:16px;line-height:1.65}
  .section-sub{font-size:17px;line-height:1.6}
  .code-sub{font-size:15px;line-height:1.45}
}
.popular-sections{margin:22px 0 30px}
.popular-sections h2{font-size:19px;margin:0 0 12px}
.popular-links{display:flex;flex-wrap:wrap;gap:9px}
.popular-links a{display:inline-flex;align-items:center;min-height:40px;padding:9px 13px;border:1px solid #c9dbef;border-radius:999px;background:#fff;color:#245da5;font-weight:700;font-size:14px}
.popular-links a:hover{border-color:#5f94d6;background:#f4f8fe}
@media(max-width:570px){
  .popular-sections h2{font-size:21px}
  .popular-links a{font-size:15px;min-height:42px}
}



/* PaPi 014 — TOP-50 current questions */
.questions-entry{display:inline-flex;align-items:center;justify-content:center;margin-top:18px;padding:10px 16px;border:1px solid #9fc2eb;border-radius:999px;background:#fff;color:#205da8;font-size:13px;font-weight:800;box-shadow:0 4px 14px rgba(40,104,195,.06)}
.questions-entry:hover,.questions-entry:focus-visible{background:#f0f6ff;border-color:#508bd3}
.top50-list{list-style:none;margin:20px 0 0;padding:0;border-top:1px solid #d9e5f2}
.top50-list li{margin:0;border-bottom:1px solid #d9e5f2}
.top50-list a{display:grid;grid-template-columns:44px 1fr;gap:10px;padding:15px 4px;text-decoration:none;align-items:start}
.top50-list a:hover,.top50-list a:focus-visible{background:#f5f9ff}
.top50-list .qnum{color:#2769bb;font-weight:800;font-variant-numeric:tabular-nums}
.top50-list .qtext{font-size:17px;line-height:1.5;font-weight:700;color:#1f2b3b}
.top50-panel{position:relative;padding-right:154px}
.answer-brand{position:absolute;right:26px;top:25px;display:flex;flex-direction:column;align-items:center;gap:10px;z-index:1}
.answer-brand .papi-mini{display:block;width:82px;height:82px;object-fit:contain}
.rustore-mini{width:44px;height:44px;border-radius:12px;position:relative;display:block;background:#087aff;overflow:hidden;box-shadow:0 3px 12px rgba(8,122,255,.16)}
.rustore-mini i{position:absolute;background:#fff;border-radius:4px;width:9px;height:24px;top:10px;transform:skewY(-12deg)}
.rustore-mini i:nth-child(1){left:9px}.rustore-mini i:nth-child(2){left:17px;top:8px;height:27px}.rustore-mini i:nth-child(3){left:25px;top:12px;height:21px}
.full-answer{font-size:18px;line-height:1.72;color:#1f2937}
.full-answer p{margin:0 0 16px}
.full-answer h2{font-size:21px;line-height:1.3;margin:30px 0 12px;color:#1f2b3b;letter-spacing:-.02em}
.full-answer ul,.full-answer ol{margin:0 0 18px;padding-left:28px}
.full-answer li{margin:6px 0}
.top50-meta{font-size:12px;color:#6c7888;margin-top:6px}
.top50-nav{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:18px;font-size:13px;font-weight:800;color:#205da8}
@media(max-width:570px){
  .questions-entry{display:flex;width:100%;margin-top:16px}
  .top50-list a{grid-template-columns:37px 1fr;padding:14px 2px}
  .top50-list .qtext{font-size:16px}
  .top50-panel{padding-right:17px}
  .answer-brand{position:static;flex-direction:row;justify-content:flex-end;margin:-2px 0 12px}
  .answer-brand .papi-mini{width:58px;height:58px}
  .rustore-mini{width:39px;height:39px;border-radius:10px}
  .rustore-mini i{transform:scale(.88) skewY(-12deg);transform-origin:center}
  .full-answer{font-size:17px;line-height:1.7}
}
