/* D02/R2 presentation repair. Retain original palette, typefaces and animation controllers. */
body.d02-u04{--d02-nav-h:calc(61px + env(safe-area-inset-bottom,0px));--d02-sticky-h:0px;padding-bottom:calc(var(--d02-nav-h) + var(--d02-sticky-h) + 16px)}
body.d02-u04.d02-has-download{--d02-sticky-h:76px}
.d02-u04 .wrap{padding-bottom:0}
.d02-u04 .hd .logo{display:flex;flex-direction:row;align-items:center;gap:9px;min-width:0;flex:1}
.d02-u04 .hd .logo>img{flex:none;width:32px;height:32px}
.d02-u04 .hd .logo .d02-brand-copy{display:flex;flex-direction:column;gap:2px;min-width:0;margin:0;color:var(--text)}
.d02-u04 .hd .logo .d02-logo-title,.d02-u04 .hd .logo .logo-t{display:block;font-family:var(--mono),var(--sans);font-size:clamp(20px,6.16vw,24px);font-weight:700;line-height:1.15;color:var(--text);max-width:100%;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.d02-u04 .hd .logo .d02-brand-subtitle{display:block;font-family:var(--mono);font-size:9px;font-weight:400;line-height:1.4;letter-spacing:.12em;color:var(--mute);margin:0;white-space:nowrap}
.d02-u04 .hd .hd-r{flex:none}
.d02-u04 .intro h1{font-size:17px;font-weight:900;line-height:1.4;margin:0 0 8px}
.d02-u04 .intro .d02-intro{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.d02-u04 .d02-related-list{display:flex;flex-direction:column;gap:10px;padding:0 var(--px)}
.d02-u04 .d02-related-list>.news{margin:0}
.d02-u04 .d02-more,.d02-u04 .d02-fg-recommend>.btn-line,.d02-u04 .d02-fg-related .btn-line{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin:12px var(--px) 0;padding:11px 16px;border:1px solid var(--line);border-radius:8px;color:var(--text);background:transparent;font-size:13px;font-weight:700;text-align:center;line-height:1.5;text-decoration:none;transition:background .2s,border-color .2s,transform .2s}
.d02-u04 .d02-more:hover,.d02-u04 .d02-fg-recommend>.btn-line:hover,.d02-u04 .d02-fg-related .btn-line:hover{background:var(--panel);border-color:var(--mute)}
.d02-u04 .d02-more:active,.d02-u04 .d02-fg-recommend>.btn-line:active,.d02-u04 .d02-fg-related .btn-line:active{transform:translateY(1px)}
.d02-u04 .d02-fg-recommend>.d02-fg-section-title{margin:30px 0 14px;padding:0 var(--px);font-size:20px;font-weight:900;line-height:1.4}
.d02-u04 .ft{margin-top:32px}
.d02-u04 .tabbar{z-index:40;min-height:calc(61px + env(safe-area-inset-bottom,0px))}
.d02-u04 .sticky-dl{bottom:var(--d02-nav-h);z-index:41;min-height:76px;padding:10px 14px 12px}
.d02-u04 .d02-sticky-inner{padding:0;background:transparent;color:inherit}
.d02-u04 .d02-sticky-inner>img{width:42px;height:42px;object-fit:cover;flex:none}
.d02-u04 .d02-sticky-text h4{font-size:13px;line-height:1.4}
.d02-u04 .d02-sticky-text p{font-size:10px;line-height:1.5;color:var(--mute)}
.d02-u04 .sticky-dl .btn{flex:0 0 auto;min-height:44px;padding:0 12px;font-size:12px;white-space:nowrap}
.d02-u04 .d02-back-top{position:fixed;right:max(14px,calc((100vw - 480px)/2 + 14px));bottom:calc(var(--d02-nav-h) + var(--d02-sticky-h) + 12px);z-index:42;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--dark);box-shadow:0 3px 12px #0003;cursor:pointer}
.d02-u04 .toast{bottom:calc(var(--d02-nav-h) + var(--d02-sticky-h) + 12px)}
.d02-u04 .tabbar a:focus-visible,.d02-u04 .d02-back-top:focus-visible,.d02-u04 .d02-more:focus-visible{outline:2px solid var(--y);outline-offset:2px}
@media(max-width:350px){.d02-u04 .hd{gap:8px}.d02-u04 .hd-r{gap:5px}.d02-u04 .hd .live{font-size:9px}.d02-u04 .hd .logo .d02-brand-subtitle{font-size:8px;letter-spacing:.06em}.d02-u04 .sticky-dl{padding-left:10px;padding-right:10px}.d02-u04 .sticky-dl .btn{padding:0 9px}}
@media(prefers-reduced-motion:reduce){.d02-u04 .d02-more,.d02-u04 .d02-fg-recommend>.btn-line,.d02-u04 .d02-fg-related .btn-line{transition:none}}
