/* ===================================================================== Auth / Forms / Account ===================================================================== */ .auth-page { padding: 4rem 0; } .auth-layout { max-width: 480px; margin: 0 auto; } .auth-card { background: #fff; border-radius: 18px; padding: 1.6rem 1.8rem; box-shadow: var(--shadow-soft); border: 1px solid rgba(200, 203, 208, 0.5); } .auth-title { font-family: var(--font-heading); font-weight: 700; font-size: 1.5rem; margin: 0 0 0.35rem; color: var(--deep-gray); } .auth-subtitle { font-size: 0.95rem; color: #555; margin: 0 0 1.5rem; } .auth-flash-success, .auth-flash-error { border-radius: 12px; padding: 0.75rem 0.9rem; font-size: 0.9rem; margin-bottom: 1rem; } .auth-flash-success { background: #e6f9ef; border: 1px solid rgba(3, 193, 96, 0.4); color: #145c32; } .auth-flash-error { background: #fde7ea; border: 1px solid rgba(230, 57, 70, 0.4); color: #7f1d1d; } /* Forms */ .form-row { margin-bottom: 1rem; } .form-label { display: block; font-size: 0.85rem; color: #555; margin-bottom: 0.3rem; } .form-input, .form-select, .form-textarea { width: 100%; border-radius: 10px; border: 1px solid var(--silver); padding: 0.55rem 0.7rem; font-size: 0.95rem; font-family: inherit; transition: border-color 0.12s ease, box-shadow 0.12s ease, background-color 0.12s ease; background: #fff; } .form-input:focus, .form-select:focus, .form-textarea:focus { outline: none; border-color: var(--brand-blue); box-shadow: 0 0 0 1px rgba(0, 81, 255, 0.15); background: #fff; } .form-input[readonly], .form-select[readonly] { background: #f3f4f6; color: #666; } .form-error { margin-top: 0.3rem; font-size: 0.8rem; color: var(--error-red); } .form-help { margin-top: 0.3rem; font-size: 0.8rem; color: #777; } .form-actions { margin-top: 1.5rem; display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; } .auth-link { font-size: 0.9rem; color: var(--brand-blue); text-decoration: none; } .auth-link:hover { text-decoration: underline; } /* Account page */ .account-page { padding: 4rem 0; } .account-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1.2fr); gap: 2rem; } .account-card { background: #fff; border-radius: 18px; padding: 1.6rem 1.8rem; box-shadow: var(--shadow-soft); border: 1px solid rgba(200, 203, 208, 0.5); } .account-title { font-family: var(--font-heading); font-weight: 700; font-size: 1.4rem; margin: 0 0 0.4rem; color: var(--deep-gray); } .account-subtitle { margin: 0 0 1.4rem; font-size: 0.95rem; color: #555; } .account-meta { font-size: 0.85rem; color: #777; } .account-avatar-preview { display: flex; align-items: center; gap: 1rem; margin-top: 0.75rem; } .account-avatar-preview .user-avatar { width: 44px; height: 44px; font-size: 1.05rem; } .account-avatar-note { font-size: 0.85rem; color: #666; } @media (max-width: 900px) { .account-grid { grid-template-columns: 1fr; } }