@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;700&display=swap";:root{--bg: #f5f2ec;--bg-card: #faf8f3;--bg-warm: #f0ede6;--border: #ddd9d0;--border-input: #c9c4b8;--border-focus: #5a3e2b;--text: #2b2318;--text-secondary: #5c4f3f;--text-muted: #9b8f80;--text-label: #a09484;--accent: #c45c26;--accent-light: #f0d9cc;--accent-green: #3d6b47;--success: #3d6b47;--danger: #c0392b;--shadow-sm: 2px 3px 8px rgba(43,35,24,.06);--shadow-md: 4px 8px 20px rgba(43,35,24,.1);--shadow-lg: 6px 16px 40px rgba(43,35,24,.13);--radius-sm: 3px;--radius-md: 6px;--radius-lg: 10px;--transition: .18s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-size:16px;scroll-behavior:smooth}body{font-family:Outfit,DM Sans,-apple-system,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23noise)' opacity='0.025'/%3E%3C/svg%3E")}a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;transition:opacity var(--transition)}a:hover{opacity:.72}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-1.5deg)}75%{transform:rotate(1.5deg)}}.fade-in{animation:fadeIn .45s ease both}.fade-up{animation:fadeUp .55s cubic-bezier(.22,1,.36,1) both}.stagger-children>*{opacity:0}.stagger-children>*:nth-child(1){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .08s both}.stagger-children>*:nth-child(2){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .14s both}.stagger-children>*:nth-child(3){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .2s both}.stagger-children>*:nth-child(4){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .26s both}.stagger-children>*:nth-child(5){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .32s both}.stagger-children>*:nth-child(6){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .38s both}.stagger-children>*:nth-child(7){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .44s both}.stagger-children>*:nth-child(8){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .5s both}.stagger-children>*:nth-child(9){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .56s both}.stagger-children>*:nth-child(10){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .62s both}.stagger-children>*:nth-child(11){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .68s both}.stagger-children>*:nth-child(12){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .74s both}.stagger-children>*:nth-child(n+13){animation:fadeUp .55s cubic-bezier(.22,1,.36,1) .8s both}.app{min-height:100%;display:flex;flex-direction:column}.main-content{flex:1;padding-top:78px}.navbar{position:fixed;top:0;left:0;right:0;z-index:100;background:var(--bg-card);border-bottom:1.5px solid var(--border);height:78px;box-shadow:0 2px 12px #2b23180d}.navbar-inner{max-width:1100px;margin:0 auto;padding:0 28px;height:100%;display:flex;align-items:center;justify-content:space-between}.navbar-brand{display:flex;align-items:center;gap:10px;font-family:Outfit,sans-serif;font-size:1.1rem;color:var(--text);letter-spacing:-.01em;text-decoration:none;position:relative}.navbar-brand:after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:2.5px;background-color:var(--accent);transform:scaleX(0);transition:transform .3s cubic-bezier(.22,1,.36,1);transform-origin:left}.navbar-brand:hover:after{transform:scaleX(1)}.navbar-brand:hover{opacity:1}.navbar-links{display:flex;align-items:center;gap:2px}.nav-link{padding:7px 14px;font-size:.8125rem;font-weight:500;color:var(--text-secondary);text-decoration:none;transition:color var(--transition);letter-spacing:.01em;position:relative}.nav-link:hover{color:var(--accent);opacity:1}.nav-link:after{content:"";position:absolute;bottom:0;left:14%;width:72%;height:2px;background-color:var(--accent);transform:scaleX(0);transition:transform .3s cubic-bezier(.22,1,.36,1)}.nav-link:hover:after{transform:scaleX(1)}.menu-toggle{display:none;background:none;border:none;padding:8px;cursor:pointer;color:var(--text)}.menu-toggle span{display:block;width:20px;height:1.5px;background:var(--text);transition:all .25s ease;position:relative}.menu-toggle span:before,.menu-toggle span:after{content:"";position:absolute;left:0;width:100%;height:1.5px;background:var(--text);transition:all .25s ease}.menu-toggle span:before{top:-6px}.menu-toggle span:after{top:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 20px;border:1.5px solid transparent;border-radius:var(--radius-md);font-family:"DM Sans",inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .18s ease;text-decoration:none;white-space:nowrap;letter-spacing:.015em;position:relative}.btn-primary{background:var(--text);color:#fff;border-color:var(--text);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-outline{background:transparent;color:var(--text);border-color:var(--border)}.btn-outline:hover{background:var(--bg-warm);border-color:var(--text);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-danger{background:transparent;color:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.btn-success{background:var(--accent-green);color:#fff;border-color:var(--accent-green)}.btn-success:hover{background:#2d5236}.btn:active{transform:translateY(1px) scale(.98)}.btn-sm{padding:6px 12px;font-size:.75rem}.btn-xs{padding:4px 10px;font-size:.6875rem}.btn-full{width:100%;padding:11px;font-size:.875rem}.btn:disabled{opacity:.38;cursor:not-allowed;transform:none!important}.btn-ai{display:inline-flex;align-items:center;justify-content:center;gap:8.5px;min-width:13em;height:3.25em;border-radius:32px;font-size:14.5px;font-family:inherit;font-weight:600;border:none;position:relative;overflow:hidden;z-index:1;background:#fff;color:var(--text-secondary);cursor:pointer;box-shadow:5px 5px 11px #d6d3cc,-5px -5px 11px #fff;transition:all .3s ease}.btn-ai:before{content:"";width:0;height:100%;border-radius:32px;position:absolute;top:0;left:0;background-image:linear-gradient(to right,#0f8ed8,#08578b);transition:.5s ease;display:block;z-index:-1}.btn-ai:hover{color:#fff}.btn-ai:hover:before{width:100%}.btn-ai:active{transform:scale(.96)}.btn-ai:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.ai-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;background:#6366f108;border-radius:var(--radius-lg);border:1px dashed var(--accent-light);margin:16px 0}.ai-recommendation-card{background:#fff;border:1px solid var(--accent-light);border-left:4px solid #a855f7;border-radius:var(--radius-md);padding:16px;margin-bottom:12px;transition:transform .2s ease;box-shadow:var(--shadow-sm)}.ai-recommendation-card:hover{transform:translate(4px);box-shadow:var(--shadow-md)}.ai-badge{background:var(--accent-light);color:#6366f1;font-size:.65rem;font-weight:700;text-transform:uppercase;padding:2px 8px;border-radius:4px;letter-spacing:.05em}.ai-reason{font-size:.875rem;color:var(--text-secondary);margin-top:8px;line-height:1.5}.ai-match-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}.ai-match-info{display:flex;flex-direction:column;gap:2px}.ai-percentage{font-size:.75rem;font-weight:700;color:#a855f7;background:#a855f71a;padding:2px 6px;border-radius:4px}.ai-progress-container{width:100%;height:4px;background:var(--bg-warm);border-radius:2px;margin-top:10px;overflow:hidden}.ai-progress-bar{height:100%;background:linear-gradient(to right,#a855f7,#6366f1);transition:width 1s ease-out}.spinner-sm{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.form-group{display:flex;flex-direction:column;gap:7px;flex:1}.form-group label{font-family:Outfit,sans-serif;font-size:1rem;font-weight:500;color:var(--text-label);letter-spacing:.01em;transition:color .2s ease}.form-group:focus-within label{color:var(--accent)}.form-group input,.form-group textarea{width:100%;padding:10px 12px;background:#fff;border:1.5px solid var(--border-input);border-radius:var(--radius-sm);font-family:inherit;font-size:.9rem;color:var(--text);transition:border-color .2s ease,box-shadow .2s ease;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#c0b9ae}.form-group input:focus,.form-group textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #5a3e2b17}.form-group textarea{resize:vertical;min-height:80px;line-height:1.6}.form-row{display:flex;gap:20px}.auth-page{min-height:calc(100vh - 78px);display:flex;align-items:center;justify-content:center;padding:48px 20px}.auth-card{width:100%;max-width:420px;background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius-lg);padding:44px 40px;box-shadow:var(--shadow-md);animation:fadeUp .5s ease both}.auth-card-wide{max-width:560px}.auth-card-wide-lg{max-width:820px}.auth-header{text-align:left;margin-bottom:30px}.auth-header h1{font-family:Outfit,sans-serif;font-size:2rem;font-weight:500;letter-spacing:-.02em;margin-bottom:6px;color:var(--text)}.auth-header p{color:var(--text-muted);font-size:.875rem}.auth-form{display:flex;flex-direction:column;gap:18px}.auth-footer{text-align:left;margin-top:22px;color:var(--text-muted);font-size:.8125rem}.auth-footer a{color:var(--accent);font-weight:500}.alert{padding:11px 16px;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;margin-bottom:14px;animation:slideDown .3s ease both}.alert-error{background:#fff0ed;border:1.5px solid #e8a89a;color:var(--danger)}.alert-success{background:#eef5ef;border:1.5px solid #9ec4a4;color:var(--accent-green)}.field-error{display:block;font-family:Outfit,sans-serif;font-size:.95rem;color:#b83a2a;margin-top:2px}.input-error{border-color:#d97b6c!important;background:#fffaf9!important}.label-optional{font-size:.78rem;color:var(--text-muted);font-weight:400;font-family:"DM Sans",inherit}.char-count{display:block;text-align:right;font-size:.75rem;color:var(--text-muted);margin-top:2px}.char-count-warn{color:#c07830}.password-strength{margin-top:10px}.strength-bar{display:flex;gap:4px;margin-bottom:5px}.strength-segment{flex:1;height:3px;border-radius:2px;transition:background-color .3s}.strength-label{font-family:Outfit,sans-serif;font-size:.95rem;font-weight:600}.strength-checklist{list-style:none;padding:0;margin:6px 0 0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.75rem}.check-pass{color:var(--accent-green)}.check-fail{color:var(--text-muted)}.tag{display:inline-flex;padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:500;letter-spacing:.01em;transition:all .18s ease}.tag-role{background:var(--bg-warm);border:1px solid var(--border);color:var(--text-secondary)}.tag-role:hover{background:var(--text);color:#fff}.tag-tech{background:var(--accent-light);border:1px solid #dbb8a6;color:var(--accent)}.tag-tech:hover{background:var(--accent);color:#fff}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.project-card{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius-lg);padding:26px;transition:all .22s ease;display:flex;flex-direction:column;gap:12px;position:relative;box-shadow:var(--shadow-sm)}.project-card:hover{transform:translateY(-4px) rotate(.35deg);box-shadow:var(--shadow-lg);border-color:var(--accent);background:#fff}.project-card:nth-child(2n):hover{transform:translateY(-4px) rotate(-.35deg)}.project-card:hover .project-title{color:var(--accent)}.project-card-header{display:flex;flex-direction:column;gap:2px}.project-title{font-family:Outfit,sans-serif;font-size:1rem;font-weight:500;letter-spacing:-.01em;transition:color .2s ease}.project-author{font-size:.75rem;color:var(--text-muted)}.project-tags{display:flex;flex-wrap:wrap;gap:6px}.projects-list{max-width:1100px;margin:0 auto;padding:0 20px 48px;display:flex;flex-direction:column;gap:12px}.project-card-detailed{gap:14px}.project-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.project-section{padding-top:14px;border-top:1px solid var(--border)}.project-section h4{font-family:Outfit,sans-serif;font-size:1rem;font-weight:500;color:var(--text-muted);margin-bottom:8px}.members-list{display:flex;flex-wrap:wrap;gap:6px}.member-chip{display:inline-flex;padding:4px 12px;background:var(--bg-warm);border:1px solid var(--border);border-radius:999px;font-size:.75rem;color:var(--text-secondary);transition:all .18s ease}.member-chip:hover,.member-chip-link:hover,.member-chip-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light);opacity:1!important}.member-chip-btn{cursor:pointer;border:1px solid var(--border);outline:none}.clickable-name{font-size:1rem;color:var(--text);cursor:pointer;transition:color .2s ease}.clickable-name:hover{color:var(--accent);text-decoration:underline}.status-badge{display:inline-flex;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:500}.status-pending{background:#f7f2e8;border:1px solid #d4c9a8;color:#8a7040}.requests-section{background:var(--bg-warm);margin:0 -26px -26px;padding:20px 26px 26px;border-top:1.5px solid var(--border);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.requests-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.requests-header h4{display:flex;align-items:center;gap:8px;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:500;color:var(--text);margin-bottom:0}.requests-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:var(--accent);color:#fff;font-size:.72rem;font-weight:700;border-radius:999px}.request-card{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:8px;animation:fadeUp .3s ease both;box-shadow:var(--shadow-sm)}.request-card:last-child{margin-bottom:0}.request-user{display:flex;align-items:center;gap:10px}.request-avatar{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:var(--bg-warm);border:1px solid var(--border);border-radius:999px;color:var(--text-muted);flex-shrink:0}.request-info{display:flex;flex-direction:column;gap:2px}.request-name{font-size:.9rem;font-weight:500;color:var(--text)}.request-label{font-size:.72rem;color:var(--text-muted)}.request-actions{display:flex;gap:8px;flex-shrink:0}.request-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border);font-size:.8125rem;animation:slideInRight .3s ease both}.request-item:last-child{border-bottom:none}.tabs{max-width:1100px;margin:20px auto;padding:0 20px;display:flex;gap:4px;animation:fadeIn .4s ease both;border-bottom:1.5px solid var(--border)}.tab{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1.5px;font-family:inherit;font-size:.8125rem;font-weight:400;color:var(--text-muted);cursor:pointer;transition:all .2s ease;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.tab:hover{color:var(--text);background:var(--bg-warm)}.tab-active{color:var(--text);border-bottom-color:var(--accent);font-weight:500}.tab-badge{min-width:18px;height:18px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-warm);border:1px solid var(--border);border-radius:999px;font-size:.65rem;font-weight:600;color:var(--text-muted);transition:all .18s ease}.tab-active .tab-badge{background:var(--accent-light);border-color:#dbb8a6;color:var(--accent)}.search-bar{display:flex;align-items:center;background:#fff;border:1.5px solid var(--border);border-radius:15px;padding:4px 4px 7px 14px;max-width:520px;box-shadow:var(--shadow-sm);transition:border-color .2s ease,box-shadow .2s ease;animation:fadeUp .6s ease .2s both}.search-bar:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 3px #5a3e2b17}.search-icon{color:var(--text-muted);flex-shrink:0}.search-bar input{flex:1;background:none;border:none;outline:none;font-family:inherit;font-size:.875rem;color:var(--text);padding:9px 10px}.search-bar input::placeholder{color:#c0b9ae}.hero{text-align:left;padding:72px 20px 40px;max-width:1100px;margin:0 auto}.hero-content{max-width:680px}.hero-title{font-family:Outfit,sans-serif;font-size:3.25rem;font-weight:500;line-height:1.1;letter-spacing:-.025em;margin-bottom:18px;color:var(--text);animation:fadeUp .6s ease both}.gradient-text{color:var(--accent);background:none;-webkit-text-fill-color:var(--accent)}.hero-subtitle{font-size:1rem;color:var(--text-secondary);max-width:440px;margin:0 0 30px;line-height:1.75;animation:fadeUp .6s ease .12s both}.page{position:relative}.section{max-width:1100px;margin:0 auto;padding:16px 20px 48px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;animation:fadeUp .5s ease .25s both}.section-header h2{font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:500;letter-spacing:-.01em}.page-header{max-width:1100px;margin:0 auto;padding:40px 20px 0;animation:fadeUp .5s ease both}.page-header h1{font-family:Outfit,sans-serif;font-size:2.75rem;font-weight:500;letter-spacing:-.025em;margin-bottom:5px}.page-header p{color:var(--text-muted);font-size:.875rem}.detail-page{max-width:700px;margin:0 auto;padding:32px 20px 60px}.back-btn{margin-bottom:22px;animation:fadeIn .3s ease both}.detail-card{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius-lg);padding:40px;box-shadow:var(--shadow-md);animation:fadeUp .5s ease .1s both}.detail-meta{margin-bottom:8px}.detail-title{font-family:Outfit,sans-serif;font-size:2.25rem;font-weight:500;letter-spacing:-.02em;margin-bottom:14px;line-height:1.15}.detail-description{color:var(--text-secondary);font-size:.9375rem;line-height:1.75;margin-bottom:24px;padding-left:16px;border-left:2.5px solid var(--accent-light)}.detail-section{margin-bottom:20px;animation:fadeUp .4s ease both}.detail-section h4{font-family:Outfit,sans-serif;font-size:1rem;color:var(--text-muted);margin-bottom:10px}.detail-login-hint{color:var(--text-muted);font-size:.8125rem;margin-top:14px}.detail-login-hint a{color:var(--accent);font-weight:500}.profile-view{display:flex;flex-direction:column;gap:0}.profile-field{display:flex;flex-direction:column;gap:4px;padding:16px 0;border-bottom:1px solid var(--border);animation:fadeUp .3s ease both}.profile-field:last-of-type{border-bottom:none;margin-bottom:18px}.profile-label{font-family:Outfit,sans-serif;font-size:1rem;color:var(--text-label)}.profile-value{font-size:.9375rem;color:var(--text)}.profile-empty{font-size:.8125rem;color:var(--text-muted)}.profile-actions{display:flex;gap:12px;justify-content:flex-end}.form-page{display:flex;justify-content:center;padding:40px 20px}.form-card{width:100%;max-width:560px;background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius-lg);padding:40px;box-shadow:var(--shadow-md);animation:fadeUp .5s ease both}.form-header{text-align:left;margin-bottom:30px}.form-header h1{font-family:Outfit,sans-serif;font-size:2rem;font-weight:500;letter-spacing:-.02em;margin-bottom:5px}.form-header p{color:var(--text-muted);font-size:.8125rem}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted);animation:fadeUp .5s ease both}.empty-state svg{color:var(--text-muted);margin-bottom:12px;opacity:.22}.empty-state h3{font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:500;color:var(--text);margin-bottom:6px}.empty-state p{margin-bottom:16px;font-size:.875rem}.loading-screen{display:flex;align-items:center;justify-content:center;padding:48px}.spinner{width:22px;height:22px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .75s linear infinite}.spinner-sm{display:inline-block;width:14px;height:14px;border:1.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .75s linear infinite}.footer{background:var(--bg-warm);border-top:1.5px solid var(--border);margin-top:auto;color:var(--text-muted)}.footer-inner{max-width:1100px;margin:0 auto;padding:56px 28px 36px}.footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;margin-bottom:56px}.footer-brand{max-width:280px}.footer-logo{font-family:DM Sans,sans-serif;font-size:1.5rem;font-weight:500;color:var(--text);display:block;margin-bottom:10px}.footer-tagline{color:var(--text-muted);font-size:.875rem;line-height:1.6}.footer-links{display:flex;gap:72px}.footer-col h4{font-family:DM Sans,sans-serif;font-size:1.05rem;font-weight:500;color:var(--text);margin-bottom:20px}.footer-col a{display:block;color:var(--text-muted);text-decoration:none;font-size:.875rem;margin-bottom:14px;transition:all var(--transition)}.footer-col a:hover{color:var(--accent);text-decoration:none;transform:translate(3px);opacity:1!important}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px dashed var(--border);font-size:.75rem;color:var(--text-muted)}.footer-built{font-weight:500}@media(max-width:900px){.hero-title{font-size:2.5rem}.page-header h1{font-size:2.25rem}.detail-title{font-size:1.875rem}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media(max-width:768px){.menu-toggle{display:block}.navbar-links{display:none;position:fixed;top:78px;left:0;right:0;background:var(--bg-card);border-bottom:1px solid var(--border);flex-direction:column;padding:16px 24px;gap:4px;animation:slideDown .25s ease both;box-shadow:var(--shadow-md)}.navbar-links.open{display:flex}.navbar-links .nav-link{padding:12px 0;font-size:.875rem;width:100%;border-bottom:1px solid var(--border);border-radius:0}.navbar-links .btn{width:100%;margin-top:8px}.hero{padding:44px 20px 28px}.hero-title{font-size:2.125rem}.hero-subtitle{font-size:.9rem}.search-bar{flex-direction:column;padding:10px;gap:6px;max-width:100%}.search-bar .search-icon{display:none}.search-bar .btn{width:100%}.projects-grid{grid-template-columns:1fr}.form-row{flex-direction:column;gap:16px}.auth-card,.form-card{padding:28px 22px}.auth-card-wide{max-width:100%}.section-header{flex-direction:column;align-items:flex-start;gap:10px}.detail-card{padding:26px 20px}.detail-title{font-size:1.625rem}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.tab{padding:10px 12px;flex-shrink:0}.footer-inner{padding:44px 20px 28px}.footer-top{flex-direction:column;gap:44px;margin-bottom:44px}.footer-brand{max-width:100%}.footer-links{width:100%;justify-content:space-between;gap:20px}}@media(max-width:480px){.navbar-inner{padding:0 16px}.hero{padding:32px 16px 20px}.hero-title{font-size:1.75rem}.page-header{padding:26px 16px 0}.page-header h1{font-size:1.875rem}.section{padding:10px 16px 32px}.projects-list{padding:0 16px 32px}.tabs{padding:0 16px}.project-card{padding:18px 16px}.auth-card,.form-card{padding:22px 16px}.auth-header h1,.form-header h1{font-size:1.625rem}.footer-inner{padding:36px 16px 24px}.footer-links{flex-direction:column;gap:36px}.footer-bottom{flex-direction:column;gap:10px;align-items:flex-start}.request-card{flex-direction:column;align-items:flex-start;gap:12px}.request-actions{width:100%}.request-actions .btn{flex:1}.requests-section{margin:0 -16px -18px;padding:16px 16px 18px}}
