/* Typography +2pt total: preserve the original responsive sizes. */
.cafe-tv{position:absolute;inset:0;z-index:3;pointer-events:none;color:#fff8e9;font-family:Arial,'Yu Gothic',sans-serif;overflow:clip}
.cafe-experience[data-view=works] .cafe-detail{background-size:var(--tv-bg-w) var(--tv-bg-h);background-position:var(--tv-bg-x) var(--tv-bg-y);background-repeat:no-repeat;background-color:#7c6954}
.tv-surface{position:absolute;left:var(--tv-x);top:var(--tv-y);width:var(--tv-w);height:var(--tv-h);pointer-events:none}
.cafe-tv .tv-screen{position:absolute;left:16.52%;top:11.7%;width:52.53%;height:72.87%;background:#080a09;clip-path:url(#crt-mask);border:0;border-radius:0;box-shadow:none;overflow:hidden;display:flex;align-items:center;justify-content:center;pointer-events:auto;outline:0;isolation:isolate}
.tv-screen:focus-visible{background:#161d16}.tv-screen:focus-visible .tv-letterbox-top{color:#f9d9ba}
.tv-picture{position:relative;width:100%;aspect-ratio:16/9;background:#000;flex-shrink:0;overflow:hidden}
.tv-poster{position:absolute;inset:0;width:100%;height:100%;background:#0d1511;color:white;border:0;padding:0;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center}
.tv-poster img{position:absolute;width:100%;height:100%;object-fit:cover;display:block;opacity:.87;transition:opacity .3s,transform .6s}.tv-poster:hover img{opacity:1;transform:scale(1.025)}
.tv-play-circle{z-index:1;display:grid;place-items:center;width:72px;height:72px;padding-left:5px;border-radius:50%;border:1px solid #fff7e9bd;background:#fff8ef47;backdrop-filter:blur(8px);box-shadow:0 6px 25px #0004;font-size:calc(27px + 2pt);transition:transform .3s,background .3s}
.tv-poster:hover .tv-play-circle{transform:scale(1.1);background:#f9e8ce66}.tv-play-caption{position:absolute;bottom:9%;font-size:calc(9px + 2pt);letter-spacing:2.2px;color:#fff6e4;text-shadow:0 1px 6px #000}
.tv-letterbox-top,.tv-letterbox-bottom{position:absolute;left:10%;right:8%;display:flex;align-items:center;justify-content:space-between;pointer-events:none;color:#f4e3c9;z-index:2}.tv-letterbox-top{top:8%;font:calc(9px + 2pt) monospace;letter-spacing:2px}.tv-on-air{font-size:calc(8px + 2pt);color:#d4d9ad}.tv-letterbox-bottom{bottom:6%;display:block;text-align:center}.tv-letterbox-bottom>span{font:calc(8px + 2pt) monospace;letter-spacing:2.5px;color:#d4bb95}.tv-letterbox-bottom h1{font:calc(clamp(12px,1.5vw,23px) + 2pt)/1.4 Georgia,'Yu Mincho',serif;letter-spacing:1px;margin:4px 0 0;color:#fff0dc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#tvPlayerMount{position:absolute;inset:0;width:100%;height:100%}#tvPlayerMount:empty{pointer-events:none}#tvPlayerMount iframe,#cafeYoutubeScreen{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.tv-arrow{position:absolute;top:46%;transform:translate(-50%,-50%);pointer-events:auto;display:grid;place-items:center;width:52px;height:70px;background:#fff5de54;color:#fff6e5;border:1px solid #fff5e7a1;border-radius:40px;backdrop-filter:blur(8px);box-shadow:0 5px 20px #38241926;font:calc(48px + 2pt)/1 Georgia,serif;cursor:pointer;transition:background .25s,scale .25s}
.tv-previous{left:12.8%}.tv-next{left:73.2%}.tv-arrow:hover{background:#fff2d795;scale:1.06}.tv-arrow:disabled{opacity:.25;cursor:default;scale:1}
.tv-genres{position:absolute;right:2.1%;top:13%;width:20%;max-width:290px;pointer-events:auto}.tv-small-note{font-size:calc(7px + 2pt);letter-spacing:2px;text-shadow:0 1px 5px #2b170f}.tv-genres h2{font:calc(clamp(22px,2.25vw,36px) + 2pt)/1.06 Georgia,serif;margin:12px 0 22px;text-shadow:0 2px 10px #301b14a1;font-weight:400}.tv-genres h2 em{font-weight:400;color:#ffe3b7}.tv-genres h2>span{position:absolute;top:26px;right:8%;font-size:calc(41px + 2pt);color:#fff1ca;transform:rotate(12deg)}
.tv-genre-bubbles{display:flex;flex-direction:column;gap:11px;padding:0 10px}.tv-genre-bubble{position:relative;display:flex;align-items:center;gap:12px;min-height:48px;padding:9px 14px;border:1px solid #fff9e7b3;border-radius:18px 18px 18px 5px;box-shadow:0 4px 14px #3f251b26;background:var(--bubble-paper);color:var(--bubble-ink);transform:rotate(var(--tilt));cursor:pointer;text-align:left;transition:transform .3s,box-shadow .3s;isolation:isolate}
.tv-genre-bubble:before{content:'';position:absolute;left:-8px;top:18px;border-right:10px solid var(--bubble-paper);border-top:7px solid transparent;border-bottom:5px solid transparent}.tv-genre-bubble:hover{transform:rotate(0) translateX(-5px);box-shadow:0 7px 18px #3f251b3b}.tv-genre-bubble[aria-pressed=true]{outline:2px dashed #fff7df;outline-offset:4px;transform:rotate(0) translateX(-7px);box-shadow:0 8px 20px #3f251b40}.tv-bubble-icon{font:calc(24px + 2pt) Georgia,serif;width:23px;text-align:center}.tv-genre-bubble strong{display:block;font-size:calc(11px + 2pt);letter-spacing:1.3px}.tv-genre-bubble small{display:block;margin-top:3px;font-size:calc(8px + 2pt);letter-spacing:.3px}.tv-bubble-count{margin-left:auto;font:calc(12px + 2pt) Georgia,serif;opacity:.65}.tv-genre-foot{font-size:calc(9px + 2pt);text-align:center;margin-top:17px;letter-spacing:1px;text-shadow:0 1px 8px #3b2416}
.tv-caption{position:absolute;left:5%;bottom:113px;pointer-events:auto;text-shadow:0 1px 8px #3a2418}.tv-caption>span{font-size:calc(8px + 2pt);letter-spacing:2px}.tv-caption i{font-style:normal;color:#f4cf9f;margin:0 8px}.tv-caption p{font:calc(17px + 2pt)/1.6 Georgia,'Yu Mincho',serif;margin:8px 0}.tv-caption a{color:#fff1da;font-size:calc(10px + 2pt);text-underline-offset:4px}.tv-player-status{position:absolute;left:25%;bottom:92px;max-width:46%;font-size:calc(11px + 2pt);line-height:1.6;letter-spacing:.3px;text-shadow:0 1px 7px #000}
.tv-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:radial-gradient(ellipse,#303b31,#0c1510);color:#ebddbf}.tv-empty>span{font-size:calc(25px + 2pt);color:#efc3b0}.tv-empty strong{font:calc(36px + 2pt) Georgia,serif;font-weight:400;margin:10px 0}.tv-empty p{font-size:calc(12px + 2pt);line-height:1.9;margin:0}.tv-empty button{margin-top:18px;font-size:calc(10px + 2pt);color:#f4d9b8;border:1px solid #f5ddbd66;border-radius:30px;padding:10px 16px;background:#fff2de13;cursor:pointer}
@media(min-width:760px) and (max-height:760px){.tv-genres{top:12%;width:19%}.tv-genres h2{font-size:calc(25px + 2pt);margin:9px 0 14px}.tv-genre-bubbles{gap:8px}.tv-genre-bubble{min-height:38px;padding:6px 11px}.tv-genre-bubble strong{font-size:calc(10px + 2pt)}.tv-genre-bubble small{font-size:calc(7px + 2pt)}.tv-genre-foot{margin-top:12px}.tv-caption{bottom:100px}.tv-caption p{font-size:calc(13px + 2pt)}}
@media(max-width:759px){.cafe-tv{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}.tv-genres{top:calc(var(--tv-y) + var(--tv-h) + 32px);left:19px;right:19px;width:auto;max-width:none;padding-bottom:95px}.tv-small-note{display:none}.tv-genres h2{font-size:calc(24px + 2pt);margin:0 0 14px}.tv-genres h2 br{display:none}.tv-genres h2 em{margin-left:5px}.tv-genres h2>span{top:-4px;right:5%;font-size:calc(29px + 2pt)}.tv-genre-bubbles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 9px;padding:0}.tv-genre-bubble{min-height:44px;gap:5px;padding:7px 8px;border-radius:13px 13px 13px 4px}.tv-genre-bubble:before{left:-5px;border-right-width:7px;top:13px}.tv-bubble-icon{font-size:calc(17px + 2pt);width:16px}.tv-genre-bubble strong{font-size:calc(8px + 2pt);letter-spacing:.2px}.tv-genre-bubble small{font-size:calc(6px + 2pt);letter-spacing:0}.tv-bubble-count{position:absolute;right:7px;top:4px;font-size:calc(8px + 2pt)}.tv-genre-bubble[aria-pressed=true]{outline-offset:2px;transform:rotate(0)}.tv-genre-foot{font-size:calc(8px + 2pt);margin-top:16px}.tv-caption{top:82px;left:21px;bottom:auto}.tv-caption>span{font-size:calc(8px + 2pt)}.tv-caption p{display:none}.tv-caption a{position:absolute;top:calc(var(--tv-y) + var(--tv-h) - 64px);left:calc(50vw - 76px);white-space:nowrap;font-size:calc(9px + 2pt)}.tv-arrow{top:95%;width:39px;height:39px;font-size:calc(31px + 2pt)}.tv-previous{left:calc((20px - var(--tv-x)) / var(--tv-w) * 100%);left:calc(0px - var(--tv-x) + 34px)}.tv-next{left:calc(100vw - var(--tv-x) - 34px)}.tv-letterbox-top{font-size:calc(5px + 2pt);letter-spacing:.7px}.tv-on-air{font-size:calc(5px + 2pt)}.tv-letterbox-bottom>span{font-size:calc(5px + 2pt);letter-spacing:1.5px}.tv-letterbox-bottom h1{font-size:calc(10px + 2pt);margin-top:2px}.tv-play-circle{width:44px;height:44px;font-size:calc(18px + 2pt)}.tv-play-caption{font-size:calc(6px + 2pt);letter-spacing:1px}.tv-empty strong{font-size:calc(22px + 2pt);margin:5px 0}.tv-empty>span{font-size:calc(16px + 2pt)}.tv-empty p{font-size:calc(9px + 2pt);line-height:1.6}.tv-empty button{font-size:calc(8px + 2pt);padding:7px 12px;margin-top:8px}.tv-player-status{top:calc(var(--tv-y) + var(--tv-h) + 1px);left:20%;right:20%;bottom:auto;max-width:none;font-size:calc(8px + 2pt);text-align:center}}
@media(prefers-reduced-motion:reduce){.tv-poster img,.tv-play-circle,.tv-arrow,.tv-genre-bubble{transition:none}}

/* Subtle contrast improvements; the detail panel remains 50% transparent. */
.tv-genre-bubble{color:color-mix(in srgb,var(--bubble-ink) 80%,#35271f)}
.tv-genre-bubble small{font-weight:500;line-height:1.45}
.tv-bubble-count{opacity:.9}
.tv-genres h2{line-height:1.12;text-shadow:0 1px 3px #2b170fc7,0 4px 15px #301b145c}
.tv-small-note,.tv-genre-foot,.tv-caption,.tv-player-status{font-weight:500;text-shadow:0 1px 3px #25170ee0,0 2px 10px #25170e99}
.tv-genres h2,.tv-genres h2 em,.tv-small-note,.tv-genre-foot{font-weight:600}
.tv-letterbox-top,.tv-letterbox-bottom{color:#fff0d9}
.tv-letterbox-bottom>span{color:#ead1ac}
.news-item time{color:#654530}.news-item p{color:#5f4434}.news-item h2{font-weight:600;line-height:1.8}
.news-sign{color:#70503d}.cafe-dock button{color:#563a2b}.cafe-dock button span{font-weight:600}
.cafe-sheet{backdrop-filter:blur(8px);color:#3f2e25}
.cafe-sheet :is(p,li,h2,h3,h4,summary,a){text-shadow:0 1px 1px #fff7e970}
@media(max-width:759px){.tv-bubble-count{top:auto;bottom:6px}.tv-letterbox-bottom{bottom:4%}.tv-letterbox-bottom>span{display:block;line-height:1}.tv-letterbox-bottom h1{line-height:1.2;margin-top:3px}}

@media(max-width:759px){.tv-genre-bubble[data-genre="commercial"]{grid-column:span 2}.cafe-dock button{padding-inline:7px}.tv-letterbox-bottom{bottom:2%}}

#sheetBody #contact :is(.room-copy,.content-card p,.contact-link){text-shadow:1px 2px 1px #392416c7,3px 4px 5px #392416a6,5px 6px 12px #3924164d!important}
@media(max-width:759px){.tv-genre-bubble>span:nth-child(2){min-width:0;flex:1}.tv-genre-bubble small{padding-right:16px}}
