/* Embedding overrides for Blake's tools: fit them in .app-frame, tighten to RevEng look, make them usable on phones.
   Tool logic is untouched; this is layout/visual only. */
.app-frame .shell{height:100%}
.app-frame input,.app-frame select,.app-frame textarea,.app-frame button{font-family:'Montserrat',sans-serif}
.app-frame .topbar{border-bottom:3px solid #4CBB17}
.app-frame .topbar-logo,.app-frame .tlogo{font-weight:800;letter-spacing:-.02em}
.app-frame .topbar-logo span,.app-frame .tlogo span{color:#C9A227}
/* small caps card labels: gold text was low-contrast on white -> ink text with a gold tick */
.app-frame .ctitle,.app-frame .ct{color:#0A0A0A!important;font-weight:700;letter-spacing:.2em}
.app-frame .ctitle::before,.app-frame .ct::before{content:"";display:inline-block;width:14px;height:2px;background:#C9A227;vertical-align:middle;margin-right:8px}
.app-frame .sidebar-lbl{color:#8A8A8A}
.app-frame .rep-nm{color:#A8A8A8}
.app-frame .tab.active,.app-frame .tab.a{border-bottom-color:#1E8E3E}
.app-frame .tab.alert-tab.a{border-bottom-color:#c1121f}
.app-frame .rep-item.active{border-left-color:#4CBB17}
.app-frame .ptab.a{color:#fff}
.app-frame .card,.app-frame .kpi{box-shadow:0 1px 0 rgba(0,0,0,.03)}
.app-frame .tc-input,.app-frame .tinp{color:#E6E6E6}
.app-frame .tc-input::placeholder,.app-frame .tinp::placeholder{color:#8A8A8A}
.app-frame .topbar input[type=date]{color:#CFCFCF!important;color-scheme:dark}
.app-frame .btn-outline{color:#CFCFCF}
.app-frame .content{-webkit-overflow-scrolling:touch}
.app-frame .sumtbl,.app-frame .ctbl{min-width:560px}
.app-frame .card:has(> .sumtbl),.app-frame .card:has(> .ctbl){overflow-x:auto}
@media (max-width:900px){
  .app-frame .shell,.app-frame .body,.app-frame .content{height:auto;overflow:visible}
  .app-frame .topbar{flex-wrap:wrap;gap:10px;padding:12px 14px}
  .app-frame .topbar-right,.app-frame .tr{margin-left:0;width:100%;flex-wrap:wrap}
  .app-frame .tc-input,.app-frame .tinp{width:150px}
  .app-frame .body{flex-direction:column}
  .app-frame .sidebar{width:100%;flex-direction:row;align-items:center;overflow-x:auto;padding:8px 8px;gap:4px}
  .app-frame .sidebar-lbl{display:none}
  .app-frame .rep-item{border-left:none;border-bottom:3px solid transparent;flex-shrink:0;padding:8px 10px}
  .app-frame .rep-item.active{border-bottom-color:#4CBB17}
  .app-frame .btn-add{margin:0 4px;flex-shrink:0;padding:8px 10px}
  .app-frame .rep-hdr{flex-direction:column;padding:16px}
  .app-frame .rep-hdr > div:last-child{flex-wrap:wrap}
  .app-frame .panel,.app-frame .content{padding-left:14px;padding-right:14px}
  .app-frame .tabs{padding:0 8px}
  .app-frame .g2,.app-frame .g3,.app-frame .g4,.app-frame .swot-grid,.app-frame .kpi-grid{grid-template-columns:1fr!important}
  .app-frame .score-grid{grid-template-columns:repeat(2,1fr)}
  .app-frame .funnel-left{width:110px}
  .app-frame .funnel-right{width:44px}
  .app-frame [style*="grid-template-columns"],.app-frame [style*="gridTemplateColumns"]{grid-template-columns:1fr!important}
}
@media print{
  .app-frame .shell,.app-frame .body,.app-frame .content{height:auto!important;overflow:visible!important}
}
