/* R151: edge-to-edge portrait and compact channel row; the existing menu and other tabs retain their CSS. */
body.dq-reels-open{overflow:hidden;background:#000;overscroll-behavior:none}
.shell.dq-reels-shell{position:fixed;top:var(--reels-top,0px);left:0;right:0;width:100%;max-width:none;height:var(--reels-height,100dvh);min-height:0!important;padding:0!important;background:#000!important;box-shadow:none!important;overflow:hidden;--reels-overlay-gap:clamp(8px,2vw,12px);--reels-menu-gap:calc(min(calc(100vw - 16px),430px)*.26123 + 5px + env(safe-area-inset-bottom,0px));--reels-side:max(10px,env(safe-area-inset-right,0px))}
.dq-reels-shell>.dq-wallpaper,.dq-reels-shell>.hero,.dq-reels-shell>.sync-notice{display:none!important}
.dq-reels-heading{position:absolute;top:max(12px,env(safe-area-inset-top,0px));left:max(14px,env(safe-area-inset-left,0px));z-index:4;color:#fff;pointer-events:none;text-shadow:0 1px 5px #000}
.dq-reels-heading h1{margin:0;font:700 clamp(23px,6vw,28px)/1.1 'DQ Sans',sans-serif}
.dq-reels-heading p{display:none}
.dq-reels-feed{position:absolute;inset:0 0 var(--reels-menu-gap);overflow-x:hidden;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior-y:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;touch-action:pan-y}
.dq-reels-feed::-webkit-scrollbar{display:none}
.dq-reels-card{position:relative;height:100%;min-height:100%;width:100%;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always;color:#fff;background:#000}
.dq-reels-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;background:#000}
.dq-reels-video.is-landscape{object-fit:contain}
.dq-reels-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0005,transparent 18%,transparent 55%,#0006 80%,#000b)}
.dq-reels-play{position:absolute;inset:0;background:transparent;border:0;color:white;display:grid;place-items:center;padding:0;z-index:1}
.dq-reels-play-symbol{font:44px sans-serif;text-shadow:0 2px 12px #000}
.dq-reels-shell [hidden]{display:none!important}
.dq-reels-actions{position:absolute;right:var(--reels-side);bottom:calc(var(--reels-overlay-gap) + 48px);z-index:3;display:flex;flex-direction:column;align-items:center;gap:10px;width:48px}
.dq-reels-action{width:46px;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:2px;border:0;background:transparent;color:#fff;filter:drop-shadow(0 1px 3px #000);-webkit-tap-highlight-color:transparent}
.dq-reels-action svg{width:28px;height:28px;fill:none;stroke:#fff;stroke-width:1.65;stroke-linejoin:round;stroke-linecap:round}
.dq-reels-action.is-active svg{fill:#fff;stroke:#fff}
.dq-reels-action small{font:600 12px/1.2 'DQ Sans',sans-serif;color:#fff}
.dq-reels-action:disabled,.dq-reels-follow:disabled{opacity:.6}
.dq-reels-caption{position:absolute;z-index:2;left:max(12px,env(safe-area-inset-left,0px));right:calc(var(--reels-side) + 48px + 10px);bottom:var(--reels-overlay-gap);text-shadow:0 1px 4px #000;pointer-events:none;font-family:'DQ Sans',sans-serif}
.dq-reels-author-row{display:flex;align-items:center;gap:6px;min-height:32px;min-width:0;pointer-events:auto}
.dq-reels-avatar{display:block;flex:none;width:32px;height:32px;border:1px solid #fff8;border-radius:50%;object-fit:cover;background:#17232c}
.dq-reels-author{flex:0 1 auto;min-width:0;font-size:14px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dq-reels-follow{flex:none;min-height:28px;padding:4px 8px;border:1px solid #ffffff88;border-radius:7px;background:#0003;color:#fff;font:600 11px/1.2 'DQ Sans',sans-serif;white-space:nowrap;-webkit-tap-highlight-color:transparent}
.dq-reels-follow.is-active{background:#fff;color:#14202a;border-color:#fff;text-shadow:none}
.dq-reels-copy{display:flex;align-items:center;gap:5px;min-width:0;margin-top:2px;min-height:32px}
.dq-reels-caption-text{flex:1;min-width:0;margin:0;font-size:13px;line-height:1.5;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.dq-reels-more{flex:none;min-height:32px;padding:3px 0 3px 3px;border:0;background:transparent;color:#fff;font:600 12px/1.3 'DQ Sans',sans-serif;pointer-events:auto;text-shadow:0 1px 4px #000}
.dq-reels-caption.is-expanded .dq-reels-copy{align-items:flex-end}
.dq-reels-caption.is-expanded .dq-reels-caption-text{max-height:140px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;overscroll-behavior:contain;pointer-events:auto;background:#0006;border-radius:8px;padding:6px}
.dq-reels-progress{position:absolute;left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));bottom:1px;height:2px;z-index:3;background:#ffffff40;pointer-events:none}
.dq-reels-progress>span{display:block;width:var(--reels-progress,0%);height:100%;background:#fff}
.dq-reels-shell button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.dq-reels-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:70px 24px;color:#fff;text-align:center;font-size:14px}
.dq-reels-empty h2{font-size:21px}.dq-reels-empty button,.dq-reels-video-error button{background:#fff;color:#111;border:0;padding:10px 16px;border-radius:20px}
.dq-reels-video-error{position:absolute;z-index:4;top:42%;left:20px;right:70px;text-align:center;padding:16px;background:#000c;border-radius:12px;color:#fff;font-size:14px}
.dq-reels-video-error button{display:block;margin:10px auto 0}
.dq-reels-notice{position:absolute;z-index:35;left:14px;right:14px;bottom:calc(var(--reels-menu-gap) + 14px);padding:12px 14px;border-radius:12px;background:#222;color:#fff;font:13px/1.4 sans-serif;text-align:center}
.dq-reels-comments{position:absolute;z-index:30;inset:auto 0 var(--reels-menu-gap);height:min(65%,580px);display:flex;flex-direction:column;border-radius:18px 18px 0 0;background:#121212;color:#fff;padding:12px 14px;font:14px/1.4 'DQ Sans',sans-serif;box-shadow:0 -12px 40px #0008}
.dq-reels-comments header{display:flex;justify-content:space-between;align-items:center;flex:none}.dq-reels-comments h2{font-size:17px}.dq-reels-comments button{border:0;border-radius:16px;background:#fff;color:#111;padding:8px 12px;min-height:40px}
.dq-reels-comments header button{background:transparent;color:white;font-size:26px}
.dq-reels-comment-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-block:10px}
.dq-reels-comment{padding:10px 0;border-bottom:1px solid #ffffff18;overflow-wrap:anywhere}.dq-reels-comment p{white-space:pre-wrap}.dq-reels-comment time{font-size:10px;color:#bbb}.dq-reels-comment strong{font-size:12px}
.dq-reels-comments form{display:flex;gap:8px;align-items:center;flex:none}.dq-reels-comments textarea{flex:1;min-width:0;border:1px solid #555;background:#222;border-radius:12px;padding:10px;color:#fff;font:14px/1.3 sans-serif;resize:none}.dq-reels-comment-notice{min-height:18px;font-size:11px;padding-top:4px;color:#ddd}
.dq-reels-tight .dq-reels-actions{gap:4px;bottom:calc(var(--reels-overlay-gap) + 38px)}
.dq-reels-tight .dq-reels-action{min-height:44px;gap:2px}
.dq-reels-tight .dq-reels-action svg{width:25px;height:25px}
.dq-reels-tight .dq-reels-action small{font-size:11px;line-height:1.1}
.dq-reels-tiny .dq-reels-actions{gap:2px;bottom:var(--reels-overlay-gap)}
.dq-reels-tiny .dq-reels-caption.is-expanded .dq-reels-caption-text{max-height:65px}
@media(max-width:340px){.dq-reels-author{font-size:12px}.dq-reels-author-row{gap:5px}.dq-reels-follow{font-size:11px;padding-inline:7px}.dq-reels-avatar{width:30px;height:30px}.dq-reels-caption-text,.dq-reels-more{font-size:12px}}

/* R152: align to the visible menu artwork, with touch targets inside safe areas. */
.shell.dq-reels-shell{overflow:clip;--reels-side:calc(2px + env(safe-area-inset-right,0px));--reels-overlay-gap:8px}
.dq-reels-shell .bottom-nav.dq-menu-r142{position:absolute!important}
.dq-reels-actions{right:var(--reels-side);bottom:12px;gap:7px;width:48px}
.dq-reels-action{width:48px;min-height:54px;gap:3px;border-radius:18px;cursor:pointer;touch-action:manipulation;transition:transform .18s ease,background-color .18s ease}
.dq-reels-action svg{width:30px;height:30px;transition:fill .2s ease,stroke .2s ease,transform .2s ease}
.dq-reels-action:active{transform:scale(.88);background:#ffffff25}
.dq-reels-action.is-active[data-reels-action="liked"] svg{fill:#ff6578;stroke:#ff6578;filter:drop-shadow(0 0 5px #fa597866)}
.dq-reels-action.is-active[data-reels-action="saved"] svg{fill:#ffe0a0;stroke:#ffe0a0}
.dq-reels-action[aria-busy="true"]{opacity:.8}
.dq-reels-caption{bottom:12px;right:calc(var(--reels-side) + 58px)}
.dq-reels-follow{min-height:44px;border-radius:12px;background:#ffffff12}
.dq-reels-progress{left:max(8px,env(safe-area-inset-left,0px));right:max(8px,env(safe-area-inset-right,0px));bottom:0;height:3px;border-radius:3px;overflow:hidden}
.dq-reels-progress>span{background:#ffe6b4;box-shadow:0 0 5px #e5b663}
.dq-reels-tight .dq-reels-actions{bottom:8px;gap:3px}
.dq-reels-tiny .dq-reels-actions{bottom:5px;gap:1px}
.dq-reels-comments{border:1px solid #ffffff16;background:linear-gradient(155deg,#17202b,#0f1218);padding:14px 16px;border-radius:24px 24px 0 0}
.dq-reels-comments header button{min-width:44px;min-height:44px}
.dq-reels-comments form button{min-height:44px;background:#ffe0a0;color:#20202b;border-radius:14px}
.dq-reels-comments textarea:focus{outline:2px solid #ffe0a0;outline-offset:1px}
.dq-reels-share{height:auto;max-height:calc(100% - var(--reels-menu-gap) - 16px);overflow-y:auto;overscroll-behavior:contain}
.dq-share-intro{margin:8px 0 16px;color:#c9cdd4;font-size:13px}
.dq-share-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.dq-share-grid a,.dq-share-grid button{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:58px;border:1px solid #ffffff18;border-radius:16px;background:#ffffff0b;color:#fff;padding:10px;text-align:center;text-decoration:none;font:600 13px/1.4 'DQ Sans',sans-serif;touch-action:manipulation}
.dq-share-grid :is(a,button):active{background:#ffffff24;transform:scale(.97)}
.dq-share-grid small{display:block;margin-top:3px;font-size:10px;font-weight:400;color:#c7ccd3}
.dq-share-help{font-size:11px;line-height:1.5;color:#b6beca;margin-top:14px}
.dq-share-link{width:100%;min-height:44px;margin-top:8px;padding:10px;background:#080d15;color:#cbd4df;border:1px solid #ffffff20;border-radius:10px;font-size:12px}
@media (hover:hover){.dq-reels-action:hover{background:#ffffff18}.dq-share-grid :is(a,button):hover{background:#ffffff18}}
@media (orientation:landscape) and (max-height:500px){.dq-reels-actions{flex-direction:row;width:auto;gap:4px;bottom:12px}.dq-reels-caption{right:220px}.dq-reels-author-row{min-height:44px}.dq-reels-copy{min-height:20px}.dq-reels-share{max-height:calc(100% - var(--reels-menu-gap) - 6px)}}
@media (prefers-reduced-motion:reduce){.dq-reels-action,.dq-reels-action svg{transition:none}}
