*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Source Han Sans SC", "Noto Sans CJK SC", sans-serif;--font-display:var(--font-body);--bg:#0f1115;--bg-soft:#171a1f;--surface:#ffffff14;--surface-2:#ffffff0f;--surface-3:#ffffff0a;--glass:#ffffff0f;--surface-translucent:#ffffff14;--surface-translucent-hover:#ffffff1f;--surface-solid:#171a1ff5;--border:#ffffff26;--border-input:#fff3;--border-hover:#42d6c56b;--accent:#d94f4f;--accent-hover:#bc3f45;--accent-text:#f08a83;--accent-soft:#d94f4f24;--accent-soft-hover:#d94f4f38;--on-accent:#0f1115;--secondary:#42d6c5;--secondary-soft:#42d6c526;--text:#f2e9d8;--text-muted:#f2e9d8ad;--text-dim:#f2e9d875;--danger:#f07070;--danger-hover:#d95757;--danger-dim:#f0707026;--video-bg:#090b0d;--avatar-1:#d94f4f;--avatar-2:#42d6c5;--avatar-3:#e7c873;--avatar-4:#8b7cff;--avatar-5:#6fbf73;--home-overlay-start:#0f111585;--home-overlay-mid:#0f11155c;--home-overlay-end:#0f111599;--shadow:0 8px 24px #03071273, inset 0 1px 0 #ffffff38, inset 0 -1px 0 #0206104d;--shadow-lg:0 16px 48px #0307128c, 0 0 0 1px #ffffff14, inset 0 1px 0 #ffffff40, inset 0 -1px 0 #02061059;--radius:20px;--radius-sm:14px;--radius-xs:10px;--radius-pill:999px;--overlay:#030712a6;--ease-spring:cubic-bezier(.16, 1, .3, 1);--ease-emphasized:cubic-bezier(.22, 1, .36, 1);--motion-fast:.16s;--motion-base:.28s;--motion-page:.42s;--motion-slow:.56s;--fs-xs:12px;--fs-sm:13px;--fs-base:15px;--fs-md:17px;--fs-lg:20px;--fs-xl:24px;--fs-2xl:30px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--nav-height:60px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--nav-offset:calc(var(--nav-height) + var(--safe-top));font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}body{color:var(--text);min-height:100vh;background:radial-gradient(at 78% 8%,#42d6c52e 0%,#0000 42%),radial-gradient(at 18% 88%,#66313a47 0%,#0000 50%),radial-gradient(at 52% 52%,#d94f4f14 0%,#0000 38%),linear-gradient(#0f1115 0%,#090b0d 100%);min-height:100dvh;line-height:1.6}body:before{content:"";z-index:0;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;position:fixed;top:0;bottom:0;left:0;right:0}@media (hover:hover) and (pointer:fine){body{background-attachment:fixed}}#root{z-index:1;min-height:100vh;min-height:100dvh;position:relative}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,textarea{font-family:inherit}select{color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:inherit}select option,select optgroup{background:var(--surface-solid);color:var(--text)}a,button,input,select,textarea,label{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px}@media (pointer:coarse){input,textarea,select{font-size:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.errbnd{padding-left:var(--sp-4);padding-right:var(--sp-4);justify-content:center;align-items:center;display:flex}.errbnd__card{text-align:center;align-items:center;gap:var(--sp-3);width:100%;max-width:420px;padding:var(--sp-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;display:flex}.errbnd__icon{color:var(--danger)}.errbnd__title{font-family:var(--font-display);font-size:var(--fs-lg);color:var(--text);font-weight:600}.errbnd__body{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.6}.errbnd__btn{margin-top:var(--sp-2);min-height:44px;padding:0 var(--sp-6);background:var(--accent);color:var(--on-accent);border-radius:var(--radius-xs);font-size:var(--fs-base);border:0;font-weight:600}@media (hover:hover){.errbnd__btn:hover{background:var(--accent-hover)}}.navbar{z-index:100;height:var(--nav-offset);padding-top:var(--safe-top);padding-left:var(--safe-left);padding-right:var(--safe-right);-webkit-backdrop-filter:blur(60px)saturate(180%);background:var(--glass);border-bottom:1px solid var(--surface-translucent-hover);box-shadow:var(--shadow);transition:background var(--motion-base) ease, border-color var(--motion-base) ease, box-shadow var(--motion-base) ease;position:fixed;top:0;left:0;right:0}.navbar--scrolled{background:var(--surface-solid);border-bottom-color:var(--border);box-shadow:var(--shadow-lg)}.navbar__inner{justify-content:space-between;align-items:center;max-width:1400px;height:100%;margin:0 auto;padding:0 24px;display:flex}.navbar__logo{transition:transform var(--motion-fast) var(--ease-spring), opacity var(--motion-fast) ease;align-items:center;gap:8px;text-decoration:none;display:flex}.navbar__logo:active{transform:scale(.97)}.navbar__logo-img{object-fit:contain;border-radius:6px;flex-shrink:0}.navbar__logo-text{font-size:var(--fs-lg);letter-spacing:-.02em;color:var(--accent-text);font-weight:800;font-family:var(--font-display)}@keyframes navdot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.85)}}.navbar__logo-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:2.4s ease-in-out infinite navdot-pulse}.navbar__links{align-items:center;gap:4px;list-style:none;display:flex}.navbar__link{font-size:var(--fs-sm);color:var(--text-muted);border-radius:var(--radius-sm);transition:color .5s var(--ease-spring), background .5s var(--ease-spring);padding:6px 14px;font-weight:500;display:block;position:relative}@media (hover:hover){.navbar__link:hover{color:var(--text);background:#ffffff14}}.navbar__link:active{color:var(--text);background:#ffffff1f}.navbar__link--active{color:var(--accent-text)}.navbar__link--active:after{content:"";background:var(--accent);width:20px;height:2px;animation:nav-active-in var(--motion-base) var(--ease-spring) both;border-radius:1px;position:absolute;bottom:-1px;left:50%;transform:translate(-50%)}@keyframes nav-active-in{0%{opacity:0;transform:translate(-50%)scaleX(0)}to{opacity:1;transform:translate(-50%)scaleX(1)}}.navbar__user{align-items:center;display:flex}.navbar__avatar-btn{width:34px;height:34px;color:var(--accent-text);cursor:pointer;transition:opacity var(--motion-fast) ease, transform var(--motion-fast) var(--ease-spring);background:#d94f4f2e;border:1px solid #d94f4f66;border-radius:50%;font-size:14px;font-weight:800;position:relative;overflow:hidden}.navbar__avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}@media (hover:hover){.navbar__avatar-btn:hover{opacity:.85;transform:scale(1.05)}}.navbar__avatar-btn:active{opacity:.75}.navbar__login-btn{padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-sm);color:var(--accent-text);font-size:var(--fs-sm);cursor:pointer;transition:all .5s var(--ease-spring);background:#d94f4f1f;border:1px solid #d94f4f66;font-weight:600}@media (hover:hover){.navbar__login-btn:hover{background:#d94f4f38;border-color:#d94f4fa6;transform:translateY(-1px)}}.navbar__login-btn:active{background:#d94f4f47;transform:scale(.97)}.navbar__hamburger{width:40px;height:40px;color:var(--text);border-radius:var(--radius-xs);cursor:pointer;transition:background var(--motion-fast) ease, transform var(--motion-fast) var(--ease-spring);background:0 0;border:none;justify-content:center;align-items:center;display:none}.navbar__hamburger:active{background:var(--surface-translucent-hover);transform:scale(.94)}@keyframes drawer-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.navbar__drawer{top:var(--nav-offset);z-index:99;padding-left:var(--safe-left);padding-right:var(--safe-right);-webkit-backdrop-filter:blur(60px)saturate(180%);background:var(--surface-solid);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);animation:drawer-slide-in var(--motion-base) var(--ease-emphasized);position:fixed;left:0;right:0}.navbar__drawer-list{padding:8px 12px;list-style:none}.navbar__drawer-link{font-size:var(--fs-base);color:var(--text-muted);border-radius:var(--radius-xs);min-height:44px;transition:color var(--motion-fast) ease, background var(--motion-fast) ease, transform var(--motion-fast) var(--ease-spring);padding:12px 14px;font-weight:500;display:block}@media (hover:hover){.navbar__drawer-link:hover{color:var(--text);background:#ffffff14}}.navbar__drawer-link:active{color:var(--text);background:#ffffff1f;transform:scale(.98)}.navbar__drawer-link--active{color:var(--accent-text)}@media (max-width:600px){.navbar__inner{gap:8px;padding:0 12px}.navbar__hamburger{display:flex}.navbar__links{display:none}.navbar__logo{flex:1;justify-content:center}.navbar__login-btn{min-height:44px;padding:var(--sp-2) var(--sp-3)}}@media (max-width:380px){.navbar__inner{gap:4px;padding:0 8px}}.home{width:100%;height:100vh;justify-content:center;align-items:center;height:100dvh;display:flex;position:relative;overflow:hidden}.home__bg{z-index:0;pointer-events:none;filter:blur(6px)brightness(.5)saturate(1.2);opacity:1;background-position:50%;background-repeat:no-repeat;background-size:cover;transition:opacity 2s,transform 8s ease-out;animation:16s ease-in-out infinite alternate home-background-drift;position:absolute;top:0;bottom:0;left:0;right:0;transform:scale(1.08)}@keyframes home-background-drift{0%{transform:scale(1.08)translate(-1%,-1%)}to{transform:scale(1.13)translate(1%,1%)}}.home__bg--next{opacity:0;z-index:1}.home__bg--visible{opacity:1}.home__overlay{z-index:2;pointer-events:none;-webkit-backdrop-filter:blur(20px)saturate(180%);background:linear-gradient(160deg, var(--home-overlay-start) 0%, var(--home-overlay-mid) 50%, var(--home-overlay-end) 100%);position:absolute;top:0;bottom:0;left:0;right:0}@keyframes home-fadein-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.home__content{z-index:3;pointer-events:auto;text-align:center;flex-direction:column;align-items:center;gap:24px;padding:0 24px;animation:.9s cubic-bezier(.22,1,.36,1) both home-fadein-up;display:flex;position:relative}.home__title{font-size:clamp(48px,8vw,80px);font-weight:800;font-family:var(--font-display);letter-spacing:-.03em;background:linear-gradient(135deg, #fffffff2 10%, var(--accent-text) 62%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;line-height:1.05;animation:.9s cubic-bezier(.22,1,.36,1) .1s both home-fadein-up}.home__subtitle{color:var(--text-muted);letter-spacing:.04em;max-width:480px;font-size:clamp(15px,2vw,18px);animation:.9s cubic-bezier(.22,1,.36,1) .22s both home-fadein-up}.home__actions{flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;max-width:420px;margin-top:4px;animation:.9s cubic-bezier(.22,1,.36,1) .34s both home-fadein-up;display:flex}.home__btn--wide{width:100%}.home__actions-row{align-items:stretch;gap:12px;width:100%;display:flex}.home__actions-row .home__btn{min-width:0;padding:0 var(--sp-2);flex:1 1 0}.home__btn{border-radius:var(--radius);transition:transform var(--motion-fast) var(--ease-spring), box-shadow var(--motion-base) ease, border-color var(--motion-fast) ease, background var(--motion-fast) ease, opacity var(--motion-fast) ease;white-space:nowrap;justify-content:center;align-items:center;gap:8px;height:46px;font-weight:600;text-decoration:none;display:inline-flex}.home__btn:active{transform:scale(.98)}.home__btn--main{height:54px;font-size:var(--fs-md);color:var(--accent-text);-webkit-backdrop-filter:blur(40px)saturate(180%);transition:all .5s var(--ease-spring);background:#d94f4f26;border:1px solid #d94f4f66;padding:0 48px;box-shadow:0 4px 16px #03071273,inset 0 1px #ffffff40}@media (hover:hover){.home__btn--main:hover{background:#d94f4f40;border-color:#d94f4fa6;transform:translateY(-2px);box-shadow:0 10px 32px #0307128c,inset 0 1px #ffffff59}}.home__btn--side{font-size:var(--fs-sm);color:var(--text);-webkit-backdrop-filter:blur(40px)saturate(180%);transition:all .5s var(--ease-spring);background:#ffffff1a;border:1px solid #fff3;padding:0 20px;box-shadow:0 4px 16px #03071273,inset 0 1px #ffffff40}@media (hover:hover){.home__btn--side:hover{background:#ffffff26;border-color:#ffffff59;transform:translateY(-2px);box-shadow:0 10px 32px #0307128c,inset 0 1px #ffffff59}}@media (max-width:600px){.home__bg{filter:blur(var(--sp-1)) brightness(.48) saturate(1.1);animation-duration:22s}.home__content{gap:18px;padding:0 20px}.home__actions{gap:10px;max-width:340px}.home__actions-row{gap:var(--sp-2)}.home__actions-row .home__btn{padding:0 var(--sp-1);gap:var(--sp-1);font-size:var(--fs-xs)}.home__btn--main{padding:0 var(--sp-4)}}.home__preview{z-index:3;padding:var(--sp-6) var(--sp-6) var(--sp-8);gap:var(--sp-4);grid-template-columns:1fr 1fr;max-width:900px;margin:0 auto;display:grid;position:absolute;bottom:0;left:0;right:0}.home__preview-block{-webkit-backdrop-filter:blur(60px)saturate(180%);border-radius:var(--radius);padding:var(--sp-4);gap:var(--sp-3);box-shadow:var(--shadow);background:#ffffff14 linear-gradient(#ffffff1f,#0000 50%);border:1px solid #ffffff26;flex-direction:column;display:flex}.home__preview-heading{font-size:var(--fs-sm);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.home__preview-item{align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--border);color:inherit;text-decoration:none;transition:opacity .15s;display:flex}.home__preview-item:last-child{border-bottom:none}@media (hover:hover){.home__preview-item:hover{opacity:.72}}.home__preview-item-thumb{border-radius:var(--radius-xs);background:var(--surface-2);object-fit:cover;flex-shrink:0;width:48px;height:32px}.home__preview-item-avatar{background:var(--accent);width:28px;height:28px;color:var(--on-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.home__preview-item-text{flex:1;min-width:0}.home__preview-item-title{font-size:var(--fs-sm);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.home__preview-item-meta{font-size:var(--fs-xs);color:var(--text-dim);margin-top:2px}@media (max-width:600px){.home__preview{display:none}}@media (prefers-reduced-motion:reduce){.home__bg{animation:none}}@keyframes route-enter{0%{opacity:0;transform:translate3d(0, var(--sp-3), 0)}to{opacity:1;transform:translate(0,0)}}@keyframes overlay-enter{0%{opacity:0}to{opacity:1}}@keyframes modal-enter{0%{opacity:0;transform:translate3d(0, var(--sp-4), 0) scale(.97)}to{opacity:1;transform:translate(0,0)scale(1)}}.route-shell{min-height:100vh;min-height:100dvh;animation:route-enter var(--motion-page) var(--ease-emphasized) both;will-change:opacity, transform}.page-loading{min-height:calc(100vh - var(--nav-offset));min-height:calc(100dvh - var(--nav-offset));padding-top:var(--nav-offset);place-items:center;display:grid}.page-loading__spinner{width:var(--sp-6);height:var(--sp-6);border:2px solid var(--border);border-top-color:var(--accent-text);border-radius:var(--radius-pill);animation:.8s linear infinite page-loading-spin}@keyframes page-loading-spin{to{transform:rotate(360deg)}}.page-content{padding-top:calc(var(--nav-offset) + var(--page-top-space,var(--sp-8)));min-height:100vh;min-height:100dvh}.page-content>*{animation:route-enter var(--motion-base) var(--ease-emphasized) 80ms both}.home__modal-overlay,.terms-modal__overlay,.stream-confirm-overlay,.admin-modal__overlay{animation:overlay-enter var(--motion-fast) ease-out both}.home__modal,.terms-modal__box,.stream-confirm-dialog,.admin-modal__box,.admin-video-editor__box{animation:modal-enter var(--motion-base) var(--ease-emphasized) both}@media (max-width:600px){.route-shell{animation-duration:var(--motion-base)}}@media (prefers-reduced-motion:reduce){.route-shell,.page-content>*,.page-loading__spinner,.home__modal-overlay,.terms-modal__overlay,.stream-confirm-overlay,.admin-modal__overlay,.home__modal,.terms-modal__box,.stream-confirm-dialog,.admin-modal__box,.admin-video-editor__box{animation:none}}.terms-modal__overlay{background:var(--overlay);-webkit-backdrop-filter:blur(8px);z-index:300;padding:var(--sp-4);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.terms-modal__box{background:var(--surface-solid);-webkit-backdrop-filter:blur(24px)saturate(180%);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-8) var(--sp-6);width:100%;max-width:580px;max-height:85vh;box-shadow:var(--shadow-lg);overflow-y:auto}.terms-modal__title{font-family:var(--font-display);font-size:var(--fs-xl);color:var(--text);text-align:center;margin:0 0 var(--sp-6) 0}.terms-modal__content{gap:var(--sp-5);margin-bottom:var(--sp-6);flex-direction:column;display:flex}.terms-modal__section{gap:var(--sp-2);flex-direction:column;display:flex}.terms-modal__section-title{font-size:var(--fs-md);color:var(--accent-text);margin:0;font-weight:600}.terms-modal__text{font-size:var(--fs-base);color:var(--text-muted);margin:0;line-height:1.7}.terms-modal__text strong{color:var(--text);font-weight:600}.terms-modal__accept{background:var(--avatar-3);color:#ffffffeb;border-radius:var(--radius-xs);width:100%;padding:var(--sp-4);font-size:var(--fs-md);cursor:pointer;border:none;font-weight:700;transition:opacity .15s}@media (hover:hover){.terms-modal__accept:hover{opacity:.88}}@media (max-width:600px){.terms-modal__box{padding:var(--sp-6) var(--sp-4);max-height:90vh}.terms-modal__title{font-size:var(--fs-lg)}.terms-modal__section-title{font-size:var(--fs-base)}.terms-modal__text{font-size:var(--fs-sm)}.terms-modal__accept{font-size:var(--fs-base)}}
