/* Local public-template proposal. Tokens and component values from landing. */
#top.pc-template{
  --paper:#f3ede0;--surface:#fffdf7;--surface-soft:#eee5d0;--ink:#1b251f;
  --muted:#46524a;--faint:#5a665d;--line:#1b251f2e;--accent-strong:#946a14;
  --landing-gold:#946a14;--landing-muted:#5a665d;--landing-edge:#946a1457;
  --landing-card:radial-gradient(at 94% 13%,#b2ba7920,transparent 47%),linear-gradient(135deg,#fffdf5,#f1ead8);
  --landing-note:radial-gradient(ellipse at 8% 0,#f7efd9a6,transparent 68%),linear-gradient(135deg,#eee5d0,#e8ddc3 64%,#e1d3b2);
}
html[data-theme="midnight"] #top.pc-template,html[data-theme="tournament"] #top.pc-template,html[data-theme="emerald"] #top.pc-template{
  --paper:#0f1215;--surface:#1c2421;--surface-soft:#141a19;--ink:#f4f0e6;
  --muted:#d3d6cd;--faint:#9aa29b;--line:#f4f0e629;--accent-strong:#e6cd8c;
  --landing-gold:#e6cd8c;--landing-muted:#9aa29b;--landing-edge:#e6cd8c45;
  --landing-card:radial-gradient(at 94% 13%,#b2ba7920,transparent 47%),linear-gradient(135deg,#1c2421,#141a19);
  --landing-note:linear-gradient(145deg,#252d2766,#151b1a66);
}
#top.pc-template .site-header{background:var(--paper);border-color:var(--line);box-shadow:none}
#top.pc-template .nav-shell{width:min(calc(100% - 64px),1280px);min-height:112px;padding:12px 0;justify-content:space-between;gap:32px;flex-wrap:nowrap}
#top.pc-template .brand{margin:0;line-height:0}
#top.pc-template .site-header .brand img{display:block;width:264px;height:auto;aspect-ratio:2161/728;filter:none;background:none;border:0;border-radius:0;box-shadow:none}
#top.pc-template .nav-cta,#top.pc-template .cta-panel .button{
  width:auto;min-width:0;min-height:54px;height:auto;padding:0 25px;gap:16px;
  border:0;border-radius:12px;background:radial-gradient(120% 170% at 16% 0,#ffffff80,transparent 55%),linear-gradient(#f7e3a2,#ebc460 50%,#d8a63a);
  color:#1d1505;font:800 16px/1.2 var(--sans);text-decoration:none;
  box-shadow:inset 0 1px #fff6dbb3,inset 0 -1px #986a204d,0 2px #90702d,0 12px 30px -16px #e8bc5459;
}
#top.pc-template .nav-cta{width:280px;flex:none}
#top.pc-template .nav-cta svg,#top.pc-template .cta-panel .button svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#top.pc-template .nav-cta::after{content:none}
#top.pc-template .nav-cta:hover,#top.pc-template .cta-panel .button:hover{background:radial-gradient(120% 170% at 16% 0,#ffffffa0,transparent 55%),linear-gradient(#f7e3a2,#ebc460 50%,#d8a63a);color:#1d1505;transform:translateY(-2px)}
#top.pc-template .page-hero{background:var(--paper)}
#top.pc-template .eyebrow{color:var(--landing-gold)}
#top.pc-template .eyebrow::before{background:var(--landing-gold)}
#top.pc-template .prose .notice,#top.pc-template .prose .notice.green{background:var(--landing-note);border-color:var(--landing-gold);color:var(--muted)}
#top.pc-template .pc-table-scroll{background:var(--landing-card);border-color:var(--landing-edge);border-radius:18px;box-shadow:inset 0 1px #ffffff05,0 24px 54px -38px #0009}
#top.pc-template .pc-table-scroll table{background:none}
#top.pc-template .pc-table-scroll th{background:color-mix(in srgb,var(--landing-gold) 9%,transparent);color:var(--landing-gold);border-color:var(--line)}
#top.pc-template .pc-table-scroll td{background:transparent;border-color:var(--line);color:var(--muted)}
#top.pc-template .pc-table-scroll td:first-child{color:var(--ink);font-weight:750}
#top.pc-template .toc{padding:22px;border:1px solid var(--landing-edge);border-radius:18px;background:var(--landing-card)}
#top.pc-template .toc a:hover{color:var(--landing-gold)}
#top.pc-template .cta-panel{background:var(--landing-card);border-color:var(--landing-edge);color:var(--ink)}
#top.pc-template .cta-panel p{color:var(--muted)}
#top.pc-template .cta-panel::after{display:none}
#top.pc-template .site-footer{padding:44px 32px 22px;background:var(--paper);border:0}
#top.pc-template .footer-inner{max-width:1216px;margin:auto}
#top.pc-template .footer-top{display:grid;grid-template-columns:1.8fr repeat(3,minmax(0,1fr));gap:44px}
#top.pc-template .footer-brand img{display:block;width:190px;height:auto;max-width:100%;filter:none;background:none;border:0;box-shadow:none}
#top.pc-template .footer-brand p{max-width:none;margin:17px 0 0;color:var(--muted);font:440 17px/1.5 var(--serif)}
#top.pc-template .footer-nav h2{margin:10px 0 16px;color:var(--landing-gold);font:800 10px/1.5 var(--sans);letter-spacing:.09em;text-transform:uppercase}
#top.pc-template .footer-nav a{display:block;width:fit-content;margin-top:10px;color:var(--landing-muted);font:400 11px/1.5 var(--sans);text-decoration:none}
#top.pc-template .footer-nav a:hover{color:var(--ink);text-decoration:underline}
#top.pc-template .socials{display:flex;gap:8px;margin-top:20px}
#top.pc-template .socials a{display:grid;place-items:center;width:33px;height:33px;border:1px solid var(--line);border-radius:9px;color:var(--muted);text-decoration:none}
#top.pc-template .socials svg{width:16px;height:16px}
#top.pc-template .socials a:hover{color:var(--landing-gold);border-color:var(--landing-gold)}
#top.pc-template .footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-direction:row;gap:18px;margin-top:38px;padding:18px 0 0;border-top:1px solid var(--line);color:var(--landing-muted);font:400 9px/1.5 var(--sans)}
#top.pc-template .footer-bottom a{color:inherit;text-decoration:none}
@media(max-width:1150px){#top.pc-template .toc{padding:0}#top.pc-template .toc summary{padding:18px 22px}}
@media(max-width:700px){
  #top.pc-template .nav-shell{width:calc(100% - 40px);min-height:84px;gap:16px;padding:12px 0}
  #top.pc-template .site-header .brand img{width:148px}
  #top.pc-template .nav-cta{width:auto;max-width:none;min-height:48px;padding:0 16px;gap:10px;font-size:13px;white-space:nowrap}
  #top.pc-template .site-footer{padding:36px 20px 24px}
  #top.pc-template .footer-top{grid-template-columns:minmax(0,1fr);gap:28px}
  #top.pc-template .footer-brand{grid-column:auto}
  #top.pc-template .footer-brand p{font-size:16px}
  #top.pc-template .footer-nav{border-top:1px solid var(--line);padding-top:20px}
  #top.pc-template .footer-nav h2{margin:0 0 12px;font-size:13px}
  #top.pc-template .footer-nav a{display:flex;align-items:center;width:100%;min-height:44px;margin:0;padding:8px 0;font-size:15px}
  #top.pc-template .socials a{width:44px;height:44px}
  #top.pc-template .footer-bottom{flex-direction:column;align-items:flex-start;gap:12px;margin-top:29px;font-size:12px}
  #top.pc-template .footer-bottom a{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;font-size:14px}
  #top.pc-template .cta-panel .button{padding:14px 20px;gap:12px;white-space:normal}
}
@media(max-width:360px){
  #top.pc-template .nav-shell{width:calc(100% - 32px);gap:12px}
  #top.pc-template .site-header .brand img{width:128px}
  #top.pc-template .nav-cta{padding:0 12px;gap:8px;font-size:12px}
  #top.pc-template .nav-cta svg{width:16px;height:16px}
}
@media(prefers-reduced-motion:reduce){#top.pc-template .nav-cta:hover,#top.pc-template .cta-panel .button:hover{transform:none}}

/* Catalog and information templates, using the approved landing tokens. */
#top.pc-template :focus-visible{outline:3px solid var(--landing-gold);outline-offset:4px}
#top.pc-template .editorial-cover img{background:var(--surface-soft);border:1px solid var(--landing-edge);border-radius:18px}
#top.pc-template .section-heading h2,#top.pc-template .learning-path h2{font:850 clamp(27px,3vw,38px)/1.2 var(--sans);letter-spacing:-.025em;text-wrap:pretty}
#top.pc-template .section-heading>p:not(.eyebrow){max-width:760px;color:var(--muted)}
#top.pc-template .guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
#top.pc-template .guide-card,#top.pc-template .learning-path li,#top.pc-template .info-principles li{
  background:var(--landing-card);border:1px solid var(--landing-edge);border-radius:18px;box-shadow:inset 0 1px #ffffff05;
}
#top.pc-template .guide-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:30px;overflow:visible}
#top.pc-template .guide-card:hover{border-color:var(--landing-gold);box-shadow:inset 0 1px #ffffff05}
#top.pc-template .guide-number{position:absolute;inset:28px 30px auto auto;color:var(--landing-gold);font:850 13px/1.5 var(--sans)}
#top.pc-template .guide-topic{margin:0 45px 16px 0;color:var(--landing-gold);font:900 11px/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase}
#top.pc-template .guide-card h2,#top.pc-template .guide-card:not(.featured) h2{margin:0;max-width:none;font:850 26px/1.3 var(--sans);letter-spacing:-.02em;text-wrap:pretty}
#top.pc-template .guide-card h2 a{color:var(--ink);text-decoration:none}
#top.pc-template .guide-card h2 a::after{content:none}
#top.pc-template .guide-card h2 a:hover{text-decoration:underline;text-decoration-color:var(--landing-gold);text-underline-offset:5px}
#top.pc-template .guide-card>p:not(.guide-topic){margin:18px 0 0;color:var(--muted);font:450 16px/1.75 var(--sans)}
#top.pc-template .guide-card ul{margin:20px 0 12px;padding-inline-start:20px;color:var(--muted);font:450 14px/1.7 var(--sans)}
#top.pc-template .guide-card li{margin-block:7px}
#top.pc-template .guide-card li::marker{color:var(--landing-gold)}
#top.pc-template .guide-link{display:inline-flex;align-items:center;align-self:flex-start;gap:12px;min-height:44px;margin-top:auto;padding-top:12px;color:var(--landing-gold);font:850 15px/1.4 var(--sans);text-decoration:none}
#top.pc-template .guide-link:hover{color:var(--ink);text-decoration:underline;text-underline-offset:5px}
#top.pc-template .guide-card.featured{grid-column:1/-1;grid-row:auto;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr);column-gap:52px;row-gap:0;padding:36px}
#top.pc-template .guide-card.featured>.guide-topic,#top.pc-template .guide-card.featured>h2,#top.pc-template .guide-card.featured>p:not(.guide-topic),#top.pc-template .guide-card.featured>.guide-link{grid-column:1}
#top.pc-template .guide-card.featured>h2{font-size:32px}
#top.pc-template .guide-card.featured>ul{grid-column:2;grid-row:1/span 4;align-self:center;margin:0;padding:0;list-style:none}
#top.pc-template .guide-card.featured>ul li{padding:16px 0;border-bottom:1px solid var(--line);margin:0;font-size:16px}
#top.pc-template .guide-card.featured>ul li:last-child{border-bottom:0}
#top.pc-template .guide-card.featured>.guide-link{margin-top:14px}
#top.pc-template .section.soft{background:var(--paper);border-block:1px solid var(--line)}
#top.pc-template .learning-path{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
#top.pc-template .learning-path>div{max-width:650px}
#top.pc-template .learning-path ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
#top.pc-template .learning-path li,#top.pc-template .learning-path li:last-child{padding:28px 24px;min-height:0}
#top.pc-template .learning-path li::before{content:none}
#top.pc-template .learning-path strong{color:var(--landing-gold);font:850 19px/1.4 var(--sans)}
#top.pc-template .learning-path span{margin-top:10px;color:var(--muted);font:450 15px/1.65 var(--sans)}
#top.pc-template .info-principles{display:grid;gap:12px;list-style:none;padding:0;margin-block:24px 36px}
#top.pc-template .info-principles li{margin:0;padding:22px 24px;color:var(--muted);font:450 16px/1.8 var(--sans)}
#top.pc-template .info-principles strong{color:var(--ink);font-weight:850}
#top.pc-template.pc-info .content-layout{padding-bottom:72px}
@media(max-width:800px){
  #top.pc-template .guide-grid{grid-template-columns:minmax(0,1fr);gap:18px}
  #top.pc-template .guide-card.featured{grid-column:auto;display:flex;padding:28px;gap:0}
  #top.pc-template .guide-card.featured>h2{font-size:28px}
  #top.pc-template .guide-card.featured>ul{margin:20px 0 12px;align-self:stretch}
  #top.pc-template .guide-card.featured>ul li{padding:12px 0;font-size:14px}
  #top.pc-template .guide-card.featured>.guide-link{margin-top:0}
  #top.pc-template .learning-path ol{grid-template-columns:minmax(0,1fr);gap:14px}
}
@media(max-width:700px){
  #top.pc-template .guide-card,#top.pc-template .guide-card.featured{padding:24px}
  #top.pc-template .guide-number{inset:23px 24px auto auto}
  #top.pc-template .guide-card h2,#top.pc-template .guide-card:not(.featured) h2,#top.pc-template .guide-card.featured>h2{font-size:24px}
  #top.pc-template .guide-card>p:not(.guide-topic){font-size:15px}
  #top.pc-template .info-principles li{padding:20px;font-size:16px}
}
