:root{--bg: #0a0a0a;--bg-elevated: #111111;--bg-card: #161616;--border: #262626;--text: #fafafa;--text-muted: #a3a3a3;--accent: #ffffff;font-family:Outfit,DM Sans,system-ui,-apple-system,sans-serif;line-height:1.6;font-weight:400;color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}a{color:var(--text);text-decoration:none}a:hover{color:var(--accent)}button{font-family:inherit;cursor:pointer}#root{width:100%;min-height:100vh}.app{position:relative;width:100%;min-height:100vh;display:flex;flex-direction:column}@media(min-width:1024px){.app:has(.main-landing){height:100vh;overflow:hidden}.app:has(.main-dashboard){height:100vh;overflow:hidden}html:has(.app .main-dashboard){overflow:hidden}body:has(.app .main-dashboard){overflow:hidden}.app:has(.main-dashboard) .header{flex-shrink:0}.app:has(.main-dashboard) .main{flex:1;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center}.app:has(.main-dashboard) .dashboard{flex:0 1 auto;max-height:100%;overflow:hidden;padding:1.5rem 2rem;display:flex;flex-direction:column;align-items:center;justify-content:center}.app:has(.main-dashboard) .dashboard-inner{display:flex;flex-direction:column;align-items:center}.app:has(.main-dashboard) .dashboard.dashboard--centered{min-height:0}.app:has(.main-dashboard-plus) .main{justify-content:flex-start;align-items:center}.app:has(.main-dashboard-plus) .dashboard{justify-content:flex-start;align-items:center;padding-top:2rem}.app:has(.main-dashboard-plus) .dashboard-inner{display:flex;flex-direction:column;align-items:center;width:100%}.app:has(.main-project-view){height:100vh;overflow:hidden}html:has(.app .main-project-view){overflow:hidden}body:has(.app .main-project-view){overflow:hidden}.app:has(.main-project-view) .header{flex-shrink:0}.app:has(.main-project-view) .main{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:2rem}.app:has(.main-project-view) .project-detail{flex:1;min-height:0;width:100%;max-width:1200px;display:flex;flex-direction:column;align-items:stretch;padding:0}.app:has(.main-project-view) .project-detail-inner{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.app:has(.main-project-view) .project-detail--view-compact .project-detail-top{flex-shrink:0;overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:32vh}.app:has(.main-project-view) .project-messages{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.app:has(.main-project-view) .project-detail--view-compact .project-messages{margin-top:.5rem;padding-top:.6rem}.app:has(.main-project-view) .project-messages-list-wrap{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.app:has(.main-project-view) .project-messages-list{flex:1;min-height:0;max-height:none;overflow-y:auto}.app:has(.main-project-view) .project-detail-complete-btn{flex-shrink:0}.app:has(.main-project-view) .project-detail--chat-expanded .project-detail-top{display:none}}.app:has(.main-project-create){height:100vh;overflow:hidden}html:has(.app .main-project-create),body:has(.app .main-project-create){overflow:hidden}.app:has(.main-project-create) .footer{flex-shrink:0}.app:has(.main-project-create) .main{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;align-items:center;padding:1rem 1rem 2rem}.app:has(.main-project-create) .project-detail--create{width:100%;max-width:1200px;min-height:min-content;padding:0;flex-shrink:0}.app:has(.main-project-create) .project-detail--create .project-detail-inner{width:100%}.project-detail--chat-expanded .project-detail-top{display:none}.starfield{position:fixed;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none}.planet-mesh{position:fixed;inset:0;z-index:0;width:100%;height:100%;pointer-events:none}.center-plus{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;width:3.5rem;height:3.5rem;display:flex;align-items:center;justify-content:center;background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--text);cursor:pointer;transition:background .2s,transform .2s}.center-plus:hover{background:#ffffff26;transform:translate(-50%,-50%) scale(1.05)}.center-plus svg{width:1.5rem;height:1.5rem}.plus-modals-overlay{position:fixed;inset:0;z-index:100;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:2rem;animation:plusOverlayIn 1.4s cubic-bezier(.22,1,.36,1) both}.plus-modals{position:relative;display:flex;flex-direction:column;align-items:center;max-width:900px;width:100%;animation:plusModalsIn 1.4s cubic-bezier(.22,1,.36,1) .15s both}.plus-modals-title{font-size:1.5rem;font-weight:600;color:var(--text);margin:0 0 .375rem;text-align:center}.plus-modals-subtitle{font-size:.9375rem;color:var(--text-muted);margin:0 0 2rem;text-align:center;letter-spacing:.01em}@keyframes plusOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes plusModalsIn{0%{opacity:0;transform:scale(.92) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.plus-modals-overlay.plus-modals-closing{animation:plusOverlayOut .9s cubic-bezier(.22,1,.36,1) forwards}.plus-modals.plus-modals-minimize{animation:plusModalsOut .9s cubic-bezier(.22,1,.36,1) forwards}@keyframes plusOverlayOut{0%{opacity:1}to{opacity:0}}@keyframes plusModalsOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.85) translateY(30px)}}.plus-modals-close{position:absolute;top:-2.5rem;right:0;background:none;border:none;color:var(--text-muted);font-size:1.75rem;cursor:pointer}.plus-modals-close:hover{color:var(--text)}.plus-modals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;width:100%}@media(max-width:640px){.plus-modals-overlay{padding:1rem;overflow-y:auto}.plus-modals{max-width:100%}.plus-modals-title{font-size:1.25rem;margin-bottom:.25rem}.plus-modals-subtitle{font-size:.8125rem;margin-bottom:1.25rem}.plus-modals-grid{grid-template-columns:1fr;gap:.75rem;max-width:100%;margin:0 auto}.plus-modal{min-height:0;padding:1rem 1.25rem}.plus-modal-icon{width:2.25rem;height:2.25rem;margin-bottom:.75rem}.plus-modal-icon svg{width:1.125rem;height:1.125rem}.plus-modal-title{font-size:.9375rem;margin-bottom:.25rem}.plus-modal-desc{font-size:.8125rem;line-height:1.4}.plus-modals-close{top:-2rem;font-size:1.5rem}}.plus-modal{background:#161616d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:16px;min-height:200px;padding:2rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;cursor:pointer;font-family:inherit;color:var(--text);transition:border-color .3s,background .3s,transform .3s,box-shadow .3s}.plus-modal:hover{border-color:#ffffff40;background:#1c1c1cf2;transform:translateY(-4px);box-shadow:0 12px 32px #0006}.plus-modal:active{transform:translateY(-2px)}.plus-modal-icon{width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:var(--text);margin-bottom:1.25rem}.plus-modal-icon svg{width:1.5rem;height:1.5rem}.plus-modal-title{font-size:1.125rem;font-weight:600;color:var(--text);margin:0 0 .5rem;letter-spacing:.02em}.plus-modal-desc{font-size:.875rem;color:var(--text-muted);line-height:1.5;margin:0;letter-spacing:.01em}.plus-modals-grid .plus-modal:nth-child(1){animation:plusModalCardIn 1.4s cubic-bezier(.22,1,.36,1) .3s both}.plus-modals-grid .plus-modal:nth-child(2){animation:plusModalCardIn 1.4s cubic-bezier(.22,1,.36,1) .45s both}.plus-modals-grid .plus-modal:nth-child(3){animation:plusModalCardIn 1.4s cubic-bezier(.22,1,.36,1) .6s both}@keyframes plusModalCardIn{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.main{position:relative;z-index:1;flex:1;min-height:0}.main.main-landing{overflow:hidden;display:flex;flex-direction:column}.landing-viewport{position:relative;flex:1;min-height:0;overflow:hidden}.landing-section{position:absolute;inset:0;transition:opacity .6s cubic-bezier(.22,1,.36,1);overflow-y:auto}@media(min-width:1024px){.landing-section{overflow:hidden}}.landing-section.landing-active{opacity:1;pointer-events:auto;z-index:1}.landing-section.landing-inactive{opacity:0;pointer-events:none;z-index:0}.header{position:sticky;top:0;z-index:10;background:#0a0a0ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.nav{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;background:none;border:none;padding:0;cursor:pointer;transition:transform .3s ease}.logo:hover{transform:scale(1.05)}.logo.logo-animate{animation:logoClick .5s ease}@keyframes logoClick{0%{transform:scale(1)}40%{transform:scale(.92)}70%{transform:scale(1.06)}to{transform:scale(1)}}.logo-img{height:2.5rem;width:auto;display:block;pointer-events:none}.nav-link{font-size:.875rem;color:var(--text-muted);letter-spacing:.02em;transition:color .2s}.nav-link:hover{color:var(--text)}.nav-links{display:flex;align-items:center;gap:1.25rem}.btn-nav{position:relative;padding:.5rem 1.25rem;font-size:.8125rem;font-weight:500;background:transparent;color:var(--text);border:1px solid var(--border);border-radius:100px;letter-spacing:.04em;overflow:hidden;transition:color .35s,border-color .35s,background .35s,transform .3s}.btn-nav:hover{transform:translateY(-1px);border-color:#ffffff59}.btn-nav:active{transform:translateY(0)}.btn-nav:focus-visible{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.btn-nav--login{padding:.5rem .5rem .5rem 0;background:none;border:none;border-radius:0;font-family:Bebas Neue,DM Sans,sans-serif;font-size:1.75rem;font-weight:400;letter-spacing:.12em;color:var(--text-muted);overflow:visible}.btn-nav--login .btn-nav-text{position:relative;display:inline-block}.btn-nav--login .btn-nav-text:after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:linear-gradient(90deg,var(--text) 0%,rgba(255,255,255,.5) 100%);transition:width .5s cubic-bezier(.22,1,.36,1)}.btn-nav--login:hover{color:var(--text);transform:none}.btn-nav--login:hover .btn-nav-text:after{width:100%}.btn-nav--login .btn-nav-text{transition:letter-spacing .4s cubic-bezier(.22,1,.36,1),transform .3s cubic-bezier(.34,1.56,.64,1)}.btn-nav--login:hover .btn-nav-text{letter-spacing:.2em;animation:loginTextPulse 1.2s ease-in-out}@keyframes loginTextPulse{0%,to{transform:scale(1)}25%{transform:scale(1.08)}50%{transform:scale(1)}75%{transform:scale(1.03)}}.btn-nav--logout:hover{background:#ffffff0f}.hero{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;min-height:0;height:100%;padding:2rem 2rem 2.5rem;overflow:hidden}.hero.hero-in-view .hero-content{animation:heroContentIn 1.4s cubic-bezier(.22,1,.36,1) both}@keyframes heroContentIn{0%{opacity:0;transform:translateY(36px)}to{opacity:1;transform:translateY(0)}}.hero-content{position:relative;z-index:1;max-width:720px}.hero-title{line-height:1;margin:0 0 1rem}.hero-logo{max-width:min(480px,85vw);height:auto;display:block;margin:0 auto}.hero-messaging{display:flex;flex-direction:column;align-items:center;gap:0;margin-bottom:1.5rem}.hero-typing{font-family:DM Sans,system-ui,sans-serif;font-size:clamp(1rem,2vw,1.25rem);font-weight:500;color:#fafafae6;letter-spacing:.06em;text-transform:uppercase;margin:0;min-height:1.75em;white-space:nowrap;display:flex;align-items:center;justify-content:center}.hero-headline{margin-bottom:.875rem}.hero-tagline{margin-bottom:1rem}.hero-typing.hero-closer{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.375rem,2.5vw,1.75rem);font-weight:500;font-style:italic;font-variant:normal;text-transform:none;letter-spacing:.04em;color:#fffffff2;margin-top:.25rem;margin-bottom:0}.hero-typing-word{display:inline-block;white-space:nowrap}.hero-typing-char{display:inline-block;animation:typingCharIn .35s cubic-bezier(.22,1,.36,1) backwards}@keyframes typingCharIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.hero-typing-cursor{display:inline-block;margin-left:3px;animation:cursorPulse 1.2s ease-in-out infinite;color:var(--accent)}@keyframes cursorPulse{0%,to{opacity:1}50%{opacity:.35}}.hero-tagline{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.0625rem,2vw,1.25rem);font-weight:400;color:#fafafad9;line-height:1.75;letter-spacing:.02em;margin:0 auto 1.5rem;max-width:520px}.hero-ctas{display:flex;gap:1rem;align-items:center;justify-content:center}.hero-glow{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.03) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.section-container{max-width:1200px;margin:0 auto;padding:0 2rem}.services .section-container{padding:0 1.5rem}.services:has(.section-container--detail){padding:.75rem 0 .5rem;justify-content:flex-start;min-height:0}@media(max-width:639px){.services:has(.section-container--detail){padding:.5rem 0 .25rem;align-items:stretch;min-height:100%;justify-content:flex-start}.services:has(.section-container--detail) .section-container--detail{flex:1;min-height:0;display:flex;flex-direction:column}.services:has(.section-container--detail) .services-content{flex:1;min-height:0}.services:has(.section-container--detail) .service-detail{flex:1;min-height:0}.services:has(.section-container--detail) .service-detail-inner{flex:1;min-height:0;grid-template-rows:auto auto minmax(0,1fr)}.services:has(.section-container--detail) .service-detail-main{flex:1;min-height:0;display:flex;flex-direction:column}}.services .section-container--detail{display:flex;flex-direction:column;flex:1;min-height:0;justify-content:flex-start;padding:0 1.5rem;max-width:1200px;width:100%}.services .section-container--detail .services-content{flex:1;min-height:0;display:flex;flex-direction:column}.section-header{text-align:center;margin-bottom:2rem}.section-title{font-size:clamp(1.5rem,3.5vw,2.25rem);font-weight:700;color:var(--text);margin:0 0 1rem;line-height:1.2}.section-desc{font-size:1.0625rem;color:var(--text-muted);margin:0 auto;max-width:560px;line-height:1.6}.services{min-height:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 0 2.5rem;opacity:0;transform:translateY(48px);transition:opacity 1.4s cubic-bezier(.22,1,.36,1),transform 1.4s cubic-bezier(.22,1,.36,1)}.services.services-in-view{opacity:1;transform:translateY(0)}.services .section-header .section-label{font-size:.8125rem;margin-bottom:.875rem}.services .section-header{margin-bottom:2rem}.services .section-title{font-size:clamp(1.5rem,3vw,2.25rem);margin:0 0 1.25rem}.services .section-desc{font-size:1.0625rem;line-height:1.6}.services.services-in-view .section-title{animation:servicesTitleIn 1s cubic-bezier(.22,1,.36,1) .25s both}.services.services-in-view .section-desc{animation:servicesDescIn 1s cubic-bezier(.22,1,.36,1) .55s both}.services.services-in-view .service-card:nth-child(1){animation:servicesCardIn 1.4s cubic-bezier(.22,1,.36,1) .5s both}.services.services-in-view .service-card:nth-child(2){animation:servicesCardIn 1.4s cubic-bezier(.22,1,.36,1) .8s both}.services.services-in-view .service-card:nth-child(3){animation:servicesCardIn 1.4s cubic-bezier(.22,1,.36,1) 1.1s both}.services.services-in-view .services-crossover-text{animation:servicesCardIn 1.4s cubic-bezier(.22,1,.36,1) 1.4s both}@keyframes servicesTitleIn{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes servicesDescIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes servicesCardIn{0%{opacity:0;transform:translateY(48px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.services-content{position:relative;min-height:280px;transition:opacity .4s cubic-bezier(.22,1,.36,1)}.services-content-fade-out{opacity:0;pointer-events:none}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}@media(min-width:768px){.services-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.services-grid{grid-template-columns:1fr;max-width:480px;margin:0 auto}}.service-card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:1.75rem 1.5rem;display:flex;flex-direction:column;gap:1rem;min-height:180px;transition:border-color .3s,transform .3s;cursor:pointer;text-align:left;font-family:inherit;color:inherit}.service-card:focus-visible{outline:2px solid var(--text-muted);outline-offset:2px}.service-card:hover{border-color:#333;transform:translateY(-2px)}.service-card-featured{border-color:#333;background:linear-gradient(180deg,#1a1a1a 0%,var(--bg-card) 100%)}.service-icon{width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;border-radius:12px;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);flex-shrink:0}.service-icon svg{width:1.5rem;height:1.5rem}.service-name{font-size:1.125rem;font-weight:600;color:var(--text);margin:0}.service-desc{font-size:.9375rem;color:var(--text-muted);line-height:1.7;margin:0;flex:1}.services-crossover-text{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border);max-width:720px;margin-left:auto;margin-right:auto}.services-crossover-combined{margin:0;font-size:.9375rem;color:var(--text-muted);line-height:1.7}.services-crossover-combined strong{color:var(--text);font-weight:600}.service-detail{animation:servicesCardIn 1.4s cubic-bezier(.22,1,.36,1) both;flex:1;min-height:0;display:flex;flex-direction:column;max-width:1200px;margin:0 auto;width:100%}.service-detail-wrap{flex:1;min-height:0;display:flex;flex-direction:column;padding:0;cursor:pointer}.service-detail-click-block{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;cursor:default}.service-detail-inner{background:#161616c7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:0;display:grid;grid-template-columns:1fr;grid-template-rows:auto auto 1fr;flex:1;min-height:0;overflow:hidden}.service-detail-hero{grid-column:1 / -1}@media(min-width:640px){.service-detail-inner{grid-template-columns:260px 1fr;grid-template-rows:auto 1fr}.service-detail-rail,.service-detail-main{grid-row:2}}.service-detail-cta{display:flex;justify-content:center;padding:1rem 0 0;flex-shrink:0}@media(max-width:639px){.service-detail-cta{padding:.75rem 0 0}}.service-detail-main{min-width:0;min-height:0;overflow-y:auto;padding:1.5rem 1.5rem 1.5rem 1.25rem;display:flex;flex-direction:column;justify-content:center;gap:1.5rem;font-family:DM Sans,system-ui,-apple-system,sans-serif;animation:serviceContentIn .5s cubic-bezier(.22,1,.36,1) both}@media(min-width:640px){.service-detail-main{padding:2rem 2.5rem 2rem 2rem;gap:2rem}}@keyframes serviceContentIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.service-detail-hero{padding:1.5rem 1.5rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0;width:100%;font-family:DM Sans,system-ui,-apple-system,sans-serif}@media(min-width:640px){.service-detail-hero{padding:1.75rem 2rem 1.5rem}}.service-detail-tabs{display:flex;align-items:stretch;justify-content:stretch;gap:0;margin-bottom:1rem;background:#00000040;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:2px;width:100%}.service-detail-tab{flex:1;min-width:0;padding:.375rem .5rem;font-size:.75rem;font-weight:500;font-family:DM Sans,system-ui,-apple-system,sans-serif;letter-spacing:.02em;color:var(--text-muted);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:color .2s,background .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.service-detail-tab:hover{color:var(--text)}.service-detail-tab-active{color:var(--text);font-weight:600;background:#ffffff14;box-shadow:0 1px 3px #00000026}@media(min-width:640px){.service-detail-tabs{padding:3px;margin-bottom:1.25rem}.service-detail-tab{padding:.4375rem .75rem;font-size:.8125rem}}.service-detail-intro{font-size:1.0625rem;font-family:Cormorant Garamond,Georgia,serif;color:var(--text-muted);line-height:1.65;letter-spacing:.01em;margin:0;width:100%}.service-detail-intro-mobile{display:none}@media(min-width:640px){.service-detail-intro{font-size:1.1875rem;line-height:1.7}}.service-detail-rail{position:relative;display:flex;flex-direction:column;justify-content:center;gap:.5rem;padding:1.25rem 1rem;border-right:none;align-self:stretch;min-height:0;overflow-y:auto;font-family:DM Sans,system-ui,-apple-system,sans-serif}@media(max-width:639px){.service-detail{width:100%;max-width:100%;overflow-x:hidden}.service-detail-wrap,.service-detail-click-block,.service-detail-inner{overflow-x:hidden;min-width:0}.service-detail-intro{display:none}.service-detail-intro-mobile{display:block;font-size:.9375rem;color:var(--text-muted);line-height:1.45;margin:.25rem 0 0;padding:0;font-family:Cormorant Garamond,Georgia,serif;animation:serviceIntroMobileIn .5s cubic-bezier(.22,1,.36,1) .2s both}@keyframes serviceIntroMobileIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.service-detail-hero{padding:.75rem 1rem .5rem;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.service-detail-tabs{margin-bottom:0;padding:3px;border-radius:10px;background:#00000059}.service-detail-tab{padding:.5rem .625rem;font-size:.75rem;border-radius:8px;transition:transform .2s ease,background .2s}.service-detail-tab:active{transform:scale(.98)}.service-detail-tab-active{background:#ffffff1a;box-shadow:0 1px 4px #0003}.service-detail-rail{flex-direction:column;flex-wrap:nowrap;overflow-x:visible;overflow-y:auto;padding:.875rem 1rem;gap:.5rem;flex-shrink:0;max-height:200px;border-right:none;border-bottom:1px solid rgba(255,255,255,.06);scroll-behavior:smooth}.service-detail-rail::-webkit-scrollbar{width:4px}.service-detail-rail::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.service-detail-rail-item{flex-shrink:0;flex-direction:row;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:10px;font-size:.8125rem;text-align:left;white-space:normal;border:1px solid transparent;transition:background .25s ease,border-color .25s ease,transform .2s ease}.service-detail-rail-item:active{transform:scale(.99)}.service-detail-rail-item-active{background:#ffffff0f;border-color:#ffffff1f}.service-detail-rail-num{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;min-width:1.5rem;border-radius:6px;background:#ffffff14;font-size:.6875rem;font-weight:600;color:var(--text-muted)}.service-detail-rail-item-active .service-detail-rail-num{background:#ffffff26;color:var(--text)}.service-detail-rail-label{display:block;flex:1;min-width:0;white-space:normal;-webkit-line-clamp:2;line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;font-size:.8125rem}.service-detail-main{padding:.5rem 1rem 1.25rem;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;justify-content:flex-start;flex:1;min-height:0}.service-detail-panel-content{align-items:flex-start;text-align:left;width:100%;min-width:0;max-width:100%;padding-bottom:1rem}.service-detail-panel-title{font-size:1.125rem;line-height:1.4;margin:0 0 .5rem;max-width:100%;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.service-detail-panel-desc{font-size:.875rem;line-height:1.6;margin:0;max-width:100%;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.services .section-container--detail{padding:0 1rem}.service-detail-panel{animation:serviceDetailPanelMobileIn .4s cubic-bezier(.22,1,.36,1) both}@keyframes serviceDetailPanelMobileIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.service-detail-rail-item{animation:serviceRailItemIn .35s cubic-bezier(.22,1,.36,1) both}.service-detail-rail-item:nth-child(1){animation-delay:.05s}.service-detail-rail-item:nth-child(2){animation-delay:.1s}.service-detail-rail-item:nth-child(3){animation-delay:.15s}.service-detail-rail-item:nth-child(4){animation-delay:.2s}@keyframes serviceRailItemIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}}@media(min-width:640px){.service-detail-rail{padding:1.5rem 1.25rem;gap:.5rem;justify-content:center}.service-detail-rail-num{display:none}}.service-detail-rail-line{display:none}.service-detail-rail-item{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:none;border:none;border-radius:8px;color:var(--text-muted);font-size:.8125rem;font-weight:500;font-family:DM Sans,system-ui,-apple-system,sans-serif;letter-spacing:.01em;cursor:pointer;text-align:left;transition:color .2s,background .2s}@media(min-width:640px){.service-detail-rail-item{padding:.875rem 1.125rem;font-size:.875rem}}.service-detail-rail-item:hover{color:var(--text);background:#ffffff08}.service-detail-rail-item-active{color:var(--text);font-weight:600;background:#ffffff0f}.service-detail-rail-label{flex:1;min-width:0;font-size:.9375rem;font-family:DM Sans,system-ui,-apple-system,sans-serif;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.service-detail-panel{animation:serviceDetailPanelIn .4s cubic-bezier(.22,1,.36,1)}.service-detail-panel-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.25rem;min-height:0;font-family:DM Sans,system-ui,-apple-system,sans-serif}.service-detail-panel-title{font-size:1.25rem;font-weight:600;font-family:DM Sans,system-ui,-apple-system,sans-serif;color:var(--text);margin:0 0 .5rem;line-height:1.4;letter-spacing:.01em}@media(min-width:640px){.service-detail-panel-title{font-size:1.375rem;margin-bottom:.625rem}}.service-detail-panel-desc{font-size:.9375rem;font-family:DM Sans,system-ui,-apple-system,sans-serif;color:var(--text-muted);line-height:1.75;letter-spacing:.01em;margin:0;max-width:520px}@media(min-width:640px){.service-detail-panel-desc{font-size:1.0625rem;line-height:1.8}}@media(max-width:639px){.service-detail-panel-title{font-size:1.125rem;line-height:1.4;margin:0 0 .5rem}.service-detail-panel-desc{font-size:.875rem;line-height:1.6;max-width:100%}}@keyframes serviceDetailPanelIn{0%{opacity:.6;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.75rem;font-size:.9375rem;font-weight:500;border-radius:8px;border:none;transition:all .2s;letter-spacing:.01em}.btn-primary{background:var(--accent);color:var(--bg)}.btn-primary:hover{background:#e0e0e0;color:var(--bg)}.btn-secondary{background:transparent;color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-card);border-color:var(--text-muted)}.footer{background:transparent;flex-shrink:0;position:relative;z-index:2}.footer-inner{max-width:1200px;margin:0 auto;padding:.75rem 1.5rem}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}@media(max-width:600px){.footer-top{flex-direction:column;gap:1rem;text-align:center}}.footer-brand{display:flex;align-items:center;gap:.75rem}@media(max-width:600px){.footer-brand{flex-direction:column;gap:.375rem}}.footer-logo{height:1.5rem;width:auto}.footer-brand-desc{font-size:.8125rem;color:var(--text-muted);margin:0;white-space:nowrap}.footer-brand-geo{font-size:.75rem;color:var(--text-muted);margin:.25rem 0 0;opacity:.75}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.footer-socials{display:flex;align-items:center;gap:.5rem}.footer-socials a{color:var(--text-muted);transition:color .2s;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:6px;border:1px solid var(--border)}.footer-socials a:hover{color:var(--text);border-color:var(--text-muted)}.social-icon{width:1rem;height:1rem;display:block}.footer-bottom{padding-top:.5rem;display:flex;align-items:center;gap:1rem}.footer-copyright-spacer{flex:1;min-width:0}.footer-copyright{font-size:.75rem;color:var(--text-muted);text-align:center}.footer-terms-wrap{flex:1;display:flex;justify-content:flex-end;min-width:0}.footer-terms-link{background:none;border:none;font-size:.75rem;color:var(--text-muted);cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px;transition:color .2s;flex-shrink:0}.footer-terms-link:hover{color:var(--text)}@media(max-width:500px){.footer-bottom{flex-direction:column}.footer-copyright-spacer{display:none}.footer-terms-wrap{justify-content:center}}.nav-user{font-size:.8125rem;color:var(--text-muted);padding:.5rem 0}.btn-nav--user-icon{display:flex;padding:.5rem;background:transparent;border:1px solid var(--border);border-radius:50%;color:var(--text);width:2.5rem;height:2.5rem;align-items:center;justify-content:center}.btn-nav--user-icon svg{width:1.25rem;height:1.25rem}.btn-nav--user-icon:hover{background:#ffffff0f;border-color:#ffffff59}.nav-user--desktop,.btn-nav--logout-desktop{display:none!important}.nav-loading{color:var(--text-muted);font-size:.875rem}.user-info-overlay{position:fixed;inset:0;z-index:100;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:1rem;overflow-y:auto;-webkit-overflow-scrolling:touch;animation:authOverlayIn .35s ease-out both}.user-info-modal{position:relative;margin:auto;width:100%;max-width:400px;border-radius:20px;padding:1px;background:linear-gradient(135deg,#ffffff38,#ffffff0f 45%,#ffffff1a);box-shadow:0 0 0 1px #00000059,0 32px 64px #0000008c;animation:authModalIn .4s cubic-bezier(.22,1,.36,1) .05s both}.user-info-modal-inner{text-align:center;background:linear-gradient(180deg,#141414,#101010);border-radius:19px;padding:2.5rem 1.75rem 1.75rem}.user-info-close{position:absolute;top:.75rem;right:.75rem;z-index:1;background:#ffffff0d;border:1px solid var(--border);border-radius:10px;color:var(--text-muted);font-size:1.25rem;line-height:1;width:2.25rem;height:2.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s,background .2s,border-color .2s}.user-info-close:hover{color:var(--text);background:#ffffff14;border-color:#fff3}.user-info-list{margin:0 0 1.5rem;text-align:center}.user-info-row--email{margin-bottom:1rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border)}.user-info-row--email dt,.user-info-stat dt{font-size:.6875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;margin:0 0 .4rem;text-align:center}.user-info-row--email dd{margin:0;font-size:.9375rem;line-height:1.5;color:var(--text);text-align:center;word-break:break-all;overflow-wrap:anywhere;max-width:100%;padding:0 .25rem}.user-info-meta{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;text-align:center}.user-info-meta--single{grid-template-columns:1fr;max-width:100%}.user-info-stat{background:#ffffff08;border:1px solid var(--border);border-radius:12px;padding:.875rem .5rem}.user-info-stat dt{margin:0 0 .35rem}.user-info-stat dd{margin:0;font-size:1.125rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text);line-height:1.2;text-align:center}.user-info-logout{width:100%;margin-top:.25rem;padding:.75rem 1.25rem}.auth-overlay{position:fixed;inset:0;z-index:100;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:authOverlayIn 1.4s cubic-bezier(.22,1,.36,1) both}@media(max-width:640px){.auth-overlay{align-items:flex-start;padding-top:2rem;overflow-y:auto;-webkit-overflow-scrolling:touch}}.auth-modal{position:relative;background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;padding:2.5rem 2.25rem 2rem;width:100%;max-width:400px;animation:authModalIn 1.4s cubic-bezier(.22,1,.36,1) .15s both;box-shadow:0 24px 48px #00000080}.auth-modal--signup{max-width:480px}@media(max-width:640px){.auth-modal{display:flex;flex-direction:column;max-height:min(90vh,520px);overflow-y:auto;-webkit-overflow-scrolling:touch}.auth-modal .auth-form{order:-1;flex-shrink:0;margin-bottom:1.25rem}}@keyframes authOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes authModalIn{0%{opacity:0;transform:scale(.92) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.auth-close{position:absolute;top:.75rem;right:1rem;background:none;border:none;color:var(--text-muted);font-size:1.5rem;line-height:1}.auth-close:hover{color:var(--text)}.terms-overlay{position:fixed;inset:0;z-index:100;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:authOverlayIn .3s ease-out both}.terms-modal{position:relative;background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;padding:2rem;width:100%;max-width:520px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 24px 48px #00000080;animation:authModalIn .3s ease-out .05s both}.terms-close{position:absolute;top:.75rem;right:1rem;background:none;border:none;color:var(--text-muted);font-size:1.5rem;line-height:1;cursor:pointer}.terms-close:hover{color:var(--text)}.terms-title{font-size:1.25rem;font-weight:600;margin:0 0 .25rem;color:var(--text)}.terms-updated{font-size:.8125rem;color:var(--text-muted);margin:0 0 1rem}.terms-content{overflow-y:auto;flex:1;padding-right:.5rem}.terms-content section{margin-bottom:1rem}.terms-content section:last-child{margin-bottom:0}.terms-content h3{font-size:.9375rem;font-weight:600;color:var(--text);margin:0 0 .375rem}.terms-content p{font-size:.875rem;color:var(--text-muted);margin:0;line-height:1.5}.auth-title{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:var(--text)}.auth-project-info{text-align:center;margin-bottom:1.75rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.auth-project-title{font-family:"Instrument Serif",Cormorant Garamond,Georgia,serif;font-size:1.75rem;font-weight:400;color:var(--text);margin:0 0 .75rem;line-height:1.25;letter-spacing:-.02em}.auth-project-desc{font-family:"Instrument Serif",Cormorant Garamond,Georgia,serif;font-size:1.25rem;font-style:italic;color:var(--text-muted);line-height:1.6;margin:0 0 1.25rem}.auth-highlights{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:0 1.5rem}.auth-highlights li{font-family:DM Sans,system-ui,sans-serif;font-size:.8125rem;font-weight:500;color:var(--text-muted);position:relative;padding-left:1.125rem}.auth-highlights li:before{content:"";position:absolute;left:0;top:.5em;width:5px;height:5px;border-radius:50%;background:var(--text-muted);opacity:.6}.auth-intro{font-family:DM Sans,system-ui,sans-serif;font-size:.9375rem;color:var(--text-muted);line-height:1.6;margin:0 0 1.25rem}.auth-desc{font-size:.875rem;color:var(--text-muted);margin:0 0 .75rem;line-height:1.5}.auth-label{display:block;font-family:DM Sans,system-ui,sans-serif;font-size:.8125rem;font-weight:600;letter-spacing:.02em;color:var(--text-muted);margin-bottom:.5rem}.auth-form{display:flex;flex-direction:column;gap:.75rem}.auth-input{width:100%;padding:.875rem 1rem;font-size:1rem;font-family:DM Sans,system-ui,sans-serif;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:10px;outline:none;transition:border-color .2s,box-shadow .2s}.auth-input:focus{border-color:var(--text-muted);box-shadow:0 0 0 1px var(--text-muted)}.auth-input::placeholder{color:var(--text-muted);opacity:.6}.auth-error{font-size:.8125rem;color:#ef4444;margin:0}.auth-submit{width:100%;text-align:center;margin-top:.25rem}.auth-back{background:none;border:none;color:var(--text-muted);font-size:.8125rem;text-align:center;padding:.25rem}.auth-back:hover{color:var(--text)}.app-loading{flex:1;display:flex;align-items:center;justify-content:center;min-height:100vh}.loading-logo{height:3rem;opacity:.4;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.8}}.dashboard{padding:3rem 2rem}.dashboard.dashboard--centered{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:min(100vh - 120px,70rem);padding:3rem 2rem}.dashboard.dashboard--centered .dashboard-inner{display:flex;flex-direction:column;align-items:center;width:100%;gap:0}.dashboard.dashboard--centered .dashboard-code-section{margin-top:0}.dashboard.dashboard--centered .dashboard-projects-grid{margin-top:2rem;width:100%}.project-detail{display:flex;align-items:center;justify-content:center;min-height:min(100vh - 200px,60rem);padding:2rem;animation:projectDetailIn 1.4s cubic-bezier(.22,1,.36,1) both}.project-detail-inner{max-width:1200px;width:100%;margin:0 auto;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:1.75rem 2rem}.project-detail--view-compact .project-detail-inner{padding:1rem 1.25rem}.project-detail--view-compact .project-messages{margin-top:.6rem;padding-top:.75rem}.project-detail--view-compact .project-detail-back{margin-bottom:.2rem;font-size:.8125rem}.project-header-compact{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.4rem}.project-header-compact-titles{min-width:0}@media(min-width:520px){.project-header-compact{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .75rem}.project-header-compact .project-header-compact-titles{flex:1 1 8rem}}.project-access-code-row--inline{margin-bottom:0!important;flex:0 0 auto}.project-detail--view-compact .project-access-code-badge{font-size:.65rem}.project-detail--view-compact .project-access-code-mono{font-size:.875rem;font-weight:600;padding:.12rem .45rem;letter-spacing:.12em}.project-detail--view-compact .dashboard-info{margin:0}.project-detail--view-compact .dashboard-info--grid{display:block}@media(min-width:640px){.project-detail--view-compact .dashboard-info--grid{display:grid;grid-template-columns:1fr 1fr;column-gap:1.25rem;row-gap:0;align-items:start}}.project-detail--view-compact .dashboard-info-row{padding:.22rem 0;align-items:flex-start;gap:.5rem .75rem}.project-detail--view-compact .dashboard-info-row dt{font-size:.68rem;line-height:1.3;flex:0 0 5.5rem;max-width:42%}.project-detail--view-compact .dashboard-info-row dd{font-size:.75rem;line-height:1.35;text-align:right;word-break:break-word}.project-detail--view-compact .project-files-section{margin-top:.45rem}.project-detail--view-compact .project-files-title{font-size:.8rem;margin-bottom:.3rem}.project-detail-back{background:none;border:none;color:var(--text-muted);font-size:.9375rem;cursor:pointer;margin-bottom:1rem;font-family:inherit}.project-detail-back:hover{color:var(--text)}.project-detail-title{font-size:1.375rem;font-weight:600;margin:0 0 .5rem;color:var(--text)}.project-detail-subtitle{font-size:.875rem;color:var(--text-muted);line-height:1.5;margin:0 0 1rem}.project-detail--view-compact .project-detail-title{font-size:1.05rem;font-weight:600;margin:0 0 .1rem;line-height:1.2;color:var(--text)}.project-detail--view-compact .project-detail-subtitle{font-size:.72rem;margin:0;line-height:1.3;color:var(--text-muted)}.project-detail-success{font-size:.9375rem;color:var(--text-muted);line-height:1.6;margin:0 0 1rem}.project-form{display:flex;flex-direction:column;gap:.875rem}.project-form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:600px){.project-form-row{grid-template-columns:1fr}}.project-form-label{display:flex;flex-direction:column;gap:.25rem;font-size:.8125rem;font-weight:500;color:var(--text)}.project-form-input,.project-form-textarea{width:100%;padding:.5rem .875rem;font-size:.9375rem;font-family:inherit;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px;outline:none;transition:border-color .2s}.project-form-input:focus,.project-form-textarea:focus{border-color:var(--text-muted)}.project-form-textarea{resize:vertical;min-height:60px}.project-form-submit{margin-top:.25rem;width:100%}@keyframes projectDetailIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.dashboard-inner{max-width:1200px;margin:0 auto}.app:has(.main-dashboard-plus) .main{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;padding:2rem}.app:has(.main-dashboard-plus) .dashboard{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:0;width:100%}.app:has(.main-dashboard-plus) .dashboard-inner{display:flex;flex-direction:column;align-items:center;width:100%}.dashboard-header{margin-bottom:2.5rem}.dashboard-title{font-size:1.75rem;font-weight:700;margin:0 0 .5rem;color:var(--text)}.dashboard-info{margin:0}.dashboard-info-row{display:flex;justify-content:space-between;gap:1rem;padding:.625rem 0;border-bottom:1px solid var(--border)}.dashboard-info-row:last-child{border-bottom:none;padding-bottom:0}.dashboard-info-row dt{font-size:.875rem;color:var(--text-muted);flex-shrink:0}.dashboard-info-row dd{font-size:.875rem;color:var(--text);margin:0;text-align:right;word-break:break-all}.project-detail--ai:not(.project-detail--view-compact) .project-detail-top{overflow:visible;max-height:none}.project-detail--ai:not(.project-detail--view-compact) .project-detail-title{font-size:1.25rem;margin-bottom:.25rem}.project-detail--ai:not(.project-detail--view-compact) .project-detail-subtitle{font-size:.8125rem;margin-bottom:.75rem}.project-detail--ai:not(.project-detail--view-compact) .dashboard-info-row{padding:.375rem 0}.project-detail--ai:not(.project-detail--view-compact) .dashboard-info-row dt,.project-detail--ai:not(.project-detail--view-compact) .dashboard-info-row dd{font-size:.8125rem}.project-detail--ai:not(.project-detail--view-compact) .project-detail-inner{padding:1.25rem 1.5rem}.project-detail--ai:not(.project-detail--view-compact) .project-files-section{margin-top:1rem}.project-detail--ai:not(.project-detail--view-compact) .project-files-title{font-size:.9375rem;margin-bottom:.5rem}.dashboard-empty{font-size:.875rem;color:var(--text-muted);margin:0}.dashboard-projects-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.25rem;margin-top:2rem;width:100%}.dashboard-project-card{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;align-items:flex-start;text-align:left;cursor:pointer;font-family:inherit;color:var(--text);width:260px;min-width:260px;max-width:300px;transition:border-color .2s,background .2s,transform .2s}.dashboard-project-badge{position:absolute;top:.75rem;right:.75rem;display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:#60a5fa33;border:1px solid rgba(96,165,250,.4);border-radius:8px;font-size:.75rem;font-weight:600;color:#93c5fd}.dashboard-project-badge svg{width:1rem;height:1rem;flex-shrink:0}.dashboard-project-card:hover{border-color:#ffffff40;background:#1c1c1cf2;transform:translateY(-2px)}.dashboard-project-icon{width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:var(--text);margin-bottom:1rem}.dashboard-project-icon svg{width:1.25rem;height:1.25rem}.dashboard-project-type{font-size:.75rem;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.25rem}.dashboard-project-name{font-size:1rem;font-weight:600;color:var(--text);margin-bottom:.5rem}.dashboard-project-date{font-size:.8125rem;color:var(--text-muted);margin-top:auto}@media(max-width:1024px){.app:has(.main-landing){height:100vh;overflow:hidden}.app:has(.main-landing) .main{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.app:has(.main-landing) .landing-viewport{width:100%;flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.app:has(.main-landing) .hero.landing-section{display:flex;align-items:center;justify-content:center;min-height:100%}.app:has(.main-landing) .hero-content{text-align:center;margin-left:auto;margin-right:auto}.app:has(.main-landing) .hero-messaging{align-items:center;text-align:center}.app:has(.main-landing) .hero-ctas{justify-content:center}}@media(max-width:768px){.services{justify-content:flex-start;padding-top:1.5rem;padding-bottom:2rem}.services .section-header{margin-bottom:1.25rem}.services .section-title{font-size:clamp(1.25rem,5vw,1.75rem);margin:0 0 .75rem}.services .section-desc{font-size:.9375rem}.service-card{padding:.75rem .875rem;min-height:0;gap:.375rem}.services .service-icon{display:none}.service-name{font-size:.9375rem}.service-desc{font-size:.8125rem;line-height:1.45}.services .section-header{margin-bottom:.75rem}.services-grid{gap:.5rem}.services-content{min-height:0}.services-crossover-text{margin-top:.75rem;padding-top:.75rem;font-size:.875rem}}@media(max-width:640px){.app:has(.main-project-create) .main{padding:.75rem 1rem}.project-detail--create .project-detail-inner{padding:.875rem 1rem}.project-detail--create .project-detail-title{font-size:1.0625rem}.project-detail--create .project-detail-subtitle{font-size:.75rem;margin-bottom:.625rem}.project-detail--create .project-form{gap:.625rem}.project-detail--create .project-form-label{font-size:.75rem}.project-detail--create .project-form-input,.project-detail--create .project-form-textarea{padding:.4375rem .625rem;font-size:.8125rem}.project-detail--create .project-form-textarea{min-height:44px}}@media(max-width:480px){.nav{padding:.75rem 1rem}.hero-typing{display:block;white-space:normal;text-align:center;font-size:clamp(.875rem,3.5vw,1.1rem);letter-spacing:.04em;line-height:1.6;min-height:0}.hero-typing.hero-closer{display:block;font-size:clamp(1.1rem,5vw,1.5rem)}.hero-messaging{white-space:normal;text-align:center;gap:.375rem}.hero-tagline{font-size:clamp(.9375rem,3.5vw,1.0625rem);line-height:1.65}.hero{padding:1.25rem 1.25rem 1.75rem}.hero-logo{max-width:min(320px,80vw)}.hero-title{margin-bottom:.75rem}.hero-messaging{margin-bottom:1.25rem}.hero-ctas{flex-direction:column;align-items:center;gap:.75rem;width:100%}.hero-ctas .btn{width:100%;max-width:280px;text-align:center;justify-content:center}.project-detail{padding:1rem 0}.project-detail-inner{padding:1.25rem 1rem}.project-detail--create{min-height:0;padding:0}.project-detail--create .project-detail-inner{padding:1rem}.project-detail--create .project-detail-back{margin-bottom:.75rem;font-size:.875rem}.project-detail--create .project-detail-title{font-size:1.125rem;margin-bottom:.25rem}.project-detail--create .project-detail-subtitle{font-size:.8125rem;margin-bottom:.75rem}.project-detail--create .project-form{gap:.75rem}.project-detail--create .project-form-label{font-size:.75rem}.project-detail--create .project-form-input,.project-detail--create .project-form-textarea{padding:.5rem .75rem;font-size:.875rem}.project-detail--create .project-form-textarea{min-height:48px}.project-detail--create .project-form-submit{margin-top:.5rem;padding:.625rem 1rem;font-size:.875rem}.footer-brand-desc{white-space:normal;word-break:break-word}.services-grid{grid-template-columns:1fr;gap:.5rem;max-width:440px;margin:0 auto}.service-card{padding:.625rem .75rem;gap:.25rem}.service-name{font-size:.875rem}.service-desc{font-size:.75rem;line-height:1.4}}@media(max-width:400px){.service-detail-rail-item{padding:.5rem .75rem;font-size:.75rem}.service-detail-rail-num{width:1.25rem;height:1.25rem;min-width:1.25rem;font-size:.625rem}.plus-modals-grid{grid-template-columns:1fr}.hero-typing{display:block;white-space:normal;font-size:clamp(.8125rem,3vw,.9375rem)}}.dashboard-project-status{display:inline-block;margin-top:.5rem;padding:.1875rem .625rem;border-radius:999px;font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.project-messages{margin-top:2rem;border-top:1px solid var(--border);padding-top:1.5rem;display:flex;flex-direction:column;gap:.75rem}.project-messages-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:.5rem}.project-messages-title{font-size:1rem;font-weight:600;color:var(--text);margin:0}.project-messages-back{background:none;border:none;color:var(--text-muted);font-size:.9375rem;cursor:pointer;font-family:inherit;padding:.25rem 0}.project-messages-back:hover{color:var(--text)}.project-messages-expand-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:var(--text);font-size:.8125rem;padding:.375rem .75rem;cursor:pointer;font-family:inherit;transition:background .2s,border-color .2s}.project-messages-expand-btn:hover{background:#ffffff1f;border-color:#ffffff4d}.project-messages-list{display:flex;flex-direction:column;gap:.5rem;max-height:360px;overflow-y:auto;padding:.75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;scroll-behavior:smooth}.project-messages-empty{font-size:.875rem;color:var(--text-muted);text-align:center;padding:1rem 0;margin:0}.project-message-bubble{display:flex;flex-direction:column;max-width:75%}.project-message-bubble--mine{align-self:flex-end;align-items:flex-end}.project-message-bubble--theirs{align-self:flex-start;align-items:flex-start}.project-message-text{padding:.5rem .875rem;border-radius:12px;font-size:.9375rem;line-height:1.5;margin:0;word-break:break-word}.project-message-bubble--mine .project-message-text{background:#ffffff1f;color:var(--text);border-bottom-right-radius:4px}.project-message-bubble--theirs .project-message-text{background:#ffffff0f;color:var(--text);border-bottom-left-radius:4px}.project-message-meta{font-size:.6875rem;color:var(--text-muted);margin:.25rem .25rem 0}.project-message-form{display:flex;gap:.75rem;align-items:flex-end}.project-message-input{flex:1;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:inherit;font-size:.9375rem;padding:.625rem .875rem;resize:none;transition:border-color .2s;line-height:1.5}.project-message-input:focus{outline:none;border-color:#ffffff59}.project-message-send{padding:.625rem 1.25rem;background:var(--text);color:var(--bg);border:none;border-radius:8px;font-family:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition:opacity .2s;white-space:nowrap}.project-message-send:disabled{opacity:.35;cursor:not-allowed}.project-message-send:not(:disabled):hover{opacity:.85}.admin-dashboard{width:100%;padding:2rem 0}.admin-dashboard-inner{max-width:1000px;margin:0 auto;padding:2rem 1.5rem}.admin-dashboard-header{display:flex;align-items:baseline;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.admin-dashboard-title{font-size:1.5rem;font-weight:700;color:var(--text);margin:0}.admin-dashboard-count{font-size:.875rem;color:var(--text-muted);margin:0}.admin-filter-tabs{display:flex;gap:.5rem;margin-bottom:1.25rem;flex-wrap:wrap}.admin-filter-tab{padding:.375rem 1rem;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-family:inherit;font-size:.875rem;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.admin-filter-tab:hover{border-color:#ffffff4d;color:var(--text)}.admin-filter-tab--active{background:#ffffff1a;border-color:#ffffff4d;color:var(--text)}.admin-table-wrap{overflow-x:auto;border-radius:10px;border:1px solid var(--border)}.admin-projects-table{width:100%;border-collapse:collapse;font-size:.9375rem}.admin-projects-table thead tr{border-bottom:1px solid var(--border)}.admin-projects-table th{text-align:left;padding:.75rem 1rem;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.admin-projects-row{cursor:pointer;transition:background .15s}.admin-projects-row:hover{background:#ffffff0a}.admin-projects-row+.admin-projects-row{border-top:1px solid var(--border)}.admin-projects-table td{padding:.875rem 1rem;color:var(--text);vertical-align:middle}.admin-col-msg{width:3rem;text-align:center;padding-left:.5rem!important;padding-right:.5rem!important}.admin-cell-msg{text-align:center;padding-left:.5rem!important;padding-right:.5rem!important}.admin-msg-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:#60a5fa33;border:1px solid rgba(96,165,250,.4);border-radius:8px;font-size:.75rem;font-weight:600;color:#93c5fd}.admin-msg-badge svg{width:1rem;height:1rem;flex-shrink:0}.admin-msg-empty{color:var(--text-muted);font-size:.875rem}.admin-cell-email{font-size:.875rem;color:var(--text-muted);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-badge{display:inline-block;padding:.1875rem .625rem;border-radius:999px;font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.project-detail-complete-btn{margin-top:1.5rem;width:100%}@media(max-width:640px){.admin-col-date{display:none}.admin-projects-table th,.admin-projects-table td{padding:.625rem .75rem;font-size:.875rem}.admin-dashboard-inner{padding:1.25rem 1rem}}.project-message-image{max-width:240px;max-height:200px;border-radius:8px;margin-top:.375rem;display:block;object-fit:contain}.project-message-image-preview-wrap{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;margin-bottom:.5rem}.project-message-image-preview{height:56px;width:56px;object-fit:cover;border-radius:4px}.project-message-image-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;padding:.25rem;line-height:1}.project-message-image-remove:hover{color:var(--text)}.project-messages-list-wrap{position:relative}.project-messages-scroll-btn{position:absolute;bottom:.75rem;left:50%;transform:translate(-50%);background:#ffffff26;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.2);color:var(--text);border-radius:999px;padding:.3125rem .875rem;font-family:inherit;font-size:.8125rem;cursor:pointer;white-space:nowrap;z-index:2;transition:background .2s}.project-messages-scroll-btn:hover{background:#ffffff38}.project-message-inputs{flex:1;display:flex;align-items:flex-end;gap:.5rem}.project-message-attach{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);cursor:pointer;font-size:1.1rem;flex-shrink:0;transition:border-color .2s}.dashboard-code-section{margin-top:1.5rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#161616fa,#111111fa);border:1px solid rgba(255,255,255,.08);border-radius:12px;display:flex;flex-direction:column;gap:.75rem;min-width:320px;max-width:420px;box-shadow:0 4px 24px #00000040}.dashboard-code-form{display:flex;gap:.625rem;align-items:stretch}.dashboard-code-input{flex:1;font-family:JetBrains Mono,SF Mono,Fira Code,monospace;letter-spacing:.2em;text-transform:uppercase;background:#0a0a0a99;border:1px solid rgba(255,255,255,.12);border-radius:10px;color:var(--text);padding:.625rem 1rem;font-size:1rem;font-weight:500;outline:none;transition:border-color .2s,box-shadow .2s;min-width:0}.dashboard-code-input::placeholder{color:var(--text-muted);opacity:.7;letter-spacing:.02em;text-transform:none;font-family:Outfit,DM Sans,system-ui,sans-serif}.dashboard-code-input:focus{border-color:#ffffff40;box-shadow:0 0 0 3px #ffffff0f}.dashboard-code-btn{flex-shrink:0;padding:.625rem 1.25rem;font-weight:500;border-radius:10px}.dashboard-code-error{color:#f87171;font-size:.875rem;margin:0}.dashboard-code-success{color:#4ade80;font-size:.875rem;margin:0}.dashboard-project-card--deliverable{border-color:#60a5fa40}.dashboard-deliverable-badge{display:inline-block;padding:.2rem .6rem;background:#60a5fa1f;border:1px solid rgba(96,165,250,.3);border-radius:99px;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:#93c5fd;margin-top:auto}.admin-main-tabs{display:flex;gap:.5rem;margin-bottom:1.25rem;border-bottom:1px solid var(--border);padding-bottom:0}.admin-main-tab{padding:.625rem 1rem;font-size:.9375rem;font-weight:500;color:var(--text-muted);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .2s,border-color .2s;margin-bottom:-1px}.admin-main-tab:hover{color:var(--text)}.admin-main-tab--active{color:var(--text);border-bottom-color:#fafafa}.admin-packages-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.admin-new-package-btn{flex-shrink:0}.admin-code-cell{font-family:monospace;letter-spacing:.1em;font-size:.875rem}.admin-uses-pill{font-size:.8rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.admin-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-top:1.5rem}.admin-type-card{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1.25rem;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;cursor:pointer;text-align:left;transition:border-color .2s,background .2s}.admin-type-card:hover{border-color:#ffffff40;background:var(--bg-elevated)}.admin-type-icon{width:2rem;height:2rem;color:var(--text-muted)}.admin-type-icon svg{width:100%;height:100%}.admin-type-label{font-size:.9375rem;font-weight:600;color:var(--text);margin:0}.admin-type-desc{font-size:.8125rem;color:var(--text-muted);margin:0;line-height:1.4}.admin-access-code-display{margin:1.5rem 0;padding:1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;gap:.5rem}.admin-access-code-label{font-size:.8125rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0}.admin-access-code-value{font-family:monospace;font-size:2.5rem;font-weight:700;letter-spacing:.2em;color:var(--text);margin:0}.admin-access-code-hint{font-size:.8125rem;color:var(--text-muted);margin:0;line-height:1.5}.project-files-section{margin-top:1.75rem}.project-files-title{font-size:1rem;font-weight:600;color:var(--text);margin:0 0 .75rem}.project-files-upload-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:1px dashed var(--border);border-radius:8px;font-size:.875rem;color:var(--text-muted);cursor:pointer;margin-bottom:.75rem;transition:border-color .2s,color .2s}.project-files-upload-btn:hover{border-color:#ffffff4d;color:var(--text)}.project-files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.project-file-img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;cursor:zoom-in;transition:opacity .2s}.project-file-img:hover{opacity:.85}.project-file-video{width:100%;border-radius:8px;max-height:200px;background:#000}.project-file-link{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;font-size:.8125rem;color:var(--text);text-decoration:none;word-break:break-all;transition:border-color .2s}.project-file-link:hover{border-color:#ffffff40}.project-lightbox{position:fixed;inset:0;background:#000000eb;z-index:200;display:flex;align-items:center;justify-content:center;cursor:zoom-out;animation:lightbox-in .15s ease}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}.project-lightbox-img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:8px;box-shadow:0 8px 40px #0009}.project-access-code-row{display:flex;align-items:center;gap:.625rem;margin-bottom:1rem}.project-access-code-badge{font-size:.8125rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.project-access-code-mono{font-family:monospace;font-size:1.125rem;font-weight:700;letter-spacing:.15em;color:var(--text);padding:.25rem .625rem;background:var(--bg-card);border:1px solid var(--border);border-radius:6px}.project-message-attach:hover{border-color:#ffffff4d}
