:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}#root{min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.App{min-height:100vh;display:flex;flex-direction:column}.App-header{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 20px #0000001a;position:sticky;top:0;z-index:100}.App-header nav{max-width:1200px;margin:0 auto;padding:0 1rem}.App-header nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:space-between;min-height:60px}.App-header nav ul li{margin:0}.App-header nav ul li:first-child{margin-right:auto}.App-header nav ul li:first-child a{font-weight:700;font-size:1.25rem;color:#fff;text-decoration:none;transition:opacity .2s ease}.App-header nav ul li:first-child a:hover{opacity:.8}.App-header nav ul li:not(:first-child){margin-left:1.5rem}.App-header nav ul li a{color:#ffffffe6;text-decoration:none;padding:.5rem 1rem;border-radius:6px;transition:all .2s ease;font-weight:500}.App-header nav ul li a:hover{background-color:#ffffff1a;color:#fff}.App-header nav ul li button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.5rem 1rem;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease}.App-header nav ul li button:hover{background:#fff3;border-color:#ffffff4d}.App main{flex:1;background:#f8fafc;min-height:calc(100vh - 60px)}@media (max-width: 768px){.App-header nav ul{flex-wrap:wrap;min-height:auto;padding:1rem 0}.App-header nav ul li:first-child{margin-right:0;margin-bottom:.5rem;flex-basis:100%;text-align:center}.App-header nav ul li:not(:first-child){margin-left:.5rem;margin-right:.5rem}}.toast{display:flex;align-items:flex-start;padding:12px 16px;margin-bottom:8px;min-height:52px;max-width:400px;border-radius:8px;box-shadow:0 4px 12px #0000001a;color:#fff;font-family:inherit;font-size:14px;line-height:1.5;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:toastSlideIn .3s ease-out;transform-origin:top right}.toast.toast-exit{animation:toastFadeOut .2s ease-in forwards}.toast--success{background:linear-gradient(135deg,#27ae60,#2ecc71);border-left:4px solid #1e8449}.toast--error{background:linear-gradient(135deg,#e74c3c,#ec7063);border-left:4px solid #c0392b}.toast--warning{background:linear-gradient(135deg,#f39c12,#f5b041);border-left:4px solid #d68910}.toast--info{background:linear-gradient(135deg,#3498db,#5dade2);border-left:4px solid #2980b9}.toast__content{display:flex;align-items:flex-start;gap:12px;flex:1;min-width:0}.toast__icon{font-size:16px;line-height:1;margin-top:2px;flex-shrink:0}.toast__message{flex:1;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.toast__close{background:none;border:none;color:inherit;cursor:pointer;padding:4px;margin:-4px -4px -4px 8px;border-radius:4px;font-size:18px;line-height:1;flex-shrink:0;transition:background-color .15s ease;opacity:.8}.toast__close:hover{opacity:1;background-color:#fff3}.toast__close:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}@keyframes toastSlideIn{0%{transform:translate(100%) scale(.95);opacity:0}to{transform:translate(0) scale(1);opacity:1}}@keyframes toastFadeOut{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(100%) scale(.95);opacity:0}}@media (prefers-reduced-motion: reduce){.toast{animation:toastFadeIn .2s ease-out}.toast.toast-exit{animation:toastFadeOut .15s ease-in forwards}@keyframes toastFadeIn{0%{opacity:0}to{opacity:1}}}@media (prefers-contrast: high){.toast{border:2px solid currentColor;box-shadow:0 2px 8px #0000004d}}@media (max-width: 480px){.toast{max-width:calc(100vw - 32px);margin-left:16px;margin-right:16px}}.toast-container{position:fixed;z-index:9999;pointer-events:none;padding:20px;max-height:calc(100vh - 40px);overflow-y:auto;overflow-x:hidden}.toast-container .toast{pointer-events:auto}.toast-container--top-right{top:0;right:0;display:flex;flex-direction:column;align-items:flex-end}.toast-container--top-left{top:0;left:0;display:flex;flex-direction:column;align-items:flex-start}.toast-container--bottom-right{bottom:0;right:0;display:flex;flex-direction:column-reverse;align-items:flex-end}.toast-container--bottom-left{bottom:0;left:0;display:flex;flex-direction:column-reverse;align-items:flex-start}.toast-container--top-center{top:0;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center}.toast-container--bottom-center{bottom:0;left:50%;transform:translate(-50%);display:flex;flex-direction:column-reverse;align-items:center}.toast-container::-webkit-scrollbar{width:4px}.toast-container::-webkit-scrollbar-track{background:transparent}.toast-container::-webkit-scrollbar-thumb{background:#0003;border-radius:2px}.toast-container::-webkit-scrollbar-thumb:hover{background:#0000004d}@media (max-width: 768px){.toast-container{padding:16px;max-height:calc(100vh - 32px)}.toast-container--top-right,.toast-container--top-left{top:0;left:0;right:0;transform:none;align-items:center}.toast-container--bottom-right,.toast-container--bottom-left{bottom:0;left:0;right:0;transform:none;align-items:center}}@media (prefers-contrast: high){.toast-container{-webkit-backdrop-filter:none;backdrop-filter:none}}@media (prefers-reduced-motion: reduce){.toast-container .toast{animation-duration:.1s}}.login-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:#f8fafc;padding:2rem}.login-page h1{font-size:2.5rem;color:#2c3e50;margin-bottom:2rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-page form{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 16px #0000001a;width:100%;max-width:400px}.login-page div{margin-bottom:1rem}.login-page label{display:block;margin-bottom:.5rem;font-weight:600;color:#2c3e50}.login-page input{width:100%;padding:.75rem;border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;background:#fff;color:#2c3e50;box-sizing:border-box}.login-page input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.login-page input:disabled{background:#f8f9fa;cursor:not-allowed}.login-page button{width:100%;padding:.75rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.login-page button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.login-page button:disabled{background:#bdc3c7;cursor:not-allowed;transform:none;box-shadow:none}.login-links{text-align:center;margin-top:1.5rem}.login-links a{color:#667eea;text-decoration:none;font-size:.9rem}.login-links a:hover{text-decoration:underline}@media (max-width: 480px){.login-page{padding:1rem}.login-page form{padding:1.5rem}.login-page h1{font-size:2rem}}.email-verification-container{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 16px #0000001a;width:100%;max-width:500px;text-align:center}.verification-content{color:#2c3e50}.email-icon{font-size:3rem;margin-bottom:1rem}.verification-message{font-size:1.1rem;margin-bottom:.5rem}.email-display{font-size:1.1rem;color:#667eea;margin:1rem 0 1.5rem}.verification-instructions{line-height:1.6;margin-bottom:2rem;color:#5a6c7d}.verification-actions{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.resend-button,.login-button{width:100%;padding:.75rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.resend-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.resend-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.resend-button:disabled{background:#bdc3c7;cursor:not-allowed;transform:none;box-shadow:none}.login-button{background:#f8f9fa;color:#667eea;border:2px solid #667eea}.login-button:hover{background:#667eea;color:#fff}.help-text{text-align:left;font-size:.9rem;line-height:1.5;color:#5a6c7d;border-top:1px solid #e1e8ed;padding-top:1.5rem}.help-text p{margin-bottom:.75rem}.help-text p:last-child{margin-bottom:0}@media (max-width: 480px){.email-verification-container{padding:1.5rem}.verification-actions{gap:.75rem}}.password-input-container{position:relative;display:flex;align-items:center}.password-input{width:100%;padding:.75rem 2.5rem .75rem .75rem;border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;background:#fff;color:#2c3e50;box-sizing:border-box}.password-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.password-input.password-match{border-color:#22c55e;background-color:#f0fdf4}.password-input.password-match:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1a}.password-input.password-mismatch{border-color:#ef4444;background-color:#fef2f2}.password-input.password-mismatch:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.password-indicator{position:absolute;right:.75rem;font-size:1.2rem;font-weight:700;pointer-events:none}.password-input.password-match+.password-indicator{color:#22c55e}.password-input.password-mismatch+.password-indicator{color:#ef4444}.password-error{display:block;color:#ef4444;font-size:.875rem;margin-top:.25rem;font-weight:500}.forgot-password-page{max-width:400px;margin:2rem auto;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.forgot-password-page h1{text-align:center;margin-bottom:1rem;color:#333}.forgot-password-page p{text-align:center;margin-bottom:2rem;color:#666;line-height:1.5}.forgot-password-page form{display:flex;flex-direction:column;gap:1rem}.forgot-password-page div{display:flex;flex-direction:column}.forgot-password-page label{margin-bottom:.5rem;font-weight:500;color:#333}.forgot-password-page input{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.forgot-password-page input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.forgot-password-page input:disabled{background-color:#f5f5f5;cursor:not-allowed}.forgot-password-page button{padding:.75rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .2s}.forgot-password-page button:hover:not(:disabled){background-color:#0056b3}.forgot-password-page button:disabled{background-color:#6c757d;cursor:not-allowed}.forgot-password-links{text-align:center;margin-top:2rem}.forgot-password-links a{color:#007bff;text-decoration:none}.forgot-password-links a:hover{text-decoration:underline}.forgot-password-success{text-align:center}.forgot-password-success h1{color:#28a745;margin-bottom:1rem}.forgot-password-success p{margin-bottom:1rem}.forgot-password-success strong{color:#333}.reset-password-page{max-width:400px;margin:2rem auto;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.reset-password-page h1{text-align:center;margin-bottom:1rem;color:#333}.reset-password-page p{text-align:center;margin-bottom:2rem;color:#666;line-height:1.5}.reset-password-page form{display:flex;flex-direction:column;gap:1rem}.reset-password-page div{display:flex;flex-direction:column}.reset-password-page label{margin-bottom:.5rem;font-weight:500;color:#333}.reset-password-page input{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.reset-password-page input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.reset-password-page input:disabled{background-color:#f5f5f5;cursor:not-allowed}.reset-password-page button{padding:.75rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .2s}.reset-password-page button:hover:not(:disabled){background-color:#0056b3}.reset-password-page button:disabled{background-color:#6c757d;cursor:not-allowed}.reset-password-error,.reset-password-success{text-align:center}.reset-password-error h1{color:#dc3545;margin-bottom:1rem}.reset-password-success h1{color:#28a745;margin-bottom:1rem}.reset-password-error p,.reset-password-success p{margin-bottom:2rem}.reset-password-error a,.reset-password-success a{color:#007bff;text-decoration:none;font-weight:500}.reset-password-error a:hover,.reset-password-success a:hover{text-decoration:underline}.profile-page{max-width:600px;margin:0 auto;padding:2rem}.profile-header{text-align:center;margin-bottom:2rem}.profile-header h1{font-size:2.5rem;color:#2c3e50;margin-bottom:.5rem}.profile-subtitle{font-size:1.1rem;color:#7f8c8d;margin:0}.profile-form{background:#fff;border:1px solid #e1e8ed;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.form-group input.error{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.success-message{background-color:#d4edda;color:#155724;padding:1rem;border-radius:8px;border:1px solid #c3e6cb;margin-bottom:1.5rem;font-weight:500}.error-message{background-color:#f8d7da;color:#721c24;padding:1rem;border-radius:8px;border:1px solid #f5c6cb;margin-bottom:1.5rem;font-weight:500}.loading-page,.no-user-page{display:flex;justify-content:center;align-items:center;min-height:50vh;font-size:1.1rem;color:#666}.email-preferences-section{margin-top:2rem}.form-section-header{margin-bottom:1.5rem}.form-section-header h3{font-size:1.5rem;color:#2c3e50;margin-bottom:.5rem}.section-subtitle{font-size:1rem;color:#7f8c8d;margin:0}.email-preferences-form{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem}.radio-group{margin-bottom:1rem}.radio-option{display:flex;align-items:flex-start;padding:1rem;margin-bottom:.75rem;background:#fff;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;transition:all .2s ease}.radio-option:hover{border-color:#3498db;background-color:#f8f9fb}.radio-option:has(input:checked){border-color:#3498db;background-color:#e3f2fd}.radio-option input[type=radio]{margin-right:.75rem;margin-top:.125rem;width:auto;flex-shrink:0}.radio-content{display:flex;flex-direction:column;flex-grow:1}.radio-label{font-weight:600;color:#2c3e50;margin-bottom:.25rem}.radio-description{font-size:.9rem;color:#6c757d;line-height:1.4}.email-info{margin-top:1rem;padding:.75rem;background:#e8f4f8;border:1px solid #b8daff;border-radius:6px}.last-sent-info{margin:0;font-size:.9rem;color:#495057}@media (max-width: 768px){.profile-page{padding:1rem}.profile-header h1{font-size:2rem}.profile-form{padding:1.5rem}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}.radio-option{padding:.75rem}.radio-option input[type=radio]{margin-right:.5rem}.email-preferences-form{padding:1rem}}.create-request-form-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.create-request-form-container{background:#fff;border-radius:12px;padding:2rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 30px #0000004d}.form-header{text-align:center;margin-bottom:2rem}.form-header h2{margin:0 0 .5rem;color:#2c3e50;font-size:1.8rem}.form-header p{margin:0;color:#7f8c8d;font-size:1rem}.create-request-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:#2c3e50;font-size:.9rem}.form-group input,.form-group textarea,.form-group select{padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.form-group input.error,.form-group textarea.error,.form-group select.error{border-color:#e74c3c;box-shadow:0 0 0 3px #e74c3c1a}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:80px}.error-message{color:#e74c3c;font-size:.85rem;font-weight:500}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid #e1e8ed}.form-actions button{padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:1rem;min-width:120px}.form-actions button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 480px){.create-request-form-overlay{padding:.5rem}.create-request-form-container{padding:1.5rem}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.request-card{background:#fff;border:1px solid #e1e8ed;border-radius:12px;padding:1.5rem;transition:all .2s ease;position:relative}.request-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.request-card.own-request{border-left:4px solid #3498db;background:linear-gradient(135deg,#fff,#f8fbff)}.request-card.group-request{border-left:4px solid #27ae60;background:linear-gradient(135deg,#fff,#f8fff9)}.request-card.expired{opacity:.7;border-left-color:#95a5a6;background:linear-gradient(135deg,#fff,#f8f9fa)}.request-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.request-item{margin:0;font-size:1.2rem;font-weight:600;color:#2c3e50;line-height:1.3;flex:1}.status-badge{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.status-open{background-color:#e3f2fd;color:#1976d2;border:1px solid #bbdefb}.status-claimed{background-color:#fff3e0;color:#f57c00;border:1px solid #ffcc02}.status-fulfilled{background-color:#e8f5e8;color:#388e3c;border:1px solid #c8e6c9}.status-expired{background-color:#ffebee;color:#d32f2f;border:1px solid #ffcdd2}.request-details{margin-bottom:1rem}.request-meta{margin-bottom:.75rem}.needed-by{font-size:.95rem;color:#34495e;font-weight:500}.expired-indicator{color:#e74c3c;font-weight:600}.store-preference,.pickup-notes{margin:.5rem 0;font-size:.9rem;color:#34495e;line-height:1.4}.store-preference strong,.pickup-notes strong{color:#2c3e50;font-weight:600}.claimed-info{display:flex;align-items:center;gap:.5rem;margin:.75rem 0;flex-wrap:wrap}.claimed-badge{background-color:#fff3e0;color:#f57c00;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;border:1px solid #ffcc02}.claimed-date{font-size:.85rem;color:#7f8c8d}.request-actions{margin:1rem 0;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.request-status-text{font-size:.9rem;color:#7f8c8d;font-style:italic}.request-status-text.success{color:#27ae60;font-weight:500}.request-footer{border-top:1px solid #e1e8ed;padding-top:.75rem;margin-top:1rem}.created-date{font-size:.85rem;color:#95a5a6}.creator-info{margin-top:.75rem;padding:.5rem .75rem;background:#27ae600d;border-radius:6px;border-left:3px solid #27ae60}.creator-name{font-size:.875rem;color:#27ae60;font-weight:500}.btn-primary,.btn-success,.btn-danger{padding:.5rem 1rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.9rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:120px}.btn-small{padding:.375rem .75rem;font-size:.85rem;min-width:100px}.btn-success{background-color:#27ae60;color:#fff}.btn-success:hover:not(:disabled){background-color:#229954;transform:translateY(-1px)}.btn-danger{background-color:#e74c3c;color:#fff}.btn-danger:hover:not(:disabled){background-color:#c0392b;transform:translateY(-1px)}.btn-primary:disabled,.btn-success:disabled,.btn-danger:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary:focus,.btn-success:focus,.btn-danger:focus{outline:2px solid #3498db;outline-offset:2px}@media (max-width: 768px){.request-card{padding:1rem}.request-header{flex-direction:column;align-items:flex-start;gap:.5rem}.request-item{font-size:1.1rem}.request-actions{flex-direction:column;align-items:stretch}.btn-primary,.btn-success,.btn-danger{width:100%;justify-content:center}.claimed-info{flex-direction:column;align-items:flex-start}}.request-list{width:100%}.request-list-container{display:flex;flex-direction:column;gap:1rem}.request-list-empty{min-height:200px;display:flex;align-items:center;justify-content:center}.empty-message{font-size:1.1rem;margin:0 0 .5rem;color:#34495e}.empty-sub-message{font-size:.95rem;margin:0;color:#95a5a6;line-height:1.4}.request-list-container>*{animation:fadeInUp .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.request-list-container{gap:.75rem}.empty-state{padding:1.5rem}.empty-message{font-size:1rem}.empty-sub-message{font-size:.9rem}}.user-limits-display{background:var(--color-white);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.user-limits-title{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.user-limits-grid{display:grid;gap:1rem}.limit-item{display:flex;flex-direction:column;gap:.5rem}.limit-item-header{display:flex;justify-content:space-between;align-items:center}.limit-item-label{font-weight:500;color:var(--color-text-primary);font-size:.875rem}.limit-item-count{font-size:.875rem;font-weight:600;color:var(--color-text-secondary)}.limit-bar{width:100%;height:8px;background-color:var(--color-background);border-radius:4px;overflow:hidden}.limit-bar-fill{height:100%;border-radius:4px;transition:width .3s ease,background-color .3s ease}.limit-bar-fill--normal{background-color:var(--color-success)}.limit-bar-fill--near-limit{background-color:var(--color-warning)}.limit-bar-fill--at-limit{background-color:var(--color-error)}.limit-item-warning{font-size:.75rem;color:var(--color-error);font-weight:500;margin-top:.25rem}.user-limits-compact{padding:.75rem 1rem;background:var(--color-background);border-radius:6px;border:1px solid var(--color-border)}.limits-summary{display:flex;gap:1rem;flex-wrap:wrap}.limits-summary-item{font-size:.875rem;color:var(--color-text-secondary);white-space:nowrap}@media (min-width: 768px){.user-limits-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.limits-summary{justify-content:center}}@media (prefers-color-scheme: dark){.user-limits-display,.user-limits-compact{background:var(--color-dark-surface);border-color:var(--color-dark-border)}}.dashboard-page{max-width:1200px;margin:0 auto;padding:2rem;background:#f8fafc;min-height:100vh}.dashboard-loading{display:flex;justify-content:center;align-items:center;min-height:50vh;font-size:1.1rem;color:#666}.dashboard-error{display:flex;justify-content:center;align-items:center;min-height:50vh;font-size:1.1rem;color:#d32f2f}.dashboard-header{text-align:center;margin-bottom:3rem}.dashboard-header h1{font-size:2.5rem;color:#2c3e50;margin-bottom:.5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard-subtitle{font-size:1.1rem;color:#7f8c8d;margin:0}.dashboard-content{display:flex;flex-direction:column;gap:2rem}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media (max-width: 768px){.dashboard-grid{grid-template-columns:1fr}.dashboard-page{padding:1rem}}.dashboard-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;border:1px solid #e1e8ed}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e1e8ed}.section-header h2{font-size:1.5rem;color:#2c3e50;margin:0}.section-subtitle{font-size:.9rem;color:#7f8c8d;font-style:italic}.requests-container,.groups-container{min-height:200px}.empty-state{text-align:center;padding:2rem;color:#7f8c8d}.empty-state p{margin-bottom:.5rem}.empty-state-sub{font-size:.9rem;color:#95a5a6}.requests-list,.groups-list{display:flex;flex-direction:column;gap:1rem}.request-card,.group-card{padding:1rem;border:1px solid #e1e8ed;border-radius:8px;background:#fafbfc;transition:all .2s ease}.group-card-clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.group-card-clickable:hover{border-color:#667eea;background:#fff}.group-card-clickable:active{transform:translateY(0)}.group-card-clickable:focus{outline:2px solid #667eea;outline-offset:2px}.request-card:hover,.group-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.request-card h3,.group-card h3{margin:0 0 .5rem;font-size:1.1rem;color:#2c3e50}.request-meta,.group-meta{font-size:.9rem;color:#7f8c8d;margin:.25rem 0}.store-preference{font-size:.9rem;color:#34495e;margin:.5rem 0;font-style:italic}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-open{background-color:#e3f2fd;color:#1976d2}.status-claimed{background-color:#fff3e0;color:#f57c00}.status-fulfilled{background-color:#e8f5e8;color:#388e3c}.status-expired{background-color:#ffebee;color:#d32f2f}.request-actions{margin-top:1rem;display:flex;gap:.5rem}.user-request{border-left:4px solid #3498db}.group-request{border-left:4px solid #27ae60}.groups-section{grid-column:1 / -1}.btn-primary,.btn-secondary{padding:.5rem 1rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block;text-align:center}.btn-primary:hover{background-color:#2980b9;transform:translateY(-1px)}.btn-secondary:hover{background-color:#d5dbdb;transform:translateY(-1px)}.btn-disabled{background-color:#bdc3c7!important;color:#7f8c8d!important;cursor:not-allowed!important;opacity:.6;transform:none!important}.btn-disabled:hover{background-color:#bdc3c7!important;transform:none!important}.btn-small{padding:.375rem .75rem;font-size:.9rem}.pending-invitations{margin-bottom:2rem}.pending-invitations-loading{text-align:center;padding:2rem;color:#666}.pending-invitations-header{margin-bottom:1.5rem}.pending-invitations-header h3{font-size:1.5rem;color:#2c3e50;margin-bottom:.5rem}.pending-invitations-subtitle{font-size:1rem;color:#7f8c8d;margin:0}.invitations-list{display:flex;flex-direction:column;gap:1rem}.invitation-card{background:#fff;border:2px solid #3498db;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #3498db1a;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease}.invitation-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3498db33}.invitation-info{flex-grow:1}.invitation-header{margin-bottom:.75rem}.group-name{font-size:1.25rem;color:#2c3e50;margin:0 0 .25rem;font-weight:600}.invitation-meta{font-size:.9rem;color:#7f8c8d;font-weight:500}.invitation-details{display:flex;flex-direction:column;gap:.25rem}.invited-time,.expires-time{font-size:.85rem;color:#95a5a6}.expires-time{color:#e67e22;font-weight:500}.invitation-actions{display:flex;gap:.75rem;flex-shrink:0}.btn-small{padding:.5rem 1rem;font-size:.9rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:80px}.btn-primary.btn-small{background-color:#27ae60;color:#fff}.btn-primary.btn-small:hover:not(:disabled){background-color:#219a52;transform:translateY(-1px);box-shadow:0 2px 8px #27ae604d}.btn-secondary.btn-small{background-color:#ecf0f1;color:#2c3e50;border:1px solid #bdc3c7}.btn-secondary.btn-small:hover:not(:disabled){background-color:#d5dbdb;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.btn-small:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.invitation-card{flex-direction:column;gap:1rem;align-items:stretch;padding:1rem}.invitation-actions{justify-content:stretch}.btn-small{flex:1}.group-name{font-size:1.1rem}.invitation-details{margin-bottom:.5rem}}@media (max-width: 480px){.invitation-actions{flex-direction:column;gap:.5rem}.pending-invitations{margin-bottom:1.5rem}.invitation-card{padding:.75rem}}.pending-outgoing-invitations{margin-bottom:2rem;padding:1.5rem;background:#f8f9fa;border-radius:12px;border:1px solid #e9ecef}.pending-outgoing-invitations-header{margin-bottom:1rem}.pending-outgoing-invitations-header h3{margin:0 0 .5rem;color:#343a40;font-size:1.25rem;font-weight:600}.pending-outgoing-invitations-subtitle{margin:0;color:#6c757d;font-size:.9rem}.pending-outgoing-invitations-loading{color:#6c757d;font-style:italic;padding:1rem;text-align:center}.outgoing-invitations-list{display:flex;flex-direction:column;gap:.75rem}.outgoing-invitation-card{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:1rem;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease-in-out}.outgoing-invitation-card:hover{border-color:#007bff;transform:translateY(-1px);box-shadow:0 2px 8px #007bff1a}.outgoing-invitation-info{flex:1}.outgoing-invitation-header{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem}.invited-email{font-weight:600;color:#343a40;font-size:1rem}.group-name{color:#007bff;font-size:.9rem;font-weight:500}.outgoing-invitation-details{display:flex;flex-direction:column;gap:.25rem}.sent-time{color:#6c757d;font-size:.85rem}.expires-time{color:#fd7e14;font-size:.85rem;font-weight:500}.outgoing-invitation-actions{display:flex;align-items:center}.outgoing-invitation-actions .btn-small{padding:.375rem .75rem;font-size:.8rem;border-radius:4px;border:1px solid;cursor:pointer;transition:all .2s ease-in-out}.outgoing-invitation-actions .btn-danger{background:#dc3545;color:#fff;border-color:#dc3545}.outgoing-invitation-actions .btn-danger:hover:not(:disabled){background:#c82333;border-color:#bd2130}.outgoing-invitation-actions .btn-danger:disabled{opacity:.6;cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:1.5rem;border-radius:8px;max-width:400px;width:90%;box-shadow:0 4px 6px #0000001a}.modal-content h3{margin:0 0 1rem;color:#343a40}.modal-content p{margin:0 0 1rem;color:#6c757d;line-height:1.5}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.modal-actions .btn-secondary,.modal-actions .btn-danger{padding:.5rem 1rem;border:1px solid;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s ease-in-out}.modal-actions .btn-secondary{background:#6c757d;color:#fff;border-color:#6c757d}.modal-actions .btn-secondary:hover:not(:disabled){background:#5a6268;border-color:#545b62}.modal-actions .btn-danger{background:#dc3545;color:#fff;border-color:#dc3545}.modal-actions .btn-danger:hover:not(:disabled){background:#c82333;border-color:#bd2130}.modal-actions .btn-secondary:disabled,.modal-actions .btn-danger:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.outgoing-invitation-card{flex-direction:column;align-items:flex-start;gap:.75rem}.outgoing-invitation-header{flex-direction:column}.outgoing-invitation-details{flex-direction:row;gap:1rem}}.groups-page{max-width:1200px;margin:0 auto;padding:2rem}.groups-loading,.groups-error{display:flex;justify-content:center;align-items:center;min-height:50vh;font-size:1.1rem}.groups-loading{color:#666}.groups-error{color:#d32f2f}.groups-header{text-align:center;margin-bottom:3rem}.groups-header h1{font-size:2.5rem;color:#2c3e50;margin-bottom:.5rem}.groups-subtitle{font-size:1.1rem;color:#7f8c8d;margin:0}.groups-content{display:flex;flex-direction:column;gap:2rem}.groups-actions{display:flex;justify-content:flex-start}.create-group-form{background:#fff;border:1px solid #e1e8ed;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.create-group-form h3{margin:0 0 1.5rem;color:#2c3e50}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.form-group input:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.form-actions{display:flex;gap:1rem;justify-content:flex-end}.groups-list{min-height:300px}.empty-state{text-align:center;padding:4rem 2rem;color:#7f8c8d}.empty-state h3{font-size:1.5rem;color:#34495e;margin-bottom:1rem}.empty-state p{font-size:1.1rem;margin-bottom:.5rem;line-height:1.5}.empty-state-sub{font-size:1rem;color:#95a5a6}.groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}@media (max-width: 768px){.groups-grid{grid-template-columns:1fr}}.group-card{background:#fff;border:1px solid #e1e8ed;border-radius:12px;padding:1.5rem;transition:all .2s ease;box-shadow:0 2px 8px #0000000d}.group-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.group-card-highlighted{border:2px solid #667eea!important;background:linear-gradient(135deg,#f8f9ff,#fff)!important;box-shadow:0 4px 20px #667eea26!important;animation:highlightPulse 2s ease-in-out}@keyframes highlightPulse{0%{box-shadow:0 4px 20px #667eea4d}50%{box-shadow:0 8px 30px #667eea66}to{box-shadow:0 4px 20px #667eea26}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:400px;width:90%;box-shadow:0 8px 32px #0003;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content h3{margin:0 0 1rem;color:#2c3e50;font-size:1.25rem}.modal-content p{margin:0 0 2rem;color:#7f8c8d;line-height:1.5}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}.btn-danger{background:#e74c3c;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-danger:hover:not(:disabled){background:#c0392b;transform:translateY(-1px)}.btn-danger:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}@media (max-width: 480px){.modal-content{padding:1.5rem;margin:1rem}.modal-actions{flex-direction:column}.btn-secondary,.btn-danger{width:100%}}.group-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.group-name{margin:0;font-size:1.3rem;color:#2c3e50;font-weight:600;flex:1;line-height:1.3}.group-role{background-color:#ecf0f1;color:#2c3e50;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.group-role[data-role=owner]{background-color:#e3f2fd;color:#1976d2}.group-details{margin-bottom:1.5rem}.group-created{font-size:.9rem;color:#7f8c8d;margin:0}.group-actions{display:flex;gap:.5rem;flex-wrap:wrap}.btn-primary,.btn-secondary{padding:.5rem 1rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-size:.9rem}.btn-small{padding:.375rem .75rem;font-size:.85rem}.btn-primary:hover:not(:disabled){background-color:#2980b9;transform:translateY(-1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary:hover:not(:disabled){background-color:#d5dbdb;transform:translateY(-1px)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.groups-page{padding:1rem}.groups-header h1{font-size:2rem}.create-group-form{padding:1.5rem}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}.group-actions{flex-direction:column}.group-actions button{width:100%;justify-content:center}}.invite-form{background:#f8f9fa;border-radius:8px;padding:1rem;margin-top:1rem;border:1px solid #e9ecef}.invite-form h4{margin:0 0 1rem;color:#2c3e50;font-size:1rem}.invite-form .form-group{margin-bottom:1rem}.invite-form .form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#2c3e50;font-size:.9rem}.invite-form .form-group input{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.invite-form .form-group input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db1a}.invite-form .form-actions{display:flex;gap:.5rem;justify-content:flex-end}.members-list{background:#f8f9fa;border-radius:8px;padding:1rem;margin-top:1rem;border:1px solid #e9ecef}.members-list h4{margin:0 0 1rem;color:#2c3e50;font-size:1rem}.members-grid{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.member-card{background:#fff;border:1px solid #e1e8ed;border-radius:6px;padding:.75rem;display:flex;justify-content:space-between;align-items:flex-start}.member-actions{display:flex;align-items:center;gap:.5rem}.member-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.member-name{font-weight:600;color:#2c3e50;font-size:.9rem}.member-email{color:#6c757d;font-size:.8rem}.member-area{color:#6c757d;font-size:.8rem;font-style:italic}.member-role{background-color:#ecf0f1;color:#2c3e50;padding:.2rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.member-role[data-role=owner]{background-color:#e3f2fd;color:#1976d2}.members-actions{display:flex;justify-content:flex-end}.invite-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.invite-header h4{margin:0}.invitation-count{display:flex;align-items:center}.count-badge{background:#e3f2fd;color:#1976d2;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;border:1px solid #bbdefb}.count-badge.at-limit{background:#ffebee;color:#c62828;border-color:#ffcdd2}.form-help-text{color:#6c757d;font-size:.875rem;margin-top:.25rem;line-height:1.4}.invite-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.invite-container{background:#fff;border-radius:16px;padding:3rem;max-width:500px;width:100%;text-align:center;box-shadow:0 20px 40px #0000001a}.invite-loading h2{color:#2c3e50;margin:0}.invite-error,.invite-success,.invite-login-required,.invite-join{display:flex;flex-direction:column;gap:1.5rem}.invite-error h1,.invite-success h1,.invite-login-required h1,.invite-join h1{color:#2c3e50;font-size:2rem;margin:0}.invite-error p,.invite-success p,.invite-login-required p{color:#34495e;font-size:1.1rem;line-height:1.6;margin:0}.group-info{background:#f8f9fa;border-radius:12px;padding:1.5rem;border:1px solid #e9ecef}.group-info h2{color:#2c3e50;font-size:1.5rem;margin:0 0 1rem}.group-info p{color:#6c757d;margin:0;line-height:1.5}.error-message{background-color:#ffebee;color:#c62828;padding:1rem;border-radius:8px;border:1px solid #ffcdd2;font-weight:500}.invite-actions{display:flex;gap:1rem;justify-content:center}.invite-actions button{flex:1;max-width:150px}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:1rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn-primary{background-color:#3498db;color:#fff}.btn-primary:hover:not(:disabled){background-color:#2980b9;transform:translateY(-2px);box-shadow:0 4px 12px #3498db4d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background-color:#ecf0f1;color:#2c3e50;border:1px solid #bdc3c7}.btn-secondary:hover:not(:disabled){background-color:#d5dbdb;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.btn-primary:focus,.btn-secondary:focus{outline:2px solid #3498db;outline-offset:2px}.invite-success,.invite-success h1{color:#27ae60}.invite-error h1{color:#e74c3c}@media (max-width: 768px){.invite-page{padding:1rem}.invite-container{padding:2rem}.invite-error h1,.invite-success h1,.invite-login-required h1,.invite-join h1{font-size:1.5rem}.invite-actions{flex-direction:column}.invite-actions button{max-width:none}}.feedback-page{max-width:800px;margin:0 auto;padding:2rem;min-height:100vh;background:#f8fafc}.feedback-container{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 16px #0000001a}.feedback-header{text-align:center;margin-bottom:2rem}.feedback-header h1{font-size:2.5rem;color:#2c3e50;margin-bottom:.5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.feedback-subtitle{font-size:1.1rem;color:#7f8c8d;line-height:1.5;margin:0}.feedback-form{max-width:600px;margin:0 auto}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#2c3e50}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;background:#fff;color:#2c3e50;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#f8f9fa;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:120px;font-family:inherit;line-height:1.5}.form-group select{cursor:pointer}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e1e8ed}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:120px}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-primary:disabled{background:#bdc3c7;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary:hover:not(:disabled){background:#d5dbdb;border-color:#95a5a6}.btn-secondary:disabled{background:#f8f9fa;color:#95a5a6;cursor:not-allowed}@media (max-width: 768px){.feedback-page{padding:1rem}.feedback-container{padding:1.5rem}.feedback-header h1{font-size:2rem}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.about-page{min-height:100vh;background:#f8fafc}.about-container{max-width:1000px;margin:0 auto;padding:2rem}.about-header{text-align:center;margin-bottom:3rem}.about-header h1{font-size:3rem;color:#2c3e50;margin-bottom:1rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-subtitle{font-size:1.3rem;color:#7f8c8d;line-height:1.5;margin:0;font-weight:400}.about-content{display:flex;flex-direction:column;gap:3rem}.mission-section,.how-it-works-section,.values-section,.get-started-section{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 4px 16px #0000001a}.mission-section h2,.how-it-works-section h2,.values-section h2,.get-started-section h2{font-size:2rem;color:#2c3e50;margin-bottom:1.5rem;text-align:center}.mission-section p,.get-started-section p{font-size:1.1rem;line-height:1.7;color:#34495e;text-align:center;max-width:800px;margin:0 auto}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.step{text-align:center;padding:1.5rem;border-radius:8px;background:#f8f9fa;border:1px solid #e9ecef}.step-number{display:inline-block;width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 1rem}.step h3{font-size:1.2rem;color:#2c3e50;margin-bottom:1rem}.step p{color:#6c757d;line-height:1.6;margin:0}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}.value{text-align:center;padding:1.5rem}.value h3{font-size:1.3rem;color:#2c3e50;margin-bottom:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.value p{color:#6c757d;line-height:1.6;margin:0}.cta-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.btn-primary,.btn-secondary{padding:.75rem 2rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:180px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-secondary{background:#ecf0f1;color:#2c3e50;border:2px solid #bdc3c7}.btn-secondary:hover{background:#d5dbdb;border-color:#95a5a6}@media (max-width: 768px){.about-container{padding:1rem}.about-header h1{font-size:2.5rem}.about-subtitle{font-size:1.1rem}.mission-section,.how-it-works-section,.values-section,.get-started-section{padding:2rem}.mission-section h2,.how-it-works-section h2,.values-section h2,.get-started-section h2{font-size:1.8rem}.steps-grid,.values-grid{grid-template-columns:1fr}.cta-buttons{flex-direction:column;align-items:center}.btn-primary,.btn-secondary{width:100%;max-width:300px}}@media (max-width: 480px){.about-header h1{font-size:2rem}.mission-section,.how-it-works-section,.values-section,.get-started-section{padding:1.5rem}.step-number{width:50px;height:50px;font-size:1.2rem}}.metric-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;transition:box-shadow .2s ease}.metric-card:hover{box-shadow:0 4px 6px -1px #0000001a}.metric-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.metric-card__title{margin:0;font-size:.875rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.metric-card__trend{font-size:1.125rem;font-weight:600}.metric-card__trend--up{color:#10b981}.metric-card__trend--down{color:#ef4444}.metric-card__trend--neutral{color:#6b7280}.metric-card__value{font-size:2rem;font-weight:700;color:#1f2937;line-height:1;margin-bottom:.25rem}.metric-card__subtitle{font-size:.875rem;color:#6b7280;margin:0}@media (max-width: 640px){.metric-card{padding:1rem}.metric-card__value{font-size:1.5rem}}.admin-page{max-width:1200px;margin:0 auto;padding:2rem}.admin-page__header{margin-bottom:2rem;text-align:center}.admin-page__title{font-size:2.5rem;font-weight:700;color:#1f2937;margin:0;margin-bottom:.5rem}.admin-page__subtitle{font-size:1.125rem;color:#6b7280;margin:0}.admin-page__metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}.admin-page__footer{text-align:center;padding-top:2rem;border-top:1px solid #e5e7eb}.admin-page__updated{font-size:.875rem;color:#6b7280;margin:0}.admin-page__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.admin-page__spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-left:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-page__loading p{color:#6b7280;font-size:1.125rem;margin:0}.admin-page__error{text-align:center;padding:4rem 2rem}.admin-page__error h2{color:#dc2626;margin-bottom:1rem}.admin-page__error p{color:#6b7280;margin-bottom:2rem}.admin-page__retry-button{background-color:#3b82f6;color:#fff;border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s ease}.admin-page__retry-button:hover{background-color:#2563eb}@media (max-width: 768px){.admin-page{padding:1rem}.admin-page__title{font-size:2rem}.admin-page__metrics{grid-template-columns:1fr;gap:1rem}}@media (max-width: 640px){.admin-page__title{font-size:1.75rem}.admin-page__subtitle{font-size:1rem}}
