/* Zen Buddha Master — homepage rating tiles (IBD-style newspaper boxes). All class names are zt- scoped. Data: /api/ratings.php via assets/tiles.js */
.zt{position:relative;margin:0 0 16px;color:#71ff9b;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;text-shadow:0 0 7px #2cff6a;line-height:1.3}
.zt *{box-sizing:border-box}
.zt a{color:#71ff9b!important;text-decoration:none!important}
.zt .dn{color:#ffb454!important;text-shadow:0 0 8px rgba(255,180,84,.55)}
.zt-sec{display:flex;align-items:center;gap:10px;margin:18px 0 0;font-size:13px;letter-spacing:.16em;padding:5px 8px;background:rgba(113,255,155,.14);border-top:1px solid #71ff9b;border-bottom:1px solid rgba(113,255,155,.22);white-space:nowrap}
.zt-sec:first-child{margin-top:0}
.zt-sec em{font-style:normal;margin-left:auto;font-size:12px;opacity:.6;letter-spacing:.06em}
.zt-grid{display:grid;grid-template-columns:repeat(2,1fr);border-left:1px solid rgba(113,255,155,.22);min-height:calc(3*106px + 3px)}
.zt-tile{display:flex;flex-direction:column;min-width:0;min-height:106px;padding:7px 8px 6px;border-right:1px solid rgba(113,255,155,.22);border-bottom:1px solid rgba(113,255,155,.22);position:relative;touch-action:manipulation}
a.zt-tile:hover,a.zt-tile:focus-visible{background:rgba(113,255,155,.1);outline:0;box-shadow:inset 0 0 0 1px #71ff9b;text-shadow:none}
.zt-nm{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;column-gap:6px;min-width:0;min-height:18px}
.zt-nm b{font-size:14px;letter-spacing:.06em}
.zt-pc{font-size:12px;white-space:nowrap;margin-left:auto}.zt-pc small{font-size:10px}
.zt-nmx{display:block;font-size:10px;opacity:.55;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;min-height:12px}
.zt-ch{margin:2px 0}.zt-sp{display:block;width:100%;height:26px;overflow:visible}
.zt-bt{display:flex;justify-content:space-between;align-items:flex-end;gap:6px;margin-top:auto;border-top:1px dotted rgba(113,255,155,.25);padding-top:3px}
.zt-l{display:flex;flex-direction:column;min-width:0}.zt-px{font-size:12px;opacity:.85;white-space:nowrap}
.zt-sub{font-size:9px;opacity:.5;white-space:nowrap;letter-spacing:0}.zt-sub i{font-style:normal;opacity:.65;margin-right:1px}
.zt-rt{font-size:22px;font-weight:bold;line-height:1;padding:2px 6px;border-radius:3px;flex:none}
.zt-hi .zt-rt{background:#71ff9b;color:#001408;text-shadow:none;box-shadow:0 0 12px rgba(44,255,106,.5)}
.zt-mid .zt-rt{border:1px solid rgba(113,255,155,.6)}
.zt-lo .zt-rt{border:1px solid #ffb454;color:#ffb454;text-shadow:0 0 8px rgba(255,180,84,.5)}
.zt-sk{pointer-events:none}.zt-sk>*{visibility:hidden}
.zt-sk:before{content:"";position:absolute;inset:7px 8px 6px;background:linear-gradient(90deg,rgba(113,255,155,.05),rgba(113,255,155,.13),rgba(113,255,155,.05));background-size:200% 100%;animation:zt-sh 1.6s linear infinite;border-radius:2px}
@keyframes zt-sh{to{background-position:-200% 0}}
.zt-empty{pointer-events:none}
.zt-none{grid-column:1/-1;padding:26px 12px;text-align:center;font-size:12px;letter-spacing:.1em;opacity:.7;border-right:1px solid rgba(113,255,155,.22);border-bottom:1px solid rgba(113,255,155,.22)}
.zt-tools{display:flex;justify-content:flex-end;margin:10px 0 0;min-height:48px}
.zt-tools .chg-mode{margin:0;font-size:10px}.zt-tools .chg-mode button{min-height:36px;padding:6px 10px}
.zt-legend{font-size:11px;opacity:.55;letter-spacing:.05em;line-height:1.6;margin:10px 0 0}.zt-legend b{font-weight:normal;opacity:.9}
@media(min-width:700px){.zt-grid{grid-template-columns:repeat(3,1fr);min-height:calc(4*106px + 4px)}}
@media(min-width:1000px){.zt-grid{grid-template-columns:repeat(6,1fr);min-height:calc(2*106px + 2px)}}
@media(max-width:699px){.zt-grid .zt-tile:nth-child(n+7){display:none}}
@media(max-width:760px){.zt-sec{letter-spacing:.1em;font-size:12px}.zt-sec em .zt-x{display:none}.zt-tools{justify-content:center}}
@media(prefers-reduced-motion:reduce){.zt-sk:before{animation:none}}
.zt:empty{min-height:1150px}@media(min-width:700px){.zt:empty{min-height:1000px}}@media(min-width:1000px){.zt:empty{min-height:780px}}

.zt-grid+.zt-sec{margin-top:36px}
@media(min-width:1700px){.zt-grid{grid-template-columns:repeat(12,1fr);min-height:calc(106px + 1px)}}

.zt-idx{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid rgba(113,255,155,.22);margin:0 0 14px;min-height:54px}.zt-ix{display:flex;flex-direction:column;gap:2px;padding:8px 10px;color:inherit;text-decoration:none;border-left:1px solid rgba(113,255,155,.22);min-width:0}.zt-ix:first-child{border-left:0}.zt-ix b{font-size:12px;letter-spacing:.14em}.zt-ixp{font-size:16px}.zt-ix .zt-pc{font-size:12px;white-space:nowrap;margin-left:0}.zt-ix .dn{color:#ffb454}.zt-ix:hover{background:rgba(113,255,155,.08)}
@media(max-width:520px){.zt-ixp{font-size:14px}.zt-ix{padding:6px}.zt-ix .zt-pc{font-size:11px}}
.zt-idx{grid-template-columns:repeat(3,1fr)!important;min-height:0}
@media(min-width:700px){.zt-ix{flex-direction:row;align-items:baseline;justify-content:center;gap:14px;padding:12px 10px;flex-wrap:nowrap}.zt-ix .zt-pc{margin-left:0}}
.zt-ix b{font-size:clamp(16px,1.6vw,22px);color:#fff;letter-spacing:.12em}
.zt-ix .zt-pc{font-size:clamp(18px,1.9vw,26px);font-weight:700}
.zt-ix .zt-pc span{color:#5dffa0;text-shadow:0 0 10px rgba(93,255,160,.6)}
.zt-ix .zt-pc .dn{color:#ff5c5c!important;text-shadow:0 0 10px rgba(255,92,92,.6)!important}
.zt-ix b{font-size:clamp(14px,1.3vw,18px)}
.zt-ix .zt-pc{font-size:clamp(15px,1.5vw,21px)}
.zt-idx.zt-premkt{position:relative;padding-bottom:16px}
.zt-pre{position:absolute;left:0;right:0;bottom:2px;text-align:center;font-size:10px;letter-spacing:.2em;opacity:.65}
