.profile-page{background:var(--color-bg-light);color:var(--color-text-on-light);min-height:60vh;padding:var(--space-12) var(--space-4)}.profile-inner{max-width:720px;margin:0 auto;background:var(--color-white);padding:var(--space-10);border-radius:var(--radius-base);box-shadow:var(--shadow-md)}.profile-loading,.profile-error{text-align:center;opacity:.7;margin:var(--space-12) 0}.profile-head{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-8)}.profile-head .eyebrow{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-accent);margin:0 0 var(--space-2)}.profile-head h1{font-family:var(--font-display);font-size:var(--font-size-3xl);margin:0 0 var(--space-1)}.profile-meta{margin:0;opacity:.75;font-size:var(--font-size-sm)}.profile-actions{display:flex;gap:var(--space-2);align-items:center}.link-button,.ghost-button{background:transparent;color:var(--color-primary);border:1px solid var(--color-border-light);padding:var(--space-2) var(--space-4);border-radius:var(--radius-base);font-size:var(--font-size-sm);text-decoration:none;cursor:pointer;font-family:inherit}.link-button:hover,.ghost-button:hover{background:var(--color-bg-light)}.profile-readonly,.profile-editable{margin-bottom:var(--space-8)}.profile-readonly h2,.profile-editable h2{font-family:var(--font-display);font-size:var(--font-size-xl);margin:0 0 var(--space-3)}.readonly-note{font-size:var(--font-size-sm);opacity:.7;margin:0 0 var(--space-4)}.profile-readonly dl{display:grid;grid-template-columns:140px 1fr;gap:var(--space-2) var(--space-4);margin:0}.profile-readonly dl div{display:contents}.profile-readonly dt{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);opacity:.7}.profile-readonly dd{margin:0;font-size:var(--font-size-sm)}.auth-form{display:flex;flex-direction:column;gap:var(--space-5)}.auth-form label{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.auth-form input[type=text],.auth-form input[type=email],.auth-form input[type=url],.auth-form input[type=number],.auth-form input[type=password],.auth-form textarea{width:100%;box-sizing:border-box;padding:var(--space-3);border:1px solid var(--color-border-light);border-radius:var(--radius-md);font:inherit;font-weight:var(--font-weight-normal);background:var(--color-white);color:var(--color-text-on-light)}.auth-form textarea{resize:vertical;min-height:7rem}.auth-form input:focus-visible,.auth-form textarea:focus-visible{outline:2px solid var(--color-primary-alpha-40);outline-offset:1px}.auth-submit{align-self:flex-start;background:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-md);padding:var(--space-3) var(--space-8);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer}.auth-submit:disabled{opacity:.6;cursor:default}.auth-status{margin:0;font-size:var(--font-size-sm)}.auth-status.error{color:var(--color-accent)}.auth-status.success{color:var(--color-primary)}@media (min-width: 640px){.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}}.hint{font-size:var(--font-size-xs);opacity:.6;font-weight:var(--font-weight-normal)}.checkbox-label{flex-direction:row!important;align-items:center;gap:var(--space-2);font-weight:var(--font-weight-normal)}.image-field{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--font-size-sm)}.image-label{font-weight:var(--font-weight-semibold)}.image-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.image-preview{width:64px;height:64px;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--color-border-light)}.image-btn{background:var(--color-white);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);font:inherit;font-size:var(--font-size-sm);cursor:pointer}.image-btn.ghost{border-color:transparent;color:var(--color-accent)}.image-status{font-size:var(--font-size-xs);color:var(--color-placeholder)}.profile-editable textarea{padding:var(--space-3);border:1px solid var(--color-border-light);border-radius:var(--radius-md);font:inherit;resize:vertical}
