
        .shop-container {
            --gold: #ab8226;
            --gold-bright: #e0b84a;
            --emerald: #2f9e6a;
            --ember: #b8402f;
            --void: #0b0908;
            --panel: #15110d;
            --panel-raised: #1b1611;
            --line: rgba(201, 162, 39, 0.16);
            --ink: #ece4d3;
            --ink-dim: #948c7a;
 
            background: transparent;
            color: var(--ink);
            font-family: "Inter", sans-serif;
            max-width: 1000px;
            margin: 0 auto;
        }
 
        .shop-container h2, .shop-container h3, .shop-container .logo-accent { font-family: "Cinzel", serif; }
 
        .shop-top-bar {
            display: flex;
            justify-content: space-between;
            align-items: center;
            border-bottom: 1px solid var(--line);
            padding-bottom: 20px;
            margin-bottom: 30px;
            flex-wrap: wrap;
            gap: 15px;
        }
 
        .logo-area { font-weight: 600; font-size: 22px; }
        .logo-accent { color: var(--gold-bright); }
 
        .balance-pill {
            background: var(--panel-raised);
            padding: 8px 18px;
            border-radius: 100px;
            display: flex;
            gap: 10px;
            align-items: center;
            border: 1px solid var(--line);
        }
        .balance-pill .label { font-size: 11px; color: var(--ink-dim); font-weight: 600; }
        .balance-pill .value { color: var(--gold-bright); font-weight: 700; }
 
        .nav-tabs {
            display: flex;
            gap: 25px;
            margin-bottom: 30px;
            border-bottom: 1px solid var(--line);
        }
        .tab-item {
            text-decoration: none;
            color: var(--ink-dim);
            font-size: 14px;
            font-weight: 600;
            transition: color 0.2s ease;
            position: relative;
            padding-bottom: 12px;
            display: inline-block;
        }
        .tab-item:hover { color: var(--ink); }
        .tab-item.active { color: var(--gold-bright); }
        .tab-item.active::after {
            content: "";
            position: absolute;
            bottom: -1px;
            left: 0;
            width: 100%;
            height: 2px;
            background: var(--gold-bright);
        }
 
        .items-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 18px;
        }
 
        .shop-card {
            background: var(--panel);
            border: 1px solid var(--line);
            border-radius: 4px;
            display: flex;
            flex-direction: column;
            transition: border-color 0.2s ease, transform 0.2s ease;
            position: relative;
        }
 
        .shop-card:hover {
            border-color: var(--gold);
            transform: translateY(-3px);
        }
 
        .item-visual {
            height: 160px;
            background: var(--void);
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            overflow: hidden;
            border-bottom: 1px solid var(--line);
        }
 
        .item-visual img { width: 64px; height: 64px; object-fit: contain; filter: drop-shadow(0 0 12px rgba(224, 184, 74, 0.35)); }
 
        .item-badge {
            position: absolute;
            top: 12px;
            right: 12px;
            background: var(--gold);
            color: #14100a;
            font-size: 11px;
            font-weight: 700;
            padding: 4px 9px;
            border-radius: 3px;
        }
 
        .item-content {
            padding: 20px;
            display: flex;
            flex-direction: column;
            flex-grow: 1;
        }
        .item-info-wrapper {
            flex-grow: 1;
            margin-bottom: 18px;
        }
        .item-content h3 { margin: 0 0 8px 0; font-size: 16px; font-weight: 600; color: var(--ink); }
 
        .item-desc {
            color: var(--ink-dim);
            font-size: 13px;
            line-height: 1.6;
        }
 
        .item-footer { margin-top: auto; }
 
        .buy-btn {
            display: inline-block;
            text-align: center;
            text-decoration: none;
            width: 100%;
            padding: 12px;
            background: transparent;
            border: 1px solid var(--line);
            color: var(--ink);
            font-weight: 700;
            cursor: pointer;
            transition: background 0.2s ease, color 0.2s ease;
            font-size: 12px;
            letter-spacing: 1px;
            box-sizing: border-box;
            border-radius: 3px;
            font-family: "Cinzel", serif;
        }
 
        .buy-btn:hover:not(.disabled) { background: var(--panel-raised); border-color: var(--gold); }
 
        .buy-btn.accent { background: var(--gold); color: #14100a; border: none; }
        .buy-btn.accent:hover { background: var(--gold-bright); }
        .buy-btn.disabled { opacity: 0.5; cursor: not-allowed; }
 
        .history-panel h2 { margin-bottom: 18px; color: var(--gold-bright); font-size: 20px; }
        .scroll-box {
            max-height: 400px;
            overflow-y: auto;
            margin-bottom: 25px;
            background: var(--panel);
            border: 1px solid var(--line);
            border-radius: 4px;
        }
        .history-table { width: 100%; border-collapse: collapse; }
        .history-table td { padding: 13px 15px; border-bottom: 1px solid var(--line); font-size: 13px; }
        .history-table tr:last-child td { border-bottom: none; }
        .history-table .gold { color: var(--gold-bright); font-weight: 600; }
        .btn-container-mt { margin-top: 20px; }
 
        .flow-container { display: flex; justify-content: center; padding: 40px 0; }
        .selection-card {
            background: var(--panel);
            padding: 35px;
            width: 100%;
            max-width: 400px;
            border: 1px solid var(--line);
            border-radius: 4px;
            display: flex;
            flex-direction: column;
        }
        .selection-card h2 { font-size: 18px; margin-bottom: 15px; color: var(--gold-bright); }
 
        .transfer-info {
            margin-bottom: 20px;
            padding-bottom: 12px;
            border-bottom: 1px solid var(--line);
            font-size: 14px;
            color: var(--ink-dim);
        }
        .transfer-info strong { color: var(--ink); }
 
        .input-field { margin-bottom: 25px; margin-top: 10px; }
        .input-field input {
            width: 100%;
            background: var(--void);
            border: 1px solid var(--line);
            padding: 12px;
            color: var(--ink);
            outline: none;
            font-size: 15px;
            border-radius: 3px;
            font-family: "Inter", sans-serif;
        }
        .input-field input:focus-visible { border-color: var(--gold-bright); }
        .input-field input::placeholder { color: var(--ink-dim); }
 
        .btn-row { display: flex; flex-direction: column; gap: 12px; }
        .cancel-link { text-align: center; color: var(--ink-dim); font-size: 12px; text-decoration: none; }
        .cancel-link:hover { color: var(--ink); }
 
        .result-screen {
            display: flex;
            flex-direction: column;
            align-items: center;
            text-align: center;
            gap: 18px;
            padding: 60px 20px;
            max-width: 400px;
            margin: 0 auto;
        }
        .result-screen .buy-btn { max-width: 220px; }
        .result-screen p { color: var(--ink); font-size: 15px; }
 
        .status-icon {
            width: 60px;
            height: 60px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-family: "Font Awesome 6 Free";
            font-weight: 900;
            font-size: 24px;
        }
        .status-icon.success { background: rgba(47, 158, 106, 0.12); border: 1px solid rgba(47, 158, 106, 0.4); color: var(--emerald); }
        .status-icon.success::before { content: "\f00c"; }
        .status-icon.error { background: rgba(184, 64, 47, 0.12); border: 1px solid rgba(184, 64, 47, 0.4); color: var(--ember); }
        .status-icon.error::before { content: "\f00d"; }
 
        @media (max-width: 768px) {
            .items-grid { grid-template-columns: 1fr; }
        }
 
        .msg-pnl { padding: 16px 18px; margin-bottom: 20px; border-left: 3px solid var(--ink-dim); background: var(--panel); border-radius: 0 3px 3px 0; font-size: 14px; }
        .msg-pnl.error { border-color: var(--ember); color: var(--ember); }
        .msg-pnl.info { border-color: var(--gold); color: var(--ink); }
        