body {
      font-family: 'Segoe UI', 'Inter', sans-serif;
      text-align: center;
      padding: 20px;
      margin: 0;
      background: #f8f9fb;
    }

    h2 {
      font-size: 1.8em;
      margin-bottom: 20px;
    }

    #reel_url {
      width: 90%;
      max-width: 500px;
      height: 50px;
      font-size: 18px;
      padding: 10px;
      margin-bottom: 15px;
      border: 1px solid #ccc;
      border-radius: 6px;
      box-sizing: border-box;
    }

    #submit {
      padding: 12px 25px;
      font-size: 18px;
      background-color: #007bff;
      color: white;
      border: none;
      border-radius: 6px;
      cursor: pointer;
    }

    #submit:hover {
      background-color: #0056b3;
    }

    #status {
      margin-top: 25px;
      font-size: 16px;
    }

    #video-container {
      margin-top: 30px;
    }

    video {
      width: 100%;
      max-width: 400px;
      height: auto;
      border-radius: 8px;
      border: 1px solid #ccc;
      pointer-events: auto;
      user-select: none;
    }

    video::-internal-media-controls-download-button,
    video::-webkit-media-controls-enclosure {
      display: none !important;
    }

    video::cue {
      display: none;
    }

    .download-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 14px 28px;
      font-size: 17px;
      font-weight: 600;
      color: #ffffff;
      background-color: #4caf50;
      border: none;
      border-radius: 10px;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06);
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .download-btn:hover {
      background-color: #45a049;
      transform: translateY(-2px);
      box-shadow: 0 6px 14px rgba(0, 0, 0, 0.1);
    }

    .download-btn:active {
      transform: scale(0.97);
    }

    .download-btn svg {
      width: 20px;
      height: 20px;
      stroke-width: 2.2;
      stroke: white;
      fill: none;
    }

    #timer {
      margin-top: 25px;
      font-size: 2rem;
      font-weight: 600;
      color: #2c3e50;
      background: #ffffff;
      padding: 12px 24px;
      border-radius: 12px;
      display: inline-block;
      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
      letter-spacing: 1px;
    }

    #feedback {
      margin: 20px auto;
      max-width: 90%;
    }

    .feedback-box {
      font-family: "Segoe UI", "Inter", sans-serif;
      padding: 18px 24px;
      margin: 18px auto;
      border-radius: 16px;
      text-align: center;
      max-width: 600px;
      font-size: 16px;
      line-height: 1.6;
      box-shadow: 0 10px 24px rgba(0, 0, 0, 0.05);
      animation: fadeIn 0.4s ease;
      border: 1px solid transparent;
    }

    .feedback-box strong {
      display: block;
      margin-bottom: 6px;
      font-size: 17px;
    }

    .feedback-fastest {
      background: #e0f7ef;
      color: #056e57;
      border-color: #3ddc84;
    }

    .feedback-fast {
      background: #e6f4ff;
      color: #004f6e;
      border-color: #00bfff;
    }

    .feedback-good {
      background: #fffbe6;
      color: #7a4f00;
      border-color: #ffb100;
    }

    .feedback-slow {
      background: #ffecec;
      color: #850000;
      border-color: #ff4d4f;
    }

    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(6px); }
      to { opacity: 1; transform: translateY(0); }
    }

    @media (max-width: 480px) {
      #submit, .download-btn {
        width: 90%;
        font-size: 16px;
      }

      #reel_url {
        font-size: 16px;
        height: 45px;
      }

      #timer {
        font-size: 18px;
        padding: 10px 18px;
      }

      .feedback-box {
        font-size: 15px;
        padding: 14px 16px;
      }
    }