/* PRODUCT FEATURE GRID */
  .product .pgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-top:48px}
  .pcard{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;display:flex;flex-direction:column;min-height:380px;transition:transform .25s, box-shadow .25s}
  .pcard:hover{transform:translateY(-3px);box-shadow:0 30px 60px -28px rgba(67,56,202,.18)}
  .pcard.wide{grid-column:span 2}
  .pcard .pi{width:38px;height:38px;border-radius:11px;background:var(--grad-soft);color:var(--ind);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
  .pcard .pi svg{width:19px;height:19px}
  .pcard h4{font-size:21px;font-weight:800;letter-spacing:-0.02em;margin-bottom:10px}
  .pcard .pdesc{font-size:14px;color:var(--muted);line-height:1.6;margin-bottom:auto;max-width:90%}
  .pcard .ph-strip{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--soft);margin-top:24px;letter-spacing:.04em}
  .pcard .preview{margin-top:22px;border:1px solid var(--line);border-radius:16px;padding:16px;background:linear-gradient(180deg,#fafaf7,#fff);position:relative;overflow:hidden;min-height:144px}
  .preview .ph-head{display:flex;justify-content:space-between;align-items:center}
  .preview .ph-head .l{font-size:12px;font-weight:700}
  .preview .ph-head .r{font-size:10px;color:var(--soft);font-feature-settings:"tnum"}
  .preview .rows{margin-top:12px;display:flex;flex-direction:column;gap:6px}
  .preview .rows .row{display:flex;justify-content:space-between;font-size:11px;padding:7px 9px;border-radius:7px;background:#fff;border:1px solid var(--line)}
  .preview .rows .row b{font-weight:700}
  .preview .rows .row .ok{color:#10b981;font-weight:700}
  .preview .rows .row .late{color:#f59e0b;font-weight:700}

  /* preview shot (real screenshot inside small card) */
  .preview-shot{height:160px;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#fff;position:relative}
  .preview-shot img{display:block;position:absolute;max-width:none}
  .preview-shot.r-att img{width:160%;left:-4%;top:-22%}
  .preview-shot.r-app img{width:140%;left:-3%;top:-8%}
  .preview-shot.r-leave img{width:140%;left:-3%;top:-6%}
  .preview-shot.r-gps img{width:130%;left:-4%;top:-30%}

  /* large screenshot preview */
  .pcard.shot{grid-column:span 2;min-height:420px;background:var(--grad);color:#fff;border-color:transparent;padding:36px;position:relative;overflow:hidden}
  .pcard.shot::before{content:"";position:absolute;inset:0;background:radial-gradient(80% 60% at 100% 0%,rgba(255,255,255,.18),transparent 50%);pointer-events:none}
  .pcard.shot > *{position:relative;z-index:1}
  .shot-img{width:100%;display:block}
  .pcard.shot h4{color:#fff;font-size:24px}
  .pcard.shot .pdesc{color:rgba(255,255,255,.65)}
  .pcard.shot .pi{background:rgba(255,255,255,.18);color:#fff}
  .pcard.shot .browser{margin-top:24px;border-radius:14px;overflow:hidden;background:#fff;color:var(--ink);box-shadow:0 30px 60px -20px rgba(0,0,0,.5)}
  .browser .bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#f3f0e8;border-bottom:1px solid var(--line)}
  .browser .bar i{display:block;width:9px;height:9px;border-radius:50%;background:#cfc8b8}
  .browser .bar i:nth-child(1){background:#ef4444}
  .browser .bar i:nth-child(2){background:#f59e0b}
  .browser .bar i:nth-child(3){background:#10b981}
  .browser .bar .url{margin-left:14px;font-size:11px;color:var(--soft)}
  .browser .body{padding:20px;display:grid;grid-template-columns:160px 1fr;gap:16px;background:#fbfaf6}
  .browser .body .side{font-size:11px;color:var(--muted)}
  .browser .body .side .item{padding:8px 10px;border-radius:8px;margin-bottom:4px}
  .browser .body .side .item.on{background:var(--grad-soft);color:var(--ind);font-weight:700}
  .browser .body .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}
  .browser .body .stats .s{padding:11px 13px;background:#fff;border:1px solid var(--line);border-radius:10px}
  .browser .body .stats .s .lab{font-size:9px;color:var(--soft);letter-spacing:.06em;text-transform:uppercase}
  .browser .body .stats .s .val{font-size:18px;font-weight:800;letter-spacing:-0.02em;margin-top:2px}
  .browser .table{font-size:11px;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}
  .browser .table .tr{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;padding:8px 11px;border-top:1px solid var(--line)}
  .browser .table .tr:first-child{border-top:0;background:#f3f0e8;font-weight:700;color:var(--ink-2)}
  .browser .table .ok{color:#10b981;font-weight:700}
  .browser .table .late{color:#f59e0b;font-weight:700}
