:root {
        --main: #e62e2d;
        --main-dark: #ad2020;
        --bg: #fff6f6;
      }
      body {
        background: var(--bg);
        font-family: "Segoe UI", Arial, sans-serif;
        margin: 0;
        color: #24262d;
      }
      .container {
        max-width: 410px;
        margin: 44px auto 0 auto;
        background: #fff;
        border-radius: 18px;
        box-shadow: 0 4px 24px #e62e2d22;
        padding: 28px 16px 22px 16px;
      }
      .logo {
        font-size: 1.45em;
        font-weight: bold;
        color: var(--main-dark);
        text-align: center;
        margin-bottom: 11px;
        letter-spacing: -1px;
      }
      .desc {
        text-align: center;
        color: #d03434;
        margin-bottom: 22px;
        font-size: 0.87em;
      }
      .url-input-row {
        display: flex;
        gap: 8px;
        margin-bottom: 16px;
      }
      .url-input-row input {
        flex: 1;
        padding: 11px 10px;
        border: 1.3px solid #e62e2d55;
        border-radius: 7px;
        font-size: 1.08em;
        background: #fff5f5;
        color: #303;
        transition: border 0.2s;
      }
      .url-input-row input:focus {
        border-color: var(--main-dark);
        outline: none;
      }
      .url-input-row button {
        background: var(--main);
        color: #fff;
        border: none;
        border-radius: 7px;
        font-size: 1.07em;
        font-weight: bold;
        padding: 0 22px;
        cursor: pointer;
        transition: background 0.15s;
      }
      .url-input-row button:active {
        background: var(--main-dark);
      }
      .info-msg {
        color: #ad2020;
        text-align: center;
        font-size: 1.02em;
        margin: 10px 0 10px 0;
        min-height: 26px;
      }
      .preview-area {
        margin: 22px 0 0 0;
        text-align: center;
      }
      .thumb-list {
        display: flex;
        flex-wrap: wrap;
        gap: 14px 12px;
        justify-content: center;
        margin-top: 10px;
      }
      .thumb-box {
        background: #f5eaea;
        border-radius: 12px;
        padding: 10px 9px 12px 9px;
        box-shadow: 0 2px 8px #e62e2d14;
        max-width: 160px;
      }
      .thumb-img {
        max-width: 130px;
        max-height: 110px;
        border-radius: 8px;
        display: block;
        margin: 0 auto 7px auto;
        background: #fff;
      }
      .thumb-label {
        color: #ad2020;
        font-size: 0.99em;
        margin-bottom: 2px;
        text-align: center;
        font-weight: bold;
      }
      .dl-btn {
        display: block;
        margin: 5px auto 0 auto;
        padding: 6px 12px;
        background: var(--main);
        color: #fff;
        border: none;
        border-radius: 7px;
        font-size: 0.99em;
        font-weight: bold;
        cursor: pointer;
        transition: background 0.15s;
        text-decoration: none;
      }
      .dl-btn:active {
        background: var(--main-dark);
      }
      .service-label {
        margin-top: 10px;
        font-size: 1.05em;
        color: #19788a;
        font-weight: bold;
        letter-spacing: 0.01em;
      }
      .example-row {
        font-size: 0.95em;
        margin-top: 10px;
        color: #494;
        text-align: center;
      }
      .notice {
        color: #ba2929;
        background: #fff1f1;
        border: 1px solid #f7c0c0;
        border-radius: 9px;
        padding: 12px 11px 9px 11px;
        margin: 30px 0 0 0;
        font-size: 0.99em;
        text-align: center;
        line-height: 1.55;
      }
      #backBtn {
        position: fixed;
        left: 50%;
        bottom: 32px;
        transform: translateX(-50%);
        background: var(--main);
        color: #fff;
        font-weight: 700;
        border: none;
        border-radius: 2rem;
        padding: 0.58em 1.5em;
        box-shadow: 0 4px 16px #e62e2d55;
        font-size: 1.09em;
        text-decoration: none;
        cursor: pointer;
        letter-spacing: 0.01em;
        transition:
          background 0.15s,
          transform 0.12s;
        z-index: 2000;
      }
      #backBtn:hover {
        background: #b72323;
        transform: translateX(-50%) scale(1.04);
      }
      @media (max-width: 600px) {
        .container {
          max-width: 98vw;
          padding: 12px 2vw 14px 2vw;
        }
        #backBtn {
          bottom: 18px;
          font-size: 0.98em;
          padding: 0.48em 1em;
        }
        .thumb-img {
          max-width: 98vw;
        }
      }