@import"https://fonts.googleapis.com/css2?family=Fira+Code:wght@400;500;600&family=Inter:wght@400;500;600;700&display=swap";.contact{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px;background:radial-gradient(circle at 18% 18%,rgba(47,227,181,.1),transparent 28%),radial-gradient(circle at 82% 74%,rgba(243,189,99,.08),transparent 30%),var(--command-bg)}@media (max-width: 738px){.contact{height:auto;padding:76px 16px 42px}}.contact .container{width:min(1120px,100%);display:grid;grid-template-columns:minmax(0,.88fr) minmax(320px,1.12fr);gap:0;overflow:hidden;border:1px solid var(--command-line);border-radius:var(--command-radius);background:var(--command-panel);box-shadow:0 0 0 1px #b6ffad24,var(--command-shadow)}@media (max-width: 1024px){.contact .container{grid-template-columns:1fr}}.contact .textContainer,.contact .formContainer{padding:38px}@media (max-width: 738px){.contact .textContainer,.contact .formContainer{padding:24px}}.contact .textContainer{display:flex;flex-direction:column;gap:22px;border-right:1px solid var(--command-line);background:linear-gradient(90deg,rgba(122,146,166,.08) 1px,transparent 1px),linear-gradient(0deg,rgba(122,146,166,.05) 1px,transparent 1px),rgba(3,6,8,.32);background-size:42px 42px}@media (max-width: 1024px){.contact .textContainer{border-right:none;border-bottom:1px solid var(--command-line)}}.contact .textContainer h1{color:var(--command-text);font-size:clamp(38px,5vw,62px);line-height:1}.contact .textContainer h1:before{content:"<";color:var(--command-cyan)}.contact .textContainer h1:after{content:"/>";color:var(--command-cyan)}.contact .textContainer .infoItem{display:grid;gap:7px;padding:14px 0;border-bottom:1px solid rgba(122,146,166,.14)}.contact .textContainer .infoItem h2{color:var(--command-cyan);font-family:Fira Code,monospace;font-size:13px}.contact .textContainer .infoItem span{color:var(--command-muted);font-size:14px;line-height:1.5;word-break:break-word}.contact .textContainer .socialLinks{display:flex;gap:12px;margin-top:2px}.contact .textContainer .socialLinks a{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--command-line);border-radius:var(--command-radius);background:rgba(3,6,8,.76);transition:transform .2s ease,border-color .2s ease}.contact .textContainer .socialLinks a:hover{transform:translateY(-2px);border-color:var(--command-cyan)}.contact .textContainer .socialLinks img{width:22px;height:22px;object-fit:contain}.contact .formContainer{display:flex;flex-direction:column;justify-content:center}.contact .formContainer form{display:flex;flex-direction:column;gap:16px;width:100%}.contact .formContainer form input,.contact .formContainer form textarea{width:100%;padding:14px 15px;border:1px solid var(--command-line);border-radius:var(--command-radius);background:rgba(3,6,8,.78);color:var(--command-text);font-family:Fira Code,monospace;font-size:13px;resize:vertical}.contact .formContainer form input:focus,.contact .formContainer form textarea:focus{outline:none;border-color:var(--command-cyan);box-shadow:0 0 0 3px #48d7ff1a}.contact .formContainer form input::placeholder,.contact .formContainer form textarea::placeholder{color:var(--command-dim)}.contact .formContainer form textarea{min-height:160px}.contact .formContainer form button{min-height:46px;border:1px solid rgba(47,227,181,.72);border-radius:var(--command-radius);background:rgba(47,227,181,.12);color:var(--command-green);font-family:Fira Code,monospace;font-size:13px;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}.contact .formContainer form button:before{content:"send";margin-right:8px;color:var(--command-text)}.contact .formContainer form button:after{content:"()";color:var(--command-text)}.contact .formContainer form button:hover{transform:translateY(-2px);border-color:var(--command-cyan);background:rgba(72,215,255,.14)}.contact .formContainer form .formStatus{padding:12px;border-radius:var(--command-radius);font-family:Fira Code,monospace;font-size:13px}.contact .formContainer form .formStatus.error{border:1px solid rgba(255,107,125,.54);color:var(--command-red);background:rgba(255,107,125,.08)}.contact .formContainer form .formStatus.success{border:1px solid rgba(47,227,181,.54);color:var(--command-green);background:rgba(47,227,181,.08)}body,body *{cursor:none}.custom-cursor,.cursor-trail{position:fixed;pointer-events:none;z-index:9999;transform:translate(-50%,-50%)}@media (max-width: 738px){.custom-cursor,.cursor-trail{display:none}}.custom-cursor{width:34px;height:34px;color:var(--command-green);mix-blend-mode:normal;filter:drop-shadow(0 0 8px rgba(0,0,0,.95)) drop-shadow(0 0 18px rgba(182,255,173,.46));transition:width .14s ease,height .14s ease,color .14s ease,transform .08s ease}.custom-cursor:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid currentColor;background:linear-gradient(currentColor,currentColor) center/14px 2px no-repeat,linear-gradient(currentColor,currentColor) center/2px 14px no-repeat,rgba(3,6,4,.24);box-shadow:0 0 0 2px #000000e6,inset 0 0 0 1px #f0f7e938,0 0 22px #b6ffad6b}.custom-cursor:after{content:"";position:absolute;left:50%;top:50%;width:7px;height:7px;background:#f7ffe9;border:1px solid #020302;box-shadow:0 0 14px currentColor;transform:translate(-50%,-50%)}.custom-cursor.hovering{width:50px;height:50px;color:var(--command-cyan)}.custom-cursor.hovering:before{background:linear-gradient(currentColor,currentColor) center/22px 2px no-repeat,linear-gradient(currentColor,currentColor) center/2px 22px no-repeat,rgba(3,6,4,.32);box-shadow:0 0 0 2px #000000f2,inset 0 0 0 1px #f0f7e947,0 0 28px #a5f3fc80}.custom-cursor.active{transform:translate(-50%,-50%) scale(.78);color:var(--command-focus)}.cursor-trail{width:8px;height:8px;background:#f7ffe9;border:1px solid #020302;box-shadow:0 0 0 1px #b6ffada3,0 0 14px #b6ffad66}.about{min-height:100vh;overflow:hidden;position:relative;display:flex;align-items:center;background:radial-gradient(circle at 88% 22%,rgba(72,215,255,.12),transparent 28%),linear-gradient(180deg,var(--command-bg) 0%,#081018 100%)}@media (max-width: 738px){.about{min-height:100vh;height:auto;padding:76px 16px 44px}}.about .wrapper{width:min(1180px,100% - 48px);min-height:76vh;margin:auto;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);align-items:center;gap:44px;position:relative;z-index:2}@media (max-width: 1024px){.about .wrapper{grid-template-columns:1fr;gap:26px;padding:50px 0}}@media (max-width: 738px){.about .wrapper{width:100%;min-height:auto;padding:0}}.about .textContainer{display:flex;flex-direction:column;gap:22px;padding:34px;background:var(--command-panel);border:1px solid var(--command-line);border-radius:var(--command-radius);box-shadow:0 0 0 1px #b6ffad24,var(--command-shadow)}@media (max-width: 738px){.about .textContainer{padding:22px;gap:18px}}.about .textContainer h2{color:var(--command-text);font-size:clamp(36px,5vw,64px);line-height:1;letter-spacing:0}.about .textContainer p{color:var(--command-muted);font-size:15px;line-height:1.8}.about .textContainer p strong{color:var(--command-amber)}.about .textContainer p a{display:inline-flex;vertical-align:middle;margin:0 3px}.about .textContainer p img{width:30px;height:25px;object-fit:contain}.about .skillsContainer{display:flex;flex-direction:column;gap:14px}.about .skillsContainer>p{color:var(--command-green);font-family:Fira Code,monospace;font-size:13px}.about .skillsContainer>p:before{content:"// ";color:var(--command-dim)}.about .skillsContainer>p strong{color:var(--command-amber)}.about .skillsContainer .skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (max-width: 738px){.about .skillsContainer .skills{grid-template-columns:1fr}}.about .skillsContainer .skillGroup{min-height:188px;padding:16px;border:1px solid var(--command-line);border-radius:var(--command-radius);background:rgba(3,6,8,.58);box-shadow:inset 0 0 0 1px #f0f7e90a}.about .skillsContainer .skillGroup ul{display:grid;gap:8px;list-style:none}.about .skillsContainer .skillGroup li{color:var(--command-text);font-family:Fira Code,monospace;font-size:12px;line-height:1.45}.about .skillsContainer .skillGroup li:before{content:">";margin-right:8px;color:var(--command-green)}.about .buttons{display:flex;flex-wrap:wrap;gap:12px}.about .buttons a{padding:11px 15px;border:1px solid var(--command-line-strong);border-radius:var(--command-radius);color:var(--command-text);background:rgba(255,255,255,.03);font-family:Fira Code,monospace;font-size:13px;transition:border-color .2s ease,color .2s ease,transform .2s ease}.about .buttons a:first-child{color:var(--command-green);border-color:#2fe3b5ad}.about .buttons a:hover{color:var(--command-cyan);border-color:var(--command-cyan);transform:translateY(-2px)}.about .visualPanel{position:relative;min-height:560px;border:1px solid var(--command-line);border-radius:var(--command-radius);background:linear-gradient(90deg,rgba(122,146,166,.12) 1px,transparent 1px),linear-gradient(0deg,rgba(122,146,166,.09) 1px,transparent 1px),#060a07;background-size:32px 32px;overflow:hidden;box-shadow:0 0 0 1px #b6ffad24,var(--command-shadow)}@media (max-width: 1024px){.about .visualPanel{min-height:420px}}@media (max-width: 738px){.about .visualPanel{min-height:360px}}.about .avatarShell{position:absolute;top:30px;right:24px;bottom:34px;left:24px;display:flex;align-items:center;justify-content:center}.about .avatarShell img{width:min(92%,430px);height:100%;object-fit:contain;opacity:.74;filter:saturate(.8) contrast(1.08) drop-shadow(0 20px 48px rgba(72,215,255,.16))}.about .slidingTextContainer{position:absolute;left:0;bottom:-46px;z-index:1;color:#e6edf309;font-size:clamp(120px,18vw,280px);font-weight:800;white-space:nowrap;pointer-events:none}.sidebar{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--command-text)}.sidebar .bg{z-index:999;position:fixed;inset:0 auto 0 0;width:380px;background:linear-gradient(90deg,rgba(72,215,255,.08) 1px,transparent 1px),var(--command-surface-strong);background-size:42px 42px;border-right:1px solid var(--command-line);box-shadow:20px 0 70px #00000070}@media (max-width: 738px){.sidebar .bg{width:min(82vw,300px)}}.sidebar .bg .links{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;gap:14px;padding:72px 34px}.sidebar .bg .links a{width:100%;padding:14px 16px;border:1px solid var(--command-line-strong);border-radius:var(--command-radius);color:var(--command-text);background:rgba(3,6,8,.68);font-family:Fira Code,monospace;font-size:14px;transition:background .2s ease,border-color .2s ease,color .2s ease}.sidebar .bg .links a:before{content:"./";margin-right:8px;color:var(--command-green)}.sidebar .bg .links a:hover{color:var(--command-cyan);border-color:var(--command-cyan);background:rgba(72,215,255,.1)}.sidebar button{z-index:1000;position:fixed;top:24px;left:24px;width:50px;height:50px;display:grid;place-items:center;border:1px solid var(--command-green);border-radius:var(--command-radius);background:#020302;color:var(--command-green);box-shadow:0 0 0 2px #020302f2,0 0 0 3px #b6ffad33,0 0 26px #b6ffad75;cursor:none;transition:transform .2s ease,border-color .2s ease,background .2s ease}@media (max-width: 738px){.sidebar button{top:18px;left:16px;width:46px;height:46px}}.sidebar button:hover{transform:translateY(-2px);border-color:var(--command-cyan);background:rgba(72,215,255,.12);color:var(--command-cyan)}.parallax{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(90deg,rgba(72,215,255,.08) 1px,transparent 1px),linear-gradient(0deg,rgba(72,215,255,.06) 1px,transparent 1px),radial-gradient(circle at 50% 45%,rgba(47,227,181,.14),transparent 34%),linear-gradient(145deg,#061018 0%,var(--command-bg) 56%,#020507 100%);background-size:80px 80px,80px 80px,auto,auto}@media (max-width: 738px){.parallax{min-height:100vh;padding:76px 18px 32px}}.parallax:after{content:"";position:absolute;top:9%;right:9%;bottom:9%;left:9%;border:1px solid var(--command-line);border-radius:var(--command-radius);box-shadow:inset 0 0 60px #48d7ff0d;pointer-events:none}@media (max-width: 738px){.parallax:after{top:80px;right:12px;bottom:84px;left:12px}}.parallax .content-wrapper{position:relative;z-index:4;width:min(920px,88vw);text-align:center;padding:54px 40px;background:linear-gradient(180deg,rgba(13,20,27,.78),rgba(9,14,20,.58));border:1px solid var(--command-line);border-radius:var(--command-radius);box-shadow:0 0 0 1px #b6ffad2e,var(--command-shadow),inset 0 0 0 1px #f0f7e914}@media (max-width: 738px){.parallax .content-wrapper{width:100%;padding:34px 18px}}.parallax .content-wrapper:before{content:"thang@portfolio:~/home $ ./boot-profile";position:absolute;top:0;left:0;right:0;height:34px;display:flex;align-items:center;padding-left:16px;border-bottom:1px solid var(--command-line);background:#071008;color:var(--command-green);font-family:Fira Code,monospace;font-size:12px}.parallax .eyebrow{display:inline-flex;align-items:center;gap:10px;margin:10px 0 24px;color:var(--command-green);font-family:Fira Code,monospace;font-size:13px;text-transform:none}.parallax .eyebrow span{width:10px;height:10px;border-radius:1px;background:var(--command-green);box-shadow:0 0 18px #2fe3b5cc}.parallax h1{color:var(--command-text);font-family:Inter,sans-serif;font-size:clamp(52px,8vw,112px);line-height:.92;letter-spacing:0;position:relative;z-index:3}.parallax h1 .role{display:block;margin-top:18px;color:var(--command-cyan);font-family:Fira Code,monospace;font-size:clamp(18px,3vw,34px);font-weight:500;line-height:1.2}.parallax h1 .role:before{content:"> ";color:var(--command-green)}.parallax .subtitle{max-width:660px;margin:24px auto 0;color:var(--command-muted);font-size:18px;line-height:1.7}@media (max-width: 738px){.parallax .subtitle{font-size:14px;line-height:1.6}}.parallax .hero-actions{display:flex;justify-content:center;gap:14px;margin-top:32px;flex-wrap:wrap}.parallax .hero-actions a{min-width:142px;padding:12px 18px;border:1px solid var(--command-line-strong);border-radius:var(--command-radius);color:var(--command-text);background:rgba(165,243,252,.1);font-family:Fira Code,monospace;font-size:13px;transition:border-color .2s ease,transform .2s ease,background .2s ease}.parallax .hero-actions a:first-child{border-color:var(--command-green);background:rgba(182,255,173,.14);color:var(--command-green)}.parallax .hero-actions a:hover{transform:translateY(-2px);border-color:var(--command-cyan);background:rgba(72,215,255,.14)}.parallax .code-decoration{position:absolute;z-index:1;pointer-events:none;font-family:Fira Code,monospace}.parallax .code-decoration.line-numbers{left:44px;top:50%;transform:translateY(-50%);display:grid;gap:8px}@media (max-width: 738px){.parallax .code-decoration.line-numbers{left:12px;opacity:.45}}.parallax .code-decoration.line-numbers span{color:var(--command-dim);font-size:12px}.parallax .code-decoration.code-snippets{display:none;top:72px;right:64px;max-width:360px;padding:18px;color:var(--command-muted);font-size:12px;line-height:1.7;background:rgba(3,6,8,.36);border:1px solid var(--command-line);border-radius:var(--command-radius);opacity:.42}@media (max-width: 1024px){.parallax .code-decoration.code-snippets{display:none}}.parallax .code-decoration.code-snippets .comment{color:var(--command-dim)}.parallax .code-decoration.code-snippets .keyword{color:var(--command-cyan)}.parallax .code-decoration.code-snippets .string{color:var(--command-amber)}.parallax .floating-elements{display:none}.parallax .floating-elements .element{position:absolute;padding:8px 12px;border:1px solid var(--command-line);border-radius:var(--command-radius);color:var(--command-dim);background:rgba(3,6,8,.34);font-family:Fira Code,monospace;font-size:12px;animation:float 8s ease-in-out infinite}.parallax .floating-elements .element:nth-child(1){top:16%;left:12%}.parallax .floating-elements .element:nth-child(2){bottom:20%;left:12%;animation-delay:-2s}.parallax .floating-elements .element:nth-child(3){bottom:20%;right:12%;animation-delay:-4s}@media (max-width: 1024px){.parallax .floating-elements .element{display:none}}.parallax .status-panel{position:absolute;left:40px;bottom:34px;z-index:4;display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 738px){.parallax .status-panel{left:18px;right:18px;bottom:22px;justify-content:center}}.parallax .status-panel span{padding:8px 10px;border:1px solid var(--command-line);border-radius:var(--command-radius);color:var(--command-muted);background:rgba(3,6,8,.72);font-family:Fira Code,monospace;font-size:11px}.parallax .status-panel span:before{content:"";display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--command-green)}.parallax .scroll-indicator{display:none}.parallax .tech-icons{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}.parallax .tech-icons .icon{position:absolute;width:54px;height:54px;background-size:contain;background-repeat:no-repeat;background-position:center;opacity:.55;filter:grayscale(.2) drop-shadow(0 0 22px rgba(72,215,255,.45));animation:float 9s ease-in-out infinite}.parallax .tech-icons .icon:nth-child(1){top:13%;left:9%}.parallax .tech-icons .icon:nth-child(2){top:15%;right:11%;animation-delay:-1s}.parallax .tech-icons .icon:nth-child(3){bottom:17%;left:10%;animation-delay:-2s}.parallax .tech-icons .icon:nth-child(4){bottom:18%;right:10%;animation-delay:-3s}.parallax .tech-icons .icon:nth-child(5){top:33%;right:22%;animation-delay:-4s}.parallax .tech-icons .icon:nth-child(6){bottom:31%;left:25%;animation-delay:-5s}.parallax .tech-icons .icon:nth-child(7){top:31%;left:27%;animation-delay:-6s}.parallax .tech-icons .icon:nth-child(8){bottom:33%;right:27%;animation-delay:-7s}@media (max-width: 738px){.parallax .tech-icons .icon{width:36px;height:36px;opacity:.32}}.scan-lines:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;pointer-events:none;opacity:.14;background:repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0,rgba(255,255,255,.06) 1px,transparent 1px,transparent 3px)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-18px)}}html{scroll-snap-type:y mandatory;scroll-behavior:smooth}@media (max-width: 738px){html{scroll-snap-type:y proximity}}*{padding:0;margin:0;box-sizing:border-box;font-family:Inter,sans-serif}body{min-width:320px;background:radial-gradient(circle at 20% 10%,rgba(47,227,181,.12),transparent 30%),radial-gradient(circle at 78% 18%,rgba(93,173,255,.1),transparent 28%),linear-gradient(135deg,var(--command-bg) 0%,var(--command-bg-deep) 100%);color:var(--command-text);overflow-x:hidden}::selection{color:var(--command-bg-deep);background:var(--command-green)}a{text-decoration:none;color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--command-focus);outline-offset:3px;box-shadow:0 0 0 5px #beffb124}section{height:100vh;width:100vw;scroll-snap-align:center;overflow:hidden}@media (max-width: 738px){section{height:auto;min-height:100vh;width:100%;overflow:visible}}::-webkit-scrollbar{width:14px;height:14px}::-webkit-scrollbar-track{background:var(--command-bg-deep)}::-webkit-scrollbar-thumb{background:var(--command-line);border:4px solid var(--command-bg-deep);border-radius:7px}::-webkit-scrollbar-thumb:hover{background:var(--command-cyan)}.code-text{font-family:Fira Code,monospace}:root{--command-bg: #07100a;--command-bg-deep: #030604;--command-surface: rgba(12, 22, 15, .96);--command-surface-strong: #0d170f;--command-panel: rgba(14, 27, 18, .94);--command-panel-soft: rgba(18, 35, 23, .74);--command-line: rgba(181, 225, 166, .46);--command-line-strong: rgba(190, 255, 177, .78);--command-text: #f0f7e9;--command-muted: #c0cbb9;--command-dim: #83927a;--command-cyan: #a5f3fc;--command-green: #b6ffad;--command-amber: #e6db74;--command-red: #ff6e6e;--command-blue: #6aa8ff;--command-purple: #a78bfa;--command-focus: #dcff7a;--command-shadow: 0 24px 70px rgba(0, 0, 0, .52);--command-glow: 0 0 30px rgba(182, 255, 173, .36);--command-radius: 2px;--vscode-bg: var(--command-bg);--vscode-sidebar: var(--command-surface-strong);--vscode-active-tab: var(--command-panel);--vscode-inactive-tab: var(--command-panel-soft);--vscode-border: var(--command-line);--vscode-text: var(--command-text);--vscode-comment: var(--command-muted);--vscode-keyword: var(--command-cyan);--vscode-function: var(--command-green);--vscode-string: var(--command-amber);--vscode-number: var(--command-purple);--vscode-line-number: var(--command-dim);--vscode-scrollbar: var(--command-line);--vscode-selection: rgba(72, 215, 255, .16)}.portfolio{position:relative;background:linear-gradient(180deg,#081018 0%,var(--command-bg) 38%,#05090d 100%);color:var(--command-text)}@media (max-width: 738px){.portfolio{height:auto;min-height:100vh;overflow:visible}}.portfolio .progress{position:sticky;top:0;left:0;z-index:10;padding:18px 24px 0 112px;background:rgba(3,6,8,.88);border-bottom:1px solid var(--command-line)}@media (max-width: 738px){.portfolio .progress{padding:78px 14px 0}}.portfolio .progress h1{margin-top:4px;color:var(--command-text);font-size:clamp(20px,3vw,34px);letter-spacing:0}.portfolio .progress h1:before{content:"// ";color:var(--command-dim)}.portfolio .progress .progressBar{height:3px;margin-top:14px;transform-origin:left;background:linear-gradient(90deg,var(--command-green),var(--command-cyan),var(--command-amber));box-shadow:0 0 18px #48d7ff57}.portfolio .projectSection{background:linear-gradient(90deg,rgba(122,146,166,.08) 1px,transparent 1px),linear-gradient(0deg,rgba(122,146,166,.05) 1px,transparent 1px);background-size:64px 64px}@media (max-width: 738px){.portfolio .projectSection{min-height:auto;padding:52px 0}}.portfolio .container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}@media (max-width: 738px){.portfolio .container{height:auto;overflow:visible;padding:0 16px}}.portfolio .wrapper{width:min(1180px,100% - 48px);height:76%;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);align-items:center;gap:42px}@media (max-width: 1024px){.portfolio .wrapper{grid-template-columns:1fr;height:auto;gap:24px;padding:74px 0 46px}}@media (max-width: 738px){.portfolio .wrapper{width:100%;padding:0}}.portfolio .imageContainer{position:relative;height:min(460px,52vh);overflow:hidden;border:1px solid var(--command-line);border-radius:var(--command-radius);background:var(--command-surface);box-shadow:0 0 0 1px #b6ffad24,var(--command-shadow)}@media (max-width: 738px){.portfolio .imageContainer{width:100%;height:auto;aspect-ratio:16/10}}.portfolio .imageContainer img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.05)}@media (max-width: 738px){.portfolio .imageContainer img{object-fit:cover}}.portfolio .textContainer{display:flex;flex-direction:column;gap:20px;padding:30px;border:1px solid var(--command-line);border-radius:var(--command-radius);background:var(--command-panel);box-shadow:0 0 0 1px #b6ffad24,var(--command-shadow)}@media (max-width: 738px){.portfolio .textContainer{transform:none!important;padding:22px;gap:16px}}.portfolio .textContainer .projectIndex{color:var(--command-green);font-family:Fira Code,monospace;font-size:12px}.portfolio .textContainer h2{color:var(--command-text);font-size:clamp(28px,4vw,48px);line-height:1.05;letter-spacing:0}.portfolio .textContainer h2:before{content:"{ ";color:var(--command-cyan)}.portfolio .textContainer h2:after{content:" }";color:var(--command-cyan)}.portfolio .textContainer p{color:var(--command-muted);font-size:14px;line-height:1.75}.portfolio .textContainer .technologies{display:grid;gap:8px;padding:16px;border:1px solid var(--command-line);border-radius:var(--command-radius);background:rgba(3,6,8,.6)}.portfolio .textContainer .technologies strong{color:var(--command-amber);font-family:Fira Code,monospace;font-size:12px}.portfolio .textContainer .technologies span{color:var(--command-text);font-family:Fira Code,monospace;font-size:12px;line-height:1.6}.portfolio .textContainer .linksContainer{display:flex;flex-wrap:wrap;gap:12px}.portfolio .textContainer .linksContainer a,.portfolio .textContainer .linksContainer button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border:1px solid var(--command-line-strong);border-radius:var(--command-radius);background:rgba(165,243,252,.1);color:var(--command-text);font-family:Fira Code,monospace;font-size:12px;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}.portfolio .textContainer .linksContainer a:hover,.portfolio .textContainer .linksContainer button:hover{transform:translateY(-2px);border-color:var(--command-cyan);background:rgba(72,215,255,.14)}.portfolio .textContainer .linksContainer a img,.portfolio .textContainer .linksContainer button img{width:20px;height:20px;object-fit:contain}.portfolio .textContainer .linksContainer .demo-disabled{color:var(--command-dim);background:rgba(122,146,166,.08);cursor:not-allowed}.portfolio .textContainer .linksContainer .demo-disabled:hover{transform:none;border-color:var(--command-line-strong);background:rgba(122,146,166,.08)}
