.skip-to-content{position:absolute;top:-100%;left:16px;z-index:9000;padding:8px 16px;background:var(--color-primary);color:var(--color-on-accent);border-radius:8px;font-weight:600;text-decoration:none}.skip-to-content:focus{top:8px;outline:2px solid var(--color-primary);outline-offset:2px}body{min-height:100vh;margin:0;background:var(--color-surface);font-family:var(--font-family);color:var(--color-text);display:flex;flex-direction:column}.login-shell{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-6) var(--space-4)}.login-card{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center}.login-logo{margin-bottom:var(--space-6)}.login-logo img{height:40px;width:auto}.login-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text);margin:0 0 var(--space-2);text-align:center}.login-subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center;margin:0 0 var(--space-6);line-height:var(--line-height-base)}.login-divider{display:flex;align-items:center;width:100%;margin:var(--space-6) 0 var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-hint);letter-spacing:var(--letter-spacing-wide)}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--color-divider)}.login-divider:before{margin-right:var(--space-3)}.login-divider:after{margin-left:var(--space-3)}.login-social{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.login-social-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family);cursor:pointer;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1)}.login-social-btn:hover{border-color:var(--color-primary-subtle);background:var(--color-primary-light);color:var(--color-text)}.login-social-btn i{font-size:var(--font-size-base)}.login-social-btn.google i{color:var(--color-social-google)}.login-social-btn.facebook i{color:var(--color-social-facebook)}.login-social-btn.cms i{color:var(--color-primary)}.login-form{width:100%;display:flex;flex-direction:column;gap:var(--space-4)}.login-field{display:flex;flex-direction:column;gap:var(--space-2)}.login-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.login-input{width:100%;box-sizing:border-box;height:48px;padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-text);background:var(--color-surface);outline:none;transition:all .3s cubic-bezier(.16,1,.3,1)}.login-input.has-icon-right{padding-right:48px}.login-input::placeholder{color:var(--color-text-hint)}.login-input:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.login-password-wrap{position:relative}.login-password-toggle{position:absolute;right:var(--space-2);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-text-muted);cursor:pointer;width:36px;height:36px;border-radius:var(--radius-circle);display:flex;align-items:center;justify-content:center;transition:all var(--transition-hover)}.login-password-toggle:hover{background:var(--color-surface-sunken);color:var(--color-text)}.login-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--font-size-sm)}.login-remember{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);cursor:pointer}.login-remember input{cursor:pointer}.login-forgot{color:var(--color-primary);text-decoration:none}.login-forgot:hover{text-decoration:underline}.login-submit{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:var(--radius-full);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);font-family:var(--font-family);cursor:pointer;transition:background .3s cubic-bezier(.16,1,.3,1);margin-top:var(--space-2)}.login-submit:hover{background:var(--btn-primary-bg-hover)}.login-signup{margin-top:var(--space-6);font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center}.login-signup a{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.login-signup a:hover{text-decoration:underline}.login-footer-accent{position:fixed;bottom:0;left:0;right:0;height:10px;background:var(--color-primary);border-radius:var(--radius-md) var(--radius-md) 0 0}@media(max-width:480px){.login-title{font-size:var(--font-size-xl)}}
