/* UI029 · 无花果短剧. UI only; permissions, quotes and playback remain with root/UE. */
.drama-feed-summary {min-width:0;max-width:min(100%,36rem);color:#fff9fc;text-shadow:0 1px 10px #09071066;}
.drama-feed-title,.drama-feed-summary>h2 {display:block;margin:0 0 6px;font-size:20px;line-height:1.25;font-weight:650;letter-spacing:-.035em;overflow-wrap:anywhere;}
.drama-feed-tags {display:flex;align-items:center;flex-wrap:nowrap;gap:4px;margin:0 0 6px;overflow:hidden;text-shadow:none;}
.drama-feed-tags>span {display:inline-flex;flex-shrink:0;align-items:center;min-height:20px;padding:2px 7px;border:1px solid #f8c4d22e;border-radius:5px;background:#b74b7438;color:#ffd8e6;font-size:10px;line-height:1.4;white-space:nowrap;}
.drama-feed-tags>span:nth-child(4n+2),.drama-feed-tags>[data-tone="1"] {border-color:#a0cbef40;background:#4063a43d;color:#d0e4ff;}
.drama-feed-tags>span:nth-child(4n+3),.drama-feed-tags>[data-tone="2"] {border-color:#ccb2f442;background:#714aa340;color:#e3d2ff;}
.drama-feed-tags>span:nth-child(4n+4),.drama-feed-tags>[data-tone="3"] {border-color:#f7dab142;background:#b2804240;color:#ffe3b9;}
.drama-feed-description {display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.5;color:#eee4ef;margin:0 0 7px;}
.drama-feed-watch {display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:32px;padding:5px 12px;border:1px solid #eebbd644;border-radius:8px;background:linear-gradient(115deg,#ee8ab438,#a987dd33);color:#fff1f8;font-size:12px;font-weight:550;text-align:left;-webkit-backdrop-filter:blur(var(--ui-glass-blur,13px)) saturate(var(--ui-glass-saturation,1.12));backdrop-filter:blur(var(--ui-glass-blur,13px)) saturate(var(--ui-glass-saturation,1.12));box-shadow:inset 0 1px #ffe5f31a;}
.drama-feed-watch:after {content:"›";font-size:21px;font-weight:400;line-height:16px;opacity:.85;}

/* The controller restores original hidden flags when leaving. Blank overlay never eats feed gestures. */
.has-drama-player :is(#feedHeader,#bottomNav,#pureNavigation,#focusReveal) {display:none!important;}
.has-drama-player[data-drama-player-mode="clean"] :is(#caption,#actionRail,#danmakuLayer) {display:none!important;}
.drama-player {position:absolute;inset:0;z-index:35;overflow:hidden;pointer-events:none;color:#fff9fc;--drama-player-accent:#efa0c2;--drama-player-purple:#ba9ce8;--drama-player-blur:var(--ui-glass-blur,13px);}
.drama-player [hidden],.drama-player[hidden] {display:none!important;}
.drama-player :is(button,input,a,[role="dialog"]) {pointer-events:auto;}
.drama-player button {font-family:inherit;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer;}
.drama-player button:disabled {opacity:.5;cursor:wait;}
.drama-player-top {position:absolute;inset:0 0 auto;display:flex;align-items:center;gap:11px;min-height:74px;padding:calc(13px + env(safe-area-inset-top,0px)) 14px 17px;background:linear-gradient(#09071180,transparent);text-shadow:0 1px 8px #0009;}
.drama-player-top>[data-drama-player-action="back"] {display:grid;place-items:center;flex:0 0 40px;min-width:40px;min-height:44px;margin-left:-5px;padding:6px;border:0;border-radius:999px;background:transparent;font-size:15px;}
.drama-player-top>button .icon {width:22px;height:22px;}
.drama-player-heading {flex:1;min-width:0;}
.drama-player-heading :is(h1,h2,strong),.drama-player-heading:not(:has(*)) {display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;font-weight:550;line-height:1.5;margin:0;}
.drama-player-title-row {display:flex;align-items:center;gap:7px;min-width:0;min-height:23px;}
.drama-player-title-row>strong {flex:1;min-width:0;}
.drama-player-heat {display:block;color:#e6c4de;font-size:11px;font-weight:400;line-height:1.5;overflow-wrap:anywhere;}
.drama-player-title-row>.drama-player-heat {flex:0 1 auto;max-width:55%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:10px;}
.drama-player-heat[data-engagement-state="unavailable"] {color:#c7bacd;}
.drama-player-current {flex-shrink:0;color:#ece4f3;font-size:11px;line-height:1.5;white-space:nowrap;}
.drama-player-toolbar,.drama-player-clean-tools {position:absolute;display:flex;align-items:center;gap:9px;pointer-events:auto;}
.drama-player-toolbar,.drama-player-clean-tools {left:15px;right:15px;bottom:calc(14px + env(safe-area-inset-bottom,0px));gap:8px;}
.drama-player-toolbar>button,.drama-player-clean-tools>button {display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:44px;padding:10px 12px;border:1px solid #ffffff45;border-radius:13px;background:#29272b7a;color:#fff5fb;font-size:12px;line-height:1.4;white-space:nowrap;text-shadow:0 1px 6px #0004;-webkit-backdrop-filter:blur(var(--drama-player-blur)) saturate(var(--ui-glass-saturation,1.12));backdrop-filter:blur(var(--drama-player-blur)) saturate(var(--ui-glass-saturation,1.12));}
/* Fixed playback tools are independent of optional preset actions on the rail. */
#phone[data-display-comments=off] .drama-player :is(.drama-player-toolbar,.drama-player-clean-tools)>[data-drama-player-action="comments"]:not([hidden]) {display:inline-flex!important;}
.drama-player-toolbar>[data-drama-player-action="episodes"],.drama-player-clean-tools>[data-drama-player-action="episodes"] {flex:1;min-width:0;justify-content:flex-start;padding:10px 12px;border-color:transparent;background:#ffffff26;}
.drama-player-total {min-width:0;overflow:hidden;text-overflow:ellipsis;}
.drama-player-chevron {flex:0 0 14px;width:14px;height:14px;margin-left:auto;}
.drama-player-toolbar .icon,.drama-player-clean-tools .icon {width:15px;height:15px;}
.drama-player[data-mode="clean"] :is(.drama-player-top,.drama-player-toolbar) {display:none!important;}
.drama-player-progress {position:absolute;left:15px;right:15px;bottom:calc(72px + env(safe-area-inset-bottom,0px));height:18px;display:flex;align-items:center;pointer-events:auto;}
.drama-player-progress input,.drama-player-progress:is(input) {width:100%;height:2px;margin:0;border:0;border-radius:999px;accent-color:#edb6d0;background:#ffffff38;cursor:pointer;}
.drama-player-progress input::-webkit-slider-runnable-track {height:2px;border-radius:999px;background:#ffffff38;}
.drama-player-progress input::-webkit-slider-thumb {-webkit-appearance:none;width:8px;height:8px;margin-top:-3px;border:0;border-radius:50%;background:#f4c1d8;}
.drama-player-progress input::-moz-range-track {height:2px;border-radius:999px;background:#ffffff38;}
.drama-player-progress input::-moz-range-progress {height:2px;background:#f2bad3;}
.drama-player-progress input::-moz-range-thumb {width:7px;height:7px;border:0;background:#f4c1d8;}
.drama-player-status {position:absolute;left:50%;bottom:110px;max-width:calc(100% - 40px);transform:translateX(-50%);padding:9px 14px;border:1px solid #ffffff14;border-radius:12px;background:#1e1528b3;color:#f8deee;font-size:11px;line-height:1.6;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.drama-player-status:empty {display:none;}

/* Internal selection/speed sheets; independent of root's access/comment sheets. */
.drama-player-sheet-host {position:absolute;inset:0;z-index:4;display:flex;align-items:flex-end;justify-content:center;min-width:0;min-height:0;overflow:hidden;overflow-anchor:none;overscroll-behavior:none;pointer-events:auto;}
.drama-player-sheet-scrim {position:absolute;inset:0;border:0;background:#09070f80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);touch-action:none;}
.drama-player-sheet {position:relative;display:flex;flex-direction:column;box-sizing:border-box;width:100%;min-width:0;min-height:0;max-height:min(76%,660px);overflow:hidden;overflow-anchor:none;padding:0 18px calc(17px + env(safe-area-inset-bottom,0px));border:1px solid #e8d6f323;border-bottom:0;border-radius:23px 23px 0 0;background:linear-gradient(150deg,#28202eef,#15141bf2);box-shadow:0 -18px 65px #08050c50;-webkit-backdrop-filter:blur(var(--drama-player-blur)) saturate(var(--ui-glass-saturation,1.12));backdrop-filter:blur(var(--drama-player-blur)) saturate(var(--ui-glass-saturation,1.12));pointer-events:auto;animation:drama-sheet-in .24s cubic-bezier(.2,.7,.3,1);}
.drama-player-sheet:before {content:"";display:block;flex:0 0 4px;width:32px;height:4px;margin:9px auto 7px;border-radius:99px;background:#c6b9d334;}
.drama-player-sheet-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;min-height:47px;padding:5px 0 12px;}
.drama-player-sheet-heading :is(h2,h3,strong) {margin:0;color:#faf1fb;font-size:17px;line-height:1.5;font-weight:600;}
.drama-player-sheet-close {display:grid;place-items:center;flex:0 0 44px;min-width:44px;min-height:44px;margin-right:-6px;border:0;border-radius:50%;background:transparent;color:#c3b8ce!important;font-size:17px;}
/* Only this body scrolls: the sheet header and background player stay in place. */
.drama-player-sheet-body {flex:0 1 auto;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;overflow-anchor:none;overscroll-behavior:none;scroll-behavior:auto;scroll-padding-block:8px;padding:0 2px 8px;-webkit-overflow-scrolling:touch;touch-action:pan-y pinch-zoom;scrollbar-width:thin;scrollbar-color:#8c74944d transparent;}
.drama-player-series {display:flex;align-items:center;gap:12px;margin:0 0 20px;min-width:0;}
.drama-player-series>img {width:57px;height:76px;flex-shrink:0;object-fit:cover;border:1px solid #ffffff12;border-radius:8px;}
.drama-player-series>div {flex:1;min-width:0;}
.drama-player-series :is(h2,h3,strong) {font-size:15px;font-weight:550;line-height:1.5;margin:0 0 6px;overflow-wrap:anywhere;}
.drama-player-series h2 {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.drama-player-series :is(p,small) {font-size:11px;line-height:1.5;color:#b8aabb;margin:0;}
.drama-player-series .drama-player-heat {margin-top:4px;}
.drama-player-series>button {flex-shrink:0;min-width:44px;min-height:44px;max-width:35%;padding:7px 11px;border:1px solid #edb1d344;border-radius:99px;background:#e58ab416;color:#f4bed9;font-size:11px;overflow-wrap:anywhere;}
.drama-player-summary {min-width:0;margin:0 0 14px;}
.drama-player-summary h3 {margin:0 0 5px;color:#e9ddeb;font-size:12px;font-weight:550;line-height:1.6;}
.drama-player-summary-text {display:block;margin:0;color:#c4b7cd;font-size:12px;line-height:1.75;white-space:pre-line;overflow-wrap:anywhere;}
.drama-player-summary-text.is-collapsible:not(.is-expanded) {display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.drama-player-summary-toggle {display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin:0 0 0 -8px;padding:6px 8px;border:0;border-radius:8px;background:transparent;color:#efb5d4;font-size:11px;line-height:1.5;}
.drama-player-episode-grid-host {min-width:0;}
.drama-player-episodes {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px 8px;padding:1px 0 9px;}
.drama-player-episode {position:relative;display:grid;place-items:center;min-width:0;min-height:44px;aspect-ratio:1.05;padding:7px 2px;border:1px solid #b29abb1f;border-radius:8px;background:#b6a1c00c;color:#eee4f1;font-size:14px;font-weight:500;line-height:1.25;transition:background .15s,border-color .15s;}
.drama-player-episode:is(.is-current,[aria-current="true"]) {color:#ffcee4;border-color:#f3a8ca9c;background:linear-gradient(135deg,#cb6d9b2d,#9271c733);box-shadow:inset 0 0 0 1px #fac4de0a,0 0 12px #cb6d9b0c;}
.drama-player-episode[data-locked="true"] {color:#bdb1c6;}
.drama-player-episode-badge {position:absolute;right:-1px;top:-1px;display:flex;align-items:center;justify-content:center;min-width:18px;height:14px;padding:1px 4px;border:1px solid #f4bcd333;border-radius:0 7px 0 5px;background:#65334ee8;color:#ffd5e4;font-size:7px;font-weight:650;line-height:1;}
.drama-player-episode[data-access="coin"] .drama-player-episode-badge {background:#4f375fe8;border-color:#c4b3ec33;color:#ead5ff;}
.drama-player-speeds {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:6px 0 16px;}
.drama-player-speed {min-height:44px;padding:10px 5px;border:1px solid #ffffff17;border-radius:10px;background:#ffffff07;color:#eee1f3;font-size:13px;}
.drama-player-speed[aria-pressed="true"] {border-color:#f2b0d17d;background:#ce83b32b;color:#ffd7e9;}

/* Root-owned actual entitlement DOM. All numbers/benefits come from the accepted quote. */
.drama-access-overlay {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;min-height:100%;padding:24px 22px;color:#fff4fb;}
.drama-vip-card {position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:360px;padding:31px 23px 24px;border:1px solid #ecc7e069;border-radius:21px;background:radial-gradient(ellipse at 92% 0,#b396ed45,transparent 58%),radial-gradient(ellipse at 0 100%,#ee8cba2b,transparent 62%),linear-gradient(140deg,#322539e8,#211b2aee);box-shadow:inset 0 1px #fff4fb29,0 20px 60px #0b071040;-webkit-backdrop-filter:blur(var(--ui-glass-blur,13px));backdrop-filter:blur(var(--ui-glass-blur,13px));text-align:center;}
.drama-vip-card:before {content:"";position:absolute;z-index:-1;inset:-60% -35% auto;height:200px;transform:rotate(-15deg);background:linear-gradient(transparent,#ffe3f214,transparent);pointer-events:none;}
.drama-vip-card :is(h2,h3) {margin:5px 0 13px;color:#ffe1ef;font-size:24px;font-weight:650;line-height:1.35;letter-spacing:-.035em;}
.drama-vip-card>p {font-size:12px;line-height:1.8;color:#d9c8df;margin:8px 0 17px;}
.drama-vip-card .primary-button,.drama-unlock-sheet .primary-button {display:flex;align-items:center;justify-content:center;min-height:46px;width:100%;padding:12px 16px;border:1px solid #f9c6df66;border-radius:999px;background:linear-gradient(110deg,#f0a0c0,#c5a3e8);color:#30203b;font-size:13px;font-weight:650;box-shadow:0 5px 22px #df99c125;}
.drama-vip-benefits {display:grid;gap:9px;padding:12px 0 20px;text-align:left;color:#e8daee;font-size:11px;line-height:1.6;}
.drama-access-close {display:grid;place-items:center;min-height:40px;min-width:40px;padding:8px;border:1px solid #ffffff52;border-radius:50%;background:#21192542;color:#fff8fc;font-size:19px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.drama-unlock-sheet {padding:6px 3px 12px;color:#efe3f5;}
.drama-unlock-sheet :is(h2,h3) {margin:0 0 12px;font-size:21px;line-height:1.4;font-weight:650;}
.drama-unlock-sheet>p {margin:10px 0;color:#bcb0c9;font-size:12px;line-height:1.8;}
.drama-unlock-price {display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:20px 0 10px;padding:16px 0;border-top:1px solid #ffffff0e;border-bottom:1px solid #ffffff0e;color:#eadcec;font-size:12px;}
.drama-unlock-price>strong {color:#ffc8e1;font-size:27px;line-height:1.3;font-weight:600;}
.drama-unlock-sheet .quiet-button {min-height:42px;color:#d4bddf;font-size:12px;}
.drama-unlock-sheet .drama-error {font-size:11px;color:#ffb6ca;line-height:1.7;}
:is(.drama-player,.drama-feed-summary,.drama-access-overlay,.drama-unlock-sheet) :is(button,a,input):focus-visible {outline:2px solid #e4bbff;outline-offset:3px;}
@keyframes drama-sheet-in {from{opacity:.25;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:350px) {.drama-player-sheet{padding-left:14px;padding-right:14px}.drama-player-episodes{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px 6px}.drama-player-episode{font-size:13px;min-height:44px}.drama-feed-title,.drama-feed-summary>h2{font-size:20px}.drama-vip-card{padding:26px 19px 21px}}
@media (max-height:500px) {
 .drama-player-sheet {max-height:calc(100% - env(safe-area-inset-top,0px) - 8px);padding-bottom:max(8px,env(safe-area-inset-bottom,0px));}
 .drama-player-sheet:before {margin-top:6px;margin-bottom:3px;}
 .drama-player-sheet-heading {min-height:44px;padding-top:0;padding-bottom:4px;}
 .drama-player-series {margin-bottom:12px;}
 .drama-player-episodes {grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:8px;}
 .drama-player-episode {aspect-ratio:auto;}
}
@media (prefers-reduced-motion:reduce) {.drama-player *,.drama-feed-summary * {animation:none!important;transition:none!important;}}
/* UE029 actual range is the input itself, not an input inside a wrapper. */
input.drama-player-progress {display:block;width:calc(100% - 28px);height:18px;margin:0;padding:0;border:0;background:transparent;-webkit-appearance:none;appearance:none;accent-color:#edb6d0;}
input.drama-player-progress::-webkit-slider-runnable-track {height:2px;border-radius:999px;background:#ffffff38;}
input.drama-player-progress::-webkit-slider-thumb {-webkit-appearance:none;appearance:none;width:8px;height:8px;margin-top:-3px;border:0;border-radius:50%;background:#f4c1d8;}
input.drama-player-progress::-moz-range-track {height:2px;border-radius:999px;background:#ffffff38;}
input.drama-player-progress::-moz-range-progress {height:2px;background:#f2bad3;}
input.drama-player-progress::-moz-range-thumb {width:7px;height:7px;border:0;border-radius:50%;background:#f4c1d8;}
.drama-player-heading .drama-player-current {display:block;margin-top:3px;color:#e3d6eb;font-size:10px;line-height:1.5;}
.drama-player-sheet-heading>[data-drama-player-action="close-panel"] {display:grid;place-items:center;flex:0 0 44px;min-width:44px;min-height:44px;margin-right:-6px;padding:8px;border:0;border-radius:50%;background:transparent;color:#c3b8ce;font-size:20px;}
.has-drama-player .phone,.phone.has-drama-player {--feed-media-top:0px;--feed-media-bottom:0px;--feed-framed-top:0px;--feed-framed-bottom:0px;--feed-media-offset-y:0px;}
.has-drama-player .phone #mediaLayer.media-layer,.phone.has-drama-player #mediaLayer.media-layer {top:0;bottom:0;left:0;right:0;max-height:none;}
.has-drama-player .phone #mediaLayer.media-layer.framed,.phone.has-drama-player #mediaLayer.media-layer.framed {border-radius:0;}
.has-drama-player :is(#playback,#demoBadge) {display:none!important;}
.has-drama-player[data-drama-player-mode="immersive"] #caption {bottom:calc(90px + env(safe-area-inset-bottom,0px));translate:none;}
.has-drama-player[data-drama-player-mode="immersive"] #actionRail {bottom:calc(97px + env(safe-area-inset-bottom,0px));}

/* Root029 entitlement panels: reuse the one global sheet and preserve its close button. */
.bottom-sheet.drama-unlock-sheet {padding:21px 21px calc(22px + env(safe-area-inset-bottom,0px));border:1px solid #ead4ee28;border-bottom:0;border-radius:24px 24px 0 0;background:linear-gradient(145deg,#2c2435ed,#17141fee);color:#f5e7f5;-webkit-backdrop-filter:blur(var(--ui-glass-blur,13px)) saturate(var(--ui-glass-saturation,1.12));backdrop-filter:blur(var(--ui-glass-blur,13px)) saturate(var(--ui-glass-saturation,1.12));}
.bottom-sheet.drama-unlock-sheet>header {min-height:35px;margin-bottom:15px;}
.bottom-sheet.drama-unlock-sheet>header small {display:none;}
.bottom-sheet.drama-unlock-sheet>header h2 {font-size:17px;line-height:1.5;margin:0;color:#f7e8f6;}
.drama-unlock-hero {display:flex;align-items:center;gap:14px;margin:0 0 20px;min-width:0;}
.drama-unlock-hero>img {display:block;width:63px;height:84px;flex-shrink:0;object-fit:cover;border:1px solid #ffffff14;border-radius:8px;}
.drama-unlock-copy {flex:1;min-width:0;}
.drama-unlock-copy :is(h2,h3) {margin:0 0 5px;font-size:17px;line-height:1.5;overflow-wrap:anywhere;}
.drama-unlock-copy p {margin:3px 0;color:#bdaecb;font-size:11px;line-height:1.6;}
.drama-unlock-copy>strong {display:inline-flex;margin-top:5px;padding:3px 8px;border:1px solid #dcb6e237;border-radius:6px;background:#bc7bce12;color:#e6c2ef;font-size:11px;line-height:1.5;font-weight:500;}
.drama-unlock-prices {display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;padding:18px 0 12px;border-top:1px solid #ffffff0e;color:#c3b2cf;font-size:12px;}
.drama-unlock-prices :is(strong,b) {color:#ffcee5;font-size:26px;line-height:1.3;font-weight:600;}
.drama-unlock-prices :is(s,del,small) {color:#9f8eac;font-size:11px;}
.drama-unlock-balance {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 17px!important;color:#bcaac8!important;font-size:11px!important;line-height:1.7;}
.drama-unlock-actions {display:flex;gap:10px;margin:14px 0 5px;}
.drama-unlock-actions>button {flex:1;min-width:0;min-height:45px;padding:11px 12px;border:1px solid #c4a2d338;border-radius:999px;background:#ae8cc610;color:#ead1f5;font-size:12px;line-height:1.5;font-weight:550;}
.drama-unlock-actions>button:is(.primary-button,[data-drama-confirm]),.drama-vip-card .drama-unlock-actions>button:last-child {border-color:#ffd0e54d;background:linear-gradient(110deg,#f3a7c3,#c6a5e8);color:#35203d;box-shadow:0 4px 18px #e192c01f;}
.drama-unlock-actions>button:disabled {opacity:.45;}
.bottom-sheet.drama-vip-modal {top:50%;bottom:auto;left:23px;right:23px;width:auto;max-height:calc(100% - 140px);padding:0;transform:translateY(-50%);border:0;border-radius:22px;background:transparent;box-shadow:none;overflow:visible;animation:drama-vip-in .28s cubic-bezier(.2,.85,.25,1.05);}
.bottom-sheet.drama-vip-modal>header {position:absolute;inset:auto 0 -65px;display:flex;justify-content:center;pointer-events:none;}
.bottom-sheet.drama-vip-modal>header>div {display:none;}
.bottom-sheet.drama-vip-modal #closeSheet {display:grid;place-items:center;width:38px;height:38px;min-width:38px;min-height:38px;padding:8px;border:1px solid #ffffff66;border-radius:50%;background:#21162c4d;color:#fff5fb;pointer-events:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.bottom-sheet.drama-vip-modal #closeSheet .icon {width:17px;height:17px;}
.bottom-sheet.drama-vip-modal .sheet-body {padding:0;border-radius:22px;overflow:auto;}
.bottom-sheet.drama-vip-modal .drama-vip-card {max-width:none;padding:0 22px 25px;}
.drama-vip-banner {margin:0 -22px 24px;padding:16px 19px;border-bottom:1px solid #ffe0f326;background:linear-gradient(110deg,#f3abc333,#b999e92b);color:#ffe0ed;font-size:16px;line-height:1.5;font-weight:650;letter-spacing:.06em;text-align:left;}
.drama-vip-banner:before {content:"✦";display:inline-block;margin-right:8px;color:#f9c9df;font-size:17px;}
.drama-vip-card .drama-vip-perks {display:flex;justify-content:center;flex-wrap:wrap;gap:14px 19px;padding:14px 0 20px;color:#e7cde9;font-size:10px;line-height:1.6;}
.drama-vip-perks>* {display:flex;align-items:center;flex-direction:column;gap:7px;}
.drama-vip-perks .icon {width:24px;height:24px;color:#ebb8d9;}
.drama-vip-card .drama-unlock-actions {margin:3px 0 0;}
.bottom-sheet.drama-comments-sheet {border:1px solid #dec2eb26;border-bottom:0;background:linear-gradient(150deg,#282030ef,#17141eee);-webkit-backdrop-filter:blur(var(--ui-glass-blur,13px));backdrop-filter:blur(var(--ui-glass-blur,13px));}
@keyframes drama-vip-in {from{opacity:.2;transform:translateY(calc(-50% + 12px)) scale(.98)}to{opacity:1;transform:translateY(-50%) scale(1)}}
@media (prefers-reduced-motion:reduce) {.bottom-sheet.drama-vip-modal {animation:none;}}
/* Caption buttons inherit zero padding in the base player; scope the whole-drama CTA explicitly. */
.media-caption .drama-feed-watch {display:flex;min-height:32px;padding:5px 12px;border:1px solid #eebbd644;border-radius:8px;font-size:12px;line-height:1.5;pointer-events:auto;text-align:left;}
.media-caption .drama-feed-description {display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin:0 0 7px;color:#eee4ef;font-size:12px;line-height:1.5;}
.media-caption .drama-feed-title {font-size:20px;line-height:1.25;font-weight:650;margin:0 0 6px;}
.drama-player-top>[data-drama-player-action="speed"] {min-width:43px;min-height:34px;padding:7px 9px;border:1px solid #ffffff1f;border-radius:999px;background:#20182a4d;color:#f6e7fa;font-size:11px;line-height:1.4;-webkit-backdrop-filter:blur(var(--drama-player-blur));backdrop-filter:blur(var(--drama-player-blur));}
.drama-player-episode-badge:empty {display:none;}
/* Center with layout rather than transform so root's shared WAAPI enter/leave stays composable. */
.bottom-sheet.drama-vip-modal {top:0;bottom:0;height:max-content;margin-top:auto;margin-bottom:auto;transform:none;}
@keyframes drama-vip-in {from{opacity:.2;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.drama-feed-watch:has(>span:last-child):after {content:none;}
.drama-feed-tags>[data-tone="4"] {border-color:#afd9ca40;background:#447c7340;color:#caeee2;}
.drama-feed-tags>[data-tone="5"] {border-color:#f4bdce40;background:#a54d7540;color:#ffd7e7;}

/* Paused playback retains one direct, reachable play action. */
.drama-player-center-play {position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);display:grid;place-items:center;width:72px;height:72px;border:1px solid #ffffff99;border-radius:50%;background:#15151b33;color:#fff;font-size:34px;padding:0 0 0 5px;pointer-events:auto;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);}
.drama-player-center-play[hidden] {display:none;}
.has-drama-player .drama-feed-summary :is(.drama-feed-tags,.drama-feed-meta,.drama-feed-watch) {display:none;}
/* Reference-style discussion sheet: open rows and a compact, fixed composer. */
.drama-comments-sheet .sheet-body {display:flex;flex-direction:column;overflow:auto;max-height:min(75dvh,720px);}
.drama-comments-sheet .drama-comments {display:flex;flex-direction:column;min-height:40dvh;}
.drama-comments-sheet .drama-comments-heading h2 {color:#fff;font-size:17px;}
.drama-comments-sheet .drama-comments-heading span {color:#c8bdd1;font-size:12px;}
.drama-comments-sheet .drama-comments-list {gap:22px;}
.drama-comments-sheet .drama-comment {position:relative;padding:7px 0 12px;border:0;border-radius:0;background:transparent;}
.drama-comments-sheet .drama-comment-avatar {width:36px;height:36px;flex-basis:36px;background:#66556f;color:#eee;}
.drama-comments-sheet .drama-comment-by>strong {color:#c9bcd3;font-size:13px;font-weight:500;}
.drama-comments-sheet .drama-comment-by>time {color:#9f92aa;font-size:10px;}
.drama-comments-sheet .drama-comment-text {margin-left:45px;color:#fff;font-size:14px;line-height:1.8;}
.drama-comments-sheet .drama-comment-status {margin-left:45px;background:#7f61802e;color:#e8d5e8;}
.drama-comments-sheet .drama-comments-empty {color:#bdb1c9;}
.drama-comments-sheet .drama-comments-notice {color:#b1a4bc;}
.drama-comments-sheet .drama-comments-actions .quiet-button {background:#ffffff09;color:#c4b6cf;}
.drama-comments-sheet .drama-comment-form {position:sticky;bottom:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px 9px;margin-top:auto;padding-top:16px;background:linear-gradient(transparent,#211b29 18px);}
.drama-comments-sheet .drama-comment-form>label {font-size:0;}
.drama-comments-sheet .drama-comment-form textarea {min-height:44px;height:44px;max-height:110px;margin:0;padding:10px 14px;border-radius:22px;resize:vertical;background:#ffffff0b;color:#fff;font-size:14px;}
.drama-comments-sheet .drama-comment-form textarea::placeholder {color:#ab9db7;}
.drama-comments-sheet .drama-comment-form>.drama-comments-notice {grid-column:1/-1;grid-row:2;margin:0;font-size:10px;}
.drama-comments-sheet .drama-comment-form>.primary-button {grid-column:2;grid-row:1;min-height:44px;margin:0;padding:10px 8px;border:0;background:transparent;box-shadow:none;color:#ecd5ff;font-size:13px;}

/* Longer translated labels need a full selection row on narrow phones. */
@media (max-width:350px) {
 html:not(:lang(zh)) .drama-player-toolbar,html:not(:lang(zh)) .drama-player-clean-tools {display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;}
 html:not(:lang(zh)) :is(.drama-player-toolbar,.drama-player-clean-tools)>[data-drama-player-action="episodes"] {grid-column:1/-1;width:100%;}
 html:not(:lang(zh)) :is(.drama-player-toolbar,.drama-player-clean-tools)>[data-drama-player-action="comments"] {grid-column:2;}
 html:not(:lang(zh)) :is(.drama-player-toolbar,.drama-player-clean-tools)>:is([data-drama-player-action="clean"],[data-drama-player-action="exit-clean"]) {grid-column:3;}
 html:not(:lang(zh)) input.drama-player-progress {bottom:calc(124px + env(safe-area-inset-bottom,0px));}
 html:not(:lang(zh)) .has-drama-player[data-drama-player-mode="immersive"] #caption {bottom:calc(142px + env(safe-area-inset-bottom,0px));}
 html:not(:lang(zh)) .has-drama-player[data-drama-player-mode="immersive"] #actionRail {bottom:calc(149px + env(safe-area-inset-bottom,0px));}
 html:not(:lang(zh)) .drama-player-status {bottom:162px;}
}
