:root{--navy-grad: linear-gradient(135deg, #0a0f24, #020617);--bg: #030712;--card: rgba(15, 23, 42, .65);--border: rgba(255, 255, 255, .08);--border-hover: rgba(99, 102, 241, .45);--text: #f8fafc;--muted: #94a3b8;--muted-2: #64748b;--accent: #6366f1;--accent-2: #8b5cf6;--accent-grad: linear-gradient(135deg, #6366f1, #8b5cf6);--teal-grad: linear-gradient(135deg, #06b6d4, #0db8a6);--green-grad: linear-gradient(135deg, #10b981, #059669);--red-grad: linear-gradient(135deg, #f43f5e, #e11d48);--gold-grad: linear-gradient(135deg, #fbbf24, #d97706);--silver-grad: linear-gradient(135deg, #cbd5e1, #64748b);--bronze-grad: linear-gradient(135deg, #d97706, #78350f);--gray-bg: rgba(255, 255, 255, .05);--radius: 16px;--radius-lg: 24px;--shadow: 0 10px 30px rgba(0, 0, 0, .4);--glass: backdrop-filter: blur(14px) saturate(180%)}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100vh}body{font-family:Plus Jakarta Sans,system-ui,sans-serif;background:var(--bg);background-image:radial-gradient(circle at 80% 20%,rgba(99,102,241,.15) 0%,transparent 50%),radial-gradient(circle at 10% 80%,rgba(139,92,246,.12) 0%,transparent 55%);color:var(--text);-webkit-font-smoothing:antialiased}h1,h2,h3,.brand,.logo-text,.podium-name,.rank-pill,.stat-value,.credit-pill{font-family:Outfit,sans-serif;font-weight:600}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}::selection{background:#6366f14d;color:#fff}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#03071280}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}#root{min-height:100vh}.app-shell{display:flex;min-height:100vh}.sidebar{width:260px;flex-shrink:0;background:#030712d9;color:#cfd6ea;display:flex;flex-direction:column;padding:24px 16px;position:relative;border-right:1px solid var(--border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:width .3s cubic-bezier(.4,0,.2,1),transform .3s ease}.sidebar.collapsed{width:88px}.sidebar.collapsed .nav-label,.sidebar.collapsed .section-label,.sidebar.collapsed .brand-text,.sidebar.collapsed .signout-label{display:none}.brand-row{display:flex;align-items:center;gap:12px;padding:6px 8px 24px}.brand-mark{width:36px;height:36px;border-radius:10px;background:var(--accent-grad);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;box-shadow:0 0 15px #6366f173}.brand-text .brand{font-size:18px;font-weight:700;color:#fff;line-height:1.1;letter-spacing:-.01em}.brand-text .brand-sub{font-size:9px;letter-spacing:.09em;color:var(--muted);font-weight:600;margin-top:2px}.nav-section{margin-top:16px}.section-label{font-size:10px;letter-spacing:.1em;color:var(--muted-2);font-weight:700;padding:0 12px 8px;text-transform:uppercase}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:12px;font-size:14px;font-weight:500;color:var(--muted);margin-bottom:3px;white-space:nowrap;overflow:hidden;transition:all .25s cubic-bezier(.4,0,.2,1);border:1px solid transparent;cursor:pointer}.nav-item svg{flex-shrink:0;transition:transform .2s}.nav-item:hover{background:#ffffff0d;color:#fff}.nav-item:hover svg{transform:translate(2px)}.nav-item.active{background:var(--accent-grad);color:#fff;box-shadow:0 4px 20px #6366f159;border-color:#ffffff1a}.sidebar-spacer{flex:1}.signout{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:12px;color:var(--muted);font-size:14px;font-weight:500;transition:all .2s;cursor:pointer}.signout:hover{background:#f43f5e1a;color:#f43f5e}.main-col{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:70px;flex-shrink:0;background:#03071266;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.topbar-left{display:flex;align-items:center;gap:16px}.icon-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:#ffffff08;color:var(--muted);display:flex;align-items:center;justify-content:center;transition:all .2s}.icon-btn:hover{background:#ffffff14;color:#fff;border-color:#ffffff26}.crumb{font-size:15px;color:var(--muted);font-weight:500}.crumb b{color:#fff;font-weight:600}.topbar-right{display:flex;align-items:center;gap:14px}.user-name{font-size:14.5px;font-weight:500;color:var(--text)}.avatar{width:36px;height:36px;border-radius:10px;background:var(--accent-grad);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;box-shadow:0 4px 12px #6366f140}.page{padding:32px 32px 60px;max-width:1280px;animation:fadein .4s ease}@keyframes fadein{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:30px;flex-wrap:wrap}.page-head h1{font-size:30px;margin:0 0 6px;font-weight:700;letter-spacing:-.02em;background:linear-gradient(to right,#fff,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.page-head p{margin:0;color:var(--muted);font-size:15px}.btn{display:inline-flex;align-items:center;gap:8px;border-radius:12px;font-size:14px;font-weight:600;padding:10px 18px;border:1px solid transparent;transition:all .25s cubic-bezier(.4,0,.2,1)}.btn-primary{background:var(--accent-grad);color:#fff;box-shadow:0 4px 15px #6366f140}.btn-primary:hover{box-shadow:0 6px 20px #6366f166;transform:translateY(-1px)}.btn-outline{background:#ffffff08;border-color:var(--border);color:#fff}.btn-outline:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-1px)}.btn-sm{padding:8px 14px;font-size:13px;border-radius:10px}.btn-danger-outline{background:#f43f5e0d;border:1px solid rgba(244,63,94,.2);color:#fb7185}.btn-danger-outline:hover{background:#f43f5e1f;border-color:#f43f5e66;color:#fff}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:all .3s cubic-bezier(.4,0,.2,1)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:28px}.stat-card{padding:22px;border:1px solid rgba(255,255,255,.05)}.stat-card:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:0 12px 24px #6366f11f}.stat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.stat-top span{font-size:14px;color:var(--muted);font-weight:500}.stat-icon{width:32px;height:32px;border-radius:8px;background:#ffffff0d;display:flex;align-items:center;justify-content:center;color:var(--accent)}.stat-value{font-size:28px;font-weight:700;letter-spacing:-.02em;background:linear-gradient(to right,#fff,#cbd5e1);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-sub{font-size:13px;color:var(--muted-2);margin-top:6px}.stat-sub.up,.stat-sub .up-inline{color:#34d399;font-weight:600}.badge{display:inline-flex;align-items:center;font-size:11.5px;font-weight:600;padding:3.5px 10px;border-radius:20px;border:1px solid transparent}.badge-gray{background:#ffffff0d;color:var(--muted);border-color:#ffffff0d}.badge-green{background:#10b98114;color:#34d399;border-color:#10b98126}.badge-blue{background:#3b82f614;color:#60a5fa;border-color:#3b82f626}.badge-amber{background:#f59e0b14;color:#fbbf24;border-color:#f59e0b26}.proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.proj-card{padding:22px;display:flex;flex-direction:column;gap:8px;cursor:pointer}.proj-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.proj-badges{display:flex;gap:6px;flex-wrap:wrap}.proj-cat{font-size:12.5px;color:var(--muted-2);white-space:nowrap;font-weight:600}.proj-title{font-size:17.5px;font-weight:600;margin:6px 0 0;line-height:1.3;color:#fff;letter-spacing:-.01em}.proj-by{font-size:13.5px;color:var(--muted);margin-top:2px}.proj-by b{color:#cbd5e1;font-weight:600}.proj-stats{display:flex;align-items:center;gap:18px;margin-top:auto;padding-top:14px;border-top:1px solid rgba(255,255,255,.05);font-size:13px;color:var(--muted-2)}.proj-stats span{display:flex;align-items:center;gap:6px}.proj-stats button{background:none;border:none;display:flex;align-items:center;gap:6px;color:var(--muted-2);font-size:13px;padding:0;transition:all .2s}.proj-stats button:hover{color:#fb7185}.proj-stats button.liked{color:#fb7185;font-weight:600}.tabs{display:inline-flex;background:#03071266;border:1px solid var(--border);border-radius:12px;padding:4px;gap:2px}.tab{padding:8px 16px;font-size:14px;font-weight:500;color:var(--muted);border-radius:10px;transition:all .2s;cursor:pointer}.tab:hover{color:#fff}.tab.active{background:var(--accent-grad);color:#fff;box-shadow:0 4px 12px #6366f140}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:12px;flex-wrap:wrap}.search-wrap{position:relative}.search-wrap svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--muted-2)}.search-input{padding:10px 14px 10px 38px;border:1px solid var(--border);background:#0f172a66;color:#fff;border-radius:12px;font-size:14px;width:260px;outline:none;transition:all .25s}.search-input:focus{border-color:var(--accent);box-shadow:0 0 10px #6366f133}.podium{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-bottom:28px}.podium-card{padding:30px 20px;text-align:center;position:relative}.podium-card.first{border-color:#fbbf2480;box-shadow:0 0 25px #fbbf2426,var(--shadow);transform:scale(1.03)}.podium-card.first:hover{border-color:#fbbf24cc;box-shadow:0 0 35px #fbbf2440;transform:translateY(-4px) scale(1.03)}.rank-pill{width:46px;height:46px;border-radius:50%;background:#ffffff0a;color:#cbd5e1;display:flex;align-items:center;justify-content:center;font-weight:700;margin:0 auto 16px;font-size:16px;border:1px solid var(--border)}.rank-pill.gold{background:var(--gold-grad);color:#fff;box-shadow:0 0 15px #fbbf2466;border-color:#fff3}.rank-pill.silver{background:var(--silver-grad);color:#fff;box-shadow:0 0 15px #64748b4d;border-color:#fff3}.rank-pill.bronze{background:var(--bronze-grad);color:#fff;box-shadow:0 0 15px #d977064d;border-color:#fff3}.avatar-lg{width:64px;height:64px;border-radius:50%;background:#ffffff0d;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--text);margin:0 auto 14px;font-size:18px;border:2px solid var(--border)}.podium-name{font-weight:700;font-size:17px;color:#fff}.podium-meta{font-size:13px;color:var(--muted);margin:4px 0 16px}.podium-stats{display:flex;justify-content:center;gap:36px}.podium-stats div div:first-child{font-size:20px;font-weight:700;color:#fff}.podium-stats div div:last-child{font-size:10.5px;color:var(--muted-2);letter-spacing:.08em;text-transform:uppercase;margin-top:2px}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;color:var(--muted);font-weight:600;font-size:13px;padding:12px 14px;border-bottom:1px solid var(--border)}td{padding:18px 14px;border-bottom:1px solid rgba(255,255,255,.03);vertical-align:middle}tr:last-child td{border-bottom:none}tr:hover td{background:#ffffff03}.rank-num{font-weight:700;color:var(--muted-2);font-size:15px}.stu-row{display:flex;align-items:center;gap:12px}.avatar-sm{width:34px;height:34px;border-radius:50%;background:#ffffff0d;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;border:1px solid var(--border)}.credit-pill{background:#f59e0b14;color:#fbbf24;font-weight:600;padding:4px 10px;border-radius:8px;font-size:13px;display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(245,158,11,.15)}.progress-track{height:8px;background:#ffffff0d;border-radius:6px;overflow:hidden}.progress-fill{height:100%;background:var(--accent-grad);border-radius:6px;box-shadow:0 0 10px #6366f166}.dash-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin-top:24px}.notif-item{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.04)}.notif-item:last-child{border-bottom:none}.notif-icon{width:32px;height:32px;border-radius:8px;background:#ffffff0a;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--accent);border:1px solid var(--border)}.notif-text{font-size:13.5px;color:#cbd5e1;line-height:1.4}.notif-time{font-size:11.5px;color:var(--muted-2);display:flex;align-items:center;gap:5px;margin-top:4px}.lb-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.04)}.lb-row:last-child{border-bottom:none}.lb-badge{width:24px;height:24px;border-radius:50%;background:#ffffff0d;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;color:#cbd5e1;border:1px solid var(--border)}.lb-badge.gold{background:var(--gold-grad);color:#fff;border-color:#ffffff1a;box-shadow:0 0 8px #fbbf244d}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#020617a6;display:flex;align-items:flex-start;justify-content:center;z-index:100;padding:40px 20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow-y:auto}.modal{margin:auto;background:#0f172af2;border:1px solid rgba(255,255,255,.08);border-radius:20px;width:460px;max-width:100%;padding:28px;box-shadow:0 20px 60px #00000080,0 0 40px #6366f11a;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);animation:modalin .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modalin{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal h3{margin:0 0 6px;font-size:20px;color:#fff;font-weight:700;letter-spacing:-.01em}.modal p.hint{margin:0 0 20px;color:var(--muted);font-size:14px;line-height:1.5}.field{margin-bottom:16px}.field label{display:block;font-size:13.5px;font-weight:600;margin-bottom:8px;color:#cbd5e1}.field input,.field select,.field textarea{width:100%;padding:11px 14px;border:1px solid var(--border);background:#03071266;color:#fff;border-radius:10px;font-size:14.5px;font-family:inherit;outline:none;transition:all .25s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 10px #6366f133;background:#03071299}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}.toast{position:fixed;bottom:28px;right:28px;background:var(--accent-grad);color:#fff;padding:14px 20px;border-radius:12px;font-size:14.5px;font-weight:600;box-shadow:0 15px 35px #6366f166;z-index:200;display:flex;align-items:center;gap:10px;animation:toastin .3s cubic-bezier(.34,1.56,.64,1)}@keyframes toastin{0%{opacity:0;transform:translateY(15px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.empty{padding:56px 20px;text-align:center;color:var(--muted-2)}.empty svg{margin-bottom:12px;color:var(--muted-2);opacity:.4}.landing-header{display:flex;align-items:center;justify-content:space-between;padding:20px 48px;border-bottom:1px solid var(--border);background:#03071266;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:sticky;top:0;z-index:20}.landing-nav{display:flex;gap:36px;font-size:14.5px;font-weight:500;color:var(--muted);transition:all .2s}.landing-nav a:hover{color:#fff;cursor:pointer}.landing-actions{display:flex;align-items:center;gap:24px}.landing-actions .signin{font-size:14.5px;font-weight:500;color:#cbd5e1;transition:all .2s;cursor:pointer}.landing-actions .signin:hover{color:#fff}.hero{max-width:1240px;margin:0 auto;padding:80px 48px 48px;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(99,102,241,.2);background:#6366f10d;padding:6px 16px;border-radius:30px;font-size:13px;color:#818cf8;font-weight:600;margin-bottom:24px}.hero h1{font-size:52px;line-height:1.1;font-weight:800;letter-spacing:-.03em;margin:0 0 24px;background:linear-gradient(to right,#fff,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero p.lead{font-size:16.5px;color:var(--muted);line-height:1.65;max-width:540px;margin:0 0 32px}.hero-cta{display:flex;gap:14px;margin-bottom:28px;flex-wrap:wrap}.hero-check{display:flex;gap:24px;flex-wrap:wrap;font-size:13.5px;color:var(--muted)}.hero-check span{display:flex;align-items:center;gap:8px}.hero-art{background:var(--navy-grad);border-radius:24px;aspect-ratio:16/11.5;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;box-shadow:0 25px 50px #00000080;border:1px solid var(--border)}.hero-art svg{width:78%;height:78%}.stats-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#0f172a33;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stats-inner{max-width:1240px;margin:0 auto;padding:40px 48px;display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.stats-inner .num{font-size:32px;font-weight:800;letter-spacing:-.02em;color:#fff}.stats-inner .lab{font-size:13.5px;color:var(--muted);margin-top:6px}.feat-section{max-width:1240px;margin:0 auto;padding:90px 48px 48px;text-align:center}.feat-section h2{font-size:34px;margin:0 0 16px;font-weight:700;letter-spacing:-.02em;color:#fff}.feat-section>p{color:var(--muted);max-width:580px;margin:0 auto 48px;font-size:16px}.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:left}.feat-card{padding:28px}.feat-card .icon{width:40px;height:40px;border-radius:10px;background:#ffffff0a;display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:var(--accent);border:1px solid var(--border)}.feat-card h3{font-size:18px;margin:0 0 10px;color:#fff;font-weight:700}.feat-card p{font-size:14px;color:var(--muted);line-height:1.6;margin:0}.how-section{background:#0a0f1e66;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:90px 48px;text-align:center;margin-top:40px}.how-section h2{font-size:32px;margin:0 0 54px;color:#fff}.how-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:left}.how-step{background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:20px;padding:26px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.how-step .n{font-size:12px;color:#818cf8;font-weight:800;letter-spacing:.1em;margin-bottom:12px}.how-step h4{margin:0 0 10px;font-size:16.5px;color:#fff}.how-step p{margin:0;font-size:13.5px;color:var(--muted);line-height:1.55}.cta-final{max-width:900px;margin:0 auto;padding:90px 48px;text-align:center}.cta-final h2{font-size:30px;margin:0 0 16px;color:#fff}.cta-final p{color:var(--muted);margin:0 0 32px;font-size:16px}.landing-footer{border-top:1px solid var(--border);padding:30px 48px;text-align:center;font-size:13.5px;color:var(--muted-2);background:#03071280}.login-shell{min-height:100vh;display:flex;background:var(--bg)}.login-side{flex:1;background:var(--navy-grad);color:#fff;padding:60px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;border-right:1px solid var(--border)}.login-side:after{content:"";position:absolute;right:-80px;bottom:-80px;width:280px;height:280px;border-radius:50%;background:#6366f10f;filter:blur(40px)}.login-side:before{content:"";position:absolute;left:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:#8b5cf60f;filter:blur(30px)}.login-side .top{display:flex;align-items:center;gap:12px;position:relative;z-index:1}.login-side h2{font-size:34px;line-height:1.2;font-weight:800;margin:0 0 18px;max-width:400px;position:relative;z-index:1;background:linear-gradient(to right,#fff,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.login-side p{color:var(--muted);font-size:15px;line-height:1.65;max-width:400px;margin:0;position:relative;z-index:1}.login-side .quote{font-size:13.5px;color:var(--muted-2);border-top:1px solid rgba(255,255,255,.08);padding-top:20px;margin-top:30px;position:relative;z-index:1}.login-form-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:40px;position:relative}.login-card{width:390px;max-width:100%}.login-card h1{font-size:26px;margin:0 0 8px;color:#fff}.login-card p.sub{color:var(--muted);font-size:14px;margin:0 0 28px}.role-toggle{display:flex;background:var(--gray-bg);border-radius:12px;padding:4px;margin-bottom:22px;gap:2px;border:1px solid var(--border)}.role-toggle .r{flex:1;text-align:center;padding:10px 6px;border-radius:10px;font-size:13.5px;font-weight:600;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:4px;transition:all .25s;cursor:pointer}.role-toggle .r:hover{color:#fff}.role-toggle .r.active{background:#ffffff0f;color:#fff;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.05)}.login-actions-row{display:flex;align-items:center;justify-content:space-between;margin:2px 0 22px;font-size:13.5px}.login-actions-row a{color:var(--accent);font-weight:500;cursor:pointer}.login-actions-row a:hover{text-decoration:underline}.demo-hint{background:var(--gray-bg);border-radius:12px;padding:12px 14px;font-size:13px;color:var(--muted);margin-top:20px;line-height:1.5;border:1px solid var(--border);display:flex;gap:8px}.login-switch{text-align:center;font-size:14px;color:var(--muted);margin-top:24px}.login-switch a{font-weight:600;color:#fff;cursor:pointer}.login-switch a:hover{color:var(--accent)}.proj-card.locked{position:relative;background:#0f172a4d;border-color:#ffffff08;cursor:pointer}.proj-card.locked:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#03071266;border-radius:var(--radius-lg);pointer-events:none}.lock-overlay-icon{position:absolute;top:14px;right:14px;color:#fb7185;background:#f43f5e26;border:1px solid rgba(244,63,94,.3);padding:5px;border-radius:8px;display:flex;box-shadow:0 0 10px #f43f5e33;animation:pulse-red 2s infinite alternate;z-index:2}@keyframes pulse-red{0%{transform:scale(1);box-shadow:0 0 5px #f43f5e33}to{transform:scale(1.08);box-shadow:0 0 15px #f43f5e66}}.comment-section{margin-top:22px;border-top:1px solid var(--border);padding-top:18px}.comment-list{max-height:200px;overflow-y:auto;margin-bottom:14px;padding-right:6px}.comment-bubble{background:#ffffff08;padding:10px 14px;border-radius:12px;margin-bottom:8px;font-size:13.5px;border:1px solid rgba(255,255,255,.03)}.comment-author{font-weight:600;color:var(--accent);margin-bottom:3px}.comment-time{font-size:11px;color:var(--muted-2);margin-left:8px;font-weight:400}.comment-text{color:#e2e8f0;line-height:1.45}.comment-form{display:flex;gap:10px}.comment-form textarea{flex:1;resize:none;padding:10px 14px;border:1px solid var(--border);background:#03071266;color:#fff;border-radius:10px;font-size:13.5px;height:40px;outline:none;transition:all .2s}.comment-form textarea:focus{border-color:var(--accent)}.sub-tabs{display:flex;gap:16px;border-bottom:1px solid var(--border);margin-bottom:18px}.sub-tab{padding:8px 4px 12px;font-size:14.5px;font-weight:500;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s}.sub-tab:hover{color:#fff}.sub-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.clickable-name{color:var(--accent);cursor:pointer;font-weight:600}.clickable-name:hover{text-decoration:underline}.profile-skills-grid{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}select,option{background-color:#0f172a!important;color:#f8fafc!important;border-radius:8px}select option{padding:8px 12px;background-color:#0f172a!important;color:#fff!important}select option:hover,select option:focus,select option:active,select option:checked{background-color:#1e293b!important;color:#fff!important}@media(max-width:1080px){.stat-grid,.proj-grid{grid-template-columns:repeat(2,1fr)}.dash-grid{grid-template-columns:1fr}.hero{grid-template-columns:1fr;padding-top:40px}.feat-grid,.how-grid{grid-template-columns:repeat(2,1fr)}.podium{grid-template-columns:1fr}}@media(max-width:720px){.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:60;transform:translate(-100%);width:250px}.sidebar.mobile-open{transform:translate(0)}.sidebar.collapsed{width:250px}.sidebar.collapsed .nav-label,.sidebar.collapsed .section-label,.sidebar.collapsed .brand-text,.sidebar.collapsed .signout-label{display:block}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#03071299;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:55}.stat-grid{grid-template-columns:1fr 1fr}.proj-grid,.feat-grid,.how-grid{grid-template-columns:1fr}.stats-inner{grid-template-columns:1fr 1fr;gap:24px}.page{padding:24px 20px 50px}.landing-header{padding:16px 24px}.landing-nav{display:none}.hero{padding:40px 24px}.hero h1{font-size:36px}.feat-section,.how-section,.cta-final{padding:50px 24px}.user-name{display:none}.toolbar{align-items:stretch}.search-input{width:100%}}
