/* ═══════════════════════════════════════════════════════
   FEEDSTRA SHOWCASE — STYLES  (v2 — premium refresh)
   ═══════════════════════════════════════════════════════ */

/* ─── 1. HERO DASHBOARD ─── */
.pp-dash-frame{position:relative;max-width:1120px;margin:0 auto}
.pp-dash-bezel{position:relative;border-radius:16px;overflow:hidden;background:#0a0a1a;border:1px solid rgba(255,255,255,.1);box-shadow:0 0 0 1px rgba(255,255,255,.04),0 40px 100px rgba(0,0,0,.5),0 80px 160px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.12);transition:transform .8s cubic-bezier(.22,1,.36,1)}
.pp-dash-bezel:hover{transform:translateY(-4px)}
.pp-flipping{animation:ppFlipOut .35s ease-in forwards}
.pp-flipping-back{animation:ppFlipIn .4s ease-out forwards}
@keyframes ppFlipOut{0%{transform:perspective(1200px) rotateY(0)}100%{transform:perspective(1200px) rotateY(90deg)}}
@keyframes ppFlipIn{0%{transform:perspective(1200px) rotateY(-90deg)}100%{transform:perspective(1200px) rotateY(0)}}
.pp-img-stack{position:relative}
.pp-dash-img{display:block;width:100%;height:auto;image-rendering:auto;position:absolute;top:0;left:0;opacity:0;transition:opacity .3s ease}
.pp-dash-img:first-child{position:relative}
.pp-dash-img--active{opacity:1;z-index:1}
.pp-bar{display:flex;align-items:center;gap:12px;padding:10px 16px;background:linear-gradient(180deg,#1e1e2e,#14141f);border-bottom:1px solid rgba(255,255,255,.06)}
.pp-bar--light{display:none;background:linear-gradient(180deg,#f0f0f4,#e8e8ed);border-bottom:1px solid rgba(0,0,0,.08)}
.pp-dots{display:flex;gap:6px;flex-shrink:0}
.pp-d{width:10px;height:10px;border-radius:50%}
.pp-d.r{background:#ff5f57}.pp-d.y{background:#febc2e}.pp-d.g{background:#28c840}
.pp-url{display:flex;align-items:center;gap:6px;padding:4px 12px;border-radius:6px;background:rgba(255,255,255,.06);font-family:"Figtree",monospace;font-size:12px;color:rgba(255,255,255,.55);letter-spacing:.3px}
.pp-url--light{background:rgba(0,0,0,.06);color:rgba(0,0,0,.5)}
.pp-glow{position:absolute;bottom:-60px;left:10%;right:10%;height:120px;pointer-events:none;filter:blur(40px);opacity:.6}
.pp-zones{position:absolute;inset:0;z-index:2}

/* Zone hover — NO blue/colored overlay, just a clean white border pulse */
.pp-zone{position:absolute;background:transparent;border:1.5px solid transparent;border-radius:8px;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;transition:border-color .35s ease,box-shadow .35s ease,background-color .35s ease}
.pp-zone:hover,.pp-zone--active{border-color:rgba(255,255,255,.28);box-shadow:0 0 0 1px rgba(255,255,255,.04),0 0 24px rgba(255,255,255,.06)}
.pp-zone:focus-visible{border-color:rgba(255,255,255,.4)}

/* ─── Zone popup preview ─── */
.pp-zone-popup{position:absolute;left:0;top:0;z-index:20;pointer-events:none;width:300px;max-width:calc(100% - 24px);border-radius:14px;background:linear-gradient(180deg,rgba(10,10,30,.96) 0%,rgba(6,6,22,.96) 100%);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 64px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.04),inset 0 1px 0 rgba(255,255,255,.06);overflow:hidden;opacity:0;transform:translateY(6px) scale(.97);transition:opacity .25s cubic-bezier(.22,1,.36,1),transform .25s cubic-bezier(.22,1,.36,1)}
.pp-zone-popup.is-visible{opacity:1;transform:translateY(0) scale(1)}
.pp-zone-popup-body{padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.pp-zone-popup-title{display:block;font-family:"Figtree",sans-serif;font-size:13px;font-weight:700;color:#fff;letter-spacing:-.1px}
.pp-zone-popup-desc{display:block;font-family:"Figtree",sans-serif;font-size:12px;line-height:1.55;color:rgba(255,255,255,.6)}
@media(max-width:767px){.pp-zone-popup{display:none}}

/* Legacy tooltip — hidden now */
.pp-tooltip{display:none}

.pp-toggle{display:inline-flex;align-items:center;gap:10px;padding:10px 22px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;font-family:"Figtree",sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s;backdrop-filter:blur(8px)}
.pp-toggle:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.3)}
.pp-toggle-icon{display:flex;align-items:center}
.hidden{display:none!important}

/* ─── STAGGERED FADE-UP ANIMATIONS ─── */
[data-fade-up]{opacity:0;transform:translateY(32px);filter:blur(6px);transition:opacity .9s cubic-bezier(.22,1,.36,1) var(--fade-delay,0s),transform .9s cubic-bezier(.22,1,.36,1) var(--fade-delay,0s),filter .9s cubic-bezier(.22,1,.36,1) var(--fade-delay,0s);will-change:opacity,transform,filter}
[data-fade-up].is-visible{opacity:1;transform:translateY(0);filter:blur(0)}
@media(prefers-reduced-motion:reduce){[data-fade-up]{opacity:1;transform:none;filter:none;transition:none}}

/* ─── 2. INTERACTIVE SHOWCASE GRID ─── */
.pp-grid{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:768px){.pp-grid{grid-template-columns:repeat(2,1fr)}.pp-card--wide{grid-column:span 2}}
@media(min-width:1024px){.pp-grid{gap:20px}}

/* Card base — solid near-black to match original dashboard */
.pp-card{position:relative;border-radius:20px;overflow:hidden;background:#0b0b18;border:1px solid rgba(255,255,255,.06);padding:28px;display:flex;flex-direction:column;transition:border-color .4s,box-shadow .5s,transform .5s cubic-bezier(.22,1,.36,1)}
.pp-card:hover{border-color:rgba(255,255,255,.14);box-shadow:0 24px 60px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.06);transform:translateY(-4px)}
.pp-card::before{content:"";position:absolute;inset:0;border-radius:20px;pointer-events:none;background:radial-gradient(ellipse at 50% 0%,rgba(255,255,255,.025) 0%,transparent 60%);opacity:0;transition:opacity .4s}
.pp-card:hover::before{opacity:1}

/* Card head */
.pp-card-head{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}
.pp-card-tag{font-family:"Figtree",sans-serif;font-size:13px;font-weight:700;color:#fff;letter-spacing:-.2px}
.pp-card-tag--premium{padding:4px 12px;border-radius:999px;border:1px solid;font-size:11px;font-weight:600;letter-spacing:.3px}
.pp-card-sub{font-family:"Figtree",sans-serif;font-size:12px;color:rgba(255,255,255,.4);margin-left:auto}
.pp-card-reset{margin-left:auto;padding:4px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:rgba(255,255,255,.5);font-family:"Figtree",sans-serif;font-size:12px;cursor:default;transition:all .3s}
.pp-card-reset:hover{background:rgba(255,255,255,.08);color:rgba(255,255,255,.7)}

/* Card description — 2-3 line explainer */
.pp-card-desc{font-family:"Figtree",sans-serif;font-size:13.5px;line-height:1.6;color:rgba(255,255,255,.45);margin-bottom:20px;max-width:560px}

.pp-card-hint{font-family:"Figtree",sans-serif;font-size:11.5px;color:rgba(255,255,255,.3);margin-top:16px;line-height:1.4;font-style:italic}

/* ── Yield Matrix — original dashboard layout & colors ── */
.pp-yield-rows{display:flex;flex-direction:column;gap:18px}
.pp-yrow{display:grid;grid-template-columns:auto 1fr 56px;grid-template-rows:auto auto;column-gap:10px;row-gap:6px;align-items:center}
.pp-yname{font-family:"Figtree",sans-serif;font-size:14px;font-weight:700;color:#fff;grid-column:1;grid-row:1;letter-spacing:-.1px}
.pp-yrange{font-family:"Figtree",sans-serif;font-size:11px;color:rgba(255,255,255,.4);grid-column:2;grid-row:1;align-self:center;justify-self:start}
.pp-ybar{grid-column:1/3;grid-row:2;height:8px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}
.pp-yfill{height:100%;border-radius:999px;background:var(--c);width:0;transition:width 1.2s cubic-bezier(.22,1,.36,1);box-shadow:0 0 12px var(--c)}
.pp-yfill.pp-bar-animated,.pp-ffill.pp-bar-animated{width:var(--w)!important}
.pp-yval{grid-column:3;grid-row:1/3;font-family:"Figtree",sans-serif;font-size:15px;font-weight:700;color:#fff;text-align:center;padding:8px 0;border-radius:10px;background:#1a1a2e;border:1px solid rgba(255,255,255,.08);min-width:56px}

/* ── Price Intelligence ── */
.pp-price-alert{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;border-radius:10px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);font-family:"Figtree",sans-serif;font-size:12px;line-height:1.45;color:rgba(239,68,68,.9);margin-bottom:20px}
.pp-price-alert-dot{width:6px;height:6px;border-radius:50%;background:#ef4444;flex-shrink:0;margin-top:5px;animation:ppPulse 2s infinite}
@keyframes ppPulse{0%,100%{opacity:1}50%{opacity:.3}}
.pp-price-main{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}
.pp-price-num{font-family:"Figtree",sans-serif;font-size:36px;font-weight:700;color:#fff;letter-spacing:-1.5px}
.pp-price-change{font-family:"Figtree",sans-serif;font-size:13px;font-weight:600;padding:4px 10px;border-radius:6px}
.pp-price-change--up{background:rgba(52,211,153,.12);color:#34d399}
.pp-price-chart{margin-bottom:16px}
.pp-chart-svg{width:100%;height:80px;display:block}
.pp-chart-line{stroke-dasharray:400;stroke-dashoffset:400}
.pp-chart-area{opacity:0;animation:ppFadeArea 1s 1.8s forwards}
@keyframes ppFadeArea{to{opacity:1}}
.pp-chart-labels{display:flex;justify-content:space-between;font-family:"Figtree",sans-serif;font-size:11px;color:rgba(255,255,255,.3);margin-top:4px}
.pp-commodity-pills{display:flex;gap:8px}
.pp-cpill{font-family:"Figtree",sans-serif;font-size:12px;padding:6px 14px;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:rgba(255,255,255,.5);cursor:default;transition:all .3s}
.pp-cpill--active{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.2);font-weight:600}
.pp-cpill:hover{background:rgba(255,255,255,.08);color:rgba(255,255,255,.7)}

/* ── AI Insights ── */
.pp-ai-content{display:flex;flex-direction:column;gap:16px}
.pp-ai-alerts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.pp-ai-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);font-family:"Figtree",sans-serif;font-size:12px;font-weight:700;color:rgba(255,255,255,.7);letter-spacing:.4px}
.pp-ai-pill--active{background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);border-color:transparent;color:#fff;box-shadow:0 4px 14px rgba(59,130,246,.35),inset 0 1px 0 rgba(255,255,255,.18)}
.pp-ai-pill--alert{background:#f3f4f6;border-color:rgba(255,255,255,.7);color:#0f172a;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.pp-ai-pill--alert .pp-ai-pill-main{color:#0f172a;font-weight:800}
.pp-ai-pill--alert .pp-ai-pill-sub{color:#64748b;font-weight:600}
.pp-ai-pill--alert .pp-ai-sep{color:#cbd5e1;font-weight:400;margin:0 2px}
.pp-ai-pill-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.pp-ai-sep{color:rgba(255,255,255,.25);font-weight:400}
.pp-ai-warn{flex-shrink:0}
.pp-ai-rec{border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);padding:20px;transition:border-color .3s}
.pp-card:hover .pp-ai-rec{border-color:rgba(255,255,255,.12)}
.pp-ai-rec-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;font-family:"Figtree",sans-serif;font-size:12px;color:rgba(255,255,255,.45);letter-spacing:.3px}
.pp-ai-rec-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;font-size:14px}
.pp-ai-rec-text{font-family:"Figtree",sans-serif;font-size:14px;line-height:1.65;color:rgba(255,255,255,.7);margin:0 0 16px}
.pp-ai-rec-text strong{color:#fff;font-weight:600}
.pp-ai-compare{display:flex;flex-direction:column;gap:10px}
.pp-ai-sup{display:grid;grid-template-columns:110px 60px 1fr auto;gap:10px;align-items:center}
.pp-ai-sup-name{font-family:"Figtree",sans-serif;font-size:13px;font-weight:600;color:rgba(255,255,255,.8)}
.pp-ai-sup-tons{font-family:"Figtree",monospace;font-size:12px;color:rgba(255,255,255,.5)}
.pp-ai-sup-bar{height:6px;border-radius:3px;background:rgba(255,255,255,.06);overflow:hidden}
.pp-ai-sup-bar>div{height:100%;border-radius:3px;transition:width 1s cubic-bezier(.22,1,.36,1)}
.pp-ai-sup-tag{font-family:"Figtree",sans-serif;font-size:10px;padding:3px 8px;border-radius:4px;letter-spacing:.3px}
.pp-ai-sup-tag--best{background:rgba(52,211,153,.12);color:#34d399;font-weight:600}

/* ── Feedstock Procurement ── */
.pp-feed-rows{display:flex;flex-direction:column;gap:12px}
.pp-frow{display:grid;grid-template-columns:100px 65px 1fr 40px 60px 70px;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.04)}
.pp-frow:last-child{border-bottom:none}
.pp-fname{font-family:"Figtree",sans-serif;font-size:13px;font-weight:600;color:rgba(255,255,255,.85)}
.pp-ftag{font-family:"Figtree",sans-serif;font-size:10px;font-weight:700;padding:3px 8px;border-radius:4px;background:rgba(59,130,246,.18);color:#60a5fa;letter-spacing:.5px;text-align:center}
.pp-fbar{height:6px;border-radius:3px;background:rgba(255,255,255,.06);overflow:hidden}
.pp-ffill{height:100%;border-radius:3px;background:var(--c);width:0;transition:width 1.2s cubic-bezier(.22,1,.36,1)}
.pp-fpct{font-family:"Figtree",monospace;font-size:12px;color:rgba(255,255,255,.5);text-align:right}
.pp-ftons{font-family:"Figtree",monospace;font-size:12px;color:rgba(255,255,255,.65);text-align:right;font-weight:600}
.pp-fcost{font-family:"Figtree",monospace;font-size:12px;color:rgba(255,255,255,.8);text-align:right;font-weight:700}

/* ── MOBILE ── */
@media(max-width:767px){
  .pp-dash-bezel{border-radius:12px}
  .pp-zone-popup,.pp-zones{display:none}
  .pp-frow{grid-template-columns:80px 55px 1fr 35px 55px 60px;gap:6px}
  .pp-fname{font-size:11px}.pp-fcost{font-size:11px}.pp-ftons{font-size:11px}
  .pp-ai-sup{grid-template-columns:85px 50px 1fr auto}
  .pp-card{padding:18px}
  .pp-yrow{grid-template-columns:75px 1fr 44px}
  .pp-price-num{font-size:28px}
}
@media(max-width:480px){
  .pp-frow{grid-template-columns:1fr 1fr;gap:4px}
  .pp-fbar,.pp-fpct{display:none}
  .pp-ai-sup{grid-template-columns:1fr 1fr}
  .pp-ai-sup-bar{display:none}
}
