.summary-widget {position:fixed;right:22px;bottom:20px;z-index:20;width:min(450px,calc(100% - 32px));}
.summary-panel {display:flex;flex-direction:column;max-height:min(750px,calc(100dvh - 96px));background:#1c2027;border:1px solid #3d4b60;border-top:3px solid #609cff;border-radius:16px;box-shadow:0 16px 65px #0009;overflow:hidden;}
.summary-widget [hidden] {display:none!important;}
.summary-header {display:flex;align-items:center;justify-content:space-between;padding:17px 20px 12px;gap:12px;}
.summary-header h2 {font-size:17px;display:flex;align-items:center;gap:10px;}
.summary-header h2 span {color:#8db8ff;font-size:21px;}
.summary-close {border:0;background:transparent;padding:0 4px;font-size:25px;line-height:1;color:#a4adbb;}
.summary-tabs {display:flex;margin:0 20px 8px;padding:4px;background:#12161d;border-radius:8px;}
.summary-tabs button {flex:1;border:0;background:transparent;color:#aab4c3;font-size:13px;padding:9px 10px;}
.summary-tabs button[aria-selected=true] {background:#2b3544;color:#a6c8ff;box-shadow:0 2px 7px #0003;}
.summary-scroll {overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:8px 20px 19px;line-height:1.75;}
.review-lead h3 {font-size:20px;line-height:1.5;letter-spacing:.1px;margin:0 0 10px;}
.review-lead>p {font-size:13px;color:#aeb9c9;line-height:1.85;}
.review-metrics {display:grid;grid-template-columns:1.5fr 1fr 1fr;margin:12px 0 8px;gap:5px;}
.review-metrics button {display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:3px 5px;border:0;border-radius:0;background:transparent;text-align:left;}
.review-metrics strong {font-size:26px;font-weight:600;line-height:1.2;color:#9bc1ff;}
.review-metrics small {font-size:11px;font-weight:400;margin-left:4px;}
.review-metrics span {font-size:10px;color:#c0ccde;}
.review-scope {font-size:10px;color:#8794a7;margin:7px 0 10px;}
.review-finding {border-top:1px solid #343d4a;padding:10px 0;}
.review-finding h4,.review-advice h4 {margin:0 0 7px;font-size:14px;color:#edf2fa;}
.review-finding>p,.review-advice p {font-size:12px;color:#bcc7d7;line-height:1.85;margin:0;}
.review-evidence {margin-top:9px;font-size:11px;}
.review-evidence>p {font-size:12px;color:#bcc7d7;line-height:1.85;margin:10px 0;}
.review-evidence>summary,.review-advice details>summary {color:#8ab6fb;cursor:pointer;width:fit-content;}
.review-quotes blockquote {border-left:2px solid #4e6e9c;padding-left:11px;margin:13px 0;}
.review-quotes p {font-size:12px;color:#d4ddec;line-height:1.85;}
.review-quotes footer {font-size:10px;color:#8798af;margin-top:6px;}
.review-quotes button,.review-video {border:0;background:transparent;padding:0;color:#88b6ff;font-size:11px;}
.review-quotes button {display:block;margin-top:3px;}
.review-advice {display:flex;gap:12px;border-top:1px solid #343d4a;padding:20px 0;}
.review-advice:first-of-type {margin-top:20px;}
.review-number {font-size:14px;color:#84aef0;font-variant-numeric:tabular-nums;padding-top:1px;}
.review-advice>div {flex:1;min-width:0;}
.review-advice details {font-size:12px;margin-top:10px;}
.review-advice details p {margin:10px 0;}
.review-limit {border-top:1px solid #343d4a;color:#8592a6;font-size:10px;line-height:1.8;padding-top:12px;}
.summary-launcher {margin-left:auto;display:flex;align-items:center;gap:8px;box-shadow:0 8px 28px #0007;border:1px solid #537eb7;border-radius:24px;padding:12px 18px;background:#26374f;color:#d6e6ff;font-size:13px;}
.summary-launcher span {font-size:19px;}
@media(max-width:760px) {
  .summary-widget {right:10px;bottom:max(10px,env(safe-area-inset-bottom));width:calc(100% - 20px);}
  .summary-panel {max-height:min(60dvh,calc(100dvh - 480px));border-radius:14px;}
  .summary-header {padding:13px 16px 9px;}
  .summary-header h2 {font-size:16px;}
  .summary-tabs {margin:0 16px 5px;}
  .summary-scroll {padding:9px 16px 16px;}
  .review-lead h3 {font-size:18px;}
  .review-lead>p {font-size:12px;}
  .review-finding>p,.review-advice p {font-size:13px;}
  .review-metrics span,.review-scope,.review-limit {font-size:11px;}
  .summary-close {min-width:30px;min-height:30px;}
}
@media(max-height:550px) and (max-width:760px) {
  .summary-panel {max-height:80dvh;}
}
