.pp-showcase{margin-bottom:48px}.pp-showcase-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.pp-showcase-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:12px;font-family:var(--font-mono);font-weight:600}.pp-showcase-scroll{scrollbar-width:thin;scrollbar-color:var(--line) transparent;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:12px;padding-bottom:14px;display:flex;overflow:auto hidden}.pp-showcase-scroll::-webkit-scrollbar{height:3px}.pp-showcase-scroll::-webkit-scrollbar-track{background:0 0}.pp-showcase-scroll::-webkit-scrollbar-thumb{background:var(--line);border-radius:2px}.pp-showcase-item{scroll-snap-align:start;flex-direction:column;flex-shrink:0;gap:10px;text-decoration:none;display:flex}.pp-showcase-item.is-desktop{width:260px}.pp-showcase-item.is-mobile{width:148px}.pp-showcase-screen{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;position:relative;overflow:hidden}.pp-showcase-item.is-desktop .pp-showcase-screen{height:162px}.pp-showcase-item.is-mobile .pp-showcase-screen{height:264px}.pp-showcase-screen img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.pp-showcase-meta{flex-direction:column;gap:3px;display:flex}.pp-showcase-n{font-family:var(--font-mono);letter-spacing:.25em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:600}.pp-showcase-title{font-family:var(--font-nippo), var(--font-sans);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}@media (max-width:640px){.pp-showcase-item.is-desktop{width:200px}.pp-showcase-item.is-mobile{width:116px}.pp-showcase-item.is-desktop .pp-showcase-screen{height:122px}.pp-showcase-item.is-mobile .pp-showcase-screen{height:200px}}.pp-section{margin-bottom:48px}.pp-section-head{justify-content:space-between;align-items:baseline;margin-bottom:16px;display:flex}.pp-section-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:12px;font-family:var(--font-mono);font-weight:600}.pp-section-count{color:var(--accent);letter-spacing:.2em;font-size:12px;font-family:var(--font-mono);font-weight:500}.pp-table{border-radius:22px;overflow:hidden}.pp-table-header{letter-spacing:0;text-transform:none;color:var(--muted);border-bottom:1px solid var(--line);font-size:11px;font-family:var(--font-sans);grid-template-columns:60px 96px 1.4fr 1fr 1fr 70px;gap:16px;padding:14px 20px;font-weight:500;display:grid}.pp-table-row{border-bottom:1px solid var(--line);grid-template-columns:60px 96px 1.4fr 1fr 1fr 70px;align-items:center;gap:16px;padding:18px 20px;display:grid}.pp-table-row:last-child{border-bottom:0}.pp-table-row:hover{background:#ffffff0f;padding-left:28px}html[data-theme=light] .pp-table-row:hover{background:#0000000a}.pp-row-n{color:var(--muted);letter-spacing:.2em;font-size:12px;font-family:var(--font-mono);font-weight:500}.pp-table-row:hover .pp-row-n{color:var(--accent)}.pp-row-thumb{aspect-ratio:16/9;border:1px solid var(--line);background:#ffffff0a;border-radius:8px;display:block;position:relative;overflow:hidden}html[data-theme=light] .pp-row-thumb{background:#00000008}.pp-row-thumb img{object-fit:cover;object-position:top center}.pp-row-thumb-empty{font-family:var(--font-sans);letter-spacing:.06em;color:var(--muted);background:linear-gradient(135deg,#b7172729,#0000 62%);justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex;position:absolute;inset:0}.pp-table-row:hover .pp-row-thumb-empty{color:var(--ink-soft)}.pp-table-row:hover .pp-row-thumb{border-color:var(--accent)}.pp-row-title{font-family:var(--font-nippo), var(--font-sans);text-transform:none;letter-spacing:0;color:var(--ink);font-size:clamp(19px,2.4vw,30px);font-weight:700;line-height:1}.pp-row-meta{color:var(--ink-soft);letter-spacing:0;text-transform:none;font-size:13px;font-family:var(--font-sans);font-weight:500}.pp-row-year{color:var(--muted);text-align:right;letter-spacing:.14em;font-size:13px;font-family:var(--font-mono);font-weight:500}.pp-stories-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.pp-story-card{border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.pp-story-media{aspect-ratio:9/16;background:#0c0c0c;position:relative;overflow:hidden}.pp-story-media video{object-fit:cover;width:100%;height:100%}.pp-story-fade{pointer-events:none;background:linear-gradient(#0000 50%,#000000b3 100%);position:absolute;inset:0}.pp-story-no{letter-spacing:.3em;color:#ffffffbf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2;font-size:11px;font-family:var(--font-mono);background:#0006;border:1px solid #ffffff1f;border-radius:999px;padding:5px 9px;font-weight:500;position:absolute;top:12px;left:12px}.pp-story-meta-bottom{letter-spacing:0;text-transform:none;color:#ffffffd9;z-index:2;font-size:11px;font-family:var(--font-sans);align-items:center;gap:8px;font-weight:500;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.pp-story-body{gap:8px;padding:16px 18px;display:grid}.pp-story-title-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.pp-story-title-row h3{letter-spacing:0;font-size:19px;line-height:1.15;font-family:var(--font-sans);text-transform:none;margin:0;font-weight:600}.pp-story-arrow{color:var(--muted);font-size:15px}.pp-story-card:hover .pp-story-arrow{color:var(--accent)}.pp-story-body p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.pp-story-tags{flex-wrap:wrap;gap:5px;display:flex}.pp-story-tags span{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px;font-family:var(--font-mono);border:1px solid #ffffff1a;border-radius:999px;padding:3px 8px;font-weight:600}@media (max-width:1000px){.pp-stories-grid{grid-template-columns:1fr 1fr}.pp-table-header,.pp-table-row{grid-template-columns:40px 56px 1fr 60px;gap:12px}.pp-hide-mobile{display:none}}@media (max-width:640px){.pp-stories-grid{grid-template-columns:1fr}}
.pp-showcase-item{transition:opacity .2s}.pp-showcase-item:hover{opacity:.85}.pp-table-row{transition:background .2s,padding-left .4s cubic-bezier(.2,.8,.2,1)}.pp-row-thumb{transition:border-color .2s,transform .4s cubic-bezier(.2,.8,.2,1)}.pp-table-row:hover .pp-row-thumb{transform:scale(1.06)}@media (prefers-reduced-motion:reduce){.pp-table-row:hover .pp-row-thumb{transform:none}}
.df{border-radius:24px;margin-bottom:48px;padding:32px;position:relative;overflow:hidden}.df-head{margin-bottom:30px}.df-eyebrow{letter-spacing:0;text-transform:none;color:var(--accent);font-size:12px;font-family:var(--font-sans);margin-bottom:12px;font-weight:500}.df-title{letter-spacing:0;margin:0 0 10px;font-size:clamp(22px,2.5vw,28px);line-height:1.15}.df-title .em{font-family:var(--font-nippo), var(--font-sans);color:var(--accent);font-style:normal;font-weight:700}.df-desc{color:var(--muted);max-width:68ch;margin:0;font-size:14px;line-height:1.6}.df-track-wrap{margin-bottom:26px}.df-track{grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:relative}.df-rail{background:var(--line);height:1px;position:absolute;top:7px;left:8.33333%;right:8.33333%}.df-rail-fill{background:var(--accent);height:100%;box-shadow:0 0 10px var(--accent-soft);display:block}.df-node{color:inherit;cursor:pointer;text-align:center;background:0 0;border:0;flex-direction:column;align-items:center;gap:9px;padding:0 6px 4px;display:flex;position:relative}.df-node-dot{border:1px solid var(--line);background:var(--glass-bg-strong);border-radius:50%;width:15px;height:15px}.df-node.is-done .df-node-dot{border-color:var(--accent);background:var(--accent)}.df-node.is-active .df-node-dot{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 5px var(--accent-soft)}.df-node-n{font-family:var(--font-mono);letter-spacing:.2em;color:var(--muted);font-size:11px;font-weight:500}.df-node-name{letter-spacing:0;text-transform:none;color:var(--muted);font-size:13px;line-height:1.3;font-family:var(--font-sans);font-weight:500}.df-node.is-active .df-node-n,.df-node.is-active .df-node-name{color:var(--accent)}.df-node:hover .df-node-name{color:var(--ink)}.df-node.is-active:hover .df-node-name{color:var(--accent)}.df-card{border:1px solid var(--line);border-radius:18px;padding:24px}@keyframes df-in{0%{opacity:0;transform:translateY(8px)}}.df-card-top{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.df-card-n{font-family:var(--font-mono);letter-spacing:.2em;color:var(--accent);font-size:13px;font-weight:500}.df-card-title{letter-spacing:0;color:var(--ink);margin:0;font-size:18px}.df-card-dur{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;margin-left:auto;padding:4px 11px;font-size:12px;font-weight:600}.df-card-detail{color:var(--ink-soft);max-width:78ch;margin:0 0 22px;font-size:15px;line-height:1.7}.df-card-grid{border-top:1px solid var(--line);grid-template-columns:1.5fr 1fr 1fr;gap:22px;padding-top:20px;display:grid}.df-block{flex-direction:column;gap:9px;min-width:0;display:flex}.df-block-k{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px;font-family:var(--font-mono);font-weight:600}.df-block-v{color:var(--ink-soft);margin:0;font-size:14px;line-height:1.6}.df-list{flex-direction:column;gap:7px;margin:0;padding:0;list-style:none;display:flex}.df-list li{color:var(--ink-soft);gap:9px;font-size:14px;line-height:1.5;display:flex}.df-bullet{color:var(--accent);flex:none}.df-example{border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;padding:13px 16px;display:flex}.df-example:hover{background:var(--accent-soft);border-color:var(--accent)}.df-example-k{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px;font-family:var(--font-mono);font-weight:600}.df-example-v{color:var(--ink);letter-spacing:0;font-size:15px}.df-example-kind{font-family:var(--font-mono);letter-spacing:.1em;color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:600}.df-example-arrow{color:var(--accent);margin-left:auto;font-size:15px}@media (max-width:900px){.df{padding:24px 20px}.df-card{padding:20px 18px}.df-card-grid{grid-template-columns:1fr;gap:18px}.df-card-dur{margin-left:0}.df-track-wrap{scrollbar-width:none;margin:0 -20px;padding:0 20px;overflow-x:auto}.df-track-wrap::-webkit-scrollbar{display:none}.df-track{grid-auto-columns:116px;width:max-content;min-width:100%}.df-rail{left:58px;right:58px}.df-node-name{font-size:12px}.df-example-arrow{margin-left:0}}
.df-rail-fill{transition:width .42s cubic-bezier(.2,.8,.2,1)}.df-node-dot{transition:border-color .24s,background .24s,transform .3s cubic-bezier(.2,.8,.2,1)}.df-node.is-active .df-node-dot{transform:scale(1.3)}.df-node-n,.df-node-name{transition:color .24s}.df-card{animation:.42s cubic-bezier(.2,.8,.2,1) both df-in}.df-example{transition:background .22s,border-color .22s}@media (prefers-reduced-motion:reduce){.df-card{animation:none}.df-rail-fill,.df-node-dot{transition:none}}
