﻿:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#090b10;--panel:#11141b;--text:#edf2ff;--muted:#a6b0c3;--line:#202736;--accent:#6ea8ff;--doc-bg:#0d1b2f;--doc-panel:#122239b8;--doc-text:#d6e8ff;--doc-muted:#9db6d6;--doc-line:#6ea8ff47;--doc-title:#9ec9ff;--danger:#dc2828f2;--danger-soft:#c800002e;--danger-line:#c8000066;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--radius-sm:2px;--radius-md:4px;--radius-lg:8px;--radius-xl:14px;--radius-pill:999px;--z-base:0;--z-sticky:10;--z-overlay:40;--z-nav:50;--z-banner:60;--z-toast:100;--z-modal:9999;--z-popup:10000;--z-confidential:99999}*{box-sizing:border-box}html{background-color:#090b10;background-color:var(--bg);min-height:100%}html,body{background:#090b10;background:var(--bg);color:var(--text);margin:0;padding:0;font-family:Inter,Pretendard,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}body{min-height:100%}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.skip-to-main{z-index:var(--z-modal);background:var(--accent);color:#06080d;letter-spacing:.04em;border-radius:0 0 var(--radius-md) 0;padding:.75rem 1.25rem;font-size:.9rem;font-weight:700;transition:transform .16s;position:fixed;top:0;left:0;transform:translateY(-200%)}.skip-to-main:focus,.skip-to-main:focus-visible{outline-offset:2px;outline:2px solid #06080d;transform:translateY(0)}main{min-height:100vh}.container{width:min(1100px,100% - 2rem);margin:0 auto}.section{padding:5rem 0}.section h2{margin-top:0;margin-bottom:1rem}main.container.section{color:var(--doc-text)}main.container.section>h1:first-of-type{letter-spacing:-.035em;color:var(--doc-title);margin:0 0 .75rem;font-size:clamp(2rem,4.5vw,2.85rem);font-weight:700;line-height:1.12}main.container.section .muted{color:var(--doc-muted)}main.container.section .card{background:var(--doc-panel);border-color:var(--doc-line)}main.container.section .badge{color:var(--doc-muted);border-color:var(--doc-line)}main.container.section .project-metric{background:#6ea8ff17;border-color:#6ea8ff4d}main.container.section .project-metric__value{color:var(--doc-title)}main.container.section .project-metric__label{color:var(--doc-muted)}main.container.section .project-card h2,main.container.section .project-card h3{color:var(--doc-title)}main.container.section .project-detail__section h2{color:#d6e8ffe6;border-bottom-color:var(--doc-line)}.card-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:1rem}.muted{color:var(--muted)}.badge-list{flex-wrap:wrap;gap:.5rem;display:flex}.badge{border:1px solid var(--line);color:var(--muted);border-radius:999px;align-items:center;padding:.25rem .65rem;font-size:.85rem;display:inline-flex}.btn{color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:0;justify-content:flex-start;align-items:center;gap:.5rem;padding:0;font-weight:600;line-height:1.2;text-decoration:none;transition:color .18s,text-shadow .18s,transform .18s;display:inline-flex}.btn:hover{color:#b4dcff;text-shadow:0 0 10px #6ea8ff5c,0 0 24px #6ea8ff2e;transform:translateY(-1px)}.hero-shell{isolation:isolate;background:#05070c;min-height:100svh;position:relative;overflow:hidden}.hero-shell__shade{pointer-events:none;z-index:3;background:radial-gradient(#0000 22%,#00000047 58%,#0000009e 88%,#000000c7 100%),radial-gradient(circle at 78% 22%,#6ea8ff1a,#0000 32%),linear-gradient(#04070c6b 0%,#04070c1f 18%,#04070c0f 55%,#04070c8c 100%);position:absolute;inset:0}.hero-canvas{z-index:1;overflow:hidden}.hero-glyphs{z-index:2;pointer-events:none;mix-blend-mode:screen;transform-origin:50%;transition:transform .52s cubic-bezier(.76,0,.24,1),opacity .36s,filter .36s;position:absolute;inset:0;overflow:hidden}.hero-glyphs__item{pointer-events:auto;color:#9ec0ff99;letter-spacing:.08em;text-shadow:0 0 10px #6ea8ff2e;animation-name:heroGlyphRise;animation-duration:var(--glyph-duration,12s);animation-delay:var(--glyph-delay,0s);cursor:pointer;-webkit-user-select:none;user-select:none;font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;transition:color .14s,text-shadow .14s,filter .14s;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;bottom:-12%}.hero-glyphs__item:hover{color:#d0e6fff5;text-shadow:0 0 10px #6ea8ff57,0 0 22px #ff5ac81f}.hero-glyphs__item.is-rippled{animation-name:heroGlyphRise,heroGlyphRipple;animation-duration:var(--glyph-duration,12s), calc(.28s + var(--pulse-strength,.5) * .32s);animation-delay:var(--glyph-delay,0s), var(--pulse-delay,0s);animation-timing-function:linear,cubic-bezier(.16,1,.3,1);animation-iteration-count:infinite,1}.hero-glyphs__item.is-rippled:before,.hero-glyphs__item.is-rippled:after{content:attr(data-glyph);pointer-events:none;mix-blend-mode:screen;opacity:0;position:absolute;inset:0}.hero-glyphs__item.is-rippled:before{color:#5af0ffd9;animation:heroGlyphPulseGhost calc(.22s + var(--pulse-strength,.5) * .22s) steps(2) var(--pulse-delay,0s) 1}.hero-glyphs__item.is-rippled:after{color:#ff5ac8c7;animation:heroGlyphPulseGhost calc(.26s + var(--pulse-strength,.5) * .24s) steps(2) calc(var(--pulse-delay,0s) + 28ms) 1 reverse}.hero-glyphs.is-collapsing{opacity:0;filter:blur(4px)hue-rotate(30deg)saturate(1.6);transform:scale(.02)}.hero-nav{z-index:var(--z-nav);pointer-events:none;padding:1.1rem 1.5rem;position:fixed;top:0;left:0;right:0}.hero-nav>*{pointer-events:auto}.hero-nav__inner{width:min(1240px,100% - 1rem);box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border-radius:999px;justify-content:space-between;align-items:center;gap:1.5rem;margin:0 auto;padding:.8rem 1rem;display:flex}.hero-nav__brand{letter-spacing:.18em;font-size:.8rem;font-weight:700;transition:color .18s}.hero-nav__menu{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(.9rem,2vw,2rem);display:flex}.hero-nav__link{letter-spacing:.12em;color:#edf2ffeb;font-size:.78rem;font-weight:700;transition:color .18s}.hero-nav__link:hover,.hero-nav__brand:hover{color:var(--accent)}.hero-nav__admin{opacity:.45;margin-left:auto;font-size:.68rem;transition:opacity .18s}.hero-nav__admin:hover{opacity:1}:is(body:has(.project-detail) .hero-nav__admin,body:has(.freeform-page) .hero-nav__admin){display:none}.hero-nav__interactive{transition:color .18s,text-shadow .18s,opacity .18s;position:relative}.hero-nav__interactive:hover{color:var(--accent);text-shadow:0 0 10px #6ea8ff5c,0 0 24px #6ea8ff33}.hero-nav__resume{display:inline-flex;position:relative}.hero-nav__resume-trigger{cursor:pointer;font:inherit;letter-spacing:.12em;background:0 0;border:none;align-items:center;gap:.36rem;padding:0;display:inline-flex}.hero-nav__resume-caret{opacity:.7;border-top:4px solid;border-left:3.5px solid #0000;border-right:3.5px solid #0000;width:0;height:0;transition:transform .22s,opacity .18s}.hero-nav__resume-trigger.is-open .hero-nav__resume-caret{opacity:1;transform:rotate(180deg)}.hero-nav__resume-trigger.is-open{color:var(--accent)}.hero-nav__resume-menu{-webkit-backdrop-filter:blur(10px);opacity:0;pointer-events:none;z-index:20;background:#0f121cf2;border:1px solid #ffffff14;border-radius:.7rem;flex-direction:column;min-width:132px;padding:.35rem;transition:opacity .18s,transform .22s cubic-bezier(.2,.7,.2,1);display:flex;position:absolute;top:calc(100% + .55rem);left:50%;transform:translate(-50%)translateY(-8px);box-shadow:0 12px 32px #0000008c}.hero-nav__resume-menu.is-open{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.hero-nav__resume-item{letter-spacing:.06em;color:#edf2ffe0;text-align:center;border-radius:.45rem;padding:.6rem .95rem;font-size:.74rem;font-weight:600;text-decoration:none;transition:background .16s,color .16s}.hero-nav__resume-item:hover,.hero-nav__resume-item:focus-visible{color:var(--accent);background:#ffffff12;outline:none}.hero-glass-panel{box-shadow:none;-webkit-backdrop-filter:blur(12px)saturate(150%)brightness(1.04);background:linear-gradient(#ffffff08,#ffffff03);border:none}.hero-overlay{z-index:10;pointer-events:none;align-items:flex-end;padding:0 1.5rem max(9vh,3.5rem);display:flex;position:absolute;inset:0}.hero-overlay__content{pointer-events:auto;width:min(1240px,100%);max-width:1180px;margin:0 auto}.hero-overlay__eyebrow{letter-spacing:.28em;text-transform:uppercase;color:#edf2ffb8;margin:0 0 .9rem;font-size:.9rem}.hero-overlay__title{letter-spacing:-.06em;text-transform:uppercase;mix-blend-mode:normal;color:#f2f9fffa;flex-direction:column;gap:clamp(.1rem,.4vw,.4rem);margin:0;font-family:Inter,Pretendard,system-ui,sans-serif;font-size:clamp(4.4rem,15vw,13rem);font-weight:800;line-height:.86;display:flex}.hero-overlay__tagline{color:#edf2ffc7;max-width:560px;margin:1.4rem 0 0;font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.55}.hero-overlay__actions{flex-wrap:wrap;gap:.75rem;margin-top:1.6rem;display:flex}.hero-glass-button{min-width:0;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:none;padding-inline:0;transition:transform .18s,box-shadow .18s,background .18s}.hero-glass-button:hover{box-shadow:none;background:0 0;transform:translateY(-1px)}.hero-assemble{cursor:default;isolation:isolate;text-shadow:0 0 14px #ffffff14,0 0 28px #6ea8ff1a;transition:text-shadow .24s;position:relative}.hero-assemble__line{display:block;position:relative}.hero-assemble__line:before,.hero-assemble__line:after{content:attr(data-text);pointer-events:none;mix-blend-mode:screen;background:0 0;transition:opacity .18s,transform .18s,color .18s;position:absolute;inset:0}.hero-assemble__line.is-settled:before,.hero-assemble__line.is-swapping:before{color:#5af0ffe6;opacity:.9;animation:.72s steps(6,end) infinite heroGlitchSliceTop}.hero-assemble__line.is-settled:after,.hero-assemble__line.is-swapping:after{color:#ff5ac8e6;opacity:.9;animation:.82s steps(6,end) infinite heroGlitchSliceBottom}.hero-assemble.is-hovered,.hero-assemble.is-swap-glitch{text-shadow:0 0 18px #a0dcff8c,0 0 42px #6ea8ff59,0 0 96px #6ea8ff33;animation:.18s steps(2,end) infinite heroGlitch}.hero-assemble__line.is-settled{animation:.42s cubic-bezier(.2,.8,.2,1) heroLineSettle}.hero-assemble__line.is-breaking,.hero-assemble__line.is-swapping{animation:.16s steps(2,end) infinite heroBreakShake}.hero-assemble__chunk{display:inline-block}.hero-assemble__text{display:block;position:relative}.hero-assemble__text:after{content:attr(data-text);pointer-events:none;color:#0000;opacity:0;mix-blend-mode:screen;background-image:repeating-linear-gradient(0deg,#0000 0 3px,#8ce1ffd9 3px 4px),repeating-linear-gradient(90deg,#0000 0 3px,#8ce1ffd9 3px 4px);background-size:100% 100%,100% 100%;-webkit-background-clip:text;background-clip:text;animation:8s ease-in-out 2.2s infinite heroTitleScan;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 0%,#000 50%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 50%,#0000 100%);-webkit-mask-position:0 -30%;mask-position:0 -30%;-webkit-mask-size:100% 18%;mask-size:100% 18%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}@keyframes heroTitleScan{0%,6%{opacity:0;-webkit-mask-position:0 -30%;mask-position:0 -30%}9%{opacity:.95}46%{opacity:.95;-webkit-mask-position:0 130%;mask-position:0 130%}50%,to{opacity:0}}.hero-fade-up{opacity:0;animation:.72s cubic-bezier(.2,.8,.2,1) forwards heroFadeUp;transform:translateY(24px)}@keyframes heroGlyphRise{0%{opacity:0;transform:translate(0,0)}10%{opacity:1}to{opacity:0;transform:translateY(-118vh)}}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes heroLineSettle{0%{letter-spacing:.05em;filter:blur(6px)brightness(1.6)}60%{letter-spacing:-.05em;filter:blur(.6px)brightness(1.2)}to{letter-spacing:-.06em;filter:blur()brightness()}}@keyframes heroGlitch{0%,to{transform:translate(0,0)}25%{transform:translate(-2px,1px)}50%{transform:translate(2px,-1px)}75%{transform:translate(-1px)}}@keyframes heroGlyphRipple{0%{filter:brightness()saturate();text-shadow:0 0 10px #6ea8ff2e;transform:translate(0,0)scale(1)}18%{transform:translate3d(calc(var(--pulse-shift-x,0px) * -.35), calc(var(--pulse-shift-y,0px) * -.35), 0) scale(calc(1 + var(--pulse-strength,.5) * .12));filter:brightness(calc(1.15 + var(--pulse-strength,.5) * .25)) saturate(calc(1.2 + var(--pulse-strength,.5) * .5));text-shadow:0 0 10px #6ea8ff7a,0 0 24px #ff5ac82e}52%{transform:translate3d(var(--pulse-shift-x,0px), var(--pulse-shift-y,0px), 0) scale(calc(1 + var(--pulse-strength,.5) * .22));filter:brightness(calc(1.2 + var(--pulse-strength,.5) * .35)) saturate(calc(1.3 + var(--pulse-strength,.5) * .55));text-shadow:0 0 12px #6ea8ff9e,0 0 28px #ff5ac842}to{filter:brightness()saturate();text-shadow:0 0 10px #6ea8ff2e;transform:translate(0,0)scale(1)}}@keyframes heroGlyphPulseGhost{0%,to{opacity:0;transform:translate(0,0)}30%{opacity:.88;transform:translate3d(calc(var(--pulse-shift-x,0px) * -.45), calc(var(--pulse-shift-y,0px) * -.45), 0)}60%{opacity:.75;transform:translate3d(calc(var(--pulse-shift-x,0px) * .45), calc(var(--pulse-shift-y,0px) * .45), 0)}}@keyframes heroBreakShake{0%,to{transform:translate(0,0)}20%{transform:translate(-3px,1px)}40%{transform:translate(2px,-2px)}60%{transform:translate(-1px,2px)}80%{transform:translate(3px,-1px)}}@keyframes heroGlitchSliceTop{0%{clip-path:inset(0 0 75%);transform:translate(-4px,-2px)}20%{clip-path:inset(20% 0 55%);transform:translate(6px,1px)}40%{clip-path:inset(45% 0 30%);transform:translate(-5px,-1px)}60%{clip-path:inset(10% 0 70%);transform:translate(4px,2px)}80%{clip-path:inset(55% 0 20%);transform:translate(-3px,-2px)}to{clip-path:inset(30% 0 50%);transform:translate(5px,1px)}}@keyframes heroGlitchSliceBottom{0%{clip-path:inset(70% 0 5%);transform:translate(5px,2px)}25%{clip-path:inset(40% 0 25%);transform:translate(-6px,-1px)}50%{clip-path:inset(15% 0 65%);transform:translate(4px,2px)}75%{clip-path:inset(60% 0 10%);transform:translate(-4px,-2px)}to{clip-path:inset(35% 0 45%);transform:translate(3px,1px)}}.hero-glitch-hover{isolation:isolate;text-shadow:0 0 6px #6ea8ff1f,0 0 14px #6ea8ff0f;transition:color .18s,text-shadow .18s,opacity .18s,transform .18s;position:relative}.hero-glitch-hover__label{z-index:1;display:inline-block;position:relative}.hero-glitch-hover:before,.hero-glitch-hover:after{content:attr(data-text);pointer-events:none;opacity:.18;mix-blend-mode:screen;white-space:nowrap;justify-content:flex-start;align-items:center;transition:opacity .14s,transform .14s,color .14s;display:flex;position:absolute;inset:0}.hero-glitch-hover:before{color:#5af0ff61;animation:3.2s steps(6,end) infinite heroGlitchSliceTop}.hero-glitch-hover:after{color:#ff5ac852;animation:3.6s steps(6,end) infinite reverse heroGlitchSliceBottom}.hero-glitch-hover .hero-glitch-hover__label{animation:2.6s steps(2,end) infinite heroIdleFlicker}.hero-glitch-hover:hover,.hero-glitch-hover:focus-visible{color:#b4dcff;text-shadow:0 0 10px #6ea8ff66,0 0 24px #6ea8ff38}.hero-glitch-hover:hover:before,.hero-glitch-hover:hover:after,.hero-glitch-hover:focus-visible:before,.hero-glitch-hover:focus-visible:after{opacity:.85}.hero-glitch-hover:hover:before,.hero-glitch-hover:focus-visible:before{color:#5af0ffe6;animation:.6s steps(6,end) infinite heroGlitchSliceTop}.hero-glitch-hover:hover:after,.hero-glitch-hover:focus-visible:after{color:#ff5ac8e6;animation:.7s steps(6,end) infinite heroGlitchSliceBottom}.hero-glitch-hover:hover .hero-glitch-hover__label,.hero-glitch-hover:focus-visible .hero-glitch-hover__label{animation:.16s steps(2,end) infinite heroBreakShake}:is(.hero-nav__inner:has(.hero-glitch-hover:hover) .hero-glitch-hover:not(:hover):not(:focus-visible),.glitch-cluster:has(.hero-glitch-hover:hover) .hero-glitch-hover:not(:hover):not(:focus-visible)){color:#e1ebffeb;text-shadow:0 0 8px #6ea8ff2e,0 0 18px #ff5ac814}.hero-nav__inner:has(.hero-glitch-hover:hover) .hero-glitch-hover:not(:hover):not(:focus-visible):before{opacity:.28;animation-duration:1.5s}.glitch-cluster:has(.hero-glitch-hover:hover) .hero-glitch-hover:not(:hover):not(:focus-visible):before{opacity:.28;animation-duration:1.5s}.hero-nav__inner:has(.hero-glitch-hover:hover) .hero-glitch-hover:not(:hover):not(:focus-visible):after{opacity:.24;animation-duration:1.7s}.glitch-cluster:has(.hero-glitch-hover:hover) .hero-glitch-hover:not(:hover):not(:focus-visible):after{opacity:.24;animation-duration:1.7s}:is(.hero-nav__inner:has(.hero-glitch-hover:hover) .hero-glitch-hover:not(:hover):not(:focus-visible) .hero-glitch-hover__label,.glitch-cluster:has(.hero-glitch-hover:hover) .hero-glitch-hover:not(:hover):not(:focus-visible) .hero-glitch-hover__label){animation:.52s steps(2,end) infinite heroBreakShake}@keyframes heroIdleFlicker{0%,82%,to{transform:translate(0,0)}84%{transform:translate(-1px)}88%{transform:translate(1px)}92%{transform:translate(-1px,1px)}}@media (max-width:720px){.hero-nav__inner{border-radius:28px;flex-direction:column;align-items:flex-start}.hero-nav__menu{justify-content:flex-start;gap:.9rem 1.1rem}.container.section{padding-top:8rem}.hero-overlay{padding-inline:1rem;padding-bottom:3rem}.hero-glass-button{min-width:0}}.hero-overlay__subtagline{letter-spacing:.04em;text-transform:uppercase;color:#a6b0c3ad;margin:.45rem 0 0;font-size:clamp(.85rem,1.1vw,.95rem)}.project-card{flex-direction:column;gap:.25rem;display:flex}.project-metrics{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:.75rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.project-metric{background:#6ea8ff0f;border:1px solid #6ea8ff2e;border-radius:10px;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.5rem .65rem;display:flex}.project-metric__value{color:#9ec9ff;letter-spacing:-.02em;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:1.35rem;font-weight:700;line-height:1.1}.project-metric__label{color:var(--muted);letter-spacing:.02em;font-size:.72rem}.project-metrics--large{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-top:1.5rem}.project-metrics--large .project-metric{padding:.85rem 1rem}.project-metrics--large .project-metric__value{font-size:2rem}.project-metrics--large .project-metric__label{font-size:.8rem}.project-metric{position:relative}.project-metric__remove{z-index:2;color:#ff7878d9;cursor:pointer;opacity:0;background:#141414bf;border:1px dashed #ff787873;border-radius:50%;width:20px;height:20px;padding:0;font-size:11px;line-height:1;transition:opacity .12s,background .12s,color .12s,border-color .12s;position:absolute;top:4px;right:4px}.project-metric:hover .project-metric__remove,.project-metric__remove:focus-visible{opacity:1}.project-metric__remove:hover{color:#fff;background:#dc3c3cd9;border-color:#ff7878d9}.project-metric--add{background:0 0;border:1px dashed #6ea8ff59;justify-content:center;align-items:center}.project-metric--add button{color:#9ec9ffe6;cursor:pointer;background:0 0;border:none;width:100%;padding:.5rem;font-size:.85rem}.project-metric--add:hover{background:#6ea8ff0f;border-color:#6ea8ff99}.project-detail{max-width:820px}.project-detail__summary{margin-top:1rem;font-size:1.1rem;line-height:1.6}.project-detail__section{margin-top:2.5rem;position:relative}.section-remove-btn{z-index:4;color:#ff99a8;letter-spacing:.04em;cursor:pointer;opacity:0;background:#ff6e8214;border:1px dashed #ff6e8259;border-radius:999px;align-items:center;gap:.3rem;padding:.35rem .7rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.68rem;transition:background .12s,border-color .12s,color .12s,opacity .12s;display:inline-flex;position:absolute;top:6px;right:0}.project-detail__section:hover .section-remove-btn,.project-detail__section:focus-within .section-remove-btn{opacity:1}.section-remove-btn:hover{color:#fff;background:#ff6e822e;border-style:solid;border-color:#ff6e8299}@media (hover:none){.section-remove-btn{opacity:1}}.section-insert-gap{justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.section-insert-gap__btn{cursor:pointer;opacity:.25;background:0 0;border:0;align-items:center;gap:.5rem;width:100%;padding:.3rem 0;transition:opacity .12s;display:flex}.section-insert-gap:hover .section-insert-gap__btn,.section-insert-gap:focus-within .section-insert-gap__btn{opacity:1}.section-insert-gap__line{background:#6ea8ff4d;flex:1;height:1px}.section-insert-gap__plus{letter-spacing:.06em;color:#cfe2ff;white-space:nowrap;background:#080e18d9;border:1px dashed #6ea8ff80;border-radius:999px;padding:.25rem .75rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.72rem}.section-insert-gap__btn:hover .section-insert-gap__plus{color:#fff;background:#6ea8ff2e;border-style:solid}.section-insert-gap__menu{background:#6ea8ff0a;border:1px dashed #6ea8ff66;border-radius:10px;flex-wrap:wrap;align-items:center;gap:.4rem;width:100%;margin:.4rem 0;padding:.55rem .8rem;display:flex}@media (hover:none){.section-insert-gap__btn{opacity:1}}.project-detail__sections{flex-direction:column;display:flex}.admin-section-order{gap:6px}.admin-section-order__chip{color:#cfe2ff;letter-spacing:.03em;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#6ea8ff1a;border:1px solid #6ea8ff4d;border-radius:999px;align-items:center;gap:.35rem;padding:.4rem .7rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.72rem;display:inline-flex}.admin-section-order__chip:hover{background:#6ea8ff2e;border-color:#6ea8ff8c}.admin-section-order__chip.is-dragging{cursor:grabbing}.admin-section-order__grip{color:#cfe2ff80;font-size:.8rem}.project-detail__section h2{letter-spacing:.06em;text-transform:uppercase;color:#edf2ffd9;border-bottom:1px solid var(--line);margin:0 0 .75rem;padding-bottom:.4rem;font-size:1.1rem}.project-detail__list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.project-detail__list li{padding-left:1.25rem;line-height:1.55;position:relative}.project-detail__list li:before{content:"▸";color:#6ea8ffb3;position:absolute;left:0}.project-detail__list--results li:before{content:"▸";color:#ff6ec7bf}.skill-groups,.about-section__groups{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-top:1.5rem;display:grid}.skill-group{border:1px solid var(--line);background:#11141b8c;border-radius:14px;padding:1rem 1.1rem}.skill-group__title{letter-spacing:.12em;text-transform:uppercase;color:#9ec9ff;margin:0 0 .6rem;font-size:.78rem}.skill-group__items{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.skill-group__items li{color:#edf2ffe0;font-size:.9rem;line-height:1.45}.about-section__body{gap:.9rem;max-width:720px;margin-top:.5rem;display:grid}.about-section__body p{color:#edf2ffe6;margin:0;font-size:1rem;line-height:1.7}.about-section__identity{gap:.5rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.about-section__identity li{background:#6ea8ff0a;border-left:2px solid #6ea8ff66;align-items:baseline;gap:.85rem;padding:.6rem .8rem;font-size:1.05rem;line-height:1.5;display:flex}.about-section__identity-index{color:#6ea8ffcc;letter-spacing:.06em;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.8rem}.about-tools{margin:2.5rem 0 0}.about-tools__groups{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;display:grid}.about-tools__group{background:#ffffff05;border:1px solid #ffffff0f;border-radius:12px;padding:1.5rem 1.25rem 1.25rem;position:relative}.about-tools__group-title{color:#dce8ffe6;letter-spacing:.02em;margin:0 0 1.1rem;font-size:1.1rem;font-weight:600}.about-tools__grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:1rem .75rem;display:grid}.about-tools__item{text-align:center;color:#dce8ffd9;flex-direction:column;align-items:center;gap:.45rem;font-size:.78rem;line-height:1.3;display:flex;position:relative}.about-tools__icon{object-fit:contain;background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;width:56px;height:56px;padding:6px}.about-tools__icon--placeholder{color:#6ea8ff99;background:#6ea8ff0f;justify-content:center;align-items:center;font-size:1.4rem;font-weight:700;display:flex}.about-tools__name{word-break:keep-all;max-width:100%}.about-tools__item--editing{border-radius:8px;padding:.4rem .2rem;transition:background .12s}.about-tools__item--editing:hover{background:#6ea8ff0f}.about-tools__icon-btn{cursor:pointer;background:0 0;border:0;padding:0;position:relative}.about-tools__icon-btn:disabled{cursor:wait;opacity:.6}.about-tools__icon-overlay{color:#6ea8ffe6;background:#080c14bf;border-radius:12px;justify-content:center;align-items:center;font-size:1.2rem;display:flex;position:absolute;inset:0}.about-tools__remove{opacity:0;transition:opacity .12s;position:absolute;top:-4px;right:-4px}.about-tools__item--editing:hover .about-tools__remove,.about-tools__item--editing:focus-within .about-tools__remove{opacity:1}.about-tools__upload-error{color:#ff8080;word-break:break-word;font-size:.7rem}.about-tools__add-item{color:#6ea8ffcc;cursor:pointer;background:0 0;border:1px dashed #6ea8ff66;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;min-height:90px;font-size:1.2rem;transition:background .12s,border-color .12s;display:flex}.about-tools__add-item:hover{background:#6ea8ff0d;border-color:#6ea8ffb3}.about-tools__add-item-label{font-size:.72rem}.about-tools__remove-group{opacity:0;transition:opacity .12s;position:absolute;top:8px;right:8px}.about-tools__group:hover .about-tools__remove-group,.about-tools__group:focus-within .about-tools__remove-group{opacity:1}.project-media{flex-direction:column;gap:.55rem;margin:1.25rem 0 0;display:flex}.project-media__frame{aspect-ratio:16/9;background:#090c1299;border:1px solid #6ea8ff2e;border-radius:14px;width:100%;position:relative;overflow:hidden;box-shadow:0 20px 60px -30px #000c}.project-media__image,.project-media__video{object-fit:contain;width:100%;height:100%;display:block;position:absolute;inset:0}.project-media__caption{color:#a6b0c3d9;margin:0;padding:0 .25rem;font-size:.85rem;line-height:1.5}.project-detail__hero{margin:1.75rem 0 2rem}.project-detail__hero .project-media__frame{aspect-ratio:16/7;border-color:#6ea8ff38;border-radius:18px}.project-hero-gallery{gap:1rem;display:grid}.project-hero-gallery .project-media__frame{aspect-ratio:16/7}.project-hero-gallery-edit__item{margin-bottom:1rem;padding-left:1.6rem;position:relative}.project-hero-gallery-edit__item.is-dragging{cursor:grabbing}.project-hero-gallery-edit__handle{z-index:4;position:absolute;top:6px;left:0}.project-hero-gallery-edit__empty{color:var(--muted);text-align:center;border:1px dashed #6ea8ff4d;border-radius:10px;margin-bottom:.75rem;padding:1.25rem;font-size:.82rem}.project-hero-gallery-edit__bar{justify-content:flex-end;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.project-hero-gallery-edit__bar .muted{margin-right:auto;font-size:.72rem}.sortable-drag-handle{color:#cfe2ff8c;cursor:grab;touch-action:none;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:22px;height:26px;padding:0;font-size:.85rem;line-height:1;transition:background .12s,color .12s;display:inline-flex}.sortable-drag-handle:hover{color:#cfe2ff;background:#6ea8ff24}.sortable-drag-handle:active{cursor:grabbing}.project-media--w-small{max-width:360px}.project-media--w-medium{max-width:560px}.project-media--w-large{max-width:820px}.project-media--align-left{margin-left:0;margin-right:auto}.project-media--align-center{margin-left:auto;margin-right:auto}.project-media--align-right{margin-left:auto;margin-right:0}.project-media-pair{grid-template-columns:1fr 1fr;gap:1rem;width:100%;display:grid}.project-media-pair>.project-media{margin:0}@media (max-width:520px){.project-media-pair{grid-template-columns:1fr}}.media-layout-bar{background:#080e1880;border:1px solid #6ea8ff26;border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px;margin-top:8px;padding:6px 8px;display:flex}.media-layout-bar__label{color:var(--muted);letter-spacing:.05em;margin-right:2px;font-size:11px}.media-layout-bar__sep{background:#ffffff1f;width:1px;height:16px;margin:0 4px}.media-layout-bar__btn{color:#cfe2ff;cursor:pointer;background:0 0;border:1px solid #6ea8ff40;border-radius:6px;padding:3px 9px;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:11px;transition:background .12s,border-color .12s}.media-layout-bar__btn:hover{background:#6ea8ff1f}.media-layout-bar__btn--active{color:#fff;background:#6ea8ff40;border-color:#6ea8ff99}.project-process__step,.project-compare__pair,.project-approach__card,.project-metric{position:relative}.project-process__handle,.project-compare__handle{z-index:4;position:absolute;top:.4rem;left:-1.6rem}.project-approach__handle,.project-metric__handle{z-index:4;position:absolute;top:6px;left:6px}.project-process__handle,.project-compare__handle,.project-approach__handle,.project-metric__handle{opacity:0;pointer-events:none;transition:opacity .12s}.project-process__step:hover .project-process__handle,.project-process__step:focus-within .project-process__handle,.project-compare__pair:hover .project-compare__handle,.project-compare__pair:focus-within .project-compare__handle,.project-approach__card:hover .project-approach__handle,.project-approach__card:focus-within .project-approach__handle,.project-metric:hover .project-metric__handle,.project-metric:focus-within .project-metric__handle{opacity:1;pointer-events:auto}.project-process__step.is-dragging,.project-compare__pair.is-dragging,.project-approach__card.is-dragging,.project-metric.is-dragging{cursor:grabbing}@media (hover:none){.project-process__handle,.project-compare__handle,.project-approach__handle,.project-metric__handle{opacity:1;pointer-events:auto}}.project-process,.project-compare{padding-left:.2rem}.project-process{counter-reset:project-step;gap:1.75rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.project-process__step{background:#11141b59;border:1px solid #6ea8ff24;border-radius:16px;gap:.75rem;padding:1.1rem 1.25rem 1.25rem;display:grid}.project-process__head{align-items:baseline;gap:.85rem;display:flex}.project-process__index{letter-spacing:.08em;color:#6ea8ffd9;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.85rem}.project-process__title{letter-spacing:.01em;margin:0;font-size:1.15rem}.project-process__body{color:#edf2ffe0;margin:0;font-size:.98rem;line-height:1.7}.project-process__media{margin-top:.5rem}.project-process__media .project-media__frame{aspect-ratio:16/9;border-radius:12px}.project-compare{gap:2rem;margin-top:1rem;display:grid}.project-compare__pair{gap:.9rem;display:grid}.project-compare__head{gap:.25rem;display:grid}.project-compare__label{letter-spacing:.03em;margin:0;font-size:1rem}.project-compare__note{margin:0;font-size:.85rem}.project-compare__grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (max-width:720px){.project-compare__grid{grid-template-columns:1fr}}.project-compare__side{gap:.5rem;display:grid;position:relative}.project-compare__side .project-media{margin:0}.project-compare__tag{z-index:2;letter-spacing:.16em;-webkit-backdrop-filter:blur(6px);pointer-events:none;background:#0a0e168c;border:1px solid #ffffff14;border-radius:999px;padding:.3rem .55rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.7rem;position:absolute;top:10px;left:10px}.project-compare__tag--before{color:#ff99bd;border-color:#ff7eb659}.project-compare__tag--after{color:#8af2b8;border-color:#58e7a059}.project-gallery{flex-direction:column;gap:1rem;margin-top:1rem;display:flex}.project-gallery .project-media{margin:0}.project-meta-bar{-webkit-backdrop-filter:blur(6px);background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;flex-wrap:wrap;gap:.6rem 1.2rem;margin:.6rem 0 1.2rem;padding:.7rem 1rem;font-size:.82rem;display:flex}.project-meta-bar__item{align-items:baseline;gap:.4rem;margin:0;display:flex}.project-meta-bar__label{letter-spacing:.12em;text-transform:uppercase;color:#fff9;margin:0;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.66rem}.project-meta-bar__value{color:#ffffffe0;margin:0}.project-constraints{grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:.5rem 0 0;font-size:.88rem;display:grid}.project-constraints__row{display:contents}.project-constraints__label{letter-spacing:.1em;text-transform:uppercase;color:#ffffff80;margin:0;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.7rem}.project-constraints__value{color:#ffffffd9;margin:0}.project-evidence{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.8rem;margin-top:.8rem;display:grid}.project-approach{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.9rem;margin:.6rem 0;display:grid}.project-approach__card{background:#ffffff06;border:1px solid #ffffff12;border-radius:12px;padding:.9rem 1rem}.project-approach__card--chosen{background:#58e7a00f;border-color:#58e7a073}.project-approach__head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.project-approach__name{letter-spacing:.02em;margin:0;font-size:.95rem}.project-approach__cols{grid-template-columns:1fr 1fr;gap:.6rem;font-size:.85rem;display:grid}@media (max-width:520px){.project-approach__cols,.freeform-ba__grid{grid-template-columns:1fr}}.project-approach__reason{background:#58e7a00a;border-left:2px solid #58e7a08c;margin-top:.4rem;padding:.7rem 1rem;font-size:.9rem}.project-code{margin:.8rem 0 0}.project-code__pre{color:#dce8ffeb;background:#080c14d9;border:1px solid #6ea8ff2e;border-radius:10px;margin:0;padding:.9rem 1rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.82rem;line-height:1.55;overflow-x:auto}.project-code__caption{margin:.4rem 0 0;font-size:.78rem}.project-code-group{border:1px solid #6ea8ff26;border-radius:10px;flex-direction:column;gap:0;margin:.8rem 0 0;display:flex;overflow:hidden}.project-code-group__item{border-bottom:1px solid #6ea8ff1a;position:relative}.project-code-group__item:last-of-type{border-bottom:none}.project-code-group__item .project-code{border:none;border-radius:0;margin:0}.project-code-group__remove{z-index:1;position:absolute;top:6px;right:6px}.project-validation__context{margin:.2rem 0 .8rem;font-size:.82rem}.project-validation__table-wrap{border:1px solid #ffffff12;border-radius:10px;overflow-x:auto}.project-validation__table{border-collapse:collapse;width:100%;font-size:.85rem}.project-validation__table th,.project-validation__table td{text-align:left;border-bottom:1px solid #ffffff0f;padding:.55rem .8rem}.project-validation__table thead th{letter-spacing:.1em;text-transform:uppercase;color:#fff9;background:#ffffff0a;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.72rem;font-weight:500}.project-validation__matrix .project-validation__sub,.project-validation__sub{color:#fff9;font-size:.65rem}.project-validation__table tbody tr:last-child td{border-bottom:none}.project-metric__context{display:block}.md{color:#ebf0fae6;font-size:.95rem;line-height:1.7}.md>*+*{margin-top:.85rem}.md h1,.md h2,.md h3,.md h4{color:#fffffff5;letter-spacing:.01em;margin:1.4rem 0 .5rem}.md h1{font-size:1.4rem}.md h2{font-size:1.18rem}.md h3{font-size:1.02rem}.md h4{color:#ffffffc7;font-size:.92rem}.md p{white-space:pre-wrap;margin:0}.md p+p{margin-top:.85rem}.md a{color:#8fd1ff;text-underline-offset:2px;-webkit-text-decoration:underline #8fd1ff66;text-decoration:underline #8fd1ff66}.md a:hover{text-decoration-color:#8fd1ffe6}.md strong{color:#fffffffa}.md em{color:#ffffffd9}.md [style*=color] strong,.md [style*=color] em{color:inherit}.md ul,.md ol{margin:0;padding-left:1.4rem}.md li+li{margin-top:.45rem}.md>ul>li+li,.md>ol>li+li{margin-top:.85rem}.md blockquote{color:#ffffffd1;background:#6ea8ff0d;border-left:2px solid #6ea8ff73;border-radius:0 8px 8px 0;margin:0;padding:.6rem .95rem;font-size:.92rem}.md hr{border:0;border-top:1px solid #ffffff14;margin:1.4rem 0}.md__inline-code{color:#cfe2ff;background:#6ea8ff1f;border:1px solid #6ea8ff2e;border-radius:4px;padding:.12em .4em;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.85em;display:inline}.md__pre{white-space:pre;color:#dce8ffeb;background:#080c14d9;border:1px solid #6ea8ff2e;border-radius:10px;margin:0;padding:.9rem 1rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.82rem;line-height:1.55;overflow-x:auto}.md__pre code{font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:0;padding:0}.tiptap pre{color:#dce8ffeb;white-space:pre;tab-size:2;background:#080c14eb;border:1px solid #6ea8ff38;border-radius:10px;margin:.8em 0;padding:.9rem 1rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.82rem;line-height:1.55;overflow-x:auto}.tiptap pre code{font-family:inherit;font-size:inherit;color:inherit;border:0;padding:0;display:block;background:0 0!important}.tiptap .hljs-comment,.tiptap .hljs-quote{color:#6a9955;font-style:italic}.tiptap .hljs-keyword,.tiptap .hljs-selector-tag,.tiptap .hljs-literal,.tiptap .hljs-meta-keyword{color:#569cd6}.tiptap .hljs-built_in,.tiptap .hljs-type{color:#4ec9b0}.tiptap .hljs-string,.tiptap .hljs-meta-string{color:#ce9178}.tiptap .hljs-number,.tiptap .hljs-symbol,.tiptap .hljs-bullet{color:#b5cea8}.tiptap .hljs-function .hljs-title,.tiptap .hljs-title.function_,.tiptap .hljs-title{color:#dcdcaa}.tiptap .hljs-class .hljs-title,.tiptap .hljs-title.class_{color:#4ec9b0}.tiptap .hljs-variable,.tiptap .hljs-template-variable,.tiptap .hljs-attr,.tiptap .hljs-attribute,.tiptap .hljs-property,.tiptap .hljs-params{color:#9cdcfe}.tiptap .hljs-tag,.tiptap .hljs-name,.tiptap .hljs-selector-id,.tiptap .hljs-selector-class{color:#569cd6}.tiptap .hljs-regexp,.tiptap .hljs-link{color:#d16969}.tiptap .hljs-meta,.tiptap .hljs-doctag{color:#9b9b9b}.tiptap .hljs-emphasis{font-style:italic}.tiptap .hljs-strong{font-weight:700}.md__img{background:#ffffff05;border:1px solid #ffffff0f;border-radius:10px;max-width:100%;height:auto;margin:.6rem 0;display:block}.md__img--zoomable{cursor:zoom-in}.md video{border:1px solid #ffffff0f;border-radius:10px;max-width:100%;margin:.6rem 0;display:block}.md__table-wrap{border:1px solid #ffffff12;border-radius:10px;overflow-x:auto}.md__table{border-collapse:collapse;width:100%;font-size:.88rem}.md__table th,.md__table td{text-align:center;border:1px solid #ffffff1f;padding:.55rem .8rem}.md__table thead th{letter-spacing:.1em;text-transform:uppercase;color:#fff9;background:#ffffff0a;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.72rem;font-weight:500}.admin-bilingual--markdown{flex-direction:column;gap:.6rem;display:flex}.admin-banner{border-radius:10px;align-items:center;gap:.4rem;margin:.6rem 0;padding:.7rem 1rem;font-size:.85rem;display:flex}.admin-banner--warn{color:#ffd699;background:#ffb45014;border:1px solid #ffb45066}.section-hint{letter-spacing:0;margin-left:6px;font-size:.7rem;font-weight:400}.admin-add-btn{color:#cfe2ff;letter-spacing:.04em;cursor:pointer;background:#6ea8ff14;border:1px dashed #6ea8ff59;border-radius:999px;align-items:center;gap:.3rem;margin:.6rem 0;padding:.5rem .9rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.75rem;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.admin-add-btn:hover{color:#fff;background:#6ea8ff2e;border-style:solid;border-color:#6ea8ff99}.admin-add-btn--small{padding:.2rem .55rem;font-size:.65rem}.admin-remove-btn{color:#ff99a8;cursor:pointer;background:#ff6e821a;border:1px solid #ff6e824d;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;margin-left:.4rem;font-size:.7rem;line-height:1;transition:background .12s;display:inline-flex}.admin-remove-btn:hover{color:#fff;background:#ff6e8240}.admin-section-controls__hint{letter-spacing:.06em;text-transform:uppercase;margin:.9rem 0 .4rem;font-size:.72rem}.admin-section-controls__hint:first-of-type{margin-top:.2rem}.admin-section-controls__row{flex-wrap:wrap;gap:.5rem;display:flex}.admin-section-controls__row .admin-add-btn{margin:0}.admin-clear-btn{color:#ff99a8;letter-spacing:.04em;cursor:pointer;background:#ff6e8214;border:1px dashed #ff6e8259;border-radius:999px;align-items:center;gap:.3rem;padding:.45rem .85rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.72rem;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.admin-clear-btn:before{content:"✕";opacity:.7;font-size:.65rem}.admin-clear-btn:hover{color:#fff;background:#ff6e822e;border-style:solid;border-color:#ff6e8299}.project-process__step .admin-reorder,.project-process__step .admin-remove-btn,.project-compare__pair .admin-reorder,.project-compare__pair .admin-remove-btn,.project-metric .admin-reorder,.project-metric .admin-remove-btn,.project-approach__card .admin-reorder,.project-approach__card .admin-remove-btn,.project-hero-gallery-edit__item .sortable-drag-handle,.project-hero-gallery-edit__item .admin-remove-btn{opacity:0;pointer-events:none;transition:opacity .12s}.project-process__step:hover .admin-reorder,.project-process__step:hover .admin-remove-btn,.project-process__step:focus-within .admin-reorder,.project-process__step:focus-within .admin-remove-btn,.project-compare__pair:hover .admin-reorder,.project-compare__pair:hover .admin-remove-btn,.project-compare__pair:focus-within .admin-reorder,.project-compare__pair:focus-within .admin-remove-btn,.project-metric:hover .admin-reorder,.project-metric:hover .admin-remove-btn,.project-metric:focus-within .admin-reorder,.project-metric:focus-within .admin-remove-btn,.project-approach__card:hover .admin-reorder,.project-approach__card:hover .admin-remove-btn,.project-approach__card:focus-within .admin-reorder,.project-approach__card:focus-within .admin-remove-btn,.project-hero-gallery-edit__item:hover .sortable-drag-handle,.project-hero-gallery-edit__item:hover .admin-remove-btn,.project-hero-gallery-edit__item:focus-within .sortable-drag-handle,.project-hero-gallery-edit__item:focus-within .admin-remove-btn{opacity:1;pointer-events:auto}@media (hover:none){.project-process__step .admin-reorder,.project-process__step .admin-remove-btn,.project-compare__pair .admin-reorder,.project-compare__pair .admin-remove-btn,.project-metric .admin-reorder,.project-metric .admin-remove-btn,.project-approach__card .admin-reorder,.project-approach__card .admin-remove-btn,.project-hero-gallery-edit__item .sortable-drag-handle,.project-hero-gallery-edit__item .admin-remove-btn{opacity:1;pointer-events:auto}}.admin-empty-adder{background:#6ea8ff08;border:1px dashed #6ea8ff40;border-radius:12px;margin:.6rem 0;padding:1rem 1.2rem}.admin-empty-adder .muted{margin:0 0 .6rem;font-size:.82rem}.admin-editable--small{padding:.2rem .4rem;font-size:.82rem}.admin-code-editor{width:100%;min-height:120px;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.82rem;color:inherit!important;background:0 0!important;border:0!important}.project-meta-bar--editing .project-meta-bar__item,.project-constraints--editing .project-constraints__row{opacity:1}.project-meta-bar--editing input.admin-editable,.project-constraints--editing input.admin-editable{color:#ffffffeb;background:#ffffff05;border:1px dashed #ffffff14;border-radius:4px;padding:.18rem .4rem;font-size:.82rem}.project-meta-bar--editing input.admin-editable:focus,.project-constraints--editing input.admin-editable:focus{border-style:solid;border-color:#6ea8ff80;outline:none}.project-evidence__item{position:relative}.project-evidence__item .admin-remove-btn{z-index:2;position:absolute;top:6px;right:6px}.project-code__lang{color:#6ea8ffb3;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.3rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.7rem}.project-metrics-wrap{flex-direction:column;align-items:flex-start;display:flex}.before-after-slider{aspect-ratio:16/9;-webkit-user-select:none;user-select:none;cursor:ew-resize;background:#000;border:1px solid #ffffff0f;border-radius:12px;width:100%;position:relative;overflow:hidden}.before-after-slider__img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.before-after-slider__before-wrap{pointer-events:none;position:absolute;inset:0}.before-after-slider__label{z-index:3;letter-spacing:.16em;-webkit-backdrop-filter:blur(6px);pointer-events:none;background:#0a0e168c;border:1px solid #ffffff14;border-radius:999px;padding:.3rem .55rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.7rem;position:absolute;top:12px}.before-after-slider__label--before{color:#ff99bd;border-color:#ff7eb659;left:12px}.before-after-slider__label--after{color:#8af2b8;border-color:#58e7a059;right:12px}.before-after-slider__handle{z-index:5;cursor:ew-resize;width:0;position:absolute;top:0;bottom:0;transform:translate(-50%)}.before-after-slider__handle-line{background:#fffffff2;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 0 12px #fff6}.before-after-slider__handle-grip{color:#0a0e16;cursor:ew-resize;background:#fffffff2;border-radius:999px;justify-content:center;align-items:center;gap:2px;width:36px;height:36px;font-size:.75rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 16px #ffffff59}.before-after-slider__handle:focus-visible{outline:none}.before-after-slider__handle:focus-visible .before-after-slider__handle-grip{outline-offset:3px;outline:2px solid #65e0ff}.code-highlight{line-height:1.65;overflow-x:auto;box-shadow:0 10px 28px -18px #000000bf;background:#080c14eb!important;border:1px solid #6ea8ff47!important;font-family:ui-monospace,JetBrains Mono,Consolas,monospace!important;font-size:.86rem!important}.code-highlight code,.code-highlight .hljs{color:#dce8ffeb;background:0 0}.code-highlight .hljs-comment,.code-highlight .hljs-quote{color:#6a9955;font-style:italic}.code-highlight .hljs-keyword,.code-highlight .hljs-selector-tag,.code-highlight .hljs-literal,.code-highlight .hljs-meta-keyword{color:#569cd6}.code-highlight .hljs-built_in,.code-highlight .hljs-type{color:#4ec9b0}.code-highlight .hljs-string,.code-highlight .hljs-meta-string{color:#ce9178}.code-highlight .hljs-number,.code-highlight .hljs-symbol,.code-highlight .hljs-bullet{color:#b5cea8}.code-highlight .hljs-title,.code-highlight .hljs-title.function_{color:#dcdcaa}.code-highlight .hljs-title.class_{color:#4ec9b0}.code-highlight .hljs-variable,.code-highlight .hljs-template-variable,.code-highlight .hljs-attr,.code-highlight .hljs-attribute,.code-highlight .hljs-property,.code-highlight .hljs-params{color:#9cdcfe}.code-highlight .hljs-tag,.code-highlight .hljs-name,.code-highlight .hljs-selector-id,.code-highlight .hljs-selector-class{color:#569cd6}.code-highlight .hljs-regexp,.code-highlight .hljs-link{color:#d16969}.code-highlight .hljs-meta,.code-highlight .hljs-doctag{color:#9b9b9b}.code-highlight .hljs-emphasis{font-style:italic}.code-highlight .hljs-strong{font-weight:700}.lightbox{z-index:9998;-webkit-backdrop-filter:blur(8px);background:#000000eb;justify-content:center;align-items:center;padding:2rem;animation:.18s lightboxFadeIn;display:flex;position:fixed;inset:0}@keyframes lightboxFadeIn{0%{opacity:0}to{opacity:1}}.lightbox__img{object-fit:contain;border-radius:8px;max-width:95vw;max-height:90vh;box-shadow:0 16px 64px #0009}.lightbox__close{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:999px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;display:flex;position:absolute;top:1.2rem;right:1.2rem}.lightbox__close:hover{background:#fff3}.lightbox__nav{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:999px;justify-content:center;align-items:center;width:48px;height:48px;font-size:2rem;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox__nav:hover{background:#fff3}.lightbox__nav--prev{left:1.2rem}.lightbox__nav--next{right:1.2rem}.lightbox__counter{color:#ffffffe6;font-variant-numeric:tabular-nums;letter-spacing:.05em;background:#0000008c;border:1px solid #ffffff26;border-radius:999px;padding:4px 12px;font-size:.8rem;position:absolute;bottom:1.2rem;left:50%;transform:translate(-50%)}@media (max-width:600px){.lightbox__nav{width:40px;height:40px;font-size:1.6rem}.lightbox__nav--prev{left:.5rem}.lightbox__nav--next{right:.5rem}}.project-gallery__edit-item{position:relative}.project-gallery__handle{z-index:4;opacity:0;pointer-events:none;transition:opacity .12s;position:absolute;top:6px;left:6px}.project-gallery__bar{justify-content:flex-end;margin-top:6px;display:flex}.project-gallery__edit-item .admin-remove-btn{opacity:0;pointer-events:none;transition:opacity .12s}.project-gallery__edit-item:hover .project-gallery__handle,.project-gallery__edit-item:focus-within .project-gallery__handle,.project-gallery__edit-item:hover .admin-remove-btn,.project-gallery__edit-item:focus-within .admin-remove-btn{opacity:1;pointer-events:auto}.project-gallery__edit-item.is-dragging{cursor:grabbing}@media (hover:none){.project-gallery__handle,.project-gallery__edit-item .admin-remove-btn{opacity:1;pointer-events:auto}}.project-media__image--zoomable{cursor:zoom-in;transition:transform .2s}.project-media__image--zoomable:hover{transform:scale(1.01)}.scroll-progress{height:2px;z-index:var(--z-toast);pointer-events:none;background:#ffffff0f;position:fixed;top:0;left:0;right:0}.scroll-progress__bar{transform-origin:0;background:linear-gradient(90deg,#65e0ff,#ff6ec7,#9ec0ff);height:100%;transition:transform 80ms linear}.reading-time{letter-spacing:.06em;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.75rem}.toc{z-index:10;width:200px;font-size:.78rem;position:fixed;top:120px;right:max(1rem,50vw - 762px)}@media (max-width:1280px){.toc{display:none}}.toc__title{letter-spacing:.14em;text-transform:uppercase;color:#ffffff80;margin:0 0 .5rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.66rem}.toc__list{border-left:1px solid #ffffff14;margin:0;padding:0;list-style:none}.toc__item{margin:0}.toc__link{color:#ffffff8c;border-left:2px solid #0000;margin-left:-1px;padding:.3rem .8rem;text-decoration:none;transition:color .12s,border-color .12s;display:block}.toc__link:hover{color:#ffffffd9}.toc__item--active .toc__link{color:#65e0ff;border-left-color:#65e0ff}.toast-stack{z-index:var(--z-modal);pointer-events:none;flex-direction:column;gap:.5rem;max-width:380px;display:flex;position:fixed;bottom:80px;right:1.5rem}.toast{-webkit-backdrop-filter:blur(12px)saturate(150%);color:#edf2ff;pointer-events:auto;background:#141a26eb;border:1px solid #ffffff14;border-radius:10px;padding:.8rem 1rem;font-size:.85rem;animation:.2s toastSlideIn;box-shadow:0 8px 32px #0006}@keyframes toastSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.toast--success{color:#c5f5d8;border-color:#58e7a073}.toast--error{color:#ffc5ce;border-color:#ff6e8273}.about-section__philosophy{color:#ffffffeb;letter-spacing:-.01em;background:linear-gradient(90deg,#65e0ff0f 0%,#ff6ec708 100%);border-left:3px solid #65e0ff80;border-radius:0 12px 12px 0;margin:1.2rem 0 1.6rem;padding:.9rem 1.4rem;font-size:1.1rem;font-style:italic;line-height:1.5}.about-outcomes{margin:2rem 0}.about-outcomes__item{position:relative}.about-career{margin:2.5rem 0 0}.about-career__head{flex-wrap:wrap;align-items:baseline;gap:.75rem;margin:0 0 1.25rem;display:flex}.about-career__total{letter-spacing:.02em;color:var(--accent);background:#6ea8ff14;border:1px solid #6ea8ff4d;border-radius:999px;padding:.2rem .6rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.82rem;font-weight:600}.about-career__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.about-career__item{background:#ffffff05;border:1px solid #ffffff0f;border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.about-career__main{flex-wrap:wrap;align-items:baseline;gap:.5rem .7rem;min-width:0;display:flex}.about-career__company{color:#dce8ffeb;font-size:1rem;font-weight:600}.about-career__role{font-size:.85rem}.about-career__meta{flex-shrink:0;align-items:center;gap:.7rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;display:flex}.about-career__period{color:#dce8ffbf;letter-spacing:.02em;white-space:nowrap;font-size:.82rem}.about-career__duration{font-size:.78rem}.about-career__badge{letter-spacing:.03em;color:var(--accent);white-space:nowrap;border:1px solid #6ea8ff59;border-radius:999px;padding:.12rem .5rem;font-size:.72rem;font-weight:600}.about-career__item--editing{flex-direction:row;align-items:flex-start}.about-career__edit-fields{flex-direction:column;flex:1;gap:.5rem;min-width:0;display:flex}.about-career__date-row{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.about-career__date-label{color:#dce8ff99;flex-direction:column;gap:.25rem;font-size:.72rem;display:flex}.about-career__date-input{color:#dce8ffe6;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#080c1499;border:1px solid #6ea8ff33;border-radius:6px;padding:.3rem .5rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.82rem}.about-career__present-check{color:#dce8ffcc;cursor:pointer;align-items:center;gap:.35rem;padding-bottom:.35rem;font-size:.8rem;display:flex}@media (max-width:600px){.about-career__item{flex-direction:column;align-items:flex-start;gap:.5rem}.about-career__meta{flex-wrap:wrap}}.project-validation__label-edit{text-align:left;width:100%;min-width:80px}.code-editor{border:1px solid #6ea8ff2e;border-radius:10px;overflow:hidden}.code-editor .cm-editor{background:#080c14d9!important}.code-editor .cm-focused{outline:none!important}.code-editor .cm-content{padding:.7rem .6rem!important}.code-editor .cm-gutters{color:#ffffff40!important;background:#080c1499!important;border-right:1px solid #6ea8ff1f!important}.md-toolbar__btn{color:#fffc;cursor:pointer;background:0 0;border:0;border-radius:4px;min-width:28px;height:28px;padding:0 .5rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.78rem;font-weight:600;transition:background .1s,color .1s}.md-toolbar__btn:hover{color:#fff;background:#6ea8ff26}.md-bubble{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#121a28f5;border:1px solid #6ea8ff4d;border-radius:8px;flex-wrap:wrap;align-items:center;gap:2px;max-width:380px;padding:3px;display:inline-flex;position:absolute;transform:translate(-2px,calc(-100% - 8px));box-shadow:0 6px 20px #00000073}.md-bubble__sep{background:#ffffff1f;width:1px;height:18px;margin:0 2px}.md-bubble__block-row{border-top:1px solid #ffffff1a;flex-wrap:wrap;flex-basis:100%;gap:2px;margin-top:2px;padding-top:4px;display:inline-flex}.md-bubble__btn{color:#ffffffd9;cursor:pointer;background:0 0;border:0;border-radius:5px;min-width:28px;height:28px;padding:0 .5rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.78rem;font-weight:600;transition:background .12s,color .12s}.md-bubble__btn:hover{color:#fff;background:#6ea8ff33}.md-bubble__btn--on{color:#fff;background:#6ea8ff4d}.md-bubble__palette{border-left:1px solid #ffffff1f;align-items:center;gap:2px;margin-left:2px;padding-left:6px;display:inline-flex}.md-bubble__swatch{cursor:pointer;background:0 0;border:1px solid #ffffff2e;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;font-size:.72rem;font-weight:700;transition:outline 80ms;display:inline-flex}.md-bubble__swatch:hover{outline-offset:1px;outline:2px solid #6ea8ff8c}.md mark{color:inherit;background:#ffdc644d;border-radius:3px;padding:.05em .2em}.md-bubble__btn--danger:hover{color:#ff9090;background:#ff505033}.md-bubble--link-edit{align-items:center;gap:4px;padding:4px 6px;display:inline-flex}.md-bubble__link-input{color:#fff;background:#ffffff12;border:1px solid #6ea8ff66;border-radius:5px;outline:none;width:220px;height:28px;padding:0 8px;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.78rem;transition:border-color .12s,background .12s}.md-bubble__link-input:focus{background:#ffffff1a;border-color:#6ea8ffd9}.md-bubble__link-input::placeholder{color:#ffffff4d}.md-slash{z-index:25;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#121a28fa;border:1px solid #6ea8ff4d;border-radius:10px;flex-direction:column;gap:1px;min-width:200px;max-height:280px;padding:4px;display:flex;position:absolute;overflow-y:auto;transform:translateY(1.4rem);box-shadow:0 10px 30px #00000080}.md-slash__item{color:#ffffffd9;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:1rem;padding:7px 10px;font-size:.82rem;display:flex}.md-slash__item--active{color:#fff;background:#6ea8ff33}.md-slash__hint{color:#fff6;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.7rem}.md-slash__item--active .md-slash__hint{color:#cfe2ffb3}.md-slash--fixed{position:fixed;transform:none}.tiptap-field{gap:.4rem;display:grid}.tiptap-field__toolbar{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.tiptap-field__hint{font-size:.75rem}.tiptap-table-tools{flex-wrap:wrap;align-items:center;gap:2px;display:inline-flex}.tiptap-table-tools__label{margin-right:4px;font-size:.72rem}.tiptap-table-tools .md-toolbar__btn{min-width:0;padding:0 .45rem;font-size:.72rem}.tiptap-editor .ProseMirror{background:#080e1866;border:1px solid #6ea8ff33;border-radius:8px;outline:none;min-height:140px;padding:10px 12px;transition:border-color .12s}.tiptap-editor .ProseMirror:focus{border-color:#6ea8ff80}.tiptap-editor .ProseMirror img{border:1px solid #ffffff0f;border-radius:10px;max-width:100%;height:auto;margin:.6rem 0;display:block}.tiptap-editor .ProseMirror img.ProseMirror-selectednode{outline-offset:2px;outline:2px solid #6ea8ffb3}.tiptap-editor .ProseMirror table{border-collapse:collapse;table-layout:fixed;width:100%;margin:.8rem 0;font-size:.88rem;overflow:hidden}.tiptap-editor .ProseMirror th,.tiptap-editor .ProseMirror td{vertical-align:top;text-align:center;border:1px solid #ffffff1f;padding:.45rem .7rem;position:relative}.tiptap-editor .ProseMirror th{background:#ffffff0a;font-weight:600}.tiptap-editor .ProseMirror .selectedCell:after{content:"";pointer-events:none;background:#6ea8ff2e;position:absolute;inset:0}.tiptap-editor .ProseMirror .column-resize-handle{cursor:col-resize;background:#6ea8ff80;width:4px;position:absolute;top:0;bottom:0;right:-2px}.tiptap-editor .ProseMirror>:first-child{margin-top:0}.tiptap-editor .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--muted);float:left;pointer-events:none;white-space:pre-line;height:0}.admin-reorder{gap:2px;margin-left:.4rem;display:inline-flex}.admin-reorder--horizontal{flex-direction:row}.admin-reorder--vertical{flex-direction:column}.admin-reorder__btn{color:#cfe2ff;cursor:pointer;background:#6ea8ff14;border:1px solid #6ea8ff38;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;font-size:.7rem;line-height:1;transition:background .12s;display:inline-flex}.admin-reorder__btn:hover:not(:disabled){background:#6ea8ff33}.admin-reorder__btn:disabled{opacity:.25;cursor:not-allowed}.admin-reorder--vertical .admin-reorder__btn{width:22px;height:14px}.media-picker{z-index:9998;-webkit-backdrop-filter:blur(4px);background:#000000b3;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.media-picker__panel{background:#0f1421;border:1px solid #ffffff14;border-radius:16px;flex-direction:column;gap:1rem;width:100%;max-width:960px;max-height:86vh;padding:1.4rem 1.6rem;display:flex;box-shadow:0 24px 80px #0009}.media-picker__head{justify-content:space-between;align-items:center;display:flex}.media-picker__head .lightbox__close{position:static}.media-picker__search{align-items:center;gap:.6rem;display:flex}.media-picker__grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.7rem;max-height:60vh;padding-right:4px;display:grid;overflow-y:auto}.media-picker__filters{justify-content:space-between;align-items:center;gap:8px;display:flex}.media-picker__filter-group{gap:4px;display:flex}.media-picker__filter-btn{color:#fff9;cursor:pointer;background:0 0;border:1px solid #6ea8ff40;border-radius:5px;padding:3px 10px;font-size:.75rem;transition:background .1s,color .1s,border-color .1s}.media-picker__filter-btn:hover{color:#fff;background:#6ea8ff1a;border-color:#6ea8ff73}.media-picker__filter-btn--on{color:#fff;background:#6ea8ff2e;border-color:#6ea8ff99}.media-picker__item-wrap{position:relative}.media-picker__item-wrap:hover .media-picker__delete{opacity:1}.media-picker__item{cursor:pointer;text-align:left;background:#ffffff05;border:1px solid #ffffff0f;border-radius:8px;flex-direction:column;gap:4px;width:100%;padding:4px;transition:border-color .12s,background .12s;display:flex}.media-picker__item:hover{background:#65e0ff0a;border-color:#65e0ff80}.media-picker__delete{color:#ff8c8ce6;cursor:pointer;opacity:0;z-index:2;background:#0c121eeb;border:1px solid #ff505073;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.65rem;line-height:1;transition:opacity .12s,background .12s,border-color .12s;display:flex;position:absolute;top:8px;right:8px}.media-picker__delete:hover{color:#ff9090;background:#c8282840;border-color:#ff5050d9}.media-picker__delete:disabled{cursor:default;opacity:1}.media-picker__thumb{aspect-ratio:1;object-fit:cover;background:#000;border-radius:4px;width:100%}.media-picker__name{color:#fff9;white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.projects-section__title{align-items:baseline;gap:.8rem;margin:0;display:flex}.projects-section__hint{letter-spacing:0;font-size:.75rem;font-weight:400}.card-grid--quick{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.8rem;display:grid}.project-carousel-wrap{margin-top:2rem;position:relative}.carousel-arrow{z-index:10;-webkit-backdrop-filter:blur(8px);color:#cfe2ffcc;cursor:pointer;background:#0a0d14d9;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.3rem;line-height:1;transition:background .14s,border-color .14s,opacity .14s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-arrow:hover{color:#cfe2ff;background:#6ea8ff26;border-color:#6ea8ff59}.carousel-arrow--left{left:-18px}.carousel-arrow--right{right:-18px}.project-carousel-wrap:before,.project-carousel-wrap:after{content:"";z-index:5;pointer-events:none;opacity:0;width:40px;transition:opacity .2s;position:absolute;top:0;bottom:0}.project-carousel-wrap:before{background:linear-gradient(90deg, var(--bg,#0a0d14), transparent);left:0}.project-carousel-wrap:after{background:linear-gradient(-90deg, var(--bg,#0a0d14), transparent);right:0}.project-carousel-wrap:has(.carousel-arrow--left):before{opacity:1}.project-carousel-wrap:has(.carousel-arrow--right):after{opacity:1}.project-carousel{cursor:grab;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.6rem;display:flex;overflow:auto hidden}.project-carousel:active{cursor:grabbing}.project-carousel::-webkit-scrollbar{display:none}.project-column{background:#ffffff05;border-radius:12px;flex-direction:column;flex:0 0 33.3333%;min-width:280px;padding:.9rem;display:flex;position:relative}.project-column__remove-btn{z-index:5;color:#ff7878d9;cursor:pointer;opacity:0;background:#141414bf;border:1px dashed #ff787873;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;transition:opacity .12s,background .12s,color .12s,border-color .12s;position:absolute;top:6px;right:6px}.project-column:hover .project-column__remove-btn,.project-column__remove-btn:focus-visible{opacity:1}.project-column__remove-btn:hover{color:#fff;background:#dc3c3cd9;border-color:#ff7878d9}.project-column:nth-child(2n){background:#ffffff0a}@media (max-width:900px){.project-column{flex:0 0 50%;min-width:260px}}@media (max-width:520px){.project-column{flex:0 0 85%;min-width:240px}}.project-column__hero{border-radius:8px;margin-bottom:.6rem;line-height:0;overflow:hidden}.project-column__hero a{line-height:0;display:block}.project-column__hero-media{aspect-ratio:16/9;object-fit:cover;border-radius:8px;width:100%;transition:transform .35s,filter .35s;display:block}.project-column__hero:hover .project-column__hero-media{filter:brightness(1.1);transform:scale(1.03)}.project-column__header{border-bottom:1px solid #ffffff14;flex-direction:column;gap:.3rem;margin-bottom:.7rem;padding-bottom:.65rem;display:flex}.project-column__title{color:#e8f0ff;letter-spacing:-.02em;margin:0;font-size:1.1rem;font-weight:700;transition:color .16s}.project-section__title-link{color:inherit;text-decoration:none}.project-section__title-link:hover .project-column__title{color:#9ec9ff}.project-column__meta{align-items:center;gap:.5rem;display:flex}.project-column__desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.75rem;line-height:1.4;display:-webkit-box;overflow:hidden}.project-section__count{color:#9ec9ff;background:#6ea8ff1a;border:1px solid #6ea8ff33;border-radius:6px;justify-content:center;align-items:center;min-width:22px;height:22px;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.7rem;font-weight:600;display:inline-flex}.project-section__view-all{color:#cfe2ff80;letter-spacing:.02em;white-space:nowrap;font-size:.72rem;text-decoration:none;transition:color .14s}.project-section__view-all:hover{color:#9ec9ff}.project-column__grid{grid-template-columns:repeat(2,1fr);gap:.55rem;display:grid;position:relative;overflow:hidden}.project-column__grid--scrollable{scrollbar-width:none;-webkit-overflow-scrolling:touch;cursor:grab;overflow-y:auto}.project-column__grid--scrollable::-webkit-scrollbar{display:none}.project-column__grid-wrap{position:relative}.project-column__grid-wrap:after{content:"";background:linear-gradient(transparent, var(--bg,#0a0d14));pointer-events:none;opacity:0;height:32px;transition:opacity .2s;position:absolute;bottom:0;left:0;right:0}.project-column__grid-wrap--has-more:after{opacity:1}.project-column__grid-wrap--at-bottom:after{opacity:0}.work-item-card__still{z-index:1;transition:opacity .2s;position:relative}.work-item-card__hover-media{object-fit:cover;z-index:2;pointer-events:none;width:100%;height:100%;transition:opacity .2s;position:absolute;inset:0}.project-thumb-card__chip{-webkit-backdrop-filter:blur(6px);letter-spacing:.06em;text-transform:uppercase;color:#cfe2ffd9;z-index:2;background:#0009;border:1px solid #ffffff1a;border-radius:5px;padding:2px 6px;font-size:.58rem;font-weight:600;position:absolute;top:6px;left:6px}.project-thumb-card__caption{background:#0000004d;border-top:1px solid #ffffff0f;flex-direction:column;gap:.1rem;padding:.4rem .5rem .45rem;display:flex}.project-thumb-card__title{color:#e8f0ff;letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:600;line-height:1.3;overflow:hidden}.project-thumb-card__oneline{-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:.6rem;line-height:1.3;display:-webkit-box;overflow:hidden}.project-card--quick{flex-direction:column;gap:.4rem;padding:1rem 1.1rem;display:flex}.project-card-quick__link{color:#cfe2ff;margin-top:auto;padding:.4rem .6rem 0;font-size:.85rem;text-decoration:none;display:inline-block}.project-card__admin-flags{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.project-nav{border-top:1px solid #ffffff0f;grid-template-columns:1fr 1fr;gap:1rem;margin-top:3rem;padding-top:2rem;display:grid}@media (max-width:720px){.project-nav{grid-template-columns:1fr}}.project-nav__item{color:inherit;background:#ffffff05;border:1px solid #ffffff12;border-radius:12px;flex-direction:column;gap:.3rem;padding:1rem 1.2rem;text-decoration:none;transition:border-color .14s,background .14s,transform .14s;display:flex}.project-nav__item:hover{background:#65e0ff0a;border-color:#65e0ff73;transform:translateY(-2px)}.project-nav__item--next{text-align:right}.project-nav__direction{letter-spacing:.14em;text-transform:uppercase;color:#65e0ff;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.7rem}.project-nav__title{color:#fffffff2;font-size:1.1rem;font-weight:600}.project-nav__one-line{font-size:.82rem;line-height:1.45}.admin-publish-controls{background:#ffb4500a;border:1px dashed #ffb45040;border-radius:12px;margin-top:2rem;padding:1rem 1.2rem}.admin-publish-controls h2{color:#ffd699;letter-spacing:.04em;margin:0 0 .6rem;font-size:.9rem}.validation-chart{background:#ffffff05;border:1px solid #ffffff0f;border-radius:12px;margin-top:1.4rem;padding:1rem 1.2rem}.breadcrumb{flex-wrap:wrap;align-items:center;gap:.4rem;margin:0 0 .4rem;font-size:.85rem;display:inline-flex}.breadcrumb__item{align-items:center;gap:.4rem;display:inline-flex}.breadcrumb__link{color:#ffffffb3;text-decoration:none}.breadcrumb__current{color:#fffffff2}.breadcrumb__sep{color:#ffffff4d;-webkit-user-select:none;user-select:none}.project-hub__work-items{margin-top:2.4rem}.project-hub__group{margin-top:1.4rem}.project-hub__category{letter-spacing:.18em;text-transform:uppercase;color:#edf2ffd9;border-bottom:1px solid #ffffff0f;align-items:center;gap:.5rem;margin:0 0 .8rem;padding-bottom:.4rem;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.78rem;display:flex}.project-hub__category-dot{border-radius:50%;width:10px;height:10px;display:inline-block;box-shadow:0 0 8px}.project-hub__grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.9rem;display:grid}@media (max-width:720px){.project-hub__grid{grid-template-columns:repeat(2,1fr);gap:.6rem}}@media (max-width:480px){.project-hub__grid{grid-template-columns:1fr;gap:.6rem}}.project-hub__stats{flex-wrap:wrap;gap:.8rem;margin:1rem 0 1.4rem;padding:0;list-style:none;display:flex}.project-hub__stat{background:#ffffff06;border:1px solid #ffffff0f;border-radius:12px;flex-direction:column;gap:.15rem;min-width:110px;padding:.7rem 1.1rem;display:flex}.project-hub__stat-value{color:#cfe2ff;letter-spacing:-.02em;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:1.45rem;font-weight:700;line-height:1.05}.project-hub__stat-label{letter-spacing:.16em;text-transform:uppercase;color:#cfe2ff8c;font-size:.7rem}.work-item-card{--category-color:#7a8499;background:#ffffff05;border:1px solid #ffffff0f;border-radius:10px;flex-direction:column;padding:0;transition:border-color .14s,transform .14s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.work-item-card:hover{border-color:color-mix(in srgb, var(--category-color) 65%, transparent);box-shadow:0 14px 32px -16px color-mix(in srgb, var(--category-color) 70%, transparent);transform:translateY(-3px)}.work-item-card--featured{border-color:#ffd1664d;box-shadow:inset 0 0 0 1px #ffd1661f}.work-item-card--featured:hover{border-color:#ffd16699;box-shadow:inset 0 0 0 1px #ffd16633,0 16px 36px -16px #ffd16673}.work-item-card--unpublished{opacity:.55;outline:1px dashed #ffffff2e}.work-item-card__admin{background:#00000080;border-bottom:1px solid #ffffff0d;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;display:flex}.work-item-card__link{color:inherit;text-decoration:none;display:block}.work-item-card__thumb{aspect-ratio:1;background:#0a0d14;width:100%;position:relative;overflow:hidden}.work-item-card__thumb img,.work-item-card__thumb video{object-fit:cover;width:100%;height:100%;transition:transform .36s,filter .2s;display:block}.work-item-card:hover .work-item-card__thumb img,.work-item-card:hover .work-item-card__thumb video{filter:brightness(1.08);transform:scale(1.06)}.work-item-card__placeholder{letter-spacing:.2em;text-transform:uppercase;background:radial-gradient(circle at 30% 20%, color-mix(in srgb, var(--category-color) 22%, transparent) 0%, transparent 60%), radial-gradient(circle at 80% 90%, color-mix(in srgb, var(--category-color) 14%, transparent) 0%, transparent 55%), #0a0d14;justify-content:center;align-items:center;width:100%;height:100%;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.78rem;display:flex}.work-item-card__category-chip{z-index:2;letter-spacing:.14em;text-transform:uppercase;color:#edf2ffeb;border:1px solid color-mix(in srgb, var(--category-color) 40%, transparent);-webkit-backdrop-filter:blur(8px);background:#0000008c;border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.62rem;display:inline-flex;position:absolute;top:8px;left:8px}.work-item-card__category-dot{border-radius:50%;width:6px;height:6px}.work-item-card__featured-badge{z-index:2;letter-spacing:.16em;text-transform:uppercase;color:#ffd166;-webkit-backdrop-filter:blur(8px);background:#0000008c;border:1px solid #ffd16680;border-radius:999px;padding:3px 8px;font-size:.62rem;position:absolute;top:8px;right:8px}.work-item-card__overlay{z-index:1;background:linear-gradient(#0a0d1400 0%,#0a0d14b8 50%,#0a0d14eb 100%);flex-direction:column;gap:.35rem;padding:.8rem .85rem .7rem;transition:transform .22s,opacity .22s;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(0)}.work-item-card__overlay .work-item-card__title{letter-spacing:-.005em;color:#fff;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.92rem;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.work-item-card--featured .work-item-card__overlay .work-item-card__title{font-size:1rem}.work-item-card__overlay .work-item-card__one-line{color:#edf2ffb8;-webkit-line-clamp:2;opacity:0;-webkit-box-orient:vertical;max-height:0;margin:0;font-size:.74rem;line-height:1.35;transition:max-height .22s,opacity .22s,margin-top .22s;display:-webkit-box;overflow:hidden}.work-item-card:hover .work-item-card__overlay .work-item-card__one-line,.work-item-card:focus-within .work-item-card__overlay .work-item-card__one-line{opacity:1;max-height:3.6em}.work-item-card__overlay .work-item-card__highlight{background:color-mix(in srgb, var(--category-color) 18%, #0006);border:1px solid color-mix(in srgb, var(--category-color) 38%, transparent);color:#fffffff2;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-self:flex-start;max-width:100%;padding:2px 7px;font-size:.7rem;overflow:hidden}.work-item-card__overlay .work-item-card__highlight strong{color:var(--category-color);margin-right:3px;font-weight:700}.work-item-card__edit-bar{background:#00000038;border-top:1px dashed #6ea8ff2e;flex-direction:column;gap:6px;padding:.55rem .7rem;display:flex}.work-item-card__category-row{align-items:stretch;gap:4px;display:flex}.work-item-card__category-row>input{flex:auto}.admin-editable--mono{font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.78rem}.work-item-card__progress{background:#ffffff0a;border:1px solid #ffffff0d;border-radius:999px;align-items:center;height:16px;display:flex;position:relative;overflow:hidden}.work-item-card__progress-bar{background:linear-gradient(90deg, color-mix(in srgb, var(--category-color) 55%, transparent) 0%, var(--category-color) 100%);border-radius:inherit;transition:width .2s;position:absolute;inset:0}.work-item-card__progress-label{z-index:1;text-align:center;letter-spacing:.1em;color:#ffffffe0;mix-blend-mode:difference;width:100%;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.66rem;position:relative}.admin-toolbar__btn--icon{justify-content:center;align-items:center;width:32px;padding:0;font-size:.95rem;display:inline-flex}.admin-toolbar__btn--icon:disabled{opacity:.3;cursor:not-allowed}.admin-toolbar{z-index:var(--z-modal);pointer-events:none;padding:0 1rem 1rem;position:fixed;bottom:0;left:0;right:0}.admin-toolbar__inner{-webkit-backdrop-filter:blur(16px)saturate(140%);pointer-events:auto;background:#0a0e16eb;border:1px solid #6ea8ff40;border-radius:14px;align-items:center;gap:.5rem;max-width:900px;margin:0 auto;padding:.6rem 1rem;display:flex;box-shadow:0 -4px 32px #00000080}.admin-toolbar__label{letter-spacing:.12em;text-transform:uppercase;color:#6ea8ffcc;border-right:1px solid #6ea8ff33;padding-right:.5rem;font-size:.72rem;font-weight:700}.admin-toolbar__btn{color:var(--doc-text);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #6ea8ff33;border-radius:8px;padding:.35rem .7rem;font-size:.8rem;font-weight:600;transition:all .16s}.admin-toolbar__btn:hover{color:#fff;background:#6ea8ff1f;border-color:#6ea8ff66}.admin-toolbar__btn--active{color:#9ec9ff;background:#6ea8ff2e;border-color:#6ea8ff80}.admin-toolbar__btn--save{color:#8af2b8;background:#5adc8c26;border-color:#5adc8c66}.admin-toolbar__btn--save:hover{background:#5adc8c40;border-color:#5adc8c99}.admin-toolbar__btn--logout{color:#ff8282d9;border-color:#ff828233}.admin-toolbar__btn--logout:hover{background:#ff64641f;border-color:#ff646466}.admin-toolbar__btn--link{color:var(--doc-muted);border-color:#0000;text-decoration:none}.admin-toolbar__btn--link:hover{color:var(--doc-text)}.admin-toolbar__status{color:#8af2b8d9;padding:0 .25rem;font-size:.75rem}.admin-toolbar__spacer{flex:1}.admin-editable{color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;background:0 0;border:1px dashed #6ea8ff40;border-radius:6px;outline:none;width:100%;padding:.2em .35em;transition:border-color .16s,background .16s,box-shadow .16s}.admin-editable:hover{background:#6ea8ff0a;border-color:#6ea8ff73}.admin-editable--focused,.admin-editable:focus{background:#0a1220cc;border-color:#6ea8ff99;box-shadow:0 0 0 3px #6ea8ff1f}.admin-editable-list{gap:.4rem;display:grid}.admin-list-item{align-items:center;gap:.5rem;padding:.15rem 0;display:flex}.admin-list-input{flex:1}.admin-list-remove{color:#ff8282cc;cursor:pointer;background:#ff64641a;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:1rem;transition:all .14s;display:flex}.admin-list-remove:hover{color:#f88;background:#ff646433}.admin-list-add{color:#6ea8ffcc;cursor:pointer;background:#6ea8ff0d;border:1px dashed #6ea8ff4d;border-radius:8px;justify-content:center;align-items:center;gap:.3rem;padding:.35rem .75rem;font-size:.82rem;font-weight:600;transition:all .16s;display:inline-flex}.admin-list-add:hover{color:#9ec9ff;background:#6ea8ff1f;border-color:#6ea8ff80}.admin-badge-editor{gap:.5rem;display:grid}.admin-badge-editable{gap:.3rem;padding-right:.4rem}.admin-badge-remove{color:#ff8282b3;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:.9rem;line-height:1;transition:color .14s}.admin-badge-remove:hover{color:#f88}.admin-badge-add{align-items:center;gap:.35rem;display:flex}.admin-badge-add .admin-editable{width:160px;padding:.25rem .5rem;font-size:.85rem}.admin-contact-label{gap:4px;display:grid}.admin-contact-links{gap:6px;display:grid}.admin-contact-links__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-contact-links__row .admin-editable--small{flex:140px;min-width:0}.admin-contact-resume{gap:4px;display:grid}.admin-contact-resume__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-contact-resume__url{word-break:break-all;max-width:280px;font-size:.8rem}body:has(.admin-toolbar) main{padding-bottom:4rem}.lang-toggle{-webkit-backdrop-filter:blur(8px);background:#080e1899;border:1px solid #6ea8ff33;border-radius:20px;flex-shrink:0;align-items:center;padding:3px;display:inline-flex;position:relative}.lang-toggle__thumb{pointer-events:none;background:#6ea8ff2e;border:1px solid #6ea8ff73;border-radius:16px;width:calc(50% - 3px);transition:transform .24s cubic-bezier(.32,.72,0,1);position:absolute;top:3px;bottom:3px;left:3px}.lang-toggle__thumb--en{transform:translate(100%)}.lang-toggle__option{z-index:1;color:#edf2ff73;letter-spacing:.08em;text-align:center;cursor:pointer;background:0 0;border:none;width:42px;padding:5px 0;font-size:.72rem;font-weight:600;line-height:1;transition:color .18s;position:relative}.lang-toggle__option--active{color:#edf2ff;cursor:default}.lang-toggle__option:not(.lang-toggle__option--active):hover{color:#edf2ffc7}.admin-bilingual{gap:4px;display:grid}.admin-bilingual--compact{gap:3px;display:grid}.admin-bilingual__label{opacity:.6;margin-bottom:2px;font-size:.7rem}.admin-editable.admin-editable--en,textarea.admin-editable--en{border-color:#50c8784d}.admin-editable--en::placeholder{color:#50c87866}.company-works{flex-direction:column;gap:2rem;margin:2rem 0 3rem;display:flex}.company-work-card{background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;transition:border-color .3s;position:relative;overflow:hidden}.company-work-card__drag-handle{z-index:5;opacity:0;transition:opacity .2s;position:absolute;top:8px;left:8px}.company-work-card:hover .company-work-card__drag-handle,.company-work-card__drag-handle:focus-visible{opacity:1}.company-work-card:hover{border-color:#ffffff26}.company-work-card__media{width:100%;line-height:0;position:relative}.company-work-card__video{aspect-ratio:21/9;object-fit:cover;width:100%;transition:transform .6s;display:block}.company-work-card:hover .company-work-card__video{transform:scale(1.02)}.company-work-card__placeholder{aspect-ratio:21/9;background:#ffffff0a;justify-content:center;align-items:center;width:100%;font-size:1.1rem;display:flex}.company-work-card__info{justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.4rem;display:flex}.company-work-card__title{letter-spacing:.02em;margin:0;font-size:1.35rem;font-weight:600}.contact-info{border-top:1px solid #ffffff14;margin-top:2rem;padding-top:2rem}.contact-info__links{flex-wrap:wrap;gap:12px;margin-top:12px;display:flex}@media (max-width:600px){.company-work-card__video,.company-work-card__placeholder{aspect-ratio:16/9}.company-work-card__title{font-size:1.1rem}.company-work-card__info{padding:.8rem 1rem}}.login-page{min-height:100vh;position:relative;overflow:hidden}.login-page__bg-canvas{z-index:0;opacity:.45;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}.login-page__admin-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.login-page__content{z-index:1;flex-direction:column;justify-content:center;align-items:stretch;gap:20px;max-width:520px;min-height:100vh;margin:0 auto;padding:clamp(1.5rem,5vw,4rem) clamp(1rem,3vw,2rem);display:flex;position:relative}.login-page__card{border-radius:16px;padding:2rem;transition:all .3s}.login-page__card--glass{-webkit-backdrop-filter:blur(20px)saturate(1.4);background:#090b10b3;border:1px solid #00ff4114;box-shadow:0 8px 40px #00000080,inset 0 1px #00ff410d}.ascii-toggle-btn{color:#00ff4199;cursor:pointer;background:#00ff410f;border:1px solid #00ff4126;border-radius:6px;padding:4px 12px;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:12px;transition:all .18s}.ascii-toggle-btn:hover{color:#00ff41;background:#00ff411a;border-color:#00ff4166}.ascii-generator{gap:12px;animation:.3s ease-out asciiGenSlide;display:grid}@keyframes asciiGenSlide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.ascii-generator__controls{-webkit-backdrop-filter:blur(12px);background:#090b1099;border:1px solid #00ff4114;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;display:flex}.ascii-generator__control{color:var(--muted);align-items:center;gap:6px;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:12px;display:flex}.ascii-generator__control input[type=range]{accent-color:#00ff41;width:80px}.ascii-generator__val{color:#00ff41b3;font-variant-numeric:tabular-nums;min-width:28px;font-size:11px}.ascii-generator__select{color:var(--text);background:#090c12cc;border:1px solid #00ff4126;border-radius:6px;padding:2px 6px;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:12px}.ascii-generator__reset-btn{color:#00ff41b3;cursor:pointer;background:#00ff4114;border:1px solid #00ff4133;border-radius:6px;padding:4px 10px;font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:12px;transition:all .18s}.ascii-generator__reset-btn:hover{color:#00ff41;border-color:#00ff4166}.layout-type-toggle{z-index:51;-webkit-backdrop-filter:blur(6px);background:#0a0a0eb3;border:1px solid #ffffff1f;border-radius:8px;justify-content:center;gap:0;width:fit-content;margin:5rem auto 0;display:flex;position:relative;overflow:hidden}.layout-type-toggle__btn{color:#ffffff80;cursor:pointer;background:0 0;border:none;padding:.5rem 1.2rem;font-size:.82rem;transition:all .2s}.layout-type-toggle__btn--active{color:#fff;background:#ffffff1a}.layout-type-toggle__btn:hover:not(.layout-type-toggle__btn--active){background:#ffffff0d}.freeform-page{max-width:860px;margin:0 auto}.freeform-page__breadcrumb{flex-wrap:wrap;align-items:center;gap:.3rem;margin-bottom:.5rem;font-size:.82rem;display:flex}.freeform-page__breadcrumb a{opacity:.7;text-decoration:none}.freeform-page__breadcrumb a:hover{opacity:1;text-decoration:underline}.freeform-page__back{margin-bottom:1.5rem;font-size:.85rem;text-decoration:none;display:inline-block}.freeform-page__back:hover{text-decoration:underline}.freeform-page__header{margin-bottom:2rem}.freeform-page__title{margin:0 0 .5rem}.freeform-page__oneline{margin:0}.freeform-page__hero{border-radius:12px;margin-bottom:2rem;overflow:hidden}.freeform-page__blocks{flex-direction:column;gap:0;display:flex}.freeform-block{margin-bottom:1rem}.freeform-block--text{line-height:1.75}.freeform-block--heading{margin-top:1.5rem}.freeform-divider{border:none;border-top:1px solid #ffffff1a;margin:2rem 0}.freeform-media__asset{border-radius:8px;width:100%;display:block}.freeform-media__caption{text-align:center;margin-top:.5rem;font-size:.82rem}.freeform-block--code{border-radius:8px;overflow:hidden}.freeform-code__caption{margin-top:.25rem;font-size:.8rem}.freeform-callout{border-left:3px solid;border-radius:8px;gap:.75rem;margin-bottom:1rem;padding:1rem 1.25rem;display:flex}.freeform-callout--info{background:#3b82f614;border-color:#3b82f6}.freeform-callout--warning{background:#f59e0b14;border-color:#f59e0b}.freeform-callout--tip{background:#22c55e14;border-color:#22c55e}.freeform-callout--note{background:#a8a29e14;border-color:#a8a29e}.freeform-callout__icon{flex-shrink:0;font-size:1.2rem;line-height:1.5}.freeform-callout__body{flex:1;min-width:0}.freeform-callout__body p{margin:0}.freeform-toggle{margin-bottom:1rem}.freeform-toggle__summary{cursor:pointer;-webkit-user-select:none;user-select:none;padding:.5rem 0;font-weight:600;list-style:none}.freeform-toggle__summary:before{content:"▶ ";font-size:.7em;transition:transform .2s;display:inline-block}.freeform-toggle[open]>.freeform-toggle__summary:before{transform:rotate(90deg)}.freeform-toggle__content{border-left:2px solid #ffffff14;margin-top:.5rem;padding-left:1.2rem}.freeform-columns{gap:1.5rem;margin-bottom:1rem;display:grid}.freeform-columns__col{min-width:0}.freeform-section{border-top:1px solid #ffffff0f;padding:1.5rem 0}.freeform-section h2{margin:0 0 1rem;font-size:1.5rem}.freeform-section h3{margin:1rem 0 .5rem;font-size:1.1rem}.freeform-approach__candidates{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin:1rem 0;display:grid}.freeform-approach__card{background:#ffffff08;border:1px solid #ffffff14;border-radius:8px;padding:1rem}.freeform-approach__card--chosen{background:#22c55e0d;border-color:#22c55e}.freeform-approach__badge{color:#000;background:#22c55e;border-radius:4px;margin-left:.5rem;padding:.15rem .5rem;font-size:.7rem;font-weight:700}.freeform-approach__pros li::marker{content:"✓ ";color:#22c55e}.freeform-approach__cons li::marker{content:"✗ ";color:#ef4444}.freeform-approach__reason{margin-top:1rem}.freeform-steps{counter-reset:step;padding-left:0;list-style:none}.freeform-step{margin-bottom:2rem}.freeform-step:before{counter-increment:step}.freeform-validation__table-wrap{overflow-x:auto}.freeform-validation__table{border-collapse:collapse;width:100%;font-size:.85rem}.freeform-validation__table th,.freeform-validation__table td{text-align:left;border:1px solid #ffffff14;padding:.5rem .75rem}.freeform-validation__table th{background:#ffffff0a;font-weight:600}.freeform-ba__pair{margin-bottom:2rem}.freeform-ba__grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.freeform-work-item-card{color:var(--text);background:#080e1899;border:1px solid #6ea8ff2e;border-radius:10px;align-items:center;gap:14px;margin-block:.25rem;padding:14px 16px;text-decoration:none;transition:border-color .2s,background .2s;display:flex}.freeform-work-item-card:hover{background:#6ea8ff0f;border-color:#6ea8ff73}.freeform-work-item-card__thumb{border-radius:6px;flex-shrink:0;width:64px;height:48px;overflow:hidden}.freeform-work-item-card__thumb img{object-fit:cover;width:100%;height:100%;display:block}.freeform-work-item-card__body{flex:1;gap:3px;min-width:0;display:grid}.freeform-work-item-card__label{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);opacity:.7;font-size:10px}.freeform-work-item-card__title{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.freeform-work-item-card__one-line{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:12px;overflow:hidden}.freeform-work-item-card__arrow{color:var(--muted);flex-shrink:0;font-size:16px;transition:transform .2s}.freeform-work-item-card:hover .freeform-work-item-card__arrow{transform:translate(4px)}.block-editor{flex-direction:column;gap:0;margin-top:1rem;display:flex}.block-editor__empty{text-align:center;border:2px dashed #ffffff1a;border-radius:12px;padding:3rem 1rem}.block-editor__item{background:#ffffff05;border:1px solid #ffffff0f;border-radius:8px;transition:border-color .2s;position:relative}.block-editor__item:hover{border-color:#ffffff26}.block-editor__toolbar{border-bottom:1px solid #ffffff0d;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.75rem;display:flex}.block-editor__drag{cursor:grab}.block-editor__type-label{opacity:.4;text-transform:uppercase;letter-spacing:.05em;flex:1;font-size:.65rem}.block-editor__action{color:#fff6;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.15rem .35rem;font-size:.85rem;line-height:1}.block-editor__action:hover{color:#fff;background:#ffffff14}.block-editor__action--danger:hover{color:#ef4444;background:#ef444426}.block-editor__content{padding:.75rem}.block-insert-row{justify-content:center;align-items:center;height:28px;display:flex;position:relative}.block-insert-row__btn{color:#ffffff4d;cursor:pointer;opacity:0;background:0 0;border:1px dashed #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:1rem;line-height:1;transition:all .2s;display:flex}@media (hover:hover){.block-insert-row:hover .block-insert-row__btn{opacity:1}}@media (hover:none){.block-insert-row__btn{opacity:.5}}.block-insert-row__btn:focus-visible{opacity:1}.block-insert-row__btn:hover{color:#fff;background:#ffffff0f;border-color:#fff6}.slash-menu{z-index:var(--z-popup);background:#1a1a1a;border:1px solid #ffffff1f;border-radius:10px;width:min(320px,100vw - 2rem);max-height:min(400px,60vh);padding:.4rem;position:absolute;top:100%;left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 8px 32px #00000080}.slash-menu__search{color:#fff;background:0 0;border:none;border-bottom:1px solid #ffffff14;outline:none;width:100%;padding:.5rem .75rem;font-size:.85rem}.slash-menu__search::placeholder{color:#ffffff4d}.slash-menu__list{padding:.25rem 0}.slash-menu__group-label{text-transform:uppercase;letter-spacing:.08em;color:#ffffff4d;padding:.5rem .75rem .25rem;font-size:.65rem}.slash-menu__item{color:#ffffffd9;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:.6rem;width:100%;padding:.45rem .75rem;font-size:.82rem;display:flex}.slash-menu__item:hover,.slash-menu__item--active{background:#ffffff14}.slash-menu__icon{text-align:center;flex-shrink:0;width:22px;font-size:.9rem}.slash-menu__label{flex:1}.slash-menu__label-en{font-size:.72rem}.slash-menu__empty{text-align:center;padding:1rem;font-size:.82rem}.block-edit-text__textarea,.block-edit-code__textarea,.block-edit-callout__textarea{color:#fff;resize:none;background:#ffffff08;border:1px solid #ffffff14;border-radius:6px;width:100%;padding:.6rem .75rem;font-family:inherit;font-size:.88rem;line-height:1.6;overflow:hidden}.block-edit-code__textarea{font-family:ui-monospace,JetBrains Mono,Consolas,monospace;font-size:.82rem}.block-edit-text__textarea:focus,.block-edit-code__textarea:focus,.block-edit-callout__textarea:focus{border-color:#fff3;outline:none}.block-edit-text__preview{border-top:1px dashed #ffffff0f;margin-top:.5rem;padding:.5rem;font-size:.88rem}.block-edit-code__preview{margin-top:.5rem}.block-edit-heading__controls{gap:.25rem;margin-bottom:.4rem;display:flex}.block-edit-heading__level{color:#ffffff80;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:4px;padding:.2rem .6rem;font-size:.75rem}.block-edit-heading__level--active{color:#fff;background:#ffffff1a;border-color:#ffffff40}.block-edit-heading__input{color:#fff;background:0 0;border:none;border-bottom:1px solid #ffffff14;outline:none;width:100%;padding:.3rem 0;font-weight:700}.block-edit-heading__input::placeholder{color:#fff3}.block-edit-media__input{color:#fff;background:#ffffff08;border:1px solid #ffffff14;border-radius:6px;width:100%;margin-top:.4rem;padding:.4rem .6rem;font-size:.82rem}.block-edit-media__input:focus{border-color:#fff3;outline:none}.block-edit-media__preview{border-radius:8px;margin-bottom:.5rem;overflow:hidden}.block-edit-code__lang{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:4px;margin-bottom:.4rem;padding:.25rem .5rem;font-size:.75rem}.block-edit-callout__type-row{gap:.25rem;margin-bottom:.5rem;display:flex}.block-edit-callout__type{color:#ffffff80;cursor:pointer;text-transform:capitalize;background:0 0;border:1px solid #ffffff1a;border-radius:4px;padding:.2rem .6rem;font-size:.72rem}.block-edit-callout__type--active{color:#fff;background:#ffffff1a}.block-edit-markdown__bar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.4rem;display:flex}.block-edit-markdown__toggle{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:4px;padding:.2rem .55rem;font-size:.72rem}.block-edit-markdown__toggle--active{color:var(--text);background:#6ea8ff26;border-color:#6ea8ff59}.block-edit-markdown__input-wrap{position:relative}.block-edit-markdown__slash{z-index:var(--z-overlay);margin-top:4px;position:absolute;top:100%;left:0}.block-edit-text__preview--solo{background:#ffffff05;border:1px solid #ffffff0f;border-radius:8px;margin-top:0;padding:.75rem}.block-edit-media-field{gap:.5rem;display:grid}.block-structured{padding:.5rem 0}.block-structured__title{color:var(--doc-title);margin:0 0 .75rem;font-size:1.35rem}.block-structured__card{background:#ffffff05;border:1px solid #ffffff14;border-radius:8px;margin-bottom:.75rem;padding:.75rem}.block-editor--nested .block-editor__item{border-color:#6ea8ff1f}.block-editor--nested .block-editor__toolbar{padding:.2rem .4rem}.block-insert-row--compact{margin:.15rem 0}.block-insert-row--compact .block-insert-row__btn{width:22px;height:22px;font-size:.85rem}.block-edit-columns__controls{align-items:center;gap:.35rem;margin-bottom:.75rem;display:flex}.block-edit-columns__grid{gap:1rem}.block-edit-columns__col{border:1px dashed #ffffff1a;border-radius:8px;min-width:0;padding:.5rem}@media (max-width:640px){.freeform-columns{grid-template-columns:1fr!important}.freeform-ba__grid,.freeform-approach__candidates{grid-template-columns:1fr}.freeform-validation__table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.block-editor__toolbar{flex-wrap:wrap;gap:.25rem}.block-editor__type-label{font-size:.65rem}}.confidential-wrap{cursor:not-allowed;position:relative}.confidential-overlay{z-index:10;border-radius:inherit;background:#000000b3;justify-content:center;align-items:center;transition:background .15s;display:flex;position:absolute;inset:0;overflow:hidden}.confidential-overlay img{pointer-events:none;filter:drop-shadow(0 0 12px #ff00004d)}.confidential-overlay:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#ff000008 2px 4px);animation:4s linear infinite conf-scanline;position:absolute;inset:0}@keyframes conf-scanline{0%{transform:translateY(0)}to{transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.user-text,.md,.md *,.tiptap-editor .ProseMirror,.tiptap-editor .ProseMirror *{font-family:var(--user-font,inherit)}.admin-settings-toggle{z-index:80;color:#ebf0fae6;cursor:pointer;background:#121a28eb;border:1px solid #6ea8ff73;border-radius:50%;width:44px;height:44px;font-size:20px;transition:transform .12s,background .12s;position:fixed;bottom:20px;right:20px;box-shadow:0 6px 20px #0006}.admin-settings-toggle:hover{background:#1c283cf2;transform:translateY(-1px)}.admin-settings-backdrop{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000008c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.admin-settings-modal{background:#121620fa;border:1px solid #ffffff1f;border-radius:14px;width:min(560px,100%);max-height:calc(100vh - 48px);overflow-y:auto;box-shadow:0 24px 60px #0000008c}.admin-settings-modal__header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.admin-settings-modal__title{color:#fff;margin:0;font-size:1rem;font-weight:700}.admin-settings-modal__close{color:#ffffffb3;cursor:pointer;background:0 0;border:0;border-radius:6px;width:28px;height:28px;font-size:14px}.admin-settings-modal__close:hover{color:#fff;background:#ffffff14}.admin-settings-modal__body{flex-direction:column;gap:20px;padding:18px;display:flex}.admin-settings-section__title{color:#ebf0faeb;margin:0 0 6px;font-size:.92rem;font-weight:700}.admin-settings-section__desc{margin:0 0 12px;font-size:.82rem;line-height:1.5}.admin-settings-font__current{flex-direction:column;gap:10px;display:flex}.admin-settings-font__preview{color:#f5fafff2;background:#6ea8ff0f;border:1px dashed #6ea8ff59;border-radius:8px;padding:14px 16px;font-size:1rem;line-height:1.5}.admin-settings-font__row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.admin-settings-font__label{flex-direction:column;flex:220px;gap:4px;display:flex}.admin-settings-font__input{color:#fff;background:#ffffff0f;border:1px solid #ffffff24;border-radius:6px;outline:none;height:32px;padding:0 10px;font-size:.85rem}.admin-settings-font__input:focus{background:#ffffff17;border-color:#6ea8ff99}.admin-settings-font__url{font-size:.78rem;text-decoration:none}.admin-settings-font__url:hover{color:#6ea8ffe6}.admin-settings-font__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-settings-font__remove{color:#ff7878e6;cursor:pointer;background:0 0;border:1px solid #ff787866;border-radius:6px;padding:6px 12px;font-size:.82rem;font-weight:600;transition:background .12s,color .12s}.admin-settings-font__remove:hover{color:#fff;background:#dc3c3cd9}.admin-settings-font__empty{justify-content:center;display:flex}.admin-settings-font__error{color:#ff9a9a;margin:0;font-size:.82rem}
