.signin-modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.signin-modal{background:var(--color-bg-base);border-radius:var(--radius-lg, 14px);padding:var(--space-2xl, 24px);width:90%;max-width:400px;box-shadow:var(--shadow-overlay, 0 8px 32px rgba(0, 0, 0, .12));animation:signinModalIn .25s cubic-bezier(.34,1.56,.64,1)}@keyframes signinModalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.signin-modal-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.signin-modal-header h3{margin:0;font-size:20px;font-weight:700;color:var(--color-text-default)}.signin-modal-subtitle{margin:4px 0 0;font-size:13px;color:var(--color-text-muted)}.signin-modal-close{background:transparent;border:none;font-size:22px;color:var(--color-text-subtle);cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .15s;line-height:1}.signin-modal-close:hover{background:var(--color-bg-muted);color:var(--color-text-default)}.signin-modal-form{display:flex;flex-direction:column;gap:14px}.signin-modal-label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;color:var(--color-text-default)}.signin-modal-label input{padding:10px 12px;border:1px solid var(--color-border-default, #d1d5db);border-radius:8px;font-size:14px;background:var(--color-bg-base);color:var(--color-text-default);outline:none;transition:border-color .15s}.signin-modal-label input:focus{border-color:var(--color-accent, #d3ac6a)}.signin-modal-error{font-size:13px;color:var(--color-danger, #dc2626);background:var(--color-danger-bg, rgba(220, 38, 38, .08));border-radius:8px;padding:8px 12px}.signin-modal-notice{font-size:14px;color:var(--color-text-default);background:var(--color-bg-muted);border-radius:8px;padding:14px;line-height:1.6}.signin-modal-submit{padding:10px 12px;border:none;border-radius:8px;background:var(--color-accent, #d3ac6a);color:#1a1a1a;font-size:14px;font-weight:600;cursor:pointer;transition:filter .15s}.signin-modal-submit:hover:not(:disabled){filter:brightness(1.05)}.signin-modal-submit:disabled{opacity:.6;cursor:default}.signin-modal-footer{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:16px}.signin-modal-link{background:none;border:none;padding:0;font-size:13px;color:var(--color-text-muted);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.signin-modal-link:hover{color:var(--color-text-default)}.signin-modal-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:10px 12px;border:1px solid var(--color-border-default, #d1d5db);border-radius:8px;background:#fff;color:#1f1f1f;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.signin-modal-google:hover:not(:disabled){background:#f8f9fa;border-color:var(--color-border-emphasis, #c4c7c5)}.signin-modal-google:disabled{opacity:.6;cursor:default}.signin-modal-google-icon{flex-shrink:0}.signin-modal-divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--color-text-subtle);font-size:12px}.signin-modal-divider:before,.signin-modal-divider:after{content:"";flex:1;height:1px;background:var(--color-border-default)}
