      html, body {
        margin: 0;
        padding: 0;
        width: 100%;
        height: 100%;
      }
      body {
        font-family: Arial, sans-serif;
        background: white;
        padding: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        min-height: 100vh;
        font-size: 32px;
      }
      html {
        scroll-behavior: smooth; /* Smooth general scrolling */
      }
      .bounce {
        animation: bounce 0.6s cubic-bezier(0.25, 1, 0.5, 1);
      }
      @keyframes bounce {
        0% {
          transform: scale(1);
        }
        50% {
          transform: scale(1.04);
        }
        100% {
          transform: scale(1);
        }
      }
      .container {
        border: 8px solid black;
        padding: 25px;
        width: 100%;
        max-width: 950px;
        box-sizing: border-box;
        font-size: 30px
      }
      @media (max-width: 768px) {
        .container {
          padding: 10px;
          border-left: none;
          border-right: none;
          width: 100%;
          max-width: 100%;
        }
      }
      .header {
        background: black;
        color: white;
        text-align: center;
        padding: 10px;
        font-size: 32px;
        font-weight: bold;
      }
      select {
        width: 100%;
        padding: 10px;
        font-size: 32px;
        margin-top: 5px;
      }
      .section {
        display: flex;
        border: 4px solid black;
        margin-top: 15px;
      }
      .left, .right {
        width: 50%;
        padding: 10px;
      }
      .block {
        border: 4px solid black;
        margin-bottom: 10px;
      }
      .block-title {
        background: black;
        color: white;
        font-weight: bold;
        padding: 5px 10px;
        font-size: 32px;
      }
      .line {
        display: flex;
        justify-content: space-between;
        padding: 3px 10px;
        border-bottom: 1px solid #ccc;
        font-size: 32px;
      }
      .line:last-child {
        border-bottom: none;
      }
      .highlight-cashflow {
        background: #c1ff86;
      }
      .highlight-income {
        background: #dff0d8;
      }
      .highlight-expense {
        background: #f2dede;
      }
      @keyframes highlightRow {
        0%   { background-color: #ffffcc; }
        50%  { background-color: #fff799; }
        100% { background-color: transparent; }
      }
      .transaction-highlight {
        animation: highlightRow 2s ease-out;
      }
      .two-col {
        display: flex;
        gap: 10px;
      }
      .two-col .block {
        flex: 1;
      }
      @keyframes flashYellow {
        0% {
          background-color: #ffff66;
          transform: scale(1);
        }
        50% {
          background-color: #ffffff;
          transform: scale(1.08);
        }
        100% {
          background-color: #ffff66;
          transform: scale(1);
        }
      }
      .flash {
        animation: flashYellow 1s ease-in-out;
      }
      .asset-list {
        display: flex;
        flex-direction: column;
        margin-bottom: 20px;
        gap: 8px;
      }
      .asset-item {
        padding: 10px;
        border: 2px solid black;
        border-radius: 8px;
        background: #fff7dc;
        font-size: 28px;
        cursor: pointer;
        text-align: center;
      }
      .asset-item.selected {
        background: #a8dadc;
        border-color: #457b9d;
      }
      .explosion {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background: radial-gradient(circle, red, orange, yellow);
        opacity: 0.9;
        z-index: 9999;
        animation: boom 1.2s ease-out forwards;
        pointer-events: none;
      }
      .flash {
        animation: flashYellow 3s ease-in-out;
      }
      @keyframes boom {
        0% { transform: scale(0); opacity: 1; }
        70% { transform: scale(1.3); opacity: 1; }
        100% { transform: scale(1); opacity: 0; }
      }

      #ratRaceEscape {
        display: none;
        margin-top: 50px;
        margin-bottom: 30px;
        padding: 0;
        border: none;
        background: transparent;
      }

      .escape-card {
        position: relative;
        overflow: hidden;
        padding: 34px 24px 30px;
        border: 4px solid #ffcc4d;
        border-radius: 28px;
        background:
          radial-gradient(circle at top left, rgba(255, 0, 221, 0.28), transparent 28%),
          radial-gradient(circle at top right, rgba(255, 208, 0, 0.18), transparent 24%),
          linear-gradient(160deg, #170028 0%, #2c0145 45%, #140021 100%);
        box-shadow:
          0 0 0 4px rgba(255,255,255,0.06) inset,
          0 0 22px rgba(255, 0, 212, 0.45),
          0 0 48px rgba(130, 25, 255, 0.35),
          0 12px 26px rgba(0,0,0,0.35);
        text-align: center;
        color: white;
        animation: escapeCardPulse 2.2s ease-in-out infinite;
      }

      @keyframes escapeCardPulse {
        0%, 100% {
          box-shadow:
            0 0 0 4px rgba(255,255,255,0.06) inset,
            0 0 22px rgba(255, 0, 212, 0.45),
            0 0 48px rgba(130, 25, 255, 0.35),
            0 12px 26px rgba(0,0,0,0.35);
        }
        50% {
          box-shadow:
            0 0 0 4px rgba(255,255,255,0.06) inset,
            0 0 32px rgba(255, 0, 212, 0.65),
            0 0 70px rgba(130, 25, 255, 0.48),
            0 12px 26px rgba(0,0,0,0.35);
        }
      }

      .escape-glow {
        position: absolute;
        inset: -40%;
        background:
          radial-gradient(circle, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0.02) 20%, transparent 45%);
        animation: escapeGlowSpin 10s linear infinite;
        pointer-events: none;
      }

      @keyframes escapeGlowSpin {
        from { transform: rotate(0deg); }
        to   { transform: rotate(360deg); }
      }

      .escape-kicker {
        position: relative;
        z-index: 1;
        display: inline-block;
        padding: 8px 18px;
        margin-bottom: 18px;
        border-radius: 999px;
        border: 2px solid #ffcf40;
        background: rgba(255, 207, 64, 0.14);
        color: #ffd86b;
        font-size: 22px;
        font-weight: bold;
        letter-spacing: 2px;
      }

      .escape-title {
        position: relative;
        z-index: 1;
        font-size: 40px;
        font-weight: 900;
        line-height: 1.08;
        text-transform: uppercase;
        letter-spacing: 1px;
        margin-bottom: 18px;
        text-shadow:
          0 2px 0 rgba(0,0,0,0.35),
          0 0 14px rgba(255, 66, 236, 0.55);
      }

      .escape-title span {
        display: block;
        margin-top: 8px;
        font-size: 54px;
        line-height: 1;
        color: #ff67f5;
        text-shadow:
          0 3px 0 #5b1469,
          0 0 16px rgba(255, 107, 245, 0.85),
          0 0 34px rgba(171, 54, 255, 0.5);
      }

      .escape-subtitle {
        position: relative;
        z-index: 1;
        font-size: 28px;
        line-height: 1.35;
        color: #fff5ff;
        margin-bottom: 20px;
        text-shadow: 0 1px 6px rgba(0,0,0,0.35);
      }

      .escape-badge {
        position: relative;
        z-index: 1;
        display: inline-block;
        padding: 10px 18px;
        margin-bottom: 22px;
        border-radius: 16px;
        border: 2px dashed rgba(255, 216, 107, 0.9);
        background: rgba(255,255,255,0.08);
        color: #ffd86b;
        font-size: 24px;
        font-weight: bold;
        box-shadow: 0 0 14px rgba(255, 216, 107, 0.22);
      }

      .escape-btn {
        position: relative;
        z-index: 1;
        padding: 18px 30px;
        border: 3px solid #1a001f;
        border-radius: 18px;
        background: linear-gradient(180deg, #ffd54f 0%, #ffb300 100%);
        color: #2b0036;
        font-size: 30px;
        font-weight: 900;
        cursor: pointer;
        box-shadow:
          0 6px 0 #7a4b00,
          0 10px 22px rgba(0,0,0,0.28),
          0 0 18px rgba(255, 194, 61, 0.5);
        transition: transform 0.08s ease, box-shadow 0.08s ease, filter 0.15s ease;
      }

      .escape-btn:hover {
        filter: brightness(1.04);
      }

      .escape-btn:active {
        transform: translateY(4px);
        box-shadow:
          0 2px 0 #7a4b00,
          0 6px 14px rgba(0,0,0,0.24),
          0 0 14px rgba(255, 194, 61, 0.45);
      }

      /* =========================
        FULL SCREEN QUALIFIED CELEBRATION
      ========================= */
      .escape-qualify-overlay {
        position: fixed;
        inset: 0;
        z-index: 30000;
        display: flex;
        align-items: center;
        justify-content: center;
        background:
          radial-gradient(circle at center, rgba(255, 0, 234, 0.18), rgba(10,0,20,0.92) 60%),
          linear-gradient(180deg, rgba(26, 0, 45, 0.95), rgba(8, 0, 18, 0.98));
        backdrop-filter: blur(2px);
        animation: escapeOverlayFadeIn 0.25s ease-out;
      }

      @keyframes escapeOverlayFadeIn {
        from { opacity: 0; }
        to   { opacity: 1; }
      }

      .escape-qualify-panel {
        width: min(900px, 92vw);
        border: 4px solid #ffd54f;
        border-radius: 30px;
        padding: 34px 24px;
        text-align: center;
        color: white;
        background:
          radial-gradient(circle at top left, rgba(255, 0, 221, 0.24), transparent 25%),
          radial-gradient(circle at top right, rgba(255, 213, 79, 0.15), transparent 22%),
          linear-gradient(160deg, #1c0031 0%, #34004f 55%, #14001f 100%);
        box-shadow:
          0 0 26px rgba(255, 69, 237, 0.45),
          0 0 55px rgba(135, 45, 255, 0.35),
          0 20px 40px rgba(0,0,0,0.38);
        animation: escapePanelPop 0.35s cubic-bezier(0.2, 1.1, 0.3, 1);
      }

      @keyframes escapePanelPop {
        0%   { transform: scale(0.88); opacity: 0; }
        70%  { transform: scale(1.03); opacity: 1; }
        100% { transform: scale(1); }
      }

      .escape-qualify-eyebrow {
        font-size: 24px;
        font-weight: bold;
        letter-spacing: 3px;
        color: #ffd76b;
        margin-bottom: 14px;
      }

      .escape-qualify-headline {
        font-size: 64px;
        font-weight: 900;
        line-height: 0.95;
        margin-bottom: 16px;
        text-transform: uppercase;
        color: #ff67f5;
        text-shadow:
          0 4px 0 #5f1674,
          0 0 18px rgba(255, 103, 245, 0.9),
          0 0 36px rgba(170, 44, 255, 0.5);
      }

      .escape-qualify-headline small {
        display: block;
        margin-top: 14px;
        font-size: 34px;
        color: #ffffff;
        text-shadow: 0 0 12px rgba(255,255,255,0.25);
      }

      .escape-qualify-copy {
        font-size: 30px;
        line-height: 1.35;
        margin-bottom: 26px;
        color: #fff5ff;
      }

      .escape-qualify-amount {
        display: inline-block;
        padding: 14px 24px;
        border-radius: 18px;
        border: 2px solid #ffd54f;
        background: rgba(255, 213, 79, 0.12);
        color: #ffd76b;
        font-size: 34px;
        font-weight: 900;
        margin-bottom: 26px;
        box-shadow: 0 0 16px rgba(255, 213, 79, 0.22);
      }

      .escape-qualify-close {
        padding: 16px 28px;
        border: 3px solid #1a001f;
        border-radius: 16px;
        background: linear-gradient(180deg, #ff67f5 0%, #d738ff 100%);
        color: white;
        font-size: 28px;
        font-weight: 900;
        cursor: pointer;
        box-shadow: 0 6px 0 #6d0e7d, 0 8px 20px rgba(0,0,0,0.28);
      }

      .escape-qualify-close:active {
        transform: translateY(4px);
        box-shadow: 0 2px 0 #6d0e7d, 0 4px 12px rgba(0,0,0,0.24);
      }
      /* ===== Floating Side Buttons ===== */
      .floating-side-buttons {
        position: fixed;
        right: 14px;
        top: 140px;
        transform: translateY(-50%);
        z-index: 5000;
        display: flex;
        flex-direction: column;
        gap: 10px;
        touch-action: none;
      }

      .floating-tool-btn {
        width: 78px;
        height: 78px;
        border: 4px solid black;
        border-radius: 22px;
        background: linear-gradient(180deg, #fff7dc 0%, #ffe7a8 100%);
        color: black;
        font-size: 36px;
        font-weight: bold;
        box-shadow: 0 8px 18px rgba(0,0,0,0.28);
        cursor: grab;
        user-select: none;
      }

      .floating-tool-btn:active {
        cursor: grabbing;
      }

      /* ===== Profession Header Row ===== */
      .header-row {
        display: flex;
        align-items: stretch;
        gap: 10px;
        margin-bottom: 10px;
      }

      .header-main {
        flex: 1;
        background: black;
        color: white;
        text-align: center;
        padding: 10px;
        font-size: 32px;
        font-weight: bold;
        border: 4px solid black;
      }

      .header-side-btn {
        min-width: 140px;
        background: linear-gradient(180deg, #ff79f6 0%, #d936ff 100%);
        color: white;
        border: 4px solid #1a001f;
        border-radius: 18px;
        font-size: 22px;
        font-weight: 900;
        padding: 12px 18px;
        cursor: pointer;
        box-shadow:
          0 6px 0 #6d0e7d,
          0 8px 20px rgba(0,0,0,0.28),
          0 0 14px rgba(255, 103, 245, 0.35);
        transition: transform 0.08s ease, box-shadow 0.08s ease, filter 0.15s ease;
      }

      .header-side-btn:hover {
        filter: brightness(1.05);
      }

      .header-side-btn:active {
        transform: translateY(4px);
        box-shadow:
          0 2px 0 #6d0e7d,
          0 4px 12px rgba(0,0,0,0.24),
          0 0 10px rgba(255, 103, 245, 0.28);
      }

      /* ===== Modal ===== */
      .modal-overlay {
        position: fixed;
        inset: 0;
        background: rgba(0,0,0,0.58);
        display: none;
        align-items: center;
        justify-content: center;
        z-index: 10000;
        padding: 20px;
      }

      .modal-overlay.show {
        display: flex;
      }

      .modal-card {
        width: min(760px, 95vw);
        max-height: 90vh;
        overflow: auto;
        background: #fff7dc;
        border: 4px solid black;
        border-radius: 20px;
        box-shadow: 0 18px 40px rgba(0,0,0,0.35);
        animation: modalPop 0.18s ease-out;
      }

      @keyframes modalPop {
        from { transform: scale(0.96); opacity: 0; }
        to { transform: scale(1); opacity: 1; }
      }

      .modal-header {
        background: black;
        color: white;
        padding: 14px 18px;
        font-size: 28px;
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: space-between;
      }

      .modal-close {
        background: white;
        color: black;
        border: 2px solid black;
        border-radius: 10px;
        font-size: 20px;
        font-weight: bold;
        padding: 6px 12px;
        cursor: pointer;
      }

      .modal-body {
        padding: 20px;
        color: black;
        font-size: 24px;
      }

      .modal-message {
        white-space: pre-line;
        line-height: 1.4;
        margin-bottom: 18px;
      }

      .modal-field {
        display: flex;
        flex-direction: column;
        gap: 6px;
        margin-bottom: 14px;
      }

      .modal-field label {
        font-size: 20px;
        font-weight: bold;
      }

      .modal-input,
      .modal-select {
        width: 100%;
        box-sizing: border-box;
        font-size: 24px;
        padding: 12px 14px;
        border: 3px solid black;
        border-radius: 10px;
        background: white;
      }

      .modal-actions {
        display: flex;
        justify-content: flex-end;
        gap: 10px;
        flex-wrap: wrap;
        margin-top: 18px;
      }

      .modal-btn {
        border: 3px solid black;
        border-radius: 10px;
        font-size: 22px;
        font-weight: bold;
        padding: 10px 18px;
        cursor: pointer;
      }

      .modal-btn.primary {
        background: darkgreen;
        color: white;
      }

      .modal-btn.secondary {
        background: #ddd;
        color: black;
      }

      .modal-btn.danger {
        background: darkred;
        color: white;
      }

      .modal-btn.gold {
        background: gold;
        color: black;
      }

      /* ===== Calculator ===== */
      .calc-wrap {
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
      }

      .calc-display {
        width: 100%;
        box-sizing: border-box;
        font-size: 32px;
        font-weight: bold;
        text-align: right;
        padding: 14px;
        border: 3px solid black;
        border-radius: 12px;
        background: white;
      }

      .calc-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 10px;
      }

      .calc-btn {
        border: 3px solid black;
        border-radius: 12px;
        font-size: 28px;
        font-weight: bold;
        padding: 16px 10px;
        background: #fff;
        cursor: pointer;
      }

      .calc-btn {
        touch-action: manipulation;
        font-size: 30px;
      }

      .calc-btn.operator {
        background: #cce5ff;
      }

      .calc-btn.equal {
        background: #c1ff86;
      }

      .calc-btn.clear {
        background: #f2dede;
      }

      /* Prevent tap-to-zoom behavior on calculator and modal controls */
      .calc-btn,
      .modal-btn,
      .modal-close,
      .floating-tool-btn,
      #calculatorLauncher,
      #appModal button {
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
      }

      /* Prevent text selection/callout while tapping calculator */
      .calc-btn,
      .calc-display {
        -webkit-user-select: none;
        user-select: none;
        -webkit-touch-callout: none;
      }

      /* =========================
        FAST TRACK THEME
        Styled to match flyer vibe
      ========================= */

      #fastTrackPage {
        min-height: 100vh;
        padding: 30px 18px 140px;
        box-sizing: border-box;
        background:
          radial-gradient(circle at top left, rgba(255, 0, 234, 0.16), transparent 22%),
          radial-gradient(circle at top right, rgba(255, 213, 79, 0.12), transparent 20%),
          radial-gradient(circle at bottom left, rgba(183, 0, 255, 0.12), transparent 18%),
          linear-gradient(180deg, #12001f 0%, #230038 45%, #140021 100%);
        color: white;
        position: relative;
        overflow-x: hidden;
        overflow-y: auto;
        padding-bottom: max(140px, env(safe-area-inset-bottom));
      }

      #fastTrackPage::before {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        background:
          radial-gradient(circle at 12% 18%, rgba(255,255,255,0.08) 0 2px, transparent 3px),
          radial-gradient(circle at 86% 22%, rgba(255,210,90,0.10) 0 2px, transparent 3px),
          radial-gradient(circle at 18% 72%, rgba(255,120,245,0.08) 0 2px, transparent 3px),
          radial-gradient(circle at 80% 78%, rgba(255,255,255,0.06) 0 2px, transparent 3px);
        opacity: 0.9;
      }

      .fasttrack-shell {
        max-width: 980px;
        margin: 0 auto;
        position: relative;
        z-index: 1;
      }

      .fasttrack-hero {
        position: relative;
        overflow: hidden;
        padding: 26px 20px 24px;
        margin-bottom: 24px;
        border: 4px solid #ffcf4c;
        border-radius: 28px;
        text-align: center;
        background:
          radial-gradient(circle at top left, rgba(255, 0, 221, 0.22), transparent 28%),
          radial-gradient(circle at top right, rgba(255, 215, 90, 0.14), transparent 20%),
          linear-gradient(160deg, #1b002d 0%, #32004f 55%, #190025 100%);
        box-shadow:
          0 0 0 4px rgba(255,255,255,0.04) inset,
          0 0 24px rgba(255, 0, 212, 0.32),
          0 0 60px rgba(125, 32, 255, 0.24),
          0 16px 34px rgba(0,0,0,0.34);
      }

      .fasttrack-hero::after {
        content: "";
        position: absolute;
        inset: -35%;
        background: radial-gradient(circle, rgba(255,255,255,0.09) 0%, rgba(255,255,255,0.02) 24%, transparent 48%);
        animation: fastTrackGlowSpin 14s linear infinite;
        pointer-events: none;
      }

      @keyframes fastTrackGlowSpin {
        from { transform: rotate(0deg); }
        to { transform: rotate(360deg); }
      }

      .fasttrack-kicker {
        position: relative;
        z-index: 1;
        display: inline-block;
        margin-bottom: 14px;
        padding: 8px 16px;
        border-radius: 999px;
        border: 2px solid #ffd76b;
        background: rgba(255, 215, 107, 0.10);
        color: #ffd76b;
        font-weight: bold;
        letter-spacing: 2px;
      }

      .fasttrack-title {
        position: relative;
        z-index: 1;
        margin-bottom: 12px;
        font-weight: 900;
        text-transform: uppercase;
        letter-spacing: 1px;
        color: #ff6cf5;
        text-shadow:
          0 3px 0 #65187a,
          0 0 16px rgba(255, 108, 245, 0.82),
          0 0 34px rgba(170, 44, 255, 0.42);
      }

      .fasttrack-title .top-line {
        display: block;
      }

      .fasttrack-title .bottom-line {
        display: block;
        color: white;
        text-shadow: 0 0 12px rgba(255,255,255,0.22);
      }

      .fasttrack-subtitle {
        position: relative;
        z-index: 1;
        line-height: 1.35;
        color: #fff6ff;
        margin-bottom: 18px;
      }

      .fasttrack-goal-chip {
        position: relative;
        z-index: 1;
        display: inline-block;
        padding: 12px 20px;
        border-radius: 18px;
        border: 2px dashed #ffd76b;
        background: rgba(255,255,255,0.08);
        color: #ffd76b;
        font-weight: bold;
        box-shadow: 0 0 16px rgba(255, 216, 107, 0.18);
      }

      .fasttrack-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 18px;
      }

      .fasttrack-card {
        position: relative;
        overflow: hidden;
        border: 3px solid #ffcf4c;
        border-radius: 24px;
        padding: 20px;
        background:
          linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.04)),
          linear-gradient(160deg, #210033 0%, #300047 52%, #1a0027 100%);
        box-shadow:
          0 10px 26px rgba(0,0,0,0.28),
          0 0 18px rgba(186, 70, 255, 0.16);
      }

      .fasttrack-card::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 5px;
        background: linear-gradient(90deg, #ffd54f, #ff64f5, #8b5bff, #ffd54f);
        opacity: 0.9;
      }

      .fasttrack-card-title {
        margin-bottom: 14px;
        color: #ffd76b;
        font-weight: 900;
        text-transform: uppercase;
        letter-spacing: 1px;
        text-shadow: 0 0 10px rgba(255, 215, 107, 0.16);
      }

      .fasttrack-stats {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
      }

      .fasttrack-stat {
        border: 2px solid rgba(255, 215, 107, 0.45);
        border-radius: 18px;
        padding: 16px 14px;
        text-align: center;
        background: rgba(255,255,255,0.06);
      }

      .fasttrack-stat-label {
        color: #ffd76b;
        font-weight: bold;
        margin-bottom: 8px;
      }

      .fasttrack-stat-value {
        color: white;
        font-weight: 900;
        text-shadow: 0 0 12px rgba(255,255,255,0.16);
      }

      @media (max-width: 768px) {
        .fasttrack-stats {
          grid-template-columns: 1fr;
        }

        .fasttrack-field-grid {
          grid-template-columns: 1fr;
        }

        .fasttrack-btn {
          width: 100%;
          min-width: 0;
          font-size: 30px;
          min-height: 84px;
        }
      }

      .fasttrack-rules {
        display: grid;
        gap: 12px;
      }

      .fasttrack-rule {
        display: flex;
        align-items: flex-start;
        gap: 12px;
        padding: 14px 14px;
        border-radius: 18px;
        background: rgba(255,255,255,0.06);
        border: 2px solid rgba(255,255,255,0.08);
      }

      .fasttrack-rule-bullet {
        min-width: 34px;
        height: 34px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 999px;
        background: linear-gradient(180deg, #ffd54f 0%, #ffb300 100%);
        color: #2b0036;
        font-weight: 900;
        border: 2px solid #1a001f;
      }

      .fasttrack-rule-text {
        color: #fff6ff;
        line-height: 1.35;
      }

      .fasttrack-action-row {
        display: flex;
        flex-wrap: wrap;
        gap: 18px;
        align-items: stretch;
        justify-content: center;
      }

      .fasttrack-btn {
        border: 3px solid #1a001f;
        border-radius: 18px;
        padding: 22px 30px;
        min-height: 88px;
        min-width: 220px;
        font-size: 32px;
        font-weight: 900;
        line-height: 1.1;
        cursor: pointer;
        box-shadow: 0 6px 0 rgba(0,0,0,0.28), 0 10px 20px rgba(0,0,0,0.22);
        transition: transform 0.08s ease, box-shadow 0.08s ease, filter 0.15s ease;
      }

      .fasttrack-btn:hover {
        filter: brightness(1.04);
      }

      .fasttrack-btn:active {
        transform: translateY(4px);
        box-shadow: 0 2px 0 rgba(0,0,0,0.28), 0 6px 12px rgba(0,0,0,0.18);
      }

      .fasttrack-btn.payday {
        background: linear-gradient(180deg, #ffd54f 0%, #ffb300 100%);
        color: #2b0036;
      }

      .fasttrack-btn.buy {
        background: linear-gradient(180deg, #66ffb8 0%, #10b981 100%);
        color: #10281f;
      }

      .fasttrack-btn.cheese {
        background: linear-gradient(180deg, #ff79f6 0%, #d936ff 100%);
        color: white;
      }

      .fasttrack-field-grid {
        display: grid;
        grid-template-columns: 1fr 1fr auto;
        gap: 12px;
        align-items: end;
      }

      .fasttrack-input-wrap {
        display: flex;
        flex-direction: column;
        gap: 6px;
      }

      .fasttrack-input-wrap label {
        color: #ffd76b;
        font-weight: bold;
      }

      .fasttrack-input,
      .fasttrack-select {
        width: 100%;
        box-sizing: border-box;
        padding: 12px 14px;
        border: 3px solid #ffcf4c;
        border-radius: 16px;
        background: rgba(255,255,255,0.95);
        color: #2b0036;
        font-weight: bold;
        box-shadow: inset 0 1px 4px rgba(0,0,0,0.08);
      }

      .fasttrack-log {
        width: 100%;
        border-collapse: collapse;
        overflow: hidden;
        border-radius: 18px;
      }

      .fasttrack-log th {
        background: linear-gradient(180deg, #3b0058 0%, #25003a 100%);
        color: #ffd76b;
        padding: 12px 10px;
        border-bottom: 2px solid rgba(255, 215, 107, 0.4);
        text-align: left;
      }

      .fasttrack-log td {
        padding: 12px 10px;
        border-bottom: 1px solid rgba(255,255,255,0.10);
        background: rgba(255,255,255,0.04);
        color: white;
      }

      .fasttrack-log tr:last-child td {
        border-bottom: none;
      }

      .fasttrack-progress-wrap {
        display: grid;
        gap: 10px;
      }

      .fasttrack-progress-bar {
        width: 100%;
        height: 28px;
        border-radius: 999px;
        overflow: hidden;
        border: 2px solid #ffcf4c;
        background: rgba(255,255,255,0.10);
        box-shadow: inset 0 1px 6px rgba(0,0,0,0.20);
      }

      .fasttrack-progress-fill {
        height: 100%;
        width: 0%;
        background: linear-gradient(90deg, #ff67f5 0%, #ffd54f 50%, #77ffbd 100%);
        box-shadow: 0 0 16px rgba(255, 103, 245, 0.35);
        transition: width 0.4s ease;
      }

      .fasttrack-win-banner {
        display: none;
        margin-top: 26px;
        padding: 34px 24px;
        border: 5px solid #ffd54f;
        border-radius: 30px;
        text-align: center;
        position: relative;
        overflow: hidden;
        background:
          radial-gradient(circle at top left, rgba(255, 0, 221, 0.24), transparent 24%),
          radial-gradient(circle at top right, rgba(255, 213, 79, 0.18), transparent 20%),
          linear-gradient(160deg, #2d0043 0%, #520073 52%, #260037 100%);
        box-shadow:
          0 0 28px rgba(255, 103, 245, 0.42),
          0 0 65px rgba(255, 213, 79, 0.22),
          0 18px 34px rgba(0,0,0,0.34);
      }

      .fasttrack-win-banner::before {
        content: "";
        position: absolute;
        inset: -35%;
        background:
          radial-gradient(circle, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0.03) 25%, transparent 50%);
        animation: fastTrackWinGlowSpin 12s linear infinite;
        pointer-events: none;
      }

      .fasttrack-win-banner.show {
        display: block;
        animation: fastTrackWinPop 0.55s cubic-bezier(0.2, 1.15, 0.3, 1);
      }

      @keyframes fastTrackWinPop {
        0% {
          transform: scale(0.72);
          opacity: 0;
        }
        60% {
          transform: scale(1.06);
          opacity: 1;
        }
        100% {
          transform: scale(1);
          opacity: 1;
        }
      }

      @keyframes fastTrackWinGlowSpin {
        from { transform: rotate(0deg); }
        to   { transform: rotate(360deg); }
      }

      .fasttrack-win-title {
        position: relative;
        z-index: 1;
        color: #ff67f5;
        font-weight: 900;
        text-transform: uppercase;
        font-size: 56px;
        line-height: 0.95;
        letter-spacing: 1px;
        margin-bottom: 16px;
        text-shadow:
          0 4px 0 #65187a,
          0 0 18px rgba(255, 108, 245, 0.82),
          0 0 38px rgba(170, 44, 255, 0.46);
      }

      .fasttrack-win-copy {
        position: relative;
        z-index: 1;
        color: #fff8ff;
        line-height: 1.4;
        font-size: 30px;
        font-weight: bold;
        text-shadow: 0 0 12px rgba(255,255,255,0.16);
      }

      @media (max-width: 768px) {
        .fasttrack-win-title {
          font-size: 44px;
        }

        .fasttrack-win-copy {
          font-size: 26px;
        }
      }
    @keyframes fadein {
      from {bottom: 0; opacity: 0;}
      to {bottom: 30px; opacity: 1;}
    }
    @keyframes fadeout {
      from {bottom: 30px; opacity: 1;}
      to {bottom: 0; opacity: 0;}
    }
