.panel-open-btn{
      position:fixed;right:1.2rem;bottom:1.25rem;z-index:11;pointer-events:auto;
      border:1px solid var(--line);background:rgba(255,255,255,.78);backdrop-filter:blur(14px);
      color:var(--ink);padding:.82rem 1.05rem;border-radius:999px;cursor:pointer;
      text-transform:uppercase;letter-spacing:.18em;font-size:.68rem;line-height:1;
      box-shadow:var(--shadow-soft);opacity:0;visibility:hidden;transform:translateY(10px) scale(.98);
      transition:opacity .35s var(--ease), transform .35s var(--ease), visibility .35s var(--ease), background .25s ease;
    }
    .panel-open-btn.is-visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
    .panel-open-btn:hover{background:rgba(255,255,255,.96)}
    .panel-open-btn.is-left{left:1.2rem;right:auto}

    .panel-overlay{
      position:fixed;inset:0;z-index:10;pointer-events:none;display:flex;justify-content:flex-end;align-items:stretch;padding:1.15rem;
    }
    .panel-overlay.is-left{justify-content:flex-start}
    .panel-card{
      width:40vw;height:100%;position:relative;pointer-events:auto;overflow:hidden;
      background:linear-gradient(180deg, rgba(255,255,255,.93), rgba(255,255,255,.86));
      border:1px solid var(--line);box-shadow:var(--shadow);opacity:0;transform:translateX(104%) scale(.99);
      transition:opacity .52s var(--ease), transform .52s var(--ease);backdrop-filter:blur(12px);
    }
    .panel-card.is-visible{opacity:1;transform:translateX(0) scale(1)}
    .panel-overlay.is-left .panel-card{transform:translateX(-104%) scale(.99)}
    .panel-overlay.is-left .panel-card.is-visible{transform:translateX(0) scale(1)}
    .panel-scroll{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(17,17,17,.26) transparent}
    .panel-scroll::-webkit-scrollbar{width:8px}
    .panel-scroll::-webkit-scrollbar-thumb{background:rgba(17,17,17,.22);border-radius:999px}
    .panel-close{
      position:absolute;top:5rem;right:1rem;z-index:2;border:1px solid var(--line);background:rgba(255,255,255,.78);
      backdrop-filter:blur(12px);width:44px;height:44px;border-radius:999px;cursor:pointer;font-size:1rem;
      transition:transform .25s ease, background .25s ease;
    }
    .panel-close:hover{transform:translateY(-1px);background:rgba(255,255,255,.95)}
    .panel-hero{display:grid;grid-template-columns:1fr;gap:1.6rem;padding:1.5rem 1.5rem 1.2rem;border-bottom:1px solid var(--line)}
    .panel-meta{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.9rem;padding-right:3.75rem}
    .meta-pill{padding:.45rem .72rem;border:1px solid var(--line);border-radius:999px;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);background:rgba(255,255,255,.42)}
    .panel-heading{font-family:var(--font-serif);font-size:clamp(2.05rem, 4vw, 4rem);line-height:.95;letter-spacing:-.05em;font-weight:400;max-width:11ch;margin:0 0 .85rem}
    .panel-intro{max-width:34rem;font-size:.98rem;line-height:1.7;color:rgba(17,17,17,.82);margin:0}
    .panel-aside{display:grid;gap:1rem}
    .panel-aside-box{border-top:1px solid var(--line);padding-top:.85rem;display:grid;gap:.32rem}
    .panel-aside-label,.editorial-label{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
    .panel-aside-value{font-size:.98rem;line-height:1.45}
    .panel-grid{padding:1.2rem 1.5rem 1.5rem;display:grid;grid-template-columns:1fr;gap:1.4rem}
    .panel-column{display:grid;gap:1.25rem}
    .editorial-block{border-top:1px solid var(--line);padding-top:.95rem;display:grid;gap:.72rem}
    .editorial-title{font-family:var(--font-serif);font-size:clamp(1.2rem,2vw,1.8rem);line-height:1.08;letter-spacing:-.03em;font-weight:400;margin:0}
    .editorial-copy{line-height:1.72;color:rgba(17,17,17,.82);margin:0}
    .list-stack{display:grid;gap:.55rem}
    .list-row{display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:center;border-top:1px solid var(--line);padding-top:.75rem;font-size:.95rem}
    .list-row span:last-child{font-size:.9rem;color:var(--muted)}
    .image-placeholder{aspect-ratio:4/3;min-height:220px;border:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,.56), rgba(255,255,255,.28)),radial-gradient(circle at 32% 28%, rgba(0,0,0,.05), transparent 38%),linear-gradient(135deg, rgba(17,17,17,.06), transparent 42%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.45);overflow:hidden}
    .image-placeholder img{width:100%;height:100%;object-fit:contain;display:block;background:rgba(8,13,22,.92)}
    .quote-block{padding:1.15rem 1.15rem;border:1px solid var(--line);background:rgba(255,255,255,.34);line-height:1.72;font-family:var(--font-serif);font-size:1.06rem}

.image-placeholder--clickable{cursor:pointer}
.image-placeholder--clickable img{transition:transform .22s ease, filter .22s ease}
.image-placeholder--clickable:hover img{transform:scale(1.015);filter:brightness(1.04)}
