.tn{--tn-bg:#f6f4ef;--tn-card:#ffffff;--tn-ink:#1d2433;--tn-muted:#5b6474;--tn-line:#e3ded3;--tn-brand:#0b6e4f;--tn-brand-ink:#ffffff;--tn-accent:#f2a541;--tn-warn-bg:#fff4e0;--tn-ai-bg:#eef3ff;--tn-ai-ink:#2c4a9a;--tn-zalo:#0068ff;--tn-radius:14px;min-height:100vh;background:var(--tn-bg);color:var(--tn-ink);font:17px/1.55 system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-text-size-adjust:100%}.tn *,.tn :after,.tn :before{box-sizing:border-box}.tn a{color:var(--tn-brand)}.tn a.tn-btn{color:var(--tn-brand-ink)}.tn a.tn-btn.tn-ghost,.tn a.tn-logo{color:var(--tn-ink)}.tn-head{justify-content:space-between;gap:12px;max-width:640px;margin:0 auto;padding:14px 16px}.tn-head,.tn-logo{display:flex;align-items:center}.tn-logo{gap:10px;font-weight:700;font-size:18px;color:var(--tn-ink);text-decoration:none}.tn-logo b{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--tn-brand);color:#fff}.tn-head a.tn-small,.tn-logo b{font-size:16px}.tn-main{max-width:640px;margin:0 auto;padding:4px 16px 32px}.tn-hero h1{font-size:26px;line-height:1.25;margin:8px 0 6px;letter-spacing:-.01em}.tn-hero p{margin:0 0 16px;color:var(--tn-muted)}.tn-card{background:var(--tn-card);border:1px solid var(--tn-line);border-radius:var(--tn-radius);padding:16px;margin:12px 0}.tn-card h2{font-size:20px;margin:0 0 8px}.tn-card h3{font-size:17px;margin:0 0 8px}.tn input[inputmode],.tn input[type=email],.tn input[type=tel],.tn input[type=text],.tn textarea{width:100%;font:inherit;font-size:17px;color:inherit;background:#fff;border:1.5px solid var(--tn-line);border-radius:12px;padding:12px 14px}.tn textarea{min-height:120px;resize:vertical}.tn input:focus,.tn textarea:focus{outline:3px solid color-mix(in srgb,var(--tn-brand) 25%,transparent);border-color:var(--tn-brand)}.tn-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:12px 18px;border-radius:12px;border:1.5px solid transparent;font:inherit;font-weight:650;font-size:17px;cursor:pointer;text-decoration:none;background:var(--tn-brand);color:var(--tn-brand-ink)}.tn-btn:disabled{opacity:.55;cursor:progress}.tn-btn.tn-wide{width:100%}.tn-btn.tn-ghost{background:transparent;color:var(--tn-ink);border-color:var(--tn-line)}.tn-btn.tn-zalo{background:var(--tn-zalo)}.tn-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.tn-row>.tn-btn{flex:1 1 auto}.tn-muted{color:var(--tn-muted);font-size:16px}.tn-err{color:#a3261b;font-size:16px;margin:8px 0 0}.tn-progress{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:6px;gap:6px;margin:6px 0 14px;padding:0;list-style:none}.tn-progress li{font-size:13px;line-height:1.25;color:var(--tn-muted);text-align:center}.tn-progress li:before{content:"";display:block;height:6px;border-radius:6px;background:var(--tn-line);margin-bottom:6px}.tn-progress li.on{color:var(--tn-ink);font-weight:600}.tn-progress li.on:before{background:var(--tn-brand)}.tn-progress li.now:before{background:linear-gradient(90deg,var(--tn-brand) 0 50%,var(--tn-accent) 50%);background-size:200% 100%;animation:tn-run 1.6s linear infinite}@keyframes tn-run{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.tn-progress li.now:before{animation:none}}.tn-q{margin:14px 0}.tn-q p{margin:0 0 8px;font-weight:600}.tn-chips{display:flex;flex-wrap:wrap;gap:8px}.tn-chip{min-height:46px;padding:10px 14px;border-radius:999px;border:1.5px solid var(--tn-line);background:#fff;font:inherit;font-size:16px;color:inherit;cursor:pointer}.tn-chip[aria-pressed=true]{border-color:var(--tn-brand);background:color-mix(in srgb,var(--tn-brand) 10%,#fff);font-weight:600}.tn-chip.tn-skip{color:var(--tn-muted)}.tn-thumbs{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 0}.tn-thumbs img{width:64px;height:64px;object-fit:cover;border-radius:10px;border:1px solid var(--tn-line)}.tn-attach{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:10px 14px;border:1.5px dashed var(--tn-line);border-radius:12px;background:#fff;font-size:16px;cursor:pointer}.tn-attach input{position:absolute;width:1px;height:1px;opacity:0}.tn-cands{grid-gap:12px}.tn-cand,.tn-cands{display:grid;gap:12px}.tn-cand{grid-template-columns:88px 1fr;grid-gap:12px;background:var(--tn-card);border:1px solid var(--tn-line);border-radius:var(--tn-radius);padding:12px}.tn-cand .tn-noimg,.tn-cand img{width:88px;height:88px;object-fit:cover;border-radius:10px;background:var(--tn-bg)}.tn-cand h3{font-size:16px;line-height:1.35;margin:0 0 4px}.tn-cand .tn-price{font-weight:700;font-size:17px}.tn-cand .tn-meta{font-size:14px;color:var(--tn-muted)}.tn-badge{display:inline-block;font-size:13px;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--tn-ai-bg);color:var(--tn-ai-ink);margin:0 0 6px}.tn-badge.tn-staff{background:#e6f4ee;color:var(--tn-brand)}.tn-note{background:var(--tn-warn-bg);border-radius:12px;padding:12px 14px;font-size:16px;margin:12px 0}.tn-code{font-size:30px;font-weight:800;letter-spacing:.02em;margin:4px 0}.tn-link{word-break:break-all;font-size:15px;background:var(--tn-bg);border-radius:10px;padding:10px 12px}.tn-check{display:grid;grid-template-columns:24px 1fr;grid-gap:10px;gap:10px;align-items:start;font-size:16px;margin:10px 0}.tn-check input{width:22px;height:22px;margin:2px 0 0}.tn-legal{font-size:15px;color:var(--tn-muted);border-top:1px dashed var(--tn-line);padding-top:10px;margin-top:12px}.tn-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.tn-foot{max-width:640px;margin:0 auto;padding:20px 16px 96px;font-size:15px;color:var(--tn-muted)}.tn-consent{position:fixed;left:12px;right:12px;bottom:12px;max-width:616px;margin:0 auto;background:var(--tn-ink);color:#fff;border-radius:14px;padding:14px;font-size:16px;box-shadow:0 8px 30px rgba(0,0,0,.18);z-index:10}.tn-consent p{margin:0 0 10px}.tn-consent .tn-btn{min-height:44px}.tn-consent .tn-ghost{color:#fff;border-color:rgba(255,255,255,.4)}.tn-list{list-style:none;padding:0;margin:0}.tn-list li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--tn-line)}.tn-list li:last-child{border-bottom:0}.tn-spin{display:inline-block;width:18px;height:18px;border-radius:50%;border:3px solid var(--tn-line);border-top-color:var(--tn-brand);animation:tn-rot .9s linear infinite;vertical-align:-3px}@keyframes tn-rot{to{transform:rotate(1turn)}}@media (min-width:900px){.tn-hero h1{font-size:34px}.tn-foot,.tn-head,.tn-main{max-width:720px}.tn-cands{grid-template-columns:1fr 1fr}}