
.tsp-pl-off, html body:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5) .tsp-pl-off { display: none !important; }   
#tsp-pl-pg, #tsp-tm-pg { font-family: Inter, -apple-system, 'Segoe UI', Roboto, sans-serif; color: #0f172a; }
#tsp-pl-pg .plh { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 14px; flex-wrap: wrap; }
#tsp-pl-pg .plh .nt { font-size: 13px; color: #64748b; white-space: nowrap; }
.tsp-plan2 { display:inline-flex; align-items:center; gap:8px; height:34px; padding:0 14px; border-radius:10px; white-space:nowrap; font:800 13px var(--tsp-ff, Inter), sans-serif; letter-spacing:.02em; flex:none; }
.tsp-plan2 svg { width:14px; height:14px; flex:none; }
.tsp-plan2 em { font-style:normal; font-weight:600; opacity:.65; margin-right:2px; }
.tsp-plan2.free { background:#f1f5f9; color:#475569; } .tsp-plan2.free svg { fill:#94a3b8; }
.tsp-plan2.pro { background:#eff6ff; color:#1d4ed8; } .tsp-plan2.pro svg { fill:#2563eb; }
.tsp-plan2.adv { background:#f5f3ff; color:#6d28d9; } .tsp-plan2.adv svg { fill:#7c3aed; }
.tsp-plan2.unl { background:linear-gradient(135deg,#1e293b,#0f172a); color:#fde68a; } .tsp-plan2.unl svg { fill:#fbbf24; }
.tsp-plan2-up { height:34px; padding:0 14px; margin-left:6px; border:0; border-radius:10px; background:#1e2a44; color:#fff; font:800 12.5px var(--tsp-ff, Inter), sans-serif; cursor:pointer; white-space:nowrap; flex:none; }
.tsp-plan2-up:hover { background:#1e293b; }
.tsp-pl-plan { display: inline-flex; align-items: center; gap: 9px; height: 40px; padding: 0 6px; border-radius: 999px; background: linear-gradient(90deg, #0f172a, #1e293b); color: #fff; box-shadow: 0 4px 14px rgba(15,23,42,.25); white-space: nowrap; }   
.tsp-pl-plan .cr { width: 28px; height: 28px; border-radius: 50%; background: linear-gradient(135deg, #fbbf24, #f59e0b); display: flex; align-items: center; justify-content: center; flex: none; box-shadow: inset 0 1px 0 rgba(255,255,255,.35); }
.tsp-pl-plan .cr svg { width: 14px; height: 14px; fill: #fff; }
.tsp-pl-plan .tx { display: flex; flex-direction: column; line-height: 1.1; padding-right: 8px; }
.tsp-pl-plan .tx small { font: 700 9.5px Inter, sans-serif; letter-spacing: .08em; color: #94a3b8; text-transform: uppercase; }
.tsp-pl-plan .tx b { font: 800 14px Inter, sans-serif; color: #fff; }
.tsp-pl-plan button { height: 28px; padding: 0 13px; border: 0; border-radius: 14px; background: linear-gradient(135deg, #fbbf24, #f59e0b); color: #1f2937; font: 800 12px/28px Inter, sans-serif; cursor: pointer; white-space: nowrap; transition: box-shadow .18s; }
.tsp-pl-plan button:hover { box-shadow: 0 4px 10px rgba(245,158,11,.35); }
.tsp-pl-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; }
.tsp-pl-cd { position: relative; background: #fff; border: 1px solid #e5e9f0; border-radius: 14px; padding: 16px; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.tsp-pl-cd.on { border-color: #0f1b2d; box-shadow: inset 0 0 0 1px #0f1b2d; }
.tsp-pl-cd.lk { background: #fafbfc; }
.tsp-pl-cd .i { width: 40px; height: 40px; border-radius: 10px; background: #eef2f7; color: #0f1b2d; display: flex; align-items: center; justify-content: center; margin-bottom: 8px; }
.tsp-pl-cd .i svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.tsp-pl-cd.lk .i { color: #94a3b8; background: #f1f4f8; }
.tsp-pl-cd b.n { font-size: 14.5px; color: #0f172a; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tsp-pl-cd.lk b.n { color: #64748b; }
.tsp-pl-cd small { font-size: 12.5px; color: #64748b; line-height: 1.4; min-height: 35px; }
.tsp-pl-cd .ft { display: flex; justify-content: space-between; align-items: center; margin-top: 10px; min-height: 32px; }
.tsp-pl-cd .ft em { font-style: normal; font-size: 11.5px; font-weight: 700; color: #64748b; white-space: nowrap; }
.tsp-pl-cd .ft em.ok { color: #16a34a; } .tsp-pl-cd .ft em.pr { color: #b7791f; }
.tsp-pl-sw { position: relative; width: 42px; height: 24px; border: 0; padding: 0; border-radius: 12px; background: #cbd5e1; cursor: pointer; transition: background .15s; flex: none; }
.tsp-pl-sw i { position: absolute; left: 3px; top: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgba(0,0,0,.2); transition: left .15s; }
.tsp-pl-sw.on { background: #16a34a; } .tsp-pl-sw.on i { left: 21px; }
.tsp-pl-sw:disabled { opacity: .5; cursor: default; }
.tsp-pl-up { height: 32px; padding: 0 14px; border-radius: 16px; background: #fff7e6; color: #b7791f; border: 1px solid #f3d9a4; font: 700 12.5px/30px Inter, sans-serif; cursor: pointer; display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.tsp-pl-up svg, .tsp-pl-note svg { width: 13px; height: 13px; }
.tsp-pl-note { margin: 0 0 14px; font-size: 13px; color: #64748b; background: #f1f5f9; border-radius: 10px; padding: 10px 14px; display: flex; gap: 8px; align-items: center; }
.tsp-pl-note.gold { color: #b7791f; background: #fff7e6; }
#tsp-pl-pg .tsp-pl-gh { margin: 18px 2px 10px; font-size: 11.5px; font-weight: 800; letter-spacing: .9px; text-transform: uppercase; color: #64748b; }
#tsp-pl-pg .tsp-pl-gh:first-of-type { margin-top: 4px; }
#tsp-pl-pg .tsp-pl-grid { grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 12px; }
#tsp-pl-pg .tsp-pl-cd, #tsp-pl-pg .tsp-pl-cd.on { border: 0; box-shadow: 0 1px 2px rgba(15,23,42,.05); border-radius: 16px; padding: 16px; }
#tsp-pl-pg .tsp-pl-cd .i { width: 44px; height: 44px; border-radius: 12px; background: color-mix(in srgb, var(--pc) 13%, #fff); color: var(--pc); }
#tsp-pl-pg .tsp-pl-cd .i svg { width: 22px; height: 22px; stroke-width: 1.9; }
#tsp-pl-pg .tsp-pl-cd .i.go { position: relative; cursor: pointer; transition: background .16s, box-shadow .16s, transform .16s; }   
#tsp-pl-pg .tsp-pl-cd .i.go::after { content: ''; position: absolute; right: -5px; top: -5px; width: 17px; height: 17px; border-radius: 50%; background: var(--pc) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M9 7h8v8'/%3E%3C/svg%3E") center/10px no-repeat; box-shadow: 0 0 0 2px #fff; opacity: 0; transform: scale(.6); transition: opacity .16s, transform .16s; }
#tsp-pl-pg .tsp-pl-cd .i.go:hover { background: color-mix(in srgb, var(--pc) 24%, #fff); box-shadow: 0 0 0 3px color-mix(in srgb, var(--pc) 16%, transparent), 0 6px 14px color-mix(in srgb, var(--pc) 22%, transparent); transform: translateY(-2px); }
#tsp-pl-pg .tsp-pl-cd .i.go:hover::after, #tsp-pl-pg .tsp-pl-cd .i.go:focus-visible::after { opacity: 1; transform: none; }
#tsp-pl-pg .tsp-pl-cd .i.go:active { transform: scale(.94); }
#tsp-pl-pg .tsp-pl-cd:not(.on) .i { filter: grayscale(1); opacity: .7; }
#tsp-pl-pg .tsp-pl-cd b.n { font-size: 15px; font-weight: 800; margin-top: 2px; }
#tsp-pl-pg .tsp-pl-cd small { font-size: 12.5px; }
#tsp-pl-pg .tsp-pl-cd .ft em { padding: 3px 10px; border-radius: 999px; background: #f1f5f9; color: #64748b; font-size: 12px; }
#tsp-pl-pg .tsp-pl-cd .ft em.ok { background: #dcfce7; color: #15803d; } #tsp-pl-pg .tsp-pl-cd .ft em.ok::before { content: '✓ '; }
#tsp-pl-pg .tsp-pl-cd .ft em.pr { background: #fff7e6; color: #b7791f; }
.tsp-pl-ov { position: fixed; inset: 0; background: rgba(15,23,42,.45); z-index: 2147483000; display: flex; align-items: center; justify-content: center; padding: 16px; font-family: Inter, -apple-system, 'Segoe UI', Roboto, sans-serif; }
.tsp-pl-m { width: 460px; max-width: 100%; max-height: calc(100vh - 32px); overflow: auto; background: #fff; border-radius: 16px; padding: 24px; box-shadow: 0 20px 50px rgba(0,0,0,.3); color: #0f172a; box-sizing: border-box; }
.tsp-pl-m h3 { margin: 0 0 6px; font-size: 18px; font-weight: 800; }
.tsp-pl-m p { margin: 0 0 14px; font-size: 13.5px; color: #64748b; line-height: 1.5; }
.tsp-pl-m p b { color: #0f172a; }
.tsp-pl-m table { width: 100%; border-collapse: collapse; margin: 0 0 18px; font-size: 13px; }
.tsp-pl-m th { font-size: 12px; color: #64748b; text-align: center; padding: 8px; white-space: nowrap; }
.tsp-pl-m th:first-child { text-align: left; }
.tsp-pl-m th small { display: block; font-weight: 600; font-size: 11px; color: #b7791f; }
.tsp-pl-m td { padding: 8px; border-top: 1px solid #eef0f4; text-align: center; color: #334155; white-space: nowrap; }
.tsp-pl-m td:first-child { text-align: left; }
.tsp-pl-m .hl { background: #f8fafc; font-weight: 800; color: #0f1b2d; }
.tsp-pl-m tr.on td { background: #fffbeb; }
.tsp-pl-ft { display: flex; justify-content: space-between; gap: 10px; margin-top: 6px; }
.tsp-pl-b1, .tsp-pl-b2 { height: 40px; padding: 0 22px; border-radius: 20px; font: 700 13.5px/38px Inter, sans-serif; white-space: nowrap; cursor: pointer; }
.tsp-pl-b1 { background: #0f1b2d; color: #fff; border: 1px solid #0f1b2d; }
.tsp-pl-b1:disabled { opacity: .55; cursor: default; }
.tsp-pl-b2 { background: #fff; color: #1e2a44; border: 1px solid #cbd5e1; }
.tsp-pl-f { display: block; margin: 0 0 12px; }
.tsp-pl-f > span { display: block; font-size: 12px; font-weight: 700; color: #475569; margin: 0 0 5px; }
.tsp-pl-f input, .tsp-pl-f select { width: 100%; height: 40px; box-sizing: border-box; border: 1px solid #cbd5e1; border-radius: 10px; padding: 0 12px; font: 500 14px Inter, sans-serif; color: #0f172a; background: #fff; }
.tsp-pl-f input:focus, .tsp-pl-f select:focus { outline: none; border-color: #0f1b2d; box-shadow: 0 0 0 3px rgba(15,27,45,.12); }
.tsp-pl-err { display: none; margin: 0 0 12px; font-size: 13px; color: #b91c1c; background: #fef2f2; border-radius: 10px; padding: 8px 12px; }
.tsp-pl-err.on { display: block; }
.tsp-pl-pw { font: 800 20px/1.3 ui-monospace, Menlo, Consolas, monospace; letter-spacing: .06em; text-align: center; background: #f1f5f9; border-radius: 12px; padding: 12px; margin: 0 0 14px; user-select: all; }
.tsp-pl-kv { display: grid; grid-template-columns: auto 1fr; gap: 6px 14px; font-size: 13.5px; margin: 0 0 12px; }
.tsp-pl-kv span { color: #64748b; } .tsp-pl-kv b { color: #0f172a; }
.tsp-pl-acts { display: grid; gap: 8px; margin: 4px 0 14px; }
.tsp-pl-acts button { height: 38px; border-radius: 10px; border: 1px solid #e2e8f0; background: #fff; font: 600 13.5px Inter, sans-serif; color: #1e2a44; cursor: pointer; text-align: left; padding: 0 14px; }
.tsp-pl-acts button.bad { color: #b91c1c; }
#tsp-tm-pg .tmh { display: flex; justify-content: flex-end; margin: 0 0 12px; }
.tsp-tm-seats { display: grid; grid-template-columns: 1fr 1fr auto; gap: 18px; align-items: center; background: #fff; border: 1px solid #e5e9f0; border-radius: 14px; padding: 16px; margin: 0 0 14px; font-size: 13.5px; color: #64748b; }
.tsp-tm-seats b { color: #0f172a; }
.tsp-tm-bar { height: 6px; border-radius: 3px; background: #eef2f7; margin-top: 8px; overflow: hidden; }
.tsp-tm-bar i { display: block; height: 100%; background: #0f1b2d; border-radius: 3px; }
.tsp-tm-bar.full i { background: #b7791f; }
.tsp-tm-pl { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; white-space: nowrap; }
.tsp-tm-t { width: 100%; border-collapse: separate; border-spacing: 0; background: #fff; border: 1px solid #e5e9f0; border-radius: 14px; overflow: hidden; font-size: 14px; }
.tsp-tm-t th { text-align: left; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: #64748b; padding: 10px 16px; background: #fafbfc; white-space: nowrap; }
.tsp-tm-t td { padding: 11px 16px; border-top: 1px solid #eef0f4; color: #0f172a; white-space: nowrap; }
.tsp-tm-t tr.off td { color: #94a3b8; }
.tsp-tm-nm { display: flex; align-items: center; gap: 10px; font-weight: 700; }
.tsp-tm-av { width: 32px; height: 32px; border-radius: 50%; color: #fff; font: 800 12px/32px Inter, sans-serif; text-align: center; flex: none; background: #0f766e; }
.tsp-tm-av.admin { background: #1e2a44; } .tsp-tm-av.manager { background: #7c3aed; }
tr.off .tsp-tm-av { opacity: .5; }
.tsp-tm-chip { font-size: 11.5px; font-weight: 700; border-radius: 999px; padding: 3px 10px; background: #ccfbf1; color: #115e59; }
.tsp-tm-chip.admin { background: #e0e7ff; color: #1e2a44; } .tsp-tm-chip.manager { background: #f3e8ff; color: #6b21a8; }
.tsp-tm-own { font-size: 10.5px; font-weight: 800; letter-spacing: .04em; color: #b7791f; background: #fff7e6; border-radius: 999px; padding: 2px 8px; }
.tsp-tm-st { font-weight: 700; font-size: 13px; color: #16a34a; } .tsp-tm-st.off { color: #94a3b8; } .tsp-tm-st.tmp { color: #b7791f; }
.tsp-tm-mg { border: 0; background: none; font: 700 13.5px Inter, sans-serif; color: #1e2a44; cursor: pointer; padding: 6px 4px; }
.tsp-tm-add { height: 38px; padding: 0 18px; border-radius: 19px; background: #0f1b2d; color: #fff; border: 0; font: 700 13.5px/38px Inter, sans-serif; cursor: pointer; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px; }
.tsp-tm-add.lk { background: #fff7e6; color: #b7791f; border: 1px solid #f3d9a4; }
.tsp-tm-add svg { width: 14px; height: 14px; }
.tsp-tm-wrap { overflow-x: auto; }
@media (max-width: 720px) {
  .tsp-tm-seats { grid-template-columns: 1fr; } .tsp-tm-pl { align-items: flex-start; }
  .tsp-tm-t th:nth-child(2), .tsp-tm-t td:nth-child(2) { display: none; }
}
  html.tsp-noai .ai-badge, html.tsp-noai .brand-type-ai-btn, html.tsp-noai .sn-scan-btn { display:none !important; }
