body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}@keyframes slideDown{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.navigation{background-color:#282c34;padding:1rem 0;box-shadow:0 2px 4px #0000001a}.nav-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 2rem;display:flex}.nav-logo{color:#61dafb;font-size:1.2rem;font-weight:700;text-decoration:none}.nav-logo:hover{color:#4ec9fb}.nav-menu{gap:2rem;margin:0;padding:0;list-style:none;display:flex}.nav-item{margin:0}.nav-link{color:#fff;border-radius:4px;padding:.5rem 1rem;text-decoration:none;transition:background-color .3s}.nav-link:hover{color:#61dafb;background-color:#ffffff1a}.nav-link.active{color:#61dafb;background-color:#61dafb33;font-weight:500}@media (width<=768px){.nav-container{flex-direction:column;gap:1rem;padding:0 1rem;display:flex}.nav-logo{font-size:1.25rem}.nav-menu{flex-wrap:wrap;justify-content:center;gap:.75rem;width:100%}.nav-link{white-space:nowrap;padding:.5rem .75rem;font-size:.9rem}}@media (width<=480px){.nav-container{padding:0 .5rem}.nav-logo{font-size:1.1rem}.nav-menu{gap:.5rem}.nav-link{padding:.4rem .6rem;font-size:.85rem}}.auth-gate{background-color:#f9fafb;justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-gate-spinner{border:.25rem solid #e0e0e0;border-top-color:#2196f3;border-radius:50%;width:3rem;height:3rem;animation:.8s linear spin}@keyframes spin{to{transform:rotate(360deg)}}.avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.avatar-tiny{width:20px;height:20px;font-size:.7rem;font-weight:600}.avatar-small{width:32px;height:32px;font-size:.75rem;font-weight:600}.avatar-medium{width:40px;height:40px;font-size:1.05rem;font-weight:600}.avatar-large{border:.5rem solid #667eea;width:140px;height:140px;font-size:2.5rem;font-weight:700;box-shadow:0 8px 16px #667eea4d}.avatar-placeholder{color:#fff;width:100%;height:100%;font-size:inherit;font-weight:inherit;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;display:flex}.avatar-image{object-fit:cover;width:100%;height:100%}.like-button{cursor:pointer;border:none;border-radius:4px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;transition:all .2s;display:inline-flex}.like-button--small{gap:.25rem;padding:.25rem .75rem;font-size:.7rem}.like-button--medium{gap:.5rem;min-height:36px;padding:.5rem 1rem;font-size:.875rem}.like-button--large{gap:.5rem;padding:.75rem 1.5rem;font-size:.75rem}.like-button:disabled{opacity:.5;cursor:not-allowed}.like-button--primary{color:#333;background-color:#f5f5f5}.like-button--primary:hover:not(:disabled){background-color:#e0e0e0}.like-button--primary.like-button--liked{color:#fff;background-color:#f44336}.like-button--primary.like-button--liked:hover:not(:disabled){background-color:#ea1c0d}.like-button--secondary{color:#333;background-color:#0000;border:1px solid #d1d5db}.like-button--secondary:hover:not(:disabled){background-color:#f5f5f5}.like-button--secondary.like-button--liked{color:#f44336;border-color:#f44336}.like-button--secondary.like-button--liked:hover:not(:disabled){background-color:#fef9f8}.like-icon{font-size:1.2em;line-height:1}.like-count{background-color:#f5f5f5;border:none;border-radius:4px;align-items:center;gap:.5rem;min-height:36px;padding:.5rem 1rem;font-family:inherit;display:inline-flex}.like-count--clickable{cursor:pointer;transition:background-color .2s}.like-count--clickable:hover{background-color:#e0e0e0}.like-count--clickable:focus{outline-offset:2px;outline:2px solid #667eea}.like-count-label{color:#333;font-size:.875rem;font-weight:500}@media (prefers-color-scheme:dark){.like-count{background-color:#333}.like-count-label{color:#fff}}.modal-backdrop{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:8px;flex-direction:column;width:100%;max-height:90vh;display:flex;box-shadow:0 6px 16px #0000001a}.modal--small{max-width:400px}.modal--medium{max-width:37.5rem}.modal--large{max-width:56.25rem}.modal__header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal__title{color:#374151;margin:0;font-size:1.25rem;font-weight:600}.modal__close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;font-size:2rem;line-height:1;transition:background-color .2s;display:flex}.modal__close:hover{background-color:#f9fafb}.modal__close:focus{outline-offset:2px;outline:2px solid #3b82f6}.modal__content{flex:1;padding:1.5rem;overflow-y:auto}.modal__footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.user-profile-link{color:#333;flex:1;align-items:center;gap:.75rem;text-decoration:none;transition:opacity .2s;display:flex}.user-profile-link:hover{opacity:.7}.user-profile-link__username{font-size:.9rem;font-weight:500}.likers-list{min-height:200px}.likers-list__error{color:#f44336;background-color:#ffebee;border-radius:4px;margin-bottom:1rem;padding:1rem}.likers-list__loading,.likers-list__empty{text-align:center;color:#666;padding:2rem}.likers-list__items{margin:0;padding:0;list-style:none}.likers-list__item{border-bottom:1px solid #d1d5db;justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.likers-list__item:last-child{border-bottom:none}.likers-list__date{color:#666;font-size:.875rem}.likers-list__load-more{cursor:pointer;color:#333;background-color:#f5f5f5;border:1px solid #d1d5db;border-radius:4px;width:100%;margin-top:1rem;padding:.75rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.likers-list__load-more:hover:not(:disabled){background-color:#d1d5db}.likers-list__load-more:disabled{opacity:.5;cursor:not-allowed}.support-button{cursor:pointer;border:none;border-radius:4px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;transition:all .2s;display:inline-flex}.support-button--small{gap:.25rem;padding:.25rem .75rem;font-size:.7rem}.support-button--medium{gap:.5rem;min-height:36px;padding:.5rem 1rem;font-size:.875rem}.support-button--large{gap:.5rem;padding:.75rem 1.5rem;font-size:.75rem}.support-button:disabled{opacity:.5;cursor:not-allowed}.support-button--primary{color:#fff;background-color:#3b82f6}.support-button--primary:hover:not(:disabled){background-color:#2563eb}.support-button--primary.support-button--supporting{color:#fff;background-color:#4caf50}.support-button--primary.support-button--supporting:hover:not(:disabled){background-color:#3d8b40}.support-button--secondary{color:#3b82f6;background-color:#0000;border:1px solid #3b82f6}.support-button--secondary:hover:not(:disabled){background-color:#e3f2fd}.support-button--secondary.support-button--supporting{color:#4caf50;border-color:#4caf50}.support-button--secondary.support-button--supporting:hover:not(:disabled){background-color:#e8f5e9}.support-icon{font-size:1em;line-height:1}.comment-form{margin-bottom:1.5rem}.comment-form textarea{resize:vertical;border:1px solid #d1d5db;border-radius:4px;width:100%;min-height:80px;padding:.75rem;font-family:inherit;font-size:.875rem;transition:border-color .2s}.comment-form textarea:focus{border-color:#3b82f6;outline:none}.comment-form textarea::placeholder{color:#374151}.comment-form-footer{justify-content:space-between;align-items:center;margin-top:.5rem;display:flex}.comment-char-count{color:#374151;font-size:.7rem}.comment-form button[type=submit]{color:#fff;cursor:pointer;background-color:#3b82f6;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.comment-form button[type=submit]:hover:not(:disabled){background-color:#2563eb}.comment-form button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.comment-form-unauthenticated{text-align:center;background-color:#f5f5f5;border-radius:4px;margin-bottom:1rem;padding:1rem}.comment-form-unauthenticated p{color:#666;margin:0;font-size:.875rem}@media (prefers-color-scheme:dark){.comment-form textarea{color:#f3f4f6;background-color:#333;border-color:#e5e7eb}.comment-form textarea:focus{border-color:#3b82f6}.comment-form textarea::placeholder{color:#d1d5db}.comment-form-unauthenticated{background-color:#333}.comment-form-unauthenticated p{color:#d1d5db}}.confirm-dialog-backdrop{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.confirm-dialog{background:#fff;border-radius:8px;width:100%;max-width:400px;padding:1.5rem;box-shadow:0 4px 12px #00000026}.confirm-dialog__title{color:#333;margin:0 0 1rem;font-size:1.25rem;font-weight:600}.confirm-dialog__message{color:#666;margin:0 0 1.5rem;line-height:1.5}.confirm-dialog__actions{justify-content:flex-end;gap:.75rem;display:flex}.confirm-dialog__button{cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.confirm-dialog__button--cancel{color:#374151;background-color:#e5e7eb}.confirm-dialog__button--cancel:hover{background-color:#d1d5db}.confirm-dialog__button--confirm{color:#fff}.confirm-dialog__button--confirm--danger{background-color:#dc3545}.confirm-dialog__button--confirm--danger:hover{background-color:#d32f2f}.confirm-dialog__button--confirm--warning{background-color:#ffc107}.confirm-dialog__button--confirm--warning:hover{background-color:#d39e00}.confirm-dialog__button--confirm--info{background-color:#3b82f6}.confirm-dialog__button--confirm--info:hover{background-color:#2563eb}@media (prefers-color-scheme:dark){.confirm-dialog{background:#333}.confirm-dialog__title{color:#f3f4f6}.confirm-dialog__message{color:#d1d5db}.confirm-dialog__button--cancel{color:#d1d5db;background-color:#333}.confirm-dialog__button--cancel:hover{background-color:#4d4d4d}}.comment-item{background-color:#fff;border:1px solid #d1d5db;border-radius:4px;padding:1rem}.comment-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.comment-author{color:#333;font-size:.875rem;font-weight:600}.comment-date{color:#666;font-size:.7rem}.comment-content{color:#333;white-space:pre-wrap;word-break:break-word;margin:0 0 .5rem;font-size:.875rem;line-height:1.5}.comment-edited{color:#374151;font-size:.7rem;font-style:italic}.comment-actions{border-top:1px solid #f5f5f5;gap:.75rem;margin-top:.75rem;padding-top:.75rem;display:flex}.comment-action-edit,.comment-action-delete{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:.7rem;font-weight:500;transition:all .2s}.comment-action-edit{color:#3b82f6}.comment-action-edit:hover{background-color:#e3f2fd}.comment-action-delete{color:#f44336}.comment-action-delete:hover{background-color:#ffebee}.comment-action-delete:disabled{opacity:.5;cursor:not-allowed}.comment-edit-form textarea{resize:vertical;color:#333;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;width:100%;min-height:80px;margin:0;padding:.75rem;font-family:inherit;font-size:.875rem;transition:border-color .2s}.comment-edit-form textarea:focus{border-color:#3b82f6;outline:none}.comment-edit-actions{align-items:center;gap:.5rem;margin-top:2rem;display:flex}.comment-edit-actions button{cursor:pointer;border:none;border-radius:4px;padding:.5rem .75rem;font-size:.7rem;font-weight:500;transition:background-color .2s}.comment-edit-actions button:first-child{color:#fff;background-color:#3b82f6}.comment-edit-actions button:first-child:hover:not(:disabled){background-color:#2563eb}.comment-edit-actions button:last-child{color:#333;background-color:#f5f5f5}.comment-edit-actions button:last-child:hover:not(:disabled){background-color:#e0e0e0}.comment-edit-actions button:disabled{opacity:.5;cursor:not-allowed}.comment-char-count{color:#374151;margin-left:auto;font-size:.7rem}.comment-like-actions{border-top:1px solid #f5f5f5;align-items:center;gap:.5rem;margin-top:.75rem;padding-top:.75rem;display:flex}@media (prefers-color-scheme:dark){.comment-item{background-color:#333;border-color:#e5e7eb}.comment-author{color:#f3f4f6}.comment-date{color:#d1d5db}.comment-content{color:#f3f4f6}.comment-edited{color:#d1d5db}.comment-actions{border-top-color:#e5e7eb}.comment-action-edit{color:#9dc0fa}.comment-action-edit:hover{background-color:#042761}.comment-action-delete{color:#f99d97}.comment-action-delete:hover{background-color:#590b05}.comment-edit-form textarea{color:#fff;background-color:#333;border-color:#333}.comment-edit-form textarea:focus{border-color:#3b82f6}.comment-edit-actions button:last-child{color:#fff;background-color:#333}.comment-edit-actions button:last-child:hover:not(:disabled){background-color:#4d4d4d}.comment-char-count{color:#999}}.comment-list{flex-direction:column;gap:1rem;display:flex}.comment-list-empty{text-align:center;color:#374151;background-color:#f5f5f5;border-radius:4px;padding:1.5rem;font-size:.875rem}.comment-list-empty p{margin:0}@media (prefers-color-scheme:dark){.comment-list-empty{color:#d1d5db;background-color:#333}}.comment-section{border-top:1px solid #d1d5db;margin-top:2rem;padding:1.5rem 0}.comment-section-title{color:#333;margin:0 0 1rem;font-size:1.25rem;font-weight:600}.comment-error{color:#f44336;background-color:#ffebee;border-radius:4px;margin-bottom:1rem;padding:.75rem;font-size:.875rem}.comment-loading{text-align:center;color:#666;padding:1.5rem;font-size:.875rem}.status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:.25rem .75rem;font-size:.7rem;font-weight:600}.status-badge--active{color:#2e7d32;background:#e8f5e9}.status-badge--completed{color:#1976d2;background:#e3f2fd}.status-badge--cancelled{color:#d32f2f;background:#ffebee}.status-badge--draft{color:#e65100;background:#fff3e0}.goal-progress-bar{align-items:center;gap:.5rem;width:100%;display:flex}.goal-progress-bar__track{background:#f5f7fa;border-radius:9999px;flex:1;height:6px;overflow:hidden}.goal-progress-bar__fill{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:9999px;height:100%;transition:width .3s}.goal-progress-bar__label{color:#667eea;text-align:right;min-width:36px;font-size:.75rem;font-weight:600}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.feed-goal-card{background:#fff;border:1px solid #e1e5e9;border-radius:12px;padding:0;overflow:hidden}.feed-goal-card__actions{border-top:1px solid #e1e5e9;flex-wrap:wrap;align-items:center;gap:.5rem;padding-top:.75rem;display:flex}.feed-goal-card__action-count{color:#999;margin-right:.5rem;font-size:.875rem}.feed-goal-card__comment-btn{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s}.feed-goal-card__comment-btn:disabled{opacity:.5;cursor:not-allowed}.feed-goal-card__comment-btn{color:#666;background:0 0;border:1px solid #e1e5e9;padding:.25rem .75rem;font-size:.875rem;font-weight:400}.feed-goal-card__comment-btn:hover{color:#667eea;background:#f9fafb;border-color:#667eea}.feed-goal-card__comment-btn--active{color:#667eea;background:#e8eaf6;border-color:#667eea}.feed-goal-card__comments{border-top:1px solid #e1e5e9;margin-top:1rem;padding-top:.75rem}.feed-goal-card__cover-link{display:block}.feed-goal-card__cover{aspect-ratio:16/9;background:#f5f7fa;width:100%;position:relative;overflow:hidden}.feed-goal-card__cover-skeleton{background:linear-gradient(90deg,#f5f7fa 25%,#f9fafb 50%,#f5f7fa 75%) 0 0/200% 100%;width:100%;height:100%;animation:1.5s infinite shimmer}.feed-goal-card__cover-img{object-fit:contain;width:100%;height:100%;display:block}.feed-goal-card__body{padding:1rem 1.5rem}.feed-goal-card__meta{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.feed-goal-card__meta-left{align-items:center;gap:.5rem;display:flex}.feed-goal-card__type-label{text-transform:uppercase;letter-spacing:.04em;color:#999;font-size:.7rem;font-weight:600}.feed-goal-card__category{color:#999;text-transform:capitalize;font-size:.75rem}.feed-goal-card__title{margin:0 0 .5rem;font-size:1.1rem;font-weight:600;line-height:1.3}.feed-goal-card__title a{color:#333;text-decoration:none}.feed-goal-card__title a:hover{color:#667eea}.feed-goal-card__owner{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.feed-goal-card__owner-name{color:#666;font-size:.875rem;text-decoration:none}.feed-goal-card__owner-name:hover{color:#667eea}.feed-goal-card__description{color:#666;margin:0 0 .75rem;font-size:.875rem;line-height:1.6}.feed-goal-card__progress{margin-bottom:.75rem}.feed-goal-card__deadline{color:#999;margin-bottom:.75rem;font-size:.7rem}.feed-goal-card__post-count{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s}.feed-goal-card__post-count:disabled{opacity:.5;cursor:not-allowed}.feed-goal-card__post-count{color:#666;background:0 0;border:1px solid #e1e5e9;padding:.25rem .75rem;font-size:.875rem;font-weight:400;text-decoration:none}.feed-goal-card__post-count:hover{color:#667eea;background:#f9fafb;border-color:#667eea}.feed-goal-card__support{margin-left:auto}.feed-goal-card__latest-post{color:#999;margin-top:.5rem;font-size:.7rem}.feed-post-card{background:#fff;border:1px solid #e1e5e9;border-radius:12px;padding:1.5rem}.feed-post-card__actions{border-top:1px solid #e1e5e9;flex-wrap:wrap;align-items:center;gap:.5rem;padding-top:.75rem;display:flex}.feed-post-card__action-count{color:#999;margin-right:.5rem;font-size:.875rem}.feed-post-card__comment-btn{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s}.feed-post-card__comment-btn:disabled{opacity:.5;cursor:not-allowed}.feed-post-card__comment-btn{color:#666;background:0 0;border:1px solid #e1e5e9;padding:.25rem .75rem;font-size:.875rem;font-weight:400}.feed-post-card__comment-btn:hover{color:#667eea;background:#f9fafb;border-color:#667eea}.feed-post-card__comment-btn--active{color:#667eea;background:#e8eaf6;border-color:#667eea}.feed-post-card__comments{border-top:1px solid #e1e5e9;margin-top:1rem;padding-top:.75rem}.feed-post-card__header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.feed-post-card__owner{align-items:flex-start;gap:.5rem;display:flex}.feed-post-card__owner-info{flex-direction:column;gap:2px;display:flex}.feed-post-card__owner-name{color:#333;font-size:.875rem;font-weight:600;text-decoration:none}.feed-post-card__owner-name:hover{color:#667eea}.feed-post-card__goal-context{color:#999;align-items:center;gap:.25rem;font-size:.75rem;display:flex}.feed-post-card__in{color:#999}.feed-post-card__goal-link{color:#667eea;text-decoration:none}.feed-post-card__goal-link:hover{text-decoration:underline}.feed-post-card__time{color:#999;flex-shrink:0;font-size:.7rem}.feed-post-card__contributions{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.feed-post-card__contribution-badge{text-transform:uppercase;letter-spacing:.5px;color:#667eea;background:#e8eaf6;border-radius:12px;padding:.25rem .75rem;font-size:.7rem;font-weight:600}.feed-post-card__content{color:#374151;white-space:pre-wrap;word-break:break-word;margin:0 0 .75rem;font-size:.875rem;line-height:1.6}.feed-post-card__media{border-radius:6px;gap:.5rem;margin-bottom:.75rem;display:grid;overflow:hidden}.feed-post-card__media--1{grid-template-columns:1fr}.feed-post-card__media--2,.feed-post-card__media--3{grid-template-columns:1fr 1fr}.feed-post-card__media--3 .feed-post-card__media-item:first-child{grid-column:1/-1}.feed-post-card__media-item{aspect-ratio:16/9;background:#f5f7fa;border-radius:4px;position:relative;overflow:hidden}.feed-post-card__media-skeleton{background:linear-gradient(90deg,#f5f7fa 25%,#f9fafb 50%,#f5f7fa 75%) 0 0/200% 100%;width:100%;height:100%;animation:1.5s infinite shimmer}.feed-post-card__media-img{object-fit:contain;width:100%;height:100%;display:block}.feed-post-card__view-goal{cursor:pointer;border:none;border-radius:6px;margin-left:auto;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s}.feed-post-card__view-goal:disabled{opacity:.5;cursor:not-allowed}.feed-post-card__view-goal{color:#666;background:0 0;border:1px solid #e1e5e9;padding:.25rem .75rem;font-size:.875rem;font-weight:400;text-decoration:none}.feed-post-card__view-goal:hover{color:#667eea;background:#f9fafb;border-color:#667eea}.feed-goal-event-card{background:#fff;border:1px solid #e1e5e9;border-radius:12px;padding:1.5rem}.feed-goal-event-card__header{align-items:center;gap:.75rem;display:flex}.feed-goal-event-card__info{color:#333;font-size:.875rem;line-height:1.6}.feed-goal-event-card__actor-link{color:#333;font-weight:600;text-decoration:none}.feed-goal-event-card__actor-link:hover{color:#667eea}.feed-goal-event-card__goal-link{color:#667eea;text-decoration:none}.feed-goal-event-card__goal-link:hover{text-decoration:underline}.feed-goal-event-card__owner-link{color:#667eea;vertical-align:middle;align-items:center;gap:.25rem;text-decoration:none;display:inline-flex}.feed-goal-event-card__owner-link:hover{text-decoration:underline}.category-filter{position:relative}.category-filter:before,.category-filter:after{content:"";pointer-events:none;z-index:1;width:3rem;height:100%;position:absolute;top:0}.category-filter:before{background:linear-gradient(270deg,#0000,#f8f9ff);left:0}.category-filter:after{background:linear-gradient(90deg,#0000,#f8f9ff);right:0}.category-filter__inner{scrollbar-width:none;gap:.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.category-filter__inner::-webkit-scrollbar{display:none}.category-filter__chip{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s}.category-filter__chip:disabled{opacity:.5;cursor:not-allowed}.category-filter__chip{color:#666;white-space:nowrap;background:#fff;border:1px solid #e1e5e9;padding:.25rem .75rem;font-size:.75rem;font-weight:400}.category-filter__chip:hover:not(.category-filter__chip--active){color:#667eea;background:#f9fafb;border-color:#667eea}.category-filter__chip--active{color:#667eea;background:#e8eaf6;border-color:#667eea;font-weight:600}.feed-type-filter{gap:.5rem;margin-bottom:.75rem;display:flex}.feed-type-filter__btn{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s}.feed-type-filter__btn:disabled{opacity:.5;cursor:not-allowed}.feed-type-filter__btn{color:#666;background:#fff;border:1px solid #e1e5e9;padding:.5rem 1rem;font-size:.875rem}.feed-type-filter__btn:hover:not(.feed-type-filter__btn--active){background:#f9fafb;border-color:#ddd}.feed-type-filter__btn--active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#0000}.feed-card__see-more{color:#667eea;cursor:pointer;background:0 0;border:none;margin-left:.25rem;padding:0;font-size:.875rem}.feed-card__see-more:hover{text-decoration:underline}.feed-card-skeleton{background:#f5f7fa;border:1px solid #e1e5e9;border-radius:12px;overflow:hidden}.feed-card-skeleton--post{padding:1rem}.feed-card-skeleton__cover{background:linear-gradient(90deg,#f5f7fa 25%,#f9fafb 50%,#f5f7fa 75%) 0 0/200% 100%;width:100%;height:180px;animation:1.5s infinite shimmer}.feed-card-skeleton__body{flex-direction:column;gap:.75rem;padding:1rem;display:flex}.feed-card-skeleton__header{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.feed-card-skeleton__avatar{background:linear-gradient(90deg,#f5f7fa 25%,#f9fafb 50%,#f5f7fa 75%) 0 0/200% 100%;border-radius:50%;flex-shrink:0;width:36px;height:36px;animation:1.5s infinite shimmer}.feed-card-skeleton__owner-info{flex-direction:column;flex:1;gap:.25rem;display:flex}.feed-card-skeleton__name{background:linear-gradient(90deg,#f5f7fa 25%,#f9fafb 50%,#f5f7fa 75%) 0 0/200% 100%;border-radius:4px;width:40%;height:14px;animation:1.5s infinite shimmer}.feed-card-skeleton__context{background:linear-gradient(90deg,#f5f7fa 25%,#f9fafb 50%,#f5f7fa 75%) 0 0/200% 100%;border-radius:4px;width:60%;height:12px;animation:1.5s infinite shimmer}.feed-card-skeleton__title{background:linear-gradient(90deg,#f5f7fa 25%,#f9fafb 50%,#f5f7fa 75%) 0 0/200% 100%;border-radius:4px;width:70%;height:20px;animation:1.5s infinite shimmer}.feed-card-skeleton__meta{background:linear-gradient(90deg,#f5f7fa 25%,#f9fafb 50%,#f5f7fa 75%) 0 0/200% 100%;border-radius:4px;width:40%;height:14px;animation:1.5s infinite shimmer}.feed-card-skeleton__content{background:linear-gradient(90deg,#f5f7fa 25%,#f9fafb 50%,#f5f7fa 75%) 0 0/200% 100%;border-radius:4px;width:100%;height:56px;animation:1.5s infinite shimmer}.feed-card-skeleton__actions{background:linear-gradient(90deg,#f5f7fa 25%,#f9fafb 50%,#f5f7fa 75%) 0 0/200% 100%;border-radius:4px;width:100%;height:32px;margin-top:.25rem;animation:1.5s infinite shimmer}.home-feed{max-width:680px;margin:0 auto;padding:1.5rem 1rem}.home-feed__controls{z-index:5;background:#f8f9ff;margin-bottom:.75rem;padding:.75rem .5rem .5rem;position:sticky;top:0}.home-feed__empty-action{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s}.home-feed__empty-action:disabled{opacity:.5;cursor:not-allowed}.home-feed__empty-action{color:#fff;background:#667eea;border:none;border-radius:6px;margin-top:.75rem;padding:.5rem 1rem;font-size:.75rem}.home-feed__empty-action:hover{background:#5568d3}.home-feed__discover-heading{color:#333;margin:0 0 .75rem;font-size:1.1rem;font-weight:600}.home-feed__items,.home-feed__loading{flex-direction:column;gap:1rem;display:flex}.home-feed__skeleton-card{background:linear-gradient(90deg,#f5f7fa 25%,#f9fafb 50%,#f5f7fa 75%) 0 0/200% 100%;border-radius:12px;height:280px;animation:1.5s infinite shimmer}.home-feed__error,.home-feed__empty{text-align:center;color:#999;padding:4rem;font-size:.9rem}.home-feed__error{color:#f44336}.home-feed__loading-more{text-align:center;color:#999;padding:1rem;font-size:.875rem}.home-feed__end{text-align:center;color:#999;padding:1rem;font-size:.75rem;font-style:italic}.home-feed__sentinel{height:1px}@media (width<=768px){.home-feed{padding:1rem .75rem}}.auth-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.auth-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border-radius:16px;width:100%;max-width:450px;padding:2.5rem;box-shadow:0 20px 40px #0000001a}.auth-card h2{text-align:center;color:#333;margin-bottom:.5rem;font-size:2rem;font-weight:700}.auth-subtitle{text-align:center;color:#666;margin-bottom:2rem;font-size:1rem}.auth-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;display:flex}.form-group label{color:#333;margin-bottom:.5rem;font-size:.9rem;font-weight:600}.form-group input{background:#fff;border:2px solid #e1e5e9;border-radius:8px;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.form-group input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{opacity:.6;cursor:not-allowed}.form-group input::placeholder{color:#aaa}.auth-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;margin-top:1rem;padding:1rem;font-size:1.1rem;font-weight:600;transition:transform .2s}.auth-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea4d}.auth-links{text-align:center;margin-top:2rem}.auth-links p{color:#666;margin-bottom:1rem}.auth-link{color:#667eea;font-weight:600;text-decoration:none;transition:color .3s}.auth-link:hover{color:#764ba2;text-decoration:underline}.forgot-link{font-size:.9rem}@media (width<=768px){.auth-container{padding:1rem}.auth-card{padding:2rem}.auth-card h2{font-size:1.2rem}.form-row{grid-template-columns:1fr}}.auto-followers-list{border:1px solid #e5e7eb;border-radius:8px;margin-top:2rem;overflow:hidden}.auto-followers-list__toggle{cursor:pointer;background-color:#f9fafb;border:none;justify-content:space-between;align-items:center;width:100%;padding:1rem 1.5rem;transition:background-color .2s;display:flex}.auto-followers-list__toggle:hover{background-color:#f3f4f6}.auto-followers-list__toggle:focus{outline-offset:-2px;outline:2px solid #3b82f6}.auto-followers-list__title{color:#111827;text-align:left;margin:0;font-size:1.125rem;font-weight:600}.auto-followers-list__icon{color:#6b7280;font-size:.875rem}.auto-followers-list__content{background-color:#fff;padding:1.5rem}.auto-followers-list__error{color:#dc2626;background-color:#fef2f2;border-radius:4px;margin-bottom:1rem;padding:1rem}.auto-followers-list__loading,.auto-followers-list__empty{text-align:center;color:#6b7280;padding:2rem}.auto-followers-list__items{margin:0;padding:0;list-style:none}.auto-followers-list__item{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.auto-followers-list__item:last-child{border-bottom:none}.auto-followers-list__date{color:#6b7280;font-size:.875rem}.auto-followers-list__load-more{cursor:pointer;color:#374151;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;width:100%;margin-top:1rem;padding:.75rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.auto-followers-list__load-more:hover:not(:disabled){background-color:#e5e7eb}.auto-followers-list__load-more:disabled{opacity:.5;cursor:not-allowed}.profile-supporting-link{background:#fff;border:1px solid #e1e5e9;border-radius:12px;align-items:stretch;margin-top:2rem;display:flex;overflow:hidden}.profile-supporting-link .supporting-goals-btn{cursor:pointer;text-align:left;background:0 0;border:none;flex:1;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1.5rem;transition:background-color .2s;display:flex}.profile-supporting-link .supporting-goals-btn:hover{background-color:#f8f9ff}.profile-supporting-link .supporting-goals-btn:focus{outline-offset:-2px;outline:2px solid #667eea}.profile-supporting-link .supporting-goals-btn .supporting-goals-label{color:#333;font-size:.95rem;font-weight:500}.profile-supporting-link .supporting-goals-btn .supporting-goals-chevron{color:#999;font-size:1.5rem;font-weight:400;line-height:1}.profile-container{background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);min-height:100vh;padding:2rem}.profile-card{background:#fff;border-radius:16px;max-width:1000px;margin:0 auto;overflow:hidden;box-shadow:0 20px 40px #0000001a}.profile-header{background:linear-gradient(135deg,#667eea1a 0%,#764ba21a 100%);border-bottom:1px solid #e1e5e9;align-items:flex-start;gap:2rem;padding:2.5rem;display:flex;position:relative}.avatar-section{flex-direction:column;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.avatar-upload{flex-direction:column;align-items:center;gap:.5rem;width:100%;display:flex}.avatar-upload-preview{justify-content:center;display:flex}.avatar-upload-dropzone{text-align:center;max-width:200px;padding:.5rem;font-size:.75rem}.avatar-upload-dropzone p{margin:.25rem 0;line-height:1.2rem}.avatar-upload-dropzone .btn-secondary{margin:.25rem 0;padding:.25rem .75rem;font-size:.75rem}.avatar-upload-hint{color:#999;font-size:.7rem}.avatar-upload-delete{margin-top:.25rem;padding:.25rem .75rem;font-size:.75rem}.avatar-upload-progress{padding:.5rem}.avatar-upload-progress p{margin:.25rem 0;font-size:.75rem}.progress-bar{background:#e1e5e9;border-radius:4px;width:100%;height:.5rem;margin:.25rem 0;overflow:hidden}.progress-bar-fill{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);height:100%;transition:width .3s}.avatar-upload-error{background:#ffebee;border:1px solid #fcc;border-radius:4px;padding:.5rem;font-size:.75rem}.profile-header-info{flex:1}.profile-header-info h1{color:#333;margin-bottom:.5rem;font-size:2.2rem;font-weight:700}.profile-header-info .inline-edit-field{margin-bottom:.5rem}.profile-header-info .inline-edit-field h1{margin:0;padding-right:200px}.profile-header-info .inline-edit-trigger{top:.25rem;bottom:auto;right:.25rem}.profile-header-info .inline-edit-field:not(:has(.privacy-badge)) .inline-edit-trigger{right:.25rem}.profile-header-info .inline-edit-field .privacy-badge{top:.25rem;bottom:auto;right:35px}.profile-header-info .inline-edit-input{padding:.5rem;font-size:2.2rem;font-weight:700}.profile-header-info .location{color:#666;margin-bottom:.5rem;font-size:1.1rem}.profile-header-info .location-not-set{color:#999;font-size:.95rem;font-style:italic}.profile-header-info .age{color:#764ba2;margin-bottom:.5rem;font-size:1rem;font-weight:600}.profile-header-info .join-date{color:#999;margin-bottom:0;font-size:.9rem}.profile-stats{background:#f9fafb;border-bottom:1px solid #e1e5e9;justify-content:space-around;padding:2rem;display:flex}.stat-item{text-align:center}.stat-item h3{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:2.5rem;font-weight:800}.stat-item p{color:#666;font-size:.95rem;font-weight:600}.profile-content{padding:2.5rem}.profile-display{flex-direction:column;gap:2rem;display:flex}.profile-section{background:#f9fafb;border:1px solid #e1e5e9;border-radius:12px;padding:1.5rem}.profile-section h3{color:#333;border-bottom:2px solid #667eea;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.25rem;font-weight:700}.profile-section>.inline-edit-field .inline-edit-trigger{top:.5rem;bottom:auto;right:.5rem}.profile-section>.inline-edit-field:not(:has(.privacy-badge)) .inline-edit-trigger{right:.5rem}.profile-section>.inline-edit-field .privacy-badge{position:absolute;top:.5rem;bottom:auto;right:60px}.bio{color:#666;font-size:1.05rem;line-height:2rem}.info-item{flex-direction:column;gap:.5rem;display:flex}.info-item .inline-edit-field{width:100%}.info-item .inline-edit-field .inline-edit-trigger{top:auto;bottom:.5rem;right:.5rem}.info-item .inline-edit-field:not(:has(.privacy-badge)) .inline-edit-trigger{right:.5rem}.info-item .inline-edit-field .privacy-badge{position:absolute;top:auto;bottom:.5rem;right:60px}.info-item .inline-edit-value{padding-right:160px}.info-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.info-label{color:#999;text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.info-value{color:#333;font-size:1.05rem;font-weight:500}.interests-list{flex-wrap:wrap;gap:.75rem;display:flex}.interest-tag{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:9999px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:transform .2s;display:inline-flex}.interest-tag:hover{transform:translateY(-2px)}.remove-interest{color:#fff;cursor:pointer;background:#ffffff4d;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:1.2rem;line-height:1;transition:background .2s;display:flex}.remove-interest:hover{background:#ffffff80}.media-collections{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;display:grid}.collection-card{background:#fff;border:2px solid #e1e5e9;border-radius:8px;padding:1.5rem;transition:all .3s}.collection-card:hover{border-color:#667eea;transform:translateY(-4px);box-shadow:0 8px 16px #667eea33}.collection-card h4{color:#333;margin-bottom:.5rem;font-size:1.1rem}.collection-card p{color:#666;margin-bottom:1rem;font-size:.9rem;line-height:1.5}.collection-type,.collection-count{color:#fff;background:#667eea;border-radius:12px;margin-right:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.collection-count{background:#764ba2}.no-items{color:#999;text-align:center;padding:2rem;font-style:italic}.edit-form{flex-direction:column;gap:2rem;display:flex}.form-section{background:#f9fafb;border:1px solid #e1e5e9;border-radius:12px;padding:1.5rem}.form-section h3{color:#333;border-bottom:2px solid #667eea;margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.2rem;font-weight:700}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:#333;font-size:.95rem;font-weight:600}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.edit-form input,.edit-form textarea,.edit-form select{background:#fff;border:2px solid #e1e5e9;border-radius:8px;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.edit-form input:focus,.edit-form textarea:focus,.edit-form select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.edit-form input:disabled,.edit-form textarea:disabled,.edit-form select:disabled{opacity:.6;cursor:not-allowed}.edit-form input,.edit-form textarea,.edit-form select{padding:.875rem}.interests-input{gap:.75rem;margin-bottom:1rem;display:flex}.interests-input input{flex:1}.add-interest-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#667eea;border:none;border-radius:8px;padding:.75rem 1.5rem;font-weight:600;transition:all .2s}.add-interest-btn:hover{background:#5568d3;transform:translateY(-2px)}.form-actions{border-top:2px solid #e1e5e9;gap:1rem;margin-top:1rem;padding-top:1rem;display:flex}.save-btn{color:#fff;cursor:pointer;background:#28a745;border:none;border-radius:8px;padding:.875rem 2rem;font-size:1rem;font-weight:600;transition:all .2s}.save-btn:hover{background:#218838;transform:translateY(-2px);box-shadow:0 4px 8px #28a7454d}.cancel-btn{color:#fff;cursor:pointer;background:#6c757d;border:none;border-radius:8px;padding:.875rem 2rem;font-size:1rem;font-weight:600;transition:all .2s}.cancel-btn:hover{background:#5a6268;transform:translateY(-2px);box-shadow:0 4px 8px #6c757d4d}@media (width<=768px){.profile-container{padding:1rem}.profile-header{text-align:center;flex-direction:column;align-items:center;padding:2rem 1.5rem}.profile-header-info h1{font-size:2rem}.profile-stats{flex-wrap:wrap;gap:1.5rem}.stat-item{flex:45%;min-width:120px}.profile-content{padding:1.5rem}.form-row,.info-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.media-collections{grid-template-columns:1fr}.interests-input{flex-direction:column}.add-interest-btn{width:100%}}@media (width<=480px){.profile-header-info h1{font-size:1.5rem}.avatar-large{width:100px;height:100px;font-size:1.5rem}.stat-item h3{font-size:2rem}.profile-stats{padding:1.5rem 1rem}}.profile-supporting-link .supporting-privacy-control{border-left:1px solid #e1e5e9;align-items:center;padding:0 1rem;transition:background-color .2s;display:flex;position:relative}.profile-supporting-link .supporting-privacy-control:hover{background-color:#f8f9ff}.profile-supporting-link .supporting-privacy-control:hover .supporting-privacy-badge{background:#e1e5e9}.profile-supporting-link .supporting-privacy-control .supporting-privacy-badge{color:#666;white-space:nowrap;pointer-events:none;background:#f0f0f0;border-radius:12px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.75rem;display:inline-flex}.profile-supporting-link .supporting-privacy-control .supporting-privacy-select{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.section-description{color:#666;margin-bottom:1rem;font-size:.95rem;font-style:italic}.contact-methods-list{flex-direction:column;gap:.75rem;display:flex}.contact-methods-loading{text-align:center;color:#999;padding:2rem}.error-message{z-index:1000;color:#c33;background:#ffebee;border-left:4px solid #fcc;border-radius:8px;max-width:90%;padding:.75rem 1.5rem;font-size:.9rem;animation:.3s slideDown;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.success-message{z-index:1000;color:#2e7d32;background:#e8f5e9;border-left:4px solid #28a745;border-radius:8px;max-width:90%;padding:.75rem 1.5rem;font-size:.9rem;animation:.3s slideDown;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.contact-method-item{background:#fff;border:2px solid #e1e5e9;border-radius:8px;align-items:center;gap:1rem;padding:1rem;transition:all .2s;display:flex}.contact-method-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a}.contact-method-item.editing,.contact-method-item.deleting{background:#f8f9ff;border-color:#667eea}.contact-method-icon{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:.85rem;font-weight:600;display:flex}.contact-method-content{flex:1;min-width:0}.contact-method-value{color:#333;word-break:break-word;margin-bottom:.5rem;font-size:1rem;font-weight:500}.contact-method-badges{flex-wrap:wrap;gap:.5rem;display:flex}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.badge-primary{color:#fff;background:#667eea}.badge-public{color:#fff;background:#28a745}.badge-private{color:#fff;background:#6c757d}.badge-verified{color:#fff;background:#17a2b8}.contact-method-actions{align-items:center;gap:.5rem;display:flex}.btn{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background:#667eea}.btn-primary:hover:not(:disabled){background:#5568d3;transform:translateY(-1px)}.btn-secondary{color:#fff;background:#6c757d}.btn-secondary:hover:not(:disabled){background:#5a6268}.btn-danger{color:#fff;background:#dc3545}.btn-danger:hover:not(:disabled){background:#d32f2f}.btn-link{color:#667eea;background:0 0;padding:.25rem .5rem;text-decoration:underline}.btn-link:hover:not(:disabled){color:#5568d3}.btn-icon{cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.2rem;transition:transform .2s}.btn-icon:hover{transform:scale(1.2)}.contact-method-form{background:#f8f9ff;border-radius:8px;flex-direction:column;gap:1rem;padding:1rem;display:flex}.contact-method-form .form-group{flex-direction:column;gap:.5rem;display:flex}.contact-method-form .form-group.checkbox{flex-direction:row;align-items:center}.contact-method-form .form-group.checkbox label{cursor:pointer;align-items:center;gap:.5rem;font-weight:500;display:flex}.contact-method-form .form-group.checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px}.contact-method-form label{color:#333;font-size:.9rem;font-weight:600}.contact-method-form input,.contact-method-form select{border:2px solid #e1e5e9;border-radius:6px;padding:.75rem;font-size:.95rem;transition:border-color .2s}.contact-method-form input:focus,.contact-method-form select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.contact-method-form .form-actions{border-top:none;gap:.75rem;margin-top:.5rem;padding-top:0;display:flex}.delete-confirm{flex-direction:column;gap:1rem;display:flex}.delete-confirm p{color:#c33;margin:0;font-weight:600}.add-contact-section{border-top:2px solid #e1e5e9;margin-top:1rem;padding-top:1rem}@media (width<=768px){.contact-method-item{flex-direction:column;align-items:flex-start}.contact-method-actions{justify-content:flex-end;width:100%}.contact-method-form .form-actions{flex-direction:column}.contact-method-form .btn{width:100%}}.inline-edit-field{border-radius:6px;min-height:2rem;padding:.5rem;transition:background-color .2s;position:relative}.inline-edit-field.editable{cursor:pointer}.inline-edit-field.editable:hover{cursor:pointer;background-color:#f8f9ff}.inline-edit-field.editing{cursor:default;background-color:#f8f9ff;border:2px solid #667eea;padding:1rem}.inline-edit-value{width:100%;padding-right:80px}.inline-edit-trigger{cursor:pointer;opacity:0;z-index:5;background:0 0;border:none;padding:.25rem;font-size:1rem;transition:opacity .2s;position:absolute;bottom:.5rem;right:100px}.inline-edit-field.editable:hover .inline-edit-trigger{opacity:1}.inline-edit-field:not(:has(.privacy-badge)) .inline-edit-trigger{right:.5rem}.inline-edit-input{background:#fff;border:2px solid #e1e5e9;border-radius:8px;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.inline-edit-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.inline-edit-input{width:100%}.inline-edit-input:disabled{opacity:.6;cursor:not-allowed}textarea.inline-edit-input{resize:vertical;min-height:100px}.inline-edit-footer{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.inline-edit-privacy{flex:1;align-items:center;gap:.5rem;display:flex}.privacy-label{color:#666;white-space:nowrap;font-size:.875rem}.privacy-select-edit{cursor:pointer;background:#fff;border:1px solid #e1e5e9;border-radius:6px;flex:1;max-width:200px;padding:.5rem;font-size:.875rem}.privacy-select-edit:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.privacy-select-edit:disabled{opacity:.6;cursor:not-allowed}.inline-edit-field .privacy-badge{color:#666;z-index:5;background:#f0f0f0;border-radius:12px;justify-content:center;align-items:center;gap:.25rem;min-width:120px;padding:.25rem .5rem;font-size:.75rem;display:inline-flex;position:absolute;bottom:.5rem;right:.5rem}.btn-sm{padding:.25rem .75rem;font-size:.9rem}.inline-edit-error{color:#c33;margin-top:.5rem;font-size:.9rem}.empty-value{color:#999;font-style:italic}.inline-edit-interests{position:relative}.inline-edit-interests.editable{border-radius:6px;padding:.5rem;transition:background-color .2s}.inline-edit-interests.editable:hover{background-color:#f8f9ff}.inline-edit-interests.editing{background-color:#f8f9ff;border:2px solid #667eea;border-radius:6px;padding:1rem}.inline-edit-trigger-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:6px;margin-top:1rem;padding:.5rem 1rem;font-weight:600;transition:all .2s}.inline-edit-trigger-btn:hover{transform:translateY(-1px);box-shadow:0 8px 16px #667eea4d}@media (width<=768px){.inline-edit-field.editing{padding:.75rem}.inline-edit-footer,.inline-edit-privacy{flex-direction:column;align-items:stretch}.privacy-select-edit{max-width:none}.inline-edit-actions{flex-direction:column}.inline-edit-actions .btn{width:100%}}.currency-selector{align-items:center;gap:.75rem;display:flex}.currency-selector label{color:#333;white-space:nowrap;font-size:.9rem;font-weight:500}.currency-selector select{cursor:pointer;background-color:#fff;border:1px solid #ddd;border-radius:4px;padding:.5rem .75rem;font-family:inherit;font-size:.9rem;transition:border-color .2s}.currency-selector select:focus{border-color:#1976d2;outline:none}.goal-form{background-color:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 8px #0000001a}.goal-form .form-group{margin-bottom:1.5rem}.goal-form .form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.goal-form label{color:#333;margin-bottom:.5rem;font-weight:600;display:block}.goal-form input,.goal-form textarea,.goal-form select{border:1px solid #ddd;border-radius:4px;width:100%;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .3s}.goal-form input:focus,.goal-form textarea:focus,.goal-form select:focus{border-color:#2196f3;outline:none}.goal-form input:disabled,.goal-form textarea:disabled,.goal-form select:disabled{cursor:not-allowed;background-color:#f5f5f5}.goal-form textarea{resize:vertical;min-height:100px}.goal-form .form-actions{justify-content:flex-end;margin-top:2rem;display:flex}.goal-form .submit-btn{color:#fff;cursor:pointer;background-color:#2196f3;border:none;border-radius:4px;padding:.75rem 2rem;font-size:1rem;font-weight:600;transition:background-color .3s}.goal-form .submit-btn:hover:not(:disabled){background-color:#1976d2}.goal-form .submit-btn:disabled{cursor:not-allowed;background-color:#ccc}@media (width<=768px){.goal-form{padding:1.5rem}.goal-form .form-row{grid-template-columns:1fr}}.goal-list{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:2rem;display:grid}.goal-list__empty{text-align:center;background-color:#fff;border-radius:8px;margin-top:2rem;padding:4rem;box-shadow:0 2px 8px #0000001a}.goal-list__empty p{color:#666;font-size:1.1rem}.goal-card{background-color:#fff;border-radius:8px;padding:1.5rem;transition:transform .3s,box-shadow .3s;box-shadow:0 2px 8px #0000001a}.goal-card:hover{transform:translateY(-4px);box-shadow:0 4px 8px #00000026}.goal-card__header{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1rem;display:flex}.goal-card__title{color:#333;flex:1;margin:0;font-size:1.25rem}.goal-card__title--clickable{cursor:pointer;transition:color .2s}.goal-card__title--clickable:hover{color:#2196f3}.goal-card__status{white-space:nowrap;border-radius:9999px;padding:.25rem .75rem;font-size:.85rem;font-weight:600}.goal-card__status--active{color:#1976d2;background-color:#e3f2fd}.goal-card__status--completed{color:#388e3c;background-color:#e8f5e9}.goal-card__status--cancelled{color:#d32f2f;background-color:#ffebee}.goal-card__status--draft{color:#757575;background-color:#f5f5f5}.goal-card__description{color:#666;margin-bottom:1.5rem;line-height:1.5}.goal-card__progress{justify-content:center;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.goal-card__progress-bar{background-color:#e0e0e0;border-radius:4px;flex:1;height:8px;overflow:hidden}.goal-card__progress-fill{background:linear-gradient(90deg,#2196f3,#1976d2);border-radius:4px;height:100%;transition:width .3s}.goal-card__progress-text{color:#333;text-align:right;min-width:45px;font-weight:600}.goal-card__amounts{background-color:#f9fafb;border-radius:4px;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;padding:1rem;display:flex}.goal-card__amount-item{justify-content:space-between;align-items:center;display:flex}.goal-card__amount-label{color:#666;font-size:.9rem}.goal-card__amount-value{color:#333;font-weight:600}.goal-card__footer{border-top:1px solid #e0e0e0;flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;padding-top:1rem;padding-bottom:1rem;display:flex}.goal-card__deadline{flex-direction:column;gap:.25rem;min-height:70px;display:flex}.goal-card__deadline-label{color:#666;font-size:.85rem}.goal-card__deadline-value{color:#333;font-weight:600}.goal-card__days-remaining{color:#2196f3;font-size:.85rem}.goal-card__privacy-badge{white-space:nowrap;border-radius:9999px;padding:.25rem .75rem;font-size:.85rem;font-weight:600}.goal-card__privacy-badge--private{color:#e65100;background-color:#fff3e0}.goal-card__privacy-badge--public{color:#2e7d32;background-color:#e8f5e9}.goal-card__actions{clear:both;border-top:1px solid #e0e0e0;margin-top:2rem;padding-top:1rem}.goal-card__delete-btn{color:#fff;cursor:pointer;background-color:#d32f2f;border:none;border-radius:4px;width:100%;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:background-color .3s,opacity .3s}.goal-card__delete-btn:hover:not(:disabled){background-color:#c62828}.goal-card__delete-btn:disabled{opacity:.5;cursor:not-allowed}.goal-card__delete-confirmation{background-color:#fff3e0;border:1px solid #ffb74d;border-radius:4px;padding:1rem}.goal-card__confirmation-message{color:#e65100;margin:0 0 1rem;font-size:.95rem;line-height:1.5}.goal-card__confirmation-buttons{gap:.5rem;display:flex}.goal-card__confirm-delete-btn,.goal-card__cancel-delete-btn{cursor:pointer;border:none;border-radius:4px;flex:1;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:background-color .3s,opacity .3s}.goal-card__confirm-delete-btn{color:#fff;background-color:#d32f2f}.goal-card__confirm-delete-btn:hover:not(:disabled){background-color:#c62828}.goal-card__confirm-delete-btn:disabled{opacity:.5;cursor:not-allowed}.goal-card__cancel-delete-btn{color:#fff;background-color:#757575}.goal-card__cancel-delete-btn:hover:not(:disabled){background-color:#616161}.goal-card__cancel-delete-btn:disabled{opacity:.5;cursor:not-allowed}@media (width<=768px){.goal-list{grid-template-columns:1fr}.goal-card{padding:1rem}.goal-card__header{flex-direction:column;align-items:start}.goal-card__footer{flex-direction:column;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}}.goals-container{max-width:1200px;margin:0 auto;padding:2rem}.goals-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.goals-header h1{color:#333;margin:0;font-size:2rem}.toggle-form-btn{color:#fff;cursor:pointer;background-color:#2196f3;border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:background-color .3s}.toggle-form-btn:hover{background-color:#1976d2}.error-message{background-color:#ffebee;border-left:4px solid #d32f2f;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1rem 1.5rem;display:flex}.error-message p{color:#c62828;margin:0;font-weight:500}.dismiss-error{color:#c62828;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:2rem;transition:background-color .3s;display:flex}.dismiss-error:hover{background-color:#d32f2f1a}.form-section{margin-bottom:4rem}.form-section h2{color:#333;margin-bottom:1rem}.goals-section{margin-top:4rem}.goals-section h2{color:#333;margin-bottom:1rem}.loading{text-align:center;color:#666;padding:4rem;font-size:1.2rem}@media (width<=768px){.goals-container{padding:1rem}.goals-header{flex-direction:column;align-items:stretch;gap:1rem}.goals-header h1{font-size:2rem}.toggle-form-btn{width:100%}}.privacy-modal__error{color:#c33;background-color:#ffebee;border:1px solid #fcc;border-radius:4px;margin-bottom:1rem;padding:.75rem}.privacy-modal__cancel-btn{color:#333;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.privacy-modal__cancel-btn:hover:not(:disabled){background-color:#f9fafb}.privacy-modal__cancel-btn:disabled{opacity:.5;cursor:not-allowed}.privacy-modal__save-btn{color:#fff;cursor:pointer;background-color:#3b82f6;border:1px solid #3b82f6;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.privacy-modal__save-btn:hover:not(:disabled){background-color:#2563eb;border-color:#2563eb}.privacy-modal__save-btn:disabled{opacity:.5;cursor:not-allowed}.privacy-section{margin-bottom:2rem}.privacy-section:last-child{margin-bottom:0}.privacy-section h3{margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.privacy-section .section-description{color:#6b7280;margin:0 0 1rem;font-size:.875rem}.privacy-section .field-privacy-control{border:1px solid #e5e7eb;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:1rem;display:flex}.privacy-section .field-privacy-control:last-child{margin-bottom:0}.privacy-section .field-privacy-control .field-info{flex:1}.privacy-section .field-privacy-control .field-info strong{margin-bottom:.25rem;display:block}.privacy-section .field-privacy-control .field-info .field-description{color:#6b7280;margin:0;font-size:.875rem}.privacy-section .field-privacy-control .privacy-toggle{gap:1rem;margin-left:1rem;display:flex}.privacy-section .privacy-toggle{gap:1rem;display:flex}.privacy-section .privacy-toggle label{cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem 1rem;transition:all .2s;display:flex}.privacy-section .privacy-toggle label:hover{background-color:#f9fafb}.privacy-section .privacy-toggle label input[type=radio]{cursor:pointer;margin:0}.privacy-section .privacy-toggle label input[type=radio]:checked+span{font-weight:600}.privacy-section .privacy-toggle label input[type=radio]:disabled{cursor:not-allowed}.privacy-section .privacy-toggle label span{font-size:.875rem}.privacy-section .privacy-toggle label:has(input:checked){background-color:#eff6ff;border-color:#3b82f6}.privacy-section .privacy-toggle label:has(input:disabled){opacity:.5;cursor:not-allowed}@media (width<=640px){.field-privacy-control{flex-direction:column;align-items:flex-start}.field-privacy-control .privacy-toggle{width:100%;margin-top:.75rem;margin-left:0}.field-privacy-control .privacy-toggle label{flex:1;justify-content:center}}.cover-manager{background:#f9fafb;border-radius:8px;margin:2rem 0;padding:1.5rem}.cover-manager .cover-manager-title{color:#333;margin:0 0 1.5rem;font-size:1.25rem}.cover-manager .cover-upload-dropzone{text-align:center;background:#fff;border:2px dashed #ccc;border-radius:8px;padding:2rem;transition:all .3s}.cover-manager .cover-upload-dropzone.active{background:#e3f2fd;border-color:#2196f3}.cover-manager .cover-upload-dropzone.uploading{background:#e8f5e9;border-color:#28a745}.cover-manager .cover-upload-dropzone p{color:#666;margin:0 0 1rem}.cover-manager .cover-upload-dropzone .cover-upload-progress .progress-bar{background:#e9ecef;border-radius:4px;width:100%;height:.5rem;margin:1rem 0;overflow:hidden}.cover-manager .cover-upload-dropzone .cover-upload-progress .progress-bar .progress-bar-fill{background:#28a745;height:100%;transition:width .3s}.cover-manager .cover-upload-dropzone button{margin-top:.5rem}.cover-manager .cover-manager-error{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;justify-content:space-between;align-items:center;margin:1rem 0;padding:1rem;display:flex}.cover-manager .cover-manager-error p{margin:0}.cover-manager .cover-manager-error .btn-link{color:#721c24;cursor:pointer;text-decoration:underline}.cover-manager .cover-manager-error .btn-link:hover{color:#491217}.cover-manager .cover-gallery{grid-template-columns:repeat(auto-fill,minmax(18.75rem,1fr));gap:1.5rem;margin-top:2rem;display:grid}.cover-manager .cover-gallery .cover-item{background:#fff;border-radius:8px;transition:box-shadow .3s;overflow:hidden;box-shadow:0 2px 4px #0000001a}.cover-manager .cover-gallery .cover-item:hover{box-shadow:0 4px 8px #00000026}.cover-manager .cover-gallery .cover-item.primary{border:2px solid #2196f3}.cover-manager .cover-gallery .cover-item .cover-image-container{background:#f0f0f0;width:100%;height:12.5rem;position:relative}.cover-manager .cover-gallery .cover-item .cover-image-container .cover-image{object-fit:contain;width:100%;height:100%}.cover-manager .cover-gallery .cover-item .cover-image-container .cover-image-loading{color:#999;justify-content:center;align-items:center;height:100%;display:flex}.cover-manager .cover-gallery .cover-item .cover-image-container .primary-badge{color:#fff;background:#2196f3;border-radius:4px;padding:.25rem .75rem;font-size:.875rem;font-weight:600;position:absolute;top:.5rem;right:.5rem}.cover-manager .cover-gallery .cover-item .cover-metadata-view{padding:1rem}.cover-manager .cover-gallery .cover-item .cover-metadata-view .cover-caption{color:#333;margin:0 0 .5rem;font-weight:500}.cover-manager .cover-gallery .cover-item .cover-metadata-view .cover-alt-text{color:#666;margin:0;font-size:.875rem;font-style:italic}.cover-manager .cover-gallery .cover-item .cover-metadata-edit{padding:1rem}.cover-manager .cover-gallery .cover-item .cover-metadata-edit .form-group{margin-bottom:1rem}.cover-manager .cover-gallery .cover-item .cover-metadata-edit .form-group:last-of-type{margin-bottom:1.5rem}.cover-manager .cover-gallery .cover-item .cover-metadata-edit .form-group label{color:#333;margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.cover-manager .cover-gallery .cover-item .cover-metadata-edit .form-group input{border:1px solid #ccc;border-radius:4px;width:100%;padding:.5rem;font-size:.875rem}.cover-manager .cover-gallery .cover-item .cover-metadata-edit .form-group input:focus{border-color:#2196f3;outline:none}.cover-manager .cover-gallery .cover-item .cover-metadata-edit .form-group input:disabled{cursor:not-allowed;background:#f5f5f5}.cover-manager .cover-gallery .cover-item .cover-metadata-edit .cover-metadata-actions{gap:.5rem;display:flex}.cover-manager .cover-gallery .cover-item .cover-metadata-edit .cover-metadata-actions button{flex:1;padding:.5rem 1rem;font-size:.875rem}.cover-manager .cover-gallery .cover-item .cover-actions{border-top:1px solid #e9ecef;justify-content:space-between;gap:1rem;padding:.75rem 1rem;display:flex}.cover-manager .cover-gallery .cover-item .cover-actions button{color:#2196f3;cursor:pointer;background:0 0;border:none;padding:.25rem .5rem;font-size:.875rem;transition:color .2s}.cover-manager .cover-gallery .cover-item .cover-actions button:hover{color:#1976d2;text-decoration:underline}.cover-manager .cover-gallery .cover-item .cover-actions button:disabled{color:#999;cursor:not-allowed;text-decoration:none}.cover-manager .cover-gallery .cover-item .cover-actions button.btn-danger{color:#dc3545}.cover-manager .cover-gallery .cover-item .cover-actions button.btn-danger:hover{color:#d32f2f}.post-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.post-header__meta{color:#666;align-items:center;gap:.75rem;font-size:.875rem;display:flex}.post-header__date{font-weight:500}.post-header__edited{opacity:.7;font-style:italic}.post-header__actions{gap:.5rem;display:flex}.post-header__edit-btn,.post-header__delete-btn{cursor:pointer;color:#666;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:1.25rem;transition:all .2s}.post-header__edit-btn:hover,.post-header__delete-btn:hover{color:#333;background-color:#f5f5f5}.post-header__delete-btn{font-size:1.5rem}.post-header__delete-btn:hover{color:#dc3545}.post-objective-badges{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.objective-badge{background-color:#e3f2fd;border-radius:16px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.875rem;display:inline-flex}.badge-name{color:#1976d2;font-weight:500}.badge-value{color:#0d47a1;font-weight:600}.post-content{white-space:pre-wrap;word-wrap:break-word;margin-bottom:1rem;line-height:1.5}.post-content__editor{width:100%;min-height:100px;font-family:inherit;font-size:inherit;resize:vertical;border:1px solid #ddd;border-radius:8px;padding:.75rem}.post-content__editor:focus{border-color:#1976d2;outline:none;box-shadow:0 0 0 3px #1976d21a}.video-player-container{aspect-ratio:16/9;border-radius:8px;width:100%;position:relative;overflow:hidden}.video-player-container video{object-fit:contain;width:100%;height:100%;position:absolute;top:0;left:0}.video-player-container .video-loading,.video-player-container .video-error{color:#666;background-color:#f5f5f5;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;font-size:.875rem;display:flex;position:absolute;top:0;left:0}@media (prefers-color-scheme:dark){.video-player-container .video-loading,.video-player-container .video-error{background-color:#333}}.video-player-container .video-error{color:#f44336}.video-player-container .video-error button{color:#667eea;cursor:pointer;background:0 0;border:none;margin-top:.5rem;padding:.5rem 1rem;font-size:.875rem;text-decoration:underline}.video-player-container .video-error button:hover{color:#3958e4}.post-media{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.75rem;margin-bottom:1rem;display:grid}@media (width<=640px){.post-media{grid-template-columns:1fr}}.post-media__item{background-color:#f5f5f5;border-radius:8px;position:relative;overflow:hidden}.post-media__item img{width:100%;height:auto;display:block}@media (width>=768px){.post-media__item:has(video){grid-column:span 2}}.post-media__remove-btn{color:#fff;cursor:pointer;z-index:10;background-color:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.5rem;transition:all .2s;display:flex;position:absolute;top:.5rem;right:.5rem}.post-media__remove-btn:hover{background-color:#dc3545;transform:scale(1.1)}.post-media__loading,.post-media__error{text-align:center;color:#666;padding:2rem}.post-media__error{color:#dc3545}.post-media__caption{color:#666;background-color:#0000000d;padding:.5rem;font-size:.875rem}.post-media-upload{margin-bottom:1rem}.post-media-upload__btn{color:#666;cursor:pointer;background-color:#f5f5f5;border:1px dashed #ddd;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.post-media-upload__btn:hover{color:#1976d2;background-color:#e3f2fd;border-color:#1976d2}.post-media-upload__btn:disabled{opacity:.6;cursor:not-allowed}.post-media-upload__progress{text-align:center;background-color:#f5f5f5;border:1px solid #ddd;border-radius:8px;padding:.75rem}.post-media-upload__progress p{color:#666;margin:0 0 .5rem;font-size:.875rem}.post-media-upload__progress-bar{background-color:#e0e0e0;border-radius:4px;width:100%;height:8px;margin-bottom:.5rem;overflow:hidden}.post-media-upload__progress-fill{background-color:#1976d2;height:100%;transition:width .2s}.post-media-upload__error{color:#dc3545;margin-top:.5rem;font-size:.875rem}.progress-bar-container{flex-direction:column;gap:.5rem;width:100%;display:flex}.progress-bar-container .progress-bar-track{background-color:#e0e0e0;border-radius:4px;width:100%;height:8px;position:relative;overflow:hidden}.progress-bar-container .progress-bar-track .progress-bar-fill{background:linear-gradient(90deg,#4caf50 0%,#8bc34a 100%);border-radius:4px;height:100%;transition:width .3s}.progress-bar-container .progress-bar-label{color:#666;justify-content:space-between;align-items:center;font-size:.875rem;display:flex}.progress-bar-container .progress-bar-label .progress-values{color:#333;font-weight:500}.progress-bar-container .progress-bar-label .progress-percentage{color:#999}.progress-bar-container.progress-bar-small .progress-bar-track{height:4px}.progress-bar-container.progress-bar-small .progress-bar-label{font-size:.75rem}.progress-bar-container.progress-bar-large .progress-bar-track{height:12px}.progress-bar-container.progress-bar-large .progress-bar-label{font-size:1rem}.contributions-view{flex-direction:column;gap:1rem;display:flex}.contributions-view__item{background-color:#f9fafb;border:1px solid #e1e5e9;border-radius:8px;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.contributions-view__item-header{justify-content:space-between;align-items:center;display:flex}.contributions-view__objective{color:#333;font-size:.9rem;font-weight:600}.contributions-view__value{color:#4caf50;background-color:#e8f5e9;border-radius:6px;padding:.25rem .5rem;font-size:1.05rem;font-weight:700}.contributions-view__notes{color:#666;flex-basis:100%;font-size:.875rem}.contributions-view__checklist{flex-wrap:wrap;flex-basis:100%;gap:.375rem;margin-top:.25rem;display:flex}.contributions-view__badge{color:#2e7d32;background-color:#e8f5e9;border-radius:12px;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:.875rem;font-weight:500;display:inline-flex}.contributions-view__frequency{flex-direction:column;gap:.25rem;margin-top:-.25rem;display:flex}.contributions-view__period{color:#666;font-size:.875rem;font-style:italic}.contributions-view__status{border-radius:4px;width:fit-content;padding:.25rem .5rem;font-size:.8rem;font-weight:600;display:inline-block}.contributions-view__status--achieved{color:#2e7d32;background-color:#e8f5e9;border:1px solid #a5d6a7}.contributions-view__status--partial{color:#e65100;background-color:#fff3e0;border:1px solid #ffb74d}.contributions-editor{flex-direction:column;gap:.75rem;display:flex}.contributions-editor__row{box-sizing:border-box;background-color:#f9fafb;border:1px solid #ddd;border-radius:8px;flex-direction:column;gap:.5rem;width:100%;padding:.75rem;transition:all .2s;display:flex}.contributions-editor__row:hover{background-color:#f5f5f5;border-color:#2196f3}.contributions-editor__row-header{align-items:center;gap:.5rem;display:flex}.contributions-editor__select,.contributions-editor__value,.contributions-editor__notes{box-sizing:border-box;background-color:#fff;border:1px solid #ddd;border-radius:6px;padding:.5rem .75rem;font-family:inherit;font-size:.9rem;transition:all .2s}.contributions-editor__select:focus,.contributions-editor__value:focus,.contributions-editor__notes:focus{border-color:#2196f3;outline:none;box-shadow:0 0 0 3px #2196f31a}.contributions-editor__select{cursor:pointer;flex:1;min-width:0;font-weight:500}.contributions-editor__value{text-align:center;flex-shrink:0;width:100px;font-weight:600}.contributions-editor__milestone{color:#1976d2;white-space:nowrap;text-align:center;background-color:#e3f2fd;border-radius:4px;flex-shrink:0;width:100px;padding:.5rem .75rem;font-size:.85rem;font-weight:500}.contributions-editor__notes{color:#666;width:100%;font-style:italic}.contributions-editor__notes::placeholder{color:#aaa}.contributions-editor__remove{color:#999;cursor:pointer;background-color:#fff;border:1px solid #ddd;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.2rem;transition:all .2s;display:flex}.contributions-editor__remove:hover{color:#dc3545;background-color:#ffebee;border-color:#dc3545;transform:scale(1.1)}.contributions-editor__add{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2196f3 0%,#1976d2 100%);border:none;border-radius:6px;align-self:flex-start;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s;box-shadow:0 2px 4px #2196f333}.contributions-editor__add:hover{background:linear-gradient(135deg,#1976d2 0% 100%);transform:translateY(-1px);box-shadow:0 4px 8px #2196f34d}.contributions-editor__add:active{transform:translateY(0);box-shadow:0 1px 2px #2196f333}.post-edit-actions{border-top:1px solid #ddd;gap:.75rem;margin-top:1rem;padding-top:1rem;display:flex}.post-edit-actions__save,.post-edit-actions__cancel{cursor:pointer;border:none;border-radius:6px;padding:.625rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .2s;box-shadow:0 2px 4px #0000001a}.post-edit-actions__save:active,.post-edit-actions__cancel:active{transform:translateY(0);box-shadow:0 1px 2px #0000001a}.post-edit-actions__save{color:#fff;background:linear-gradient(135deg,#4caf50 0%,#45a049 100%)}.post-edit-actions__save:hover{background:linear-gradient(135deg,#45a049 0%,#2e7d32 100%);transform:translateY(-1px);box-shadow:0 4px 8px #4caf504d}.post-edit-actions__cancel{color:#666;background-color:#fff;border:1px solid #ddd}.post-edit-actions__cancel:hover{background-color:#f5f5f5;border-color:#aaa;transform:translateY(-1px)}.post-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1rem;padding:1.5rem;transition:box-shadow .2s}.post-card:hover{box-shadow:0 4px 8px #0000001a}.post-card__contributions{border-top:1px solid #e5e7eb;margin-top:1.5rem;padding-top:1rem}.post-card__contributions h4{color:#666;text-transform:uppercase;letter-spacing:.5px;margin:0 0 .75rem;font-size:.9rem;font-weight:600}.post-card__like-actions{border-top:1px solid #e5e7eb;align-items:center;gap:.75rem;margin-top:1rem;padding-top:1rem;display:flex}.objective-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:1rem;transition:all .2s;overflow:hidden}.objective-card:hover{box-shadow:0 2px 8px #0000001a}.objective-card.completed{background-color:#e8f5e9;border-color:#4caf50}.objective-card.expanded{box-shadow:0 4px 12px #00000026}.objective-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.objective-type-badge{color:#1976d2;text-transform:uppercase;background-color:#e3f2fd;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.delete-btn{color:#999;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;font-size:1.5rem;transition:all .2s;display:flex}.delete-btn:hover{color:#f44336;background-color:#ffebee}.objective-title{color:#333;margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.objective-description{color:#666;margin:0 0 1rem;font-size:.9rem;line-height:1.5}.objective-description.editable{cursor:pointer;border-radius:4px;margin-left:-.5rem;margin-right:-.5rem;padding:.25rem .5rem;transition:all .2s}.objective-description.editable:hover{color:#333;background-color:#f9fafb}.objective-description.editable.placeholder{color:#aaa;font-style:italic}.objective-progress{margin:1rem 0}.progress-fill.over-achieved{background:linear-gradient(90deg,#45a049,#4caf50)}.progress-info{color:#666;justify-content:space-between;font-size:.8rem;display:flex}.progress-value{font-weight:500}.progress-percentage{color:#4caf50;font-weight:600}.progress-percentage.over-achieved{color:#45a049}.checklist-item{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.checklist-item input[type=checkbox]:not(:disabled){cursor:pointer}.checklist-item input[type=checkbox]:disabled{cursor:default;opacity:.7}.checklist-item span{color:#333;font-size:.9rem}.checklist-item span.completed{color:#999;text-decoration:line-through}.objective-deadline,.objective-completed-at{color:#666;margin-top:.75rem;font-size:.8rem;font-style:italic}.objective-completed-at{color:#4caf50;font-weight:500}.objective-actions{gap:.5rem;display:flex}.edit-btn{color:#999;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;font-size:1.25rem;transition:all .2s;display:flex}.edit-btn:hover{color:#1976d2;background-color:#e3f2fd}.edit-form{margin:1rem 0}.edit-form .edit-title-input,.edit-form .edit-description-textarea{border:1px solid #ddd;border-radius:4px;width:100%;margin-bottom:.75rem;padding:.5rem;font-family:inherit;font-size:1rem}.edit-form .edit-title-input:focus,.edit-form .edit-description-textarea:focus{border-color:#1976d2;outline:none}.edit-form .edit-title-input{font-weight:600}.edit-form .edit-description-textarea{resize:vertical}.edit-actions{gap:.5rem;display:flex}.edit-actions button{cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.9rem;transition:all .2s}.edit-actions button.save-btn{color:#fff;background-color:#4caf50}.edit-actions button.save-btn:hover:not(:disabled){background-color:#45a049}.edit-actions button.cancel-btn{color:#333;background-color:#e0e0e0}.edit-actions button.cancel-btn:hover:not(:disabled){background-color:#ccc}.edit-actions button:disabled{opacity:.5;cursor:not-allowed}.progress-actions{gap:.5rem;margin-top:.75rem;display:flex}.progress-btn{color:#fff;cursor:pointer;background-color:#1976d2;border:none;border-radius:4px;min-width:2rem;padding:.25rem .75rem;font-size:1rem;font-weight:600;transition:all .2s}.progress-btn:hover{background-color:#1976d2}.progress-btn:active{transform:scale(.95)}.milestone-btn{color:#fff;cursor:pointer;background-color:#1976d2;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.9rem;transition:all .2s}.milestone-btn:hover{background-color:#1976d2}.milestone-btn.completed{background-color:#4caf50}.milestone-btn.completed:hover{background-color:#45a049}.objective-main{cursor:pointer;-webkit-user-select:none;user-select:none;padding:1.5rem}.objective-main:hover{background-color:#f9fafb}.contributing-posts-summary{color:#666;border-top:1px solid #e0e0e0;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;font-size:.9rem;font-weight:500;display:flex}.contributing-posts-summary .expand-icon{font-size:.75rem;transition:transform .2s}.objective-expanded-content{background-color:#f9fafb;border-top:1px solid #e0e0e0;padding:0 1.5rem 1.5rem;animation:.2s ease-out slideDown}.contributing-posts-header{justify-content:space-between;align-items:center;margin-bottom:1rem;padding-top:1rem;display:flex}.contributing-posts-header h4{color:#333;margin:0;font-size:1rem;font-weight:600}.contributing-posts-header .btn-add-post{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2196f3 0%,#1976d2 100%);border:none;border-radius:6px;padding:.5rem 1rem;font-size:.8rem;font-weight:600;transition:all .2s;box-shadow:0 2px 4px #2196f333}.contributing-posts-header .btn-add-post:hover{background:linear-gradient(135deg,#1976d2 0% 100%);transform:translateY(-1px);box-shadow:0 4px 8px #2196f34d}.contributing-posts-header .btn-add-post:active{transform:translateY(0);box-shadow:0 1px 2px #2196f333}.contributing-posts-list{flex-direction:column;gap:1rem;display:flex}.contributing-posts-list .post-wrapper{border-radius:6px;transition:all .3s}.contributing-posts-list .post-wrapper.highlighted{animation:2s ease-out highlight-pulse;box-shadow:0 0 0 3px #e3f2fd}@keyframes highlight-pulse{0%{background-color:#e3f2fd;box-shadow:0 0 #2196f3}50%{background-color:#e3f2fd;box-shadow:0 0 0 8px #2196f34d}to{background-color:#0000;box-shadow:0 0 #2196f300}}.no-posts-message{text-align:center;color:#999;padding:2rem;font-size:.9rem;font-style:italic}.inline-edit{margin:.5rem 0}.inline-edit input,.inline-edit textarea{width:100%;font-size:inherit;font-family:inherit;font-weight:inherit;background-color:#f9fafb;border:2px solid #2196f3;border-radius:4px;padding:.5rem .75rem;transition:all .2s}.inline-edit input:focus,.inline-edit textarea:focus{background-color:#fff;border-color:#1976d2;outline:none;box-shadow:0 0 0 3px #2196f31a}.inline-edit input{font-weight:600}.inline-edit textarea{resize:vertical;min-height:60px}.objective-details{border-top:1px solid #f5f5f5;margin-top:.75rem;padding-top:.75rem;font-size:.75rem}.detail-row{flex-wrap:wrap;gap:1rem;margin-bottom:.5rem;display:flex}.detail-field-inline .editable-value{color:#666;cursor:pointer;border-radius:4px;padding:.25rem .5rem;transition:all .2s}.detail-field-inline .editable-value:hover{color:#333;background-color:#f9fafb}.detail-field-inline .edit-input-inline,.detail-field-inline .edit-select-inline{background-color:#fff;border:1px solid #2196f3;border-radius:4px;min-width:100px;padding:.25rem .5rem;font-size:.75rem}.detail-field-inline .edit-input-inline:focus,.detail-field-inline .edit-select-inline:focus{border-color:#1976d2;outline:none;box-shadow:0 0 0 3px #2196f31a}.frequency-natural{align-items:center;gap:.5rem;display:flex}.frequency-natural .editable-value{color:#666;cursor:pointer;border-radius:4px;padding:.25rem .5rem;transition:all .2s}.frequency-natural .editable-value:hover{color:#333;background-color:#f9fafb}.frequency-natural .frequency-separator{color:#666;pointer-events:none;font-size:.75rem}.frequency-natural .frequency-count-input{background-color:#fff;border:1px solid #2196f3;border-radius:4px;width:60px;padding:.25rem .5rem;font-size:.75rem}.frequency-natural .frequency-count-input:focus{border-color:#1976d2;outline:none;box-shadow:0 0 0 3px #2196f31a}.frequency-natural .frequency-period-select{cursor:pointer;background-color:#fff;border:1px solid #2196f3;border-radius:4px;padding:.25rem .5rem;font-size:.75rem}.frequency-natural .frequency-period-select:focus{border-color:#1976d2;outline:none;box-shadow:0 0 0 3px #2196f31a}.btn-add-detail{color:#666;cursor:pointer;background:0 0;border:1px dashed #ccc;border-radius:4px;padding:.25rem .75rem;font-size:.75rem;transition:all .2s}.btn-add-detail:hover{color:#1976d2;background-color:#e3f2fd;border-color:#2196f3}.checklist-items{border-top:1px solid #e0e0e0;margin-top:1rem;padding-top:1rem}.checklist-items .checklist-item{border-radius:4px;align-items:center;gap:.5rem;margin-bottom:.25rem;padding:.5rem;transition:background-color .2s;display:flex;position:relative}.checklist-items .checklist-item:hover{background-color:#f9fafb}.checklist-items .checklist-item:hover .checklist-item-actions{opacity:1}.checklist-items .checklist-item.completed .checklist-item-text{color:#999;text-decoration:line-through}.checklist-items .checklist-item .checklist-item-text{color:#333;flex:1;font-size:.9rem}.checklist-items .checklist-item .checklist-edit-input{background-color:#fff;border:1px solid #2196f3;border-radius:4px;flex:1;padding:.25rem .5rem;font-size:.9rem}.checklist-items .checklist-item .checklist-edit-input:focus{border-color:#1976d2;outline:none;box-shadow:0 0 0 3px #2196f31a}.checklist-items .checklist-item .checklist-item-actions{opacity:0;gap:.25rem;transition:opacity .2s;display:flex}.checklist-items .checklist-item .checklist-item-actions .edit-icon-btn,.checklist-items .checklist-item .checklist-item-actions .delete-icon-btn{cursor:pointer;color:#999;background:0 0;border:none;border-radius:4px;padding:.25rem;font-size:1rem;transition:all .2s}.checklist-items .checklist-item .checklist-item-actions .edit-icon-btn:hover,.checklist-items .checklist-item .checklist-item-actions .delete-icon-btn:hover{background-color:#e0e0e0}.checklist-items .checklist-item .checklist-item-actions .delete-icon-btn:hover{color:#f44336;background-color:#ffebee}.checklist-items .btn-add-checklist-item{color:#666;cursor:pointer;background:0 0;border:1px dashed #ccc;border-radius:4px;width:100%;margin-top:.5rem;padding:.5rem;font-size:.75rem;transition:all .2s}.checklist-items .btn-add-checklist-item:hover{color:#1976d2;background-color:#e3f2fd;border-color:#2196f3}.checklist-items .checklist-add-input{background-color:#fff;border:1px solid #2196f3;border-radius:4px;width:100%;margin-top:.5rem;padding:.5rem;font-size:.9rem}.checklist-items .checklist-add-input:focus{border-color:#1976d2;outline:none;box-shadow:0 0 0 3px #2196f31a}.objective-history{border-top:1px solid #e0e0e0;margin-top:1rem;padding-top:.75rem}.objective-history .history-toggle{color:#666;cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem;font-size:.75rem;transition:color .2s;display:flex}.objective-history .history-toggle:hover{color:#333}.objective-history .history-toggle:disabled{opacity:.5;cursor:not-allowed}.objective-history .history-toggle .spinner{border:2px solid #e0e0e0;border-top-color:#2196f3;border-radius:50%;width:14px;height:14px;animation:.6s linear infinite spin}.objective-history .history-content{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.objective-history .history-period{background:#f5f7fa;border-radius:4px;flex-direction:column;padding:.5rem .75rem;transition:all .2s;display:flex}.objective-history .history-period.current{background:#e3f2fd;border:1px solid #2196f3}.objective-history .history-period.expanded{background:#fff;box-shadow:0 2px 8px #0000001a}.objective-history .history-period .period-header{justify-content:space-between;align-items:center;display:flex}.objective-history .history-period .period-header .period-label{color:#666;align-items:center;gap:.5rem;font-size:.75rem;display:flex}.objective-history .history-period .period-header .period-label .expand-icon{color:#999;font-size:10px;transition:transform .2s}.objective-history .history-period .period-header .period-progress{align-items:center;gap:.75rem;display:flex}.objective-history .history-period .period-header .period-progress span{color:#333;font-size:.75rem;font-weight:600}.objective-history .history-period .period-header .period-progress span.achieved{color:#4caf50}.objective-history .history-period .period-header .period-progress .mini-progress-bar{background:#e0e0e0;border-radius:50%;width:80px;height:6px;overflow:hidden}.objective-history .history-period .period-header .period-progress .mini-progress-bar .progress-fill{background:#2196f3;height:100%;transition:width .3s}.objective-history .history-period .period-contributions{border-top:1px solid #e0e0e0;flex-direction:column;gap:.5rem;margin-top:.75rem;padding-top:.75rem;display:flex}.objective-history .history-period .period-contributions .contribution-item{cursor:pointer;background:#f5f7fa;border-radius:4px;padding:.5rem;font-size:.75rem;transition:all .2s}.objective-history .history-period .period-contributions .contribution-item:hover{background:#e4e9f2;transform:translate(2px);box-shadow:0 1px 4px #0000001a}.objective-history .history-period .period-contributions .contribution-item:active{transform:translate(0)}.objective-history .history-period .period-contributions .contribution-item:focus{outline-offset:2px;outline:2px solid #2196f3}.objective-history .history-period .period-contributions .contribution-item .contribution-header{justify-content:space-between;align-items:center;margin-bottom:.25rem;display:flex}.objective-history .history-period .period-contributions .contribution-item .contribution-header .contribution-value{color:#4caf50;font-weight:600}.objective-history .history-period .period-contributions .contribution-item .contribution-header .contribution-date{color:#999;font-size:.7rem}.objective-history .history-period .period-contributions .contribution-item .contribution-content{color:#666;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem;line-height:1.4;display:flex}.objective-history .history-period .period-contributions .contribution-item .contribution-content .view-post-indicator{color:#2196f3;opacity:0;flex-shrink:0;font-size:.9rem;transition:opacity .2s,transform .2s}.objective-history .history-period .period-contributions .contribution-item:hover .view-post-indicator{opacity:1;transform:translate(2px)}.objective-history .history-period .period-contributions .contribution-item .contribution-notes{color:#999;font-size:.7rem;font-style:italic}.objective-list{width:100%}.objectives-grid{flex-direction:column;gap:1rem;max-width:700px;margin:0 auto;display:flex}.objective-form{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000001a}.objective-form .form-group{margin-bottom:1.5rem}.objective-form .form-group label{color:#333;margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.objective-form .form-group input,.objective-form .form-group textarea,.objective-form .form-group select{border:1px solid #ddd;border-radius:4px;width:100%;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.objective-form .form-group input:focus,.objective-form .form-group textarea:focus,.objective-form .form-group select:focus{border-color:#4caf50;outline:none}.objective-form .form-group input:disabled,.objective-form .form-group textarea:disabled,.objective-form .form-group select:disabled{cursor:not-allowed;background-color:#f5f5f5}.objective-form .form-group textarea{resize:vertical;min-height:80px}.objective-form .form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=768px){.objective-form .form-row{grid-template-columns:1fr}}.objective-form .checklist-builder .checklist-input{gap:.5rem;margin-bottom:1rem;display:flex}.objective-form .checklist-builder .checklist-input input{flex:1}.objective-form .checklist-builder .checklist-input button{color:#fff;cursor:pointer;background-color:#4caf50;border:none;border-radius:4px;padding:.75rem 1.5rem;font-weight:500;transition:background-color .2s}.objective-form .checklist-builder .checklist-input button:hover:not(:disabled){background-color:#45a049}.objective-form .checklist-builder .checklist-input button:disabled{cursor:not-allowed;background-color:#ccc}.objective-form .checklist-builder .checklist-items{margin:0;padding:0;list-style:none}.objective-form .checklist-builder .checklist-items li{background-color:#f9fafb;border:1px solid #e0e0e0;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.75rem;display:flex}.objective-form .checklist-builder .checklist-items li span{flex:1}.objective-form .checklist-builder .checklist-items li button{color:#fff;cursor:pointer;background-color:#f44336;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.8rem;transition:background-color .2s}.objective-form .checklist-builder .checklist-items li button:hover:not(:disabled){background-color:#d32f2f}.objective-form .checklist-builder .checklist-items li button:disabled{cursor:not-allowed;background-color:#ccc}.objective-form .form-actions{justify-content:flex-end;gap:1rem;margin-top:2rem;display:flex}.objective-form .form-actions button{cursor:pointer;border:none;border-radius:4px;padding:.75rem 2rem;font-size:1rem;font-weight:500;transition:all .2s}.objective-form .form-actions button:disabled{opacity:.6;cursor:not-allowed}.objective-form .form-actions button.btn-primary{color:#fff;background-color:#4caf50}.objective-form .form-actions button.btn-primary:hover:not(:disabled){background-color:#45a049}.objective-form .form-actions button.btn-secondary{color:#666;background-color:#fff;border:1px solid #ddd}.objective-form .form-actions button.btn-secondary:hover:not(:disabled){background-color:#f5f5f5}.post-list{width:100%}.loading,.error{text-align:center;color:#666;padding:2rem}.error{color:#f44336}.empty-state{text-align:center;color:#666;padding:4rem 2rem}.empty-state p{margin:.5rem 0}.empty-state p:first-child{font-size:1.1rem;font-weight:500}.post-form{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000001a}.post-form .form-group{margin-bottom:1.5rem}.post-form .form-group label{color:#333;margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.post-form .form-group .help-text{color:#666;margin:.25rem 0 .75rem;font-size:.85rem}.post-form .form-group textarea,.post-form .form-group select{border:1px solid #ddd;border-radius:4px;width:100%;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.post-form .form-group textarea:focus,.post-form .form-group select:focus{border-color:#4caf50;outline:none}.post-form .form-group textarea:disabled,.post-form .form-group select:disabled{cursor:not-allowed;background-color:#f5f5f5}.post-form .form-group textarea{resize:vertical;line-height:1.5}.post-form .form-group .char-count{color:#999;text-align:right;margin-top:.25rem;font-size:.75rem}.post-form .contributions-section .contributions-list{border:1px solid #e0e0e0;border-radius:4px;overflow:hidden}.post-form .contributions-section .contribution-item{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:1rem;transition:background-color .2s;display:flex}.post-form .contributions-section .contribution-item:last-child{border-bottom:none}.post-form .contributions-section .contribution-item:hover{background-color:#f9fafb}.post-form .contributions-section .contribution-item.active{background-color:#e8f5e9}.post-form .contributions-section .contribution-item .objective-info{flex-direction:column;flex:1;gap:.25rem;display:flex}.post-form .contributions-section .contribution-item .objective-info .objective-title{color:#333;font-weight:500}.post-form .contributions-section .contribution-item .objective-info .objective-type{color:#666;text-transform:capitalize;font-size:.75rem}.post-form .contributions-section .contribution-item .contribution-input-group{align-items:center;gap:.5rem;display:flex}.post-form .contributions-section .contribution-item .contribution-input-group input{border:1px solid #ddd;border-radius:4px;width:100px;padding:.5rem;font-size:.9rem}.post-form .contributions-section .contribution-item .contribution-input-group input:focus{border-color:#4caf50;outline:none}.post-form .contributions-section .contribution-item .contribution-input-group input:disabled{background-color:#f5f5f5}.post-form .contributions-section .contribution-item .contribution-input-group .milestone-contribution{color:#1976d2;white-space:nowrap;background-color:#e3f2fd;border-radius:4px;padding:.5rem .75rem;font-size:.85rem;font-weight:500}.post-form .contributions-section .contribution-item .contribution-input-group .remove-btn{color:#fff;cursor:pointer;background-color:#f44336;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.85rem;transition:background-color .2s}.post-form .contributions-section .contribution-item .contribution-input-group .remove-btn:hover:not(:disabled){background-color:#d32f2f}.post-form .contributions-section .contribution-item .contribution-input-group .remove-btn:disabled{cursor:not-allowed;background-color:#ccc}.post-form .contributions-section .contribution-item .add-btn{color:#fff;cursor:pointer;background-color:#4caf50;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.85rem;font-weight:500;transition:background-color .2s}.post-form .contributions-section .contribution-item .add-btn:hover:not(:disabled){background-color:#45a049}.post-form .contributions-section .contribution-item .add-btn:disabled{cursor:not-allowed;background-color:#ccc}.post-form .contributions-section .contribution-item .checklist-contribution-items{background-color:#f9fafb;border:1px solid #e0e0e0;border-radius:8px;flex-direction:column;gap:.75rem;margin-top:.5rem;padding:1rem;display:flex}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-header{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding-bottom:.5rem;display:flex}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-header .checklist-label{color:#333;font-size:.9rem;font-weight:500}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-header .remove-btn{color:#fff;cursor:pointer;background-color:#f44336;border:none;border-radius:4px;padding:.5rem .75rem;font-size:.85rem;transition:background-color .2s}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-header .remove-btn:hover:not(:disabled){background-color:#d32f2f}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-header .remove-btn:disabled{opacity:.5;cursor:not-allowed}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-list{flex-direction:column;gap:.5rem;display:flex}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-list .checklist-item-checkbox{cursor:pointer;background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;align-items:center;gap:.5rem;padding:.5rem;transition:all .2s;display:flex}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-list .checklist-item-checkbox:hover{background-color:#f5f5f5;border-color:#4caf50}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-list .checklist-item-checkbox input[type=checkbox]{cursor:pointer;flex-shrink:0;width:18px;height:18px}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-list .checklist-item-checkbox span{color:#333;-webkit-user-select:none;user-select:none;font-size:.9rem}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-list .checklist-item-checkbox:has(input:checked){background-color:#e8f5e9;border-color:#4caf50}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-list .checklist-item-checkbox:has(input:checked) span{color:#2e7d32;font-weight:500}.post-form .contributions-section .contribution-item .checklist-contribution-items .checklist-items-list .checklist-item-checkbox:has(input:disabled){cursor:not-allowed;opacity:.6}.post-form .form-actions{justify-content:flex-end;gap:1rem;margin-top:2rem;display:flex}.post-form .form-actions button{cursor:pointer;border:none;border-radius:4px;padding:.75rem 2rem;font-size:1rem;font-weight:500;transition:all .2s}.post-form .form-actions button:disabled{opacity:.6;cursor:not-allowed}.post-form .form-actions button.btn-primary{color:#fff;background-color:#4caf50}.post-form .form-actions button.btn-primary:hover:not(:disabled){background-color:#45a049}.post-form .form-actions button.btn-secondary{color:#666;background-color:#fff;border:1px solid #ddd}.post-form .form-actions button.btn-secondary:hover:not(:disabled){background-color:#f5f5f5}@media (width<=768px){.post-form .contribution-item{flex-direction:column;align-items:flex-start;gap:.75rem}.post-form .contribution-item .contribution-input-group{width:100%}.post-form .contribution-item .contribution-input-group input{flex:1}.post-form .contribution-item .add-btn{align-self:flex-end}}.supporter-count{background-color:#f5f5f5;border:none;border-radius:4px;align-items:center;gap:.5rem;min-height:36px;padding:.5rem 1rem;font-family:inherit;display:inline-flex}.supporter-count--clickable{cursor:pointer;transition:background-color .2s}.supporter-count--clickable:hover{background-color:#e0e0e0}.supporter-count--clickable:focus{outline-offset:2px;outline:2px solid #667eea}.supporter-count-label{color:#333;font-size:.875rem;font-weight:500}@media (prefers-color-scheme:dark){.supporter-count{background-color:#333}.supporter-count-label{color:#fff}}.supporters-list{min-height:200px}.supporters-list__error{color:#f44336;background-color:#ffebee;border-radius:4px;margin-bottom:1rem;padding:1rem}.supporters-list__loading,.supporters-list__empty{text-align:center;color:#666;padding:2rem}.supporters-list__items{margin:0;padding:0;list-style:none}.supporters-list__item{border-bottom:1px solid #d1d5db;justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.supporters-list__item:last-child{border-bottom:none}.supporters-list__date{color:#666;font-size:.875rem}.supporters-list__load-more{cursor:pointer;color:#333;background-color:#f5f5f5;border:1px solid #d1d5db;border-radius:4px;width:100%;margin-top:1rem;padding:.75rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.supporters-list__load-more:hover:not(:disabled){background-color:#d1d5db}.supporters-list__load-more:disabled{opacity:.5;cursor:not-allowed}.auto-follow-toggle{background-color:#f5f5f5;border:1px solid #d1d5db;border-radius:4px;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.auto-follow-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;display:flex}.auto-follow-checkbox{cursor:pointer;width:18px;height:18px}.auto-follow-checkbox:disabled{cursor:not-allowed;opacity:.5}.auto-follow-text{color:#333;font-size:.875rem;font-weight:500}.auto-follow-description{color:#666;margin-left:26px;font-size:.7rem}@media (prefers-color-scheme:dark){.auto-follow-toggle{background-color:#333;border-color:#e5e7eb}.auto-follow-text{color:#fff}.auto-follow-description{color:#d1d5db}}.goal-detail-container{max-width:56.25rem;margin:0 auto;padding:2rem 1rem}.goal-detail-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.back-btn,.privacy-btn{cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.9rem;transition:background-color .2s}.back-btn{color:#fff;background-color:#6c757d}.back-btn:hover{background-color:#5a6268}.privacy-btn{color:#fff;background-color:#2196f3}.privacy-btn:hover{background-color:#1976d2}.error-banner{color:#d32f2f;background-color:#ffebee;border:1px solid #fcc;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:1rem;display:flex}.error-banner p{flex:1;margin:0}.dismiss-error{color:#d32f2f;cursor:pointer;background:0 0;border:none;padding:0 .5rem;font-size:2rem;line-height:1}.dismiss-error:hover{opacity:.7}.goal-detail-card{background-color:#fff;border-radius:8px;padding:2rem;box-shadow:0 6px 16px #0000001a}.goal-detail-main .goal-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.goal-title-container{flex:1}.goal-title{color:#374151;margin:0;font-size:2rem;font-weight:700;display:inline-block;position:relative}.goal-title.editable{cursor:pointer;border-radius:4px;padding:.25rem .5rem;transition:background-color .2s}.goal-title.editable:hover{background-color:#f0f0f0}.goal-title.editable:hover .edit-icon{opacity:1}.edit-icon{opacity:0;color:#2196f3;margin-left:.5rem;font-size:1rem;transition:opacity .2s}.inline-edit-field{flex-direction:column;gap:.5rem;display:flex}.inline-edit-actions{gap:.5rem;display:flex}.inline-save-btn,.inline-cancel-btn{cursor:pointer;border:none;border-radius:4px;padding:.4rem .8rem;font-size:.9rem;font-weight:600;transition:background-color .2s}.inline-save-btn:disabled,.inline-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.inline-save-btn{color:#fff;background-color:#28a745}.inline-save-btn:hover:not(:disabled){background-color:#218838}.inline-cancel-btn{color:#fff;background-color:#6c757d}.inline-cancel-btn:hover:not(:disabled){background-color:#5a6268}.edit-title-input{border:2px solid #2196f3;border-radius:4px;width:100%;padding:.5rem;font-family:inherit;font-size:2rem;font-weight:700}.goal-status{text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-radius:9999px;padding:.5rem 1rem;font-size:.85rem;font-weight:600}.status-draft{color:#000;background-color:#ffc107}.status-active{color:#fff;background-color:#28a745}.status-completed{color:#fff;background-color:#17a2b8}.status-cancelled{color:#fff;background-color:#6c757d}.goal-meta{gap:.75rem;margin-bottom:1.5rem;display:flex}.privacy-badge,.category-badge{border-radius:4px;padding:.4rem .8rem;font-size:.85rem;font-weight:500}.privacy-private{color:#6c757d;background-color:#f9fafb;border:1px solid #ddd}.privacy-public{color:#1976d2;background-color:#e3f2fd;border:1px solid #e3f2fd}.category-container{display:inline-block}.category-badge{color:#333;background-color:#f0f0f0;border:1px solid #ccc;display:inline-block;position:relative}.category-badge.editable{cursor:pointer;transition:background-color .2s}.category-badge.editable:hover{background-color:#ddd}.goal-description-section,.goal-progress-section{margin-bottom:2rem}.section-title{color:#333;margin-bottom:.75rem;font-size:1.25rem;font-weight:600}.goal-description{color:#555;white-space:pre-wrap;font-size:1rem;line-height:1.6;position:relative}.goal-description.editable{cursor:pointer;border-radius:4px;min-width:100%;padding:.75rem;transition:background-color .2s;display:inline-block}.goal-description.editable:hover{background-color:#f0f0f0}.edit-description-textarea{resize:vertical;border:2px solid #2196f3;border-radius:4px;width:100%;padding:.75rem;font-family:inherit;font-size:1rem;line-height:1.6}.progress-bar{background-color:#e0e0e0;border-radius:12px;width:100%;height:24px;margin-bottom:.5rem;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#28a745,#a5d6a7);height:100%;transition:width .3s}.progress-text{color:#28a745;font-size:1rem;font-weight:600}.goal-details-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:2rem;display:grid}.detail-item{flex-direction:column;gap:.5rem;display:flex}.detail-label{color:#666;text-transform:uppercase;letter-spacing:.5px;font-size:.9rem;font-weight:600}.detail-value{color:#374151;font-size:1.1rem;font-weight:500;position:relative}.detail-value.editable{cursor:pointer;border-radius:4px;padding:.25rem .5rem;transition:background-color .2s;display:inline-block}.detail-value.editable:hover{background-color:#f0f0f0}.days-remaining-inline{color:#666;font-size:.9rem;font-weight:400}.edit-amount-input,.edit-date-input{border:2px solid #2196f3;border-radius:4px;width:100%;padding:.5rem;font-family:inherit;font-size:1.1rem}.edit-category-select{border:2px solid #2196f3;border-radius:4px;min-width:200px;padding:.5rem;font-family:inherit;font-size:.9rem}.loading-message,.error-message{text-align:center;color:#666;padding:2rem;font-size:1.1rem}.error-message{color:#dc3545}.error-message p{margin-bottom:1rem}.link-btn{color:#2196f3;cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;font-family:inherit;text-decoration:underline}.link-btn:hover{color:#1976d2}@media (width<=768px){.goal-detail-container{padding:1rem .5rem}.goal-detail-card{padding:1.5rem}.goal-title,.edit-title-input{font-size:2rem}.goal-details-grid{grid-template-columns:1fr}.goal-header{flex-direction:column;align-items:flex-start!important}}.privacy-indicator{color:#666;font-size:.875rem;font-style:italic}.private-field-placeholder{color:#999;background-color:#f9fafb;border-radius:4px;padding:.75rem;font-style:italic}.private-field{color:#999;font-style:italic}.goal-cover-primary{border-radius:6px 6px 0 0;width:100%;max-height:400px;overflow:hidden}.goal-cover-primary .cover-image{object-fit:contain;width:100%;height:100%;display:block}.goal-detail-card .goal-cover-primary+.goal-detail-main{padding-top:2rem}.goal-objectives-section,.goal-posts-section{background:#fff;border-radius:6px;margin-top:2rem;padding:2rem;box-shadow:0 2px 4px #0000001a}.goal-objectives-section .section-header,.goal-posts-section .section-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.goal-objectives-section .section-header h2,.goal-posts-section .section-header h2{color:#333;margin:0;font-size:2rem;font-weight:600}.goal-objectives-section .section-header .btn-primary,.goal-posts-section .section-header .btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4caf50 0%,#45a049 100%);border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .2s;box-shadow:0 2px 4px #4caf504d}.goal-objectives-section .section-header .btn-primary:hover,.goal-posts-section .section-header .btn-primary:hover{background:linear-gradient(135deg,#45a049 0% 100%);transform:translateY(-1px);box-shadow:0 4px 8px #28a7454d}.goal-objectives-section .section-header .btn-primary:active,.goal-posts-section .section-header .btn-primary:active{transform:translateY(0);box-shadow:0 1px 3px #0000000d}.goal-objectives-section .section-header .btn-primary:disabled,.goal-posts-section .section-header .btn-primary:disabled{cursor:not-allowed;box-shadow:none;background:#ccc;transform:none}.goal-objectives-section .form-container,.goal-posts-section .form-container{background-color:#f9fafb;border:1px solid #ddd;border-radius:6px;margin-bottom:2rem;padding:1.5rem}.goal-shop-link-btn,.goal-wishlist-link-btn{color:#666;cursor:pointer;background:0 0;border:1px solid #ddd;border-radius:4px;align-items:center;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.goal-shop-link-btn:hover,.goal-wishlist-link-btn:hover{color:#667eea;background-color:#f9fafb;border-color:#667eea}@media (width<=768px){.goal-objectives-section,.goal-posts-section{border-radius:0;margin-left:-1rem;margin-right:-1rem;padding:1rem}.goal-objectives-section .section-header,.goal-posts-section .section-header{flex-direction:column;align-items:flex-start;gap:.75rem}.goal-objectives-section .section-header .btn-primary,.goal-posts-section .section-header .btn-primary{width:100%}}.profile-view-container{max-width:56.25rem;margin:0 auto;padding:2rem 1rem}.profile-view-container .loading,.profile-view-container .error{text-align:center;color:#666;padding:4rem 1rem;font-size:1.1rem}.profile-view-container .error{color:#f44336}.profile-view-container .profile-card{background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 8px #0000001a}.profile-view-container .profile-card .profile-content{padding:0 1.5rem 1.5rem}@media (width<=768px){.profile-view-container{padding:1rem .5rem}.profile-view-container .profile-card .profile-content{padding:0 1rem 1rem}}.goal-card{cursor:pointer;background-color:#fff;border:1px solid #e1e5e9;border-radius:8px;padding:1.5rem;transition:all .2s}.goal-card:hover{border-color:#667eea;transform:translateY(-4px);box-shadow:0 6px 16px #0000001a}.goal-card__title{color:#333;margin-bottom:.75rem;font-size:1.25rem;font-weight:600}.goal-card__description{color:#666;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-bottom:1rem;font-size:.95rem;line-height:1.5;display:-webkit-box;overflow:hidden}.goal-card__progress{margin-bottom:1rem}.goal-card__meta{justify-content:space-between;align-items:center;font-size:.9rem;display:flex}.goal-card__target{color:#333;font-weight:600}.goal-card__owner{color:#666;margin-top:.75rem;font-size:1rem}.goals-header{align-items:center;gap:1.5rem;margin-bottom:2rem;display:flex}.goals-header .back-btn{color:#333;cursor:pointer;background-color:#f9fafb;border:1px solid #e1e5e9;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;transition:all .2s}.goals-header .back-btn:hover{background-color:#fff;border-color:#667eea}.goals-header h1{color:#333;margin:0;font-size:2rem;font-weight:700}.goals-header .goal-count{color:#666;font-size:1.1rem}@media (width<=768px){.goals-header{flex-direction:column;align-items:flex-start;gap:1rem}.goals-header h1{font-size:1.5rem}}.user-goals-list-container{max-width:1200px;margin:0 auto;padding:2rem 1rem}.user-goals-list-container .loading,.user-goals-list-container .error,.user-goals-list-container .no-goals{text-align:center;color:#666;padding:4rem 1rem;font-size:1.1rem}.user-goals-list-container .error{color:#f44336}.user-goals-list-container .goals-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}@media (width<=768px){.user-goals-list-container{padding:1rem .5rem}.user-goals-list-container .goals-grid{grid-template-columns:1fr;gap:1rem}}.supporting-goals-container{max-width:1200px;margin:0 auto;padding:2rem 1rem}.supporting-goals-container .loading,.supporting-goals-container .error,.supporting-goals-container .no-goals{text-align:center;color:#666;padding:4rem 1rem;font-size:1.1rem}.supporting-goals-container .error{color:#f44336}.supporting-goals-container .goals-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.supporting-goals-container .load-more-btn{color:#333;cursor:pointer;background-color:#f9fafb;border:1px solid #e1e5e9;border-radius:6px;width:100%;margin-top:2rem;padding:.75rem 1rem;font-size:.9rem;transition:all .2s;display:block}.supporting-goals-container .load-more-btn:hover:not(:disabled){background-color:#fff;border-color:#667eea}.supporting-goals-container .load-more-btn:disabled{opacity:.5;cursor:not-allowed}@media (width<=768px){.supporting-goals-container{padding:1rem .5rem}.supporting-goals-container .goals-grid{grid-template-columns:1fr;gap:1rem}}.image-lightbox{z-index:1100;background:#000000eb;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.image-lightbox__close{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;line-height:1;transition:background .2s;display:flex;position:absolute;top:1rem;right:1rem}.image-lightbox__close:hover{background:#ffffff4d}.image-lightbox__img{object-fit:contain;-webkit-user-select:none;user-select:none;border-radius:4px;max-width:90vw;max-height:85vh;display:block}.image-lightbox__prev,.image-lightbox__next{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.75rem;line-height:1;transition:background .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.image-lightbox__prev:hover,.image-lightbox__next:hover{background:#ffffff4d}.image-lightbox__prev{left:1rem}.image-lightbox__next{right:1rem}.image-lightbox__counter{color:#ffffffbf;white-space:nowrap;font-size:.75rem;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}.product-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;gap:1rem;margin-bottom:.75rem;padding:1rem;transition:box-shadow .2s;display:flex}.product-card:hover{box-shadow:0 2px 8px #0000001a}.product-card__thumbnail{background:#f5f5f5;border:1px solid #e1e5e9;border-radius:6px;flex-shrink:0;width:120px;height:120px;position:relative;overflow:hidden}.product-card__thumbnail-img{object-fit:contain;width:100%;height:100%;display:block}.product-card__thumbnail-placeholder{color:#999;background:#f5f5f5;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;width:100%;height:100%;display:flex}.product-card__placeholder-icon{color:#ccc;width:28px;height:28px}.product-card__placeholder-text{color:#999;white-space:nowrap;font-size:.7rem}.product-card__img-prev,.product-card__img-next{color:#fff;cursor:pointer;opacity:0;background:#00000073;border:none;border-radius:4px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:14px;line-height:1;transition:opacity .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.product-card__img-prev{left:2px}.product-card__img-next{right:2px}.product-card:hover .product-card__img-prev,.product-card:hover .product-card__img-next{opacity:1}.product-card__dots{gap:3px;display:flex;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.product-card__dot{background:#ffffff8c;border-radius:50%;width:5px;height:5px;transition:background .2s}.product-card__dot--active{background:#fff}.product-card__content{flex-direction:column;flex:1;gap:.5rem;min-width:0;display:flex}.product-card__top-row{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.product-card__title{color:#333;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.9rem;font-weight:600;overflow:hidden}.product-card__badges{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.product-card__status{white-space:nowrap;border-radius:12px;padding:2px .5rem;font-size:.7rem;font-weight:500;display:inline-block}.product-card__status--draft{color:#666;background-color:#f5f5f5}.product-card__status--active{color:#4caf50;background-color:#e8f5e9}.product-card__status--paused{color:#e65100;background-color:#fff3e0}.product-card__status--deleted{color:#f44336;background-color:#ffebee}.product-card__brand{color:#666;margin:0;font-size:.75rem}.product-card__price{color:#333;font-size:.9rem;font-weight:600}.product-card__fulfillment{color:#999;font-size:.7rem}.product-card__colors{flex-wrap:wrap;gap:.25rem;display:flex}.product-card__color-chip{color:#666;background:#f5f5f5;border-radius:12px;padding:1px .5rem;font-size:.7rem;display:inline-block}.product-card__stock{color:#999;font-size:.7rem}.product-card__specs{color:#999;flex-wrap:wrap;gap:.75rem;font-size:.7rem;display:flex}.product-card__condition{white-space:nowrap;border-radius:12px;padding:2px .5rem;font-size:.7rem;font-weight:500;display:inline-block}.product-card__condition--new{color:#4caf50;background-color:#e8f5e9}.product-card__condition--like-new{color:#1976d2;background-color:#e3f2fd}.product-card__condition--good{color:#666;background-color:#f5f5f5}.product-card__condition--fair{color:#e65100;background-color:#fff3e0}.product-card__condition--poor{color:#f44336;background-color:#ffebee}.product-card__description{color:#666;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.75rem;display:-webkit-box;overflow:hidden}.product-card__actions{flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:.5rem;display:flex}.product-card__actions button{cursor:pointer;border:none;border-radius:4px;padding:.25rem .75rem;font-size:.75rem;font-weight:500;transition:all .2s}.product-card__edit-btn{color:#1976d2;background-color:#e3f2fd}.product-card__edit-btn:hover{color:#fff;background-color:#2196f3}.product-card__activate-btn{color:#4caf50;background-color:#e8f5e9}.product-card__activate-btn:hover{color:#fff;background-color:#4caf50}.product-card__pause-btn{color:#e65100;background-color:#fff3e0}.product-card__pause-btn:hover{color:#fff;background-color:#e65100}.product-card__delete-btn{color:#f44336;background-color:#ffebee}.product-card__delete-btn:hover{color:#fff;background-color:#f44336}.product-card__add-to-shop-btn{color:#fff;background-color:#667eea}.product-card__add-to-shop-btn:hover{background-color:#5568d3}.digital-product-badge{color:#1976d2;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;background-color:#e3f2fd;border-radius:12px;padding:2px .5rem;font-size:.7rem;font-weight:600;display:inline-block}.catalogue-sheet{background:#fff;border:1px solid #e1e5e9;border-radius:8px;flex-direction:column;max-height:calc(100vh - 4rem);display:flex;position:sticky;top:1rem;overflow:hidden}@media (width<=767px){.catalogue-sheet{max-height:none;position:static}}.catalogue-sheet__header{border-bottom:1px solid #e1e5e9;flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.catalogue-sheet__title{color:#333;font-size:.75rem;font-weight:600}.catalogue-sheet__tabs{border-bottom:1px solid #e1e5e9;flex-shrink:0;display:flex}.catalogue-sheet__tab{color:#666;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:.5rem .75rem;font-size:.75rem;font-weight:500;transition:all .2s}.catalogue-sheet__tab--active{color:#667eea;border-bottom-color:#667eea}.catalogue-sheet__tab--disabled{color:#6b7280;cursor:not-allowed}.catalogue-sheet__tab:not(.catalogue-sheet__tab--disabled):hover{color:#333;background:#f5f5f5}.catalogue-sheet__body{flex-direction:column;flex:1;gap:.75rem;padding:.75rem;display:flex;overflow-y:auto}.catalogue-sheet__search{flex-shrink:0;gap:.5rem;display:flex}.catalogue-sheet__search-input{color:#333;border:1px solid #e1e5e9;border-radius:4px;flex:1;padding:.5rem .75rem;font-size:.75rem}.catalogue-sheet__search-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea26}.catalogue-sheet__search-btn{color:#fff;cursor:pointer;background-color:#667eea;border:none;border-radius:4px;font-weight:500;transition:background .2s}.catalogue-sheet__search-btn:hover:not(:disabled){background-color:#5568d3}.catalogue-sheet__search-btn:disabled{opacity:.5;cursor:not-allowed}.catalogue-sheet__search-btn{white-space:nowrap;padding:.5rem .75rem;font-size:.75rem}.catalogue-sheet__list{flex-direction:column;gap:.5rem;display:flex}.catalogue-sheet__item{cursor:grab}.catalogue-sheet__item:active{cursor:grabbing}.catalogue-sheet__item-meta{display:none}.catalogue-sheet__add-btn{color:#fff;cursor:pointer;background-color:#667eea;border:none;border-radius:4px;font-weight:500;transition:background .2s}.catalogue-sheet__add-btn:hover:not(:disabled){background-color:#5568d3}.catalogue-sheet__add-btn:disabled{opacity:.5;cursor:not-allowed}.catalogue-sheet__add-btn{padding:.25rem .75rem;font-size:.75rem}.catalogue-sheet__loading,.catalogue-sheet__empty,.catalogue-sheet__error{text-align:center;color:#999;padding:2rem 1rem;font-size:.75rem}.catalogue-sheet__error{color:#dc3545}.catalogue-sheet__coming-soon{text-align:center;color:#999;padding:4rem 1rem;font-size:.75rem}.goal-shop-curator{padding:1rem 0;position:relative}@media (width>=768px){.goal-shop-curator{grid-template-columns:380px 1fr;align-items:start;gap:1rem;display:grid}}@media (width<=767px){.goal-shop-curator{flex-direction:column;gap:1rem;display:flex}}.goal-shop-curator__main{border:2px dashed #0000;border-radius:6px;min-width:0;transition:border-color .15s,background .15s}.goal-shop-curator__main--drop-active{background:#00000008;border-color:#667eea}.goal-shop-curator__header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.goal-shop-curator__title{color:#333;margin:0;font-size:1.25rem;font-weight:600}.goal-shop-curator__add-btn{color:#fff;cursor:pointer;background-color:#667eea;border:none;border-radius:4px;font-weight:500;transition:background .2s}.goal-shop-curator__add-btn:hover:not(:disabled){background-color:#5568d3}.goal-shop-curator__add-btn:disabled{opacity:.5;cursor:not-allowed}.goal-shop-curator__add-btn{padding:.5rem 1rem;font-size:.875rem}.goal-shop-curator__empty{text-align:center;color:#999;padding:4rem 0}.goal-shop-curator__empty p{margin:0 0 .5rem}.goal-shop-curator__empty-hint{color:#6b7280;font-size:.875rem}.goal-shop-curator__list{flex-direction:column;gap:1rem;display:flex}.goal-shop-curator__item{cursor:grab;border:2px solid #0000;border-radius:6px;flex-direction:row;align-items:flex-start;gap:.5rem;padding:.5rem;transition:border-color .15s;display:flex;position:relative}.goal-shop-curator__item--drag-over{background:#f5f5f5;border-color:#667eea}.goal-shop-curator__item:active{cursor:grabbing}.goal-shop-curator__item .product-card{flex:1;min-width:0;margin-bottom:0}.goal-shop-curator__drag-handle{color:#999;cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;width:20px;padding-top:1rem;font-size:1.25rem;display:flex}.goal-shop-curator__toggle-btn,.goal-shop-curator__remove-btn{cursor:pointer;color:#666;background:#fff;border:1px solid #e1e5e9;border-radius:4px;padding:.25rem .75rem;font-size:.75rem;font-weight:500;transition:background .2s}.goal-shop-curator__toggle-btn:hover,.goal-shop-curator__remove-btn:hover{background:#f5f5f5}.goal-shop-curator__remove-btn{color:#dc3545;border-color:#fcc}.goal-shop-curator__remove-btn:hover{background:#ffebee}.add-to-shop-modal__backdrop{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.add-to-shop-modal{background:#fff;border-radius:6px;flex-direction:column;width:100%;max-width:480px;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 6px 16px #0000001a}.add-to-shop-modal__header{border-bottom:1px solid #e1e5e9;justify-content:space-between;align-items:center;padding:1rem;display:flex}.add-to-shop-modal__title{color:#333;margin:0;font-size:1.25rem;font-weight:600}.add-to-shop-modal__close{color:#666;cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.5rem;line-height:1}.add-to-shop-modal__close:hover{color:#333}.add-to-shop-modal__product{color:#666;background:#f5f5f5;border-bottom:1px solid #e1e5e9;margin:0;padding:.75rem 1rem;font-size:.875rem;font-weight:500}.add-to-shop-modal__goals{flex:1;margin:0;padding:.5rem 0;list-style:none;overflow-y:auto}.add-to-shop-modal__goal-item{justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.add-to-shop-modal__goal-item:hover{background:#f5f5f5}.add-to-shop-modal__goal-title{color:#333;flex:1;font-size:.875rem;font-weight:500}.add-to-shop-modal__add-btn{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:4px;padding:.25rem .75rem;font-size:.75rem;font-weight:500}.add-to-shop-modal__add-btn:hover{background:#5568d3}.add-to-shop-modal__add-btn:disabled{opacity:.5;cursor:not-allowed}.add-to-shop-modal__added{color:#4caf50;font-size:.75rem;font-weight:500}.add-to-shop-modal__error{color:#dc3545;border-top:1px solid #e1e5e9;margin:0;padding:.75rem 1rem;font-size:.875rem}.goal-shop-tab{width:100%}.goal-shop-tab__empty{text-align:center;color:#666;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.goal-shop-tab__empty--owner{background-color:#f9fafb;border:2px dashed #ccc;border-radius:8px;padding:4rem 2rem}.goal-shop-tab__empty-icon{color:#999;background-color:#e0e0e0;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:1rem;font-size:2rem;font-weight:400;display:flex}.goal-shop-tab__empty-title{color:#333;margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.goal-shop-tab__empty-hint{color:#666;max-width:360px;margin:0 0 2rem;font-size:.9rem;line-height:1.5}.goal-shop-tab__manage-btn{color:#fff;cursor:pointer;background-color:#4caf50;border:none;border-radius:4px;padding:.75rem 2rem;font-size:.9rem;font-weight:500;transition:background-color .2s}.goal-shop-tab__manage-btn:hover{background-color:#45a049}.goal-sub-nav{border-bottom:1px solid #e1e5e9;gap:.25rem;margin-bottom:2rem;display:flex}.goal-sub-nav__tab{color:#666;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;transition:color .2s,border-color .2s}.goal-sub-nav__tab:hover{color:#333}.goal-sub-nav__tab--active{color:#667eea;cursor:default;border-bottom-color:#667eea;font-weight:600}.goal-shop-page{max-width:56.25rem;margin:0 auto;padding:2rem 1rem}.goal-shop-page__nav{margin-bottom:1.5rem}.goal-shop-page__back-btn{color:#fff;cursor:pointer;background:#6c757d;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.9rem;transition:background-color .2s}.goal-shop-page__back-btn:hover{background-color:#5a6268}.goal-shop-page__header{border-bottom:1px solid #e1e5e9;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;display:flex}.goal-shop-page__header h1{color:#333;margin:0 0 .25rem;font-size:2rem;font-weight:700}.goal-shop-page__subtitle{color:#666;margin:0;font-size:.9rem}.goal-shop-page__seller-btn{color:#fff;cursor:pointer;white-space:nowrap;background-color:#4caf50;border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500;transition:background-color .2s}.goal-shop-page__seller-btn:hover{background-color:#45a049}.wishlist-item-form{flex-direction:column;gap:1rem;padding:1rem;display:flex}.wishlist-item-form__field{flex-direction:column;gap:.25rem;display:flex}.wishlist-item-form__field label{color:#333;font-size:.875rem;font-weight:500}.wishlist-item-form__field input,.wishlist-item-form__field textarea{color:#333;background:#fff;border:1px solid #e1e5e9;border-radius:4px;padding:.5rem;font-size:.875rem}.wishlist-item-form__field input:focus,.wishlist-item-form__field textarea:focus{border-color:#667eea;outline:none}.wishlist-item-form__field textarea{resize:vertical;min-height:80px}.wishlist-item-form__actions{gap:.5rem;display:flex}.wishlist-item-form__actions button{cursor:pointer;background:#fff;border:1px solid #e1e5e9;border-radius:4px;padding:.5rem 1rem;font-size:.875rem}.wishlist-item-form__actions button[type=submit]{color:#fff;background:#667eea;border-color:#667eea}.wishlist-item-card{background:#fff;border:1px solid #e1e5e9;border-radius:8px;padding:1rem}.wishlist-item-card__header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.wishlist-item-card__title{font-size:1rem;font-weight:600}.wishlist-item-card__status{background:#f5f5f5;border-radius:4px;padding:.25rem .5rem;font-size:.75rem}.wishlist-item-card__description{color:#666;margin:.25rem 0 .5rem;font-size:.875rem}.wishlist-item-card__progress{margin:.5rem 0}.wishlist-item-card__progress-track{background:#f5f5f5;border-radius:4px;height:.5rem;overflow:hidden}.wishlist-item-card__progress-fill{background:#667eea;border-radius:4px;height:100%;transition:width .3s}.wishlist-item-card__progress-label{color:#999;margin-top:.25rem;font-size:.75rem;display:block}.wishlist-item-card__actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.wishlist-item-card__actions button{cursor:pointer;background:0 0;border:1px solid #e1e5e9;border-radius:4px;padding:.25rem .75rem;font-size:.75rem}.wishlist-item-card__actions__fulfill-btn{color:#667eea;border-color:#667eea}.wishlist-item-card__actions__delete-btn{color:#d32f2f}.wishlist-section__header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.wishlist-section__title{margin:0;font-size:1.125rem;font-weight:600}.wishlist-section__add-btn{color:#667eea;cursor:pointer;background:0 0;border:1px solid #667eea;border-radius:4px;padding:.5rem 1rem;font-size:.875rem}.wishlist-section__empty{text-align:center;color:#666;padding:2rem 0}.wishlist-section__empty p{margin:.25rem 0}.wishlist-section__empty-hint{color:#999;font-size:.875rem}.wishlist-section__items{flex-direction:column;gap:.75rem;display:flex}.goal-wishlist-page{max-width:56.25rem;margin:0 auto;padding:2rem 1rem}.goal-wishlist-page__nav{margin-bottom:1.5rem}.goal-wishlist-page__back-btn{color:#fff;cursor:pointer;background:#6c757d;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.9rem;transition:background-color .2s}.goal-wishlist-page__back-btn:hover{background-color:#5a6268}.product-list{width:100%}.product-list__loading,.product-list__error,.product-list__empty{text-align:center;color:#666;padding:4rem 2rem}.product-list__error{color:#f44336}.product-list__empty p:first-child{margin-bottom:.5rem;font-size:1.1rem;font-weight:500}.product-media-upload{flex-direction:column;gap:.75rem;display:flex}.product-media-upload__title{color:#333;margin:0;font-size:.9rem;font-weight:600}.product-media-upload__empty{color:#999;margin:0;font-size:.75rem}.product-media-upload__grid{flex-wrap:wrap;gap:.75rem;display:flex}.product-media-upload__item{border:1px solid #e1e5e9;border-radius:4px;width:96px;height:96px;position:relative;overflow:hidden}.product-media-upload__img{object-fit:contain;width:100%;height:100%}.product-media-upload__remove{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:4px;padding:.25rem .5rem;font-size:.7rem;position:absolute;top:.25rem;right:.25rem}.product-media-upload__remove:hover{background:#000c}.product-media-upload__error{color:#d32f2f;margin:0;font-size:.75rem}.product-media-upload__file-input{display:none}.product-media-upload__add-btn{cursor:pointer;color:#666;border:1px dashed #ddd;border-radius:4px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.75rem;font-weight:500;transition:border-color .2s,color .2s;display:inline-flex}.product-media-upload__add-btn:hover{color:#667eea;border-color:#667eea}.product-form{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000001a}.product-form__error{color:#f44336;background-color:#ffebee;border-radius:4px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.product-form__field{margin-bottom:1.5rem}.product-form__field label{color:#333;margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.product-form__field input,.product-form__field textarea,.product-form__field select{box-sizing:border-box;border:1px solid #ddd;border-radius:4px;width:100%;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.product-form__field input:focus,.product-form__field textarea:focus,.product-form__field select:focus{border-color:#1976d2;outline:none}.product-form__field input:disabled,.product-form__field textarea:disabled,.product-form__field select:disabled{cursor:not-allowed;background-color:#f5f5f5}.product-form__field textarea{resize:vertical;min-height:80px}.product-form__row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.product-form__dim-row{align-items:center;gap:.5rem;display:flex}.product-form__dim-row input{flex:1;min-width:0}.product-form__dim-sep{color:#999;flex-shrink:0;font-size:.75rem}.product-form__actions{justify-content:flex-end;gap:.75rem;margin-top:2rem;display:flex}.product-form__submit-btn{color:#fff;cursor:pointer;background-color:#4caf50;border:none;border-radius:4px;padding:.75rem 2rem;font-size:1rem;font-weight:500;transition:all .2s}.product-form__submit-btn:hover:not(:disabled){background-color:#45a049}.product-form__submit-btn:disabled{opacity:.6;cursor:not-allowed}.product-form__cancel-btn{color:#666;cursor:pointer;background-color:#fff;border:1px solid #ddd;border-radius:4px;padding:.75rem 2rem;font-size:1rem;font-weight:500;transition:all .2s}.product-form__cancel-btn:hover:not(:disabled){background-color:#f5f5f5}.product-form__cancel-btn:disabled{opacity:.6;cursor:not-allowed}.seller-dashboard{max-width:56.25rem;margin:0 auto;padding:2rem}.seller-dashboard__back-btn{color:#666;cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;margin-bottom:1rem;padding:.5rem .75rem;font-size:.875rem;display:inline-flex}.seller-dashboard__back-btn:hover{color:#333}.seller-dashboard__header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.seller-dashboard__header h1{color:#333;margin:0;font-size:2rem;font-weight:700}.seller-dashboard__create-btn{color:#fff;cursor:pointer;background-color:#4caf50;border:none;border-radius:4px;padding:.75rem 2rem;font-size:1rem;font-weight:500;transition:all .2s}.seller-dashboard__create-btn:hover{background-color:#45a049}.seller-dashboard__error{color:#f44336;background-color:#ffebee;border-radius:4px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.seller-dashboard__form{margin-bottom:2rem}.App{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
