.ts-hub{--ts-accent:#0d9488}.ts-hero{background:linear-gradient(#f0fdfa,#fff);border-bottom:1px solid #e2e8f0;padding:28px 0 24px}.ts-hero-inner{max-width:960px;margin:0 auto;padding:0 16px}.ts-hero-crumbs{align-items:center;gap:6px;margin-bottom:14px;font-size:12px;display:flex}.ts-hero-crumbs a{color:#0d9488;text-decoration:none}.ts-hero-crumbs a:hover{text-decoration:underline}.ts-hero-crumbs .sep{color:#94a3b8}.ts-hero-crumbs .here{color:#334155;font-weight:600}.ts-hero-trust{color:#0f766e;background:#ccfbf1;border-radius:9999px;align-items:center;gap:6px;margin-bottom:14px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.ts-hero-trust svg{width:13px;height:13px}.ts-hero-main{align-items:flex-start;gap:18px;display:flex}.ts-hero-emoji{flex-shrink:0;margin-top:4px;font-size:40px;line-height:1}.ts-hero h1{color:#0f172a;letter-spacing:-.025em;margin-bottom:14px;font-size:36px;font-weight:800;line-height:1.1}.ts-hero p{color:#475569;line-height:1.7}.ts-hero p.lead{margin-bottom:10px;font-size:15.5px}.ts-hero p.sub{color:#64748b;font-size:14px}.ts-hero p strong{color:#0f172a}.ts-hero-stats{background:#e2e8f0;border:1px solid #e2e8f0;border-radius:14px;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:24px;display:grid;overflow:hidden}.ts-hero-stat{text-align:left;background:#fff;padding:14px 16px}.ts-hero-stat-num{letter-spacing:-.02em;font-size:22px;font-weight:800;line-height:1}.ts-hero-stat-label{color:#0f172a;margin-top:4px;font-size:12px;font-weight:600}.ts-hero-stat-sub{color:#94a3b8;margin-top:2px;font-size:11px}.ts-hero-stat--link{color:inherit;cursor:pointer;text-decoration:none;transition:background .15s}.ts-hero-stat--link:hover{background:#f5effe}.ts-hero-stat--link .ts-hero-stat-sub{color:#7c3aed;font-weight:700}.ts-jumpnav{z-index:30;-webkit-backdrop-filter:blur(8px);background:#f8fafceb;border-bottom:1px solid #e2e8f0;position:sticky;top:64px}.ts-jumpnav-inner{scrollbar-width:none;gap:8px;max-width:1152px;margin:0 auto;padding:10px 16px;display:flex;overflow-x:auto}.ts-jumpnav-inner::-webkit-scrollbar{display:none}.ts-jumpnav-pill{color:#475569;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:9999px;flex-shrink:0;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.ts-jumpnav-pill:hover{color:#1e293b;border-color:#cbd5e1}.ts-jumpnav-pill.is-active{color:#fff;background:#0d9488;border-color:#0d9488}.ts-section{margin:0 0 56px}.ts-section[id]{scroll-margin-top:120px}.ts-fade-in{animation:.24s forwards ts-fade-in}@keyframes ts-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.ts-section-header{margin-bottom:28px;position:relative}.ts-section-eyebrow{letter-spacing:.1em;color:var(--ts-accent);background:linear-gradient(90deg, color-mix(in srgb, var(--ts-accent) 14%, transparent), color-mix(in srgb, var(--ts-accent) 4%, transparent));border:1px solid color-mix(in srgb, var(--ts-accent) 24%, transparent);border-radius:9999px;align-items:center;gap:6px;margin-bottom:14px;padding:4px 10px;font-size:10.5px;font-weight:700;display:inline-flex}.ts-section-eyebrow .icon{font-size:12px}.ts-section-titlerow{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.ts-section-h2{color:#0f172a;letter-spacing:-.02em;margin:0;padding-bottom:10px;font-size:26px;font-weight:800;line-height:1.15;position:relative}.ts-section-h2:after{content:"";background:linear-gradient(90deg, var(--ts-accent), color-mix(in srgb, var(--ts-accent) 33%, transparent) 70%, transparent);border-radius:2px;width:44px;height:3px;position:absolute;bottom:0;left:0}.ts-section-meta{flex-wrap:wrap;gap:8px;display:flex}.ts-section-meta-badge{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:9999px;align-items:center;gap:5px;padding:5px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.ts-section-sub{color:#64748b;max-width:680px;margin-top:10px;font-size:14px;line-height:1.6}.ts-card{border-radius:14px;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s;position:relative;overflow:hidden}.ts-card:hover{box-shadow:0 18px 30px -12px color-mix(in srgb, var(--ts-accent) 32%, transparent);transform:translateY(-3px);border-color:color-mix(in srgb, var(--ts-accent) 35%, #e2e8f0)!important}.ts-card-accent{background:linear-gradient(90deg, var(--ts-accent), transparent);transform-origin:0;opacity:.4;pointer-events:none;border-top-left-radius:inherit;border-top-right-radius:inherit;height:3px;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .4s;position:absolute;top:0;left:0;right:0;transform:scaleX(.25)}.ts-card:hover .ts-card-accent{opacity:1;transform:scaleX(1)}.ts-card-tint{background:radial-gradient(circle, color-mix(in srgb, var(--ts-accent) 14%, transparent) 0%, transparent 70%);opacity:.55;pointer-events:none;width:130px;height:130px;transition:opacity .3s;position:absolute;top:-30px;right:-30px}.ts-card:hover .ts-card-tint{opacity:1}.ts-card-glow{background:radial-gradient(circle, color-mix(in srgb, var(--ts-accent) 22%, transparent) 0%, transparent 65%);opacity:0;pointer-events:none;width:130px;height:130px;transition:opacity .3s;position:absolute;bottom:-25px;left:-25px}.ts-card:hover .ts-card-glow{opacity:1}.ts-card:hover .ts-card-title{color:var(--ts-accent)}.ts-dash{background:linear-gradient(135deg,#f0fdfa 0%,#fff 60%);border:1px solid #cdeee9;border-radius:18px;padding:22px}.ts-dash-empty{align-items:flex-start;gap:16px;display:flex}.ts-dash-empty-icon{flex-shrink:0;font-size:34px;line-height:1}.ts-dash-empty-h{color:#0f172a;margin-bottom:6px;font-size:16px;font-weight:800}.ts-dash-empty p{color:#475569;max-width:620px;font-size:13.5px;line-height:1.6}.ts-dash-empty-cta{color:#fff;background:#0d9488;border-radius:10px;margin-top:12px;padding:9px 16px;font-size:13px;font-weight:700;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex}.ts-dash-empty-cta:hover{background:#0f766e;transform:translateY(-1px)}.ts-dash-top{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.ts-dash-ring{flex-shrink:0;width:120px;height:120px;position:relative}.ts-dash-ring svg{width:120px;height:120px;transform:rotate(-90deg)}.ts-ring-bg{fill:none;stroke:#e2e8f0;stroke-width:10px}.ts-ring-fg{fill:none;stroke:#0d9488;stroke-width:10px;stroke-linecap:round;stroke-dasharray:327;stroke-dashoffset:327px;transition:stroke-dashoffset .9s cubic-bezier(.4,0,.2,1)}.ts-dash-ring-label{flex-direction:column;justify-content:center;align-items:center;gap:0;display:flex;position:absolute;inset:0}.ts-dash-ring-num{color:#0f172a;font-size:30px;font-weight:800;line-height:1}.ts-dash-ring-tot{color:#94a3b8;font-size:12px;font-weight:700}.ts-dash-ring-cap{color:#0d9488;letter-spacing:.04em;text-transform:uppercase;margin-top:3px;font-size:10.5px;font-weight:600}.ts-dash-stats{grid-template-columns:repeat(3,auto);gap:10px 28px;display:grid}.ts-dash-stat{flex-direction:column;display:flex}.ts-dash-stat-num{color:#0f172a;font-size:24px;font-weight:800;line-height:1}.ts-dash-stat-lab{color:#64748b;max-width:150px;margin-top:4px;font-size:11.5px;font-weight:600}.ts-dash-worlds{grid-template-columns:repeat(2,1fr);gap:8px 24px;margin-top:20px;display:grid}.ts-dw-row{align-items:center;gap:10px;display:flex}.ts-dw-name{color:#334155;flex-shrink:0;width:140px;font-size:12.5px;font-weight:600}.ts-dw-track{background:#e8eef0;border-radius:9999px;flex:1;height:8px;overflow:hidden}.ts-dw-fill{border-radius:9999px;height:100%;transition:width .8s cubic-bezier(.4,0,.2,1);display:block}.ts-dw-count{color:#64748b;text-align:right;flex-shrink:0;width:40px;font-size:11.5px;font-weight:700}.ts-dash-review{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:18px}.ts-dash-review-h{color:#0f172a;margin-bottom:10px;font-size:13px;font-weight:700}.ts-dash-review-note{color:#94a3b8;font-size:11.5px;font-weight:500}.ts-dash-review-chips{flex-wrap:wrap;gap:8px;display:flex}.ts-review-chip{border:1px solid color-mix(in srgb, var(--chip,#0d9488) 35%, #e2e8f0);background:#fff;border-radius:9999px;align-items:center;gap:8px;padding:6px 12px;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex}.ts-review-chip:hover{box-shadow:0 6px 14px -6px color-mix(in srgb, var(--chip,#0d9488) 45%, transparent);transform:translateY(-1px)}.ts-review-chip-name{color:#334155;font-size:12.5px;font-weight:600}.ts-review-chip-pct{color:color-mix(in srgb, var(--chip,#0d9488) 75%, #334155);font-size:11px;font-weight:800}.ts-dash-reset{text-align:right;margin-top:16px}.ts-dash-reset button{cursor:pointer;color:#94a3b8;background:0 0;border:none;font-size:11.5px;text-decoration:underline}.ts-dash-reset button:hover{color:#dc2626}.ts-map-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.ts-map-tile{text-align:left;cursor:pointer;color:inherit;background:#fff;border:1px solid #e2e8f0;padding:20px;text-decoration:none;display:block}.ts-map-tile-inner{z-index:1;flex-direction:column;gap:8px;display:flex;position:relative}.ts-map-tile-icon{border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:4px;font-size:22px;display:inline-flex}.ts-map-tile-name{color:#0f172a;letter-spacing:-.01em;font-size:16px;font-weight:800;transition:color .2s}.ts-map-tile-blurb{color:#64748b;font-size:12.5px;line-height:1.55}.ts-map-tile-count{margin-top:2px;font-size:12px;font-weight:800}.ts-units{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.ts-unit{background:#fff;border:1px solid #e2e8f0;min-height:112px;padding:16px 18px;display:flex}.ts-unit-inner{z-index:1;flex-direction:column;gap:14px;width:100%;display:flex;position:relative}.ts-unit-name{color:#0f172a;font-size:15px;font-weight:700;line-height:1.25;transition:color .2s}.ts-unit-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;display:flex}.ts-unit-btn{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9px;align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;font-weight:600;text-decoration:none;transition:border-color .15s,background .15s,color .15s,transform .15s;display:inline-flex}.ts-unit-btn:hover{transform:translateY(-1px)}.ts-unit-test{color:#0f766e;background:#f0fdfa;border-color:#99f6e4}.ts-unit-test:hover{background:#ccfbf1;border-color:#5eead4}.ts-unit-test[data-type=gap-fill]{color:#7c3aed;background:#faf5ff;border-color:#e9d5ff}.ts-unit-test[data-type=gap-fill]:hover{background:#f3e8ff;border-color:#d8b4fe}.ts-unit-score{color:#475569;background:#e2e8f0;border-radius:9999px;padding:1px 7px;font-size:11px;font-weight:800}.ts-unit-score.is-mastered{color:#047857;background:#d1fae5}.ts-unit-vyklad{font-size:12px}.ts-ladder{flex-direction:column;gap:12px;display:flex}.ts-rung{border:1px solid #e2e8f0;border-left:4px solid var(--ts-accent);background:#fff;border-radius:14px;align-items:stretch;gap:16px;padding:16px 18px;display:flex;position:relative;overflow:hidden}.ts-rung-badge{color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-self:center;align-items:center;width:46px;height:46px;font-size:17px;font-weight:800;display:inline-flex}.ts-rung-body{flex:1;min-width:0}.ts-rung-titlerow{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.ts-rung-label{color:#0f172a;font-size:15.5px;font-weight:800}.ts-rung-words{font-size:13px;font-weight:800}.ts-rung-desc{color:#64748b;margin-top:3px;font-size:13px;line-height:1.5}.ts-rung-meta{margin-top:8px}.ts-rung-count{color:var(--ts-accent);font-size:12.5px;font-weight:700;text-decoration:none}.ts-rung-count:hover{text-decoration:underline}.ts-method{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.ts-method-step{background:#fff;border:1px solid #e2e8f0;border-radius:14px;align-items:flex-start;gap:14px;padding:18px;display:flex}.ts-method-num{color:#fff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;font-weight:800;display:inline-flex}.ts-method-h{color:#0f172a;margin-bottom:4px;font-size:14.5px;font-weight:700}.ts-method-step p{color:#64748b;font-size:12.5px;line-height:1.55}.ts-filter{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.ts-filter-label{color:#94a3b8;margin-right:4px;font-size:12px;font-weight:600}.ts-filter-pill{color:#475569;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:9999px;align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:600;transition:background-color .15s,color .15s,border-color .15s,box-shadow .15s;display:inline-flex}.ts-filter-pill:hover{border-color:#cbd5e1}.ts-filter-pill.is-active{color:#fff;background:#0d9488;border-color:#0d9488;box-shadow:0 4px 10px -2px #0d948859}.ts-filter-pill-count{opacity:.7;font-size:11px;font-weight:700}.ts-filter-pill.is-popping{animation:.25s ease-out ts-chip-pop}@keyframes ts-chip-pop{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.ts-articles-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px;display:grid}.ts-articles-grid>[data-level].is-restagger{animation:.32s cubic-bezier(.4,0,.2,1) both ts-restagger}@keyframes ts-restagger{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ts-faq{flex-direction:column;gap:10px;display:flex}.ts-faq-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.ts-faq-q{cursor:pointer;color:#0f172a;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;font-size:14.5px;font-weight:700;list-style:none;display:flex}.ts-faq-q::-webkit-details-marker{display:none}.ts-faq-q:after{content:"+";color:#94a3b8;flex-shrink:0;font-size:20px;font-weight:400;transition:transform .2s}.ts-faq-item[open] .ts-faq-q:after{transform:rotate(45deg)}.ts-faq-a{color:#475569;padding:0 18px 16px;font-size:13.5px;line-height:1.6}.ts-ad{width:100%;margin:16px 0 24px;display:block}.ts-ad .ad-container{margin-left:auto;margin-right:auto}.ts-back{text-align:center;margin-top:8px}.ts-back a{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:6px;padding:10px 20px;font-size:13.5px;font-weight:600;text-decoration:none;transition:border-color .15s,color .15s;display:inline-flex}.ts-back a:hover{color:#0d9488;border-color:#0d9488}@media (max-width:1023px){.ts-articles-grid,.ts-units,.ts-map-grid{grid-template-columns:repeat(2,1fr)}.ts-method,.ts-dash-worlds{grid-template-columns:1fr}}@media (max-width:720px){.ts-hero-stats{grid-template-columns:repeat(2,1fr)}.ts-map-grid{grid-template-columns:1fr}.ts-dash-top{gap:16px}.ts-dash-stats{grid-template-columns:repeat(3,1fr);gap:10px 12px}.ts-dash-stat-num{font-size:20px}}@media (max-width:640px){.ts-articles-grid,.ts-units{grid-template-columns:1fr}.ts-dw-name{width:110px}}@media (max-width:480px){.ts-section-h2{font-size:22px}.ts-hero h1{font-size:28px}.ts-hero p.lead{font-size:14.5px}}@media (prefers-reduced-motion:reduce){.ts-card,.ts-card-accent,.ts-card-tint,.ts-card-glow,.ts-filter-pill,.ts-jumpnav-pill,.ts-unit-btn,.ts-ring-fg,.ts-dw-fill,.ts-review-chip{transition:none!important}.ts-filter-pill.is-popping,.ts-articles-grid>[data-level].is-restagger,.ts-fade-in{animation:none!important}}