:root{--color-primary: #667eea;--color-primary-dark: #764ba2;--color-primary-light: #64b5f6;--color-text-primary: #1a1a1a;--color-text-secondary: #1f2937;--color-text-medium: #4b5563;--color-text-light: #666;--color-text-muted: #6b7280;--color-border: #e5e7eb;--color-border-light: #d1d5db;--color-bg-card: #ffffff;--color-bg-subtle: #f9fafb;--color-bg-light: #f5f5f5;--color-success-bg: #d4edda;--color-success-text: #155724;--color-success-border: #c3e6cb;--color-error-bg: #f8d7da;--color-error-text: #721c24;--color-error-border: #f5c6cb;--color-info-bg: #fef3c7;--color-info-text: #92400e;--color-info-border: #fbbf24;--color-required: #dc2626;--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 2.5rem;--spacing-3xl: 3rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 50px;--transition-fast: .15s;--transition-base: .2s;--transition-slow: .3s;--shadow-sm: 0 2px 8px rgba(102, 126, 234, .25);--shadow-md: 0 4px 12px rgba(102, 126, 234, .35);--shadow-card: 0 4px 12px rgba(0, 0, 0, .1);--gradient-primary: linear-gradient( 135deg, var(--color-primary) 0%, var(--color-primary-dark) 100% )}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:var(--color-text-light);display:flex;flex-direction:column}p{margin:1rem 0}a{color:var(--color-primary);text-decoration:none}ul,ol{margin-left:2rem}h1{color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.intro{margin-bottom:var(--spacing-md);color:var(--color-text-light);font-size:1.1rem}.section-heading{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--color-border);color:var(--color-text-secondary)}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:600;font-size:1rem;line-height:1.5;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-base);text-decoration:none;display:inline-block;width:fit-content;vertical-align:middle}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-large{padding:var(--spacing-md) var(--spacing-xl);font-size:1.1rem}.btn-gradient{padding:.625rem 1.25rem;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast);white-space:nowrap}.btn-gradient:hover{opacity:.9}.card{background:var(--color-bg-card);padding:var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid var(--color-border);border-left:4px solid var(--color-primary);transition:box-shadow var(--transition-base),transform var(--transition-base),border-left-color var(--transition-base)}.card:hover{border-left-color:var(--color-primary-dark);box-shadow:var(--shadow-card);transform:translateY(-2px)}.card h2,.card h3,.card h4{margin-top:0;color:var(--color-text-secondary)}.card h2{margin-bottom:var(--spacing-sm);font-size:1.5rem}.card h3{margin-bottom:var(--spacing-sm);font-size:1.3rem}.card h4{margin-bottom:var(--spacing-sm);font-size:1.2rem}.card h2 a,.card h3 a,.card h4 a{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-base)}.card h2 a:hover,.card h3 a:hover,.card h4 a:hover{color:var(--color-primary)}.card h5{margin-top:var(--spacing-md);margin-bottom:var(--spacing-xs);color:var(--color-text-secondary);font-size:1rem}.card p{margin:0 0 var(--spacing-xs) 0;color:var(--color-text-medium);line-height:1.6}.card p:last-child{margin-bottom:0}.card ul{margin:var(--spacing-xs) 0 0 0;padding-left:var(--spacing-lg);color:var(--color-text-medium)}.card li{margin:.4rem 0;line-height:1.6}.card a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-base)}.card a:hover{color:var(--color-primary-dark);text-decoration:underline}.grid-2col{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.grid-full{grid-column:1 / -1}input[type=text],input[type=email],input[type=tel],input[type=url],input[type=password],textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;transition:border-color var(--transition-base),box-shadow var(--transition-base)}input:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:600;color:var(--color-text-light)}.required{color:var(--color-required)}.alert{padding:.875rem var(--spacing-md);border-radius:var(--radius-md);font-size:.95rem;margin-bottom:var(--spacing-md)}.alert-success{background-color:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.alert-error{background-color:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-border)}.alert-info{background-color:var(--color-info-bg);color:var(--color-info-text);border:1px solid var(--color-info-border)}header{background-color:var(--color-text-primary);color:#fff;padding:var(--spacing-md) var(--spacing-xl)}nav{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.logo{font-size:1.5rem;font-weight:700;color:#fff;text-decoration:none}.nav-links{display:flex;gap:var(--spacing-xl);list-style:none}.nav-links a{color:#fff;text-decoration:none;transition:color var(--transition-slow)}.nav-links a:hover{color:var(--color-primary-light)}.account-link a{padding:.4rem .8rem;border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-sm);font-weight:500}.account-link a:hover{background-color:#ffffff1a;border-color:#ffffff80}.home-link{display:list-item}main{max-width:1200px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-md);width:100%;flex:1}footer{background-color:var(--color-bg-light);padding:1.25rem;text-align:center;margin-top:auto}.social-links{display:flex;justify-content:center;gap:var(--spacing-lg)}.social-links a{color:var(--color-text-light);text-decoration:none;font-size:1.1rem;transition:color var(--transition-slow)}.social-links a:hover{color:var(--color-primary-light)}@media(max-width:768px){header{padding:var(--spacing-sm) var(--spacing-md)}nav{flex-direction:row;justify-content:space-between;gap:var(--spacing-xs)}.logo{font-size:1rem}.nav-links{flex-direction:row;gap:.8rem;font-size:.85rem}.account-link,.home-link{display:none}main{padding:var(--spacing-md)}h1{font-size:1.6rem}.intro{font-size:1rem}.section-heading{font-size:1.5rem}footer{padding:var(--spacing-md)}.social-links{gap:var(--spacing-lg)}.social-links a{font-size:1rem}.grid-2col{grid-template-columns:1fr;gap:var(--spacing-md)}.card{padding:var(--spacing-md)}.card h2{font-size:1.25rem}.card h3{font-size:1.15rem}.card h4{font-size:1.1rem}}@media(max-width:389px){.logo{display:none}.nav-links{gap:1.1rem}}.modal{display:none;position:fixed;inset:0;z-index:1000;align-items:center;justify-content:center}.modal.active{display:flex}.modal-overlay{position:absolute;inset:0;background:#00000080}.modal-content{position:relative;background:#fff;border-radius:var(--radius-lg);max-width:800px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 24px #0003}.modal-close{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background:none;border:none;font-size:2rem;cursor:pointer;color:var(--color-text-light);line-height:1;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;z-index:1}.modal-close:hover{color:var(--color-text-primary)}.modal-body{padding:var(--spacing-xl)}.modal-body h2{margin:0 0 var(--spacing-xs);color:var(--color-text-primary);font-size:1.75rem}.modal-intro{margin:0 0 var(--spacing-lg);color:var(--color-text-light);font-size:.9375rem}.optional{color:var(--color-text-muted);font-weight:400;font-size:.875rem}.char-count{margin-top:.25rem;text-align:right;font-size:.8125rem;color:var(--color-text-muted)}.form-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-lg)}.btn-cancel,.btn-submit{padding:.625rem 1.25rem;border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast)}.btn-cancel{background:#f3f4f6;color:#374151}.btn-cancel:hover{background:#e5e7eb}.btn-submit{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff}.btn-submit:hover{opacity:.9}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.success-message{text-align:center}.success-message h3{color:#059669;margin:0 0 var(--spacing-sm);font-size:1.5rem}.success-message p{color:#374151;margin:0 0 var(--spacing-lg);font-size:1rem}.btn-close-success{padding:.625rem 1.5rem;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast)}.btn-close-success:hover{opacity:.9}@media(max-width:768px){.modal-content{width:95%;max-height:95vh}.modal-body{padding:var(--spacing-lg) var(--spacing-md)}.modal-body h2{font-size:1.5rem;padding-right:2rem}}.tippy-box[data-theme~=dark]{background-color:#1a1a1a;font-size:.875rem;border-radius:6px}.tippy-box[data-theme~=dark][data-placement^=top]>.tippy-arrow:before{border-top-color:#1a1a1a}.tippy-content{padding:.5rem .75rem}.auth-container{max-width:400px;margin:0 auto}.auth-form{margin-bottom:var(--spacing-lg)}.btn-full{width:100%}.help-text{margin-top:var(--spacing-xs);font-size:.875rem;color:var(--color-text-muted)}.auth-links{text-align:center;margin-bottom:var(--spacing-xl);color:var(--color-text-muted)}.auth-links a{color:var(--color-primary);text-decoration:none}.auth-links a:hover{text-decoration:underline}.auth-links .separator{margin:0 var(--spacing-sm)}.claim-profile{text-align:center;padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.claim-profile p{margin-bottom:var(--spacing-xs);color:var(--color-text-muted)}.claim-profile a{color:var(--color-primary);text-decoration:none;font-weight:600}.claim-profile a:hover{text-decoration:underline}.autocomplete-container{position:relative}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-top:none;border-radius:0 0 4px 4px;max-height:200px;overflow-y:auto;display:none;z-index:10;box-shadow:0 4px 6px #0000001a}.autocomplete-dropdown.active{display:block}.autocomplete-item{padding:.875rem 1rem;cursor:pointer;transition:background-color .15s}.autocomplete-item:hover{background-color:#f3f4f6}.selected-roles{display:flex;flex-wrap:wrap;gap:.625rem;margin-top:.75rem}.role-tag{background:var(--gradient-primary);color:#fff;padding:.625rem 1.125rem;border-radius:50px;font-size:.9375rem;font-weight:500;display:inline-flex;align-items:center;gap:.625rem;box-shadow:0 2px 8px #667eea40;transition:all .2s ease}.role-tag:hover{box-shadow:0 4px 12px #667eea59;transform:translateY(-1px)}.role-tag button{background:#ffffff40;border:none;color:#fff;cursor:pointer;font-size:1.125rem;line-height:1;padding:.25rem;width:1.375rem;height:1.375rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;font-weight:700;margin-left:.125rem}.role-tag button:hover{background:#fff6;transform:scale(1.1)}.admin-header{margin-bottom:1rem}.admin-header h1{margin:0}.admin-section{margin-bottom:3rem;padding:2rem;background:#f9f9f9;border-radius:var(--radius-lg);border:1px solid #e0e0e0}@media(max-width:768px){.admin-section{padding:1rem;margin-bottom:1.5rem}}.banner[data-astro-cid-kggsjsm4]{background:var(--gradient-primary);color:#fff;padding:.75rem 2rem;box-shadow:0 2px 8px #0000001a}.banner-content[data-astro-cid-kggsjsm4]{max-width:1200px;margin:0 auto;text-align:center;font-size:.95rem}.banner-content[data-astro-cid-kggsjsm4] p{margin:0;line-height:1.4}.banner-content[data-astro-cid-kggsjsm4] a{color:gold;text-decoration:underline;font-weight:500}.banner-content[data-astro-cid-kggsjsm4] a:hover{color:#ffed4e}@media(max-width:768px){.banner[data-astro-cid-kggsjsm4]{padding:.75rem 1rem}.banner-content[data-astro-cid-kggsjsm4]{font-size:.9rem}}
