.team-login{margin:0;min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at top left,#d8f4fd,transparent 65%),#f5f7fa;font:14px/1.6 system-ui,'Microsoft YaHei',sans-serif;color:#2f3a4a}.login-card{box-sizing:border-box;width:min(460px,calc(100% - 32px));padding:44px;background:#fff;border:1px solid #e0eaf4;border-radius:24px;box-shadow:0 18px 70px #0d4ea311}.login-logo{width:240px;max-width:100%;height:auto;margin-bottom:26px}.login-eyebrow{display:block;color:#0d4ea3;font-size:10px;letter-spacing:3px;font-weight:700}.login-card h1{font-size:24px;color:#123b70;margin:9px 0}.login-card p{color:#64748b}.login-card label{display:block;margin-top:20px;font-weight:600}.login-card input{box-sizing:border-box;display:block;width:100%;padding:13px;margin-top:7px;border:1px solid #d9e3ee;border-radius:10px;font:inherit}.login-submit{width:100%;margin-top:26px;border:0;border-radius:10px;padding:14px;background:#0d4ea3;color:white;font-weight:700;cursor:pointer}.login-submit:disabled{opacity:.6}.login-foot{font-size:12px;border-top:1px solid #edf2f7;padding-top:18px}.login-card #loginError{color:#b42318}.team-account{font-size:12px;color:#0d4ea3;font-weight:700}.team-sync{position:fixed;left:284px;bottom:14px;z-index:16;max-width:calc(100vw - 310px);display:flex;align-items:center;gap:10px;padding:9px 14px;border:1px solid #cae8ef;background:#effbfa;color:#25655f;border-radius:10px;box-shadow:0 3px 18px #123b7010;font-size:12px}.team-sync.error{background:#fff4e9;border-color:#fedf89;color:#8a3f00}.team-sync button{cursor:pointer;background:white;border:1px solid currentColor;border-radius:6px;padding:4px 8px;color:inherit}.team-readonly{padding:10px 14px;background:#edf7fc;color:#0d4ea3;border-radius:8px;margin-bottom:12px}.team-owner{display:inline-block;margin:12px 0;color:#0d4ea3}.team-owner select{margin:0 8px}.team-busy{position:fixed;inset:0;background:#ffffff99;z-index:30;display:grid;place-items:center;font:600 16px system-ui;color:#0d4ea3}.team-mobile-select{display:none}@media(max-width:1000px){.team-sync{left:88px;max-width:calc(100vw - 120px)}}@media(max-width:640px){.team-sync{left:8px;bottom:60px;max-width:calc(100vw - 32px)}.team-mobile-select{display:block;max-width:110px}.team-account{font-size:10px}.topbar .actions .btn.team-logout{display:block}.login-card{padding:28px}}
.side .brand{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:4px 11px 18px;position:relative}.side .brand:after{display:none}.side .brand-logo{width:190px;max-width:100%;height:auto;min-height:54px;padding:9px 11px;object-fit:contain;flex:none}.side .brand span{display:block}.side .brand small{font-size:12px;line-height:1.5;color:#bdefff}.side .nav-label{margin-top:0}.todo-head .iconbtn{font-size:12px}.mobile-nav button{min-width:0}.mobile-nav .ico{font-size:19px}
@media(min-width:641px) and (max-width:1000px){.app{grid-template-columns:220px 1fr}.side .brand span,.side .nav span:not(.ico),.side .nav-label,.side .side-bottom{display:block}.side .nav{justify-content:flex-start}.side .brand-logo{width:170px}.team-sync{left:235px;max-width:calc(100vw - 250px)}.topbar{height:auto;min-height:68px;gap:10px;flex-wrap:wrap;padding:12px 18px}.topbar .actions{flex-wrap:wrap}}
@media(max-width:640px){.todo{max-height:60vh;bottom:66px}.todo-fab{bottom:68px}.team-sync{bottom:8px;z-index:17;font-size:10px;padding:4px 8px}.mobile-nav{bottom:39px}.content{padding-bottom:135px}.topbar{height:auto;min-height:58px;gap:8px;flex-wrap:wrap;padding:10px 12px}.topbar .actions{gap:6px;flex-wrap:wrap}.team-account{max-width:100px}}
