.signin-layout{min-height:calc(100vh - 64px);display:flex;align-items:center;justify-content:center;padding:40px 20px 60px}.signin-box{width:100%;max-width:440px}.signin-box .card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:var(--spacing-md);box-shadow:0 8px 40px #00000059}.signin-box .card-header{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border)}.signin-box .card-header h2{font-size:1.2rem;font-weight:700;color:var(--text);margin:0;display:flex;align-items:center;gap:8px}.signin-box p{color:var(--text-sub);font-size:.9rem;margin:0 0 18px;opacity:.8;line-height:1.5}.signin-box input[type=text],.signin-box input[type=email],.signin-box input[type=password]{color:var(--text)!important;background:var(--surface-2);border-color:var(--border-mid)}.signin-box input[type=text]:focus,.signin-box input[type=email]:focus{border-color:var(--accent);background:var(--surface-3)}.signin-hint{font-size:.8rem;color:var(--text-dim);margin-top:6px;display:block;line-height:1.4}.remember-row{display:flex;align-items:center;gap:10px;margin:12px 0 20px;font-size:.88rem;color:var(--text-sub)}.remember-row input[type=checkbox]{width:17px;height:17px;cursor:pointer;accent-color:var(--color-primary)}.trusted-badge{background:var(--green-bg);border:1px solid rgba(69,186,128,.2);border-radius:10px;padding:12px 16px;margin-bottom:18px;font-size:.9rem;color:var(--text-sub);display:flex;align-items:center;gap:10px}.trusted-badge .material-symbols-outlined{color:var(--color-success);flex-shrink:0}.switch-btn{background:none;border:none;color:var(--text-dim);font-size:.82rem;cursor:pointer;text-decoration:underline;padding:0;display:inline-flex;align-items:center;gap:4px;transition:color .15s}.switch-btn:hover{color:var(--text-sub)}.restart-link{display:block;text-align:center;margin-top:18px}.profile-section-block{border-top:1px solid var(--border);margin-top:22px;padding-top:18px}.profile-section-block h3{font-size:.95rem;font-weight:600;color:var(--text);margin:0 0 14px}.optin-row{display:flex;align-items:flex-start;gap:10px;cursor:pointer;line-height:1em;margin:10px 0 10px 25px}.optin-row label{font-size:.8rem;font-weight:400;color:var(--text-sub)}.optin-row input[type=checkbox]{margin-top:2px;flex-shrink:0;cursor:pointer;accent-color:var(--color-primary)}.optin-link{color:var(--accent);cursor:pointer;text-decoration:underline;background:none;border:none;font-size:inherit;padding:0;transition:opacity .15s}.optin-link:hover{opacity:.75}.optin-link label{font-weight:400}.affiliate-locked{font-size:.8rem;color:var(--text-dim);margin-top:5px;display:flex;align-items:center;gap:4px}.affiliate-locked .material-symbols-outlined{font-size:.95rem}.alert{padding:var(--spacing-xs);font-size:.8em;margin-bottom:var(--spacing-xs)}.alert a{color:inherit;text-decoration:underline}.signin-back-link{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:24px;font-size:.82rem;color:var(--text-dim);text-decoration:none;opacity:.6;transition:opacity .15s,color .15s}.signin-back-link:hover{opacity:1;color:var(--text-sub)}.signin-back-link .material-symbols-outlined{font-size:1rem}.legal-modal-overlay{position:fixed;inset:0;background:#000000bf;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}.legal-modal-box{background:var(--surface);border:1px solid var(--border);border-radius:14px;max-width:720px;width:100%;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 16px 60px #0009;text-align:left}.legal-modal-header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--border);flex-shrink:0}.legal-modal-header h3{margin:0;font-size:1rem;color:var(--text)}.legal-modal-close{background:none;border:none;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;padding:4px;border-radius:var(--radius-sm);transition:color .15s,background .15s}.legal-modal-close:hover{color:var(--text);background:#ffffff0f}.legal-modal-body{padding:22px;overflow-y:auto;flex:1;font-size:.88rem;line-height:1.75;color:var(--text-sub);scrollbar-width:thin;scrollbar-color:var(--border) transparent}.legal-modal-body h4{color:var(--accent);margin:20px 0 6px;font-size:.95rem}.legal-modal-body h4:first-child{margin-top:0}.signin-footer{text-align:center;padding:16px 20px;font-size:.72rem;color:var(--text-dim);opacity:.5;border-top:1px solid var(--border)}@media(max-width:500px){.signin-box .card{padding:var(--spacing-md)}.signin-layout{padding:20px 16px 80px}}
