:root{--bg: #fafaf7;--bg-card: #ffffff;--bg-muted: #f4f4f0;--border: #e5e5e0;--border-strong: #d4d4ce;--text: #1a1a1a;--text-mid: #4a4a4a;--text-dim: #8a8a8a;--orange: #f08020;--orange-soft: #fff4e6;--orange-dark: #c2620e;--blue: #0e4e9f;--blue-soft: #e7f0fa;--blue-dark: #093370;--green: #54a52e;--green-soft: #ecf7e3;--green-dark: #357617;--red: #d63030;--amber: #d68900;--radius: 10px;--radius-lg: 16px;--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 4px 12px rgba(0, 0, 0, .04);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .06), 0 12px 32px rgba(0, 0, 0, .06);--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "Cascadia Code", monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;min-height:100vh}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}input,textarea,select{font:inherit;color:inherit}.container{max-width:1200px;margin:0 auto;padding:0 1.25rem}.container-narrow{max-width:720px;margin:0 auto;padding:0 1.25rem}header.shop-header{background:var(--bg-card);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.shop-header-inner{display:flex;align-items:center;justify-content:space-between;padding:.85rem 0;gap:1.5rem}.shop-logo{font-weight:800;font-size:1.15rem;color:var(--blue-dark);letter-spacing:-.01em;display:inline-flex;align-items:center;gap:.45rem}.shop-logo .dot{color:var(--orange)}.shop-logo .tag{font-size:.7rem;background:var(--orange-soft);color:var(--orange-dark);padding:.15rem .5rem;border-radius:100px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.shop-nav{display:flex;gap:1.5rem;align-items:center;font-size:.9rem;font-weight:500}.shop-nav a{color:var(--text-mid)}.shop-nav a:hover{color:var(--blue);text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1.25rem;border-radius:var(--radius);font-size:.92rem;font-weight:600;text-decoration:none;transition:transform .12s ease,box-shadow .18s ease,background .18s ease}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--orange);color:#fff}.btn-primary:hover:not(:disabled){background:var(--orange-dark);transform:translateY(-1px);box-shadow:var(--shadow);text-decoration:none}.btn-secondary{background:var(--blue);color:#fff}.btn-secondary:hover:not(:disabled){background:var(--blue-dark);text-decoration:none}.btn-outline{background:#fff;color:var(--text);border:1px solid var(--border-strong)}.btn-outline:hover:not(:disabled){border-color:var(--text);text-decoration:none}.btn-ghost{color:var(--blue)}.btn-ghost:hover:not(:disabled){background:var(--bg-muted)}.btn-lg{padding:.95rem 1.75rem;font-size:1rem}.btn-block{width:100%}.hero{padding:3.5rem 0 2.5rem;background:linear-gradient(180deg,var(--bg) 0%,var(--bg-card) 100%);border-bottom:1px solid var(--border)}.hero h1{font-size:clamp(2rem,4.5vw,3.25rem);font-weight:800;line-height:1.05;color:var(--blue-dark);letter-spacing:-.02em;margin-bottom:1rem}.hero h1 em{font-style:normal;color:var(--orange)}.hero p{font-size:1.05rem;color:var(--text-mid);max-width:540px;margin-bottom:1.75rem}.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap}.rail{padding:2.5rem 0}.rail-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:1.25rem}.rail-title{font-size:1.4rem;font-weight:700;color:var(--text);letter-spacing:-.01em}.rail-link{font-size:.88rem;font-weight:600;color:var(--orange-dark)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}.product-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:transform .15s ease,box-shadow .18s ease,border-color .18s ease;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--border-strong);text-decoration:none;color:inherit}.product-card a,.product-card a:hover{color:inherit;text-decoration:none}.product-thumb{aspect-ratio:16/9;background:var(--bg-muted);overflow:hidden;position:relative}.product-thumb img{width:100%;height:100%;object-fit:cover;display:block}.product-type-badge{position:absolute;top:.6rem;left:.6rem;background:#000000b8;color:#fff;font-size:.65rem;font-weight:700;letter-spacing:.06em;padding:.2rem .55rem;border-radius:4px;text-transform:uppercase}.discount-badge{position:absolute;top:.6rem;right:.6rem;background:var(--red);color:#fff;font-size:.7rem;font-weight:700;padding:.2rem .55rem;border-radius:4px}.product-body{padding:.9rem 1rem 1rem;display:flex;flex-direction:column;flex:1}.product-title{font-size:.97rem;font-weight:700;color:var(--text);margin-bottom:.25rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-instructor{font-size:.78rem;color:var(--text-dim);margin-bottom:.6rem}.product-price{margin-top:auto;display:flex;align-items:baseline;gap:.4rem}.product-price .now{font-size:1.05rem;font-weight:800;color:var(--blue-dark)}.product-price .was{font-size:.78rem;color:var(--text-dim);text-decoration:line-through}.product-detail{padding:2.5rem 0;display:grid;grid-template-columns:1fr 360px;gap:3rem;align-items:start}@media (max-width: 900px){.product-detail{grid-template-columns:1fr}}.detail-main h1{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:800;color:var(--blue-dark);letter-spacing:-.02em;margin-bottom:.5rem}.detail-instructor{font-size:.95rem;color:var(--text-mid);margin-bottom:1.5rem}.detail-description{font-size:.97rem;color:var(--text-mid);margin-bottom:2rem;white-space:pre-wrap}.detail-section h2{font-size:1.2rem;font-weight:700;margin-bottom:.85rem;margin-top:2rem}.curriculum-list{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.curriculum-row{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--border);font-size:.93rem}.curriculum-row:last-child{border-bottom:none}.curriculum-row .num{font-size:.72rem;color:var(--text-dim);font-family:var(--font-mono);min-width:28px}.curriculum-row .preview-tag{margin-left:auto;font-size:.7rem;font-weight:700;background:var(--green-soft);color:var(--green-dark);padding:.15rem .5rem;border-radius:4px}.buy-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;position:sticky;top:5rem;box-shadow:var(--shadow)}.buy-thumb{aspect-ratio:16/9;background:var(--bg-muted);border-radius:var(--radius);overflow:hidden;margin-bottom:1.25rem}.buy-thumb img{width:100%;height:100%;object-fit:cover}.buy-price-row{display:flex;align-items:baseline;gap:.6rem;margin-bottom:1rem}.buy-price-now{font-size:2.1rem;font-weight:800;color:var(--blue-dark);letter-spacing:-.02em}.buy-price-was{font-size:1rem;color:var(--text-dim);text-decoration:line-through}.buy-discount-label{background:var(--red);color:#fff;font-size:.7rem;font-weight:700;padding:.2rem .55rem;border-radius:4px}.buy-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;font-size:.88rem;color:var(--text-mid);margin:1rem 0 1.25rem}.buy-list li{display:flex;align-items:center;gap:.5rem}.buy-list .tick{color:var(--green);font-weight:700;flex-shrink:0}.buy-trust{margin-top:1rem;text-align:center;font-size:.78rem;color:var(--text-dim)}.wallet-row{display:flex;gap:.5rem;justify-content:center;margin-top:.4rem}.wallet-pill{background:var(--bg-muted);border:1px solid var(--border);padding:.25rem .6rem;border-radius:100px;font-size:.75rem;font-weight:600;color:var(--text)}.form-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.25rem}.form-section h3{font-size:1.05rem;font-weight:700;margin-bottom:.25rem}.form-section .hint{font-size:.83rem;color:var(--text-dim);margin-bottom:1rem}.field{margin-bottom:.85rem}.field label{display:block;font-size:.78rem;font-weight:600;color:var(--text-mid);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.35rem}.field input,.field select,.field textarea{width:100%;background:#fff;border:1px solid var(--border-strong);border-radius:var(--radius);padding:.75rem .85rem;font-size:.95rem;transition:border-color .18s ease,box-shadow .18s ease;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #f080201f}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}@media (max-width: 600px){.field-row{grid-template-columns:1fr}}.wallet-toggle{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.wallet-toggle button{padding:.95rem;background:#fff;border:2px solid var(--border-strong);border-radius:var(--radius);font-weight:700;font-size:.95rem;transition:all .18s ease}.wallet-toggle button.on{border-color:var(--orange);background:var(--orange-soft);color:var(--orange-dark)}.gift-toggle{display:flex;align-items:center;gap:.6rem;padding:.75rem 0;font-size:.93rem;color:var(--text);cursor:pointer}.gift-toggle input{width:18px;height:18px}.alert{background:#d6303014;border:1px solid rgba(214,48,48,.25);color:var(--red);padding:.75rem 1rem;border-radius:var(--radius);font-size:.88rem;margin:.85rem 0}.alert-info{background:var(--blue-soft);border-color:#0e4e9f40;color:var(--blue-dark)}.status-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:3rem 2rem;text-align:center;margin:2.5rem auto;max-width:540px;box-shadow:var(--shadow)}.status-card h1{font-size:1.7rem;font-weight:800;color:var(--blue-dark);margin-bottom:.5rem}.status-card p{color:var(--text-mid);margin-bottom:1.5rem}.countdown{display:inline-block;background:var(--bg-muted);padding:.6rem 1.5rem;border-radius:var(--radius);font-family:var(--font-mono);font-size:2rem;font-weight:800;margin:1rem 0}.spinner{display:inline-block;width:48px;height:48px;border:4px solid var(--bg-muted);border-top-color:var(--orange);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.key-display{background:var(--green-soft);border:1px solid rgba(84,165,46,.3);border-radius:var(--radius);padding:1.25rem;text-align:center;margin:1.5rem 0}.key-display .label{font-size:.72rem;color:var(--text-mid);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.35rem}.key-display .value{font-family:var(--font-mono);font-size:1.5rem;font-weight:800;color:var(--green-dark);letter-spacing:.04em;word-break:break-all}.creds-table{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin:1.25rem 0;text-align:left}.creds-row{display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--border)}.creds-row:last-child{border-bottom:none}.creds-row .key{font-size:.78rem;color:var(--text-mid);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.creds-row .value{font-family:var(--font-mono);font-weight:700;font-size:.93rem;word-break:break-all}.copy-btn{background:#fff;border:1px solid var(--border-strong);border-radius:6px;padding:.4rem .65rem;font-size:.78rem;font-weight:600;color:var(--text)}.copy-btn.copied{background:var(--green-soft);border-color:var(--green);color:var(--green-dark)}footer.shop-footer{background:var(--bg-card);border-top:1px solid var(--border);padding:2.5rem 0 1.75rem;margin-top:4rem;color:var(--text-mid);font-size:.88rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem;margin-bottom:2rem}@media (max-width: 700px){.footer-grid{grid-template-columns:1fr}}.footer-grid h4{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text);margin-bottom:.85rem}.footer-grid ul{list-style:none;display:flex;flex-direction:column;gap:.45rem}.footer-grid a{color:var(--text-mid)}.footer-bottom{border-top:1px solid var(--border);padding-top:1.25rem;text-align:center;font-size:.78rem;color:var(--text-dim)}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.text-center{text-align:center}.text-dim{color:var(--text-dim)}.text-mid{color:var(--text-mid)}.bold{font-weight:700}.row{display:flex;gap:.75rem;flex-wrap:wrap}
