.projects-hero-section{z-index:1;margin-top:32px;padding:0 24px 48px;position:relative;overflow:hidden}.projects-hero-inner{text-align:center;z-index:2;max-width:1100px;margin:0 auto;position:relative}.projects-hero-glass{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:rgba(20,20,20,.55);border-radius:24px;margin:0 auto;padding:2.5rem 2rem;box-shadow:0 8px 32px rgba(0,0,0,.1)}html.light .projects-hero-glass{background:rgba(220,215,200,.55);box-shadow:0 8px 32px rgba(255,0,80,.08)}.projects-hero-title{letter-spacing:.2px;background:linear-gradient(90deg,#ff006e 70%,#ffed4e 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 18px;font-size:max(40px,min(7vw,74px));line-height:1.06}.projects-hero-sub{opacity:.85;max-width:880px;color:inherit;margin:0 auto 28px;font-size:max(18px,min(2.6vw,26px))}.projects-section{padding:32px 24px 64px}.projects-tabs{background:color-mix(in oklab,var(--glass-bg-dark)80%,transparent);border:1px solid var(--glass-border-dark);border-radius:9999px;justify-content:center;align-items:center;gap:12px;width:-moz-fit-content;width:fit-content;margin:0 auto 20px;padding:10px;display:flex}html.light .projects-tabs{background:color-mix(in oklab,var(--glass-bg-light)80%,transparent);border-color:var(--glass-border-light)}.projects-tab{color:inherit;cursor:pointer;background:0 0;border:1px solid transparent;border-radius:9999px;padding:10px 18px;font-family:IBM Plex Mono,ui-monospace,monospace;font-weight:600}.projects-tab.active{color:var(--accent-neon);border-color:color-mix(in oklab,var(--accent-neon)50%,transparent);background:color-mix(in oklab,var(--accent-neon)12%,transparent)}.projects-head{text-align:center;margin:28px auto 24px}.projects-title{margin:0 0 8px;font-size:max(28px,min(4vw,42px));font-weight:800;line-height:1.15}.projects-title.completed{background:linear-gradient(45deg,gold,#ffed4e);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.projects-title.ongoing{background:linear-gradient(45deg,var(--accent-neon),var(--accent-crimson));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.projects-title.planned{background:linear-gradient(45deg,#9ca3af,#d1d5db);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.projects-title .emoji{margin-left:6px}.projects-sub{opacity:.8;font-family:IBM Plex Mono,ui-monospace,monospace}.projects-grid{grid-template-columns:repeat(1,minmax(0,1fr));gap:24px;transition:opacity .26s,transform .26s;display:grid}@media (min-width:768px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.anim-container.fade-out{opacity:0;transform:translateY(10px)}.anim-container.fade-in{opacity:1;transform:translateY(0)}.project-card{border:1px solid color-mix(in oklab,currentColor 16%,transparent);-webkit-backdrop-filter:blur(14px)saturate(160%)brightness(1.05);background:linear-gradient(140deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,.02) 60%,rgba(255,255,255,.04) 100%),rgba(20,20,20,.5);border-radius:16px;transition:border-color .35s,background .55s,transform .55s cubic-bezier(.25,.8,.25,1),box-shadow .45s,filter .6s;position:relative;overflow:hidden}.project-card:before{content:"";pointer-events:none;opacity:0;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.18),transparent 60%);transition:opacity .4s;position:absolute;top:0;bottom:0;left:0;right:0}.project-card:hover:before{opacity:.55}.project-card:hover{border-color:color-mix(in oklab,var(--accent-neon)55%,transparent);box-shadow:0 22px 46px -14px rgba(0,0,0,.65),0 0 0 1px color-mix(in oklab,var(--accent-neon)30%,transparent),0 0 0 4px color-mix(in oklab,var(--accent-neon)8%,transparent);filter:drop-shadow(0 0 12px color-mix(in oklab,var(--accent-neon)22%,transparent));background:linear-gradient(160deg,rgba(255,255,255,.16) 0%,rgba(255,255,255,.05) 55%,rgba(255,255,255,.12) 100%),rgba(30,30,30,.55);transform:translateY(-10px)scale(1.025)}html.light .project-card{-webkit-backdrop-filter:blur(14px)saturate(170%);backdrop-filter:blur(14px)saturate(170%);background:linear-gradient(140deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.02) 60%,rgba(0,0,0,.04) 100%),rgba(255,255,255,.55)}html.light .project-card:hover{background:linear-gradient(160deg,rgba(0,0,0,.16) 0%,rgba(0,0,0,.05) 55%,rgba(0,0,0,.12) 100%),rgba(255,255,255,.7)}.card-anim{opacity:0;animation:.55s forwards cardIn}.card-anim:first-child{animation-delay:50ms}.card-anim:nth-child(2){animation-delay:.1s}.card-anim:nth-child(3){animation-delay:.15s}.card-anim:nth-child(4){animation-delay:.2s}.card-anim:nth-child(5){animation-delay:.25s}.card-anim:nth-child(6){animation-delay:.3s}.card-anim:nth-child(7){animation-delay:.35s}.card-anim:nth-child(8){animation-delay:.4s}@keyframes cardIn{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.status-badge{z-index:2;border-radius:9999px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex;position:absolute;top:10px;left:10px}.status-badge .icon{width:12px;height:12px}.status-badge.completed{color:#111;background:linear-gradient(90deg,gold,#ffb700)}.status-badge.ongoing{background:linear-gradient(90deg,var(--accent-neon),var(--accent-crimson));color:#fff}.status-badge.planned{color:#fff;background:linear-gradient(90deg,#9ca3af,#6b7280)}.project-image{height:190px;position:relative;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:100%;display:block}.project-image.planned{filter:grayscale(.9)}.rarity{z-index:2;color:#fff;border-radius:9999px;padding:4px 8px;font-size:11px;font-weight:900;position:absolute;top:10px;right:10px}.rarity-common{background:linear-gradient(90deg,#9ca3af,#6b7280)}.rarity-rare{background:linear-gradient(90deg,#60a5fa,#2563eb)}.rarity-epic{background:linear-gradient(90deg,#a78bfa,#7c3aed)}.rarity-legendary{background:linear-gradient(90deg,#facc15,#eab308)}.progress{background:rgba(0,0,0,.5);height:8px;position:absolute;bottom:0;left:0;right:0}.progress .bar{background:linear-gradient(90deg,var(--accent-neon),var(--accent-crimson));height:100%}.planned-watermark{opacity:.18;place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.planned-watermark svg{width:64px;height:64px}.project-body{padding:18px}.project-title-row{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.project-title{font-size:20px;font-weight:800}.project-chip{border:1px solid color-mix(in oklab,currentColor 16%,transparent);opacity:.9;border-radius:9999px;padding:6px 10px;font-size:12px}.project-tagline{opacity:.8;margin:6px 0 12px;font-family:IBM Plex Mono,ui-monospace,monospace}.tech-row{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.tech{border:1px solid color-mix(in oklab,currentColor 16%,transparent);opacity:.9;border-radius:9999px;padding:4px 8px;font-size:12px}.tech.more{opacity:.7}.project-footer{justify-content:space-between;align-items:center;display:flex}.users{opacity:.9;align-items:center;gap:6px;display:inline-flex}.icon{width:16px;height:16px}.links{gap:10px;display:inline-flex}.link{border:1px solid transparent;border-radius:8px;place-items:center;width:30px;height:30px;display:inline-grid}.link:hover{border-color:color-mix(in oklab,var(--accent-neon)40%,transparent);color:var(--accent-neon)}.link.disabled{opacity:.5;pointer-events:none}.clickable{cursor:pointer}.project-modal-overlay{z-index:60;-webkit-backdrop-filter:blur(18px)saturate(180%)brightness(.9);opacity:0;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.08),transparent 70%),rgba(0,0,0,.62);place-items:center;animation:.2s forwards overlayIn;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.project-modal-overlay.closing{animation:.2s forwards overlayOut}@keyframes overlayIn{to{opacity:1}}@keyframes overlayOut{to{opacity:0}}.project-modal{border:1px solid color-mix(in oklab,currentColor 16%,transparent);opacity:0;background:linear-gradient(145deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,.02) 55%,rgba(255,255,255,.07) 100%),rgba(20,20,20,.9);border-radius:16px;flex-direction:column;width:min(1000px,94vw);max-height:min(92vh,980px);animation:.25s cubic-bezier(.16,.84,.44,1) forwards modalIn;display:flex;position:relative;overflow:hidden;transform:translateY(12px)scale(.96);box-shadow:0 20px 60px rgba(0,0,0,.45)}html.light .project-modal{background:linear-gradient(145deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.02) 55%,rgba(0,0,0,.05) 100%),rgba(245,242,234,.9)}.project-modal.closing{animation:.2s forwards modalOut}@keyframes modalIn{to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modalOut{to{opacity:0;transform:translateY(6px)scale(.94)}}.project-modal-close{border:1px solid color-mix(in oklab,currentColor 16%,transparent);-webkit-backdrop-filter:blur(4px)saturate(140%);background:rgba(0,0,0,.25);border-radius:10px;place-items:center;width:36px;height:36px;transition:background .2s,transform .25s;display:grid;position:absolute;top:12px;right:12px}html.light .project-modal-close{background:rgba(0,0,0,.08)}.project-modal-close:hover{background:rgba(0,0,0,.4);transform:scale(1.07)}html.light .project-modal-close:hover{background:rgba(0,0,0,.15)}.project-modal-close:active{transform:scale(.92)}.project-modal-header{height:260px;position:relative;overflow:hidden}.project-modal-header img{object-fit:cover;width:100%;height:100%;display:block}.project-modal-header .fade{background:linear-gradient(transparent,rgba(0,0,0,.6));height:42%;position:absolute;bottom:0;left:0;right:0}.project-modal-header .text{position:absolute;bottom:18px;left:22px}.project-modal-header h3{margin:0;font-size:max(28px,min(4vw,44px));font-weight:800}.project-modal-header p{opacity:.9;margin:6px 0 0;font-family:IBM Plex Mono,ui-monospace,monospace}.project-modal-body{scrollbar-width:none;-ms-overflow-style:none;opacity:0;flex:1;grid-template-columns:1.4fr 1fr;gap:28px;padding:22px;animation:.45s 80ms forwards modalContentIn;display:grid;overflow-y:auto}.project-modal-body::-webkit-scrollbar{display:none}@keyframes modalContentIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.modal-scroll-controls{pointer-events:none;flex-direction:column;gap:10px;display:flex;position:absolute;bottom:22px;right:18px}.modal-scroll-controls .scroll-btn{border:1px solid color-mix(in oklab,currentColor 16%,transparent);-webkit-backdrop-filter:blur(8px)saturate(160%);cursor:pointer;pointer-events:auto;background:rgba(0,0,0,.35);border-radius:14px;place-items:center;width:42px;height:42px;transition:transform .25s,background .25s,border-color .25s;display:grid}html.light .modal-scroll-controls .scroll-btn{background:rgba(0,0,0,.12)}.modal-scroll-controls .scroll-btn .icon{width:18px;height:18px}.modal-scroll-controls .scroll-btn:hover{border-color:color-mix(in oklab,var(--accent-neon)45%,transparent);color:var(--accent-neon);background:rgba(0,0,0,.55);transform:translateY(-2px)}html.light .modal-scroll-controls .scroll-btn:hover{background:rgba(0,0,0,.2)}.modal-scroll-controls .scroll-btn:active{transform:scale(.94)}@media (max-width:640px){.modal-scroll-controls{bottom:14px;right:12px}.modal-scroll-controls .scroll-btn{border-radius:12px;width:36px;height:36px}}@media (max-width:900px){.project-modal-body{grid-template-columns:1fr}}.project-modal-body h4{margin:0 0 10px;font-size:20px;font-weight:800}.project-modal-body h5{opacity:.9;margin:14px 0 6px;font-size:15px;font-weight:700}.project-modal-body p{opacity:.9}.project-modal-body ul{gap:6px;margin:8px 0 0;padding-left:18px;display:grid}.project-modal-body .chips{flex-wrap:wrap;gap:8px;display:flex}.project-modal-body .chip{border:1px solid color-mix(in oklab,currentColor 16%,transparent);opacity:.95;border-radius:9999px;padding:6px 10px;font-size:12px}.project-modal-body .achievements ul{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.project-modal-body .achievements li{align-items:center;gap:10px;font-size:14px;display:flex}.project-modal-body .achv-icon{color:#facc15}.project-modal-actions.inline{flex-wrap:wrap;justify-content:flex-start;gap:14px;margin-top:24px;display:flex}.project-modal-actions.inline .action{border:1px solid color-mix(in oklab,currentColor 16%,transparent);color:inherit;cursor:pointer;-webkit-backdrop-filter:blur(8px)saturate(150%);background:rgba(255,255,255,.05);border-radius:8px;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:600;text-decoration:none;transition:background .25s,border-color .25s,transform .35s cubic-bezier(.25,.8,.25,1),box-shadow .35s;display:inline-flex}html.light .project-modal-actions.inline .action{background:rgba(0,0,0,.05)}.project-modal-actions.inline .action:hover{border-color:color-mix(in oklab,var(--accent-neon)55%,transparent);color:var(--accent-neon);box-shadow:0 8px 22px -8px rgba(0,0,0,.5),0 0 0 1px color-mix(in oklab,var(--accent-neon)35%,transparent);background:rgba(255,255,255,.18);transform:translateY(-3px)}html.light .project-modal-actions.inline .action:hover{background:rgba(0,0,0,.12)}.project-modal-actions.inline .action:active{background:rgba(255,255,255,.28);transform:translateY(0)scale(.96)}.project-modal-actions.inline .action.close{color:#ffb4b4;border-color:rgba(255,77,77,.3);border-color:color(display-p3 .923948 .3574 .331881/.3);border-color:lab(59.9063% 67.771 41.2992/.3)}.project-modal-actions.inline .action.close:hover{color:#ff4d4d;border-color:rgba(255,77,77,.55);border-color:color(display-p3 .923948 .3574 .331881/.55);border-color:lab(59.9063% 67.771 41.2992/.55)}.project-modal-actions{display:none}.projects-end-credit{max-width:1600px;margin:0 auto;padding:40px 24px 96px}.battle-stats-title{text-align:center;background:linear-gradient(90deg,#ff007a 0%,#ff007a 55%,#ff3fa5 70%,#ffed4e 100%);color:transparent;letter-spacing:.5px;-webkit-background-clip:text;background-clip:text;margin:0 0 48px;font-size:max(32px,min(4vw,54px));font-weight:700}html.light .battle-stats-title{background:linear-gradient(90deg,#ff007a 0%,#ff007a 55%,#ff3fa5 70%,#ff007a 100%);color:transparent;-webkit-background-clip:text;background-clip:text}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin:0 0 72px;padding:0 24px;display:grid}@media (min-width:900px){.stats-grid{grid-template-columns:repeat(6,minmax(0,1fr));padding:0 40px}}.stat-card{text-align:center;background:#131313;border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:38px 24px 34px;transition:transform .5s cubic-bezier(.16,.8,.24,1),box-shadow .5s,border-color .5s;position:relative;overflow:hidden;box-shadow:0 30px 55px -22px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.02)}.stat-card:before{content:"";opacity:.9;pointer-events:none;background:radial-gradient(circle at 50% 25%,rgba(255,255,255,.04),transparent 60%);position:absolute;top:0;bottom:0;left:0;right:0}html.light .stat-card{background:#efeae4;border-color:rgba(0,0,0,.08);box-shadow:0 30px 55px -22px rgba(0,0,0,.12)}html.light .stat-card:before{background:radial-gradient(circle at 50% 25%,rgba(0,0,0,.06),transparent 65%)}.stat-card:hover{border-color:rgba(255,0,122,.4);box-shadow:0 38px 70px -20px rgba(0,0,0,.65),0 0 0 1px rgba(255,255,255,.05)}html.light .stat-card:hover{border-color:rgba(255,0,122,.45);box-shadow:0 40px 80px -30px rgba(0,0,0,.18)}.stat-card .icon-wrap{margin:0 0 18px}.stat-card .icon{color:#f5f2f1;width:40px;height:40px;margin:0 auto;display:block}html.light .stat-card .icon{color:#000}.stat-value{letter-spacing:.5px;margin-bottom:6px;font-size:26px;font-weight:700}.stat-label{opacity:.75;font-size:14px;font-weight:500}html.light .stat-value{color:#000}html.light .stat-label{color:#111;opacity:.8}.generator-wrapper{justify-content:center;padding:0 24px;display:flex}.generator-card{text-align:center;background:#131313;border:1px solid rgba(255,255,255,.06);border-radius:32px;width:100%;max-width:1120px;padding:56px 64px 60px;position:relative;overflow:hidden;box-shadow:0 46px 90px -32px rgba(0,0,0,.75),0 0 0 1px rgba(255,255,255,.03)}.generator-card:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 40%,rgba(255,255,255,.04),transparent 70%);position:absolute;top:0;bottom:0;left:0;right:0}html.light .generator-card{background:#efeae4;border-color:rgba(0,0,0,.06);box-shadow:0 60px 110px -45px rgba(0,0,0,.18)}html.light .generator-card:before{background:radial-gradient(circle at 50% 40%,rgba(0,0,0,.06),transparent 70%)}.generator-title{justify-content:center;align-items:center;gap:12px;margin:0 0 22px;font-size:24px;font-weight:700;display:flex}.generator-title .brain{color:#ff007a;width:22px;height:22px}html.light .generator-title .brain{color:#ff007a}.generator-sub{opacity:.8;max-width:620px;margin:0 auto 30px;font-size:15px;line-height:1.5}html.light .generator-sub{color:#222;opacity:.75}.generate-btn{color:#d5d2d1;letter-spacing:.4px;cursor:pointer;background:#252323;border:1px solid rgba(255,255,255,.14);border-radius:8px;align-items:center;gap:10px;margin:0 auto;padding:10px 32px 11px;font-size:15px;font-weight:600;transition:background .35s,color .35s,transform .35s,box-shadow .35s,border-color .35s;display:inline-flex;box-shadow:0 4px 14px -4px rgba(0,0,0,.5)}.generate-btn .shuffle{width:16px;height:16px}.generate-btn:hover{color:#fff;background:#2f2d2d;border-color:rgba(255,0,122,.4);transform:translateY(-2px);box-shadow:0 10px 22px -10px rgba(0,0,0,.7)}.generate-btn:active{transform:translateY(0);box-shadow:0 4px 14px -4px rgba(0,0,0,.5)}.generate-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}html.light .generate-btn{color:#272525;background:#f0eae2;border-color:rgba(0,0,0,.1);box-shadow:0 4px 14px -4px rgba(0,0,0,.18)}html.light .generate-btn:hover{color:#111;background:#f6f1eb;box-shadow:0 14px 30px -14px rgba(0,0,0,.25)}.idea-box{background:#252323;border:1px solid rgba(255,255,255,.1);border-radius:14px;max-width:940px;margin:40px auto 0;padding:26px 30px 22px;box-shadow:0 22px 50px -24px rgba(0,0,0,.65)}html.light .idea-box{background:#fbf6f1;border-color:rgba(0,0,0,.12);box-shadow:0 30px 60px -32px rgba(0,0,0,.16)}.idea-text{font-family:var(--font-mono,monospace);letter-spacing:.6px;color:#f5f2f1;text-align:center;font-size:16px}html.light .idea-text{color:#000}.idea-note{letter-spacing:.5px;opacity:.6;color:#ddd;justify-content:center;align-items:center;gap:8px;margin-top:10px;font-size:12px;display:flex}html.light .idea-note{color:#222;opacity:.7}.idea-note .heart{width:14px;height:14px}@media (max-width:860px){.generator-card{border-radius:28px;padding:42px 30px 48px}.generator-title{font-size:20px}.battle-stats-title{margin-bottom:38px;font-size:max(30px,min(8vw,48px))}.stat-card{border-radius:22px;padding:34px 18px 30px}.stats-grid{gap:26px;margin-bottom:60px}.idea-box{padding:22px 20px 18px}}@media (prefers-reduced-motion:reduce){.stat-card,.generate-btn,.idea-box{transition:none!important;animation:none!important}}
