/* A persistent dock below the workspace, including while native decisions are open. */
.reviewer-intro{display:flex;gap:30px;align-items:center;padding:26px 0 30px;border-bottom:1px solid var(--line);margin-bottom:28px}.reviewer-intro>div{flex:1}.reviewer-intro h2{font-size:23px}.reviewer-intro p{font-size:15px;max-width:68ch;margin-top:9px}.reviewer-intro .help{font-size:13px}
body.reviewer-mode{height:100dvh;overflow:hidden;padding-bottom:0}.reviewer-mode #app{height:calc(100dvh - var(--reviewer-space,115px));overflow-y:auto;overscroll-behavior:contain}.reviewer-mode .shell{min-height:100%}.reviewer-mode .sidebar{height:calc(100dvh - var(--reviewer-space,115px));bottom:auto}.reviewer-mode .public-page{min-height:0}
#reviewer-layer{position:relative;z-index:var(--z-toast)}.reviewer-player{position:fixed;inset:auto 0 0;background:var(--surface);color:var(--ink);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px)}.reviewer-progress{height:3px;background:var(--mint)}.reviewer-progress>span{display:block;height:100%;background:var(--primary);transition:width 160ms ease-out}.reviewer-content{max-width:1440px;min-height:112px;margin:auto;padding:12px 24px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 24px}.reviewer-copy{min-width:0}.reviewer-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:11px;line-height:1.4;color:var(--muted);margin-bottom:3px}.reviewer-meta strong{font-weight:600;color:var(--primary)}.reviewer-meta .reviewer-state{border-left:1px solid var(--line);padding-left:10px}.reviewer-player h2{font-size:16px;line-height:1.3;letter-spacing:-.015em;margin:0;text-wrap:pretty}.reviewer-description{font-size:14px;line-height:1.45;max-width:78ch;margin:4px 0 0}.reviewer-controls{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.reviewer-controls .btn{min-height:36px;padding:8px 11px;font-size:13px;line-height:1.35}.reviewer-controls .icon-only{min-width:36px;width:36px;padding:8px}.reviewer-controls .btn svg{height:16px;width:16px}.reviewer-controls select{width:72px;min-height:36px;font:inherit;font-size:13px;padding:7px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}.reviewer-audio-warning{font-size:12px;color:var(--red);margin-top:4px}.reviewer-player.is-minimized h2{display:none}.reviewer-player.is-minimized .reviewer-description{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.reviewer-player.is-minimized .reviewer-content{min-height:64px;padding-block:8px}.reviewer-player.is-minimized .reviewer-meta{margin-bottom:0}
.reviewer-target{outline:3px solid oklch(.62 .13 75)!important;outline-offset:5px!important;scroll-margin-block:100px 24px}.reviewer-target.reviewer-press{background:var(--primary-hover)!important;transform:translateY(1px)}.reviewer-pointer{position:fixed;width:30px;height:35px;pointer-events:none;transform:translate(-3px,-3px);z-index:var(--z-toast)}.reviewer-pointer svg{width:30px;height:35px;fill:var(--primary);stroke:white;stroke-width:2px;filter:drop-shadow(0 1px 2px rgb(12 29 19 / .2))}.reviewer-pointer.is-clicking:after{content:'';position:absolute;width:36px;height:36px;border:3px solid oklch(.62 .13 75);border-radius:50%;left:-17px;top:-17px;animation:reviewer-click 320ms ease-out both}
/* The native top-layer host spans the viewport; the visible card and dock are siblings.
   This retains native focus containment while the dock stays in the same fixed position. */
.reviewer-mode #review-dialog[open]{position:fixed;inset:0;margin:0;padding:0;width:100dvw;height:100dvh;max-width:none;max-height:none;overflow:hidden;background:transparent;border:0;border-radius:0;box-shadow:none}
.reviewer-mode #review-dialog>.dialog-body{position:absolute;left:50%;top:calc((100dvh - var(--reviewer-space,115px))/2);transform:translate(-50%,-50%);width:min(600px,calc(100dvw - 28px));max-height:calc(100dvh - var(--reviewer-space,115px) - 24px);overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px}
.reviewer-mode #review-dialog>.dialog-body>h2{font-size:19px;margin-bottom:10px}.reviewer-mode #review-dialog>.dialog-body>.detail-list{margin-block:12px}.reviewer-mode #review-dialog>.dialog-body>.inline-notice{margin-block:12px}.reviewer-mode #review-dialog>.dialog-body>p.help{font-size:11px;margin-block:10px}.reviewer-mode #review-dialog>.dialog-body>.actions{margin-top:14px}
.reviewer-session:not(.reviewer-mode){padding-bottom:80px}.reviewer-sandbox{position:fixed;inset:auto 0 0;display:flex;justify-content:center;align-items:center;gap:18px;background:var(--primary);color:white;padding:10px 20px;font-size:13px}.reviewer-sandbox+.reviewer-pointer{display:none}
@keyframes reviewer-click{from{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(1.35)}}
@media(max-width:1100px){.reviewer-content{grid-template-columns:1fr;gap:10px;min-height:142px}.reviewer-controls{justify-content:flex-start}}
@media(max-width:1000px){.reviewer-intro{display:block}.reviewer-intro>.btn{margin-top:20px}.reviewer-pointer{display:none}.reviewer-content{padding:10px 16px}.reviewer-controls .btn{padding-inline:9px}}
@media(max-width:600px){.reviewer-content{gap:9px;padding:10px 14px;min-height:210px}.reviewer-copy{min-height:92px}.reviewer-controls{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;align-items:stretch}.reviewer-controls>.btn,.reviewer-controls>select{width:100%;min-height:40px;padding-inline:5px;justify-content:center}.reviewer-controls [data-reviewer="play"],.reviewer-controls [data-reviewer="next"],.reviewer-controls [data-reviewer="voice"],.reviewer-controls #reviewer-speed,.reviewer-controls [data-reviewer="restart"]{grid-column:span 2}.reviewer-controls .icon-only{width:100%;min-width:0}.reviewer-controls [data-reviewer="explore"]{grid-column:span 2}.reviewer-controls [data-reviewer="exit"]:not(.icon-only){grid-column:span 2;white-space:normal}.reviewer-meta{font-size:11px}.reviewer-player h2{font-size:15px}.reviewer-description{font-size:13px;line-height:1.4}.reviewer-target{outline-offset:3px!important}.reviewer-sandbox{display:block;font-size:12px}.reviewer-sandbox .btn{margin-top:8px}.reviewer-player.is-minimized .reviewer-content{min-height:140px;gap:5px}.reviewer-player.is-minimized .reviewer-copy{min-height:0}.reviewer-mode #review-dialog>.dialog-body{padding:16px}.reviewer-mode #review-dialog>.dialog-body>h2{font-size:17px}}
@media(max-height:500px) and (max-width:600px){.reviewer-content{min-height:156px;padding-block:6px;gap:5px}.reviewer-copy{min-height:48px}.reviewer-player h2{display:none}.reviewer-description{font-size:12px;line-height:1.3}}
@media(prefers-reduced-motion:reduce){.reviewer-progress>span{transition:none}.reviewer-pointer.is-clicking:after{animation:none;opacity:.6}.reviewer-target.reviewer-press{transform:none}}
