
    *{box-sizing:border-box;margin:0;padding:0;}
    body{background:#050816;color:#f9fafb;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;touch-action:manipulation;}
    .wrap{width:100%;max-width:720px;}
    .card{background:#020617;border-radius:22px;padding:20px 20px 22px;box-shadow:0 20px 60px rgba(0,0,0,.85);border:1px solid rgba(148,163,184,.35);text-align:center;position:relative;overflow:hidden;}
    .card::before{content:"SETUP";position:absolute;right:-46px;top:-38px;font-size:72px;font-weight:900;color:rgba(31,41,55,.18);transform:rotate(-18deg);pointer-events:none;}
    .title{font-size:26px;font-weight:900;margin-bottom:6px;}
    .sub{font-size:14px;opacity:.85;margin-bottom:14px;}
    .winner-callout{
      display:flex;
      flex-direction:column;
      align-items:center;
      gap:6px;
      margin:8px 0 10px;
    }
    .winner-badge{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      padding:8px 16px;
      border-radius:999px;
      font-weight:900;
      letter-spacing:.08em;
      text-transform:uppercase;
      background:linear-gradient(135deg,#facc15,#f97316,#ef4444);
      color:#0b1220;
      box-shadow:0 12px 28px rgba(249,115,22,.45);
      position:relative;
      overflow:hidden;
    }
    .winner-badge::after{
      content:"";
      position:absolute;
      inset:-4px;
      border-radius:999px;
      border:2px solid rgba(250,204,21,.7);
      opacity:.6;
      pointer-events:none;
      animation:badge-pulse 1.8s ease-in-out infinite;
    }
    .winner-sub{
      font-size:12px;
      opacity:.8;
      text-transform:uppercase;
      letter-spacing:.18em;
    }
    @keyframes badge-pulse{
      0%{transform:scale(1);opacity:.6;}
      50%{transform:scale(1.05);opacity:.85;}
      100%{transform:scale(1);opacity:.6;}
    }
    .preview{margin:10px auto 14px;width:100%;max-width:640px;border-radius:18px;overflow:hidden;border:1px solid rgba(30,64,175,.6);box-shadow:0 16px 40px rgba(15,23,42,.9);background:#020617;}
    .preview img{width:100%;height:100%;object-fit:cover;display:block;}
    .preview-hint{font-size:12px;opacity:.7;margin-top:-6px;margin-bottom:12px;}
    .stats{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:10px 0 14px;}
    .pill{background:#111827;border:1px solid rgba(148,163,184,.25);padding:8px 12px;border-radius:999px;font-size:13px;display:inline-flex;gap:8px;align-items:center;}
    .pill strong{font-weight:900;}
    .user-pill{padding:6px 8px;gap:6px;}
    .user-pill input{
      width:min(200px,58vw);
      border:none;
      background:#0b1220;
      color:#e5e7eb;
      font-size:12px;
      padding:6px 10px;
      border-radius:999px;
      outline:none;
    }
    .user-pill .btn{
      padding:7px 12px;
      font-size:12px;
    }
    .btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:25px;}
    .btn{border:none;cursor:pointer;border-radius:999px;padding:10px 14px;font-weight:900;font-size:13px;background:#111827;color:#fff;border:1px solid rgba(148,163,184,.25);transition:.15s;text-decoration:none;display:inline-flex;align-items:center;gap:8px;}
    .btn:hover{transform:translateY(-2px);}
    .btn-like{background:linear-gradient(135deg,#ef4444,#f97316);border:0;}
    .btn-boost{background:linear-gradient(135deg,#f97316,#facc15);color:#0b1220;border:0;}
    .btn-wa{background:linear-gradient(135deg,#22c55e,#16a34a);border:0;}
    .copyRow{margin-top:12px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap;align-items:center;}
    .input{width:min(520px,100%);padding:10px 12px;border-radius:12px;border:1px solid rgba(148,163,184,.25);background:#0b1220;color:#e5e7eb;font-size:12px;}
    .toast{margin-top:10px;font-size:12px;min-height:16px;opacity:.9;}
    .db-error{margin-top:10px;background:rgba(248,113,113,.12);border:1px solid rgba(248,113,113,.5);padding:8px 10px;border-radius:10px;font-size:12px;}
    .share-sponsors{margin-top:16px;text-align:left;border:1px solid rgba(56,189,248,.45);border-radius:16px;padding:12px 12px 14px;background:linear-gradient(135deg, rgba(15,23,42,.9), rgba(2,6,23,.95));box-shadow:0 12px 28px rgba(0,0,0,.5);}
    .share-sponsors-title{font-size:12px;opacity:.75;margin-bottom:8px;text-transform:uppercase;letter-spacing:.12em;}
    .share-sponsors-track{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;overflow:visible;padding-bottom:4px;}
    .share-sponsors-track::-webkit-scrollbar{display:none;}
    .share-sponsor-card{border-radius:14px;overflow:hidden;position:relative;border:1px solid rgba(148,163,184,.25);background:#0b1220;text-decoration:none;color:#e5e7eb;}
    .share-sponsor-card img{width:100%;height:110px;object-fit:cover;display:block;opacity:.9;}
    .share-sponsor-card span{display:block;font-size:12px;font-weight:700;padding:8px 10px;}
    .share-sponsor-card:hover img{opacity:1;}

    @media (max-width:680px){
      .share-sponsors-track{grid-template-columns:repeat(2,1fr);}
    }

    @media (max-width:480px){
      .share-sponsors-track{grid-template-columns:1fr;}
    }

    .lightbox{
      position:fixed;
      inset:0;
      background:rgba(0,0,0,.9);
      display:none;
      align-items:center;
      justify-content:center;
      z-index:9999;
      padding:16px;
    }
    .lightbox.visible{display:flex;}
    .lightbox-img-wrap{
      max-width:min(1024px,95vw);
      max-height:90vh;
      position:relative;
    }
    .lightbox-img-wrap img{
      display:block;
      max-width:100%;
      max-height:90vh;
      border-radius:18px;
    }
    .lightbox-close{
      position:fixed;
      top:16px;
      right:20px;
      background:#020617;
      border:none;
      color:#e5e7eb;
      font-size:16px;
      padding:4px 10px;
      border-radius:999px;
      cursor:pointer;
    }
    .lightbox-prev,
    .lightbox-next{
      position:absolute;
      top:50%;
      transform:translateY(-50%);
      background:rgba(15,23,42,.8);
      border:none;
      color:#e5e7eb;
      font-size:22px;
      width:38px;
      height:38px;
      border-radius:999px;
      cursor:pointer;
      display:flex;
      align-items:center;
      justify-content:center;
    }
    .lightbox-prev{left:-52px;}
    .lightbox-next{right:-52px;}
    .lightbox-prev:hover,
    .lightbox-next:hover{background:rgba(30,64,175,.9);}
    .lightbox-counter{
      position:absolute;
      bottom:-30px;
      left:50%;
      transform:translateX(-50%);
      font-size:12px;
      color:#e5e7eb;
      opacity:.9;
    }

    @media (max-width:600px){
      .lightbox-prev{left:4px;}
      .lightbox-next{right:4px;}
      .lightbox-counter{bottom:-24px;}
    }

    /* username editor */
    .userEditRow{
      margin-top:10px;
      display:flex;
      gap:8px;
      justify-content:center;
      flex-wrap:wrap;
      align-items:center;
    }
    .userEditRow input{
      width:min(320px,100%);
      padding:10px 12px;
      border-radius:999px;
      border:1px solid rgba(148,163,184,.25);
      background:#0b1220;color:#e5e7eb;font-size:12px;
      outline:none;
    }

    .btn-like{
      gap:6px;
      position:relative;
      overflow:visible;
      padding:10px 16px;
      background:linear-gradient(135deg, rgba(239,68,68,.2), rgba(249,115,22,.2));
      border:1px solid rgba(248,113,113,.45);
      box-shadow:0 10px 22px rgba(239,68,68,.25);
      transition:.2s ease;
    }
    .btn-like::before{
      content:"";
      position:absolute;
      inset:-10px;
      border-radius:999px;
      background:radial-gradient(circle, rgba(248,113,113,.45), transparent 60%);
      opacity:0;
      pointer-events:none;
      transition:opacity .2s ease;
    }
    .btn-like:hover{
      transform:translateY(-1px);
      border-color:rgba(248,113,113,.8);
      box-shadow:0 14px 28px rgba(249,115,22,.35);
    }
    .btn-like:hover::before{opacity:.4;}
    .btn-like.disabled{
      opacity:.6;
      cursor:not-allowed;
      box-shadow:none;
    }
    .heart-icon{
      display:inline-block;
      font-size:18px;
      transition:transform .2s ease;
    }
    .like-text{
      font-size:13px;
      font-weight:700;
    }
    .btn-like::after{
      content:"";
      position:absolute;
      inset:-6px;
      border-radius:999px;
      border:1px solid rgba(248,113,113,.35);
      opacity:0;
      pointer-events:none;
    }
    @keyframes heart-pop{
      0%{transform:scale(1);}
      30%{transform:scale(1.35);}
      60%{transform:scale(.9);}
      100%{transform:scale(1);}
    }
    .btn-like.liked .heart-icon{animation:heart-pop .35s ease;}
    @keyframes like-bounce{
      0%{transform:translateY(0) scale(1);}
      40%{transform:translateY(-2px) scale(1.12);}
      100%{transform:translateY(0) scale(1);}
    }
    @keyframes like-ring{
      0%{opacity:.65;transform:scale(.9);}
      100%{opacity:0;transform:scale(1.25);}
    }
    @keyframes like-pop{
      0%{transform:scale(1);}
      50%{transform:scale(1.04);}
      100%{transform:scale(1);}
    }
    .btn-like.liked .like-text{animation:like-bounce .4s ease;}
    .btn-like.liked::after{animation:like-ring .5s ease;}
    .btn-like.liked{animation:like-pop .35s ease;}

    .rating-block{margin:6px 0 10px;display:grid;gap:8px;justify-items:center;}
    .rating-pill{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:6px 10px;
      border-radius:999px;
      background:linear-gradient(135deg, rgba(250,204,21,.2), rgba(249,115,22,.18));
      border:1px solid rgba(250,204,21,.55);
      color:#fde68a;
      font-weight:800;
      font-size:12px;
      letter-spacing:.04em;
      text-transform:uppercase;
    }
    .rating-pill strong{color:#fff7d6;font-size:14px;}
    .rating-star{
      width:18px;
      height:18px;
      border-radius:50%;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      background:rgba(250,204,21,.2);
      color:#facc15;
      border:1px solid rgba(250,204,21,.45);
      font-size:12px;
    }
    .rating-count{font-size:12px;opacity:.8;}
    .rating-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center;}
    .rating-select{
      appearance:none;
      -webkit-appearance:none;
      border-radius:999px;
      border:1px solid rgba(148,163,184,.35);
      padding:8px 34px 8px 12px;
      background:
        linear-gradient(135deg, rgba(15,23,42,.9), rgba(2,6,23,.95)),
        linear-gradient(135deg, rgba(34,197,94,.6), rgba(56,189,248,.4));
      color:#f8fafc;
      font-weight:800;
      font-size:12px;
      cursor:pointer;
      background-color:#0b1220;
      background-clip:padding-box,border-box;
    }
    .rating-select:disabled{opacity:.7;cursor:not-allowed;}
    .rating-select-wrap{position:relative;display:inline-flex;align-items:center;}
    .rating-select-wrap::after{
      content:"v";
      position:absolute;
      right:12px;
      font-size:12px;
      font-weight:700;
      color:rgba(226,232,240,.7);
      pointer-events:none;
    }
    .btn-rate{
      background:linear-gradient(135deg,#22c55e,#16a34a);
      color:#0b1220;
      font-weight:900;
      text-transform:uppercase;
      letter-spacing:.04em;
    }
    .btn-rate[disabled]{opacity:.6;cursor:not-allowed;}
    .rating-note{min-height:16px;font-size:12px;opacity:.85;}

    .likes-closed-note{
      margin-top:8px;
      font-size:12px;
      opacity:.85;
    }
  
