:root{--tm-accent:#d94f9e;--tm-accent-hover:#e460ad;--tm-accent-active:#c23e8e;--tm-accent-muted:rgba(217,79,158,.16);--tm-accent-soft:rgba(217,79,158,.09);--tm-accent-text:#f0a0cf;--tm-accent-glow:rgba(217,79,158,.35);--tm-gold:#e8c97a;--tm-gold-muted:rgba(232,201,122,.18);--tm-bg-base:#06050f;--tm-bg-panel:#0e0c1a;--tm-bg-card:#151224;--tm-bg-elevated:#1e1b2e;--tm-text-primary:#f5f2f8;--tm-text-secondary:rgba(245,242,248,.55);--tm-text-muted:rgba(245,242,248,.33);--tm-border:rgba(210,190,255,.08);--tm-border-strong:rgba(210,190,255,.14);--tm-brand-gradient:linear-gradient(135deg,#f5b8dc,#d94f9e);--tm-brand-text-gradient:linear-gradient(135deg,#f8d0e8,#e882c0 55%,#d94f9e);--tm-btn-primary-bg:var(--tm-accent);--tm-btn-primary-hover:var(--tm-accent-hover);--tm-btn-primary-shadow:0 2px 10px rgba(217,79,158,.32);--tm-btn-primary-shadow-hover:0 4px 18px rgba(217,79,158,.44);--tm-btn-secondary-bg:var(--tm-bg-elevated);--tm-btn-secondary-border:var(--tm-border-strong);--tm-btn-secondary-color:var(--tm-text-primary);--tm-chip-active-bg:var(--tm-accent);--tm-chip-active-text:#fff;--tm-nav-active-bg:var(--tm-accent-muted);--tm-nav-active-text:var(--tm-accent-text);--tm-tag-bg:var(--tm-accent-muted);--tm-tag-text:var(--tm-accent-text);--tm-link:#e882c0;--tm-link-hover:#f0a0cf;--tm-gradient:var(--tm-brand-gradient);--tm-gradient-accent:linear-gradient(135deg,#e06cb5,#d94f9e);--tm-gradient-soft:var(--tm-brand-text-gradient);--tm-scrollbar-size:6px;--tm-scrollbar-track:hsla(0,0%,100%,.03);--tm-scrollbar-thumb:rgba(245,242,248,.12);--tm-scrollbar-thumb-hover:rgba(245,242,248,.22);--tm-scrollbar-thumb-active:rgba(217,79,158,.45);--tm-font-display:"Sora","Noto Sans SC","Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--tm-font-body:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans SC","Noto Sans JP",sans-serif;--tm-text-xs:12px;--tm-text-sm:13px;--tm-text-base:15px;--tm-text-md:17px;--tm-text-lg:20px;--tm-text-xl:24px;--tm-text-2xl:32px;--tm-text-3xl:44px;--tm-space-1:4px;--tm-space-2:8px;--tm-space-3:12px;--tm-space-4:16px;--tm-space-5:20px;--tm-space-6:24px;--tm-space-8:32px;--tm-space-10:40px;--tm-space-12:48px;--tm-radius-sm:8px;--tm-radius-md:12px;--tm-radius-lg:16px;--tm-radius-xl:20px;--tm-radius-2xl:28px;--tm-radius-full:999px;--tm-shadow-card:0 4px 24px rgba(0,0,0,.35);--tm-shadow-float:0 12px 40px rgba(0,0,0,.5);--tm-glow-accent:0 0 24px rgba(217,79,158,.35);--tm-glow-accent-lg:0 0 48px rgba(217,79,158,.45);--tm-glow-soft:0 0 32px rgba(140,100,255,.18);--tm-ease-out:cubic-bezier(.22,1,.36,1);--tm-ease-spring:cubic-bezier(.34,1.56,.64,1);--tm-dur-fast:.16s;--tm-dur-base:.28s;--tm-dur-slow:.5s;--tm-glass-bg:rgba(14,12,26,.72);--tm-glass-border:rgba(210,190,255,.1)}html{scrollbar-gutter:stable}body,html{background-color:var(--tm-bg-base)}body{color:var(--tm-text-primary);font-family:var(--tm-font-body);margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-family:var(--tm-font-display)}::-moz-selection{background:#d94f9e66;color:#fff}::selection{background:#d94f9e66;color:#fff}:focus-visible{outline:2px solid var(--tm-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}*,body,html{scrollbar-color:var(--tm-scrollbar-thumb) var(--tm-scrollbar-track);scrollbar-width:thin}::-webkit-scrollbar,body::-webkit-scrollbar,html::-webkit-scrollbar{height:var(--tm-scrollbar-size);width:var(--tm-scrollbar-size)}::-webkit-scrollbar-track,body::-webkit-scrollbar-track,html::-webkit-scrollbar-track{background:var(--tm-scrollbar-track)}::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,html::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:var(--tm-scrollbar-thumb);border:2px solid transparent;border-radius:999px}::-webkit-scrollbar-thumb:hover,body::-webkit-scrollbar-thumb:hover,html::-webkit-scrollbar-thumb:hover{background-color:var(--tm-scrollbar-thumb-hover)}::-webkit-scrollbar-thumb:active,body::-webkit-scrollbar-thumb:active,html::-webkit-scrollbar-thumb:active{background-color:var(--tm-scrollbar-thumb-active)}::-webkit-scrollbar-corner,body::-webkit-scrollbar-corner,html::-webkit-scrollbar-corner{background:var(--tm-bg-base)}.tm-scrollbar-hidden,.tm-scrollbar-none{scrollbar-width:none;-ms-overflow-style:none}.tm-scrollbar-hidden::-webkit-scrollbar,.tm-scrollbar-none::-webkit-scrollbar{display:none;height:0;width:0}.tm-btn-primary{background:var(--tm-btn-primary-bg);border:none;box-shadow:var(--tm-btn-primary-shadow);color:#fff;transition:background .18s ease,box-shadow .18s ease,transform .12s ease}.tm-btn-primary:hover:not(:disabled){background:var(--tm-btn-primary-hover);box-shadow:var(--tm-btn-primary-shadow-hover)}.tm-btn-primary:active:not(:disabled){background:var(--tm-accent-active);transform:scale(.98)}.tm-btn-primary:disabled{cursor:not-allowed;opacity:.5}.tm-btn-secondary{background:var(--tm-btn-secondary-bg);border:1px solid var(--tm-btn-secondary-border);border-radius:12px;color:var(--tm-btn-secondary-color);cursor:pointer;font-weight:600;transition:background .18s ease,border-color .18s ease}.tm-btn-secondary:hover:not(:disabled){background:#252232;border-color:#d2beff38}.tm-btn-ghost{background:transparent;border:1px solid rgba(217,79,158,.35);border-radius:12px;color:var(--tm-accent-text);cursor:pointer;font-weight:500;transition:background .18s ease,border-color .18s ease,color .18s ease}.tm-btn-ghost:hover:not(:disabled){background:var(--tm-accent-soft);border-color:#d94f9e85;color:#f5c4e2}.tm-glass{-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);background:var(--tm-glass-bg);border:1px solid var(--tm-glass-border)}.tm-card-immersive{background:var(--tm-bg-card);border:1px solid var(--tm-border);border-radius:var(--tm-radius-xl);cursor:pointer;overflow:hidden;position:relative;transition:transform var(--tm-dur-base) var(--tm-ease-out),box-shadow var(--tm-dur-base) var(--tm-ease-out),border-color var(--tm-dur-base) var(--tm-ease-out)}.tm-card-immersive:hover{border-color:#d94f9e66;box-shadow:var(--tm-shadow-float),var(--tm-glow-accent);transform:translateY(-4px)}.tm-card-immersive:active{transform:translateY(-1px) scale(.99)}.tm-chip{align-items:center;background:var(--tm-tag-bg);border-radius:var(--tm-radius-full);color:var(--tm-tag-text);display:inline-flex;font-size:var(--tm-text-xs);font-weight:600;gap:4px;line-height:1.5;padding:4px 12px;white-space:nowrap}.tm-skeleton{background:var(--tm-bg-card);border-radius:var(--tm-radius-md);overflow:hidden;position:relative}.tm-skeleton:after{animation:tm-shimmer 1.6s var(--tm-ease-out) infinite;background:linear-gradient(90deg,transparent,rgba(245,242,248,.06) 50%,transparent);content:"";inset:0;position:absolute;transform:translate(-100%)}@keyframes tm-shimmer{to{transform:translate(100%)}}.tm-fade-up{animation:tm-fade-up var(--tm-dur-slow) var(--tm-ease-out) both}@keyframes tm-fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes tm-fade-in{0%{opacity:0}to{opacity:1}}.tm-blob{animation:tm-blob-drift 14s ease-in-out infinite alternate;border-radius:50%;filter:blur(90px);opacity:.5;pointer-events:none;position:absolute}@keyframes tm-blob-drift{0%{transform:translate(0) scale(1)}to{transform:translate(40px,-30px) scale(1.15)}}.tm-breathe{animation:tm-breathe 2.6s ease-in-out infinite}@keyframes tm-breathe{0%,to{box-shadow:0 0 16px #d94f9e59}50%{box-shadow:0 0 36px #d94f9e99}}
