.fg.dr{outline:2px dashed #2c6fbb;background:var(--card)}
.fgc{margin-left:9px;padding-left:5px;border-left:1px solid var(--bd)}.fgc[hidden]{display:none}
#flist{max-height:40vh;overflow:auto}#fcm{z-index:80;min-width:210px;max-height:70vh;overflow:auto}

/* paneles laterales fijos en la ventana (no se mueven con el scroll) */
.app{display:grid;grid-template-columns:var(--lw) minmax(0,1fr) var(--rw)}
#stage{grid-column:2;min-width:0}
.app>aside{position:fixed;top:var(--tbh,88px);bottom:0;height:auto;align-self:auto;z-index:20;overflow-y:auto;overflow-x:hidden}
#pal{left:0;width:var(--lw)}#props{right:0;width:var(--rw)}
.tg{width:20px;height:84px;font-size:20px;z-index:25;box-shadow:0 2px 8px rgba(0,0,0,.2)}
@media(max-width:900px){.app{display:block}.app>aside{position:static;width:auto;height:auto}#stage{grid-column:auto}}

/* guías de hoja (A4/A3) sobre el lienzo: solo en pantalla */
#pgov{position:absolute;left:0;top:0;pointer-events:none;z-index:4;display:none;font:600 12px Segoe UI,Arial,sans-serif}

/* ===== paleta ampliada: donación, buscador y grupos contraíbles ===== */
.app{--lw:212px}
#don{margin:2px 0 12px;padding:8px 8px 7px;border:1px solid var(--bd);border-radius:12px;background:linear-gradient(180deg,var(--card),var(--pn));text-align:center}
#don a{display:block;border-radius:999px;transition:transform .15s ease,box-shadow .15s ease}
#don a:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(240,160,40,.5)}
#don a:active{transform:translateY(0);box-shadow:none}
#don a:focus-visible{outline:2px solid #2c6fbb;outline-offset:2px}
#don img{display:block;width:100%;height:auto;user-select:none}
#don .m{margin-top:6px;font-size:11px;line-height:1.3}
#pal #pbar{position:sticky;top:-10px;z-index:3;background:var(--pn);padding:8px 0 4px;margin-top:-4px}
#pal #pq{width:100%;box-sizing:border-box;margin:0;padding:6px 8px 6px 28px;font-size:12px;border:1px solid var(--bd);border-radius:8px;color:var(--text);background:var(--card) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238a97a8' stroke-width='2.6' stroke-linecap='round'><circle cx='11' cy='11' r='7'/><path d='M20 20l-4-4'/></svg>") no-repeat 9px 50%}
#pal #pq:focus{outline:2px solid #2c6fbb;outline-offset:0;border-color:#2c6fbb}
#pal .pgtl{display:flex;align-items:center;gap:4px;margin-top:4px;min-height:20px}
#pal .pgtl button{margin:0;padding:1px 7px;font-size:11px;line-height:1.5;border-radius:6px}
#pal .pg{margin-bottom:2px}
#pal .pgh{display:flex;align-items:center;gap:6px;width:100%;margin:6px 0 4px;padding:4px 4px;background:transparent;border:0;border-bottom:1px solid var(--bd);border-radius:0;text-align:left;color:var(--ink);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;cursor:pointer}
#pal .pgh:hover{background:var(--card)}
#pal .pgh:focus-visible{outline:2px solid #2c6fbb;outline-offset:-2px}
#pal .pgx{display:inline-block;width:12px;font-size:11px;transition:transform .15s ease}
#pal .pg.c .pgx{transform:rotate(-90deg)}
#pal .pgt{flex:1;min-width:0;line-height:1.2}
#pal .pgn{flex:none;min-width:20px;padding:0 6px;border-radius:9px;background:var(--card);border:1px solid var(--bd);color:var(--muted);font-size:10.5px;font-weight:600;text-align:center;letter-spacing:0}
#pal .pg.c .pgb{display:none}
#pal .it span{min-width:0;line-height:1.2;font-size:12.5px}
#pal .it:hover{border-color:#2c6fbb;background:var(--card)}
#pgrp.srch .pg .pgb{display:block}
#pgrp.srch .pg.c .pgb{display:block}
#pgrp .it.nm,#pgrp .pg.nm{display:none}
#pgnone{padding:10px 4px}
