:root{--clr-bg: #FFFFFF;--clr-surface: #F8F8F8;--clr-text: #111111;--clr-text-muted: #666666;--clr-accent: #f20c3c;--clr-accent-hover: #d10a34;--clr-accent-text: #FFFFFF;--clr-border: #EEEEEE;--clr-white: #FFFFFF;--clr-hover: #F2F2F2;--clr-active-bg: #111111;--clr-active-text: #FFFFFF;--sp-unit: 8px;--sp-xs: 8px;--sp-sm: 16px;--sp-md: 32px;--sp-lg: 64px;--sp-xl: 96px;--font-main: "Nata Sans", sans-serif;--fs-h1: clamp(2.5rem, 12vw, 6rem);--fs-h2: clamp(1.8rem, 6vw, 3rem);--fs-h3: clamp(1.1rem, 3vw, 1.4rem);--fs-body: 1rem;--fs-small: .85rem;--fs-tiny: .75rem;--radius-sm: 4px;--radius-md: 8px;--radius-pill: 100px;--trans-fast: .15s ease;--trans-smooth: .3s cubic-bezier(.2, 0, 0, 1);--header-height: 80px;--container-max: 1200px}[data-theme=dark]{--clr-bg: #0A0A0A;--clr-surface: #121212;--clr-text: #EEEEEE;--clr-text-muted: #999999;--clr-accent: #f20c3c;--clr-border: #1F1F1F;--clr-hover: #1A1A1A;--clr-active-bg: #EEEEEE;--clr-active-text: #0A0A0A}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:9999}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height);height:100%}body{font-family:var(--font-main);background-color:var(--clr-bg);color:var(--clr-text);line-height:1.4;-webkit-font-smoothing:antialiased;min-height:100dvh;display:flex;flex-direction:column;transition:background-color var(--trans-smooth),color var(--trans-smooth)}a{text-decoration:none;color:inherit;transition:var(--trans-fast)}button{cursor:pointer;border:none;background:none;font-family:inherit;color:inherit}[data-lang-key]{opacity:0;transition:opacity .2s ease}body.translations-ready [data-lang-key]{opacity:1}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--sp-md)}.section{padding-block:var(--sp-xl);flex:1}.header{height:var(--header-height);position:sticky;top:0;z-index:1000;background:var(--clr-bg);border-bottom:1px solid var(--clr-border);display:flex;align-items:center}.nav{display:flex;justify-content:space-between;align-items:center}.nav-left{display:flex;align-items:center;gap:var(--sp-md)}.logo{font-weight:900;font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;padding:4px 10px;background:var(--clr-text);color:var(--clr-bg);border-radius:var(--radius-sm);display:inline-block}.logo:hover{background:var(--clr-accent);color:var(--clr-white)}.appbar-links{display:flex;gap:var(--sp-sm)}.nav-link{font-size:var(--fs-small);font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:6px 12px;border-radius:var(--radius-sm)}.nav-link:hover,.nav-link.active{color:var(--clr-accent);background:var(--clr-surface)}.nav-right{display:flex;align-items:center;gap:var(--sp-sm)}.ui-controls{display:flex;gap:var(--sp-xs);background:var(--clr-surface);padding:4px;border-radius:var(--radius-pill);border:1px solid var(--clr-border)}.control-btn{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:var(--clr-text-muted);font-size:1.1rem}.control-btn:hover{color:var(--clr-text);background:var(--clr-hover)}.lang-btn{padding:4px 10px;font-size:var(--fs-tiny);font-weight:900;color:var(--clr-text-muted);border-radius:var(--radius-pill)}.lang-btn.active{background:var(--clr-text);color:var(--clr-bg)}.hero{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:calc(100dvh - var(--header-height) * 2)}.hero.centered{align-items:center;text-align:center}.hero.centered .hero__meta{justify-content:center}.hero.centered .social-links{justify-content:center;margin-inline:auto}.hero__title{font-size:var(--fs-h1);font-weight:900;line-height:1;letter-spacing:-.05em;text-transform:uppercase;margin-bottom:var(--sp-md)}.hero__title .accent{color:var(--clr-accent)}.hero__meta{display:flex;gap:var(--sp-md);margin-bottom:var(--sp-lg);flex-wrap:wrap}.meta-item{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--clr-text-muted)}.social-links{display:flex;flex-wrap:wrap;gap:8px}.social-links a{width:44px;height:44px;display:grid;place-items:center;font-size:1.3rem;border:1px solid var(--clr-border);background:var(--clr-surface);border-radius:var(--radius-md);transition:var(--trans-smooth)}.social-links a:hover{background:var(--clr-accent);color:var(--clr-white);border-color:var(--clr-accent);transform:translateY(-4px);box-shadow:0 10px 20px #f20c3c33}.view-header{margin-bottom:var(--sp-lg);border-left:4px solid var(--clr-accent);padding-left:var(--sp-sm)}.view-header h2{font-size:var(--fs-h2);text-transform:uppercase;font-weight:900;letter-spacing:-.02em;margin-bottom:.5rem}.chips{display:inline-flex;padding:4px;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-md);gap:4px;margin-top:1rem}.chip{background:transparent;border:none;padding:10px 20px;border-radius:calc(var(--radius-md) - 2px);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:10px;color:var(--clr-text-muted)}.chip:hover{color:var(--clr-text);background:#ffffff0d}.chip.active{background:var(--clr-bg);color:var(--clr-accent);box-shadow:0 4px 12px #0000001a;border:1px solid var(--clr-border)}.chip .iconify{font-size:1.2rem}@media(max-width:600px){.chips{display:flex;max-width:calc(100vw - var(--sp-md) * 2);overflow-x:auto;padding:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px}.chips::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;padding:8px 16px;font-size:.75rem;white-space:nowrap;gap:6px}.chip .iconify{font-size:1.1rem}}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,480px),1fr));gap:var(--sp-sm)}.project-card{background:var(--clr-surface);border:1px solid var(--clr-border);padding:1.25rem;display:grid;grid-template-columns:48px 1fr;align-items:start;gap:1.25rem;border-radius:var(--radius-md);transition:var(--trans-smooth);position:relative}.project-card:hover{border-color:var(--clr-accent);transform:translateY(-4px) scale(1.01);box-shadow:0 20px 40px #0000001a;background:var(--clr-bg)}.project-card__info{display:flex;flex-direction:column;height:100%}.project-card__icon{font-size:1.8rem;margin-top:2px;display:flex;justify-content:center}.project-card h3{font-size:1rem;text-transform:uppercase;font-weight:900;margin-bottom:.25rem;padding-right:120px}.project-card p{color:var(--clr-text-muted);font-size:.85rem;margin-bottom:.75rem;line-height:1.4}.project-tags{position:absolute;top:1.25rem;right:1.25rem;display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.tag{font-size:var(--fs-tiny);font-weight:800;text-transform:uppercase;padding:2px 8px;background:var(--clr-bg);border:1px solid var(--clr-border);border-radius:var(--radius-sm)}.project-links{display:flex;gap:16px;margin-top:auto}.project-link{font-weight:900;font-size:.8rem;text-transform:uppercase;display:flex;align-items:center;gap:6px;transition:var(--trans-fast)}.project-link:hover{color:var(--clr-accent);gap:10px}.card{background:var(--clr-surface);border:1px solid var(--clr-border);padding:var(--sp-md);margin-bottom:var(--sp-md);border-radius:var(--radius-md)}.card h2{text-transform:uppercase;font-weight:900;margin-bottom:var(--sp-sm);color:var(--clr-accent)}input{width:100%;padding:12px;border:1px solid var(--clr-border);background:var(--clr-bg);color:var(--clr-text);font-family:inherit;font-weight:700;border-radius:var(--radius-sm)}input:focus{outline:none;border-color:var(--clr-accent);box-shadow:0 0 0 4px #f20c3c1a}.btn-primary{display:inline-block;background:var(--clr-text);color:var(--clr-bg);padding:14px 28px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;border-radius:var(--radius-sm);transition:var(--trans-fast)}.btn-primary:hover{background:var(--clr-accent);color:var(--clr-white);transform:translateY(-2px)}.badge{font-size:var(--fs-tiny);font-weight:800;text-transform:uppercase;color:var(--clr-text-muted)}@media(max-width:768px){.container{padding-inline:var(--sp-sm)}.section{padding-block:var(--sp-lg)}.header{height:60px}.logo{font-size:.7rem;padding:3px 6px;flex-shrink:0}.nav{gap:8px}.nav-left{gap:8px;min-width:0;overflow:hidden}.appbar-links{display:flex;gap:2px;flex-shrink:1;min-width:0}.nav-link{font-size:.65rem;padding:4px 6px;white-space:nowrap}.nav-right{flex-shrink:0}.ui-controls{gap:2px;padding:2px}.lang-btn{width:26px;height:26px;font-size:.6rem;display:grid;place-items:center;padding:0}.control-btn{width:26px;height:26px;font-size:.9rem}.hero{min-height:calc(100dvh - 60px - var(--sp-lg))}.hero__title{font-size:clamp(2rem,10vw,3.5rem);margin-bottom:var(--sp-sm)}.hero__meta{gap:var(--sp-sm);margin-bottom:var(--sp-md);flex-direction:column;align-items:center}.meta-item{font-size:.85rem}.social-links{gap:6px;justify-content:center}.social-links a{width:38px;height:38px;font-size:1.1rem}.view-header{margin-bottom:var(--sp-md)}.view-header h2{font-size:clamp(1.4rem,5vw,2rem)}.chips{position:relative}.projects-filter{mask-image:linear-gradient(to right,black 85%,transparent 100%);-webkit-mask-image:linear-gradient(to right,black 85%,transparent 100%)}.projects-grid{grid-template-columns:1fr;gap:var(--sp-xs)}.project-card{grid-template-columns:1fr;gap:.75rem;padding:1rem}.project-card:hover{transform:none;box-shadow:none}.project-card__icon{justify-content:flex-start;font-size:1.5rem}.project-card h3{padding-right:0;font-size:.9rem}.project-card p{font-size:.8rem}.project-tags{position:static;justify-content:flex-start;margin-bottom:.5rem}.tag{font-size:.65rem;padding:2px 6px}}@media(max-width:480px){.container{padding-inline:12px}.header{height:52px}.logo{font-size:.6rem;padding:2px 5px}.nav-link{font-size:.6rem;padding:3px 5px;letter-spacing:0}.hero__title{font-size:clamp(1.8rem,9vw,2.5rem);letter-spacing:-.03em}.hero__meta{gap:6px}.meta-item{font-size:.78rem}.social-links a{width:36px;height:36px;font-size:1rem;border-radius:var(--radius-sm)}.section{padding-block:var(--sp-md)}.view-header{margin-bottom:var(--sp-sm);padding-left:var(--sp-xs);border-left-width:3px}.view-header h2{font-size:1.3rem}.project-card{padding:.75rem;gap:.5rem}.project-link{font-size:.7rem}}.picker-popover{position:absolute;top:calc(100% + 12px);left:0;background:var(--clr-surface);border:1px solid var(--clr-border);padding:12px;border-radius:var(--radius-md);box-shadow:0 20px 40px #0003;z-index:1000;display:none;flex-direction:column;gap:12px;width:200px;user-select:none}.picker-popover.active{display:flex}.picker-area{width:100%;height:120px;position:relative;background:red;border-radius:var(--radius-sm);cursor:crosshair}.picker-area:before{content:"";position:absolute;inset:0;background:linear-gradient(to right,#fff,transparent);border-radius:var(--radius-sm)}.picker-area:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#000,transparent);border-radius:var(--radius-sm)}.picker-cursor{position:absolute;width:12px;height:12px;border:2px solid white;border-radius:50%;box-shadow:0 0 0 1px #000;transform:translate(-50%,-50%);pointer-events:none;z-index:2}.picker-slider-wrap{height:12px;position:relative}.picker-hue-slider{width:100%;height:100%;border-radius:6px;background:linear-gradient(to right,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red);cursor:pointer}.picker-hue-cursor{position:absolute;top:50%;width:14px;height:14px;background:#fff;border:2px solid var(--clr-text);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}#toastContainer{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column-reverse;gap:10px;pointer-events:none}.ee-toast{display:flex;align-items:center;gap:10px;padding:14px 20px;border-radius:12px;font-size:.85rem;font-weight:600;font-family:inherit;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 8px 32px #00000040,0 0 0 1px #ffffff14 inset;opacity:0;transform:translate(100px);transition:none;min-width:240px;max-width:400px;pointer-events:auto}.ee-toast.show{animation:toastSlideIn .4s cubic-bezier(.22,1,.36,1) forwards}.ee-toast.hide{animation:toastSlideOut .35s cubic-bezier(.55,0,1,.45) forwards}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100px) scale(.9)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(60px) scale(.95)}}.ee-toast-success{background:#23a55ae6;color:#fff}.ee-toast-error{background:#ed4245e6;color:#fff}.ee-toast-warning{background:#faa81ae6;color:#1a1a1a}.ee-toast-info{background:#5865f2e6;color:#fff}.ee-toast svg{flex-shrink:0}
