.front-page{min-height:100vh;display:flex;flex-direction:column}.front-page>main{flex:1}.global-shell{width:min(1180px,calc(100% - 40px));margin:auto}.global-header{height:84px;position:sticky;top:0;z-index:30;background:#FFFEFE;border-bottom:1px solid #e5e5e8;backdrop-filter:blur(14px);flex-shrink:0}.global-nav{height:100%;display:flex;align-items:center;justify-content:space-between;gap:16px}.global-brand{display:flex;align-items:center;gap:11px;font-size:21px;font-weight:800;letter-spacing:-.035em;min-width:0}.global-brand>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-links{display:flex;gap:30px;font-size:14px;color:#545d70}.global-links a:hover{color:#675cf4}.global-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.global-language{display:flex;border:1px solid #e5e5e8;border-radius:99px;padding:3px;background:#fff}.global-language a{padding:6px 10px;border-radius:99px;font-size:12px}.global-language .active{background:#172033;color:#fff}.global-login,.global-register{display:inline-flex;border-radius:99px;font-size:12px;font-weight:700;padding:9px 14px}.global-register{background:#172033;color:#fff}.global-account{position:relative}.global-account summary{display:flex;align-items:center;gap:7px;cursor:pointer;list-style:none;border-radius:99px;padding:4px 10px 4px 4px;background:#fff;border:1px solid #e5e5e8;font-size:12px;font-weight:700}.global-account summary::-webkit-details-marker{display:none}.global-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e2dfff;color:#675cf4;font-size:11px;font-weight:800}.global-account-name{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-chevron{display:grid;place-items:center;width:12px;height:12px;flex-shrink:0;transition:transform .18s ease}.global-chevron:after{content:"";width:9px;height:5px;background:currentColor;clip-path:polygon(0 0,50% 65%,100% 0,100% 35%,50% 100%,0 35%)}.global-account[open] .global-chevron{transform:rotate(180deg)}.global-account-menu{position:absolute;right:0;top:calc(100% + 10px);width:172px;background:#fff;border:1px solid #e5e5e8;border-radius:13px;padding:6px;box-shadow:0 14px 45px rgba(23,32,51,.14)}.global-account-menu a,.global-account-menu button{display:block;width:100%;padding:11px 12px;text-align:left;border:0;border-radius:8px;background:transparent;color:#172033;font:inherit;font-size:13px;cursor:pointer}.global-account-menu a:hover,.global-account-menu button:hover{background:#f3f1ff}.global-account-menu button{color:#d6544c}.global-account-menu button:disabled{opacity:.5;cursor:wait}.global-footer{background:#FFFEFE;border-top:1px solid #e5e5e8;padding:28px 0 38px;color:#888f9c;font-size:12px;line-height:1.8}.global-footer-inner{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.global-copyright{text-align:right;max-width:720px}.front-page .auth-shell{min-height:calc(100vh - 180px)}.front-page .auth-panel{padding:55px 50px;min-height:0}
@media(max-width:900px){.global-links{display:none}}
@media(max-width:620px){.global-shell{width:calc(100% - 24px)}.global-header{height:66px}.global-nav{gap:8px}.global-brand{font-size:17px;gap:7px}.global-actions{gap:6px}.global-language a{padding:5px 8px}.global-login{display:none}.global-register{padding:8px 11px}.global-account-name{display:none}.global-account summary{padding:3px 6px 3px 3px;gap:4px}.global-footer-inner{flex-direction:column;align-items:center;gap:10px;text-align:center}.global-copyright{text-align:center}.front-page .auth-panel{padding:40px 24px;min-height:calc(100dvh - 210px)}}
.global-account-menu #siteChangePassword{color:#172033}.global-password-dialog{position:fixed;inset:0;margin:auto;width:min(420px,calc(100% - 32px));max-height:85dvh;overflow:auto;padding:0;border:1px solid #e5e5e8;border-radius:18px;background:#fff;color:#172033;box-shadow:0 24px 80px rgba(23,32,51,.22)}.global-password-dialog::backdrop{background:rgba(9,12,22,.55);backdrop-filter:blur(3px)}.global-password-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #e5e5e8}.global-password-head h2{font-size:17px;margin:0}.global-password-head button{width:30px;height:30px;border:0;border-radius:50%;background:#f2f2f6;font-size:20px;cursor:pointer}.global-password-dialog form{padding:22px}.global-password-dialog label{display:grid;gap:8px;margin-bottom:16px;font-size:12px;color:#626b7e}.global-password-dialog input{width:100%;height:46px;border:1px solid #dfe1e7;border-radius:10px;padding:0 12px;font:inherit}.global-password-dialog input:focus{outline:2px solid #dcd7ff;border-color:#675cf4}.global-password-save{width:100%;height:46px;border:0;border-radius:10px;background:#675cf4;color:#fff;font:inherit;font-weight:700;cursor:pointer}.global-password-dialog button:disabled{opacity:.5;cursor:wait}.global-password-open{overflow:hidden}
.global-logo{display:block;height:36px;flex-shrink:0;object-fit:contain}.global-logo-svg{width:36px}.global-logo-image{max-width:160px;width:auto}.global-logo-text{font-size:21px;line-height:1.2}.global-brand{max-width:45%}@media(max-width:620px){.global-logo{height:30px}.global-logo-svg{width:30px}.global-logo-image{max-width:100px}.global-logo-text{font-size:17px}}
/* 平台导航：桌面横排，移动端从左侧打开抽屉。 */
.global-links{gap:18px;font-size:13px;white-space:nowrap}.global-links a{padding:9px 0}.global-links a.active{color:#675cf4;font-weight:700}.global-menu-toggle{display:none;width:36px;height:36px;flex-shrink:0;border:0;border-radius:9px;background:transparent;color:#172033;cursor:pointer;align-items:center;justify-content:center}.global-menu-toggle span,.global-menu-toggle span:before,.global-menu-toggle span:after{display:block;width:20px;height:2px;background:currentColor;border-radius:2px}.global-menu-toggle span{position:relative}.global-menu-toggle span:before,.global-menu-toggle span:after{content:"";position:absolute;left:0}.global-menu-toggle span:before{top:-6px}.global-menu-toggle span:after{top:6px}.global-menu-toggle:hover{background:#f3f1ff}.global-nav-open{overflow:hidden}.global-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.global-nav-drawer{position:fixed;inset:0 auto 0 0;width:min(360px,88vw);max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-right:1px solid #e5e5e8;background:#FFFEFE;color:#172033;box-shadow:16px 0 60px rgba(23,32,51,.14);overflow:hidden}.global-nav-drawer[open]{display:flex;flex-direction:column;animation:global-drawer-in .2s ease-out}.global-nav-drawer::backdrop{background:rgba(9,12,22,.48);backdrop-filter:blur(3px)}.global-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:24px 22px;border-bottom:1px solid #e5e5e8;flex-shrink:0}.global-drawer-brand{max-width:calc(100% - 48px);font-size:20px}.global-drawer-close{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;border:0;border-radius:8px;background:transparent;color:#626b7e;font:inherit;font-size:29px;line-height:1;cursor:pointer}.global-drawer-close:hover{background:#f3f1ff}.global-drawer-links{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:24px 16px}.global-drawer-links a{display:flex;align-items:center;gap:14px;padding:13px 14px;border-radius:11px;font-size:15px;font-weight:600}.global-drawer-links a:hover,.global-drawer-links a.active{background:#f0edff;color:#675cf4}.global-drawer-foot{display:flex;flex-wrap:wrap;gap:10px;padding:20px 22px max(20px,env(safe-area-inset-bottom));border-top:1px solid #e5e5e8;flex-shrink:0}.global-drawer-primary,.global-drawer-secondary{display:flex;align-items:center;justify-content:center;flex:1 1 100px;min-height:44px;padding:10px;border:0;border-radius:10px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.global-drawer-primary{background:#675cf4;color:#fff}.global-drawer-secondary{background:#f0f1f5;color:#172033}.global-menu-toggle:focus-visible,.global-drawer-close:focus-visible,.global-drawer-links a:focus-visible{outline:2px solid #675cf4;outline-offset:3px}
@keyframes global-drawer-in{from{transform:translateX(-100%)}to{transform:translateX(0)}}@media(prefers-reduced-motion:reduce){.global-nav-drawer[open]{animation:none}}@media(max-width:1050px){.global-links{display:none}.global-menu-toggle{display:flex}.global-nav .global-brand{flex:1;margin-right:auto;max-width:none}.global-nav .global-login,.global-nav .global-register{display:none}}
