
.aq-data-note{font:12px/1.4 'Segoe UI',sans-serif;color:#b4c9c3;text-align:center;margin:7px 0}
#aq-chat-toggle{position:fixed;right:16px;bottom:16px;z-index:70;border:2px solid #e8ca77;border-radius:32px;background:linear-gradient(#314e47,#0a2722);color:#ffe7a5;font:bold 17px 'Segoe UI';min-width:76px;min-height:52px;box-shadow:0 0 18px #c99e4544;cursor:pointer}
#aq-chat-panel{position:fixed;right:16px;bottom:80px;width:min(380px,calc(100vw - 24px));height:min(540px,calc(100dvh - 105px));z-index:80;background:#081311;border:2px solid #ceab5c;border-radius:15px;overflow:hidden;box-shadow:0 12px 50px #000a}
#aq-chat-panel[hidden]{display:none}#aq-chat-panel header{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:#f2dfa3;font:15px 'Segoe UI'}#aq-chat-close{background:transparent;border:0;color:inherit;font-size:30px;cursor:pointer}#aq-chat-panel iframe{border:0;width:100%;height:calc(100% - 48px);background:#081311}
#aq-optimization{max-width:620px;color:#f1e6c8;background:#102019;border:2px solid #d5b369;border-radius:16px;padding:26px}#aq-optimization p{line-height:1.65}#aq-optimization::backdrop{background:#000b}
#aq-optimization button{padding:12px 20px;min-height:46px;border:1px solid #ffe5a0;border-radius:8px;color:#202018;background:linear-gradient(#ffefba,#bd9644);font-weight:bold;font-size:16px;cursor:pointer}
#skip-preview{display:none!important}
#cancel-randomize{color:#ffe7a5;min-height:44px;cursor:pointer}#cancel-randomize[hidden]{display:none}#randomize[aria-busy="true"]{opacity:.7}#random-feedback{overflow-wrap:anywhere}
.aq-support-body{height:calc(100% - 48px);overflow:auto;padding:12px;color:#e7e5cf;font:15px/1.45 'Segoe UI',sans-serif}.aq-support-body p{margin:4px 0 10px}.aq-support-body small{color:#b1c6bb}#aq-support-messages{height:180px;overflow:auto;border:1px solid #395047;border-radius:9px;padding:7px;margin:10px 0}#aq-support-messages p{padding:7px;background:#122a22;border-radius:6px;white-space:pre-wrap;overflow-wrap:anywhere}#aq-support-compose textarea{box-sizing:border-box;width:100%;font:16px/1.4 'Segoe UI';background:#102019;color:#fff5d4;border:1px solid #6e7155;border-radius:7px;padding:9px}#aq-support-send{min-height:44px;padding:9px 16px;border:1px solid #ffe5a0;border-radius:8px;background:linear-gradient(#f0d791,#b99343);color:#1b211a;font:bold 16px 'Segoe UI';cursor:pointer}#aq-support-send:disabled{opacity:.6}#aq-support-status{font-size:13px;margin-top:7px}
@media(min-width:1200px){#workspace #results-screen{overflow-y:auto;overscroll-behavior:contain;display:block}#workspace #results-screen[hidden]{display:none}#workspace #results-screen .mini-chart{height:150px;min-height:150px;flex:none}#workspace #results-screen .results-footer{padding-bottom:15px}}
/* Compact desktop opening: keep the actions visible; the full equity chart
   remains directly below the frame in the comprehensive report. */
@media(min-width:1200px) and (max-width:1599px){#workspace #results-screen .mini-chart{display:none}}
@media(min-width:1200px){#workspace #choose-screen{overflow-y:auto;overscroll-behavior:contain}#workspace .strategy-grid{flex:none;grid-template-rows:repeat(2,minmax(70px,auto));gap:8px}#workspace .strategy-card{min-height:70px;padding:9px 11px;gap:0;justify-content:center}#workspace .strategy-title-row{gap:8px;grid-template-columns:38px minmax(0,1fr)}#workspace .strategy-symbol{width:38px;height:38px}#workspace .strategy-card strong{font-size:clamp(19px,1.65vw,28px);line-height:1.08}#workspace .strategy-card small{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.aq-data-note{font-size:11px;margin:5px 0;line-height:1.2}}
@media(max-width:600px){#aq-chat-toggle{right:9px;bottom:10px;min-height:48px;font-size:15px}#aq-chat-panel{right:10px;bottom:67px}.aq-data-note{font-size:11px}}

/* Mobile cabinet paint order: controls < static rails < animated artwork.
   The still PNG has an opaque black center, so mask that center out instead
   of placing an opaque rectangle over the controls. The bottom boundary is
   the existing renderer's (1370 - 100) / 1572, not a new artwork crop. */
@media(max-width:1199px){
  .aq-chat-dock{display:flex;justify-content:flex-end;width:100%;max-width:680px;box-sizing:border-box;margin:0 auto;padding:0 9px 8px}
  .aq-chat-dock #aq-chat-toggle{position:static;margin:0;flex:none;z-index:4}
  #workspace #approved-mobile-frame{
    z-index:2;
    -webkit-mask-image:linear-gradient(#000,#000),linear-gradient(#000,#000),linear-gradient(#000,#000),linear-gradient(#000,#000);
    mask-image:linear-gradient(#000,#000),linear-gradient(#000,#000),linear-gradient(#000,#000),linear-gradient(#000,#000);
    -webkit-mask-size:100% 13%,8.2% 100%,8.2% 100%,100% calc(302 / 1572 * 100%);
    mask-size:100% 13%,8.2% 100%,8.2% 100%,100% calc(302 / 1572 * 100%);
    -webkit-mask-position:top,left,right,bottom;
    mask-position:top,left,right,bottom;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
  }
  #workspace #portrait-motion:not([hidden]),#workspace #desktop-top:not([hidden]){z-index:3}
  #workspace .aperture{z-index:1;bottom:calc(302 / 1572 * 100%);padding-bottom:16px}
}
