/* Amor ao Quadrado — personalizador "app". Regras: NovoSite/docs/APRENDIZADOS-PERSONALIZADOR.md */
.fm-aq-app{--aq-ground:#f3f0eb;--aq-panel:#fff;--aq-ink:#1d2322;--aq-muted:#667170;--aq-line:#e4dfd7;--aq-accent:#d6284f;--aq-accent-ink:#fff;--aq-soft:#fdeef1;--aq-chip:#f7f5f1;--aq-warn:#a86a12;--aq-warn-soft:#fbf1e1;--aq-edge:#2b2926;--aq-shadow:0 1px 2px rgba(20,30,28,.06),0 8px 24px rgba(20,30,28,.08);color:var(--aq-ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;margin:0 0 16px}
.fm-aq-app.fm-personalizador--white-border{--aq-edge:#cfc9bf}
.fm-aq-app *{box-sizing:border-box}
.fm-aq-app [hidden]{display:none!important}
.fm-aq-app button{font:inherit;color:inherit;cursor:pointer;margin:0;text-transform:none;letter-spacing:normal;line-height:1.25;min-height:0;box-shadow:none}
.fm-aq-app button:focus-visible,.fm-aq-app input:focus-visible{outline:2px solid var(--aq-accent);outline-offset:2px}
.fm-aq-app svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* Botão principal */
.fm-aq-app .fm-aq-app__cta{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--aq-accent);color:var(--aq-accent-ink);border:0;border-radius:14px;padding:14px 16px;font-size:15px;font-weight:600;white-space:nowrap}
.fm-aq-app .fm-aq-app__cta:hover{background:#b91f42}
.fm-aq-app .fm-aq-app__cta:disabled{opacity:.55;cursor:default}
.fm-aq-app .fm-aq-app__btn{border:1px solid var(--aq-line);background:var(--aq-panel);border-radius:12px;padding:12px 14px;font-size:14px;font-weight:500}

/* Fora do tema novo: botão na página e camada em tela cheia */
.fm-aq-app__launch{display:grid;gap:8px;max-width:440px}
.fm-aq-app__launch .fm-aq-app__cta{width:100%;padding:16px 18px;font-size:16px}
.fm-aq-app__launch p{margin:0;font-size:12.5px;color:var(--aq-muted);text-align:center}
.fm-aq-app__layer{display:none}
/* A camada vai para o fim do <body> (fm-aq-app--portal) e fica acima de qualquer barra do tema ou do WordPress */
.fm-aq-app--portal{margin:0}
.fm-aq-app--portal .fm-aq-app__launch{display:none}
.fm-aq-app.is-open .fm-aq-app__layer{display:grid;position:fixed;inset:0;z-index:2147483000}
html.fm-aq-app-locked,html.fm-aq-app-locked body{overflow:hidden}

/* Dentro do diálogo do tema novo: ocupa todo o corpo do diálogo */
dialog .fm-aq-app.fm-aq-app{margin:0;height:100%;width:100%;max-width:none;display:flex;flex-direction:column;gap:0;padding:0}
dialog .fm-aq-app>[data-fm-aq-mount]{flex:1;min-height:0;display:flex;flex-direction:column}
dialog .fm-aq-app .fm-aq-app__launch,dialog .fm-aq-app .fm-aq-app__top{display:none}
dialog .fm-aq-app .fm-aq-app__layer{display:grid;position:relative;flex:1;min-height:0;grid-template-rows:minmax(0,1fr) auto auto}
/* App */
.fm-aq-app__layer{background:var(--aq-ground);grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto;overflow:hidden}
.fm-aq-app__top{display:flex;align-items:center;gap:8px;padding:calc(8px + env(safe-area-inset-top,0px)) 12px 8px;background:var(--aq-panel);border-bottom:1px solid var(--aq-line)}
.fm-aq-app__top strong{flex:1;text-align:center;font-size:15px;font-weight:600}
.fm-aq-app__top span{width:38px}
.fm-aq-app .fm-aq-app__icon{width:38px;height:38px;border-radius:50%;border:0;background:transparent;display:grid;place-items:center;padding:0}

/* Prévia */
.fm-aq-app__stage{position:relative;overflow:hidden;background:var(--aq-ground);touch-action:none;min-height:0}
.fm-aq-app__grid{position:absolute;inset:0}
.fm-aq-app .fm-aq-app__tile{position:absolute;padding:0;border:0;overflow:hidden;background:#fff;border-radius:0;box-shadow:1px 1px 0 var(--aq-edge),0 6px 14px -6px rgba(0,0,0,.35);transition:left .3s,top .3s,width .3s,height .3s}
.fm-aq-app .fm-aq-app__tile.is-selected{outline:3px solid var(--aq-accent);outline-offset:2px}
.fm-aq-app__photo{position:absolute;inset:var(--inset,0);overflow:hidden;background:#ecebe8}
.fm-aq-app__photo img{position:absolute;max-width:none!important;max-height:none!important;margin:0;padding:0;border:0;border-radius:0;transform-origin:center;pointer-events:none;user-select:none;-webkit-user-drag:none}
.fm-aq-app .is-bw img{filter:grayscale(1) contrast(1.06)}
.fm-aq-app__empty{position:absolute;inset:0;border:1.5px dashed #b9b2a6;background:#f6f3ee;display:grid;place-items:center;color:#8a847a;font-size:12px;text-align:center;line-height:1.2}
.fm-aq-app__empty b{display:block;font-size:18px;font-weight:500}
.fm-aq-app__empty small{display:block;font-size:10.5px}
.fm-aq-app__spin{position:absolute;inset:0;display:grid;place-items:center;background:rgba(255,255,255,.72);font-size:11px;color:#555}
.fm-aq-app__colors{position:absolute;top:10px;left:12px;z-index:8;display:flex;background:var(--aq-panel);border:1px solid var(--aq-line);border-radius:999px;padding:3px;box-shadow:var(--aq-shadow)}
.fm-aq-app .fm-aq-app__colors button{border:0;background:transparent;padding:6px 10px 6px 7px;border-radius:999px;font-size:12.5px;font-weight:500;color:var(--aq-muted);display:flex;align-items:center;gap:6px}
.fm-aq-app .fm-aq-app__colors button[aria-pressed="true"]{background:var(--aq-soft);color:var(--aq-ink);font-weight:600;box-shadow:inset 0 0 0 1.5px var(--aq-accent)}
.fm-aq-app__sw{width:14px;height:14px;border-radius:50%;display:block;flex:none}
.fm-aq-app__sw--c{background:conic-gradient(#f2a03d,#e0506a,#6b7fd7,#4db38a,#f2a03d)}
.fm-aq-app__sw--b{background:linear-gradient(90deg,#1d1d1d 50%,#e2e2e2 50%);box-shadow:inset 0 0 0 1px #9a9a9a}
/* Vista "Na parede": luz suave, rodapé, piso, sofá de 1,8 m e cotas na mesma escala */
.fm-aq-app__views{position:absolute;top:10px;right:12px;z-index:8;display:flex;background:var(--aq-panel);border:1px solid var(--aq-line);border-radius:999px;padding:3px;box-shadow:var(--aq-shadow)}
.fm-aq-app .fm-aq-app__views button{border:0;background:transparent;padding:6px 12px;border-radius:999px;font-size:12.5px;font-weight:500;color:var(--aq-muted)}
.fm-aq-app .fm-aq-app__views button[aria-pressed="true"]{background:var(--aq-accent);color:var(--aq-accent-ink)}
.fm-aq-app__scene{position:absolute;inset:0;transition:background .35s;--wall:#ebe6df;--wall-light:#faf7f2;--floor:#c9b294;--floor-dark:#b39a7b;--base:#f7f4ef;--sofa:#d2c9bd;--sofa-dark:#bfb4a6;--sofa-line:rgba(70,55,40,.10)}
.fm-aq-app__scene.is-wall{background:radial-gradient(ellipse 58% 48% at 50% var(--light-y,38%),var(--wall-light),transparent 72%),linear-gradient(180deg,var(--wall-light) -30%,var(--wall) 55%)}
.fm-aq-app__floor,.fm-aq-app__sofa,.fm-aq-app__walllabel,.fm-aq-app__dim{display:none}
.fm-aq-app__scene.is-wall .fm-aq-app__floor,.fm-aq-app__scene.is-wall .fm-aq-app__sofa,.fm-aq-app__scene.is-wall .fm-aq-app__walllabel,.fm-aq-app__scene.is-wall .fm-aq-app__dim{display:block}
.fm-aq-app__floor{position:absolute;left:0;right:0;bottom:0;background:repeating-linear-gradient(90deg,transparent 0 calc(var(--plank,60px) - 1px),rgba(0,0,0,.06) calc(var(--plank,60px) - 1px) var(--plank,60px)),linear-gradient(180deg,var(--floor),var(--floor-dark))}
.fm-aq-app__floor::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:var(--base-h,10px);background:var(--base);box-shadow:0 -1px 0 rgba(0,0,0,.06),0 -6px 12px -8px rgba(0,0,0,.18)}
.fm-aq-app__sofa{position:absolute;filter:drop-shadow(0 -4px 18px rgba(40,30,20,.10))}
.fm-aq-app__sofa i{position:absolute;display:block;background:linear-gradient(180deg,var(--sofa),var(--sofa-dark));border-radius:var(--r,10px)}
.fm-aq-app__sofa .fm-aq-app__sofa-back{left:7%;right:7%;top:0;height:64%;border-radius:var(--r,10px) var(--r,10px) 4px 4px}
.fm-aq-app__sofa .fm-aq-app__sofa-back::before,.fm-aq-app__sofa .fm-aq-app__sofa-back::after{content:"";position:absolute;top:9%;bottom:14%;width:46%;border-radius:calc(var(--r,10px)*.8);background:linear-gradient(180deg,var(--sofa),var(--sofa-dark));box-shadow:inset 0 0 0 1px var(--sofa-line),0 2px 6px -2px rgba(0,0,0,.18)}
.fm-aq-app__sofa .fm-aq-app__sofa-back::before{left:3%}
.fm-aq-app__sofa .fm-aq-app__sofa-back::after{right:3%}
.fm-aq-app__sofa .fm-aq-app__sofa-arm{top:34%;height:56%;width:9%}
.fm-aq-app__sofa .fm-aq-app__sofa-arm--l{left:0}
.fm-aq-app__sofa .fm-aq-app__sofa-arm--r{right:0}
.fm-aq-app__sofa .fm-aq-app__sofa-seat{left:6%;right:6%;top:55%;height:33%;background:linear-gradient(180deg,var(--sofa) 0,var(--sofa-dark) 30%);box-shadow:inset 0 1px 0 var(--sofa-line)}
.fm-aq-app__sofa .fm-aq-app__sofa-leg{top:88%;height:12%;width:2.2%;background:#5c4a3a;border-radius:0 0 2px 2px}
.fm-aq-app__walllabel{position:absolute;left:0;right:0;bottom:10px;text-align:center;font-size:11.5px;color:var(--aq-ink);opacity:.55}
.fm-aq-app__dim{position:absolute;color:var(--aq-muted);font-size:11.5px;font-weight:500;font-variant-numeric:tabular-nums;pointer-events:none}
.fm-aq-app__dim--h{height:0;border-top:1px solid currentColor}
.fm-aq-app__dim--h::before,.fm-aq-app__dim--h::after{content:"";position:absolute;top:-4px;height:7px;border-left:1px solid currentColor}
.fm-aq-app__dim--h::before{left:0}.fm-aq-app__dim--h::after{right:0}
.fm-aq-app__dim--h span{position:absolute;left:50%;top:4px;transform:translateX(-50%);white-space:nowrap}
.fm-aq-app__dim--v{width:0;border-left:1px solid currentColor}
.fm-aq-app__dim--v::before,.fm-aq-app__dim--v::after{content:"";position:absolute;left:-4px;width:7px;border-top:1px solid currentColor}
.fm-aq-app__dim--v::before{top:0}.fm-aq-app__dim--v::after{bottom:0}
.fm-aq-app__dim--v span{position:absolute;top:50%;left:4px;transform:translateY(-50%);writing-mode:vertical-rl;white-space:nowrap}
.fm-aq-app .is-wall .fm-aq-app__tile{box-shadow:1px 1px 0 var(--aq-edge),0 calc(var(--sh,1px)*4) calc(var(--sh,1px)*8) rgba(35,25,15,.26),0 1px 2px rgba(0,0,0,.12);cursor:default;outline:0}
.fm-aq-app .is-wall .fm-aq-app__empty{border:0;background:linear-gradient(145deg,#fbfaf7,#eeeae4);color:transparent}
.fm-aq-app__optline{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-top:10px;font-size:12.5px;color:var(--aq-muted)}
.fm-aq-app__grp{display:flex;align-items:center;gap:8px}
/* Celular: Colorido / P&B / Misto ocupa o topo; Fotos / Na parede desce para o canto de baixo */
@media (max-width:520px){
  .fm-aq-app__views{top:auto;bottom:10px;right:10px}
  .fm-aq-app .fm-aq-app__hint{bottom:72px}
  .fm-aq-app__walllabel{left:12px;right:auto;bottom:16px;text-align:left;max-width:45%}
  .fm-aq-app .fm-aq-app__colors button{padding:6px 8px 6px 6px}
}
/* Misto: selo Cor / P&B em cada foto */
.fm-aq-app__sw--m{background:linear-gradient(90deg,transparent 50%,#2a2a2a 50%),conic-gradient(#f2a03d,#e0506a,#6b7fd7,#4db38a,#f2a03d)}
.fm-aq-app__cchip{position:absolute;left:4px;top:4px;z-index:2;border-radius:999px;padding:3px 6px 3px 4px;font:600 10px/1 Inter,system-ui,sans-serif;background:rgba(255,255,255,.94);color:#1d2322;box-shadow:0 1px 3px rgba(0,0,0,.25);display:flex;align-items:center;gap:4px;cursor:pointer}
.fm-aq-app__cchip::before{content:"";width:8px;height:8px;border-radius:50%;background:conic-gradient(#f2a03d,#e0506a,#6b7fd7,#4db38a,#f2a03d)}
.fm-aq-app__cchip.is-on{background:rgba(29,29,29,.9);color:#fff}
.fm-aq-app__cchip.is-on::before{background:linear-gradient(90deg,#fff 50%,#777 50%)}
/* Quadros extras */
.fm-aq-app .fm-aq-app__addtile{position:absolute;border:1.5px dashed #aaa399;border-radius:0;background:rgba(255,255,255,.55);color:#6f6c67;display:grid;place-items:center;text-align:center;font:600 11px/1.25 Inter,system-ui,sans-serif;padding:4px;transition:left .3s,top .3s,width .3s,height .3s}
.fm-aq-app__addtile b{display:block;font-size:20px;font-weight:400;line-height:1}
.fm-aq-app__qline{display:flex;gap:8px;align-items:stretch}
.fm-aq-app__qline .fm-aq-app__counts{flex:1;min-width:0}
.fm-aq-app__stepper{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border:1.5px solid var(--aq-line);border-radius:12px;padding:2px 6px;flex:none}
.fm-aq-app__stepper.is-on{border-color:var(--aq-accent);background:var(--aq-soft)}
.fm-aq-app__stepper-row{display:flex;align-items:center}
.fm-aq-app .fm-aq-app__stepper button{width:34px;height:30px;border:0;background:transparent;font-size:19px;line-height:1;border-radius:8px;padding:0}
.fm-aq-app .fm-aq-app__stepper button:disabled{opacity:.3;cursor:default}
.fm-aq-app__stepper b{min-width:2.2ch;text-align:center;font-size:15px;font-variant-numeric:tabular-nums}
.fm-aq-app__stepper small{font-size:10.5px;color:var(--aq-muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.fm-aq-app .fm-aq-app__acts .fm-aq-app__danger{color:#b3372f}
.fm-aq-app__editor{position:absolute;inset:0;background:var(--aq-ground);z-index:7;display:grid;place-items:center}
.fm-aq-app__edbox{position:relative;overflow:hidden;background:#fff;box-shadow:1.5px 1.5px 0 var(--aq-edge),0 12px 30px -10px rgba(0,0,0,.4);touch-action:none;cursor:grab}
.fm-aq-app__edbox .fm-aq-app__empty{font-size:14px}
.fm-aq-app__hint{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);z-index:9;background:var(--aq-panel);font-size:12px;padding:6px 12px;border-radius:999px;box-shadow:var(--aq-shadow);opacity:0;transition:opacity .3s;pointer-events:none;white-space:nowrap}
.fm-aq-app__hint.is-on{opacity:1}

/* Painel: nunca rola */
.fm-aq-app__panel{background:var(--aq-panel);border-top:1px solid var(--aq-line);display:flex;flex-direction:column;min-height:0}
.fm-aq-app__tabs{display:flex;padding:6px 10px 0;flex:none}
.fm-aq-app .fm-aq-app__tab{flex:1 0 auto;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:8px 6px 9px;font-size:13px;font-weight:500;color:var(--aq-muted);display:flex;align-items:center;justify-content:center;gap:6px}
.fm-aq-app .fm-aq-app__tab[aria-selected="true"]{color:var(--aq-ink);border-bottom-color:var(--aq-accent)}
.fm-aq-app__dot{width:16px;height:16px;border-radius:50%;border:1.5px solid currentColor;display:grid;place-items:center;font-size:10px;line-height:1}
.fm-aq-app__tab.is-done .fm-aq-app__dot{background:var(--aq-accent);border-color:var(--aq-accent);color:var(--aq-accent-ink)}
.fm-aq-app__body{padding:12px 16px 14px;min-height:0}
.fm-aq-app__step{display:none}
.fm-aq-app__step.is-on{display:block;animation:fm-aq-in .25s ease}
@keyframes fm-aq-in{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.fm-aq-app__step.is-on{animation:none}.fm-aq-app .fm-aq-app__tile{transition:none}}
.fm-aq-app__note{font-size:12.5px;color:var(--aq-muted);margin:8px 0 0;line-height:1.45}

.fm-aq-app__counts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fm-aq-app .fm-aq-app__counts button{border:1.5px solid var(--aq-line);border-radius:12px;background:var(--aq-panel);padding:8px 10px;text-align:left}
.fm-aq-app .fm-aq-app__counts button[aria-pressed="true"]{border-color:var(--aq-accent);background:var(--aq-soft)}
.fm-aq-app__counts b{display:block;font-size:14px;font-weight:600}
.fm-aq-app__counts span{font-size:12px;color:var(--aq-muted)}
.fm-aq-app__progress{display:flex;align-items:center;gap:10px;margin:12px 0 0;font-size:13px;color:var(--aq-muted);font-variant-numeric:tabular-nums}
.fm-aq-app__bar{flex:1;height:6px;border-radius:3px;background:var(--aq-line);overflow:hidden}
.fm-aq-app__bar i{display:block;height:100%;background:var(--aq-accent);transition:width .3s}
.fm-aq-app .fm-aq-app__switch{display:flex;gap:12px;align-items:center;border:1px solid var(--aq-line);border-radius:14px;padding:9px 12px;margin-top:10px;width:100%;text-align:left;background:var(--aq-panel)}
.fm-aq-app__tg{width:38px;height:22px;border-radius:99px;background:var(--aq-line);position:relative;flex:none;transition:background .2s}
.fm-aq-app__tg::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 2px rgba(0,0,0,.2)}
.fm-aq-app__switch[aria-checked="true"] .fm-aq-app__tg{background:var(--aq-accent)}
.fm-aq-app__switch[aria-checked="true"] .fm-aq-app__tg::after{transform:translateX(16px)}
.fm-aq-app__switch b{display:block;font-size:13.5px;font-weight:500}
.fm-aq-app__switch span span{font-size:12px;color:var(--aq-muted)}

.fm-aq-app__sizes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.fm-aq-app .fm-aq-app__size{border:1.5px solid var(--aq-line);border-radius:14px;background:var(--aq-panel);padding:8px 6px;display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center}
.fm-aq-app .fm-aq-app__size[aria-pressed="true"]{border-color:var(--aq-accent);background:var(--aq-soft)}
.fm-aq-app__box{height:44px;display:flex;align-items:flex-end;justify-content:center;margin-bottom:4px}
.fm-aq-app__box i{display:block;background:#fff;border:1.5px solid #8f8a82;box-shadow:1px 1px 0 #3a3835}
.fm-aq-app__size b{font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums}
.fm-aq-app__pr{font-size:13px;color:var(--aq-muted);font-variant-numeric:tabular-nums}
.fm-aq-app__size small{font-size:11.5px;color:var(--aq-muted);line-height:1.3}

.fm-aq-app__issues{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:6px}
.fm-aq-app__issues li{font-size:13px;background:var(--aq-warn-soft);color:var(--aq-warn);padding:8px 10px;border-radius:10px;display:flex;justify-content:space-between;gap:8px;align-items:center;margin:0}
.fm-aq-app .fm-aq-app__issues button{border:0;background:none;color:inherit;font-weight:600;text-decoration:underline;font-size:12.5px;padding:0}
.fm-aq-app__summary{border:1px solid var(--aq-line);border-radius:14px}
.fm-aq-app__summary>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:13.5px;border-top:1px solid var(--aq-line)}
.fm-aq-app__summary>div:first-child{border-top:0}
.fm-aq-app__summary>div>span:first-child{color:var(--aq-muted)}
.fm-aq-app__summary b{font-weight:500;text-align:right}
.fm-aq-app__row{display:flex;align-items:center;min-width:0}
.fm-aq-app .fm-aq-app__row>button{border:0;background:transparent;color:var(--aq-accent);font-size:12.5px;padding:2px 0 2px 8px;font-weight:500}
.fm-aq-app__seg{display:inline-flex;border:1px solid var(--aq-line);border-radius:999px;padding:2px;gap:2px}
.fm-aq-app .fm-aq-app__seg button{border:0;background:transparent;padding:4px 10px;border-radius:999px;font-size:12.5px;color:var(--aq-muted)}
.fm-aq-app .fm-aq-app__seg button[aria-pressed="true"]{background:var(--aq-soft);color:var(--aq-ink);font-weight:500}

/* Controles do editor */
.fm-aq-app__nav{display:flex;align-items:center;justify-content:space-between;gap:8px}
.fm-aq-app__nav b{font-size:15px}
.fm-aq-app .fm-aq-app__round{width:38px;height:38px;border-radius:50%;border:1px solid var(--aq-line);background:var(--aq-panel);font-size:18px;display:grid;place-items:center;flex:none;padding:0}
.fm-aq-app__zoom{display:flex;align-items:center;gap:10px;margin:10px 0}
.fm-aq-app__zoom input{flex:1;accent-color:var(--aq-accent);margin:0}
.fm-aq-app__acts{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px}
.fm-aq-app .fm-aq-app__acts button{border:1px solid var(--aq-line);background:var(--aq-panel);border-radius:12px;padding:8px 2px 7px;font-size:11.5px;font-weight:500;display:flex;flex-direction:column;align-items:center;gap:4px;line-height:1.15}
.fm-aq-app .fm-aq-app__acts button:disabled{opacity:.35;cursor:default}

/* Rodapé */
.fm-aq-app__foot{background:var(--aq-panel);border-top:1px solid var(--aq-line);padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:12px}
.fm-aq-app__total{flex:1;min-width:0}
.fm-aq-app__total b{display:block;font-size:19px;font-weight:600;font-variant-numeric:tabular-nums}
.fm-aq-app__total span{font-size:12px;color:var(--aq-muted);white-space:nowrap}
.fm-aq-app__foot .fm-aq-app__cta{flex:0 1 auto;min-width:min(54%,240px)}

/* Avisos rápidos no topo, nunca sobre o painel */
.fm-aq-app__toast{position:absolute;left:50%;top:calc(8px + env(safe-area-inset-top,0px));transform:translate(-50%,-12px);z-index:30;background:var(--aq-ink);color:#fff;padding:10px 16px;border-radius:12px;font-size:13.5px;opacity:0;transition:.25s;pointer-events:none;max-width:calc(100% - 32px);text-align:center}
.fm-aq-app__toast.is-on{opacity:1;transform:translate(-50%,0)}
.fm-aq-app__sheet{position:absolute;inset:0;z-index:40;background:rgba(10,14,13,.45);display:flex;align-items:flex-end;justify-content:center}
.fm-aq-app__sheet-box{background:var(--aq-panel);width:100%;max-width:460px;border-radius:20px 20px 0 0;padding:20px 16px calc(18px + env(safe-area-inset-bottom,0px));display:grid;gap:10px}
.fm-aq-app__sheet-box h3{font-size:18px;margin:0}
.fm-aq-app__sheet-box p{margin:0 0 4px;color:var(--aq-muted);font-size:13.5px;line-height:1.45}

/* Esconde o que o app substitui no formulário */
form.cart:has(.fm-aq-app.is-ready) .single_add_to_cart_button,
form.cart:has(.fm-aq-app.is-ready) .quantity{display:none!important}

@media (min-width:900px){
  .fm-aq-app__layer{grid-template-columns:minmax(0,1fr) 420px;grid-template-rows:auto minmax(0,1fr) auto}
  .fm-aq-app__top{grid-column:1 / -1}
  .fm-aq-app__stage{grid-row:2 / 4}
  .fm-aq-app__panel{grid-column:2;grid-row:2;border-top:0;border-left:1px solid var(--aq-line)}
  .fm-aq-app__foot{grid-column:2;grid-row:3;border-left:1px solid var(--aq-line)}
  .fm-aq-app__body{padding:16px 20px 20px}
  .fm-aq-app__tabs{padding:12px 14px 0}
  .fm-aq-app__colors{top:14px;left:16px}
  .fm-aq-app.is-open .fm-aq-app__layer{inset:3vh 3vw;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
  dialog .fm-aq-app__layer{grid-template-rows:minmax(0,1fr) auto}
  dialog .fm-aq-app__stage{grid-row:1 / 3}
  dialog .fm-aq-app__panel{grid-row:1}
  dialog .fm-aq-app__foot{grid-row:2}
  .fm-aq-app__sheet{align-items:center}
  .fm-aq-app__sheet-box{border-radius:20px}
}

/* ==========================================================================
   Rodada 3 (P5): só o Amor ao Quadrado.
   Este arquivo é a base de outras 7 famílias (collage, collections, desk, kit, magnet,
   text-art, trio). Por isso nenhuma linha acima mudou e toda regra abaixo começa por
   .fm-personalizador--amor-quadrado (R18), a classe que acompanha a camada no modo antigo.
   ========================================================================== */
/* Tokens da rodada 2 (R4) e texto de aviso (R17) */
.fm-aq-app.fm-personalizador--amor-quadrado{--aq-ink:#252a28;--aq-muted:#5f6662;--aq-line:#e0dcd5;--aq-warn:#87560d}
/* Botão principal em pílula (R2), também o "Sim, fazer N quadros" da folha */
.fm-personalizador--amor-quadrado .fm-aq-app__cta{border-radius:999px}
.fm-personalizador--amor-quadrado .fm-aq-app__cta:hover:not(:disabled){background:#bf2246}
/* Mínimo de 12 px (R1); o que já tinha 12 px ou mais fica como está */
.fm-personalizador--amor-quadrado .fm-aq-app__dot,
.fm-personalizador--amor-quadrado .fm-aq-app__stepper small,
.fm-personalizador--amor-quadrado .fm-aq-app__empty small,
.fm-personalizador--amor-quadrado .fm-aq-app__cchip,
.fm-personalizador--amor-quadrado .fm-aq-app__spin,
.fm-personalizador--amor-quadrado .fm-aq-app__addtile,
.fm-personalizador--amor-quadrado .fm-aq-app__dim,
.fm-personalizador--amor-quadrado .fm-aq-app__size small,
.fm-personalizador--amor-quadrado .fm-aq-app__acts button{font-size:12px}
/* Contraste: número do quadro vazio (5,3:1 sobre #f6f3ee) */
.fm-personalizador--amor-quadrado .fm-aq-app__empty{color:#6b655b}
/* A dica some na hora (sem texto meio transparente); só aparece com transição */
.fm-personalizador--amor-quadrado .fm-aq-app__hint{transition:none}
.fm-personalizador--amor-quadrado .fm-aq-app__hint.is-on{transition:opacity .3s}

/* Rodapé com Pix e 6x (R8): total cheio + 2 linhas de 16 px, no máximo 34 px */
.fm-personalizador--amor-quadrado .fm-aq-app__foot.has-pix{gap:10px}
.fm-personalizador--amor-quadrado .fm-aq-app__foot.has-pix .fm-aq-app__total{flex:1 0 auto}
.fm-personalizador--amor-quadrado .fm-aq-app__foot.has-pix .fm-aq-app__total>b{line-height:1.1}
.fm-personalizador--amor-quadrado .fm-aq-app__foot.has-pix [data-installments]{display:block;line-height:16px;letter-spacing:-.01em}
.fm-personalizador--amor-quadrado .fm-aq-app__foot.has-pix [data-installments]>span{display:block;white-space:nowrap}
.fm-personalizador--amor-quadrado .fm-aq-app__foot.has-pix [data-installments] b{display:inline;font-size:12px;font-weight:600;color:var(--aq-ink)}
@media (min-width:375px){
  .fm-personalizador--amor-quadrado .fm-aq-app__foot.has-pix .fm-aq-app__cta{min-width:min(50%,240px)}
}
/* Reserva: preço longo (ex.: 30 quadros) quebra o texto do botão sem aumentar a altura (47 px) */
@media (min-width:375px) and (max-width:899px){
  .fm-personalizador--amor-quadrado .fm-aq-app__foot.has-pix .fm-aq-app__cta{white-space:normal;text-wrap:balance;line-height:1.15;padding-top:6px;padding-bottom:6px;min-height:47px}
}
/* Celular pequeno (R13), nesta ordem: sai o ícone, sai o "ou", o botão pode quebrar em 2 linhas */
@media (max-width:374px){
  .fm-personalizador--amor-quadrado .fm-aq-app__foot{gap:10px;padding-left:14px;padding-right:14px}
  .fm-personalizador--amor-quadrado .fm-aq-app__foot .fm-aq-app__cta svg{display:none}
  .fm-personalizador--amor-quadrado .fm-aq-app__total .ou{display:none}
  .fm-personalizador--amor-quadrado .fm-aq-app__foot .fm-aq-app__cta{white-space:normal;text-wrap:balance;line-height:1.15;min-width:0;flex:0 1 auto;padding-top:6px;padding-bottom:6px;min-height:48px}
  .fm-personalizador--amor-quadrado .fm-aq-app__total{flex:1 0 auto}
}

/* Passo Fotos: o tamanho aparece junto da contagem, numa linha só; a barra encolhe */
.fm-personalizador--amor-quadrado [data-progress-text]{white-space:nowrap}
.fm-personalizador--amor-quadrado .fm-aq-app__bar{min-width:40px}

/* Na parede: régua de uma peça à esquerda do 1º quadro e legenda em 2 linhas (12 px, opacidade 1) */
.fm-personalizador--amor-quadrado .fm-aq-app__dim--t span{left:auto;right:4px}
/* halo da cor da parede: as cotas continuam legíveis quando encostam na sombra do sofá (palco baixo) */
.fm-personalizador--amor-quadrado .fm-aq-app__dim span{text-shadow:0 0 2px var(--wall-light),0 0 5px var(--wall-light)}
.fm-personalizador--amor-quadrado .fm-aq-app__walllabel{font-size:12px;line-height:16px;opacity:1;color:var(--aq-ink)}
@media (max-width:520px){
  .fm-personalizador--amor-quadrado .fm-aq-app__walllabel{left:0;right:0;bottom:10px;text-align:center;max-width:none}
  /* Fotos / Na parede sobe só na parede, para não cobrir a legenda */
  .fm-personalizador--amor-quadrado .fm-aq-app__stage--wall .fm-aq-app__views{bottom:52px}
  /* Palco baixo (ex.: 360×640): legenda à esquerda, em até 3 linhas, e o seletor fica no canto de baixo */
  .fm-personalizador--amor-quadrado .fm-aq-app__stage--wall.fm-aq-app__stage--tight .fm-aq-app__views{bottom:10px}
  .fm-personalizador--amor-quadrado .fm-aq-app__stage--tight .fm-aq-app__walllabel{left:12px;right:auto;text-align:left;max-width:calc(100% - 186px)}
}
.fm-personalizador--amor-quadrado [data-wall-piece]>span{white-space:nowrap}

/* Selo Cor / P&B só em quadro de 56 px ou mais (R13) */
.fm-personalizador--amor-quadrado .fm-aq-app__grid--small .fm-aq-app__cchip{display:none}

/* Alvos de toque de 44 px sem mudar o desenho (R11): área invisível centrada no controle */
.fm-personalizador--amor-quadrado .fm-aq-app__colors button,
.fm-personalizador--amor-quadrado .fm-aq-app__views button,
.fm-personalizador--amor-quadrado .fm-aq-app__stepper button,
.fm-personalizador--amor-quadrado .fm-aq-app__icon,
.fm-personalizador--amor-quadrado .fm-aq-app__round,
.fm-personalizador--amor-quadrado .fm-aq-app__seg button,
.fm-personalizador--amor-quadrado .fm-aq-app__tab,
.fm-personalizador--amor-quadrado .fm-aq-app__issues button{position:relative}
.fm-personalizador--amor-quadrado .fm-aq-app__stepper button::before,
.fm-personalizador--amor-quadrado .fm-aq-app__icon::before,
.fm-personalizador--amor-quadrado .fm-aq-app__round::before{content:"";position:absolute;left:50%;top:50%;width:max(100%,46px);height:max(100%,46px);transform:translate(-50%,-50%)}
/* Controles colados lado a lado: a área cresce só na vertical */
.fm-personalizador--amor-quadrado .fm-aq-app__colors button::before,
.fm-personalizador--amor-quadrado .fm-aq-app__views button::before,
.fm-personalizador--amor-quadrado .fm-aq-app__seg button::before,
.fm-personalizador--amor-quadrado .fm-aq-app__tab::before{content:"";position:absolute;left:0;top:50%;width:100%;height:max(100%,46px);transform:translateY(-50%)}
/* a aba tem 2 px de borda embaixo: a área fica centrada na aba inteira */
.fm-personalizador--amor-quadrado .fm-aq-app__tab::before{top:calc(50% + 1px)}
.fm-personalizador--amor-quadrado .fm-aq-app__seg button{min-width:46px}
/* Formato e Espaço entre quadros em duas linhas (12 quadros): as áreas das duas linhas não se cruzam */
.fm-personalizador--amor-quadrado .fm-aq-app__optline{row-gap:16px}
.fm-personalizador--amor-quadrado .fm-aq-app__issues button::before{content:"";position:absolute;left:-8px;right:-8px;top:50%;height:46px;transform:translateY(-50%)}
/* "Editar" da Revisão: a linha inteira é o alvo */
.fm-personalizador--amor-quadrado .fm-aq-app__summary>div{position:relative}
.fm-personalizador--amor-quadrado .fm-aq-app__row>button::before{content:"";position:absolute;inset:0}
@media (max-width:899px) and (min-height:700px){
  .fm-personalizador--amor-quadrado .fm-aq-app__summary>div{min-height:47px}
}
/* Celular baixo (até 699 px de altura): linhas um pouco mais justas para o palco ficar com 180 px ou mais (R13) */
@media (max-width:899px) and (max-height:699px){
  .fm-personalizador--amor-quadrado .fm-aq-app__summary>div{padding-top:7px;padding-bottom:7px}
}
.fm-personalizador--amor-quadrado .fm-aq-app__zoom input{height:44px}

/* Revisão: materiais e prazo (R9, sem link: o simulador fica fora da camada) */
.fm-personalizador--amor-quadrado .fm-aq-app__note--review{line-height:1.4;text-wrap:balance}
/* Topo do modo antigo: "1 de 3" ou "Ajustando" à direita, título centrado */
.fm-personalizador--amor-quadrado .fm-aq-app__top{display:grid;grid-template-columns:84px minmax(0,1fr) 84px}
.fm-personalizador--amor-quadrado .fm-aq-app__top>span{width:auto;text-align:right;font-size:12.5px;color:var(--aq-muted);white-space:nowrap;font-variant-numeric:tabular-nums}
/* ==========================================================================
   Rodada 4 (P9): trios e coleções, o mesmo motor do Amor ao Quadrado.
   As regras aprovadas no Amor ao Quadrado na rodada 3 (P5.1–P5.7), estendidas às duas famílias.
   Nenhuma linha acima mudou. Toda regra abaixo começa por :is(.fm-trio-app,.fm-collections-app),
   a raiz das duas famílias, que acompanha a camada no modo antigo (portal.className = root.className).
   O Amor ao Quadrado e as outras 5 famílias não têm essas classes: nada abaixo chega a eles.
   Ajustes próprios de cada família ficam em trio-app.css e collections-app.css.
   ========================================================================== */
/* Tokens da rodada 2 (R4) e texto de aviso (R17) */
.fm-aq-app:is(.fm-trio-app,.fm-collections-app){--aq-ink:#252a28;--aq-muted:#5f6662;--aq-line:#e0dcd5;--aq-warn:#87560d}
/* Botão principal em pílula (R2), também o da folha ("Sim, fazer…") e o do modo antigo ("Montar…") */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__cta{border-radius:999px}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__cta:hover:not(:disabled){background:#bf2246}
/* Mínimo de 12 px (R1); o que já tinha 12 px ou mais fica como está */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__dot,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__stepper small,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__empty small,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__cchip,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__spin,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__dim,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__size small,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__acts button{font-size:12px}
/* Contraste: número do quadro vazio (5,3:1 sobre #f6f3ee) */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__empty{color:#6b655b}
/* A dica some na hora (sem texto meio transparente); só aparece com transição */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__hint{transition:none}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__hint.is-on{transition:opacity .3s}

/* Rodapé com Pix e 6x (R8): total cheio + 2 linhas de 16 px, no máximo 34 px (a classe has-pix vem do JS) */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__foot.has-pix{gap:10px}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__foot.has-pix .fm-aq-app__total{flex:1 0 auto}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__foot.has-pix .fm-aq-app__total>b{line-height:1.1}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__foot.has-pix [data-installments]{display:block;line-height:16px;letter-spacing:-.01em}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__foot.has-pix [data-installments]>span{display:block;white-space:nowrap}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__foot.has-pix [data-installments] b{display:inline;font-size:12px;font-weight:600;color:var(--aq-ink)}
@media (min-width:375px){
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__foot.has-pix .fm-aq-app__cta{min-width:min(50%,240px)}
}
/* Reserva: preço longo quebra o texto do botão sem aumentar a altura (47 px) */
@media (min-width:375px) and (max-width:899px){
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__foot.has-pix .fm-aq-app__cta{white-space:normal;text-wrap:balance;line-height:1.15;padding-top:6px;padding-bottom:6px;min-height:47px}
}
/* Celular pequeno (R13), nesta ordem: sai o ícone, sai o "ou", o botão pode quebrar em 2 linhas */
@media (max-width:374px){
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__foot{gap:10px;padding-left:14px;padding-right:14px}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__foot .fm-aq-app__cta svg{display:none}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__total .ou{display:none}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__foot .fm-aq-app__cta{white-space:normal;text-wrap:balance;line-height:1.15;min-width:0;flex:0 1 auto;padding-top:6px;padding-bottom:6px;min-height:48px}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__total{flex:1 0 auto}
}

/* Passo das fotos: o tamanho aparece junto da contagem, numa linha só; a barra encolhe */
:is(.fm-trio-app,.fm-collections-app) [data-progress-text]{white-space:nowrap}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__bar{min-width:40px}

/* Na parede: legenda em 12 px e opacidade 1 (antes 11,5 px a .55: 3,4:1); halo nas cotas */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__dim span{text-shadow:0 0 2px var(--wall-light),0 0 5px var(--wall-light)}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__walllabel{font-size:12px;line-height:16px;opacity:1;color:var(--aq-ink)}
/* A legenda pode cair sobre o pé do sofá ou o tampo da mesa (medido: 1,7:1 no Perfil em 390): vai num selo claro */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__walllabel{width:fit-content;margin:0 auto;padding:2px 6px;border-radius:6px;background:rgba(250,247,242,.9)}
/* Cotas um pouco mais escuras que o --aq-muted: a sombra dos quadros escurece o fundo (4,49:1 no Perfil em 360) */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__dim{color:#4f5652}

/* Selo Cor / P&B só em quadro de 56 px ou mais (R13); a classe vem do JS */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__grid--small .fm-aq-app__cchip{display:none}

/* Alvos de toque de 44 px sem mudar o desenho (R11): área invisível centrada no controle */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__colors button,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__views button,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__stepper button,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__icon,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__round,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__seg button,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__tab{position:relative}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__stepper button::before,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__icon::before,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__round::before{content:"";position:absolute;left:50%;top:50%;width:max(100%,46px);height:max(100%,46px);transform:translate(-50%,-50%)}
/* Controles colados lado a lado: a área cresce só na vertical */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__colors button::before,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__views button::before,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__seg button::before,
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__tab::before{content:"";position:absolute;left:0;top:50%;width:100%;height:max(100%,46px);transform:translateY(-50%)}
/* a aba tem 2 px de borda embaixo: a área fica centrada na aba inteira */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__tab::before{top:calc(50% + 1px)}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__seg button{min-width:46px}
/* Opções em duas linhas: as áreas das duas linhas não se cruzam (20 px; com 16 px, como no AQ, sobravam décimos de px) */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__optline{row-gap:20px}
/* Pendência da Revisão ("Resolver", "Escrever"): o alvo é a ponta direita do aviso inteiro, sem passar dele */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__issues li{position:relative}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__issues button::before{content:"";position:absolute;top:0;bottom:0;right:0;width:96px}
/* Revisão: "Editar" tem a linha inteira como alvo; as outras ações da linha (chaves de presente) crescem na vertical */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div{position:relative}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__row>button:is([data-go],[data-open-edit])::before{content:"";position:absolute;inset:0}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__row>button:not([data-go]):not([data-open-edit]){position:relative}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__row>button:not([data-go]):not([data-open-edit])::before{content:"";position:absolute;left:0;top:50%;width:100%;height:46px;transform:translateY(-50%)}
@media (max-width:899px) and (min-height:700px){
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__issues li{min-height:46px}
}
/* Campo de zoom: 46 px de altura (o teste a 22 px do centro passa com folga) */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__zoom input{height:46px}

/* Revisão: materiais e prazo (R9, sem link: o simulador fica fora da camada) */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__note--review{line-height:1.4;text-wrap:balance}
/* Topo do modo antigo: título centrado e, à direita, "1 de 3" ou "Ajustando" (quando o JS escreve) */
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__top{display:grid;grid-template-columns:84px minmax(0,1fr) 84px}
:is(.fm-trio-app,.fm-collections-app) .fm-aq-app__top>span{width:auto;text-align:right;font-size:12.5px;color:var(--aq-muted);white-space:nowrap;font-variant-numeric:tabular-nums}
/* Revisão no celular: grade de 2 colunas. Os trios e as coleções têm até 9 linhas no resumo (o Amor ao Quadrado tem 5):
   em lista, com a altura de alvo da R11, o palco caía para 178 px em 390 × 844 e para 54–179 px em 360 × 640.
   Em cada célula, rótulo em cima e valor embaixo, à esquerda; a ação ("Editar", chave de presente) fica à direita,
   centrada na altura. A célula inteira é o alvo do "Editar", com 46 px de altura; em telas com menos de 700 px de
   altura, 38 px (exceção D1 da rodada 3), para o palco ficar com 180 px ou mais (R13) sem o painel rolar (regra 3).
   Acabamento, chaves de presente, avisos e botões do resumo ocupam as 2 colunas. No computador, continua a lista. */
@media (max-width:899px){
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;overflow:hidden}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>*{box-shadow:1px 0 0 var(--aq-line),0 1px 0 var(--aq-line)}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-content:center;column-gap:6px;row-gap:1px;min-height:46px;padding:4px 8px;border-top:0;font-size:12.5px;line-height:1.25}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div>span:first-child{grid-column:1;grid-row:1;font-size:12px}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary .fm-aq-app__row{display:contents}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary .fm-aq-app__row>b{grid-column:1;grid-row:2;text-align:left;min-width:0;overflow-wrap:anywhere}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary .fm-aq-app__row>button,
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary .fm-aq-app__row>.fm-aq-app__seg{grid-column:2;grid-row:1 / 3;align-self:center;justify-self:end}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary .fm-aq-app__row>button{padding-top:0;padding-bottom:0;padding-left:0}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div:has(.fm-aq-app__seg),
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div:has([role="switch"]){grid-column:1 / -1;grid-template-rows:auto}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div:has([data-card-edit]){grid-template-columns:minmax(0,1fr) auto auto}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div:has([data-card-edit]) .fm-aq-app__row>button{grid-row:1}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div:has([data-card-edit]) .fm-aq-app__row>button:last-child{grid-column:3}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div:has(.fm-aq-app__seg)>span:first-child,
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div:has([role="switch"])>span:first-child{grid-row:1;align-self:center}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div:has([role="switch"]) .fm-aq-app__row>button{grid-row:1}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div:has(.fm-aq-app__seg) .fm-aq-app__row>.fm-aq-app__seg{grid-row:1}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>:not(div){grid-column:1 / -1}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div.fm-aq-app__wide{grid-column:1 / -1}
}
@media (max-width:899px) and (max-height:699px){
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__summary>div{min-height:38px;padding-top:3px;padding-bottom:3px;font-size:12px}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__tabs{padding-top:2px}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__tab{padding-top:6px;padding-bottom:7px}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__issues{margin-bottom:6px}
  :is(.fm-trio-app,.fm-collections-app) .fm-aq-app__issues li{padding-top:5px;padding-bottom:5px}
}
