@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&family=Orbitron:wght@500;700;800&family=Oxanium:wght@500;600;700&family=Rajdhani:wght@400;500;600;700&display=swap";.admin-shell{min-height:100vh;background:radial-gradient(circle at 20% 20%,#2f1848 0%,transparent 35%),radial-gradient(circle at 85% 8%,#4d173a 0%,transparent 30%),linear-gradient(180deg,#0b0414,#120713);color:#f6efff;padding:1.2rem;font-family:Rajdhani,sans-serif;overflow-x:hidden}.admin-wrap{width:min(1180px,100%);margin:0 auto;border:1px solid rgba(233,132,255,.3);border-radius:20px;background:#170a23c7;padding:1rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow-x:hidden}.admin-topbar{display:flex;justify-content:space-between;gap:.8rem;flex-wrap:wrap;align-items:center;margin-bottom:1rem}.admin-topbar h1{margin:0;font-family:Orbitron,sans-serif;font-size:clamp(1.15rem,3.6vw,1.95rem)}.admin-topbar-actions{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}.admin-topbar-actions .admin-link-btn,.admin-topbar-actions .admin-icon-btn{border-color:#f7bbee9e;background:#210a2c38;color:#f7e5ff;box-shadow:inset 0 0 0 1px #ff78d514}.admin-topbar-actions .admin-link-btn svg,.admin-topbar-actions .admin-icon-btn svg{color:#ffd0f0}.admin-topbar-actions .admin-link-btn:hover,.admin-topbar-actions .admin-icon-btn:hover{border-color:#ffd8f3d9;background:#38134257}.admin-link-btn,.admin-icon-btn{border:1px solid rgba(255,183,229,.45);border-radius:999px;padding:.42rem .88rem;text-decoration:none;background:#300e3ac2;color:#f6efff;display:inline-flex;align-items:center;gap:.4rem;font-family:inherit;font-size:.95rem;transition:transform .2s ease,border-color .2s ease,background .2s ease}.admin-link-btn:hover,.admin-icon-btn:hover{transform:translateY(-1px);border-color:#ffd8f3c7}.admin-icon-btn{cursor:pointer}.admin-icon-btn.default{background:#300e3ac2}.admin-icon-btn.success{background:linear-gradient(110deg,#2b9f6173,#4cc28b57);border-color:#7ff3b899}.admin-icon-btn.danger{background:linear-gradient(110deg,#bf3b5d73,#a0274557);border-color:#ff94ad99}.admin-icon-btn.ghost{background:#2b0d38b3;border-color:#b085c794}.admin-icon-btn:disabled{opacity:.5;cursor:not-allowed}.admin-login-wrap{width:min(420px,100%);margin:10vh auto 0;border:1px solid rgba(233,132,255,.3);border-radius:20px;background:#170a23bf;padding:1rem}.admin-login-wrap h1{margin:0 0 .35rem;font-family:Orbitron,sans-serif}.admin-login-wrap p{margin:0 0 .8rem;color:#d7c3e2}.admin-back-link{margin-top:.5rem;display:inline-flex;border:1px solid rgba(255,183,229,.45);border-radius:999px;padding:.4rem .85rem;text-decoration:none;background:#300e3ac2;color:#f6efff}.admin-tabs{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:1rem}.admin-tabs button{border:1px solid rgba(255,159,223,.4);border-radius:999px;background:#2b0d2cb8;color:#f6efff;padding:.38rem .75rem;cursor:pointer;transition:transform .2s ease}.admin-tabs button:hover{transform:translateY(-1px)}.admin-tabs button.active{background:linear-gradient(90deg,#b44dff4d,#ff35683d)}.admin-card{border:1px solid rgba(255,159,223,.26);border-radius:14px;background:#220c2ba3;padding:.8rem;margin-bottom:.8rem}.admin-card-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.65rem}.admin-card-head h3{margin:0}.admin-card-note{margin:0;color:#d8c6e3}.admin-grid{display:grid;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.admin-grid-single{grid-template-columns:1fr}.admin-card h3{margin:0 0 .5rem}.admin-subsection-title{margin-top:1rem;padding-top:.75rem;border-top:1px dashed rgba(255,182,233,.34)}.admin-card .admin-list{margin-top:.9rem;padding-top:.8rem;border-top:1px dashed rgba(255,182,233,.34)}.admin-form{display:grid;gap:.45rem;min-width:0}.admin-form input,.admin-form textarea,.admin-form select{border:1px solid rgba(255,167,225,.38);border-radius:10px;background:#2b0d38d1;color:#f6efff;padding:.55rem .65rem;font-family:inherit;width:100%;min-width:0}.admin-file-input{border:1px solid rgba(255,167,225,.38);border-radius:10px;background:#2b0d38d1;color:#f6efff;padding:.4rem .5rem;display:flex;align-items:center;gap:.55rem}.admin-file-native{display:none}.admin-file-trigger{width:34px;height:34px;border-radius:9px;border:1px solid rgba(255,188,231,.55);background:linear-gradient(110deg,#ff51ae6b,#8559ff59);color:#fff2fb;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.admin-file-name{font-size:.95rem;color:#f6efffe6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-form textarea{min-height:90px}.admin-form button{border:1px solid rgba(255,188,231,.55);border-radius:10px;background:linear-gradient(110deg,#ff51ae6b,#8559ff59);color:#fff2fb;padding:.5rem .8rem;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;cursor:pointer}.admin-form button:disabled{opacity:.56;cursor:not-allowed}.admin-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;border:1px solid rgba(255,167,225,.38);border-radius:10px;background:#2b0d38d1;padding:.5rem .65rem}.admin-toggle-row span{color:#f6efff}.admin-toggle-btn{position:relative;min-width:82px;border:1px solid rgba(255,188,231,.55);border-radius:999px;background:#1f0928e6;color:#f6efff;padding:.2rem .5rem;display:inline-flex;align-items:center;justify-content:flex-end;gap:.35rem;transition:background .25s ease,border-color .25s ease;cursor:pointer}.admin-toggle-btn .admin-toggle-thumb{position:absolute;left:3px;width:22px;height:22px;border-radius:50%;background:#f7ddff;box-shadow:0 0 0 1px #ffbfed80,0 3px 10px #0d04128c;transition:transform .22s ease}.admin-toggle-btn .admin-toggle-label{font-size:.84rem;font-weight:700;letter-spacing:.02em}.admin-toggle-btn.is-on{background:linear-gradient(90deg,#ff56b080,#8559ff80);border-color:#ffc5ecbf}.admin-toggle-btn.is-on .admin-toggle-thumb{transform:translate(53px)}.admin-toggle-btn.is-off{background:#1f0928f2;border-color:#b085c794}.admin-toggle-btn:disabled{opacity:.56;cursor:not-allowed}.admin-inline-actions{display:flex;gap:.35rem;flex-wrap:wrap}.admin-list{display:grid;gap:.5rem;margin-top:.65rem;min-width:0}.admin-list-item{border:1px solid rgba(255,164,226,.28);border-radius:12px;background:#270d32b8;padding:.65rem;display:grid;gap:.55rem;color:#f6efff;min-width:0}.admin-list-item p{margin:0;overflow-wrap:anywhere;word-break:break-word}.admin-list-item.clickable{text-align:left;cursor:pointer;transition:transform .2s ease,border-color .2s ease;color:#f6efff;font-family:inherit}.admin-list-item.clickable:hover{transform:translateY(-2px);border-color:#ffcbf18c}.admin-list-item h4,.admin-list-item.clickable p{margin:0;color:#f6efff;overflow-wrap:anywhere;word-break:break-word}.admin-tech-list{display:flex;flex-wrap:wrap;gap:.38rem}.admin-tech-chip{display:inline-flex;align-items:center;gap:.3rem;border:1px solid rgba(174,139,199,.5);border-radius:999px;background:#371749b8;color:#f3e8fb;padding:.18rem .52rem;font-size:.9rem;line-height:1.2}.admin-tech-empty{color:#d4bfdc}.admin-item-head{display:flex;justify-content:space-between;gap:.6rem;align-items:center;flex-wrap:wrap;min-width:0}.admin-item-head h4{margin:0;display:inline-flex;align-items:center;gap:.35rem;overflow-wrap:anywhere;word-break:break-word}.admin-status-pill{border-radius:999px;padding:.16rem .58rem;font-size:.78rem;border:1px solid transparent}.admin-status-pill.on{background:#4ac68a29;border-color:#6fe4ac94;color:#a6ffd2}.admin-status-pill.off{background:#bd5e7c29;border-color:#ff9db894;color:#ffb1c8}.admin-item-grid{display:grid;gap:.2rem}.admin-item-grid p{margin:0;color:#e8d9ef;overflow-wrap:anywhere}.admin-message-item{cursor:default}.admin-message-time{font-size:.8rem;color:#d9c8e6}.admin-edit-wrap{display:grid;gap:.55rem;border-top:1px solid rgba(255,159,223,.22);padding-top:.55rem}.admin-detail-page{margin-bottom:1rem}.admin-detail-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.6rem;margin-bottom:.65rem}.admin-detail-actions{display:flex;flex-wrap:wrap;gap:.45rem}.admin-back-detail-btn{border:1px solid rgba(255,183,229,.45);border-radius:999px;padding:.42rem .88rem;background:#300e3ac2;color:#f6efff;display:inline-flex;align-items:center;gap:.35rem;font-family:inherit;cursor:pointer}.admin-detail-card{margin-bottom:0}.admin-detail-image-wrap{margin-top:.65rem}.admin-detail-image-btn{width:100%;border:1px solid rgba(255,188,231,.42);border-radius:12px;background:#1d0926d1;padding:.55rem;color:#f6efff;display:grid;gap:.45rem;justify-items:center;cursor:pointer}.admin-detail-image{width:100%;max-height:320px;-o-object-fit:contain;object-fit:contain;border-radius:10px}.admin-detail-image-btn span{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem}.admin-fullscreen-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#08040eeb;z-index:120;display:grid;place-items:center;padding:1rem}.admin-fullscreen-image{max-width:min(1200px,96vw);max-height:90vh;-o-object-fit:contain;object-fit:contain;border-radius:12px;border:1px solid rgba(255,201,240,.45)}.admin-fullscreen-close{position:fixed;top:1rem;right:1rem;border:1px solid rgba(255,183,229,.45);border-radius:999px;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:#300e3ad1;color:#f6efff;cursor:pointer}.admin-crop-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#08040ed1;z-index:140;display:grid;place-items:start center;padding:1rem;overflow-y:auto}.admin-crop-modal{width:min(760px,100%);max-height:calc(100vh - 2rem);border:1px solid rgba(255,176,228,.44);border-radius:16px;background:#1c0b28f2;padding:.9rem;display:grid;gap:.8rem;overflow-y:auto;margin-block:auto}.admin-crop-modal h3{margin:0}.admin-crop-preview{width:100%;aspect-ratio:var(--crop-ratio);max-height:48vh;position:relative;border-radius:12px;overflow:hidden;border:1px solid rgba(255,188,231,.35);background:#12071beb}.admin-crop-preview img{position:absolute;max-width:none;max-height:none;transform-origin:center;pointer-events:none}.admin-crop-controls{display:grid;gap:.5rem}.admin-crop-controls label{display:grid;gap:.35rem;font-size:.92rem}.admin-crop-controls input[type=range]{width:100%}.admin-crop-actions{display:flex;gap:.45rem;flex-wrap:wrap}.admin-create-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:130;padding:1rem;background:#07030db8;display:grid;place-items:center}.admin-create-modal{width:min(640px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow-y:auto;border:1px solid rgba(255,178,230,.44);border-radius:18px;background:#1b0a27f2;box-shadow:0 20px 42px #04010873,inset 0 0 26px #ffaced14;padding:.95rem;display:grid;gap:.7rem}.admin-create-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.admin-create-head h3{margin:0}@media (max-width: 720px){.admin-crop-overlay{padding:.7rem}.admin-crop-modal{max-height:calc(100vh - 1.4rem);padding:.75rem}.admin-crop-preview{max-height:40vh}.admin-create-overlay{padding:0;background:#07030dd6}.admin-create-modal{width:100vw;max-height:100dvh;height:100dvh;border-radius:0;border:none;padding:.9rem}}.admin-alert{border:1px solid rgba(255,196,234,.46);border-radius:12px;padding:.65rem;margin-bottom:.8rem;background:#35123eb8}.admin-alert.error-shake{animation:shakeAlert .4s ease-in-out;border-color:#e74c3c99;background:#54191eb8;color:#fcc;display:flex;align-items:center;gap:8px}@keyframes shakeAlert{0%{transform:translate(0)}25%{transform:translate(-6px)}50%{transform:translate(6px)}75%{transform:translate(-6px)}to{transform:translate(0)}}.admin-alert.success{border-color:#6fe4ac94;background:#1a46379e}.admin-toast{position:fixed;right:1.2rem;bottom:1.2rem;z-index:150;border:1px solid rgba(111,228,172,.58);border-radius:12px;padding:.65rem .85rem;background:#1a4637e6;color:#dbffe9;display:inline-flex;align-items:center;gap:.45rem;box-shadow:0 10px 28px #05160e73}.admin-metric-grid{display:grid;gap:.65rem;grid-template-columns:repeat(4,minmax(0,1fr))}.admin-metric{border:1px solid rgba(255,164,226,.28);border-radius:12px;background:#270d32b8;padding:.7rem}.admin-metric h4,.admin-metric p{margin:0}.admin-metric p{margin-top:.3rem;font-size:1.5rem;font-weight:700}.admin-analytics-card{margin-top:.75rem}.admin-analytics-card .admin-card-head h3{display:inline-flex;align-items:center;gap:.4rem}.admin-ga-range-actions{display:inline-flex;gap:.35rem;flex-wrap:wrap}.admin-ga-range-actions button{border:1px solid rgba(255,162,226,.4);border-radius:999px;background:#2b0d38c7;color:#f6efff;padding:.32rem .72rem;font-family:inherit;cursor:pointer}.admin-ga-range-actions button.active{border-color:#ffd0eec2;background:linear-gradient(95deg,#ff59ab73,#8559ff73)}.admin-ga-error{margin:.6rem 0 0;border:1px solid rgba(255,145,175,.62);background:#8a224359;color:#ffd8e4;border-radius:10px;padding:.55rem .65rem}.admin-ga-summary-grid{margin-top:.65rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,minmax(0,1fr))}.admin-ga-summary-grid article{border:1px solid rgba(255,164,226,.28);border-radius:12px;background:#270d329e;padding:.62rem}.admin-ga-summary-grid h4,.admin-ga-summary-grid p{margin:0}.admin-ga-summary-grid p{margin-top:.25rem;font-size:1.3rem;font-weight:700}.admin-ga-chart-wrap,.admin-ga-pages-wrap{margin-top:.85rem}.admin-ga-chart-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.admin-ga-chart-head h4,.admin-ga-pages-wrap h4{margin:0}.admin-ga-chart-head span{font-size:.88rem;color:#d9c8e6}.admin-ga-bars{margin-top:.55rem;height:180px;border:1px solid rgba(255,167,225,.28);border-radius:12px;background:#1a0822ad;padding:.6rem;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(10px,1fr);align-items:end;gap:.22rem;overflow-x:auto;scrollbar-width:thin}.admin-ga-bar-item{height:100%;min-width:10px;display:grid;gap:.25rem;align-content:end}.admin-ga-bar-item span{font-size:.72rem;color:#d8c6e3;writing-mode:vertical-rl;transform:rotate(180deg);line-height:1;height:44px;justify-self:center}.admin-ga-bar{width:100%;border-radius:6px;background:linear-gradient(180deg,#ff66b8e6,#8559ffcc);box-shadow:0 0 0 1px #ffc4ec33}.admin-ga-pages-list{margin-top:.5rem;display:grid;gap:.4rem}.admin-ga-pages-list article{border:1px solid rgba(255,164,226,.22);border-radius:10px;background:#270d328f;padding:.45rem .55rem;display:flex;justify-content:space-between;align-items:center;gap:.7rem}.admin-ga-pages-list p,.admin-ga-pages-list strong{margin:0}.admin-ga-pages-list p{overflow-wrap:anywhere}.admin-ga-empty{margin:.55rem 0 0;color:#d8c6e3}@media (max-width: 1000px){.admin-grid,.admin-metric-grid{grid-template-columns:1fr}.admin-grid>.admin-card+.admin-card{margin-top:.2rem;border-top:1px solid rgba(255,203,241,.32);box-shadow:0 -10px 26px #07020c47 inset}}@media (max-width: 640px){.admin-shell{padding:.75rem}.admin-wrap{border-radius:18px;padding:.8rem}.admin-topbar{gap:.7rem;margin-bottom:.9rem}.admin-topbar h1{font-size:clamp(1.05rem,6.1vw,1.45rem);line-height:1.2}.admin-topbar-actions{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.admin-topbar-actions .admin-link-btn,.admin-topbar-actions .admin-icon-btn{width:100%;justify-content:center;padding:.6rem;min-height:46px;border-radius:14px;font-size:.9rem;gap:0}.admin-topbar-actions .admin-link-btn span,.admin-topbar-actions .admin-icon-btn span{display:none}.admin-topbar-actions .admin-link-btn svg,.admin-topbar-actions .admin-icon-btn svg{width:18px;height:18px}.admin-tabs{display:flex;flex-wrap:nowrap;gap:.4rem;margin-bottom:.9rem;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding-bottom:.1rem;-ms-overflow-style:none;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.admin-tabs button{flex:0 0 auto;min-width:0;width:auto;padding:.5rem .72rem;font-size:1.01rem;font-weight:700;scroll-snap-align:start}.admin-card{border-radius:13px;padding:.72rem}.admin-card-head{margin-bottom:.58rem}.admin-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.admin-metric{padding:.62rem}.admin-metric h4{font-size:.95rem;line-height:1.25}.admin-metric p{font-size:1.9rem;line-height:1}.admin-ga-summary-grid{grid-template-columns:1fr}.admin-ga-bars{height:160px}.admin-ga-bar-item span{height:36px;font-size:.68rem}}/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.left-1\/2{left:50%}.z-\[9999\]{z-index:9999}.container{width:100%}.m-auto{margin:auto}.mt-auto{margin-top:auto}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.h-\[55px\]{height:55px}.h-\[70px\]{height:70px}.h-full{height:100%}.w-\[55px\]{width:55px}.w-\[70px\]{width:70px}.w-full{width:100%}.min-w-\[320px\]{min-width:320px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.flex-grow-1{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.bg-\[\#0a0a0a\]{background-color:#0a0a0a}.bg-\[\#0a0a0a\]\/80{background-color:#0a0a0acc}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.object-cover{-o-object-fit:cover;object-fit:cover}.text-\[10px\]{font-size:10px}.opacity-0{opacity:0}.shadow-\[0_0_15px_rgba\(168\,85\,247\,0\.5\)\]{--tw-shadow:0 0 15px var(--tw-shadow-color,#a855f780);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_30px_rgba\(168\,85\,247\,0\.4\)\]{--tw-shadow:0 0 30px var(--tw-shadow-color,#a855f766);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-500{--tw-duration:.5s;transition-duration:.5s}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}:root{--bg-start:#0b0414;--bg-end:#120713;--panel:#170a23b8;--line:#e984ff59;--text:#f6efff;--muted:#d0bddc;--purple:#b44dff;--red:#ff3568;--rocket-cursor-a:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36'%3E%3Cdefs%3E%3ClinearGradient id='body' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23ff8be5'/%3E%3Cstop offset='.55' stop-color='%23ce8fff'/%3E%3Cstop offset='1' stop-color='%236ac1ff'/%3E%3C/linearGradient%3E%3ClinearGradient id='flame' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fff4c4'/%3E%3Cstop offset='1' stop-color='%23ff86b2'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg transform='translate(2 2) rotate(-135 14 14)'%3E%3Cpath d='M23 4c-5 1.2-10.6 6.8-11.8 11.8l4.9 4.9C21 19.5 26.8 13.9 28 9z' fill='url(%23body)' stroke='%23fff2fd' stroke-width='1.1'/%3E%3Cpath d='M11.4 16.3 6.3 22.8l6.4-3.9z' fill='%23ff8fd8' stroke='%23ffe7f9' stroke-width='.75'/%3E%3Ccircle cx='20.7' cy='11.2' r='2.3' fill='%23182440' stroke='%23d9f2ff' stroke-width='.8'/%3E%3Cpath d='M18.7 22.3l-2.6 5.7 3.7-1.8 1.7-3.5z' fill='url(%23flame)'/%3E%3C/g%3E%3C/svg%3E") 5 5, auto;--rocket-cursor-b:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36'%3E%3Cdefs%3E%3ClinearGradient id='body' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23ff8be5'/%3E%3Cstop offset='.55' stop-color='%23ce8fff'/%3E%3Cstop offset='1' stop-color='%236ac1ff'/%3E%3C/linearGradient%3E%3ClinearGradient id='flame' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fff6cf'/%3E%3Cstop offset='1' stop-color='%23ff7fa8'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg transform='translate(2 2) rotate(-135 14 14)'%3E%3Cpath d='M23 4c-5 1.2-10.6 6.8-11.8 11.8l4.9 4.9C21 19.5 26.8 13.9 28 9z' fill='url(%23body)' stroke='%23fff2fd' stroke-width='1.1'/%3E%3Cpath d='M11.4 16.3 6.3 22.8l6.4-3.9z' fill='%23ff8fd8' stroke='%23ffe7f9' stroke-width='.75'/%3E%3Ccircle cx='20.7' cy='11.2' r='2.3' fill='%23182440' stroke='%23d9f2ff' stroke-width='.8'/%3E%3Cpath d='M18.7 22.3l-4.1 7.8 5.2-2.7 2.4-4.9z' fill='url(%23flame)'/%3E%3C/g%3E%3C/svg%3E") 5 5, auto;--rocket-cursor-boost:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36'%3E%3Cdefs%3E%3ClinearGradient id='body' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23ff95e8'/%3E%3Cstop offset='.55' stop-color='%23d595ff'/%3E%3Cstop offset='1' stop-color='%2372c8ff'/%3E%3C/linearGradient%3E%3ClinearGradient id='flame' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fff8dd'/%3E%3Cstop offset='.55' stop-color='%23ffc890'/%3E%3Cstop offset='1' stop-color='%23ff79a7'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg transform='translate(2 2) rotate(-135 14 14)'%3E%3Cpath d='M23 4c-5 1.2-10.6 6.8-11.8 11.8l4.9 4.9C21 19.5 26.8 13.9 28 9z' fill='url(%23body)' stroke='%23fff2fd' stroke-width='1.1'/%3E%3Cpath d='M11.4 16.3 6.3 22.8l6.4-3.9z' fill='%23ff8fd8' stroke='%23ffe7f9' stroke-width='.75'/%3E%3Ccircle cx='20.7' cy='11.2' r='2.3' fill='%23182440' stroke='%23d9f2ff' stroke-width='.8'/%3E%3Cpath d='M18.7 22.3l-5.8 9.6 6.5-3.2 3.1-6.4z' fill='url(%23flame)'/%3E%3Cpath d='M17.6 23.7 14.9 28.1l2.7-1.4z' fill='%23ff8eb8' opacity='.82'/%3E%3C/g%3E%3C/svg%3E") 5 5, auto;--rocket-cursor-current:var(--rocket-cursor-a)}*{box-sizing:border-box}html,body,#root{max-width:100%;min-height:100%;margin:0;overflow-x:clip}body{color:var(--text);background:radial-gradient(circle at 20% 20%,#33144f 0%,transparent 35%),radial-gradient(circle at 80% 10%,#5a1135 0%,transparent 30%),linear-gradient(180deg,var(--bg-start),var(--bg-end));font-family:Rajdhani,sans-serif;overflow-x:hidden}a{color:inherit}html.custom-cursor-enabled{--rocket-cursor-current:var(--rocket-cursor-a)}html.custom-cursor-enabled.custom-cursor-frame-b{--rocket-cursor-current:var(--rocket-cursor-b)}html.custom-cursor-enabled.custom-cursor-boost{--rocket-cursor-current:var(--rocket-cursor-boost)}html.custom-cursor-enabled,html.custom-cursor-enabled body,html.custom-cursor-enabled *{cursor:var(--rocket-cursor-current)!important}.rocket-trail-layer{pointer-events:none;z-index:140;width:0;height:0;position:fixed;top:0;left:0}.rocket-trail-node{opacity:0;filter:blur(1.1px);mix-blend-mode:screen;background:radial-gradient(at 38% 46%,#fff2fbd1,#ffaee7a8,#ff78cd75 56%,#ff56ba1f,#ff4fb500);border-radius:999px;width:26px;height:22px;transition:opacity 45ms linear;position:absolute;top:0;left:0;transform:translate(-100px,-100px)scale(.25);box-shadow:0 0 16px #ffa7e552,0 0 26px #ff66c44d,0 0 34px #ff53bb33}html.custom-cursor-enabled.custom-cursor-boost .rocket-trail-node{box-shadow:0 0 18px #ffd4a080,0 0 30px #ff73cb66,0 0 40px #ff5abd4d}@media (hover:none),(pointer:coarse){html.custom-cursor-enabled,html.custom-cursor-enabled body,html.custom-cursor-enabled *{cursor:auto!important}.rocket-trail-layer{display:none}}@media (prefers-reduced-motion:reduce){html.custom-cursor-enabled,html.custom-cursor-enabled body,html.custom-cursor-enabled *{cursor:var(--rocket-cursor-a)!important}.rocket-trail-node{transition:opacity 45ms linear}}.app-shell{isolation:isolate;width:100%;max-width:100%;position:relative;overflow-x:clip}.splash-screen{z-index:120;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:1;background:radial-gradient(circle at 20% 18%,#ff7fd333,#0000 34%),radial-gradient(circle at 84% 14%,#8976ff33,#0000 30%),linear-gradient(145deg,#080310eb,#15081eeb);place-items:center;padding:clamp(1rem,3vw,2.2rem);transition:opacity 1.1s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),backdrop-filter 1.1s cubic-bezier(.22,1,.36,1);animation:.68s cubic-bezier(.22,1,.36,1) splashIntro;display:grid;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;transform:scale(1)}.splash-screen.is-exiting{opacity:0;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);transform:scale(1.025)}.splash-noise{pointer-events:none;opacity:.16;background-image:radial-gradient(circle,#ffffff57 .7px,#0000 .8px);background-size:5px 5px;animation:18s linear infinite splashNoiseShift;position:absolute;top:-40%;right:-40%;bottom:-40%;left:-40%}.splash-orb{filter:blur(1px);pointer-events:none;border-radius:999px;position:absolute}.splash-orb-left{background:radial-gradient(circle at 35% 35%,#ff83d88c,#5e349e0f 72%);width:clamp(240px,26vw,420px);height:clamp(240px,26vw,420px);animation:9.8s ease-in-out infinite splashOrbFloatLeft;top:clamp(-60px,-5vw,-8px);left:clamp(-80px,-6vw,-16px)}.splash-orb-right{background:radial-gradient(circle at 65% 65%,#80acff80,#4c358014 72%);width:clamp(260px,28vw,450px);height:clamp(260px,28vw,450px);animation:10.6s ease-in-out infinite splashOrbFloatRight;bottom:clamp(-88px,-6vw,-20px);right:clamp(-90px,-7vw,-20px)}.splash-brand-card{background:linear-gradient(155deg,#210f31e6,#11081cd1);border:1px solid #ff9beb5c;border-radius:24px;gap:.8rem;width:min(640px,100%);padding:clamp(1rem,2.4vw,1.45rem);animation:.76s cubic-bezier(.16,1,.3,1) splashBrandIn;display:grid;position:relative;box-shadow:0 24px 70px #05020e85,inset 0 0 38px #ff8ddc21}.splash-brand{justify-content:center;align-items:center;gap:clamp(.7rem,2vw,1rem);margin-bottom:.15rem;display:inline-flex}.splash-name{letter-spacing:.08em;color:#f5e9ff;text-transform:uppercase;text-shadow:0 0 18px #c781fc61;font-family:Orbitron,sans-serif;font-size:clamp(1.15rem,3vw,1.9rem);font-weight:700}.splash-logo{filter:drop-shadow(0 0 14px #c969ff57)drop-shadow(0 0 32px #7d46bc3d);width:clamp(68px,9.5vw,100px);height:auto;animation:1.8s ease-in-out infinite splashPulse}.splash-kicker{letter-spacing:.2em;color:#ffd7f8c7;margin:0;font-family:JetBrains Mono,monospace;font-size:clamp(.68rem,1.5vw,.8rem)}.splash-status{color:#f1e5ffdb;margin:0;font-size:clamp(.92rem,2.2vw,1.08rem)}.splash-progress-track{background:#ffffff1a;border:1px solid #ffcdf84d;border-radius:999px;width:100%;height:10px;overflow:hidden}.splash-progress-fill{border-radius:inherit;background:linear-gradient(90deg,#ff81d0,#cd9bff 45%,#7bc8ff);height:100%;transition:width .14s linear;display:block;box-shadow:0 0 22px #c990ff9e}.splash-meta{letter-spacing:.03em;color:#f1e4ffdb;justify-content:space-between;align-items:center;gap:.6rem;font-family:JetBrains Mono,monospace;font-size:clamp(.72rem,1.7vw,.84rem);display:flex}.space-layer{pointer-events:none;z-index:-3;will-change:transform;position:fixed;top:0;right:0;bottom:0;left:0}.stars-near{opacity:.3;background-image:radial-gradient(circle,#fffc 0,#fffc 1px,#0000 1.2px);background-size:110px 110px;animation:90s linear infinite floatSlow}.stars-mid{opacity:.26;background-image:radial-gradient(circle,#e162ffb3 0,#e162ffb3 1px,#0000 1.5px);background-size:160px 160px;animation:60s linear infinite floatMid}.stars-far{opacity:.22;background-image:radial-gradient(circle,#ff5a82a6 0,#ff5a82a6 1px,#0000 1.3px);background-size:220px 220px;animation:42s linear infinite floatFast}.topbar{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:20;opacity:1;filter:blur();will-change:transform,opacity,filter;background:#13081bd1;border-radius:999px;justify-content:space-between;align-items:center;width:min(1100px,100% - 2rem);padding:.65rem 1rem;transition:transform .62s cubic-bezier(.16,1,.3,1),opacity .54s,filter .52s,box-shadow .56s,border-color .42s;display:flex;position:fixed;top:1rem;left:50%;transform:translate(-50%);box-shadow:0 14px 36px #0a021273,inset 0 0 24px #ff9de814}.topbar:before{content:"";border-radius:inherit;pointer-events:none;opacity:.55;background:linear-gradient(120deg,#ff91e31a,#855aff0f);transition:opacity .46s;position:absolute;top:0;right:0;bottom:0;left:0}.topbar-hidden{opacity:0;filter:blur(8px);pointer-events:none;border-color:#e884ff14;transform:translate(-50%,-165%)scale(.94);box-shadow:0 0 #0a021200}.topbar-visible{opacity:1;filter:blur();border-color:var(--line);pointer-events:auto;animation:.7s cubic-bezier(.16,1,.3,1) topbarReveal;transform:translate(-50%);box-shadow:0 14px 36px #0a021273,inset 0 0 24px #ff9de814}.topbar-hidden:before{opacity:0}.topbar-visible:before{opacity:.8}.menu-toggle{border:1px solid var(--line);color:var(--text);background:#200b2ae6;border-radius:10px;padding:.35rem .5rem;font-size:1.2rem;transition:transform .24s,background-color .24s,border-color .24s;display:none}.menu-toggle svg{transition:transform .26s;display:block}.menu-toggle.active{background:#3e1445f5;border-color:#ffd0e0}.menu-toggle.active svg{transform:rotate(180deg)scale(1.05)}.brand{letter-spacing:.08em;color:#f4c2ff;align-items:center;gap:.5rem;margin:0;font-family:Orbitron,sans-serif;transition:transform .5s cubic-bezier(.16,1,.3,1),opacity .42s,filter .42s;display:flex}.brand-text{line-height:1;display:inline-block;position:relative}.brand-text:before,.brand-text:after{content:attr(data-text);pointer-events:none;opacity:0;transition:opacity .18s;position:absolute;top:0;right:0;bottom:0;left:0}.brand:hover .brand-text{animation:.34s steps(10,end) infinite brandFuzzyBase}.brand:hover .brand-text:before{color:#ff7ae4f2;filter:blur(.9px);opacity:.8;animation:.28s steps(8,end) infinite brandFuzzyLayerA}.brand:hover .brand-text:after{color:#8c7cffe6;filter:blur(1.2px);opacity:.72;animation:.26s steps(7,end) infinite brandFuzzyLayerB}.topbar nav{align-items:center;gap:1rem;display:flex}.topbar nav a{color:#f6efffd6;letter-spacing:.02em;background:0 0;border:none;border-radius:0;padding:.3rem .5rem;font-weight:600;text-decoration:none;position:relative}.topbar nav a:after{content:"";transform-origin:0;background:linear-gradient(90deg,#ff7fd8,#8f7dff);width:100%;height:2px;margin-top:.35rem;transition:transform .24s;position:absolute;bottom:-.32rem;left:0;transform:scaleX(0)}.topbar nav a:hover{color:#ffd5f1}.topbar nav a:hover:after{transform:scaleX(1)}.topbar nav a:focus-visible{color:#ffd5f1;padding:.9rem .65rem;font-size:1.35rem;font-weight:700}.topbar nav a:focus-visible:after{transform:scaleX(1)}.topbar nav .nav-hire-me{letter-spacing:.07em;color:#fff8ff;background:linear-gradient(110deg,#ff5bcf,#8f61ff);border:1px solid #ffd8f3e6;border-radius:999px;margin-left:.75rem;padding:.44rem 1rem;font-family:Oxanium,Orbitron,sans-serif;font-size:.9rem;transition:transform .22s,box-shadow .22s,filter .22s;box-shadow:0 10px 22px #ff5bcf47,0 6px 18px #8f61ff3d}.topbar nav .nav-hire-me:after{display:none}.topbar nav .nav-hire-me:hover,.topbar nav .nav-hire-me:focus-visible{color:#fff;filter:saturate(1.12);cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Ccircle cx='14' cy='14' r='6.5' fill='%23ff71cc' stroke='%23ffffff' stroke-width='1.4'/%3E%3Cellipse cx='14' cy='14' rx='11' ry='4.2' stroke='%238d74ff' stroke-width='1.6'/%3E%3C/g%3E%3C/svg%3E") 14 14,pointer;outline:none;transform:translateY(-2px);box-shadow:0 14px 26px #ff5bcf5c,0 9px 21px #8f61ff52}.topbar .menu-toggle,.topbar nav a{transition:transform .5s cubic-bezier(.16,1,.3,1),opacity .42s,filter .42s,border-color .24s,background-color .24s}.topbar-hidden .brand,.topbar-hidden .menu-toggle,.topbar-hidden nav a{opacity:0;filter:blur(3px);transform:translateY(-10px)scale(.95)}.topbar-visible .brand,.topbar-visible .menu-toggle,.topbar-visible nav a{opacity:1;filter:blur();transform:translateY(0)scale(1)}.topbar-visible .brand{transition-delay:70ms}.topbar-visible nav a:first-child{transition-delay:.1s}.topbar-visible nav a:nth-child(2){transition-delay:.14s}.topbar-visible nav a:nth-child(3){transition-delay:.18s}.topbar-visible nav a:nth-child(4){transition-delay:.22s}.topbar-visible nav a:nth-child(5){transition-delay:.26s}.topbar-visible nav a:nth-child(6){transition-delay:.3s}.topbar-visible nav a:nth-child(7){transition-delay:.34s}main{padding-top:0}.section-page{align-items:center;width:min(1100px,100% - 2rem);min-height:100vh;margin:0 auto;padding:1rem 0;display:grid}.section-panel{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);border-radius:24px;padding:clamp(1.2rem,3vw,2rem);box-shadow:0 0 120px #b349fd1f,inset 0 0 30px #ffffff05}.home-section{width:100%;min-height:100vh;padding:0}.home-hero-wrap{background:radial-gradient(circle at 50% 0,#6e227b73,#0d0614f0);border:none;border-radius:0;height:100vh;min-height:100vh;position:relative;overflow:hidden}.antigravity-host,.antigravity-canvas{width:100%;height:100%}.antigravity-canvas{display:block}.home-copy-layer{text-align:center;pointer-events:none;background:radial-gradient(circle,#12071c40,#08040e8f);align-content:center;justify-items:center;gap:1rem;padding:1rem;display:grid;position:absolute;top:0;right:0;bottom:0;left:0}.home-copy-kicker{letter-spacing:.18em;color:#ffbee8;opacity:.88;margin:0;font-family:JetBrains Mono,monospace;font-size:clamp(.72rem,1.35vw,.95rem)}.home-copy-title{color:#ffd2ff;text-shadow:0 0 18px #ff9ffc8c,0 0 50px #c64eff38;margin:0;font-family:JetBrains Mono,monospace;font-size:clamp(1.65rem,6vw,4.8rem);font-weight:700;line-height:1.12;transition:opacity .26s,filter .26s;animation:3s ease-in-out infinite encryptedGlow}.home-explore-btn{pointer-events:auto;letter-spacing:.12em;text-transform:uppercase;color:#ffe7fb;background:linear-gradient(110deg,#ff73d047,#774eff38);border:1px solid #ffc2ee9e;border-radius:999px;margin-top:.35rem;padding:.62rem 1.25rem;font-family:JetBrains Mono,monospace;font-size:clamp(.78rem,1.35vw,.98rem);text-decoration:none;transition:transform .18s,border-color .18s,box-shadow .18s;box-shadow:0 10px 26px #ff65c542}.home-explore-btn:hover{border-color:#ffe0f6;transform:translateY(-2px);box-shadow:0 14px 30px #ff65c557}.animated-subtitle{color:#0000;background:linear-gradient(90deg,#ffd3ff,#ff7a9f,#ffd3ff) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text;animation:6s ease-in-out infinite titlePulse}.section-panel>h2.animated-subtitle{z-index:0;isolation:isolate;color:#f0c8ff;-webkit-text-fill-color:#f0c8ff;text-shadow:0 0 12px #ffaaf059;background:0 0;-webkit-background-clip:border-box;background-clip:border-box;border-radius:20px;width:100%;margin:0 0 .75rem;padding:clamp(1rem,2vw,1.2rem) clamp(1rem,2.2vw,1.4rem);animation:none;display:block;position:relative;overflow:hidden}.section-panel>h2.animated-subtitle:before{content:"";border-radius:inherit;z-index:-2;background:linear-gradient(96deg,#3814508c,#120624d1);border:1px solid #e089ff47;position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 0 34px #c45dff24,0 0 24px #a83feb1a}.section-panel>h2.animated-subtitle:after{content:"";filter:blur(10px);pointer-events:none;z-index:-1;background:radial-gradient(circle,#f06edf2e,#9d4ddc17 38%,#0000 72%);height:175%;position:absolute;inset:-45% -14% auto}.intro-layout{grid-template-columns:1.25fr 1fr;align-items:center;gap:1.2rem;margin-bottom:.15rem;display:grid}.eyebrow{color:#f2a6ff;letter-spacing:.06em;align-items:center;gap:.45rem;margin:0;display:inline-flex}h1,h2,h3,h4{margin:.8rem 0;font-family:Orbitron,sans-serif;line-height:1.2}h1{font-size:clamp(1.25rem,3.85vw,2.95rem)}h1 span{color:#ff84a8}.lead,.section-desc,.project-card p,.shortcut-card p{color:var(--muted);font-size:1.2rem}.quick-links{flex-wrap:wrap;gap:.6rem;margin-top:1.1rem;display:flex}.quick-links a,.project-card a,.shortcut-card a{border:1px solid var(--line);background:linear-gradient(120deg,#b44dff29,#ff35681c);border-radius:999px;align-items:center;gap:.45rem;padding:.45rem .85rem;text-decoration:none;display:inline-flex}.quick-links a:hover,.project-card a:hover,.shortcut-card a:hover{color:#ffd4e6;border-color:#ffc2d4}.resume-cta{letter-spacing:.025em;color:#fdf8ff;font-family:Oxanium,Orbitron,sans-serif;font-size:1rem;font-weight:700;transition:transform .23s cubic-bezier(.22,1,.36,1),box-shadow .23s cubic-bezier(.22,1,.36,1),border-color .2s;box-shadow:0 8px 24px #624ad859;background:linear-gradient(120deg,#5e75ff,#8f4ce3 52%,#b84dde)!important;border:1px solid #c581ffcc!important;padding:.66rem 1.3rem!important}.resume-cta svg{font-size:1.03rem;transition:transform .22s}.resume-cta:hover{transform:translateY(-2px);box-shadow:0 12px 26px #624ad870}.resume-cta:hover svg{transform:translateY(-1px)}.resume-cta:active{transform:translateY(0);box-shadow:0 5px 16px #624ad84d}.connect-cta{isolation:isolate;letter-spacing:.025em;color:#d983ff;font-family:Oxanium,Orbitron,sans-serif;font-size:1rem;font-weight:700;transition:transform .23s cubic-bezier(.22,1,.36,1),box-shadow .23s cubic-bezier(.22,1,.36,1);position:relative;overflow:hidden;box-shadow:0 8px 22px #3417783d;background:0 0!important;border:1px solid #0000!important;padding:.66rem 1.3rem!important}.connect-cta:before{content:"";border-radius:inherit;z-index:-1;background:linear-gradient(120deg,#5e75ff,#b84dde);padding:1px;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0,#fff 0),linear-gradient(#fff 0,#fff 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.connect-cta svg{color:#be6ff1;transition:transform .22s}.connect-cta-label{-webkit-text-fill-color:transparent;background:linear-gradient(120deg,#6e83ff,#b84dde);-webkit-background-clip:text;background-clip:text}.connect-cta:hover{transform:translateY(-2px);box-shadow:0 12px 26px #3417784d}.connect-cta:hover svg{transform:translateY(-1px)}.connect-cta:active{transform:translateY(0);box-shadow:0 6px 14px #34177838}.about-title-dynamic{display:block}.intro-layout .lead{text-align:justify;text-justify:inter-word}.about-section-panel{gap:1rem;display:grid}.about-section-panel .intro-layout{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem}.about-section-panel .intro-layout>:first-child{grid-column:span 2}.about-section-panel .intro-layout>.about-photo-stack{grid-column:3}.about-visual-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:2.5rem;display:grid}.about-visual-card{cursor:pointer;background:linear-gradient(130deg,#240e34e0,#170a29db);border:1px solid #ffade557;border-radius:16px;grid-template:"icon spacer arrow""value copy copy"1fr/auto 1fr auto;align-items:stretch;gap:.35rem .62rem;min-height:132px;padding:.72rem .82rem;text-decoration:none;transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .22s,box-shadow .24s;display:grid;box-shadow:inset 0 0 24px #ff91df14,0 8px 20px #04010c42}.about-visual-card:hover{border-color:#ffceecc2;transform:translateY(-6px)scale(1.015);box-shadow:0 14px 28px #ff60b740}.about-visual-icon{color:#ffe7f8;transform-origin:0 0;background:radial-gradient(circle at 30% 30%,#ff8adb8c,#9358ff59);border:1px solid #ffc6ee80;border-radius:10px;grid-area:icon;justify-content:center;place-self:start;align-items:center;width:38px;height:38px;transition:transform .24s,box-shadow .24s;display:inline-flex;transform:translateY(-3px)}.about-visual-icon svg{font-size:1.1rem}.about-visual-arrow{color:#a39aad;grid-area:arrow;place-self:start end;line-height:1;transition:transform .24s,color .22s;transform:rotate(0)}.about-visual-arrow svg{font-size:1.1rem}.about-visual-card .about-visual-value{color:#fff2fc;grid-area:value;place-self:end start;margin:0;font-family:Rajdhani,sans-serif;font-size:clamp(1.8rem,2.9vw,2.3rem);font-weight:600;line-height:1}.about-visual-copy{text-align:right;grid-area:copy;place-self:end;row-gap:.12rem;display:grid}.about-visual-title{color:#f4dcf0;margin:0;font-family:Rajdhani,sans-serif;font-size:1.24rem;font-weight:600;line-height:1.14}.about-visual-subtitle{color:#cfb8db;margin:0;font-family:Rajdhani,sans-serif;font-size:1.05rem;font-weight:400;line-height:1.22}.about-visual-card:hover .about-visual-icon{transform:translateY(-3px)scale(1.15);box-shadow:0 4px 12px #ff60b766}.about-visual-card:hover .about-visual-arrow{color:#c5bdce;transform:rotate(45deg)}.about-visual-note{color:#e9d1ea;margin:.22rem 0 0;font-family:Rajdhani,sans-serif;font-size:.92rem;font-weight:500;line-height:1.24}.about-photo-stack{aspect-ratio:1;width:100%;min-height:0;margin-inline:auto;display:block;position:relative}.about-section-panel .quick-links{margin-top:1.35rem}.about-photo-stage{aspect-ratio:1;cursor:grab;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%;height:100%;min-height:0;position:relative}.about-photo-stage.is-grabbing{cursor:grabbing}.about-photo-layer{border:1px solid #ffa9e266;border-radius:16px;margin:0;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .38s,filter .38s;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;box-shadow:0 14px 34px #0802105c}.about-photo-layer img{-o-object-fit:cover;object-fit:cover;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%}.about-photo-layer.layer-0{z-index:3;opacity:1;pointer-events:auto;transform:translate(0)scale(1)}.about-photo-layer.layer-1{z-index:2;opacity:.8;filter:saturate(.92);pointer-events:none;transform:translate(8px)translateY(12px)scale(.965)}.about-photo-layer.layer-2{z-index:1;opacity:.58;filter:saturate(.84);pointer-events:none;transform:translate(16px)translateY(22px)scale(.93)}.about-photo-layer.layer-0.swipe-right{animation:.28s cubic-bezier(.22,1,.36,1) forwards aboutCardSwipeRight}.about-photo-layer.layer-0.swipe-left{animation:.28s cubic-bezier(.22,1,.36,1) forwards aboutCardSwipeLeft}@keyframes aboutCardSwipeRight{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(88px)rotate(6deg)scale(.93)}}@keyframes aboutCardSwipeLeft{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(-88px)rotate(-6deg)scale(.93)}}.portrait-wrap{border:1px solid var(--line);border-radius:16px;min-height:350px;overflow:hidden}.portrait-wrap img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.skill-box{gap:.85rem;margin-top:1rem;display:grid}.certification-panel{position:relative;overflow:hidden}.certification-panel:before{content:"";pointer-events:none;background:radial-gradient(circle,#ff79da2e,#0000 72%);height:70%;position:absolute;inset:-32% -10% auto}.certification-grid{z-index:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1rem;animation:.36s cubic-bezier(.22,1,.36,1) certGridReveal;display:grid;position:relative}.cert-card{cursor:pointer;background:linear-gradient(135deg,#2e103be0,#1d0c2fd6);border:1px solid #ff98d742;border-radius:14px;padding:.7rem;transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .22s,box-shadow .24s}.cert-card:hover{border-color:#ffceecc2;transform:translateY(-6px)scale(1.015);box-shadow:0 14px 28px #ff60b740}.cert-card:focus-visible{outline-offset:2px;outline:2px solid #ffd4eb}.cert-thumb-wrap{background:#1c0929e6;border:1px solid #ffb0e43d;border-radius:10px;overflow:hidden}.cert-thumb{-o-object-fit:cover;object-fit:cover;width:100%;height:138px;transition:transform .28s,filter .28s;display:block}.cert-card:hover .cert-thumb{filter:saturate(1.1)contrast(1.04);transform:scale(1.06)}.cert-card h4{letter-spacing:.02em;color:#ffe6f4;min-height:2.4rem;margin:.6rem 0 .35rem;font-family:Oxanium,Orbitron,sans-serif;font-size:1rem;font-weight:600;line-height:1.28}.cert-card p{color:#efc6dd;margin:0;font-size:.98rem}.cert-card span{color:#ffdff1;background:#4d144c99;border:1px solid #ffabe066;border-radius:999px;margin-top:.4rem;padding:.18rem .55rem;font-size:.8rem;display:inline-block}.cert-card.placeholder{cursor:default;box-shadow:none;filter:grayscale(.2);background:linear-gradient(135deg,#55555f6b,#3a3a4466);border-style:dashed;border-color:#b4b4b459;position:relative;overflow:hidden}.cert-card.placeholder span{color:#e2e2e8e6;background:#56565e9e;border-color:#9c9ca480}.cert-card.placeholder:before{content:"";opacity:0;pointer-events:none;z-index:1;background:radial-gradient(circle at 50% 58%,#e4c6e014,#7862800f 42%,#0000 78%);transition:opacity .22s;position:absolute;top:0;right:0;bottom:0;left:0}.cert-card.placeholder:hover{box-shadow:none;border-color:#c4c4c46b;transform:none}.cert-card.placeholder:hover:before{opacity:1}.cert-card.placeholder:focus-visible{outline:none}.cert-skeleton-block{background:#383840a8;border-color:#c6c6c633;position:relative}.cert-card.placeholder:hover .cert-skeleton-block{background:#2c2c34bd;border-color:#a8a8b052}.cert-thumb-hover-label{text-align:center;letter-spacing:.05em;color:#ececf1f0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;z-index:3;background:linear-gradient(120deg,#606068b8,#4d4d55b3);border:1px solid #bcbcc470;border-radius:999px;margin-top:0;padding:.28rem .75rem;font-family:Oxanium,Orbitron,sans-serif;font-size:.82rem;transition:opacity .22s,transform .22s,box-shadow .22s,border-color .22s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.94);box-shadow:0 8px 16px #18141e33,inset 0 0 0 1px #fff5ff0d}.cert-card.placeholder:hover .cert-thumb-hover-label{opacity:.95;border-color:#ceced58a;transform:translate(-50%,-50%)scale(.98);box-shadow:0 10px 22px #16161b4d,inset 0 0 0 1px #f2f2f717}.cert-card.placeholder .cert-thumb{z-index:0;background:linear-gradient(105deg,#7c7c848c,#65656e85) 0 0/100% 100%;position:relative}.cert-card.placeholder:hover .cert-thumb{filter:none;background:linear-gradient(105deg,#5f5f67b8,#4c4c54b3)}.cert-title-slot{min-height:2.4rem;margin-top:.6rem;position:relative}.cert-title-slot .cert-skeleton-title{width:84%;height:16px;margin-top:0}.cert-placeholder-title{letter-spacing:.02em;color:#fffffff5;width:84%;min-height:2.4rem;text-shadow:none;filter:none;opacity:0;margin:0;font-family:Oxanium,Orbitron,sans-serif;font-size:1rem;font-weight:600;line-height:1.28;transition:opacity .2s,transform .2s;position:absolute;top:0;left:0;transform:translateY(4px)}.cert-card.placeholder:hover .cert-title-slot .cert-skeleton-title{opacity:0}.cert-card.placeholder:hover .cert-placeholder-title{opacity:.92;transform:translateY(0)}.cert-skeleton-title,.cert-skeleton-line,.cert-skeleton-pill{background:linear-gradient(105deg,#8e8e9680,#7878807a) 0 0/100% 100%;border:1px solid #9c9ca45c;border-radius:999px}.cert-card.placeholder:hover .cert-skeleton-title,.cert-card.placeholder:hover .cert-skeleton-line,.cert-card.placeholder:hover .cert-skeleton-pill{background:linear-gradient(105deg,#62626abd,#505058b8);border-color:#8c8c9480}.cert-skeleton-title{width:84%;height:16px;margin-top:.78rem}.cert-skeleton-line{width:58%;height:13px;margin-top:.35rem}.cert-skeleton-pill{width:64px;height:24px;margin-top:0}.cert-year-slot{width:64px;height:24px;margin-top:.4rem;position:relative}.cert-year-slot .cert-skeleton-pill{position:absolute;top:0;left:0}.cert-skeleton-year{letter-spacing:.08em;color:#e5e5eae6;opacity:0;background:linear-gradient(105deg,#80808899,#6b6b7394);border:1px solid #9c9ca480;border-radius:999px;justify-content:center;align-items:center;width:64px;height:24px;margin-top:0;padding:0;font-family:JetBrains Mono,monospace;font-size:.74rem;font-weight:600;transition:opacity .2s,transform .2s;display:inline-flex;position:absolute;top:0;left:0;transform:translateY(4px)}.cert-card.placeholder:hover .cert-year-slot .cert-skeleton-pill,.cert-card.placeholder:hover .cert-skeleton-year{background:linear-gradient(105deg,#616169c2,#4f4f57bd);border-color:#8c8c9485}.cert-card.placeholder:hover .cert-year-slot .cert-skeleton-pill{opacity:0}.cert-card.placeholder:hover .cert-skeleton-year{opacity:.94;transform:translateY(0)}.cert-pagination{justify-content:center;align-items:center;gap:.8rem;margin-top:1rem;display:flex}.cert-pagination>button{color:#ffe3f3;background:#2c0e3bcc;border:1px solid #ffabe075;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;transition:transform .18s,border-color .18s;display:inline-flex}.cert-pagination>button:hover{border-color:#ffd8ee;transform:translateY(-2px)}.cert-dots{gap:.5rem;display:inline-flex}.cert-dots button{background:#42144ca6;border:1px solid #ffb6e5b8;border-radius:999px;width:10px;height:10px;padding:0;transition:transform .18s,background-color .18s}.cert-dots button.active{background:#ffb8e1;transform:scale(1.15)}.cert-modal-overlay{z-index:60;background:#080410cc;place-items:center;padding:1rem;animation:.22s certOverlayFade;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.cert-modal{background:linear-gradient(160deg,#260d37f2,#190a25f5);border:1px solid #ffbde88c;border-radius:20px;width:min(760px,100% - 1rem);padding:1.1rem;animation:.28s cubic-bezier(.22,1,.36,1) certModalIn;position:relative;box-shadow:0 18px 46px #00000073,0 0 52px #ff53b826}.cert-modal-close{color:#ffe5f4;background:#391442d1;border:1px solid #ffbae66b;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;position:absolute;top:.65rem;right:.65rem}.cert-modal img{-o-object-fit:cover;object-fit:cover;border:1px solid #ffbfe84d;border-radius:12px;width:100%;max-height:440px}.cert-modal h3{color:#ffe4f5;margin:.95rem 0 .25rem}.cert-modal p{color:#efc6dd;margin:0 0 .9rem}.cert-link-btn{color:#fff0fa;background:linear-gradient(118deg,#ff53b359,#8058ff4d);border:1px solid #ffc2ebb8;border-radius:999px;align-items:center;gap:.45rem;padding:.52rem .95rem;text-decoration:none;transition:transform .18s,border-color .18s;display:inline-flex}.cert-link-btn:hover{border-color:#ffdcf1;transform:translateY(-2px)}.cert-mobile-more-wrap{justify-content:center;margin-top:.9rem;display:flex}.cert-mobile-more-btn{color:#ffeaf7;letter-spacing:.04em;background:linear-gradient(118deg,#ff53b342,#855aff38);border:1px solid #ffb2e37a;border-radius:999px;padding:.46rem 1rem;font-family:Rajdhani,sans-serif;font-size:.98rem;font-weight:700;transition:transform .18s,border-color .18s}.cert-mobile-more-btn:hover{border-color:#ffdcf1e6;transform:translateY(-2px)}.cert-list-overlay{z-index:58;background:#080410d6;place-items:center;padding:1rem;animation:.22s certOverlayFade;display:grid;position:fixed;top:0;right:0;bottom:0;left:0;overflow-x:hidden}.cert-list-modal{box-sizing:border-box;background:linear-gradient(160deg,#260d37f7,#190a25f7);border:1px solid #ffbfe875;border-radius:20px;flex-direction:column;width:min(860px,100dvw - 2rem);max-width:calc(100dvw - 2rem);max-height:calc(100vh - 2rem);animation:.28s cubic-bezier(.22,1,.36,1) certModalIn;display:flex;overflow:hidden;box-shadow:0 18px 46px #00000073,0 0 52px #ff53b824}.cert-list-modal-head{z-index:3;background:linear-gradient(160deg,#260d37fa,#190a25fa);border-bottom:1px solid #ffbfe82e;justify-content:space-between;align-items:center;gap:.75rem;padding:.95rem .95rem .7rem;display:flex}.cert-list-modal-body{padding:.8rem .95rem .95rem;overflow:hidden auto}.cert-list-modal-head h3{color:#ffe4f5;margin:0}.cert-list-close{color:#ffe5f4;background:#391442d1;border:1px solid #ffbae66b;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.certification-grid.certification-grid-mobile-all{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:100%;margin-top:0}.certification-grid.certification-grid-mobile-all .cert-card{min-width:0}.certification-grid.certification-grid-mobile-all .cert-thumb-wrap{aspect-ratio:1}.certification-grid.certification-grid-mobile-all .cert-thumb{aspect-ratio:1;height:100%}.certification-grid.certification-grid-mobile-all .cert-card h4,.certification-grid.certification-grid-mobile-all .cert-card p{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;word-break:break-word;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.skill-lane{background:#210d2b9e;border:1px solid #ff79bc40;border-radius:16px;padding:.6rem 1rem;position:relative;overflow:hidden}.lane-corner-tag{color:#ffe6f5;letter-spacing:.08em;text-transform:uppercase;text-align:center;writing-mode:vertical-rl;text-orientation:mixed;z-index:2;pointer-events:none;background:linear-gradient(#ff4fa8eb,#d6378ae0);border:1px solid #ffa2e28c;border-radius:999px;justify-content:center;align-items:center;width:34px;min-height:0;padding:.4rem .2rem;font-family:Orbitron,sans-serif;font-size:.64rem;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:.35rem;bottom:.35rem;transform:none;box-shadow:0 10px 20px #ff358842}.lane-corner-text{font-style:italic;display:inline-block}.lane-corner-tag.left{left:.45rem}.lane-corner-tag.left .lane-corner-text{transform:rotate(180deg)}.lane-corner-tag.right{writing-mode:vertical-lr;text-orientation:mixed;pointer-events:none;right:.45rem}.lane-corner-tag.right .lane-corner-text{transform:rotate(0)}.marquee-wrap{overflow:hidden}.marquee-track{gap:.35rem;width:-moz-max-content;width:max-content;padding:0;animation-duration:20s;animation-timing-function:linear;animation-iteration-count:infinite;display:flex}.marquee-track.left{animation-name:marqueeLeft}.marquee-track.right{animation-name:marqueeRight}.marquee-track.fast{animation-duration:8s}.logo-glyph{place-items:center;gap:.3rem;min-width:118px;padding:.5rem .45rem;display:inline-grid}.logo-glyph svg{filter:drop-shadow(0 8px 14px #0000004d);font-size:clamp(2.9rem,5.2vw,3.8rem)}.logo-glyph span{letter-spacing:.06em;color:#e7d6ee;text-transform:uppercase;text-align:center;white-space:nowrap;font-size:clamp(.72rem,1.3vw,.86rem);font-weight:700}.portfolio-tabs{flex-wrap:wrap;gap:.6rem;margin-top:.9rem;display:flex}.portfolio-tabs button{color:var(--text);background:#2b0d2cb3;border:1px solid #ff9fdf66;border-radius:999px;padding:.4rem .9rem;font-family:Rajdhani,sans-serif;font-size:1rem}.portfolio-tabs button.active{background:linear-gradient(90deg,#b44dff4d,#ff35683d);border-color:#ffc5de}.portfolio-mobile-filter{margin-top:.9rem;display:none}.portfolio-mobile-filter label{letter-spacing:.12em;text-transform:uppercase;color:#f4cae5;margin-bottom:.35rem;font-size:.82rem;display:block}.portfolio-mobile-select-wrap{position:relative}.portfolio-mobile-select-wrap:before{content:"";pointer-events:none;background:linear-gradient(130deg,#ff75c41c,#7a5cff14);border-radius:12px;position:absolute;top:1px;right:1px;bottom:1px;left:1px}.portfolio-mobile-select-wrap:after{content:"";pointer-events:none;border-bottom:2px solid #f5e3f0e6;border-right:2px solid #f5e3f0e6;width:9px;height:9px;position:absolute;top:50%;right:.95rem;transform:translateY(-62%)rotate(45deg)}.portfolio-mobile-filter select{-webkit-appearance:none;-moz-appearance:none;appearance:none;z-index:1;color:#f9ebf8;letter-spacing:.02em;background:linear-gradient(130deg,#351040eb,#240c33eb);border:1px solid #ff9fdf70;border-radius:12px;width:100%;padding:.68rem 2.3rem .68rem .9rem;font-family:Rajdhani,sans-serif;font-size:1.04rem;font-weight:700;transition:border-color .2s,box-shadow .2s,transform .18s;position:relative;box-shadow:0 8px 22px #0a031057,inset 0 0 0 1px #ffdcf412}.portfolio-mobile-filter select:hover{border-color:#ffbde594}.portfolio-mobile-filter select:focus{border-color:#ffd6edc7;outline:none;box-shadow:0 12px 28px #08020e6b,0 0 0 2px #ff95d84d,inset 0 0 0 1px #ffe6f51f}.portfolio-mobile-filter select option{color:#f8eaf5;background:#452d55}.portfolio-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.portfolio-row-animator{transition:max-height .43s cubic-bezier(.22,1,.36,1);overflow:hidden}.portfolio-row-animator.is-animating{will-change:max-height}.project-card{background:#220c2ba3;border:1px solid #ff89c73b;border-radius:14px;padding:.85rem}.project-card.clickable{cursor:pointer}.project-card.clickable:hover{border-color:#ffc5de;transform:translateY(-4px)}.project-card img{-o-object-fit:cover;object-fit:cover;border:1px solid #ffffff29;border-radius:10px;width:100%;height:170px}.project-card.clickable p{-webkit-line-clamp:3;-webkit-box-orient:vertical;min-height:4.35em;line-height:1.45;display:-webkit-box;overflow:hidden}.project-card.skeleton{cursor:default;background:linear-gradient(135deg,#2b12379e,#1e0c2b94);border-style:dashed;border-color:#ffaee24d;position:relative;overflow:hidden}.project-card.skeleton:before{content:"";opacity:0;pointer-events:none;background:radial-gradient(circle at 52% 45%,#e6ceee12,#6653790f 48%,#0000 84%);transition:opacity .22s;position:absolute;top:0;right:0;bottom:0;left:0}.project-card.skeleton:hover:before{opacity:1}.project-thumb-skeleton-wrap{position:relative}.project-skeleton-hover-label{letter-spacing:.05em;color:#ececf1f0;opacity:0;z-index:2;background:linear-gradient(120deg,#606068b8,#4d4d55b3);border:1px solid #bcbcc470;border-radius:999px;padding:.22rem .72rem;font-family:Oxanium,Orbitron,sans-serif;font-size:.79rem;transition:opacity .22s,transform .22s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.94)}.project-card.skeleton:hover .project-skeleton-hover-label{opacity:.95;transform:translate(-50%,-50%)scale(.98)}.project-skeleton-title-slot{min-height:4.35em;position:relative}.project-skeleton-hover-title{letter-spacing:.015em;color:#fffffff2;opacity:0;width:76%;min-height:4.35em;margin:0;font-family:Oxanium,Orbitron,sans-serif;font-size:1.02rem;font-weight:600;line-height:1.35;transition:opacity .2s,transform .2s;position:absolute;top:0;left:0;transform:translateY(4px)}.project-card.skeleton:hover .project-skeleton-title-slot .project-line-skeleton.short{opacity:0}.project-card.skeleton:hover .project-skeleton-hover-title{opacity:.92;transform:translateY(0)}.project-thumb-skeleton,.project-line-skeleton{background:#68497b38;border:1px solid #d3b2e23d;border-radius:10px;transition:background .22s,border-color .22s,opacity .2s}.project-thumb-skeleton{height:170px;margin-bottom:.7rem}.project-line-skeleton{height:16px;margin-bottom:.45rem}.project-line-skeleton.short{width:66%}.project-card.skeleton:hover .project-thumb-skeleton,.project-card.skeleton:hover .project-line-skeleton{background:#53406270;border-color:#b4a4c470}.portfolio-more-wrap{justify-content:center;margin-top:.85rem;display:flex}.portfolio-more-wrap button{color:#ffecf9;cursor:pointer;background:linear-gradient(120deg,#b652ff40,#ff3f8538);border:1px solid #ffb5e67a;border-radius:999px;padding:.42rem 1rem;font-family:inherit;font-weight:600}.project-detail{background:#220c2ba3;border:1px solid #ff89c73b;border-radius:14px;margin-top:1rem;padding:1rem}.shortcut-card{background:#220c2ba3;border:1px solid #ff89c73b;border-radius:14px;padding:.95rem}.shortcut-card.single{margin-top:1rem}.project-detail img{-o-object-fit:cover;object-fit:cover;border:1px solid #ffffff2e;border-radius:12px;width:100%;max-height:330px}.breadcrumbs{color:#f6c2da;flex-wrap:wrap;align-items:center;gap:.45rem;margin-bottom:.8rem;display:flex}.breadcrumbs button{color:var(--text);background:#321039b8;border:1px solid #ff89c759;border-radius:999px;padding:.28rem .7rem}.project-nav-controls{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.9rem;display:flex}.project-nav-slot{flex:1;min-width:0;display:flex}.project-nav-slot.left{justify-content:flex-start}.project-nav-slot.right{justify-content:flex-end}.project-switch-btn{color:#ffe8f5;background:#3a143fc7;border:1px solid #ff89c773;border-radius:999px;align-items:center;gap:.4rem;max-width:100%;padding:.45rem .85rem;font-weight:600;transition:transform .18s,border-color .18s;display:inline-flex}.project-switch-btn span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.project-switch-btn:hover{border-color:#ffd2e2;transform:translateY(-2px)}.repo-cta{color:#ffe9f6;background:linear-gradient(120deg,#ff468f42,#8958ff47);border:1px solid #ff89c78c;border-radius:12px;align-items:center;gap:.55rem;margin-top:.5rem;padding:.6rem .9rem;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:inline-flex;box-shadow:0 8px 16px #ff529a2e}.repo-cta:hover{border-color:#ffd2e2;transform:translateY(-2px);box-shadow:0 10px 22px #ff529a3d}.repo-cta span{font-weight:700}.stack-list{flex-wrap:wrap;gap:.45rem;margin-bottom:.95rem;display:flex}.stack-icon-link{background:#321039b8;border:1px solid #ff89c759;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;text-decoration:none;transition:transform .18s,border-color .18s;display:inline-flex}.stack-icon-link svg{font-size:1.18rem}.stack-icon-link:hover{border-color:#ffd2e2;transform:translateY(-2px)}.site-footer{border:1px solid var(--line);text-align:center;background:#14071bd1;border-radius:16px;width:min(1100px,100% - 2rem);margin:0 auto 2rem;padding:1rem}.site-footer h3{margin:0 0 .25rem;font-size:1.1rem}.site-footer p{color:var(--muted);margin:0 0 .7rem}.site-footer .footer-quote-source{margin-bottom:1.05rem}.site-footer .footer-copyright{margin-bottom:.85rem}.contact-panel{position:relative;overflow:hidden}.contact-panel:before{content:"";pointer-events:none;background:radial-gradient(circle,#7f52ff47,#0000 70%);height:80%;position:absolute;inset:-40% -10% auto}.contact-grid{z-index:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:1.1rem;display:grid;position:relative}.contact-grid a{background:#1e0b2acc;border:1px solid #ff9fdf66;border-radius:12px;align-items:center;gap:.55rem;padding:.7rem .85rem;text-decoration:none;transition:transform .22s,border-color .22s;display:inline-flex}.contact-grid a:hover{border-color:#ffd3e6;transform:translateY(-2px)}.contact-message-form{z-index:1;gap:.7rem;margin-top:1rem;display:grid;position:relative}.contact-message-form input,.contact-message-form textarea{color:#f8ecff;font:inherit;background:#1e0b2acc;border:1px solid #ff9fdf66;border-radius:12px;padding:.7rem .85rem}.contact-message-form textarea{resize:vertical;min-height:110px}.contact-email-wrap{background:#1e0b2acc;border:1px solid #ff9fdf66;border-radius:12px;grid-template-columns:1fr auto;align-items:center;display:grid;overflow:hidden}.contact-email-wrap input{background:0 0;border:0;border-radius:0}.contact-email-wrap span{color:#f8ecffd1;background:#30103cdb;border-left:1px solid #ff9fdf59;align-items:center;height:100%;padding:0 .85rem;display:inline-flex}.contact-send-btn{color:#fff1fb;font:inherit;cursor:pointer;background:linear-gradient(100deg,#ff5cb673,#7858ff66);border:1px solid #ffa9e494;border-radius:12px;justify-content:center;align-items:center;gap:.45rem;padding:.68rem 1rem;font-weight:700;display:inline-flex}.contact-send-btn:disabled{opacity:.65;cursor:not-allowed}.contact-feedback{margin:.65rem 0 0;font-size:.95rem}.contact-feedback.error{color:#ffc1d1}.contact-feedback.success{color:#9dffd0}.site-toast{z-index:120;color:#dbffe9;background:#1a4637eb;border:1px solid #6fe4ac94;border-radius:12px;align-items:center;gap:.45rem;padding:.62rem .85rem;display:inline-flex;position:fixed;bottom:1.1rem;right:1.1rem;box-shadow:0 10px 28px #05160e73}.footer-socials{justify-content:center;gap:.8rem;display:flex}.footer-socials a{color:#f4eeffad;background:#2f113659;border:1px solid #ffa0e147;border-radius:999px;justify-content:center;align-items:center;width:56px;height:56px;padding:0;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .22s,background .22s,color .22s;display:inline-flex}.footer-socials a svg{font-size:1.95rem}.footer-socials a:hover{color:#fff2fc;background:linear-gradient(125deg,#7751ffd1,#ff58add1);border-color:#ffceefd6;transform:translateY(-3px);box-shadow:0 10px 24px #9554ff59,0 6px 18px #ff57ac4d}.footer-socials a:focus-visible{outline-offset:2px;outline:2px solid #ffd5f0d6}@keyframes titlePulse{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes certGridReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes certOverlayFade{0%{opacity:0}to{opacity:1}}@keyframes certModalIn{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes resumeIdlePulse{0%{box-shadow:0 10px 28px #ff47b04d,inset 0 0 16px #ffddf521}50%{box-shadow:0 13px 32px #ff47b06b,inset 0 0 20px #ffddf533}to{box-shadow:0 10px 28px #ff47b04d,inset 0 0 16px #ffddf521}}@keyframes resumeClickBurst{0%{filter:brightness()}45%{filter:brightness(1.14)}to{filter:brightness()}}@keyframes topbarReveal{0%{opacity:0;filter:blur(8px);transform:translate(-50%,-70%)scale(.97)}55%{opacity:1;filter:blur();transform:translate(-50%,.35rem)scale(1)}to{opacity:1;filter:blur();transform:translate(-50%)}}@keyframes brandFuzzyBase{0%{transform:translate(0)}20%{transform:translate(-.4px,.1px)}40%{transform:translate(.5px,-.3px)}60%{transform:translate(-.2px,.35px)}80%{transform:translate(.35px,-.1px)}to{transform:translate(0)}}@keyframes brandFuzzyLayerA{0%{transform:translate(0)}25%{transform:translate(-1.1px,.4px)}50%{transform:translate(1.2px,-.7px)}75%{transform:translate(-.8px,.9px)}to{transform:translate(0)}}@keyframes brandFuzzyLayerB{0%{transform:translate(0)}20%{transform:translate(1px,-.45px)}45%{transform:translate(-1.2px,.8px)}70%{transform:translate(.7px,-1px)}to{transform:translate(0)}}@keyframes encryptedGlow{0%{opacity:.9;filter:saturate(.95)}50%{opacity:1;filter:saturate(1.15)}to{opacity:.9;filter:saturate(.95)}}@keyframes marqueeLeft{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marqueeRight{0%{transform:translate(-50%)}to{transform:translate(0)}}@keyframes floatSlow{0%{transform:translateY(0)}to{transform:translateY(-180px)}}@keyframes floatMid{0%{transform:translateY(0)}to{transform:translateY(-260px)}}@keyframes floatFast{0%{transform:translateY(0)}to{transform:translateY(-320px)}}@keyframes splashPulse{0%,to{opacity:.92;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}@keyframes splashIntro{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}@keyframes splashBrandIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes splashNoiseShift{0%{transform:translate(0)rotate(0)}to{transform:translate(-8%,-12%)rotate(10deg)}}@keyframes splashOrbFloatLeft{0%,to{transform:translate(0)scale(1)}50%{transform:translate(18px,10px)scale(1.04)}}@keyframes splashOrbFloatRight{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-16px,-14px)scale(1.05)}}@media (max-width:640px){.splash-brand-card{border-radius:18px;gap:.66rem;padding:.95rem}.splash-brand{justify-content:flex-start}.splash-status{line-height:1.32}}@media (prefers-reduced-motion:reduce){.splash-screen,.splash-brand-card,.splash-logo,.splash-noise,.splash-orb-left,.splash-orb-right{transition:none!important;animation:none!important}}@media (max-width:920px){.topbar{width:auto;left:.75rem;right:.75rem;transform:translateY(0)}.topbar-hidden{transform:translateY(-165%)scale(.94)}.topbar-visible{animation:none;transform:translateY(0)}.intro-layout,.skill-grid,.project-grid,.shortcut-grid{grid-template-columns:1fr}.about-section-panel .intro-layout{grid-template-columns:1fr;align-items:start;gap:1rem}.intro-layout .lead{text-align:justify;text-justify:inter-word;-moz-text-align-last:left;text-align-last:left;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;margin-right:0;font-size:1.04rem;line-height:1.62}.about-section-panel .quick-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;width:100%;display:grid}.about-section-panel .quick-links a{justify-content:center;width:100%;max-width:100%;padding-inline:.9rem!important}.topbar{border-radius:20px;flex-wrap:wrap;align-items:center}.topbar.topbar-mobile-breadcrumb{width:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;flex-wrap:nowrap;justify-content:flex-end;align-items:center;padding:0;animation:none;left:auto;right:1rem;transform:none}.topbar.topbar-mobile-breadcrumb:before{opacity:0}.topbar.topbar-mobile-breadcrumb .menu-toggle{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1c0b2638;border-color:#e9adff42;margin-left:auto;box-shadow:0 4px 14px #08020e33}.topbar.topbar-mobile-breadcrumb.topbar-visible{box-shadow:none;border-color:#0000;transform:none}.topbar.topbar-mobile-breadcrumb nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0e0518f5;border:1px solid #f6baff57;border-radius:16px;width:min(360px,100dvw - 1rem);max-height:none;margin-top:0;padding:.5rem;position:absolute;top:calc(100% + .4rem);right:0;box-shadow:0 14px 32px #05010a80,inset 0 0 22px #ffb0f114}.topbar.topbar-mobile-breadcrumb nav a{text-align:center}.menu-toggle{justify-content:center;align-items:center;display:inline-flex}.topbar nav{opacity:0;pointer-events:none;flex-direction:column;width:100%;max-height:0;margin-top:.35rem;transition:max-height .32s cubic-bezier(.22,1,.36,1),opacity .24s,transform .26s;display:flex;overflow:hidden;transform:translateY(-4px)}.topbar nav.open{opacity:1;pointer-events:auto;background:#0e0518f5;border:1px solid #f6baff57;border-radius:16px;max-height:none;overflow:visible;transform:translateY(0);box-shadow:0 14px 32px #05010a75,inset 0 0 22px #ffb0f114}.topbar nav a{text-align:center;color:#fff2fcf5;padding:.9rem .65rem;font-size:1.35rem;font-weight:700}.topbar nav .nav-hire-me{margin-left:0}main{padding-top:0}.section-page:not(.home-section){padding-top:6rem}.logo-glyph{gap:0;min-width:82px;padding:.32rem .18rem}.logo-glyph svg{font-size:clamp(3.3rem,12vw,4.2rem)}.marquee-track{gap:.18rem}.skill-lane{padding:.7rem .85rem .8rem}.lane-corner-tag{writing-mode:horizontal-tb;text-orientation:mixed;background:linear-gradient(#ff4fa88c,#d6378a7a);border:1px solid #ffb0e64d;border-radius:999px;width:-moz-fit-content;width:fit-content;min-width:78px;margin-bottom:.25rem;padding:.24rem .52rem;font-size:.7rem;line-height:1.1;position:static;top:auto;bottom:auto;box-shadow:0 8px 16px #ff358829}.lane-corner-tag.left .lane-corner-text,.lane-corner-tag.right .lane-corner-text{transform:none}.lane-corner-tag.left{margin-left:0;margin-right:auto}.lane-corner-tag.right{writing-mode:horizontal-tb;text-orientation:mixed;margin-left:auto;margin-right:0}.contact-grid{grid-template-columns:1fr}.certification-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-hero-wrap{height:100vh;min-height:100vh}.home-copy-layer{padding-inline:1.2rem}.about-photo-stack,.about-photo-stage{aspect-ratio:4/3;min-height:0}.about-photo-stack{margin-inline:auto;width:100%;max-width:100%;margin-top:.25rem;margin-bottom:.25rem}.about-section-panel .intro-layout>:first-child,.about-section-panel .intro-layout>.about-photo-stack{grid-column:auto}.about-visual-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.about-visual-card{min-height:122px;padding:.62rem .72rem}.about-visual-icon{width:34px;height:34px}.about-visual-icon svg,.about-visual-arrow svg{font-size:1rem}.about-visual-card .about-visual-value{font-size:clamp(1.45rem,4.2vw,1.82rem)}.about-visual-title{font-size:1.04rem}.about-visual-subtitle{font-size:.9rem}.portfolio-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.portfolio-tabs button{text-align:center;width:100%;padding:.5rem .45rem}.portfolio-row{gap:.75rem}.section-panel>h2.animated-subtitle{border-radius:16px;padding:.95rem 1.1rem}}@media (max-width:600px){.section-desc{font-size:.98rem;line-height:1.5}.intro-layout .lead{font-size:.98rem;line-height:1.58}.about-section-panel .quick-links,.certification-grid{grid-template-columns:1fr}.certification-grid.certification-grid-mobile-all{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.cert-list-overlay{padding:.45rem}.cert-list-modal{border-radius:16px;width:100%;max-width:calc(100dvw - .9rem);max-height:calc(100dvh - .9rem)}.cert-list-modal-head{padding:.72rem .72rem .58rem}.cert-list-modal-body{padding:.62rem .72rem .72rem}.cert-list-modal-head h3{font-size:1.05rem}.cert-list-close{width:32px;height:32px}.certification-grid.certification-grid-mobile-all .cert-card{padding:.58rem}.cert-thumb{height:178px}#portfolio .section-panel{padding:1rem .85rem}.portfolio-tabs{gap:.45rem;margin-top:.7rem;display:none}.portfolio-mobile-filter{display:block}.portfolio-tabs button{padding:.48rem .35rem;font-size:.92rem}.portfolio-row{grid-template-columns:1fr;gap:.65rem;margin-top:.8rem;display:grid}.project-card{padding:.72rem}.project-card.clickable{width:100%}.project-card.skeleton{display:none}.project-card img{height:154px}.project-detail{border-radius:12px;padding:.78rem}.project-detail img{-o-object-fit:contain;object-fit:contain;height:auto;max-height:none}.breadcrumbs{gap:.35rem;font-size:.95rem}.breadcrumbs>span:last-child{color:#ffe9f8;overflow-wrap:anywhere;flex-basis:100%;margin-top:.18rem}.project-nav-controls{flex-direction:column;align-items:stretch;gap:.55rem}.project-nav-slot,.project-nav-slot.left,.project-nav-slot.right{justify-content:stretch;width:100%}.project-switch-btn{justify-content:space-between;width:100%;padding:.5rem .72rem}.repo-cta{justify-content:center;width:100%}.about-photo-stack,.about-photo-stage{aspect-ratio:4/3;min-height:0}.about-photo-stack{margin-inline:auto;width:100%;max-width:100%;margin-top:.2rem;margin-bottom:.2rem}.about-visual-grid{grid-template-columns:1fr}.about-visual-card{min-height:116px;padding:.6rem .68rem}.about-visual-card .about-visual-value{font-size:1.62rem}.about-visual-title{font-size:1.12rem}.about-visual-subtitle{font-size:.96rem}.section-panel>h2.animated-subtitle{border-radius:14px;padding:.85rem .95rem;font-size:clamp(1.25rem,5.5vw,2rem)}.site-footer{margin-top:1.1rem}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
