/* Team Manager — темы и анимации из дизайна Kira */
*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:#0F0E13;color-scheme:dark;font-family:'Onest',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-tap-highlight-color:transparent}a{color:#416180;text-decoration:none}a:hover{color:#2c455d}input,select,textarea,button{font-family:inherit}input::placeholder,textarea::placeholder{color:#98989b}[data-tm-root]{--card:color-mix(in srgb, var(--color-bg) 85%, transparent);--logo-filter:brightness(0);--st-planned:#7a7a7d;--st-waiting:var(--color-accent);--st-playing:#0E7490;--st-qualified:#2F7D4F;--st-failed:#B4443C;--st-register:#6B5BA8;--st-pay:#B3561A;--st-rest:#5d5d60;--st-cancelled:#98989b;--st-loot:#9C7A00;--ok:#2F7D4F;--warn:#A2700A;--bad:#B4443C;--r:0;--tm-grid:linear-gradient(color-mix(in srgb, var(--color-text) 4%, transparent) 1px, transparent 1px),linear-gradient(90deg, color-mix(in srgb, var(--color-text) 4%, transparent) 1px, transparent 1px);--tm-grid-size:24px 24px}
[data-tm-root]:not([data-tm-theme="blueprint"]):not([data-tm-theme="neon"]) .corner{display:none}
[data-tm-theme="alb"]{--card:#1D1C25;--card-bd:rgba(255,255,255,0.10);--logo-filter:brightness(0) invert(1);--color-bg:#0F0E13;--color-surface:#2A2933;--color-text:#FBFAF7;--color-accent:#1E9BFF;--color-divider:rgba(255,255,255,0.08);--color-accent-100:rgba(30,155,255,0.16);--color-accent-600:#4DB0FF;--color-accent-700:#8FD6FF;--color-neutral-300:#2A2933;--color-neutral-400:#3A3944;--color-neutral-500:#57545F;--color-neutral-600:#76737E;--color-neutral-700:#9A97A2;--color-neutral-800:#C9C6CF;--color-neutral-900:#FBFAF7;--st-planned:#9A97A2;--st-waiting:#1E9BFF;--st-playing:#8FD6FF;--st-qualified:#34D399;--st-failed:#FF5A6A;--st-register:#B39DFF;--st-pay:#FF8A3D;--st-rest:#76737E;--st-cancelled:#57545F;--st-loot:#FFC53D;--ok:#34D399;--warn:#FFC53D;--bad:#FF5A6A;--font-heading:'Onest',system-ui,sans-serif;--font-body:'Onest',system-ui,sans-serif;--hw:900;--h1:25px;--r:18px;--tm-grid:linear-gradient(222deg,rgba(30,155,255,0.20) 0,rgba(30,155,255,0.20) 150px,transparent 150px);--tm-grid-size:auto}
[data-tm-theme="graphite"]{--card:#14161A;--logo-filter:brightness(0) invert(1);--color-bg:#0B0C0E;--color-surface:#17181D;--color-text:#ECEDEF;--color-accent:#3D7BFF;--color-divider:rgba(255,255,255,0.08);--color-accent-100:rgba(61,123,255,0.16);--color-accent-600:#5A8FFF;--color-accent-700:#8CB0FF;--color-neutral-300:#2A2C32;--color-neutral-400:#3C4048;--color-neutral-500:#4F535C;--color-neutral-600:#6B707A;--color-neutral-700:#8A8F98;--color-neutral-800:#B8BCC4;--color-neutral-900:#ECEDEF;--st-planned:#8A8F98;--st-waiting:var(--color-accent);--st-playing:#22D3EE;--st-qualified:#34D399;--st-failed:#F87171;--st-register:#A78BFA;--st-pay:#FB923C;--st-rest:#64748B;--st-cancelled:#4B5563;--st-loot:#F5C542;--ok:#34D399;--warn:#FBBF24;--bad:#F87171;--font-heading:'Manrope',system-ui,sans-serif;--font-body:'Manrope',system-ui,sans-serif;--r:10px;--tm-grid:none}
[data-tm-theme="neon"]{--card:#121019;--h1:21px;--logo-filter:brightness(0) invert(1);--color-bg:#08070C;--color-surface:#16141F;--color-text:#F4F2FF;--color-accent:#C6FF3D;--color-divider:rgba(255,255,255,0.1);--color-accent-100:rgba(198,255,61,0.14);--color-accent-600:#D7FF7A;--color-accent-700:#C6FF3D;--color-neutral-300:#2A2C32;--color-neutral-400:#3C4048;--color-neutral-500:#4F535C;--color-neutral-600:#6B707A;--color-neutral-700:#8A8F98;--color-neutral-800:#B8BCC4;--color-neutral-900:#ECEDEF;--st-planned:#8A8F98;--st-waiting:var(--color-accent);--st-playing:#22D3EE;--st-qualified:#34D399;--st-failed:#F87171;--st-register:#A78BFA;--st-pay:#FB923C;--st-rest:#64748B;--st-cancelled:#4B5563;--st-loot:#F5C542;--ok:#34D399;--warn:#FBBF24;--bad:#F87171;--st-waiting:#7C9CFF;--font-heading:'Unbounded',system-ui,sans-serif;--font-body:'Onest',system-ui,sans-serif;--r:2px;--tm-grid:repeating-linear-gradient(135deg, rgba(198,255,61,0.035) 0 1px, transparent 1px 14px);--tm-grid-size:auto}
[data-tm-theme="paper"]{--card:#F8F5EF;--h1:26px;--color-bg:#EFEBE3;--color-surface:#E4DED2;--color-text:#141414;--color-accent:#D9480F;--color-divider:rgba(20,20,20,0.14);--color-accent-100:#FBE3D6;--color-accent-600:#C0400D;--color-accent-700:#A33608;--color-neutral-300:#D6D0C4;--color-neutral-400:#B9B2A5;--color-neutral-500:#9A9386;--color-neutral-600:#7A7468;--color-neutral-700:#5E594F;--color-neutral-800:#45413A;--color-neutral-900:#2A2723;--st-planned:#7a7a7d;--st-waiting:var(--color-accent);--st-playing:#0E7490;--st-qualified:#2F7D4F;--st-failed:#B4443C;--st-register:#6B5BA8;--st-pay:#B3561A;--st-rest:#5d5d60;--st-cancelled:#98989b;--st-loot:#9C7A00;--ok:#2F7D4F;--warn:#A2700A;--bad:#B4443C;--font-heading:'Bodoni Moda',Georgia,serif;--font-body:'Manrope',system-ui,sans-serif;--r:16px;--tm-grid:none}
[data-tm-theme="telegram"]{--card:#1E2A36;--logo-filter:brightness(0) invert(1);--color-bg:#17212B;--color-surface:#232E3C;--color-text:#F5F5F5;--color-accent:#5288C1;--color-divider:rgba(255,255,255,0.07);--color-accent-100:rgba(82,136,193,0.2);--color-accent-600:#6AA0D8;--color-accent-700:#7DB4EC;--color-neutral-300:#2B3846;--color-neutral-400:#3B4A5A;--color-neutral-500:#56687A;--color-neutral-600:#708499;--color-neutral-700:#8DA0B3;--color-neutral-800:#B4C2CF;--color-neutral-900:#F5F5F5;--st-planned:#8A8F98;--st-waiting:var(--color-accent);--st-playing:#22D3EE;--st-qualified:#34D399;--st-failed:#F87171;--st-register:#A78BFA;--st-pay:#FB923C;--st-rest:#64748B;--st-cancelled:#4B5563;--st-loot:#F5C542;--ok:#34D399;--warn:#FBBF24;--bad:#F87171;--font-heading:'Onest',system-ui,sans-serif;--font-body:'Onest',system-ui,sans-serif;--r:12px;--tm-grid:none}
@keyframes tmGrowBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes tmShineBar{from{transform:translateX(-120%)}to{transform:translateX(320%)}}
@keyframes tmUp{from{transform:translateY(48px);opacity:0}to{transform:none;opacity:1}}@keyframes tmFade{from{opacity:0}to{opacity:1}}
#app{height:100%}
[data-tm-scroll]::-webkit-scrollbar{display:none}
input,select,textarea{font-size:16px}
.tm-spin{width:28px;height:28px;border-radius:50%;border:3px solid rgba(255,255,255,0.12);border-top-color:#1E9BFF;animation:tmSpin .8s linear infinite}
@keyframes tmSpin{to{transform:rotate(360deg)}}

/* Главная (нет команд) — анимации из дизайна «TM Главная» */
@keyframes tmIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes tmWedge{from{opacity:0;transform:translate(60px,-60px)}to{opacity:1;transform:none}}
@keyframes tmFanA{from{opacity:0;transform:translateY(120px) rotate(0)}to{opacity:1;transform:rotate(-4deg)}}
@keyframes tmFanB{from{opacity:0;transform:translateY(120px) rotate(0)}to{opacity:1;transform:rotate(2.5deg)}}
@keyframes tmFanC{from{opacity:0;transform:translateY(140px) rotate(0) scale(.9)}to{opacity:1;transform:rotate(-1.5deg)}}
@keyframes tmBob{0%,100%{transform:rotate(-1.5deg) translateY(0)}50%{transform:rotate(-.5deg) translateY(-8px)}}
@keyframes tmGlow{0%,100%{box-shadow:0 12px 36px rgba(30,155,255,.35)}50%{box-shadow:0 12px 56px rgba(30,155,255,.75)}}
@keyframes tmShine{0%,55%{transform:translateX(-140%) skewX(-20deg)}100%{transform:translateX(340%) skewX(-20deg)}}
@keyframes tmTick{50%{opacity:.35}}
@keyframes tmSplash{to{opacity:0;visibility:hidden}}
@keyframes tmLogo{0%{opacity:0;transform:scale(.4) rotate(-20deg)}30%{opacity:1;transform:scale(1) rotate(0)}60%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(7)}}
@keyframes tmBurst{0%{opacity:0;transform:scale(.3)}40%{opacity:.8}100%{opacity:0;transform:scale(4)}}
@keyframes tmWord{0%{opacity:0;letter-spacing:.6em}40%,70%{opacity:1;letter-spacing:.3em}100%{opacity:0}}

/* Нажатие — как в основной мини-аппе: быстрое сжатие и пружинка обратно.
   (style задаётся из JS, браузер хранит его с пробелами: «cursor: pointer») */
[data-tm-root] button, [data-tm-root] [style*="cursor: pointer"], [data-tm-root] [style*="cursor:pointer"] {
  transition: scale 140ms cubic-bezier(0.16, 1, 0.3, 1), filter 140ms;
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none; user-select: none;
}
[data-tm-root] button:active, [data-tm-root] [style*="cursor: pointer"]:active, [data-tm-root] [style*="cursor:pointer"]:active { scale: 0.95; filter: brightness(1.12); }
[data-tm-root] button[style*="height: 56px"]:active, [data-tm-root] button[style*="height: 48px"]:active { scale: 0.97; }
[data-tm-scroll] { touch-action: pan-y; will-change: transform; }
@keyframes tmGrowCol{from{transform:scaleY(0)}to{transform:scaleY(1)}}
