.org-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:1rem;padding:1.5rem;transition:box-shadow .2s,transform .2s;box-shadow:0 1px 3px #0000001a}.org-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.org-card-title{color:#1a202c;margin:0 0 .25rem;font-size:1.25rem;font-weight:600}.org-card-slug{color:#718096;margin:0 0 1rem;font-size:.875rem}.org-card-roles{flex-wrap:wrap;gap:.75rem;display:flex}.role-button{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:500;transition:background-color .2s,transform .1s;display:inline-flex}.role-button:hover:not(:disabled){transform:scale(1.02)}.role-button:active:not(:disabled){transform:scale(.98)}.role-button:disabled{opacity:.6;cursor:not-allowed}.role-button:focus-visible{outline-offset:2px;outline:2px solid #3182ce}.role-partner{color:#2b6cb0;background-color:#ebf8ff}.role-partner:hover:not(:disabled){background-color:#bee3f8}.role-supplier{color:#c2410c;background-color:#fff7ed}.role-supplier:hover:not(:disabled){background-color:#fed7aa}.role-hirer{color:#166534;background-color:#f0fdf4}.role-hirer:hover:not(:disabled){background-color:#bbf7d0}.role-admin{color:#111827;background-color:#f3f4f6}.role-admin:hover:not(:disabled){background-color:#d1d5db}.role-icon{font-size:1.125rem}.role-label{white-space:nowrap}.nav-page{background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%) 50%/cover no-repeat fixed;flex-direction:column;min-height:100vh;display:flex}.nav-page:before{content:"";z-index:-1;pointer-events:none;background:#ffffffbf;position:fixed;inset:0}.nav-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.nav-logo img{height:32px}.nav-logout-btn{color:#4a5568;cursor:pointer;background:0 0;border:1px solid #e2e8f0;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;transition:all .2s}.nav-logout-btn:hover{background:#f7fafc;border-color:#cbd5e0}.nav-content{background:#ffffffeb;border-radius:12px;flex:1;width:100%;max-width:800px;margin:0 auto;padding:2rem;box-shadow:0 4px 12px #00000014}.nav-title{color:#1a202c;text-align:center;margin:0 0 .5rem;font-size:1.875rem;font-weight:700}.nav-subtitle{color:#718096;text-align:center;margin:0 0 2rem;font-size:1.125rem}.nav-cards{flex-direction:column;gap:1rem;display:flex}.nav-activity-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-top:1.5rem;padding:1.25rem;box-shadow:0 1px 3px #00000014}.nav-activity-title{color:#1a202c;margin:0 0 .25rem;font-size:1.125rem}.nav-activity-subtitle{color:#4a5568;margin:0 0 1rem;font-size:.9rem}.nav-activity-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.nav-activity-item{margin:0}.nav-activity-link{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem;text-decoration:none;transition:border-color .2s,background-color .2s;display:block}.nav-activity-link:hover{background:#edf2f7;border-color:#cbd5e0}.nav-activity-link:focus-visible{outline-offset:2px;outline:2px solid #3182ce}.nav-activity-label{color:#1a202c;margin-bottom:.125rem;font-weight:600;display:block}.nav-activity-detail{color:#4a5568;font-size:.875rem;display:block}.org-card-admin{background:linear-gradient(135deg,#f9fafb 0%,#f3f4f6 100%);border-color:#111827}.nav-footer{text-align:center;color:#718096;background:#fff;border-top:1px solid #e2e8f0;padding:1rem 2rem;font-size:.875rem}.nav-footer a{color:#3182ce;text-decoration:none}.nav-footer a:hover{text-decoration:underline}.nav-page-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}.nav-page-error h1{color:#c53030;margin:0 0 1rem;font-size:1.5rem}.nav-page-error p{color:#718096;margin:0 0 1.5rem}.nav-btn-primary{color:#fff;cursor:pointer;background:#3182ce;border:none;border-radius:8px;margin-bottom:.75rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500}.nav-btn-primary:hover{background:#2c5282}.nav-btn-secondary{color:#4a5568;cursor:pointer;background:0 0;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem}.nav-btn-secondary:hover{background:#f7fafc}@media (width<=640px){.nav-header,.nav-content{padding:1rem}.nav-title{font-size:1.5rem}.org-card-roles{flex-direction:column}.role-button{justify-content:center;width:100%}}.legal-page{color:#1a1a1a;background:#f8f9fa;min-height:100vh;font-family:system-ui,-apple-system,sans-serif}.legal-nav{z-index:10;background:#fff;border-bottom:1px solid #e5e7eb;align-items:center;gap:16px;height:56px;padding:0 24px;display:flex;position:sticky;top:0}.legal-nav-logo{color:#1e4d3e;align-items:center;gap:8px;font-size:15px;font-weight:700;text-decoration:none;display:flex}.legal-nav-logo svg{flex-shrink:0}.legal-nav-sep{color:#d1d5db;font-size:18px;line-height:1}.legal-nav-title{color:#6b7280;font-size:14px;font-weight:400}.legal-content{max-width:760px;margin:0 auto;padding:48px 24px 80px}.legal-header{border-bottom:2px solid #e5e7eb;margin-bottom:40px;padding-bottom:32px}.legal-header h1{color:#111827;margin:0 0 12px;font-size:32px;font-weight:700;line-height:1.2}.legal-meta{color:#6b7280;flex-wrap:wrap;gap:16px;font-size:13px;display:flex}.legal-meta-badge{color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;display:inline-flex}.legal-meta-badge--pending{color:#854d0e;background:#fefce8;border-color:#fde047}.legal-section{margin-bottom:40px}.legal-section h2{color:#111827;margin:0 0 16px;padding-top:8px;font-size:20px;font-weight:600}.legal-section h3{color:#374151;margin:24px 0 12px;font-size:16px;font-weight:600}.legal-section p{color:#374151;margin:0 0 14px;font-size:15px;line-height:1.7}.legal-section ul,.legal-section ol{color:#374151;margin:0 0 14px;padding-left:24px;font-size:15px;line-height:1.7}.legal-section li{margin-bottom:6px}.legal-table-wrap{border:1px solid #e5e7eb;border-radius:6px;margin:0 0 16px;overflow-x:auto}.legal-table{border-collapse:collapse;width:100%;font-size:14px}.legal-table th{color:#374151;text-align:left;white-space:nowrap;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:10px 14px;font-weight:600}.legal-table td{color:#374151;vertical-align:top;border-bottom:1px solid #f3f4f6;padding:10px 14px}.legal-table tr:last-child td{border-bottom:none}.legal-pending{color:#92400e;background:#fef3c7;border-radius:3px;padding:1px 5px;font-size:12px;font-style:italic}.legal-divider{border:none;border-top:1px solid #e5e7eb;margin:32px 0}.legal-footer{color:#374151;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-top:48px;padding:24px;font-size:14px}.legal-footer p{margin:0 0 6px;line-height:1.6}.legal-footer p:last-child{margin-bottom:0}.legal-footer strong{color:#111827}.legal-link{color:#1e4d3e;text-decoration:underline}.legal-link:hover{color:#163d30}@media (width<=600px){.legal-content{padding:32px 16px 60px}.legal-header h1{font-size:24px}.legal-nav-title{display:none}}:root{--color-primary:#06c;--color-primary-hover:#0052a3;--color-primary-light:#e6f0fa;--color-white:#fff;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-error:#dc2626;--color-error-light:#fef2f2;--color-success:#16a34a;--color-success-light:#f0fdf4;--color-warning:#d97706;--color-warning-light:#fffbeb;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--transition-fast:.15s ease;--transition-normal:.2s ease;--transition-slow:.3s ease}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-gray-900);background-color:var(--color-gray-50);min-height:100vh;line-height:1.5}a{color:var(--color-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary-hover);text-decoration:underline}button{font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:none}.app{flex-direction:column;min-height:100vh;display:flex}.loading-container{padding:var(--space-8);justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.loading-fullscreen{background-color:var(--color-white);z-index:1000;background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;position:fixed;inset:0}.loading-fullscreen:before{content:"";z-index:-1;pointer-events:none;background:#ffffffbf;position:fixed;inset:0}.loading-spinner{width:48px;height:48px}.spinner-svg{animation:1.5s linear infinite rotate}.spinner-circle{stroke:var(--color-primary);stroke-linecap:round;animation:1.5s ease-in-out infinite dash}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1 150;stroke-dashoffset:0}50%{stroke-dasharray:90 150;stroke-dashoffset:-35px}to{stroke-dasharray:90 150;stroke-dashoffset:-124px}}.loading-message{color:var(--color-gray-600);font-size:var(--font-size-sm)}.login-page{padding:var(--space-4);background:linear-gradient(135deg, var(--color-gray-50) 0%, var(--color-gray-100) 100%);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;flex:1;justify-content:center;align-items:center;display:flex}.login-page:before{content:"";z-index:-1;pointer-events:none;background:#ffffffbf;position:fixed;inset:0}.login-container{background:var(--color-white);border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-xl);padding:var(--space-10)}.login-header{text-align:center;margin-bottom:var(--space-8)}.logo{justify-content:center;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);display:flex}.logo-icon{width:40px;height:40px}.logo-text{font-size:var(--font-size-2xl);color:var(--color-gray-900);font-weight:700}.logo-text-accent{color:var(--color-primary)}.login-title{font-size:var(--font-size-3xl);color:var(--color-gray-900);margin-bottom:var(--space-2);font-weight:700}.login-subtitle{color:var(--color-gray-500);font-size:var(--font-size-base)}.login-error{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background-color:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--radius-lg);margin-bottom:var(--space-6);display:flex}.error-icon{background-color:var(--color-error);width:20px;height:20px;color:var(--color-white);border-radius:var(--radius-full);font-size:var(--font-size-xs);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.error-content{flex:1}.error-message{color:var(--color-error);font-size:var(--font-size-sm);margin-bottom:var(--space-2)}.error-dismiss{color:var(--color-error);font-size:var(--font-size-sm);cursor:pointer;font-weight:500;text-decoration:underline}.error-dismiss:hover{color:var(--color-gray-700)}.login-success{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);margin-bottom:var(--space-6);background-color:#ecfdf5;border:1px solid #10b981;display:flex}.success-icon{width:20px;height:20px;color:var(--color-white);border-radius:var(--radius-full);font-size:var(--font-size-xs);background-color:#10b981;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.success-message{color:#065f46;font-size:var(--font-size-sm)}.form-link-row{margin-top:calc(-1 * var(--space-2));margin-bottom:var(--space-2);justify-content:flex-end;display:flex}.form-link-row .link-button{font-size:var(--font-size-sm)}.btn{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);font-size:var(--font-size-base);border-radius:var(--radius-lg);transition:all var(--transition-normal);cursor:pointer;font-weight:500;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-gray-900);color:var(--color-white);border:1px solid var(--color-gray-900)}.btn-primary:hover:not(:disabled){background-color:var(--color-gray-800);border-color:var(--color-gray-800)}.btn-secondary{color:var(--color-gray-600);border:1px solid var(--color-gray-200);background-color:#0000}.btn-secondary:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-300)}.btn-icon{flex-shrink:0;width:20px;height:20px}.btn-spinner{border:2px solid var(--color-white);border-radius:var(--radius-full);border-top-color:#0000;width:20px;height:20px;animation:.8s linear infinite rotate}.login-actions{gap:var(--space-4);margin-bottom:var(--space-8);flex-direction:column;display:flex}.btn-signin{width:100%;padding:var(--space-4) var(--space-6)}.btn-signin-alt{font-size:var(--font-size-sm)}.login-tabs{border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--space-1);margin-bottom:var(--space-6);background-color:var(--color-gray-50);display:flex}.login-tab{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);color:var(--color-gray-500);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background-color:#0000;border:none;flex:1;font-weight:500}.login-tab:hover:not(:disabled):not(.active){color:var(--color-gray-700);background-color:var(--color-gray-100)}.login-tab.active{color:var(--color-gray-900);background-color:var(--color-white);box-shadow:var(--shadow-sm)}.login-tab:disabled{opacity:.6;cursor:not-allowed}.email-login-form{gap:var(--space-4);flex-direction:column;display:flex}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-label{font-size:var(--font-size-sm);color:var(--color-gray-700);font-weight:500}.form-input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--font-size-base);color:var(--color-gray-900);background-color:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.form-input::placeholder{color:var(--color-gray-400)}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.form-input:disabled{background-color:var(--color-gray-50);color:var(--color-gray-500);cursor:not-allowed}.login-divider{align-items:center;gap:var(--space-4);margin:var(--space-6) 0;color:var(--color-gray-400);font-size:var(--font-size-sm);display:flex}.login-divider:before,.login-divider:after{content:"";background-color:var(--color-gray-200);flex:1;height:1px}.login-social-buttons{gap:var(--space-3);flex-direction:column;display:flex}.btn-microsoft{background-color:var(--color-white);color:var(--color-gray-700);border:1px solid var(--color-gray-300)}.btn-microsoft:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-400)}.btn-google{background-color:var(--color-white);color:var(--color-gray-700);border:1px solid var(--color-gray-300)}.btn-google:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-400)}.btn-spinner-secondary{border-color:var(--color-gray-400);border-top-color:#0000}.login-toggle{text-align:center;margin-top:var(--space-6);color:var(--color-gray-600);font-size:var(--font-size-sm)}.link-button{color:var(--color-primary);cursor:pointer;font-weight:500;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.link-button:hover:not(:disabled){color:var(--color-primary-hover)}.link-button:disabled{color:var(--color-gray-400);cursor:not-allowed}.login-footer{text-align:center;border-top:1px solid var(--color-gray-200);padding-top:var(--space-6)}.login-help{color:var(--color-gray-600);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.help-link{font-weight:500}.login-terms{color:var(--color-gray-400);font-size:var(--font-size-xs)}.terms-link,.privacy-link{color:var(--color-gray-500)}.terms-link:hover,.privacy-link:hover{color:var(--color-gray-700)}.redirect-container{min-height:100vh;padding:var(--space-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.redirect-message{color:var(--color-gray-600);margin-top:var(--space-4)}.redirect-link{font-weight:500}.redirect-fallback{color:var(--color-gray-400);font-size:var(--font-size-sm);margin-top:var(--space-2)}.redirect-error{min-height:100vh;padding:var(--space-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.redirect-error h2{color:var(--color-error);margin-bottom:var(--space-4)}.redirect-error p{color:var(--color-gray-600);margin-bottom:var(--space-6)}.error-back-link{font-weight:500}.logout-page{min-height:100vh;padding:var(--space-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.logout-page h1{font-size:var(--font-size-2xl);color:var(--color-gray-900);margin-bottom:var(--space-4)}.logout-page p{color:var(--color-gray-600);margin-bottom:var(--space-6)}.not-found-page{min-height:100vh;padding:var(--space-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.not-found-page h1{font-size:var(--font-size-3xl);color:var(--color-gray-900);margin-bottom:var(--space-4)}.not-found-page p{color:var(--color-gray-600);margin-bottom:var(--space-6)}.access-denied{min-height:100vh;padding:var(--space-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.access-denied h2{color:var(--color-error);margin-bottom:var(--space-4)}.access-denied p{color:var(--color-gray-600);margin-bottom:var(--space-2)}@media (width<=480px){.login-container{padding:var(--space-6);border-radius:var(--radius-lg)}.login-title{font-size:var(--font-size-2xl)}.btn-signin{padding:var(--space-3) var(--space-4)}}.signup-container{max-width:480px}.signup-interest-fieldset{border:none;margin:0;padding:0}.signup-interest-fieldset legend{margin-bottom:var(--space-2)}.signup-interest-options{gap:var(--space-2);flex-direction:column;display:flex}.signup-interest-card{gap:var(--space-1);padding:var(--space-3) var(--space-4);border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex;position:relative}.signup-interest-card:hover{border-color:var(--color-primary)}.signup-interest-card--selected{border-color:var(--color-primary);background-color:var(--color-primary-light);box-shadow:0 0 0 2px var(--color-primary-light)}.signup-interest-radio{opacity:0;width:0;height:0;position:absolute}.signup-interest-label{font-size:var(--font-size-sm);color:var(--color-gray-900);font-weight:600}.signup-interest-desc{font-size:var(--font-size-xs);color:var(--color-gray-500)}.signup-interest-fieldset:disabled .signup-interest-card{opacity:.6;cursor:not-allowed}.form-label-optional{color:var(--color-gray-400);font-weight:400}.form-textarea{resize:vertical;min-height:80px;font-family:inherit;line-height:1.5}.signup-captcha{justify-content:flex-start;display:flex}.signup-success-container{text-align:center;max-width:420px}.signup-success{align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.signup-success-icon{background-color:var(--color-success);width:56px;height:56px;color:var(--color-white);border-radius:var(--radius-full);font-size:var(--font-size-xl);justify-content:center;align-items:center;font-weight:700;display:flex}.signup-success-hint{color:var(--color-gray-500);font-size:var(--font-size-sm);margin-top:var(--space-2)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
