@font-face{font-family:BPmonoRound;src:url(/assets/BPmonoRound.otf)format("opentype");font-weight:400;font-style:normal}@font-face{font-family:BPmonoRound;src:url(/assets/BPmonoRoundBold.otf)format("opentype");font-weight:700;font-style:normal}:root{--white:#f5f5f5;--black:#0a0a0a;--mid:var(--black);--dim:var(--black);--faint:#0a0a0a0f;--display:"BPmonoRound", sans-serif;--mono:"BPmonoRound", monospace;--ease-expo:cubic-bezier(.16, 1, .3, 1);--ease-out:cubic-bezier(.25, 1, .5, 1)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0;cursor:none!important}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:pan-y;width:100%;font-size:16px;overflow-x:hidden}body{background:var(--white);color:var(--black);font-family:var(--display);cursor:none;-webkit-user-select:none;user-select:none;touch-action:pan-x pan-y;width:100%;height:100dvh;transition:filter .6s var(--ease-expo);position:relative;overflow:hidden}html{transition:filter .6s var(--ease-expo)}html.global-inverted{filter:invert()}@media (pointer:coarse){body{cursor:auto}.custom-cursor{display:none!important}}.custom-cursor{pointer-events:none;z-index:10000;mix-blend-mode:difference;transition:opacity .3s;position:fixed;transform:translate(-50%,-50%)}.cursor-circle{background:#fff;border-radius:50%;width:47px;height:47px;transition:width .4s cubic-bezier(.16,1,.3,1),height .4s cubic-bezier(.16,1,.3,1)}.custom-cursor.hovering .cursor-circle{width:67px;height:67px}nav{z-index:100;opacity:0;mix-blend-mode:difference;color:#fff;justify-content:space-between;align-items:center;padding:2.5rem 3.5rem;animation:1.2s .3s forwards fadeIn;display:flex;position:fixed;top:0;left:0;right:0}.logo{cursor:none;z-index:1001;-webkit-user-select:none;user-select:none}.navbar-logo-img{filter:invert();width:auto;height:20px;display:block}@media (max-width:600px){.navbar-logo-img{height:17px}nav{padding:2.2rem 2.8rem}}.nav-links{opacity:0;pointer-events:none;align-items:center;gap:2.5rem;transition:opacity 1s;display:flex}.nav-links.visible{opacity:1;pointer-events:all}.nav-link{font-family:var(--display);letter-spacing:.35em;text-transform:lowercase;color:#fff;cursor:none;transition:letter-spacing .5s var(--ease-expo), color .5s ease;background:0 0;border:none;outline:none;font-size:.72rem;font-weight:300;text-decoration:none;position:relative;overflow:visible}.nav-link:after{content:"";width:0;height:1.5px;transition:width .5s var(--ease-expo);pointer-events:none;z-index:10;background:#fff;position:absolute;bottom:-4px;left:0}.nav-link:hover{color:#fff}.nav-link:hover:after{width:100%}.skip-intro{font-family:var(--display);letter-spacing:.15em;text-transform:lowercase;color:#fff;mix-blend-mode:difference;z-index:2000;cursor:none;opacity:0;transition:letter-spacing .5s var(--ease-expo);background:0 0;border:none;outline:none;font-size:.68rem;font-weight:700;animation:1s 2s forwards fadeIn;position:fixed;bottom:2.5rem;right:3.5rem}.skip-intro:hover{letter-spacing:.45em}@media (max-width:768px){.skip-intro{bottom:2.2rem;right:2.5rem}}.screen{opacity:0;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;padding:2rem;transition:opacity .8s;display:flex;position:fixed;inset:0;overflow:hidden}#landingPage,#portfolioScreen{-webkit-overflow-scrolling:touch;padding:0;display:block;overflow:hidden auto}.screen.active{opacity:1;pointer-events:all}#hookScreen{z-index:10}.hook-center{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:90%;margin:0 auto;display:flex}.hook-text{font-family:var(--display);letter-spacing:.05em;color:var(--black);width:100%;min-height:4em;transition:letter-spacing .8s var(--ease-expo), color .8s ease;flex-wrap:wrap;justify-content:center;align-items:center;font-size:clamp(1.4rem,4.2vw,2.2rem);font-weight:300;line-height:1.4;display:flex;position:relative}.hook-text .text-content{word-break:break-word;white-space:normal;display:inline}.blank-word,strong{font-weight:700}.hook-text .text-content{opacity:0;transition:opacity .6s ease, transform .6s var(--ease-expo);white-space:nowrap;text-align:center;width:auto;position:absolute;transform:translateY(8px)}.hook-text .text-content.visible{opacity:1;transform:translateY(0)}.hook-text .text-content.exiting{opacity:0;transition:opacity .5s ease, transform .5s var(--ease-expo);transform:translateY(-8px)}.blank-word{font-family:var(--mono);color:var(--black);font-weight:700}.typing-mode{justify-content:center;align-items:center;display:flex!important}.typing-cursor{opacity:0;color:var(--black);margin-left:2px;font-weight:200;transition:opacity .1s;display:inline-block}.typing-cursor.visible{opacity:1}.hook-text.typing-mode .text-content{white-space:nowrap;display:inline-block;opacity:1!important;position:relative!important;transform:none!important}.fill-section{opacity:0;pointer-events:none;width:100%;max-width:700px;transition:opacity .8s ease, transform .8s var(--ease-expo);flex-direction:column;align-items:center;margin-top:1rem;display:flex;transform:translateY(15px)}.fill-section.visible{opacity:1;pointer-events:all;transform:translateY(0)}.fill-step{flex-direction:column;align-items:center;width:100%;display:flex}.fill-step.hidden{display:none}.fill-step.entering{animation:stepFadeIn .7s var(--ease-expo) forwards;display:flex}@keyframes stepFadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.fill-step.exiting{animation:.5s forwards stepFadeOut}@keyframes stepFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.fill-label{font-family:var(--display);letter-spacing:.06em;color:var(--black);transition:letter-spacing .8s var(--ease-expo), color .8s ease;margin-bottom:2.5rem;font-size:clamp(1.6rem,4.5vw,2.5rem);font-weight:300}.fill-input-wrap{width:min(520px,85vw);margin-bottom:2rem;position:relative}.fill-input{font-family:var(--mono);color:var(--black);text-align:center;letter-spacing:.04em;cursor:none;-webkit-user-select:auto;user-select:auto;text-transform:lowercase;background:0 0;border:none;border-bottom:2.5px solid #0a0a0a66;border-radius:0;outline:none;width:100%;padding:1rem 0;font-size:1.1rem;font-weight:400;transition:border-color .5s}.fill-input::placeholder{color:#0000}.fill-input:focus{border-color:#0a0a0a59}.fill-input-line{background:var(--black);width:0;height:2.5px;transition:width .6s var(--ease-expo), left .6s var(--ease-expo);z-index:10;position:absolute;bottom:0;left:50%}.fill-input:focus~.fill-input-line{width:100%;left:0}.fill-subtext{font-family:var(--display);letter-spacing:.15em;color:var(--mid);text-align:center;opacity:0;transition:opacity .7s ease .3s, transform .7s var(--ease-expo) .3s;font-size:.72rem;font-weight:300;line-height:1.7;transform:translateY(8px)}.fill-section.visible .fill-subtext{opacity:1;transform:translateY(0)}.fill-submit{font-family:var(--display);letter-spacing:.35em;text-transform:lowercase;color:var(--white);background:var(--black);cursor:none;opacity:0;pointer-events:none;transition:letter-spacing .5s var(--ease-expo), opacity .5s ease;border:none;outline:none;margin-top:2.5rem;padding:1.1rem 3.5rem;font-size:.78rem;font-weight:300}.fill-submit.visible{opacity:1;pointer-events:all}.fill-submit:hover{letter-spacing:.55em}.just-looking{font-family:var(--display);letter-spacing:.15em;text-transform:lowercase;color:var(--black);cursor:none;transition:color .4s ease, letter-spacing .5s var(--ease-expo);opacity:0;transition:opacity .7s ease .5s, transform .7s var(--ease-expo) .5s, color .4s ease;background:0 0;border:none;outline:none;margin-top:3rem;font-size:.68rem;font-weight:700;transform:translateY(8px)}.fill-section.visible .just-looking{opacity:1;transform:translateY(0)}.just-looking:hover{color:var(--black)}#portfolioScreen{z-index:8;-webkit-overflow-scrolling:touch;padding:0;display:block;overflow:hidden scroll}#portfolioScreen.active{pointer-events:all}.portfolio-intro{font-family:var(--display);letter-spacing:.3em;text-transform:lowercase;color:var(--black);text-align:center;margin:6rem auto 3rem;font-size:.8rem;font-weight:300}.portfolio-words{flex-direction:column;align-items:center;width:100%;max-width:900px;margin:0 auto;padding:0 2rem 8rem;display:flex}.portfolio-fine-tuning{font-family:var(--display);letter-spacing:.04em;color:var(--black);text-align:center;width:100%;margin-top:5vh;font-size:clamp(1.6rem,4.5vw,2.5rem);font-weight:300;line-height:1.5}.portfolio-word{font-family:var(--display);letter-spacing:.12em;text-transform:lowercase;color:var(--black);cursor:none;transition:letter-spacing .6s var(--ease-expo), color .4s ease;opacity:0;padding:.3rem 1rem;font-size:clamp(2.2rem,7vw,5.5rem);font-weight:300;position:relative;transform:translateY(20px)}.portfolio-fine-tuning{font-family:var(--display);letter-spacing:.12em;text-transform:lowercase;color:var(--black);text-align:center;opacity:1;max-width:500px;font-size:clamp(1rem,2.5vw,1.4rem);font-weight:300;line-height:1.8}.portfolio-word:after{content:"";background:var(--black);height:2px;transition:transform .5s var(--ease-expo);transform-origin:0;position:absolute;bottom:.1em;left:1rem;right:1rem;transform:scaleX(0)}.portfolio-word:hover{letter-spacing:.25em;color:var(--dim)}.portfolio-word:hover:after{transform:scaleX(1)}.portfolio-word.revealed{opacity:1;transition:opacity .8s ease, transform .8s var(--ease-expo), letter-spacing .6s var(--ease-expo), color .4s ease;transform:translateY(0)}#explosionCanvas{z-index:200;pointer-events:none;opacity:0;width:100%;height:100%;transition:opacity .3s;position:fixed;top:0;left:0}#explosionCanvas.active{opacity:1}.project-view{z-index:150;-webkit-overflow-scrolling:touch;opacity:0;pointer-events:none;transition:opacity .6s .8s;position:fixed;inset:0;overflow-y:auto}.project-view.active{opacity:1;pointer-events:all}.project-view-bg{z-index:-1;position:fixed;inset:0}.project-view-content{opacity:0;max-width:720px;transition:opacity .6s ease 1s, transform .6s var(--ease-expo) 1s;margin:0 auto;padding:14vh 2rem 10vh;transform:translateY(30px)}.project-view.active .project-view-content{opacity:1;transform:translateY(0)}.pv-label{font-family:var(--mono);letter-spacing:.15em;text-transform:lowercase;margin-bottom:2rem;font-size:.72rem}.pv-title{font-family:var(--display);letter-spacing:.05em;text-transform:lowercase;transition:letter-spacing .8s var(--ease-expo), color .8s ease;margin-bottom:.8rem;font-size:clamp(2.8rem,7vw,5rem);font-weight:300;line-height:1.1}.pv-tagline{font-family:var(--display);letter-spacing:.08em;opacity:.5;margin-bottom:4rem;font-size:1.1rem;font-weight:300}.pv-body p{font-family:var(--display);letter-spacing:.02em;opacity:.75;margin-bottom:2rem;font-size:.95rem;font-weight:300;line-height:2.1}.pv-body em{opacity:1;font-style:italic}.pv-divider{opacity:.3;width:60px;height:1px;margin:3rem 0}.pv-metrics{flex-wrap:wrap;gap:4rem;margin:3.5rem 0;display:flex}.pv-metric-val{font-family:var(--display);letter-spacing:-.02em;font-size:3.2rem;font-weight:300;line-height:1}.pv-metric-label{font-family:var(--mono);letter-spacing:.12em;text-transform:lowercase;opacity:.5;margin-top:.4rem;font-size:.65rem}.pv-close{z-index:160;cursor:none;font-family:var(--mono);letter-spacing:.15em;text-transform:lowercase;opacity:0;color:var(--mid);background:0 0;border:none;outline:none;padding:.5rem;font-size:.75rem;transition:opacity .4s 1.2s;position:fixed;top:2.5rem;right:3.5rem}.project-view.active .pv-close{opacity:.5}.pv-close:hover{opacity:1!important}#landingPage{z-index:90;background:var(--white);-webkit-overflow-scrolling:touch;padding:0;display:block;overflow-y:scroll}#landingPage.active{pointer-events:all}.landing-scroll{width:100%;display:block;position:relative}.landing-hero{text-align:center;opacity:0;width:100%;min-height:100dvh;transition:opacity .8s ease .3s, transform .8s var(--ease-expo) .3s;flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex;overflow-x:hidden;transform:translateY(20px)}#landingPage.active .landing-hero{opacity:1;transform:translateY(0)}.hero-logo-img{width:auto;height:32px;display:block}@media (max-width:600px){.hero-logo-img{height:26px}}.landing-logo{margin-bottom:2.5rem}.landing-divider{display:none}.landing-welcome{font-family:var(--display);transition:letter-spacing .8s var(--ease-expo), color .8s ease;justify-content:center;align-items:center;margin-bottom:2rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:300;display:flex}.landing-welcome-sub{font-family:var(--display);letter-spacing:.05em;color:var(--black);opacity:1;max-width:500px;margin-bottom:3rem;font-size:clamp(.85rem,2vw,1.05rem);font-weight:300;line-height:1.8}.landing-scroll-cue{font-family:var(--mono);letter-spacing:.2em;text-transform:lowercase;color:var(--black);opacity:1;font-size:.6rem;animation:2.5s infinite gentlePulse}@keyframes gentlePulse{0%,to{opacity:.5}50%{opacity:.2}}.landing-section{opacity:0;width:100%;transition:opacity 1s ease, transform 1s var(--ease-expo), background 1s ease;padding:8rem 0;transform:translateY(30px)}.ls-content{max-width:640px;margin:0 auto;padding:0 2rem}.landing-section.in-view{opacity:1;transform:translateY(0)}.landing-section.ls-dark{background:var(--black)!important;color:var(--white)!important}.landing-section.ls-dark .ls-title,.landing-section.ls-dark .ls-number,.landing-section.ls-dark .ls-body,.landing-section.ls-dark .ls-list li{color:var(--white)!important;opacity:1!important}.landing-section.ls-dark .ls-divider{opacity:.2;background:var(--white)!important}.landing-section.ls-dark .ls-list li:before{background:var(--white)!important}.ls-number{font-family:var(--mono);letter-spacing:.2em;color:var(--black);opacity:1;margin-bottom:1.5rem;font-size:.65rem}.ls-title{font-family:var(--display);letter-spacing:.04em;color:var(--black);transition:letter-spacing .8s var(--ease-expo), color .8s ease;margin-bottom:2rem;font-size:clamp(1.5rem,3.5vw,2.2rem);font-weight:300;line-height:1.4}.ls-body{font-family:var(--display);color:var(--black);letter-spacing:-.01em;font-size:.95rem;font-weight:400;line-height:1.8}.ls-body p{margin-bottom:1.5rem}.ls-divider{background:var(--black);opacity:.08;width:40px;height:1px;margin:2rem 0}.ls-list{padding:0;list-style:none}.ls-list li{font-family:var(--display);color:var(--black);opacity:1;letter-spacing:.015em;padding-left:1.2rem;font-size:.88rem;font-weight:300;line-height:2.2;position:relative}.ls-list li:before{content:"";background:var(--black);opacity:.3;width:4px;height:1px;position:absolute;top:.95em;left:0}.landing-cta-section{text-align:center;opacity:0;transition:opacity .7s ease, transform .7s var(--ease-expo);flex-direction:column;align-items:center;padding:8rem 2rem 10rem;display:flex;transform:translateY(30px)}.landing-cta-section.in-view{opacity:1;transform:translateY(0)}.landing-cta-line{background:linear-gradient(to bottom, transparent, var(--black));opacity:.12;width:1px;height:60px;margin-bottom:3rem}.landing-cta-text{font-family:var(--display);letter-spacing:.06em;color:var(--black);margin-bottom:2.5rem;font-size:clamp(1.3rem,3vw,1.8rem);font-weight:300}.landing-cta-btn{font-family:var(--display);letter-spacing:.35em;text-transform:lowercase;color:var(--white);background:var(--black);cursor:none;transition:letter-spacing .5s var(--ease-expo);border:none;outline:none;padding:1.2rem 3.5rem;font-size:.78rem;font-weight:300}.landing-cta-btn:hover{letter-spacing:.55em}.landing-footer-new{background:var(--white);text-align:center;opacity:0;width:100%;transition:opacity 1s ease, transform 1s var(--ease-expo);flex-direction:column;align-items:center;padding:10rem 2rem 5rem;display:flex;transform:translateY(20px)}.landing-footer-new.in-view{opacity:1;transform:translateY(0)}.footer-hi{font-family:var(--display);letter-spacing:.05em;color:var(--black);margin-bottom:5rem;font-size:clamp(1.2rem,3vw,1.8rem);font-weight:300}.footer-hi a{color:inherit;border-bottom:2px solid var(--black);transition:letter-spacing .5s var(--ease-expo);padding-bottom:2px;text-decoration:none}.footer-hi a:hover{letter-spacing:.15em}.footer-tagline{font-family:var(--mono);letter-spacing:.15em;color:var(--black);opacity:1;text-transform:lowercase;font-size:.65rem}body.breathing .portfolio-word,body.breathing .landing-welcome,body.breathing .ls-title,body.breathing .pv-title,body.breathing .fill-label,body.breathing .hook-text{letter-spacing:.35em!important;color:var(--mid)!important;transition:letter-spacing 1.5s var(--ease-expo), color 1.5s ease!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:768px){nav{padding:1.8rem}.nav-links{gap:1.5rem}.portfolio-word{letter-spacing:.06em}.portfolio-word:hover{letter-spacing:.15em}.pv-close{top:1.8rem;right:1.8rem}.landing-section{padding:5rem 1.5rem}.hook-text{min-height:8em;padding:0 1rem;font-size:1.25rem;line-height:1.6}.hook-text .text-content{width:100%;max-width:85vw;white-space:normal!important}.hook-text.typing-mode .text-content{display:inline;white-space:normal!important}}@media (max-width:480px){.pv-metrics{gap:2rem}.hook-text{font-size:1.15rem}}.q-page{color:#fff;min-height:100dvh;font-family:var(--display);background:#2a2a2a;flex-direction:column;margin:0;padding:0;display:flex}.q-topbar{z-index:100;justify-content:space-between;align-items:center;padding:2rem 3.5rem;display:flex}.q-logo{filter:invert();width:auto;height:20px}.q-topbar-client{font-family:var(--mono);letter-spacing:.1em;opacity:.6;font-size:.8rem}.q-body{flex-direction:column;flex:1;gap:4rem;width:100%;max-width:800px;margin:0 auto;padding:0 2rem;display:flex}.q-section{flex-direction:column;gap:1.5rem;display:flex}.q-section-label{letter-spacing:.02em;font-size:1.5rem;font-weight:300}.q-section-sub,.q-section-meta{opacity:.6;font-size:.9rem}.q-optional{opacity:.5;font-size:.9em}.q-textarea{color:#fff;font-family:var(--display);resize:vertical;background:0 0;border:1px solid #ffffff1a;border-radius:8px;outline:none;padding:1.5rem;font-size:1rem;transition:border-color .3s}.q-textarea:focus{border-color:#ffffff4d}.q-style-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.q-style-card{text-align:left;color:#fff;cursor:none;background:0 0;border:1px solid #ffffff1a;border-radius:8px;flex-direction:column;gap:.5rem;padding:1.5rem;transition:all .3s;display:flex}.q-style-card:hover{background:#ffffff08}.q-style-card.selected{background:#ffffff0d;border-color:#fff}.q-style-icon{margin-bottom:.5rem;font-size:1.5rem}.q-style-label{font-size:1.1rem;font-weight:700}.q-style-sub{opacity:.5;font-size:.8rem}.q-templates-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem;display:grid}.q-template-card{cursor:none;text-align:left;background:0 0;border:none;border-radius:8px;margin:0;padding:0;position:relative;overflow:hidden}.q-template-img{aspect-ratio:16/9;object-fit:cover;border-radius:8px;width:100%;transition:transform .3s}.q-template-card.selected .q-template-img{outline-offset:-2px;outline:2px solid #fff}.q-template-check{color:#000;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;font-weight:700;display:flex;position:absolute;top:.5rem;right:.5rem}.q-template-label{color:#fff;opacity:.8;margin-top:.5rem;font-size:.9rem}.q-contact-fields{flex-direction:column;gap:1rem;display:flex}.q-input{color:#fff;font-family:var(--display);background:0 0;border:1px solid #ffffff1a;border-radius:8px;outline:none;padding:1rem 1.5rem;font-size:1rem;transition:border-color .3s}.q-input:focus{border-color:#ffffff4d}.q-error{color:#ff6b6b;font-size:.9rem}.q-body-spacer{height:120px}.q-bottombar{z-index:100;background:#2a2a2a;border-top:1px solid #ffffff1a;justify-content:flex-end;align-items:center;gap:1.5rem;padding:1.5rem 3.5rem;display:flex;position:fixed;bottom:0;left:0;right:0}.q-btn-skip{color:#fff;font-family:var(--display);cursor:none;background:0 0;border:1px solid #ffffff1a;border-radius:8px;padding:.8rem 1.5rem;transition:all .3s}.q-btn-skip:hover{background:#ffffff0d}.q-btn-submit{color:#000;font-family:var(--display);cursor:none;background:#fff;border:none;border-radius:8px;padding:.8rem 2rem;font-weight:700;transition:transform .2s}.q-btn-submit:hover{transform:scale(1.02)}.q-btn-submit:disabled{opacity:.7}.q-success-page{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:2rem;display:flex}.q-success-mark{color:#fff;margin-bottom:2rem;font-size:3rem}.q-success-title{margin-bottom:1rem;font-size:2.5rem}.q-success-sub{opacity:.7;margin-bottom:2rem;font-size:1.1rem;line-height:1.6}.q-success-sig{font-family:var(--mono);opacity:.5;font-size:.9rem}@media (max-width:768px){.q-style-grid{grid-template-columns:1fr}.q-topbar,.q-bottombar{padding:1.5rem 2rem}.q-body{padding:0 1.5rem}}.db-page{background:var(--white);min-height:100dvh;color:var(--black);font-family:var(--display);display:flex}.db-sidebar{background:var(--black);color:#fff;flex-direction:column;flex-shrink:0;width:250px;padding:2.5rem 2rem;display:flex}.db-sidebar-logo{filter:invert();width:auto;height:24px;margin-bottom:4rem}.db-nav{flex-direction:column;flex:1;gap:1rem;display:flex}.db-nav-item{color:#fff;opacity:.5;text-align:left;font-family:var(--mono);cursor:none;background:0 0;border:none;align-items:center;gap:.75rem;padding:.5rem 0;font-size:.85rem;transition:opacity .3s;display:flex}.db-nav-item.active{opacity:1}.db-nav-icon{font-size:1.2rem}.db-sidebar-footer{font-family:var(--mono);opacity:.4;font-size:.7rem;line-height:1.5}.db-main{flex:1;padding:4rem 5rem;overflow-y:auto}.db-section-head{align-items:baseline;gap:1rem;margin-bottom:2rem;display:flex}.db-section-title{letter-spacing:-.02em;font-size:2rem;font-weight:300}.db-count{font-family:var(--mono);opacity:.4;font-size:1rem}.db-card{background:#fff;border:1px solid #0000000d;border-radius:12px;padding:2.5rem;box-shadow:0 10px 40px -10px #0000000a}.db-row{gap:2rem;display:flex}.db-field{flex-direction:column;flex:1;gap:.5rem;margin-bottom:1.5rem;display:flex}.db-field-small{flex:.3}.db-label{font-family:var(--mono);letter-spacing:.05em;opacity:.5;font-size:.7rem}.db-input{font-family:var(--display);background:#00000008;border:1px solid #0000;border-radius:6px;outline:none;padding:.8rem 1rem;font-size:1rem;transition:all .2s}.db-input:focus{border-color:var(--black);background:#fff}.db-input-mono{font-family:var(--mono);font-size:.9rem}.db-tpl-picker{gap:1rem;padding-bottom:1rem;display:flex;overflow-x:auto}.db-tpl-pick-card{cursor:none;text-align:left;background:0 0;border:1px solid #0000;flex:0 0 150px;padding:0;position:relative}.db-tpl-pick-img{aspect-ratio:16/9;object-fit:cover;opacity:.5;border-radius:6px;width:100%;transition:all .2s}.db-tpl-pick-card.selected .db-tpl-pick-img{opacity:1;outline:2px solid var(--black);outline-offset:2px}.db-tpl-pick-label{opacity:.7;white-space:nowrap;text-overflow:ellipsis;margin-top:.5rem;font-size:.8rem;overflow:hidden}.db-tpl-pick-check{background:var(--black);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;display:flex;position:absolute;top:.5rem;right:.5rem}.db-row-btns{justify-content:flex-end;align-items:center;margin-top:2rem}.db-success-msg{color:#059669;font-size:.9rem}.db-btn-primary{background:var(--black);color:#fff;font-family:var(--mono);cursor:none;border:none;border-radius:6px;padding:.8rem 2rem;font-size:.8rem;transition:transform .2s}.db-btn-primary:active{transform:scale(.98)}.db-btn-primary.disabled{opacity:.5;pointer-events:none}.db-empty{opacity:.4;padding:2rem 0;font-style:italic}.db-links-list{flex-direction:column;gap:1rem;display:flex}.db-link-card{background:#fff;border:1px solid #0000000d;border-radius:12px;padding:1.5rem 2rem}.db-link-header{align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.db-link-name{font-size:1.25rem;font-weight:700}.db-link-id{font-family:var(--mono);opacity:.4;flex:1;font-size:.8rem}.db-link-date{opacity:.4;margin-bottom:1.5rem;font-size:.8rem}.db-delete-btn{color:#ef4444;cursor:none;opacity:.3;background:0 0;border:none;font-size:1.2rem;transition:opacity .2s}.db-link-card:hover .db-delete-btn{opacity:1}.db-link-url-row{background:#00000005;border-radius:6px;align-items:center;gap:1rem;margin-bottom:.5rem;padding:.75rem 1rem;display:flex}.db-link-lang{font-family:var(--mono);background:var(--black);color:#fff;border-radius:4px;padding:.2rem .4rem;font-size:.7rem;font-weight:700}.db-link-url{font-family:var(--mono);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.8rem;overflow:hidden}.db-copy-btn{border:1px solid var(--black);font-family:var(--mono);cursor:none;background:0 0;border-radius:4px;padding:.3rem .8rem;font-size:.7rem}.db-copy-btn:hover{background:var(--black);color:#fff}.db-link-tpl-row{gap:.5rem;margin-top:1rem;display:flex}.db-link-tpl-thumb{aspect-ratio:16/9;object-fit:cover;border-radius:4px;width:60px}.db-upload-zone{text-align:center;cursor:none;border:2px dashed #0000001a;border-radius:12px;margin-bottom:1.5rem;padding:3rem;transition:all .3s}.db-upload-zone.drag-over{border-color:var(--black);background:#00000005}.db-upload-icon{opacity:.3;margin-bottom:1rem;font-size:2rem}.db-upload-text{font-family:var(--mono);margin-bottom:.5rem;font-size:.9rem}.db-upload-sub{opacity:.4;font-size:.8rem}.db-error{color:#ef4444;margin-bottom:1rem;font-size:.9rem}.db-tpl-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;display:grid}.db-tpl-card{background:#fff;border:1px solid #0000000d;border-radius:12px;position:relative;overflow:hidden}.db-tpl-img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.db-tpl-footer{justify-content:space-between;align-items:center;padding:1rem;display:flex}.db-tpl-name{font-size:.9rem}.db-gate{background:var(--white);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;display:flex}.db-gate-logo{height:24px;margin-bottom:2rem}.db-gate-title{font-family:var(--mono);letter-spacing:.2em;opacity:.5;margin-bottom:3rem}.db-gate-form{flex-direction:column;gap:1rem;width:100%;max-width:300px;display:flex}.db-gate-input{font-family:var(--display);text-align:center;background:#fff;border:1px solid #0000001a;border-radius:8px;outline:none;padding:1rem}.db-gate-btn{background:var(--black);color:#fff;font-family:var(--display);cursor:none;border:none;border-radius:8px;padding:1rem}.db-gate-err{color:#ef4444;text-align:center;font-size:.8rem}.db-gate-form.shake{animation:.4s ease-in-out shake}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}
