@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:500;font-display:swap;src:url(/static/fonts/chakra-petch-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:600;font-display:swap;src:url(/static/fonts/chakra-petch-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:700;font-display:swap;src:url(/static/fonts/chakra-petch-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/static/fonts/ibm-plex-mono-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/static/fonts/ibm-plex-mono-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url(/static/fonts/ibm-plex-mono-latin-600-normal.woff2) format('woff2')}

:root{--ox:#120706;--o9:#0B0403;--o8:#1A0C09;--o7:#24120E;--rule:#3A221B;--edge:#7A5F52;--mars:#FF5B2E;--mars2:#FF7A54;--ph:#39E6D0;--cream:#F5E6DA;--tan:#BFA393}
body{margin:0;background:#120706}
button{font:inherit;color:inherit;background:none;border:0;padding:0;margin:0;cursor:pointer;text-align:inherit}
button:disabled{cursor:default}
a{color:inherit;text-decoration:none}
ul,ol,dl,dd,h1,h2,h3,h4,p,fieldset,figure{margin:0;padding:0}
ul,ol{list-style:none}
fieldset{border:0;min-width:0}
:focus-visible{outline:2px solid #39E6D0;outline-offset:2px}
body.tp-root{margin:0;background:var(--ox);color:var(--cream);font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
html{scroll-padding-top:72px}
.tp-skip{position:absolute;left:12px;top:0;z-index:70;transform:translateY(-200%);padding:12px 16px;background:var(--ph);color:#06110F;font-weight:600;font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.tp-skip:focus{transform:none;top:8px}
.tp-d{font-family:'Chakra Petch',system-ui,sans-serif}
.tp-wrap{max-width:1280px;margin:0 auto;padding-left:32px;padding-right:32px;box-sizing:border-box}
.tp-sec{scroll-margin-top:0;border-bottom:1px solid var(--rule)}
.tp-pad{padding-top:80px;padding-bottom:80px}
.tp-ph{color:var(--ph)}.tp-tan{color:var(--tan)}.tp-mars{color:var(--mars)}.tp-cream{color:var(--cream)}
.tp-lab{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--tan)}
.tp-seclab{font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--ph)}
.tp-h2{font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:36px;line-height:1.1;color:var(--cream)}
.tp-split{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 32px;margin-top:12px}
.tp-split.tp-stack{flex-direction:column;align-items:flex-start;gap:12px}
.tp-split>p{max-width:540px;color:var(--tan)}
.tp-frame{position:relative;--c:var(--ph)}
.tp-frame-mars{--c:var(--mars)}
.tp-frame::before{content:"";position:absolute;inset:-1px;pointer-events:none;z-index:3;background:linear-gradient(var(--c),var(--c)) left top/12px 2px no-repeat,linear-gradient(var(--c),var(--c)) left top/2px 12px no-repeat,linear-gradient(var(--c),var(--c)) right top/12px 2px no-repeat,linear-gradient(var(--c),var(--c)) right top/2px 12px no-repeat,linear-gradient(var(--c),var(--c)) left bottom/12px 2px no-repeat,linear-gradient(var(--c),var(--c)) left bottom/2px 12px no-repeat,linear-gradient(var(--c),var(--c)) right bottom/12px 2px no-repeat,linear-gradient(var(--c),var(--c)) right bottom/2px 12px no-repeat}
.tp-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 24px;font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:14px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;box-sizing:border-box}
.tp-btn-mars{background:var(--mars);color:var(--ox)}.tp-btn-mars:hover{background:var(--mars2)}
.tp-btn-ph{border:1px solid var(--ph);color:var(--ph)}.tp-btn-ph:hover{background:rgba(57,230,208,.1)}
.tp-btn-wide{width:100%}
.tp-btn[disabled]{border-color:var(--rule);color:rgba(191,163,147,.55)}
.tp-scan{filter:url(#tp-green)}
/* header */
.tp-head{position:sticky;top:0;z-index:40;background:rgba(18,7,6,.97);border-bottom:1px solid var(--rule)}
.tp-head-in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:64px}
.tp-brand{display:flex;align-items:center;gap:12px;min-height:44px}
.tp-brand b{font-family:'Chakra Petch',system-ui,sans-serif;font-weight:700;font-size:18px;letter-spacing:.08em;white-space:nowrap}
.tp-nav{display:flex}
.tp-nav a{position:relative;display:flex;align-items:center;gap:8px;min-height:64px;padding:0 12px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--tan)}
.tp-nav a:hover{color:var(--cream)}
.tp-nav a.on{color:var(--cream)}
.tp-nav a.on::after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;background:var(--ph)}.tp-nav i{font-style:normal;color:var(--ph)}
.tp-menu{display:none;width:44px;height:44px;border:1px solid var(--edge);align-items:center;justify-content:center}
.tp-mnav{border-top:1px solid var(--rule);background:var(--ox)}
.tp-mnav a{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 14px;margin:0 -14px;border-bottom:1px solid var(--rule);font-size:14px;letter-spacing:.16em;text-transform:uppercase}
.tp-mnav a{position:relative}
.tp-mnav a.on{color:var(--cream);background:var(--o7);box-shadow:inset 0 0 0 1px var(--ph)}
.tp-mnav a.on::before{content:"";position:absolute;top:0;bottom:0;left:0;width:3px;background:var(--ph)}
.tp-mnav a:last-child{border-bottom:0}.tp-mnav i{font-style:normal;color:var(--ph)}
/* hero */
.tp-hero{position:relative;isolation:isolate;background-color:#721013;background-image:linear-gradient(rgba(18,7,6,.2),rgba(18,7,6,.2)),url(/static/img/mars-hero.webp);background-size:100% 100%,cover;background-position:0 0,center 22%;background-repeat:no-repeat;border-bottom:1px solid var(--rule)}
.tp-hero-grid{position:absolute;inset:0;z-index:0;opacity:.4;pointer-events:none;background-image:linear-gradient(rgba(57,230,208,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(57,230,208,.09) 1px,transparent 1px);background-size:56px 56px}
.tp-hero-in{position:relative;z-index:1;padding-top:64px;padding-bottom:48px;min-height:clamp(440px,47vw,680px)}
.tp-hero-panel{max-width:540px;background:rgba(18,7,6,.85);border:1px solid var(--rule);padding:32px;box-sizing:border-box}
.tp-hero h1{margin-top:20px;font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:clamp(34px,3.6vw,50px);line-height:1.04;letter-spacing:-.01em;color:var(--cream)}
.tp-hero p.tp-sum{margin-top:16px;font-size:15px;line-height:1.6;color:var(--tan)}
.tp-kick{display:flex;flex-wrap:wrap;align-items:center;gap:6px 20px;font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
.tp-live{display:inline-flex;align-items:center;gap:8px;color:var(--cream)}
.tp-dot{width:8px;height:8px;border-radius:50%;background:var(--mars);display:inline-block;animation:tp-blink 1.6s steps(1) infinite}
@keyframes tp-blink{0%,62%{opacity:1}63%,100%{opacity:.25}}
/* deck + stats */
.tp-deck{padding-top:32px;padding-bottom:40px}
.tp-deck-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.tp-btns{display:flex;flex-wrap:wrap;gap:12px}
.tp-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:32px}
.tp-stat{background:var(--o8);padding:24px;display:flex;flex-direction:column;min-width:0}
.tp-stat-big{grid-column:span 3}
.tp-stat-sm{grid-column:span 1}
.tp-stat dt{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tan)}
.tp-stat .v{margin-top:8px;font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:36px;line-height:1;color:var(--cream)}
.tp-stat .s{margin-top:auto;padding-top:12px;font-size:12px;line-height:1.5;color:var(--tan)}
.tp-statlink{display:inline-block;padding:5px 0;margin:-5px 0;color:var(--tan);text-decoration:underline;text-underline-offset:3px}.tp-statlink:hover{color:var(--cream)}
.tp-stat-big{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"t b" "n n" "c c";align-items:center;column-gap:8px}
.tp-stat-big dt{grid-area:t}.tp-stat-big .tp-badgewrap{grid-area:b}.tp-stat-big .tp-bignum{grid-area:n}.tp-stat-big .tp-cmp{grid-area:c}
.tp-badge{background:var(--mars);color:var(--ox);padding:4px 8px;font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.tp-bignum{margin-top:8px;font-family:'Chakra Petch',system-ui,sans-serif;font-weight:700;font-size:88px;line-height:1;color:var(--mars)}
.tp-cmp{margin-top:20px;display:flex;flex-direction:column;gap:8px}
.tp-cmp-row{display:grid;grid-template-columns:112px 1fr 36px;align-items:center;gap:12px}
.tp-cmp-row span.l{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tan)}
.tp-cmp-row span.n{text-align:right;font-size:12px;color:var(--cream)}
.tp-segs{display:flex;gap:3px}
.tp-segs i{flex:1;height:12px;background:var(--rule)}
.tp-segs.m i.on{background:var(--mars)}.tp-segs.t i.on{background:var(--tan)}
/* archive */
.tp-filters{margin-top:40px;display:flex;flex-direction:column;gap:24px}
.tp-toprow{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}
.tp-sort{display:flex;border:1px solid var(--edge);overflow-x:auto;max-width:100%}
.tp-sort button{flex:1 1 auto;min-height:48px;padding:0 16px;border-right:1px solid var(--edge);font-size:12px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:var(--tan);text-align:center}
.tp-sort button:last-child{border-right:0}.tp-sort button:hover{color:var(--cream)}
.tp-sort button.on{background:var(--cream);color:var(--ox)}
.tp-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.tp-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1px solid var(--edge);font-size:12px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;color:var(--tan)}
.tp-chip:hover{border-color:var(--tan);color:var(--cream)}
.tp-chip.on{border-color:var(--ph);background:rgba(57,230,208,.1);color:var(--ph)}
.tp-yearrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:16px;border-bottom:1px solid var(--rule)}
.tp-chip.yr{border-color:var(--mars);background:rgba(255,91,46,.1);color:var(--mars)}
.tp-more{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.tp-more-grid{margin-top:16px;display:grid;grid-template-columns:2fr 1fr;gap:24px}
.tp-count{margin-top:32px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--rule);padding-bottom:8px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--tan)}
.tp-count b{color:var(--cream);font-weight:500}
.tp-link{min-height:44px;color:var(--ph);text-transform:uppercase;letter-spacing:.18em;font-size:12px}
.tp-link:hover{text-decoration:underline;text-underline-offset:4px}
.tp-grid{margin-top:24px;display:grid;grid-template-columns:7fr 5fr;gap:32px;align-items:start}
.tp-list{display:flex;flex-direction:column;gap:12px}
.tp-pager{margin-top:32px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--rule);padding-top:20px}
.tp-pager-info{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--tan)}
.tp-pager-ctl{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.tp-pg{min-width:44px;min-height:44px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--edge);background:transparent;color:var(--tan);font:inherit;font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;box-sizing:border-box}
.tp-pg:hover:not(:disabled){border-color:var(--tan);color:var(--cream)}
.tp-pg.on{border-color:var(--ph);background:rgba(57,230,208,.1);color:var(--ph)}
.tp-pg:disabled{opacity:.4;cursor:default}
.tp-pg.gap{border-color:transparent;min-width:20px;padding:0}
.tp-card{position:relative;display:grid;grid-template-columns:112px 1fr;gap:16px;border:1px solid var(--edge);background:var(--o8);padding:16px;transition:border-color .15s}
.tp-card:hover{border-color:var(--tan)}
.tp-card.on{border-color:var(--ph);background:var(--o7)}
.tp-card.on::before{content:"";position:absolute;top:0;bottom:0;left:0;width:3px;background:var(--ph)}
.tp-thumb{aspect-ratio:1/1;background-color:#fff;background-repeat:no-repeat;border:1px solid var(--rule);overflow:hidden}
.tp-thumb.none{background:var(--ox);display:flex;align-items:center;justify-content:center;text-align:center;font-size:12px;letter-spacing:.1em;color:var(--tan);padding:6px;box-sizing:border-box;border-style:dashed}
.tp-card-info{display:flex;flex-direction:column;min-width:0}
.tp-card-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--tan)}
.tp-card-top span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tp-card h3{margin-top:4px;font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:20px;line-height:1.3;color:var(--cream)}
.tp-card-btn{display:block;width:100%;padding:11px 0;margin:-11px 0;text-align:left}
@supports selector(:has(a)){.tp-card-btn:focus-visible{outline:none}.tp-card:has(.tp-card-btn:focus-visible){outline:2px solid #39E6D0;outline-offset:2px}}
.tp-card-btn::after{content:"";position:absolute;inset:0}
.tp-card-link::after{content:"";position:absolute;inset:0}
.tp-tagrow{margin-top:8px}
.tp-tag{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border:1px solid;padding:4px 8px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.tp-tag.crit{border-color:var(--mars);background:var(--mars);color:var(--ox)}
.tp-tag.high{border-color:var(--mars);color:var(--mars)}
.tp-tag.elev{border-color:rgba(191,163,147,.6);color:var(--cream)}
.tp-dl3{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border-top:1px solid var(--rule);padding-top:12px}
.tp-dl3 dt{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--tan)}
.tp-dl3 dd{font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:16px;color:var(--cream);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tp-dl3 dd.r{color:var(--ph)}
.tp-aside{position:sticky;top:80px;max-height:calc(100vh - 96px);overflow-y:auto}
.tp-empty{border:1px dashed rgba(191,163,147,.4);padding:32px}
.tp-empty .h{font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:20px}
.tp-empty p{margin-top:8px;max-width:440px;font-size:14px;color:var(--tan)}
/* dossier */
.tp-doss{border:1px solid var(--rule);background:var(--o8)}
.tp-doss-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--rule);padding:12px 20px;font-size:12px;letter-spacing:.18em;text-transform:uppercase}
.tp-doss-head span:last-child{color:var(--tan);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tp-doss-img{position:relative;aspect-ratio:16/10;overflow:hidden;background:#000;border-bottom:1px solid var(--rule)}
.tp-doss-img.orig{background:#fff}
.tp-doss-img img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}
.tp-viewbar{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--rule);padding:8px 20px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--tan)}
.tp-viewbar span{margin-right:auto}
.tp-seg{min-height:44px;padding:0 16px;border:1px solid var(--edge);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tan)}
.tp-seg.on{border-color:var(--ph);background:rgba(57,230,208,.1);color:var(--ph)}
.tp-doss-body{padding:24px}
.tp-doss-title{margin-top:8px;font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:24px;line-height:1.2;color:var(--cream)}
.tp-p{margin-top:16px;font-size:15px;line-height:1.6;color:var(--cream)}
.tp-read{margin-top:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--rule);background:var(--rule)}
.tp-read div{background:var(--o8);padding:12px;min-width:0}
.tp-read dt{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--tan)}
.tp-read dd{margin-top:4px;font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:18px;color:var(--cream);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tp-read dd.a{color:var(--mars)}
.tp-blk{margin-top:24px}
.tp-blk h4,.tp-blk h2{font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ph)}
.tp-blk p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--cream)}
.tp-file{margin-top:12px;border-top:1px solid var(--rule)}
.tp-file div{display:grid;grid-template-columns:96px 1fr;gap:12px;border-bottom:1px solid var(--rule);padding:8px 0;font-size:13px}
.tp-file dt{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--tan);padding-top:2px}
.tp-steps{margin-top:12px;display:flex;flex-direction:column;gap:12px}
.tp-steps li{display:grid;grid-template-columns:28px 1fr;gap:12px;font-size:14px;line-height:1.6}
.tp-steps b{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--rule);font-size:12px;font-weight:400;color:var(--ph)}
.tp-steps span{padding-top:2px}
.tp-doss-body .tp-btn{margin-top:24px}
.tp-note{margin-top:12px;text-align:center;font-size:12px;color:var(--tan)}
.tp-x{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--edge);color:var(--cream)}
/* timeline */
.tp-tl{margin-top:40px;display:grid;grid-template-columns:9fr 3fr;gap:24px}
.tp-tl-panel{display:flex;flex-direction:column;border:1px solid var(--rule);background:var(--o8);padding:24px}
.tp-tl-year{margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.tp-tl-year p{font-family:'Chakra Petch',system-ui,sans-serif;font-weight:700;font-size:60px;line-height:1;color:var(--ph)}
.tp-step{display:flex;gap:4px}
.tp-step button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--edge);color:var(--cream);text-align:center}
.tp-step button:disabled{color:rgba(191,163,147,.4)}
.tp-tl-dl{margin-top:20px;display:grid;grid-template-columns:1fr;gap:1px;border:1px solid var(--rule);background:var(--rule)}
.tp-tl-dl div{background:var(--o8);padding:12px}
.tp-tl-dl dt{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--tan)}
.tp-tl-dl dd{font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:24px;color:var(--cream)}
.tp-tl-dl dd small{font-family:'IBM Plex Mono',ui-monospace,monospace;font-weight:400;font-size:14px;color:var(--tan)}
@media (max-width:1023px){.tp-tl-dl dd small{display:block;font-size:12px}}
.tp-tl-panel .tp-btn{margin-top:auto}
.tp-tl-panel .tp-btn.first{margin-top:20px}
.tp-tl-chart{border:1px solid var(--rule);background:var(--o9);padding:24px}
.tp-chart-wrap{position:relative;margin-top:24px;padding-top:36px}
.tp-chart{position:relative;height:288px;touch-action:pan-y;user-select:none}
.tp-old{position:absolute;left:0;right:0;border-top:1px dashed rgba(255,91,46,.7);pointer-events:none}
.tp-old span{position:absolute;left:0;top:-22px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--mars);background:var(--o9);padding-right:6px}
.tp-bars{display:flex;align-items:flex-end;gap:2px;height:100%}
.tp-yr{position:relative;flex:1 1 0;min-width:0;height:100%;display:flex;align-items:flex-end;cursor:pointer}
.tp-bar{display:block;width:100%;background:rgba(191,163,147,.35)}
.tp-yr:hover .tp-bar{background:rgba(191,163,147,.7)}
.tp-bar.cur{background:var(--mars)}
.tp-yr:hover .tp-bar.cur{background:var(--mars2)}
.tp-bar.sel,.tp-yr:hover .tp-bar.sel{background:var(--ph)}
.tp-tip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);display:none;padding:7px 10px;background:var(--ph);color:#06110F;font-size:12px;font-weight:600;letter-spacing:.12em;white-space:nowrap;pointer-events:none;z-index:4}
.tp-tip.l{left:0;transform:none}.tp-tip.r{left:auto;right:0;transform:none}
.tp-yr:hover .tp-tip,.tp-chart:focus-visible .tp-yr.sel .tp-tip{display:block}
.tp-chart:focus-visible{outline:2px solid var(--ph);outline-offset:8px}
.tp-ticks{display:flex;gap:2px;margin-top:8px;border-top:1px solid var(--rule);padding-top:8px}
.tp-ticks span{position:relative;flex:1 1 0;min-width:0;height:14px}
.tp-ticks em{position:absolute;left:0;font-style:normal;font-size:12px;color:var(--tan);white-space:nowrap}
.tp-ticks em.e{left:auto;right:0;color:var(--mars)}
.tp-guide{display:none;position:absolute;top:0;bottom:-18px;width:0;border-left:2px solid var(--ph);pointer-events:none}
.tp-grip{display:none;position:absolute;bottom:-30px;width:34px;height:34px;margin-left:-17px;border-radius:50%;background:var(--ph);color:#06110F;align-items:center;justify-content:center;font-size:13px;font-weight:600;pointer-events:none;box-shadow:0 0 0 6px rgba(57,230,208,.18)}
.tp-note2{margin-top:24px;font-size:12px;line-height:1.6;color:var(--tan)}
/* game */
.tp-gm{background:var(--o9)}
.tp-tz{margin-top:12px;display:grid;grid-template-columns:7fr 5fr;gap:32px;align-items:center}
.tp-tz p{margin-top:12px;max-width:540px;color:var(--tan)}
.tp-tz-card{display:block}
.tp-tz-media{min-width:0}
.tp-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:80;max-width:calc(100% - 32px);box-sizing:border-box;background:var(--o8);border:1px solid var(--ph);color:var(--cream);padding:12px 16px;font-size:13px;letter-spacing:.04em;text-align:center}
.tp-gm-grid{margin-top:40px;display:grid;grid-template-columns:7fr 5fr;gap:24px}
.tp-gm-view{border:1px solid var(--rule);background:#000}
.tp-gm-stage{position:relative;aspect-ratio:4/3;overflow:hidden;background:#000}
.tp-gm-stage img,.tp-gm-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.tp-gm-stage video{object-fit:contain}
.tp-cross{position:absolute;inset:0;pointer-events:none}
.tp-cross i{position:absolute;background:rgba(57,230,208,.25)}
.tp-cross i.v{left:50%;top:24px;bottom:24px;width:1px}
.tp-cross i.h{top:50%;left:24px;right:24px;height:1px}
.tp-cross i.b{left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;background:none;border:1px solid rgba(57,230,208,.5)}
.tp-gm-tags{position:absolute;left:0;right:0;top:0;display:flex;justify-content:space-between;padding:16px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ph);pointer-events:none}
.tp-gm-panel{display:flex;flex-direction:column;border:1px solid var(--rule);background:var(--o8);padding:24px}
.tp-integ{display:flex;align-items:baseline;justify-content:space-between}
.tp-integ b{font-family:'Chakra Petch',system-ui,sans-serif;font-weight:700;font-size:30px;color:var(--cream)}
.tp-meter{margin-top:12px;display:flex;gap:4px}
.tp-meter i{flex:1;height:10px;background:var(--rule)}
.tp-meter i.ok{background:var(--ph)}.tp-meter i.no{background:var(--mars)}
.tp-q{margin-top:32px;display:flex;flex-direction:column;flex:1}
.tp-gname{margin-top:6px;color:#BFA393;font-size:15px;line-height:1.35}
.tp-q h3,.tp-q h2{margin-top:8px;font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:24px;line-height:1.2}
.tp-opts{margin-top:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tp-opt{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:52px;padding:0 16px;border:1px solid var(--edge);font-size:14px;letter-spacing:.08em;text-transform:uppercase;text-align:left;color:var(--cream)}
.tp-opt:hover{border-color:var(--tan)}
.tp-opt.ans{border-color:var(--ph);background:rgba(57,230,208,.1);color:var(--ph)}
.tp-opt.bad{border-color:var(--mars);background:rgba(255,91,46,.1);color:var(--mars)}
.tp-opt.dim{color:var(--tan);border-color:var(--rule)}
.tp-opt small{font-size:12px;letter-spacing:.12em}
.tp-reveal{margin-top:20px;border-left:2px solid var(--mars);padding-left:16px}
.tp-reveal.ok{border-color:var(--ph)}
.tp-reveal .t{font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:18px;color:var(--mars)}
.tp-reveal.ok .t{color:var(--ph)}
.tp-reveal p{margin-top:4px;font-size:14px;line-height:1.6;color:var(--cream)}
.tp-reveal p.f{color:var(--tan)}
.tp-q .tp-btn{margin-top:auto}
.tp-q .push{padding-top:24px;margin-top:auto}
.tp-done-title{margin-top:8px;font-family:'Chakra Petch',system-ui,sans-serif;font-weight:700;font-size:36px;line-height:1.1}
.tp-btnrow{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px}
.tp-btnrow .tp-btn{flex:1 1 180px}
.tp-share-note{margin-top:12px;min-height:22px;font-size:13px;color:var(--ph)}
/* footer */
.tp-foot{background:var(--o9)}
.tp-foot-in{display:grid;grid-template-columns:6fr 4fr;gap:32px;padding-top:48px;padding-bottom:48px}
.tp-foot p{margin-top:16px;max-width:460px;font-size:14px;line-height:1.6;color:var(--tan)}
.tp-foot a.l{display:flex;align-items:center;gap:8px;min-height:44px;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.tp-foot a.l:hover{color:var(--ph)}
@media (max-width:1023px){
.tp-wrap{padding-left:24px;padding-right:24px}
.tp-nav{display:none}.tp-menu{display:flex}
.tp-pad{padding-top:64px;padding-bottom:64px}
.tp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.tp-stat-big{grid-column:span 2}.tp-stat-wide{grid-column:span 2}
.tp-grid{grid-template-columns:1fr}
.tp-tl{grid-template-columns:minmax(0,1fr)}
.tp-tl-dl{grid-template-columns:repeat(3,minmax(0,1fr))}
.tp-tl-panel .tp-btn{margin-top:20px}
.tp-guide{display:block}.tp-grip{display:flex}.tp-chart-wrap{margin-bottom:28px}
.tp-gm-grid{grid-template-columns:1fr}
.tp-tz{grid-template-columns:1fr;gap:24px}
.tp-hero{background-size:100% 100%,100% auto;background-position:0 0,center bottom}
.tp-hero-in{min-height:0;padding-top:32px;padding-bottom:calc(63vw + 24px)}
.tp-hero-panel{max-width:none}
.tp-foot-in{grid-template-columns:1fr}
.tp-more-grid{grid-template-columns:1fr}
}
@media (max-width:639px){
.tp-wrap{padding-left:16px;padding-right:16px}
.tp-brand b{font-size:15px}
.tp-h2{font-size:30px}
.tp-hero-panel{padding:20px}
.tp-bignum{font-size:72px}
.tp-cmp-row{grid-template-columns:84px 1fr 32px}
.tp-card{grid-template-columns:72px 1fr;padding:12px;gap:12px}
.tp-card h3{font-size:18px}
.tp-btn{width:100%}
.tp-btns{width:100%}
.tp-opts{grid-template-columns:1fr}
.tp-tl-chart{padding:16px}
.tp-chart{height:240px}
.tp-doss-body{padding:20px}
.tp-doss-head{padding:12px 16px}
.tp-viewbar{padding:8px 16px}
.tp-read{grid-template-columns:repeat(2,minmax(0,1fr))}
.tp-stat .v{font-size:30px}
.tp-stat{padding:16px}
.tp-stat dt{letter-spacing:.12em}
.tp-tl-year p{font-size:52px}
.tp-sort{display:grid;grid-template-columns:1fr 1fr;overflow:visible;width:100%}
.tp-sort button{padding:0 12px;border-bottom:1px solid var(--edge)}
.tp-sort button:nth-child(2n){border-right:0}
.tp-sort button:nth-child(n+3){border-bottom:0}
.tp-dl3{grid-template-columns:minmax(0,.8fr) minmax(0,.8fr) minmax(0,1.3fr);gap:8px}
.tp-dl3 dd{font-size:15px}
.tp-segs{gap:2px}
}
@media (prefers-reduced-motion: reduce){.tp-dot{animation:none}}
.tp-hide{position:absolute;width:0;height:0}
.tp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---- real-site additions ---- */
[hidden]{display:none!important}
.tp-foot-brand{display:flex;align-items:center;gap:12px}
.tp-foot-brand .tp-d{font-weight:700;font-size:16px;letter-spacing:.08em}
.tp-foot-src{margin-top:12px}
.tp-h2-tl{font-size:clamp(30px,4vw,48px);max-width:640px}
.tp-h2-tz{font-size:clamp(30px,4vw,40px)}
.tp-tz .tp-h2-tz{margin-top:12px}
.tp-btns-tz{margin-top:20px}
.tp-note-tl{margin-top:36px}
.tp-h3{font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:24px;line-height:1.2;color:var(--cream);margin-top:40px}
.tp-thumb{display:block}
.tp-thumb-in{width:100%;height:100%;background:#fff}
.tp-thumb-in img{display:block;width:100%;height:100%;object-fit:contain}
.tp-card-link{display:block;padding:11px 0;margin:-11px 0}
@supports selector(:has(a)){.tp-card-link:focus-visible{outline:none}.tp-card:has(.tp-card-link:focus-visible){outline:2px solid #39E6D0;outline-offset:2px}}
.tp-more-cat{display:none}
.tp-cat-label{margin-bottom:8px}
.tp-count-badge{background:#39E6D0;color:#120706;padding:2px 6px;font-size:12px;font-weight:600}
.tp-empty{margin-top:24px;padding:32px;border:1px dashed var(--edge);text-align:center}
.tp-years,.tp-yearlist{margin-top:24px}
.tp-yearlist summary{min-height:44px;display:inline-flex;align-items:center;cursor:pointer;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ph)}
.tp-yearlist ul{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.tp-yearlist a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border:1px solid var(--edge);font-size:12px;letter-spacing:.1em;color:var(--tan)}
.tp-yearlist a:hover{border-color:var(--tan);color:var(--cream)}
.tp-ticks em.d,.tp-ticks em.m{display:none}
@media (min-width:1024px){.tp-ticks em.d{display:block}}
@media (max-width:1023px){.tp-ticks em.m{display:block}}
.tp-toast[hidden]{display:none}
.tp-crumbs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tan)}
.tp-crumbs a{display:inline-flex;align-items:center;min-height:24px;color:var(--ph)}
.tp-crumbs a:hover{text-decoration:underline;text-underline-offset:4px}
.tp-recall{max-width:880px}
.tp-recall-card .tp-doss-title{font-size:30px;line-height:1.15}
.tp-noimg{display:flex;align-items:center;justify-content:center;background:var(--ox);color:var(--tan);font-size:12px;letter-spacing:.14em}
.tp-noimg p{margin:0}
.tp-more-photos{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.tp-more-photos img{width:88px;height:88px;object-fit:contain;background:#fff;border:1px solid var(--edge)}
.tp-contact{margin-top:12px;color:var(--tan);font-size:14px;line-height:1.6}
.tp-recall-nav{margin-top:24px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tan)}
.tp-recall-nav a,.tp-year-nav a{color:var(--ph);display:inline-flex;align-items:center;min-height:44px}
.tp-year-h{font-size:clamp(32px,5vw,52px);margin-top:12px}
.tp-year-sum{margin-top:16px;max-width:680px;color:var(--tan)}
.tp-year-sum a,.tp-prose a,.tp-ins-page a,.tp-note2 a{color:var(--ph);text-decoration:underline;text-underline-offset:3px}
.tp-year-nav{margin-top:20px;display:flex;flex-wrap:wrap;gap:16px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.tp-rows{margin-top:16px;border-top:1px solid var(--rule)}
.tp-row{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center;padding:6px 0;min-height:44px;border-bottom:1px solid var(--rule)}
.tp-row time{font-size:12px;letter-spacing:.12em;color:var(--tan)}
.tp-row a{color:var(--cream);line-height:1.35;min-height:24px;display:flex;align-items:center}
.tp-row a:hover{color:var(--ph);text-decoration:underline;text-underline-offset:3px}
.tp-prose{max-width:760px}
.tp-prose p,.tp-ins-page p{margin-top:12px;color:var(--cream);line-height:1.7}
.tp-bul{margin-top:12px;padding-left:20px;list-style:disc;line-height:1.7}
ol.tp-bul{list-style:decimal}
.tp-bul li{margin-top:6px}
.tp-prose code,.tp-ins-page code{color:var(--ph);font-size:13px}
.tp-ins-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}
.tp-ins{position:relative;display:flex;flex-direction:column;gap:6px;height:100%;box-sizing:border-box;padding:16px;border:1px solid var(--edge);background:var(--o8);line-height:1.5}
.tp-ins:hover{border-color:var(--tan)}
.tp-ins b{font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:18px;color:var(--cream)}
.tp-ins span:last-child{color:var(--tan);font-size:14px}
.tp-ins-page{max-width:820px}
.tp-ins-big{font-family:'Chakra Petch',system-ui,sans-serif;font-weight:600;font-size:26px;line-height:1.3;color:var(--ph);margin-top:20px}
.tp-ins-dl{margin-top:16px;display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule)}
.tp-ins-dl>div{background:var(--o8);padding:12px 16px;display:grid;grid-template-columns:180px 1fr;gap:12px}
.tp-ins-dl dt{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--tan)}
.tp-ins-dl dd{line-height:1.6}
.tp-tablewrap{margin-top:16px;overflow-x:auto}
.tp-table{border-collapse:collapse;min-width:100%;font-size:14px}
.tp-table th,.tp-table td{border:1px solid var(--rule);padding:8px 12px;text-align:left;white-space:nowrap}
.tp-table th{background:var(--o8);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tan);font-weight:500}
.tp-ev time{color:var(--tan);font-size:12px;letter-spacing:.1em;margin-right:6px}
.tp-ev a{color:var(--ph);text-decoration:underline;text-underline-offset:3px}
.tp-share-note{min-height:22px}
@media (max-width:1023px){
.tp-more-cat{display:inline-flex}.tp-cat-label{display:none}
.tp-ins-list{grid-template-columns:1fr}
}
@media (max-width:639px){
.tp-row{grid-template-columns:56px 1fr}.tp-row .tp-tag{grid-column:2;justify-self:start}
.tp-ins-dl>div{grid-template-columns:1fr;gap:4px}
}
.tp-done-rank{margin-top:8px;color:#BFA393}
.tp-file div{grid-template-columns:96px minmax(0,1fr)}
.tp-file dd,.tp-blk p,.tp-p,.tp-doss-title,.tp-contact,.tp-read dd,.tp-ins-dl dd,.tp-row a{overflow-wrap:anywhere}
