    @font-face {
      font-family: 'ibm';
      src: url('https://saweria.co/ibm-plex-mono-latin-400.woff');
    }
    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
      font-family: 'ibm', monospace;
    }
    html, body {
      height: 100%;
      background: #F7FAFC;
    }
    body {
      display: flex;
      flex-direction: column;
      padding: 20px;
    }
    .gateway {
      max-width: 650px;
      width: 100%;
      background: white;
      border-radius: 12px;
      padding: 25px;
      box-shadow: 0 8px 20px rgba(0,0,0,0.08);
      margin: auto;
      position: relative;
    }
    .source {
      position: absolute;
      top: -15px;
      right: -15px;
      padding: 10px 15px;
      background: #2ecc71;
      color: white;
      font-weight: bold;
      font-size: 14px;
      box-shadow: 3px 3px 0 #222;
      border: 2px solid #000;
      border-radius: 8px;
      cursor: pointer;
    }
    .form {
      display: flex;
      flex-direction: column;
      gap: 20px;
      margin-top: 10px;
    }
    .form label {
      display: flex;
      flex-direction: column;
      font-weight: bold;
      color: #2D3748;
    }
    label select, label input {
      height: 40px;
      border: 1px solid #CBD5E0;
      border-radius: 6px;
      padding: 5px 10px;
      background: #EDF2F7;
      font-size: 15px;
      box-shadow: 1px 1px 0 #222;
    }
    .form button {
      margin-top: 10px;
      padding: 10px 18px;
      background: #fbbf24;
      border: 2px solid #000;
      border-radius: 6px;
      font-weight: bold;
      box-shadow: 2px 2px 0 #222;
      transition: background 0.2s;
    }
    .form button:hover {
      background: #facc15;
      cursor: pointer;
    }
    .hidden {
      display: none;
    }
    .preview-img-container {
      text-align: center;
      margin-top: 10px;
    }
    .preview-img {
      max-width: 100%;
      border: 2px solid #333;
      border-radius: 10px;
      box-shadow: 3px 3px 8px rgba(0,0,0,0.2);
    }
    .section-box {
      border: 1px solid #CBD5E0;
      border-radius: 10px;
      padding: 15px;
      background: #F1F5F9;
      box-shadow: 2px 2px 0 #222;
      margin-top: 15px;
    }
    .section-title {
      font-weight: bold;
      font-size: 16px;
      margin-bottom: 10px;
      color: #1A202C;
    }
    footer {
      text-align: center;
      padding: 15px 0;
      font-size: 14px;
      color: #4A5568;
    }
    footer a {
      margin-left: 5px;
      text-decoration: none;
      color: #2B6CB0;
      font-weight: bold;
      }
