@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{--ink:#f2f0ff;--muted:#9290a8;--line:rgba(185,181,255,.16);--violet:#8e7dff;--cyan:#4ce0e4;--pink:#ec6dbd}*{box-sizing:border-box}body{margin:0;background:#090914;color:var(--ink);font-family:Space Grotesk,sans-serif}.portfolio-shell{min-height:100vh;position:relative;overflow:hidden;background:radial-gradient(circle at 55% 0%,#191535 0,transparent 37%),#090914}.energy-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.cursor-power-canvas{display:none}.fire-cursor-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;mix-blend-mode:normal}@media (pointer:coarse),(prefers-reduced-motion:reduce){.fire-cursor-canvas{display:none}}.ambient{position:absolute;pointer-events:none;border-radius:50%;filter:blur(90px);opacity:.22}.ambient-one{width:28rem;height:28rem;background:#493ab0;top:22rem;left:-16rem}.ambient-two{width:24rem;height:24rem;background:#0b7986;right:-13rem;top:70rem}.site-header,.section-wrap,footer{position:relative;z-index:2}.site-header{height:94px;max-width:1240px;margin:auto;padding:0 34px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;font-family:DM Mono;font-size:13px}.brand span{display:grid;place-items:center;border:1px solid var(--violet);width:36px;height:36px;color:var(--violet);font-family:Space Grotesk;font-weight:700;font-size:12px}.brand small{font-size:9px;letter-spacing:.18em;color:var(--muted)}.nav-links{display:flex;gap:35px}.nav-links a,.filter-row button,footer,.hud,.eyebrow,.hero-kicker,.hero-meta,.skill-footer,.project-info>span,.contact-data a,.terminal{font-family:DM Mono,monospace}.nav-links a{font-size:10px;letter-spacing:.12em;color:var(--muted);text-decoration:none}.nav-links a:hover,.nav-links a:focus{color:var(--ink)}.nav-links b{color:#595672;font-weight:400;margin-right:9px}.header-actions{display:flex;gap:17px;align-items:center}.palette-trigger,.hud-command{border:1px solid var(--line);background:rgba(20,19,39,.65);color:var(--muted);padding:9px 12px;display:flex;align-items:center;gap:8px;font:10px DM Mono;cursor:pointer}.palette-trigger:hover,.hud-command:hover{border-color:var(--violet);color:var(--ink)}kbd{font:9px DM Mono;color:#aaa6c7;border:1px solid var(--line);padding:2px 5px}.menu-trigger{display:none;background:none;border:0;color:var(--ink)}.hud{position:fixed;z-index:3;right:28px;top:120px;width:182px;padding:13px;border:1px solid var(--line);background:rgba(14,13,28,.72);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);font-size:9px;color:#727089;letter-spacing:.07em}.hud-top{display:flex;gap:7px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:11px}.status-dot,.pulse{width:6px;height:6px;border-radius:50%;background:#66e8ad;box-shadow:0 0 11px #66e8ad}.hud-time{margin-left:auto;color:#bcb8d0}.hud-metric{display:flex;justify-content:space-between;flex-direction:column;gap:5px;padding:14px 0 10px}.hud-metric strong{font:11px Space Grotesk;color:var(--ink)}.hud-bars{display:flex;align-items:end;gap:3px;height:20px;margin-bottom:13px}.hud-bars i{width:7px;background:var(--violet);height:35%;animation:bar 1.3s infinite alternate}.hud-bars i:nth-child(2n){height:80%;animation-delay:.2s}.hud-bars i:nth-child(3n){height:55%;animation-delay:.5s}.hud-command{padding:7px 4px;width:100%;font-size:8px;justify-content:center}.hud-command kbd{margin-left:auto}.section-wrap{max-width:1240px;margin:auto;padding-left:34px;padding-right:34px}.hero{min-height:690px;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding-top:54px}.hero-copy{padding-bottom:40px}.eyebrow{font-size:10px;letter-spacing:.18em;color:#8c8aa5;display:flex;gap:10px;align-items:center}.eyebrow-line{height:1px;width:45px;background:var(--line)}.hero-kicker{font-size:11px;letter-spacing:.15em;color:var(--muted);margin:68px 0 19px}.hero-kicker span{color:var(--violet);margin:0 8px}.hero h1{font-size:clamp(62px,8vw,112px);letter-spacing:-.075em;line-height:.91;margin:0;font-weight:600}.hero h1 em,.section-heading em,.contact-panel h2 em{font-style:normal;color:var(--violet)}.accent-dot{color:var(--cyan)}.hero-lede{font-size:16px;line-height:1.7;color:var(--muted);max-width:420px;margin:30px 0}.hero-actions{display:flex;align-items:center;gap:26px}.primary-cta{background:var(--violet);color:#fff;border-radius:0;padding:14px 18px;font:10px DM Mono;letter-spacing:.08em;box-shadow:0 0 28px #8e7dff40}.primary-cta:hover{background:#a093ff}.text-link{display:flex;gap:8px;align-items:center;color:var(--muted);font:10px DM Mono;text-decoration:none}.text-link:hover{color:var(--ink)}.hero-meta{display:flex;gap:38px;margin-top:70px;color:#aaa6bd;font-size:9px}.hero-meta b{display:block;color:#5f5c78;font-weight:400;margin-bottom:5px}.hero-visual{height:530px;position:relative;display:grid;place-items:center}.portrait-frame{width:min(370px,75%);aspect-ratio:1/1.22;position:relative;overflow:hidden;border:1px solid rgba(142,125,255,.45);clip-path:polygon(12% 0,100% 0,100% 88%,88% 100%,0 100%,0 12%);background:#17162e}.portrait-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(142,125,255,.15),transparent 40%,rgba(76,224,228,.13));mix-blend-mode:screen}.portrait-frame img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:saturate(.7) contrast(1.1)}.scanline{position:absolute;left:0;right:0;top:20%;height:1px;background:var(--cyan);box-shadow:0 0 12px var(--cyan);opacity:.6;animation:scan 4s infinite}.orbit{position:absolute;border:1px solid rgba(142,125,255,.22);border-radius:50%;transform:rotate(-28deg)}.orbit-a{width:480px;height:160px}.orbit-b{width:400px;height:400px;border-color:#4ce0e421;transform:rotate(35deg)}.visual-label,.coordinate{position:absolute;font:9px DM Mono;color:var(--muted);letter-spacing:.1em}.label-top{top:38px;left:9%}.label-bottom{bottom:30px;right:4%;color:var(--cyan)}.coordinate{left:5%;bottom:100px;line-height:1.7;color:#595672}.scroll-cue{position:absolute;bottom:28px;left:34px;color:#6c6884;font:9px DM Mono;letter-spacing:.15em;display:flex;align-items:center;gap:10px}.scroll-cue span{width:30px;height:1px;background:var(--violet)}.section-heading{padding-bottom:70px}.section-heading>span{color:var(--cyan);font:10px DM Mono;letter-spacing:.16em}.section-heading h2{font-size:clamp(42px,5vw,70px);letter-spacing:-.06em;line-height:.95;font-weight:500;margin:20px 0 0}.about-section{padding-top:150px;padding-bottom:170px}.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:110px;align-items:end}.about-statement{font-size:31px;line-height:1.25;letter-spacing:-.04em}.about-statement strong{color:var(--violet);font-weight:500}.about-copy p{color:var(--muted);font-size:15px;line-height:1.75;margin:0 0 50px}.stat-row{display:flex;gap:35px;border-top:1px solid var(--line);padding-top:20px}.stat-row div{display:flex;flex-direction:column;gap:7px}.stat-row strong{font-size:29px;color:var(--ink);font-weight:500}.stat-row span{font:8px DM Mono;color:#77738e}.skills-section{padding-bottom:180px}.compact{padding-bottom:45px}.skill-grid{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.skill-cell{min-height:190px;padding:17px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;transition:background .3s}.skill-cell:hover{background:rgba(142,125,255,.09)}.skill-cell>span{font:9px DM Mono;color:#5f5c78}.skill-cell img{width:44px;height:44px;-o-object-fit:contain;object-fit:contain;margin:10px 0}.skill-cell strong{font-size:15px;font-weight:500}.skill-cell small{font:8px DM Mono;color:var(--cyan);margin-top:7px}.skill-footer{display:flex;align-items:center;gap:20px;color:#6f6b87;font-size:8px;letter-spacing:.1em;margin-top:20px}.signal-line{height:1px;background:var(--line);flex:1}.projects-section{padding-bottom:190px}.project-heading{display:flex;justify-content:space-between;align-items:end}.filter-row{display:flex;gap:5px}.filter-row button{background:none;border:1px solid var(--line);color:#77738e;font-size:9px;padding:9px 12px;cursor:pointer}.filter-row button.active,.filter-row button:hover{color:var(--ink);border-color:var(--violet);background:rgba(142,125,255,.1)}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:70px 24px}.project-card{color:var(--ink);text-decoration:none;display:block}.project-image{height:285px;overflow:hidden;position:relative;background:#17162e}.project-image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 45%,rgba(8,8,19,.75))}.project-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .6s,filter .6s;filter:saturate(.75)}.project-card:hover img{transform:scale(1.06);filter:saturate(1.1)}.project-number{position:absolute;z-index:1;left:18px;top:17px;font:12px DM Mono;color:#fff}.project-arrow{position:absolute;z-index:1;right:18px;top:16px;color:#fff}.project-info{padding:19px 0;border-bottom:1px solid var(--line)}.project-info>span{font-size:9px;color:var(--cyan);letter-spacing:.1em}.project-info h3{font-size:25px;font-weight:500;letter-spacing:-.04em;margin:11px 0 8px}.project-info p{font-size:13px;line-height:1.6;color:var(--muted);max-width:500px;margin:0 0 17px}.tag-row{display:flex;gap:6px;flex-wrap:wrap}.tag-row b{font:9px DM Mono;color:#aaa6bf;border:1px solid var(--line);padding:5px 7px;font-weight:400}.contact-section{padding-bottom:100px}.contact-panel{display:grid;grid-template-columns:1.2fr .8fr;padding:56px;min-height:350px;border:1px solid var(--line);background:linear-gradient(120deg,rgba(31,27,68,.7),rgba(13,20,33,.62));position:relative;overflow:hidden}.contact-panel:after{content:"";position:absolute;width:380px;height:380px;border:1px solid rgba(76,224,228,.18);border-radius:50%;right:-100px;bottom:-260px}.contact-panel h2{font-size:clamp(44px,6vw,75px);line-height:.95;letter-spacing:-.07em;font-weight:500;margin:25px 0}.contact-panel p{color:var(--muted);max-width:400px;line-height:1.7}.email-link{display:inline-flex;align-items:center;gap:10px;color:var(--cyan);font:14px DM Mono;margin-top:22px;text-decoration:none}.contact-data{display:flex;flex-direction:column;justify-content:end;gap:25px}.contact-data>a{display:flex;align-items:center;gap:12px;color:#858199;text-decoration:none;font-size:9px}.contact-data strong{color:var(--ink);font-weight:400;margin-left:auto}.social-row{display:flex;gap:10px;padding-top:20px;border-top:1px solid var(--line)}.social-row a{display:grid;place-items:center;color:var(--muted);border:1px solid var(--line);width:38px;height:38px}.social-row a:hover{color:var(--cyan);border-color:var(--cyan)}footer{max-width:1240px;margin:auto;padding:27px 34px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#646078;font-size:8px;letter-spacing:.11em}footer a{color:var(--muted);text-decoration:none}.glass-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.overlay{position:fixed;z-index:10;top:0;right:0;bottom:0;left:0;background:rgba(5,5,13,.72);display:grid;place-items:start center;padding-top:17vh}.palette,.terminal{width:min(580px,calc(100% - 32px));background:#121124;border:1px solid var(--violet);box-shadow:0 24px 80px #00000080}.palette-input{display:flex;gap:12px;align-items:center;padding:18px;border-bottom:1px solid var(--line);color:var(--violet)}.palette-input input{background:none;border:0;outline:0;color:var(--ink);font:15px Space Grotesk;width:100%}.palette>button{display:flex;width:100%;justify-content:space-between;align-items:center;padding:16px 18px;background:none;border:0;border-bottom:1px solid rgba(185,181,255,.08);color:var(--ink);font:12px DM Mono;cursor:pointer}.palette>button span{font-size:8px;color:#6f6b87;margin-right:auto}.palette>button:hover{background:rgba(142,125,255,.12)}.palette>small{display:block;padding:14px 18px;color:#646078;font:8px DM Mono}.terminal-head{display:flex;align-items:center;gap:6px;padding:11px 14px;border-bottom:1px solid var(--line);color:#77738e;font-size:10px}.terminal-head>span{width:8px;height:8px;background:#ec6d7e;border-radius:50%}.terminal-head>span:nth-child(2){background:#e6c66b}.terminal-head>span:nth-child(3){background:#65d49b}.terminal-head b{margin:auto;font-weight:400}.terminal-head button{background:none;border:0;color:var(--muted);cursor:pointer}.terminal-body{min-height:260px;padding:20px;color:#aaa6c0;font:12px/1.9 DM Mono}.terminal-command{color:var(--cyan)}.terminal-prompt{display:flex;gap:10px;color:var(--violet)}.terminal-prompt input{background:none;border:0;outline:0;color:var(--ink);font:12px DM Mono;flex:1}@keyframes bar{to{transform:scaleY(.45);opacity:.45}}@keyframes scan{0%,to{top:15%;opacity:0}35%,70%{opacity:.7}50%{top:80%}}@media (max-width:800px){.site-header{height:74px;padding:0 18px}.nav-links{display:none;position:absolute;top:74px;left:16px;right:16px;background:#111021;border:1px solid var(--line);padding:15px;flex-direction:column;gap:0}.nav-links.open{display:flex}.nav-links a{padding:14px}.palette-trigger{display:none}.menu-trigger{display:block}.hud{display:none}.section-wrap{padding-left:18px;padding-right:18px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:65px;min-height:auto}.hero-kicker{margin-top:48px}.hero h1{font-size:clamp(58px,17vw,95px)}.hero-visual{height:430px;order:-1}.portrait-frame{width:220px}.orbit-a{width:320px;height:120px}.orbit-b{width:280px;height:280px}.scroll-cue{position:static;margin:20px 0 65px}.hero-meta{margin-top:45px;gap:18px}.about-section{padding-top:80px;padding-bottom:100px}.about-grid{grid-template-columns:1fr;gap:45px}.about-statement{font-size:26px}.skills-section{padding-bottom:110px}.skill-grid{grid-template-columns:repeat(2,1fr)}.skill-cell{min-height:150px}.project-heading{display:block}.filter-row{margin-top:35px;overflow-x:auto;padding-bottom:5px}.filter-row button{white-space:nowrap}.project-grid{grid-template-columns:1fr;gap:48px}.project-image{height:220px}.projects-section{padding-bottom:110px}.contact-panel{grid-template-columns:1fr;padding:28px;gap:50px}.contact-data>a{font-size:8px}.contact-data strong{font-size:9px}footer{padding:25px 18px;gap:12px;flex-wrap:wrap}.label-top{left:0}.label-bottom{right:0}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.about-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.about-links a{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);padding:9px 12px;color:var(--muted);font:10px DM Mono;text-decoration:none;transition:.25s}.about-links a:hover{color:var(--ink);border-color:var(--violet);transform:translateY(-2px)}.services-strip{margin-top:110px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:34px}.service-card{background:rgba(16,15,32,.82);padding:25px;min-height:180px;transition:.3s}.service-card:hover{background:rgba(34,29,69,.9);transform:translateY(-4px)}.service-card>span,.timeline-date,.form-heading{font:10px DM Mono;letter-spacing:.15em;color:var(--cyan)}.service-card h3{font-size:18px;line-height:1.15;margin:34px 0 10px}.service-card p,.timeline-item p{color:var(--muted);font-size:13px;line-height:1.7;margin:0}.journey-section{padding-top:130px}.timeline{border-left:1px solid var(--violet);margin:42px 0 0 12px}.timeline-item{display:grid;grid-template-columns:220px 1fr;gap:30px;padding:0 0 42px 30px;position:relative}.timeline-item:before{content:"";position:absolute;left:-5px;top:4px;width:9px;height:9px;border-radius:50%;background:var(--violet);box-shadow:0 0 18px var(--violet)}.timeline-date{color:var(--muted);padding-top:3px}.timeline-item h3{font-size:19px;margin:0 0 9px}.contact-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;padding:55px}.contact-intro>p{max-width:430px;color:var(--muted);line-height:1.7;margin:22px 0 28px}.contact-data{display:grid;gap:13px}.contact-data>a{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:10px;text-decoration:none}.contact-data>a:hover{color:var(--cyan)}.contact-data strong{color:var(--ink);font-weight:400;margin-left:3px}.contact-form{border-left:1px solid var(--line);padding-left:55px;display:grid;gap:20px}.form-heading{display:flex;justify-content:space-between;margin-bottom:8px}.form-heading small{color:var(--muted)}.contact-form label{display:grid;gap:8px;color:var(--muted);font:10px DM Mono;letter-spacing:.12em}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);background:rgba(8,8,20,.7);color:var(--ink);padding:13px;font:14px Space Grotesk;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #4ce0e414}.contact-form textarea{min-height:125px;resize:vertical}.contact-form button{display:flex;align-items:center;justify-content:center;gap:8px;border:0;background:linear-gradient(100deg,var(--violet),#bd65d9);color:#fff;padding:14px;font:11px DM Mono;cursor:pointer}.contact-form button:disabled{opacity:.65;cursor:wait}.form-success,.form-error{font:11px DM Mono;margin:0}.form-success{color:var(--cyan)}.form-error{color:#ff8aab}.spin{animation:spin 1s linear infinite}.portrait-frame{transform:translateY(-22px) perspective(900px) rotateX(calc((var(--pointer-y, 50vh) - 50vh) * -.012deg)) rotateY(calc((var(--pointer-x, 50vw) - 50vw) * .012deg));transform-style:preserve-3d;transition:transform .2s ease-out,box-shadow .35s}.portrait-frame:before{content:"";position:absolute;top:-18px;right:-18px;bottom:-18px;left:-18px;border-radius:inherit;background:conic-gradient(from 180deg,transparent 0 22%,rgba(142,125,255,.8),rgba(76,224,228,.65),transparent 62%);filter:blur(17px);opacity:.35;z-index:-1;animation:portrait-aura 5s linear infinite}.portrait-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(125deg,rgba(255,255,255,.3),transparent 28%,transparent 65%,rgba(142,125,255,.22));opacity:0;pointer-events:none;transition:opacity .35s}.portrait-frame:hover{transform:translateY(-34px) perspective(900px) rotateX(-4deg) rotateY(6deg) scale(1.035);box-shadow:24px 28px 60px #00000080,0 0 44px #8e7dff4d}.portrait-frame:hover:after{opacity:1}.portrait-frame img{transition:filter .35s,transform .35s}.portrait-frame:hover img{filter:saturate(1.28) contrast(1.08) brightness(1.08);transform:translateZ(22px) scale(1.03)}@keyframes portrait-aura{to{transform:rotate(360deg)}}@media (max-width:760px){.portrait-frame{transform:translateY(-10px)}.portrait-frame:hover{transform:translateY(-18px) scale(1.02)}.service-grid{grid-template-columns:1fr 1fr}.timeline-item{grid-template-columns:1fr;gap:8px}.contact-panel{grid-template-columns:1fr;gap:36px;padding:28px 22px}.contact-form{border-left:0;border-top:1px solid var(--line);padding:32px 0 0}.services-strip{margin-top:75px}}@media (max-width:480px){.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.about-links a{flex:1;justify-content:center}.contact-data strong{font-size:11px}}.skills-section{position:relative}.skills-section:before{content:"";position:absolute;top:22%;right:8%;bottom:8%;left:8%;background:radial-gradient(circle at 50% 45%,rgba(142,125,255,.12),transparent 58%);filter:blur(30px);pointer-events:none}.skills-section .section-heading,.skills-section .skill-grid,.skills-section .skill-footer{position:relative}.skills-section .section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.skills-section .section-heading:after{content:"LIVE SYSTEM / 06 MODULES";font:10px DM Mono;letter-spacing:.12em;color:var(--cyan);border:1px solid rgba(76,224,228,.25);padding:9px 12px;background:rgba(76,224,228,.04)}.skill-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:38px;padding:16px;border:1px solid var(--line);background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(255,255,255,.01));box-shadow:0 20px 70px #00000038}.skill-cell{position:relative;min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:22px 12px;border:1px solid rgba(185,181,255,.14);background:linear-gradient(160deg,rgba(20,18,42,.82),rgba(10,10,22,.94));overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}.skill-cell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 25%,rgba(142,125,255,.16),transparent 75%);transform:translate(-110%);transition:transform .7s}.skill-cell:after{content:"";position:absolute;top:0;left:18px;right:18px;height:1px;background:linear-gradient(90deg,transparent,var(--violet),transparent);opacity:.7}.skill-cell:hover{transform:translateY(-8px);border-color:#8e7dffb3;box-shadow:0 16px 35px #4e3db440,0 0 24px #8e7dff1f}.skill-cell:hover:before{transform:translate(110%)}.skill-cell>span{position:absolute;top:12px;left:14px;font:10px DM Mono;color:var(--cyan);letter-spacing:.12em}.skill-cell img{width:56px;height:56px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 8px 12px rgba(0,0,0,.35));transition:transform .3s,filter .3s}.skill-cell:hover img{transform:scale(1.14) rotate(-4deg);filter:drop-shadow(0 0 16px rgba(142,125,255,.45))}.skill-cell strong{font-size:14px;letter-spacing:.02em}.skill-cell small{font:9px DM Mono;letter-spacing:.12em;color:var(--muted)}.skill-footer{display:flex;align-items:center;gap:14px;margin-top:20px;color:var(--muted);font:9px DM Mono;letter-spacing:.12em}.signal-line{height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--violet),var(--cyan),transparent);position:relative}.signal-line:after{content:"";position:absolute;left:28%;top:-2px;width:4px;height:4px;background:var(--cyan);border-radius:50%;box-shadow:0 0 12px var(--cyan)}@media (max-width:900px){.skill-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:480px){.skills-section .section-heading{align-items:start;flex-direction:column}.skills-section .section-heading:after{align-self:flex-start}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;gap:8px;margin-top:28px}.skill-cell{min-height:150px;padding:18px 8px}.skill-cell img{width:44px;height:44px}.skill-cell strong{font-size:12px}.skill-cell small{font-size:8px}.skill-footer{font-size:8px;gap:8px}.skill-footer span:last-child{display:none}}.blue-power-flame-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;mix-blend-mode:screen}@media (pointer:coarse),(prefers-reduced-motion:reduce){.blue-power-flame-canvas{display:none}}.frequency-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.frequency-overview{display:grid;grid-template-columns:repeat(3,auto);gap:5px 14px;align-items:end;border:1px solid rgba(76,224,228,.18);padding:13px 16px;background:rgba(10,14,31,.62);font:9px DM Mono;color:var(--muted)}.frequency-overview strong{font:20px Space Grotesk;color:var(--ink);grid-row:1}.frequency-overview span{grid-row:2;color:var(--cyan);font-size:8px;letter-spacing:.1em}.frequency-controls{display:flex;flex-wrap:wrap;gap:7px;margin:4px 0 22px}.frequency-controls button{border:1px solid rgba(185,181,255,.18);background:rgba(12,15,31,.7);color:#77738e;padding:8px 11px;font:9px DM Mono;letter-spacing:.08em;cursor:pointer;transition:.25s}.frequency-controls button:hover,.frequency-controls button.active{color:#f2f0ff;border-color:var(--cyan);background:rgba(76,224,228,.09);box-shadow:0 0 18px #4ce0e41f}.tech-universe{position:relative;min-height:570px;overflow:hidden;border:1px solid rgba(185,181,255,.18);background:radial-gradient(circle at 50% 50%,rgba(35,76,170,.22),transparent 19%),radial-gradient(circle at 20% 20%,rgba(76,224,228,.08),transparent 26%),#090d1c;isolation:isolate}.tech-universe:before,.tech-universe:after{content:"";position:absolute;top:12%;right:21%;bottom:12%;left:21%;border:1px solid rgba(76,224,228,.12);border-radius:50%;transform:rotate(-18deg);pointer-events:none}.tech-universe:after{top:25%;right:8%;bottom:25%;left:8%;border-color:#8e7dff1f;transform:rotate(28deg)}.constellation-lines{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.45;background:linear-gradient(32deg,transparent 49.8%,rgba(76,224,228,.2) 50%,transparent 50.2%),linear-gradient(151deg,transparent 49.8%,rgba(142,125,255,.16) 50%,transparent 50.2%),linear-gradient(90deg,transparent 49.9%,rgba(76,224,228,.1) 50%,transparent 50.1%);-webkit-mask-image:radial-gradient(circle,black 0 35%,transparent 73%);mask-image:radial-gradient(circle,black 0 35%,transparent 73%);pointer-events:none}.universe-core{position:absolute;z-index:2;left:50%;top:50%;width:142px;height:142px;transform:translate(-50%,-50%);display:grid;place-items:center;border:1px solid rgba(210,249,255,.42);border-radius:50%;background:radial-gradient(circle,rgba(239,255,255,.22),rgba(48,133,255,.13) 36%,rgba(17,25,75,.72) 68%,transparent 70%);box-shadow:0 0 28px #3faeff40,inset 0 0 32px #5bcaff26}.universe-core strong{font-size:30px;color:#fff;text-shadow:0 0 20px #5bdcff}.universe-core small{position:absolute;bottom:23px;text-align:center;font:7px/1.3 DM Mono;letter-spacing:.13em;color:#7edfff}.core-ring{position:absolute;top:-13px;right:-13px;bottom:-13px;left:-13px;border:1px solid rgba(76,224,228,.3);border-left-color:transparent;border-radius:50%;animation:core-spin 9s linear infinite}.tech-node{--x:50%;--y:50%;position:absolute;z-index:3;left:var(--x);top:var(--y);width:86px;min-height:96px;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid rgba(185,181,255,.16);background:linear-gradient(145deg,rgba(23,35,70,.92),rgba(8,12,28,.94));color:var(--ink);cursor:pointer;transition:transform .3s,border-color .3s,box-shadow .3s,opacity .3s}.tech-node:hover,.tech-node:focus-visible{transform:translate(-50%,-50%) scale(1.16);border-color:#63e4ff;box-shadow:0 0 26px #39b3ff4d,inset 0 0 16px #4ce0e41a;outline:none}.tech-node img{width:42px;height:42px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 0 8px rgba(94,199,255,.2))}.tech-node strong{font-size:10px;white-space:nowrap}.tech-node small{font:7px DM Mono;color:var(--cyan);letter-spacing:.08em}.node-orbit{position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px;border:1px solid rgba(76,224,228,.15);border-radius:50%;border-right-color:transparent;animation:node-spin 5s linear infinite}.node-0{--x:16%;--y:21%}.node-1{--x:37%;--y:15%}.node-2{--x:68%;--y:15%}.node-3{--x:87%;--y:28%}.node-4{--x:91%;--y:63%}.node-5{--x:75%;--y:84%}.node-6{--x:46%;--y:90%}.node-7{--x:19%;--y:73%}.tech-node:nth-of-type(10n+1){--x:11%;--y:45%}.tech-node:nth-of-type(10n+2){--x:29%;--y:37%}.tech-node:nth-of-type(10n+3){--x:51%;--y:18%}.tech-node:nth-of-type(10n+4){--x:74%;--y:28%}.tech-node:nth-of-type(10n+5){--x:89%;--y:48%}.tech-node:nth-of-type(10n+6){--x:77%;--y:73%}.tech-node:nth-of-type(10n+7){--x:54%;--y:86%}.tech-node:nth-of-type(10n+8){--x:31%;--y:78%}.tech-node:nth-of-type(10n+9){--x:12%;--y:67%}.tech-node:nth-of-type(10n){--x:36%;--y:58%}.tech-detail{position:relative;display:flex;align-items:center;gap:14px;margin:14px 0 0;padding:14px 42px 14px 16px;border:1px solid rgba(76,224,228,.28);background:rgba(10,15,34,.92);box-shadow:0 12px 30px #0000003d}.tech-detail img{width:42px;height:42px;-o-object-fit:contain;object-fit:contain}.tech-detail span{font:8px DM Mono;color:var(--cyan);letter-spacing:.12em}.tech-detail h3{margin:4px 0;font-size:18px}.tech-detail p{margin:0;color:var(--muted);font:10px DM Mono}.detail-close{position:absolute;top:10px;right:10px;border:0;background:none;color:var(--muted);cursor:pointer}.detail-close:hover{color:#fff}@keyframes core-spin{to{transform:rotate(360deg)}}@keyframes node-spin{to{transform:rotate(-360deg)}}@media (max-width:800px){.frequency-heading{align-items:flex-start;flex-direction:column}.frequency-overview{width:100%;justify-content:space-between}.tech-universe{min-height:620px}.tech-node{width:70px;min-height:78px}.tech-node img{width:32px;height:32px}.tech-node strong{font-size:8px}.tech-node small{font-size:6px}.universe-core{width:112px;height:112px}.universe-core strong{font-size:24px}.node-0{--x:14%;--y:18%}.node-1{--x:42%;--y:12%}.node-2{--x:78%;--y:18%}.node-3{--x:88%;--y:39%}.node-4{--x:84%;--y:76%}.node-5{--x:58%;--y:91%}.node-6{--x:27%;--y:84%}.node-7{--x:10%;--y:61%}}.frequency-heading:after{display:none}.tech-universe{display:grid;grid-template-columns:repeat(4,minmax(108px,1fr));gap:1.15rem;min-height:0;padding:2rem clamp(1rem,4vw,4rem);overflow:hidden}.constellation-lines{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.universe-core{position:relative;inset:auto;grid-column:1 / -1;grid-row:1;justify-self:center;margin:0 auto 1rem;z-index:3}.tech-node{position:absolute;left:50%;top:50%;width:86px;min-height:92px;z-index:3}.tech-node:nth-of-type(n){grid-column:auto;grid-row:auto}@media (max-width: 900px){.tech-universe{grid-template-columns:repeat(3,minmax(100px,1fr));gap:.9rem;padding-inline:1rem}}@media (max-width: 620px){.tech-universe{grid-template-columns:repeat(2,minmax(100px,1fr));padding:1.25rem .75rem}.tech-node{min-height:116px}}.frequency-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:4px 0 22px}.frequency-actions .frequency-controls{margin:0}.all-stacks-trigger{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;border:1px solid var(--cyan);background:rgba(76,224,228,.1);color:#f2f0ff;padding:9px 12px;font:9px DM Mono;letter-spacing:.08em;cursor:pointer}.all-stacks-trigger:hover{background:rgba(76,224,228,.2);box-shadow:0 0 20px #4ce0e42e}.profile-core{overflow:visible}.profile-core>img{width:84px;height:84px;-o-object-fit:cover;object-fit:cover;border-radius:50%;border:1px solid rgba(225,250,255,.72);box-shadow:0 0 22px #48c5ff66}.profile-core>strong{position:absolute;inset:auto;font-size:0}.profile-core small{bottom:-28px}.media-fallback{display:grid;place-items:center;min-height:120px;color:var(--muted);font:8px DM Mono;letter-spacing:.12em;background:rgba(76,224,228,.05)}.media-section{position:relative}.media-count{color:var(--cyan);font:9px DM Mono;letter-spacing:.1em;padding-top:12px}.certificate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.certificate-card,.memory-card{text-align:left;color:var(--ink);border:1px solid rgba(185,181,255,.16);background:rgba(14,18,38,.74);cursor:pointer;padding:0;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}.certificate-card:hover,.certificate-card:focus-visible,.memory-card:hover,.memory-card:focus-visible{transform:translateY(-5px);border-color:var(--cyan);box-shadow:0 14px 30px #00000038,0 0 24px #4ce0e41f;outline:none}.certificate-card img{width:100%;aspect-ratio:1.42;-o-object-fit:cover;object-fit:cover;display:block}.certificate-card span,.certificate-card small{display:block;padding:10px 12px 0}.certificate-card span{font-size:12px;line-height:1.3;text-transform:capitalize}.certificate-card small{padding-top:6px;padding-bottom:12px;color:var(--cyan);font:8px DM Mono;letter-spacing:.08em}.memory-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:92px;gap:10px}.memory-card{position:relative;min-height:0}.memory-card img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .5s}.memory-card:hover img{transform:scale(1.06)}.memory-card:after{content:"";position:absolute;top:45%;right:0;bottom:0;left:0;background:linear-gradient(transparent,rgba(4,8,22,.85));pointer-events:none}.memory-card span,.memory-card small{position:absolute;z-index:1;left:12px;bottom:22px;color:#fff;font-size:12px;text-transform:capitalize}.memory-card small{bottom:9px;color:var(--cyan);font:7px DM Mono;letter-spacing:.1em}.memory-0{grid-column:span 5;grid-row:span 4}.memory-2{grid-column:span 4;grid-row:span 3}.memory-4{grid-column:span 3;grid-row:span 3}.memory-5{grid-column:span 5;grid-row:span 3}.stack-explorer-overlay,.media-viewer-overlay{z-index:50;padding:clamp(16px,4vw,60px);overflow:auto}.stack-explorer{width:min(1040px,100%);max-height:90vh;overflow:auto;padding:24px;position:relative}.explorer-head{display:flex;justify-content:space-between;align-items:flex-start;padding-right:30px}.explorer-head span{color:var(--cyan);font:8px DM Mono;letter-spacing:.14em}.explorer-head h3{margin:7px 0 20px;font-size:28px}.explorer-tools{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.explorer-tools input{flex:1 1 220px;min-width:180px;border:1px solid rgba(185,181,255,.2);background:rgba(5,8,20,.7);color:var(--ink);padding:10px 12px;font:10px DM Mono;outline:none}.explorer-tools input:focus{border-color:var(--cyan)}.explorer-tools button{border:1px solid rgba(185,181,255,.2);color:var(--muted);background:transparent;padding:9px 10px;font:8px DM Mono;cursor:pointer}.explorer-tools button.active,.explorer-tools button:hover{color:#fff;border-color:var(--cyan)}.explorer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.explorer-node{min-height:108px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(185,181,255,.14);background:rgba(19,25,49,.72);color:var(--ink);cursor:pointer}.explorer-node:hover,.explorer-node:focus-visible{border-color:var(--cyan);box-shadow:0 0 20px #4ce0e424;outline:none;transform:translateY(-2px)}.explorer-node img{width:44px;height:44px;-o-object-fit:contain;object-fit:contain}.explorer-node strong{font-size:10px}.explorer-node small{color:var(--cyan);font:7px DM Mono}.empty-state{color:var(--muted);font:11px DM Mono;padding:30px 0;text-align:center}.media-viewer{width:min(1000px,100%);max-height:92vh;padding:26px;position:relative;display:flex;flex-direction:column;align-items:center}.media-viewer>img{max-width:100%;max-height:74vh;-o-object-fit:contain;object-fit:contain}.media-viewer>p{margin:14px 0 0;color:var(--ink);text-transform:capitalize}.viewer-controls{display:flex;align-items:center;gap:22px;margin-top:16px;color:var(--cyan);font:10px DM Mono}.viewer-controls button{border:1px solid rgba(76,224,228,.4);color:#fff;background:transparent;width:34px;height:30px;cursor:pointer}.viewer-controls button:hover{background:rgba(76,224,228,.14)}@media (max-width:800px){.frequency-actions{flex-direction:column}.all-stacks-trigger{align-self:flex-start}.certificate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.memory-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}.memory-0,.memory-1,.memory-2,.memory-3,.memory-4,.memory-5{grid-column:span 1;grid-row:span 1}.memory-0{grid-column:span 2}.stack-explorer{padding:18px}.explorer-head h3{font-size:22px}}@media (prefers-reduced-motion:reduce){.certificate-card,.memory-card,.explorer-node{transition:none}.core-ring,.node-orbit{animation:none}}.tech-universe{display:block;min-height:650px;padding:0;overflow:hidden}.tech-universe:before{top:12%;right:26%;bottom:12%;left:26%;animation:orbit-drift 18s linear infinite}.tech-universe:after{top:24%;right:14%;bottom:24%;left:14%;animation:orbit-drift-reverse 26s linear infinite}.universe-core.profile-core{position:absolute;left:50%;top:50%;margin:0;width:156px;height:156px;transform:translate(-50%,-50%)}.tech-node{--orbit-radius:250px;--orbit-duration:30s;--orbit-direction:1;position:absolute;left:50%;top:50%;width:86px;min-height:92px;transform-origin:center;animation:tech-orbit var(--orbit-duration) linear infinite;animation-direction:normal}.tech-node:hover,.tech-node:focus-visible{transform:translate(-50%,-50%) scale(1.14);animation-play-state:paused}.node-ring-0{--orbit-radius:170px;--orbit-duration:24s}.node-ring-1{--orbit-radius:235px;--orbit-duration:34s;animation-direction:reverse}.node-ring-2{--orbit-radius:292px;--orbit-duration:44s}.node-slot-0{--orbit-start:0deg}.node-slot-1{--orbit-start:45deg}.node-slot-2{--orbit-start:90deg}.node-slot-3{--orbit-start:135deg}.node-slot-4{--orbit-start:180deg}.node-slot-5{--orbit-start:225deg}.node-slot-6{--orbit-start:270deg}.node-slot-7{--orbit-start:315deg}@keyframes tech-orbit{0%{transform:translate(-50%,-50%) rotate(var(--orbit-start)) translateY(calc(var(--orbit-radius) * -1)) rotate(calc(var(--orbit-start) * -1))}to{transform:translate(-50%,-50%) rotate(calc(var(--orbit-start) + 360deg)) translateY(calc(var(--orbit-radius) * -1)) rotate(calc((var(--orbit-start) + 360deg) * -1))}}@keyframes orbit-drift{to{transform:rotate(342deg)}}@keyframes orbit-drift-reverse{to{transform:rotate(-332deg)}}.profile-core>img{width:96px;height:96px}.memory-grid{grid-template-columns:repeat(12,1fr);grid-auto-rows:110px;gap:14px;padding-right:8%}.memory-card{border:0;background:#0c1228;box-shadow:0 12px 30px #00000038}.memory-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border:1px solid rgba(255,255,255,.12);pointer-events:none;transition:border-color .3s}.memory-card:hover:before,.memory-card:focus-visible:before{border-color:#70e2ffb3}.memory-card span{opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s;font-family:Space Grotesk;font-size:13px}.memory-card:hover span,.memory-card:focus-visible span{opacity:1;transform:translateY(0)}.memory-card small{opacity:.75}.memory-0{grid-column:span 6;grid-row:span 5}.memory-1{grid-column:span 3;grid-row:span 3}.memory-2{grid-column:span 3;grid-row:span 4}.memory-3{grid-column:span 4;grid-row:span 4}.memory-4,.memory-5{grid-column:span 4;grid-row:span 3}.memory-6{grid-column:span 3;grid-row:span 4}.memory-7{grid-column:span 3;grid-row:span 3}.memory-8{grid-column:span 6;grid-row:span 4}.memory-9{grid-column:span 3;grid-row:span 3}.memory-10{grid-column:span 3;grid-row:span 4}.memory-11{grid-column:span 4;grid-row:span 3}@media (max-width:900px){.tech-universe{min-height:570px}.node-ring-0{--orbit-radius:130px}.node-ring-1{--orbit-radius:195px}.node-ring-2{--orbit-radius:235px}.tech-node{width:70px;min-height:78px}.tech-node img{width:32px;height:32px}.universe-core.profile-core{width:126px;height:126px}.profile-core>img{width:78px;height:78px}.memory-grid{padding-right:0}}@media (max-width:620px){.tech-universe{min-height:500px}.node-ring-0{--orbit-radius:96px}.node-ring-1{--orbit-radius:154px}.node-ring-2{--orbit-radius:205px}.tech-node{width:58px;min-height:66px}.tech-node strong{font-size:7px}.tech-node small{font-size:5px}.tech-node img{width:26px;height:26px}.universe-core.profile-core{width:104px;height:104px}.profile-core>img{width:64px;height:64px}.memory-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:140px;gap:9px}.memory-0,.memory-1,.memory-2,.memory-3,.memory-4,.memory-5,.memory-6,.memory-7,.memory-8,.memory-9,.memory-10,.memory-11{grid-column:span 1;grid-row:span 1}.memory-0,.memory-8{grid-column:span 2;grid-row:span 2}.memory-card span{opacity:1;transform:none;font-size:10px}}@media (prefers-reduced-motion:reduce){.tech-node{animation:none;transform:translate(-50%,-50%) rotate(var(--orbit-start)) translateY(calc(var(--orbit-radius) * -1)) rotate(calc(var(--orbit-start) * -1))}.tech-node:hover,.tech-node:focus-visible{transform:translate(-50%,-50%) rotate(var(--orbit-start)) translateY(calc(var(--orbit-radius) * -1)) rotate(calc(var(--orbit-start) * -1)) scale(1.08)}}.tech-node:hover,.tech-node:focus-visible{animation-play-state:paused;filter:brightness(1.22);transform-origin:center;box-shadow:0 0 26px #39b3ff4d,inset 0 0 16px #4ce0e41a}.tech-node:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.memory-card:nth-child(6n+1){grid-column:span 6;grid-row:span 5}.memory-card:nth-child(6n+2){grid-column:span 3;grid-row:span 3}.memory-card:nth-child(6n+3){grid-column:span 3;grid-row:span 4}.memory-card:nth-child(6n+4){grid-column:span 4;grid-row:span 4}.memory-card:nth-child(6n+5){grid-column:span 4;grid-row:span 3}.memory-card:nth-child(6n){grid-column:span 4;grid-row:span 3}.media-viewer{animation:viewer-arrive .24s ease both}@keyframes photo-arrive{to{opacity:1}}@keyframes viewer-arrive{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:900px){.memory-grid{padding-right:0}}@media (max-width:620px){.tech-universe{min-height:330px}.node-ring-0{--orbit-radius:112px}.node-ring-1,.node-ring-2{display:none}.tech-node{width:54px;min-height:58px}.tech-node img{width:26px;height:26px}.tech-node strong{font-size:7px}.tech-node small{display:none}.universe-core.profile-core{width:104px;height:104px}.profile-core>img{width:64px;height:64px}.memory-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(145px,52vw,220px);gap:9px}.memory-card:nth-child(n){grid-column:span 1;grid-row:span 1}.memory-card:nth-child(5n+1){grid-column:span 2;grid-row:span 2}.memory-card span{opacity:1;transform:none;font-size:10px}.media-viewer{padding:16px}.media-viewer>img{max-height:70vh}}@media (prefers-reduced-motion:reduce){.memory-card img{opacity:1;animation:none}.memory-card:hover img{transform:none}.media-viewer{animation:none}}.tech-universe{display:block;position:relative;min-height:650px;padding:0;overflow:hidden}.universe-core.profile-core{position:absolute;left:50%;top:50%;margin:0;transform:translate(-50%,-50%)}.tech-node{position:absolute;left:50%;top:50%;width:86px;min-height:92px;transform-origin:center;animation:tech-orbit var(--orbit-duration) linear infinite;animation-direction:normal;z-index:3}.tech-node:hover,.tech-node:focus-visible{animation-play-state:paused;filter:brightness(1.22);outline:2px solid var(--cyan);outline-offset:4px}.tech-node:hover img,.tech-node:focus-visible img{transform:scale(1.12)}.tech-node img{transition:transform .25s,filter .25s}.tech-node:focus-visible{outline-color:var(--cyan)}.memory-grid{grid-auto-flow:dense;grid-auto-rows:clamp(82px,8.5vw,112px);gap:clamp(10px,1.4vw,18px);padding-right:5%}.memory-card{isolation:isolate;border-radius:2px;box-shadow:0 16px 38px #0000004d}.memory-card img{opacity:0;animation:photo-arrive .7s ease forwards}.memory-card:after{z-index:1;opacity:.18;transition:opacity .45s}.memory-card:hover:after,.memory-card:focus-visible:after{opacity:.75}.memory-card span{z-index:2;max-width:calc(100% - 24px);padding:8px 10px;bottom:12px;border:1px solid rgba(255,255,255,.22);background:rgba(8,12,25,.48);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.media-viewer-overlay{background:rgba(3,5,14,.84);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.media-viewer>img{width:auto;height:auto;opacity:1}.viewer-controls{justify-content:space-between;width:min(280px,100%)}.viewer-controls button{min-width:44px;min-height:44px;font-size:20px}@media (max-width: 900px){.tech-universe{min-height:570px}.tech-node{width:70px;min-height:78px}.tech-node img{width:32px;height:32px}.universe-core.profile-core{width:126px;height:126px}.profile-core>img{width:78px;height:78px}.memory-grid{padding-right:0}}@media (max-width: 620px){.tech-universe{min-height:330px}.node-ring-0{--orbit-radius: 112px}.node-ring-1,.node-ring-2{display:none}.tech-node{width:54px;min-height:58px}.tech-node img{width:26px;height:26px}.tech-node strong{font-size:7px}.tech-node small{display:none}.universe-core.profile-core{width:104px;height:104px}.profile-core>img{width:64px;height:64px}.memory-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(145px,52vw,220px);gap:9px}.memory-card:nth-child(n){grid-column:span 1;grid-row:span 1}.memory-card:nth-child(5n+1){grid-column:span 2;grid-row:span 2}.memory-card span{opacity:1;transform:none;font-size:10px}.media-viewer{padding:16px}.media-viewer>img{max-height:70vh}}@media (prefers-reduced-motion: reduce){.tech-node{animation:none;transform:translate(-50%,-50%) rotate(var(--orbit-start)) translateY(calc(var(--orbit-radius) * -1)) rotate(calc(var(--orbit-start) * -1))}.tech-node:hover,.tech-node:focus-visible{transform:translate(-50%,-50%) rotate(var(--orbit-start)) translateY(calc(var(--orbit-radius) * -1)) rotate(calc(var(--orbit-start) * -1))}.memory-card img{opacity:1;animation:none}.memory-card:hover img{transform:none}.media-viewer{animation:none}}.moments-section{padding-bottom:170px}.moments-section .section-heading{display:flex;align-items:end;justify-content:space-between}.moments-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:-10px 0 24px}.moments-toolbar p{color:var(--muted);font-size:14px;margin:0}.moment-filters{display:flex;gap:6px;flex-wrap:wrap}.moment-filters button{background:transparent;border:1px solid var(--line);color:#77738e;padding:8px 10px;cursor:pointer;font:9px DM Mono;letter-spacing:.08em}.moment-filters button:hover,.moment-filters button.active{border-color:var(--cyan);color:var(--cyan);background:rgba(76,224,228,.08)}.memory-archive{position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0 28px}.archive-index{position:absolute;z-index:3;top:0;left:0;transform:translateY(-50%);color:var(--cyan);background:#090914;padding-right:12px;font:12px DM Mono}.archive-index span{color:#65617e;margin-left:8px;font-size:8px;letter-spacing:.12em}.memory-grid{display:flex;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--violet) transparent;padding:12px 4vw 18px 12px}.memory-card{flex:0 0 clamp(220px,24vw,320px);height:clamp(260px,30vw,370px);position:relative;scroll-snap-align:start;border:0;border-radius:3px;background:#0c1228;overflow:hidden;box-shadow:0 16px 38px #0000004d;text-align:left;color:var(--ink);cursor:pointer}.memory-card:nth-child(3n+2){height:clamp(220px,25vw,310px);margin-top:44px}.memory-card:nth-child(4n+3){height:clamp(290px,33vw,410px)}.memory-card img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;opacity:1;transition:transform .6s,filter .6s}.memory-card:after{content:"";position:absolute;top:45%;right:0;bottom:0;left:0;background:linear-gradient(transparent,rgba(4,8,22,.9));pointer-events:none;opacity:.65;transition:opacity .35s}.memory-card:hover img,.memory-card:focus-visible img{transform:scale(1.06);filter:saturate(1.15)}.memory-card:hover:after,.memory-card:focus-visible:after{opacity:.95}.memory-card span{position:absolute;z-index:1;left:14px;bottom:31px;max-width:calc(100% - 28px);color:#fff;font-size:13px;text-transform:capitalize}.memory-card small{position:absolute;z-index:1;left:14px;bottom:13px;color:var(--cyan);font:8px DM Mono;letter-spacing:.1em}.memory-card:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.archive-hint{display:flex;justify-content:flex-end;gap:9px;color:#6f6b87;font:8px DM Mono;letter-spacing:.12em}.archive-hint span{color:var(--cyan);font-size:14px;line-height:8px}@media (max-width:800px){.moments-section .section-heading{display:block}.moments-section .media-count{display:block;margin-top:22px}.moments-toolbar{align-items:flex-start;flex-direction:column;margin-top:0}.memory-grid{padding-left:0;padding-right:18px}.memory-card{flex-basis:72vw;height:82vw;max-height:410px}.memory-card:nth-child(3n+2),.memory-card:nth-child(4n+3){height:70vw;max-height:350px;margin-top:0}}@media (prefers-reduced-motion:reduce){.memory-card img{transition:none}}.footer-powered{display:inline-flex;align-items:center;gap:7px;color:#858199}.footer-powered img{width:20px;height:20px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 0 8px rgba(142,125,255,.45))}.footer-powered strong{color:var(--ink);font-weight:400;letter-spacing:.14em}@media (max-width:800px){.footer-powered{order:4;width:100%;justify-content:center;padding-top:6px;border-top:1px solid var(--line)}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 0 0% 100%;--foreground: 240 10% 3.9%;--card: 0 0% 100%;--card-foreground: 240 10% 3.9%;--popover: 0 0% 100%;--popover-foreground: 240 10% 3.9%;--primary: 221.2 83.2% 53.3%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 221.2 83.2% 53.3%;--radius: .5rem}.dark{--background: 240 10% 3.9%;--foreground: 0 0% 98%;--card: 240 10% 3.9%;--card-foreground: 0 0% 98%;--popover: 240 10% 3.9%;--popover-foreground: 0 0% 98%;--primary: 217.2 91.2% 59.8%;--primary-foreground: 222.2 47.4% 11.2%;--secondary: 217.2 32.6% 17.5%;--secondary-foreground: 210 40% 98%;--muted: 217.2 32.6% 17.5%;--muted-foreground: 215 20.2% 65.1%;--accent: 217.2 32.6% 17.5%;--accent-foreground: 210 40% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 210 40% 98%;--border: 217.2 32.6% 17.5%;--input: 217.2 32.6% 17.5%;--ring: 224.3 76.3% 48%}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground));font-family:Inter,sans-serif}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media (min-width: 1400px){.container{max-width:1400px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.-bottom-1{bottom:-.25rem}.-left-2{left:-.5rem}.-top-6{top:-1.5rem}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.bottom-20{bottom:5rem}.bottom-4{bottom:1rem}.bottom-\[-4rem\]{bottom:-4rem}.left-0{left:0}.left-1\/2{left:50%}.left-1\/4{left:25%}.left-10{left:2.5rem}.left-4{left:1rem}.left-8{left:2rem}.right-0{right:0}.right-1{right:.25rem}.right-1\/4{right:25%}.right-10{right:2.5rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-16{top:4rem}.top-20{top:5rem}.top-\[110\%\]{top:110%}.-z-10{z-index:-10}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.z-\[-5\]{z-index:-5}.z-\[100\]{z-index:100}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0{margin-left:0}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-4{margin-right:1rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-3{height:.75rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-96{height:24rem}.h-\[1px\]{height:1px}.h-\[2px\]{height:2px}.h-auto{height:auto}.h-full{height:100%}.max-h-screen{max-height:100vh}.min-h-\[100svh\]{min-height:100svh}.min-h-\[120px\]{min-height:120px}.min-h-\[150px\]{min-height:150px}.w-0{width:0px}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-96{width:24rem}.w-full{width:100%}.min-w-\[100px\]{min-width:100px}.min-w-\[160px\]{min-width:160px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-7xl{max-width:80rem}.max-w-\[120px\]{max-width:120px}.max-w-\[280px\]{max-width:280px}.max-w-\[90\%\]{max-width:90%}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.resize-y{resize:vertical}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-items-center{justify-items:center}.gap-1\.5{gap:.375rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-border\/10{border-color:hsl(var(--border) / .1)}.border-border\/20{border-color:hsl(var(--border) / .2)}.border-border\/40{border-color:hsl(var(--border) / .4)}.border-border\/50{border-color:hsl(var(--border) / .5)}.border-destructive{border-color:hsl(var(--destructive))}.border-foreground\/20{border-color:hsl(var(--foreground) / .2)}.border-input{border-color:hsl(var(--input))}.border-primary\/10{border-color:hsl(var(--primary) / .1)}.border-primary\/20{border-color:hsl(var(--primary) / .2)}.border-primary\/30{border-color:hsl(var(--primary) / .3)}.border-transparent{border-color:transparent}.bg-background{background-color:hsl(var(--background))}.bg-background\/50{background-color:hsl(var(--background) / .5)}.bg-background\/80{background-color:hsl(var(--background) / .8)}.bg-background\/95{background-color:hsl(var(--background) / .95)}.bg-blue-500\/10{background-color:#3b82f61a}.bg-card{background-color:hsl(var(--card))}.bg-card\/30{background-color:hsl(var(--card) / .3)}.bg-card\/40{background-color:hsl(var(--card) / .4)}.bg-card\/50{background-color:hsl(var(--card) / .5)}.bg-cyan-500\/10{background-color:#06b6d41a}.bg-destructive{background-color:hsl(var(--destructive))}.bg-foreground\/50{background-color:hsl(var(--foreground) / .5)}.bg-muted{background-color:hsl(var(--muted))}.bg-muted-foreground\/20{background-color:hsl(var(--muted-foreground) / .2)}.bg-muted\/30{background-color:hsl(var(--muted) / .3)}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\/5{background-color:hsl(var(--primary) / .05)}.bg-purple-500\/10{background-color:#a855f71a}.bg-purple-500\/5{background-color:#a855f70d}.bg-secondary{background-color:hsl(var(--secondary))}.bg-secondary\/10{background-color:hsl(var(--secondary) / .1)}.bg-secondary\/5{background-color:hsl(var(--secondary) / .05)}.bg-secondary\/50{background-color:hsl(var(--secondary) / .5)}.bg-transparent{background-color:transparent}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.bg-gradient-to-tr{background-image:linear-gradient(to top right,var(--tw-gradient-stops))}.from-background{--tw-gradient-from: hsl(var(--background)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--background) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-background\/10{--tw-gradient-from: hsl(var(--background) / .1) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--background) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-background\/80{--tw-gradient-from: hsl(var(--background) / .8) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--background) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-background\/90{--tw-gradient-from: hsl(var(--background) / .9) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--background) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-black\/20{--tw-gradient-from: rgb(0 0 0 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-400{--tw-gradient-from: #60a5fa var(--tw-gradient-from-position);--tw-gradient-to: rgb(96 165 250 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500\/10{--tw-gradient-from: rgb(59 130 246 / .1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-600{--tw-gradient-from: #2563eb var(--tw-gradient-from-position);--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-600{--tw-gradient-from: #059669 var(--tw-gradient-from-position);--tw-gradient-to: rgb(5 150 105 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-foreground{--tw-gradient-from: hsl(var(--foreground)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--foreground) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary{--tw-gradient-from: hsl(var(--primary)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\/30{--tw-gradient-from: hsl(var(--primary) / .3) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\/5{--tw-gradient-from: hsl(var(--primary) / .05) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\/50{--tw-gradient-from: hsl(var(--primary) / .5) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from: #a855f7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-600{--tw-gradient-from: #9333ea var(--tw-gradient-from-position);--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-600{--tw-gradient-from: #dc2626 var(--tw-gradient-from-position);--tw-gradient-to: rgb(220 38 38 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-background\/50{--tw-gradient-to: hsl(var(--background) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(var(--background) / .5) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-blue-500{--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #3b82f6 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary\/20{--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / .2) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary\/30{--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / .3) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-500{--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #a855f7 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-background{--tw-gradient-to: hsl(var(--background)) var(--tw-gradient-to-position)}.to-background\/80{--tw-gradient-to: hsl(var(--background) / .8) var(--tw-gradient-to-position)}.to-background\/90{--tw-gradient-to: hsl(var(--background) / .9) var(--tw-gradient-to-position)}.to-blue-400{--tw-gradient-to: #60a5fa var(--tw-gradient-to-position)}.to-blue-500{--tw-gradient-to: #3b82f6 var(--tw-gradient-to-position)}.to-cyan-500{--tw-gradient-to: #06b6d4 var(--tw-gradient-to-position)}.to-emerald-400{--tw-gradient-to: #34d399 var(--tw-gradient-to-position)}.to-foreground\/70{--tw-gradient-to: hsl(var(--foreground) / .7) var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-primary\/50{--tw-gradient-to: hsl(var(--primary) / .5) var(--tw-gradient-to-position)}.to-primary\/60{--tw-gradient-to: hsl(var(--primary) / .6) var(--tw-gradient-to-position)}.to-primary\/70{--tw-gradient-to: hsl(var(--primary) / .7) var(--tw-gradient-to-position)}.to-purple-400{--tw-gradient-to: #c084fc var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to: #a855f7 var(--tw-gradient-to-position)}.to-purple-500\/10{--tw-gradient-to: rgb(168 85 247 / .1) var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.to-red-400{--tw-gradient-to: #f87171 var(--tw-gradient-to-position)}.to-secondary\/5{--tw-gradient-to: hsl(var(--secondary) / .05) var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-0{padding-bottom:0}.pb-12{padding-bottom:3rem}.pb-4{padding-bottom:1rem}.pr-10{padding-right:2.5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-20{padding-top:5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-8{padding-top:2rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[10px\]{font-size:10px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.text-card-foreground{color:hsl(var(--card-foreground))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/50{color:hsl(var(--foreground) / .5)}.text-foreground\/70{color:hsl(var(--foreground) / .7)}.text-foreground\/80{color:hsl(var(--foreground) / .8)}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-90{opacity:.9}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.blur-3xl{--tw-blur: blur(64px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-\[100px\]{--tw-blur: blur(100px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-md{--tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / .07)) drop-shadow(0 2px 2px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.delay-1000{transition-delay:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.duration-700{animation-duration:.7s}.delay-1000{animation-delay:1s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.\[-ms-overflow-style\:none\]{-ms-overflow-style:none}.\[scrollbar-width\:none\]{scrollbar-width:none}html{scroll-behavior:smooth}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:hsl(var(--background))}::-webkit-scrollbar-thumb{background:hsl(var(--muted));border-radius:5px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground))}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.hover\:-translate-y-1:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:rotate-3:hover{--tw-rotate: 3deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-primary:hover{border-color:hsl(var(--primary))}.hover\:border-primary\/30:hover{border-color:hsl(var(--primary) / .3)}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-muted\/80:hover{background-color:hsl(var(--muted) / .8)}.hover\:bg-primary:hover{background-color:hsl(var(--primary))}.hover\:bg-primary\/10:hover{background-color:hsl(var(--primary) / .1)}.hover\:bg-primary\/5:hover{background-color:hsl(var(--primary) / .05)}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:from-blue-700:hover{--tw-gradient-from: #1d4ed8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(29 78 216 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-purple-700:hover{--tw-gradient-to: #7e22ce var(--tw-gradient-to-position)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-primary:hover{color:hsl(var(--primary))}.hover\:text-primary-foreground:hover{color:hsl(var(--primary-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-primary\/10:hover{--tw-shadow-color: hsl(var(--primary) / .1);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-primary\/25:hover{--tw-shadow-color: hsl(var(--primary) / .25);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-primary\/5:hover{--tw-shadow-color: hsl(var(--primary) / .05);--tw-shadow: var(--tw-shadow-colored)}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-primary:focus{--tw-ring-color: hsl(var(--primary))}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus\:ring-offset-background:focus{--tw-ring-offset-color: hsl(var(--background))}.focus-visible\:border-primary:focus-visible{border-color:hsl(var(--primary))}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-0:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-primary\/50:focus-visible{--tw-ring-color: hsl(var(--primary) / .5)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:w-full{width:100%}.group:hover .group-hover\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.group:hover .group-hover\:animate-bounce{animation:bounce 1s infinite}.group:hover .group-hover\:bg-primary{background-color:hsl(var(--primary))}.group:hover .group-hover\:text-primary{color:hsl(var(--primary))}.group:hover .group-hover\:text-primary-foreground{color:hsl(var(--primary-foreground))}.group:hover .group-hover\:opacity-100{opacity:1}.group.destructive .group-\[\.destructive\]\:text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus{--tw-ring-offset-color: #dc2626}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=active\]\:text-primary[data-state=active]{color:hsl(var(--primary))}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity: .8}.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y: -100%}@supports ((-webkit-backdrop-filter: var(--tw)) or (backdrop-filter: var(--tw))){.supports-\[backdrop-filter\]\:bg-background\/60{background-color:hsl(var(--background) / .6)}}.dark\:bg-primary\/20:is(.dark *){background-color:hsl(var(--primary) / .2)}.dark\:shadow-primary\/5:is(.dark *){--tw-shadow-color: hsl(var(--primary) / .05);--tw-shadow: var(--tw-shadow-colored)}@media (min-width: 640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:h-12{height:3rem}.sm\:h-52{height:13rem}.sm\:w-12{width:3rem}.sm\:w-auto{width:auto}.sm\:min-w-0{min-width:0px}.sm\:max-w-sm{max-width:24rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:justify-center{justify-content:center}.sm\:gap-3{gap:.75rem}.sm\:p-4{padding:1rem}.sm\:p-6{padding:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y: 100%}}@media (min-width: 768px){.md\:absolute{position:absolute}.md\:bottom-8{bottom:2rem}.md\:right-2{right:.5rem}.md\:top-2{top:.5rem}.md\:mx-0{margin-left:0;margin-right:0}.md\:mb-12{margin-bottom:3rem}.md\:mb-6{margin-bottom:1.5rem}.md\:mb-8{margin-bottom:2rem}.md\:ml-8{margin-left:2rem}.md\:mr-2{margin-right:.5rem}.md\:mt-0{margin-top:0}.md\:block{display:block}.md\:inline{display:inline}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:h-10{height:2.5rem}.md\:h-11{height:2.75rem}.md\:h-16{height:4rem}.md\:h-64{height:16rem}.md\:h-72{height:18rem}.md\:h-80{height:20rem}.md\:h-9{height:2.25rem}.md\:w-10{width:2.5rem}.md\:w-64{width:16rem}.md\:w-72{width:18rem}.md\:w-80{width:20rem}.md\:max-w-\[420px\]{max-width:420px}.md\:max-w-lg{max-width:32rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:justify-start{justify-content:flex-start}.md\:justify-end{justify-content:flex-end}.md\:justify-center{justify-content:center}.md\:gap-6{gap:1.5rem}.md\:gap-8{gap:2rem}.md\:space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.md\:p-6{padding:1.5rem}.md\:p-8{padding:2rem}.md\:px-0{padding-left:0;padding-right:0}.md\:px-3{padding-left:.75rem;padding-right:.75rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:py-0{padding-top:0;padding-bottom:0}.md\:py-2{padding-top:.5rem;padding-bottom:.5rem}.md\:py-20{padding-top:5rem;padding-bottom:5rem}.md\:pl-6{padding-left:1.5rem}.md\:pr-8{padding-right:2rem}.md\:pt-0{padding-top:0}.md\:text-left{text-align:left}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:opacity-0{opacity:0}.group:hover .md\:group-hover\:opacity-100{opacity:1}}@media (min-width: 1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-7xl{font-size:4.5rem;line-height:1}}.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar{display:none}
