*{box-sizing:border-box}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#090b12;--ink:#f7f8ff;--muted:#b9c3d2;--line:#354052;--accent:#79b6ff;--cyan:#83e9f4;--error:#ffaaa3;--surface:#151b29}html,body{min-height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}.site-layout{flex-direction:column;min-height:100svh;display:flex}.site-content{flex-direction:column;flex:1;min-width:0;display:flex}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled,fieldset:disabled button{cursor:wait;opacity:.7}:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.1}fieldset{border:0;gap:1.25rem;min-width:0;margin:0;padding:0;display:grid}em{font-family:Georgia,Times New Roman,serif;font-weight:400}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:10;background:var(--ink);color:var(--paper);padding:.75rem 1rem;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header,.site-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:1440px;margin-inline:auto;padding:1.4rem clamp(1.25rem,4vw,4rem);display:flex}.site-header{border-bottom:1px solid var(--line);z-index:1;position:relative}.brand{letter-spacing:-.07em;white-space:nowrap;align-items:center;min-height:44px;font-size:1.55rem;font-weight:750;text-decoration:none;display:inline-flex}.brand svg{width:34px;height:34px;margin-right:.6rem}.brand-dot{color:var(--accent)}.site-header nav{flex-wrap:wrap;align-items:center;gap:clamp(.75rem,3vw,2rem);display:flex}.nav-login,.text-link{padding-block:.7rem;font-size:.9rem;font-weight:600}.nav-login{text-decoration:none}.nav-login:hover,.text-link:hover{color:var(--accent)}.nav-action{color:inherit;cursor:pointer;background:0 0;border:0;font-family:inherit}.nav-action:disabled{cursor:wait}.button{text-align:center;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;gap:.8rem;min-height:48px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}.button-primary{color:#071728;background:var(--accent)}.button-primary:hover:not(:disabled){background:#a2ceff}.button-secondary{color:var(--ink);background:0 0;border-color:#8b8393}.button-secondary:hover{border-color:var(--cyan);color:var(--cyan)}.button-full{width:100%}.eyebrow{color:var(--cyan);letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;font-weight:700}.status-dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 15px var(--accent);border-radius:50%;margin-right:.45rem;display:inline-block}.landing-page{background:radial-gradient(at 80% 8%,#172e51 0%,#0000 40%),radial-gradient(at 4% 55%,#142b3a 0%,#0000 36%);flex:1}.landing-main{overflow-wrap:anywhere;max-width:1440px;margin:auto}.hero{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:center;gap:clamp(2.5rem,5vw,5rem);min-height:640px;padding:clamp(3.5rem,7vw,6.5rem) clamp(1.25rem,4vw,4rem);display:grid}.hero-copy{min-width:0}.hero h1{letter-spacing:-.07em;max-width:10ch;margin-block:1.6rem;font-size:clamp(3.6rem,5.3vw,6.3rem);line-height:1.02}.hero h1 em,.section-heading h2 em{color:var(--accent);letter-spacing:-.055em}.hero-description{max-width:31rem;color:var(--muted);font-size:1.04rem}.hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.small-note{color:var(--muted);max-width:31rem;margin-top:1.4rem;font-size:.8rem}.hero-art{min-width:0;margin:0}.night-contact-sheet{background:#17151d;border:1px solid #596b86;padding:clamp(.7rem,1.4vw,1.1rem);transform:rotate(1deg);box-shadow:0 30px 80px #0009,0 0 65px #397ed925}.night-contact-sheet img{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto;display:block}.contact-sheet-heading,.contact-sheet-footer{letter-spacing:.14em;justify-content:space-between;align-items:center;gap:1rem;font-size:.66rem;font-weight:700;display:flex}.contact-sheet-heading{color:var(--cyan);padding:.1rem .15rem .8rem}.contact-sheet-footer{color:var(--muted);padding:.85rem .15rem .15rem}.contact-sheet-footer span:first-child{color:var(--ink);letter-spacing:0;font-family:Georgia,serif;font-size:.95rem;font-style:italic;font-weight:400}.workflow{border-top:1px solid var(--line);margin:0 clamp(1.25rem,4vw,4rem) 5rem;padding-top:clamp(2.5rem,5vw,4rem)}.section-heading{justify-content:space-between;align-items:end;gap:2rem;display:flex}.section-heading h2{letter-spacing:-.05em;margin-top:.8rem;font-size:clamp(2.2rem,3.5vw,3.8rem)}.section-heading>p{max-width:20rem;color:var(--muted);font-size:.94rem}.workflow-steps{grid-template-columns:repeat(3,1fr);gap:1rem;margin:2.5rem 0 1.5rem;padding:0;list-style:none;display:grid}.workflow-steps li{border:1px solid var(--line);border-top:2px solid var(--accent);background:#151b29e6;min-width:0;padding:1.5rem}.workflow-steps li:nth-child(2){border-top-color:var(--cyan)}.workflow-steps li:nth-child(3){border-top-color:#96dbdd}.step-number{color:var(--cyan);letter-spacing:.13em;font-size:.7rem;font-weight:700}.workflow-steps h3{letter-spacing:-.025em;margin:1.3rem 0 .6rem;font-size:1.2rem}.workflow-steps p{color:var(--muted);font-size:.9rem}.development-note{border-left:3px solid var(--accent);color:var(--muted);background:#19202e;padding:1rem 1.2rem;font-size:.82rem}.site-footer{border-top:1px solid var(--line);color:var(--muted);padding-block:1.5rem;font-size:.78rem}.site-footer .brand{color:var(--ink);font-size:1.15rem}.site-footer .brand svg{width:25px;height:25px}.site-footer>a:not(.brand){padding-block:.7rem}.auth-page{background:radial-gradient(at 14% 40%,#222c3d 0%,#0000 43%),radial-gradient(at 85% 15%,#192d4d 0%,#0000 37%);flex-direction:column;flex:1;display:flex}.auth-main{overflow-wrap:anywhere;flex:1;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,7vw,7rem);width:100%;max-width:1200px;margin:auto;padding:clamp(2.5rem,5vw,5rem) clamp(1.25rem,5vw,4rem);display:grid}.auth-intro h2{letter-spacing:-.055em;margin-block:1.5rem;font-size:clamp(2.6rem,4vw,4.3rem)}.auth-intro h2 em{color:var(--accent)}.auth-intro>p:not(.eyebrow){max-width:25rem;color:var(--muted);font-size:.95rem}.auth-intro>.small-note{font-size:.75rem!important}.frame-art{align-items:center;height:125px;margin-top:2rem;padding-left:.7rem;display:flex}.frame-art span{background-image:url(/images/times-square-portraits.webp);background-position:0;background-size:300% 100%;border:5px solid #eee6ed;width:94px;height:112px;transform:rotate(-10deg);box-shadow:0 7px 24px #0008}.frame-art span:nth-child(2){background-position:50%;margin-left:-11px;transform:rotate(5deg)}.frame-art span:nth-child(3){background-position:100%;margin-left:-11px;transform:rotate(-5deg)}.auth-card{background:#151b29f2;border:1px solid #47566d;border-radius:10px;min-width:0;padding:clamp(1.4rem,3vw,2.5rem);box-shadow:0 24px 60px #0005}.auth-card h1{letter-spacing:-.045em;margin-top:.8rem;font-size:clamp(2rem,3vw,2.7rem)}.auth-description{color:var(--muted);margin:1rem 0 1.7rem;font-size:.9rem}.form-field{gap:.45rem;display:grid}.form-field label{font-size:.88rem;font-weight:600}.form-field input{width:100%;min-width:0;min-height:50px;color:var(--ink);background:#0c111c;border:1px solid #938a9d;border-radius:5px;padding:.7rem .8rem;font-size:1rem}.form-field input[aria-invalid=true]{border-color:var(--error)}.form-field input:disabled{opacity:.8;background:#2b2731}.form-field input:read-only{color:var(--muted);background:#2b2731}.password-input{position:relative}.password-input input{padding-right:4.4rem}.password-toggle{color:var(--cyan);background:0 0;border:0;border-radius:3px;min-width:48px;padding:0 .75rem;font-size:.78rem;font-weight:700;position:absolute;top:3px;bottom:3px;right:3px}.pwa-install{margin-bottom:2rem}.pwa-install .button{min-height:38px;color:var(--cyan);background:#282230;border-color:#596b86;padding:.45rem .85rem;font-size:.78rem}.pwa-install-instructions{border:1px solid var(--line);background:var(--surface);margin-top:.75rem;padding:1rem}.pwa-install-instructions button{border:1px solid var(--line);color:var(--ink);background:0 0;margin-top:.75rem;padding:.4rem .7rem}.field-hint{color:var(--muted);font-size:.78rem}.field-error{color:var(--error);font-size:.8rem}.form-link-row{text-align:right;margin-top:-.4rem;font-size:.83rem}.form-link-row a{padding-block:.5rem;display:inline-block}.auth-status{overflow-wrap:anywhere;font-size:.85rem}.auth-status p:empty{display:none}.status-error,.status-success{border-left:3px solid;border-radius:4px;margin:1rem 0;padding:.9rem 1rem}.status-error{color:#ffd4cf;border-color:var(--error);background:#41232d}.status-success{color:#c1f2ec;border-color:var(--cyan);background:#173b40}.auth-switch{color:var(--muted);text-align:center;margin-top:1.5rem;font-size:.85rem}.auth-switch a{color:var(--cyan);padding-block:.45rem;font-weight:600;display:inline-block}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:1rem;height:1rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}.legacy-shell{flex:1;place-content:center;gap:.5rem;padding:2rem;display:grid}.account-main{width:min(100%,900px);margin-inline:auto;padding:clamp(2rem,5vw,4rem) clamp(1.25rem,5vw,3rem)}.account-main h1{letter-spacing:-.05em;font-size:clamp(2.4rem,5vw,3.5rem)}.account-intro{color:var(--muted);margin-top:.75rem}.account-section{border:1px solid var(--line);background:#151b29;border-radius:10px;gap:1.2rem;margin-top:1.5rem;padding:clamp(1.25rem,3vw,2rem);display:grid}.account-section h2{font-size:1.4rem}.account-form fieldset{gap:1.5rem}.account-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}@media (max-width:900px){.hero{grid-template-columns:1fr;min-height:0}.hero h1{max-width:13ch}.hero-art{width:100%;max-width:760px}}@media (max-width:760px){.hero{gap:2.5rem;padding-block:3rem}.hero h1{font-size:clamp(3.1rem,10vw,5rem)}.section-heading{flex-direction:column;align-items:start;gap:1rem}.section-heading>p{max-width:30rem}.workflow-steps{grid-template-columns:1fr}.auth-main{grid-template-columns:1fr;max-width:540px}.auth-intro{display:none}.auth-card{padding:1.5rem}.site-header{padding-block:1rem}.site-footer{align-items:start}}@media (max-width:600px){.account-fields{grid-template-columns:1fr}.contact-sheet-heading,.contact-sheet-footer{font-size:.55rem}.contact-sheet-footer span:first-child{font-size:.8rem}}@media (max-width:380px){.site-header .brand{font-size:1.35rem}.site-header .brand svg{width:28px;margin-right:.4rem}.site-header .button{padding-inline:.8rem}.site-header nav{gap:.7rem}.auth-card{padding:1.15rem}.eyebrow{font-size:.65rem}.contact-sheet-heading span:last-child,.contact-sheet-footer span:last-child{display:none}}.landing-page{isolation:isolate;background:radial-gradient(38% 25% at 87% 10%,#246bbd3d,#0000 85%),radial-gradient(38% 28% at 10% 37%,#006b8d33,#0000 80%),#070a11;position:relative}.landing-page:before{content:"";z-index:-1;pointer-events:none;opacity:.3;background-image:linear-gradient(#ffffff08 1px,#0000 1px);background-size:100% 7px;position:absolute;inset:0}.landing-page .landing-main{max-width:1520px}.landing-page .hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2.5rem,5vw,5.5rem);min-height:min(790px,85svh);padding-block:clamp(4rem,7vw,7rem)}.landing-page .hero-copy{z-index:1;position:relative}.landing-page .hero .eyebrow{color:#9de9f3}.landing-page .hero h1{letter-spacing:-.075em;text-wrap:balance;max-width:11ch;margin-block:1.3rem 1.6rem;font-size:clamp(3.7rem,5.5vw,7rem);line-height:.96}.landing-page .hero h1 em{color:#9acbff;text-shadow:0 0 42px #3d95fc52;white-space:nowrap}.landing-page .hero-description{max-width:28rem;font-size:1.08rem;line-height:1.65}.landing-page .hero-actions{margin-top:2.3rem}.landing-page .button-primary{background:#69adff;box-shadow:0 8px 35px #428dfe3d}.landing-page .button-primary:hover{background:#a2ceff}.landing-page .button-secondary{border-color:#797787}.landing-page .small-note{max-width:29rem}.landing-page .small-note span{color:#8bc6ff;padding-right:.25rem}.landing-page .night-contact-sheet{background:#0d121d;border-color:#7790ad;padding:clamp(.65rem,1.2vw,1rem);position:relative;transform:rotate(1.2deg);box-shadow:0 35px 75px #000a,0 0 100px #397ffa26}.landing-page .night-contact-sheet:after{content:"";z-index:-1;pointer-events:none;border:1px solid #7aaeea59;position:absolute;inset:-9px}.landing-page .night-contact-sheet img{aspect-ratio:3/2;object-position:center}.landing-page .contact-sheet-heading,.landing-page .contact-sheet-footer{font-family:Arial,Helvetica,sans-serif}.landing-page .contact-sheet-heading{color:#a9edf1}.landing-page .contact-sheet-footer span:first-child{color:#fff0e8}.landing-page .workflow{border-top-color:#4b627f}.landing-page .workflow:before{content:"THE NIGHT SHIFT / 001";color:#89beff;letter-spacing:.2em;margin-bottom:2rem;font-size:.65rem;font-weight:700;display:block}.landing-page .section-heading h2{font-size:clamp(2.4rem,4vw,4.4rem)}.landing-page .workflow-steps li{background:linear-gradient(150deg,#1a2232,#111723);border-color:#39465a;border-top-width:3px;min-height:210px}.landing-page .workflow-steps li:first-child{border-top-color:#79b6ff}.landing-page .workflow-steps li:nth-child(2){border-top-color:#7de3ee}.landing-page .workflow-steps li:nth-child(3){border-top-color:#9ddbe1}.landing-page .workflow-steps h3{font-size:1.3rem}.landing-page .development-note{background:#17202e}@media (max-width:1100px){.landing-page .hero h1{font-size:clamp(3.6rem,5.6vw,5.3rem)}}@media (max-width:900px){.landing-page .hero{grid-template-columns:1fr;min-height:0}.landing-page .hero h1{font-size:clamp(3.8rem,9vw,6.5rem)}.landing-page .hero-art{max-width:760px}}@media (max-width:600px){.landing-page .hero{gap:3rem;padding-block:3rem 4rem}.landing-page .hero h1{font-size:clamp(3.15rem,11vw,4.6rem)}.landing-page .hero h1 em{white-space:normal}.landing-page .hero-description{font-size:1rem}.landing-page .night-contact-sheet{transform:rotate(.5deg)}.landing-page .contact-sheet-heading span:last-child,.landing-page .contact-sheet-footer span:last-child{display:none}.landing-page .workflow-steps li{min-height:0}}.dashboard-main{width:min(100%,1200px);margin-inline:auto;padding:clamp(2rem,5vw,4rem) clamp(1.25rem,5vw,3rem) 5rem}.dashboard-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(1.5rem,4vw,3rem);display:grid}.dashboard-heading h1{letter-spacing:-.055em;margin:.5rem 0 .7rem;font-size:clamp(2.35rem,5vw,4rem)}.dashboard-heading>p:last-child{color:var(--muted)}.dashboard-profile{background:var(--surface);border:1px solid var(--line);border-radius:10px;align-items:center;gap:.85rem;min-width:min(100%,330px);padding:.85rem 1rem;display:flex}.dashboard-avatar{width:52px;height:52px;color:var(--cyan);background:#25435e;border-radius:50%;flex:none;place-items:center;font-size:1rem;font-weight:700;display:grid;position:relative;overflow:hidden}.dashboard-avatar img{object-fit:cover}.dashboard-profile-identity{overflow-wrap:anywhere;min-width:0}.dashboard-profile-identity h2{margin:0 0 .2rem;font-size:1rem}.dashboard-profile-identity p{color:var(--muted);font-size:.82rem}.dashboard-galleries{margin-top:clamp(2rem,5vw,3.5rem)}.dashboard-recent{border-top:1px solid var(--line);padding-top:clamp(1rem,3vw,2rem)}.dashboard-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem;display:flex}.dashboard-section-heading h2{letter-spacing:-.04em;margin-top:.4rem;font-size:clamp(1.9rem,4vw,2.75rem)}.dashboard-create{min-height:54px}.dashboard-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:1rem;display:grid}.gallery-card{text-align:left;border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);border-radius:10px;padding:0;text-decoration:none;transition:border-color .2s,transform .2s;display:block;overflow:hidden}.gallery-card:hover{border-color:var(--accent);transform:translateY(-2px)}.gallery-cover{aspect-ratio:4/3;background:#1e293a;display:block;position:relative}.gallery-cover img{object-fit:cover}.gallery-cover-empty{height:100%;color:var(--muted);place-items:center;font-size:.85rem;display:grid}.gallery-card-info{color:var(--muted);gap:.2rem;padding:1rem;font-size:.9rem;display:grid}.gallery-card-info strong{color:var(--ink);font-size:1.05rem}.dashboard-gallery-message{border:1px dashed var(--line);color:var(--muted);border-radius:10px;justify-items:start;gap:.75rem;padding:clamp(1.5rem,4vw,2.5rem);display:grid}.dashboard-gallery-message h3{color:var(--ink);font-size:1.3rem}.dashboard-gallery-note{color:var(--muted);margin-top:1rem}@media (max-width:600px){.dashboard-header{grid-template-columns:1fr}.dashboard-profile,.dashboard-section-heading .dashboard-create{width:100%}.dashboard-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,185px),1fr))}}.client-email-step{border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:1.2rem;max-width:560px;margin-top:2rem;padding:clamp(1.25rem,3vw,2rem);display:grid}.client-email-step h2,.local-gallery-heading h2{overflow-wrap:anywhere;font-size:clamp(1.6rem,4vw,2.5rem)}.client-email-step form{gap:1rem;display:grid}.client-email-step .button,.photographer-gallery .button{min-height:50px}.client-email-summary{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.client-email-summary p{margin:0}.client-email-editor{gap:.55rem;width:min(100%,420px);margin-top:.75rem;display:grid}.client-email-editor input{min-height:48px;color:var(--ink);font:inherit;background:#0c111c;border:1px solid #797f90;border-radius:5px;padding:.65rem .8rem}.client-email-editor .gallery-actions{margin:0}.dashboard-main:has(.photographer-gallery){width:min(100%,1600px);padding:clamp(1rem,3vw,2rem)}.photographer-gallery{margin-top:0}.local-gallery-heading{overflow-wrap:anywhere;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-block:1.5rem 1rem;display:flex}.local-gallery-heading h2{margin-top:.4rem;font-size:clamp(1.25rem,3vw,1.8rem)}.selection-count{font-size:1.15rem;font-weight:700}.gallery-share{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.gallery-share>p{color:var(--muted);max-width:42rem}.local-photo-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:.75rem;display:grid}.browse-photo{background:#111723;border:3px solid #0000;border-radius:10px;min-width:0;margin:0;position:relative;overflow:hidden}.browse-photo.is-selected{border-color:var(--cyan)}.photo-open{aspect-ratio:4/5;width:100%;color:var(--ink);background:0 0;border:0;padding:0;display:block;position:relative}.photo-open img{object-fit:contain}.photo-heart{color:#fff;background:#111723e8;border:1px solid #fff8;border-radius:50%;place-items:center;min-width:52px;min-height:52px;font-size:2rem;line-height:1;display:grid}.browse-photo>.photo-heart{position:absolute;top:.5rem;right:.5rem}.photo-heart:disabled{opacity:.7}.photo-open:focus-visible{outline-offset:-5px}.photo-placeholder{height:100%;color:var(--muted);place-items:center;padding:1rem;font-size:.85rem;display:grid}.photo-viewer{width:100%;max-width:none;height:100dvh;max-height:none;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));color:var(--ink);background:#080b12;border:0;margin:0;position:fixed;inset:0}.photo-viewer[open]{flex-direction:column;gap:.75rem;display:flex}.photo-viewer::backdrop{background:#080b12}.viewer-toolbar,.viewer-navigation{flex:none;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.viewer-toolbar p{font-variant-numeric:tabular-nums;font-size:1.1rem}.photo-viewer .button{min-height:52px}.viewer-image{touch-action:pan-y pinch-zoom;flex:1;min-height:0;position:relative}.viewer-image img{object-fit:contain}@media (max-width:600px){.local-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.photo-heart{min-width:48px;min-height:48px}.browse-photo>.photo-heart{top:.25rem;right:.25rem}.gallery-share>.button-primary{width:100%}}.gallery-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-block:1rem;display:flex}.gallery-actions .button,.gallery-select{min-height:48px}.gallery-select{align-items:center;gap:.75rem;display:flex}.gallery-select input{width:24px;height:24px}.photo-heart[aria-pressed=true]{color:#ff5b90;background:#321323;border-color:#ff91b4}.selection-count{color:#ff91b4}.photo-sync,.photo-selected{color:#fff;pointer-events:none;background:#080b12e8;border-radius:.4rem;padding:.25rem .5rem;position:absolute;bottom:.4rem;left:.4rem}.photo-selected{border:1px solid var(--cyan);top:.4rem;bottom:auto}.browse-photo.is-selected{outline:3px solid var(--cyan);outline-offset:-3px}.gallery-discovery-controls{grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:1rem;margin-bottom:1rem;display:grid}.gallery-search,.gallery-discovery-desktop label,.gallery-filter-sheet>label{color:var(--muted);gap:.35rem;font-size:.78rem;font-weight:700;display:grid}.gallery-search input,.gallery-discovery-controls select,.gallery-filter-sheet select{min-width:0;min-height:48px;color:var(--ink);font:inherit;background:#0c111c;border:1px solid #797f90;border-radius:5px;padding:.65rem .8rem}.gallery-search input{width:100%}.gallery-discovery-desktop{align-items:end;gap:.75rem;display:flex}.gallery-discovery-desktop select{min-width:160px}.gallery-discovery-mobile{display:none}.gallery-filter-sheet{width:min(100%,640px);max-width:none;padding:1rem max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));border:1px solid var(--line);background:var(--surface);color:var(--ink);border-bottom:0;border-radius:18px 18px 0 0;margin:0 auto;inset:auto 0 0;box-shadow:0 -20px 60px #0009}.gallery-filter-sheet[open]{gap:1rem;display:grid}.gallery-filter-sheet::backdrop{background:#03050aaa}.gallery-filter-sheet-handle{background:#7d8798;border-radius:99px;width:48px;height:5px;margin:0 auto}.gallery-filter-sheet header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.gallery-filter-sheet h3{font-size:1.25rem}.gallery-result-count{color:var(--muted);margin-bottom:1rem;font-size:.85rem}.gallery-sync-status{width:fit-content;color:var(--cyan);border:1px solid #57769e;border-radius:99px;margin-top:.35rem;padding:.12rem .45rem;font-size:.72rem;font-weight:700}.gallery-sync-status.is-failed{color:var(--error);border-color:#aa5f67}.gallery-sync-status.is-synced{color:#a8e4d8;border-color:#47766f}.gallery-pagination{justify-content:center;align-items:center;gap:.75rem;margin-top:1.5rem;display:flex}.gallery-page-numbers{justify-content:center;align-items:center;gap:.35rem;display:flex}.gallery-page-button{border:1px solid var(--line);min-width:44px;min-height:44px;color:var(--ink);font:inherit;background:0 0;border-radius:5px;padding:.4rem;font-weight:700}.gallery-page-button[aria-current=page]{border-color:var(--cyan);color:var(--cyan);background:#18323c}.gallery-page-ellipsis{min-width:1.5rem;color:var(--muted);text-align:center}@media (max-width:900px){.gallery-discovery-controls{grid-template-columns:minmax(0,1fr) auto}.gallery-discovery-desktop{display:none}.gallery-discovery-mobile{align-self:end;padding-inline:1rem;display:inline-flex}}@media (max-width:600px){.gallery-pagination{flex-wrap:wrap}.gallery-page-numbers{order:-1;width:100%}.gallery-pagination>.button{flex:1;padding-inline:.8rem}}@media (max-width:480px){.gallery-discovery-controls{grid-template-columns:1fr}.gallery-discovery-mobile{width:100%}}.mypix-main{background:radial-gradient(circle at 15% 20%,#183251 0,#0000 36%),radial-gradient(circle at 85% 80%,#20213d 0,#0000 34%);flex:1;place-items:center;padding:clamp(2rem,7vw,6rem) 1.25rem;display:grid}.mypix-card{background:#121927f2;border:1px solid #53657f;border-radius:14px;width:min(100%,560px);padding:clamp(1.5rem,5vw,3rem);box-shadow:0 30px 80px #0008}.mypix-card h1{letter-spacing:-.06em;margin:.6rem 0 .8rem;font-size:clamp(2.7rem,8vw,4.5rem)}.mypix-intro{color:var(--muted);margin-bottom:1.8rem}.mypix-card form{gap:1rem;display:grid}.mypix-status{border-left:3px solid var(--cyan);color:#c8f5f8;background:#17323b;margin-top:1rem;padding:.9rem 1rem}.mypix-card>.field-hint{margin-top:1rem;display:block}.client-shell{min-height:100%;padding-bottom:128px}.client-main{width:min(100%,1500px);margin-inline:auto;padding:clamp(1.5rem,4vw,3.5rem) clamp(1rem,4vw,3rem)}.client-page-heading{justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:2rem;display:flex}.client-page-heading h1{letter-spacing:-.065em;margin:.45rem 0;font-size:clamp(2.6rem,6vw,5rem)}.client-page-heading>div>p:last-child{color:var(--muted)}.client-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:1.25rem;display:grid}.client-gallery-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden}.client-gallery-cover{aspect-ratio:4/3;color:var(--muted);background:#1b2638;place-items:center;text-decoration:none;display:grid;position:relative;overflow:hidden}.client-gallery-cover img{object-fit:cover;transition:transform .25s}.client-gallery-cover:hover img{transform:scale(1.02)}.client-gallery-card-info{justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.client-gallery-card-info h2{margin-bottom:.3rem;font-size:1.2rem}.client-gallery-card-info p{color:var(--muted);font-size:.87rem}.client-back-link{min-height:44px;color:var(--cyan);align-items:center;margin-bottom:1.5rem;font-weight:700;display:inline-flex}.client-photo-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:.65rem;display:grid}.client-photo-card{background:#111723;border-radius:10px;min-width:0;margin:0;position:relative;overflow:hidden}.client-photo-open{aspect-ratio:4/5;width:100%;color:var(--muted);place-items:center;text-decoration:none;display:grid;position:relative;overflow:hidden}.client-photo-open img{object-fit:cover}.client-photo-card>.client-photo-heart{position:absolute;top:.5rem;right:.5rem}.client-photo-page{background:#070a10;grid-template-rows:auto minmax(320px,1fr) auto;gap:1rem;width:100%;min-height:calc(100svh - 90px);padding:clamp(1rem,3vw,2rem);display:grid}.client-photo-toolbar,.client-photo-footer,.client-photo-navigation{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.client-photo-stage{background:#0d121c;border-radius:8px;min-height:55svh;position:relative;overflow:hidden}.client-photo-stage img{object-fit:contain}.client-photo-footer>p{color:var(--muted);text-align:right}.client-photo-footer>p strong{color:var(--ink)}.client-selection-bar{z-index:8;left:50%;bottom:max(1rem, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#111826f2;border:1px solid #65748a;border-radius:12px;justify-content:space-between;align-items:center;gap:1.25rem;width:min(100% - 2rem,900px);padding:.8rem;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 16px 50px #000b}.client-selection-summary{align-items:baseline;gap:1rem;min-width:0;padding-left:.35rem;display:flex}.client-selection-summary strong{color:#ff91b4;white-space:nowrap}.client-selection-price{font-size:1.35rem;font-weight:800}.client-selection-savings{color:var(--cyan);font-size:.82rem}.client-selection-bar .button{flex:none}@media (max-width:700px){.client-shell{padding-bottom:174px}.client-page-heading{flex-direction:column;align-items:start;gap:.75rem}.client-gallery-card-info{flex-direction:column;align-items:stretch}.client-gallery-card-info .button{width:100%}.client-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.client-photo-card>.client-photo-heart{top:.25rem;right:.25rem}.client-photo-footer{flex-direction:column;align-items:stretch}.client-photo-footer>p{text-align:left}.client-selection-bar{border-inline:0;width:100%;padding-bottom:max(.8rem, env(safe-area-inset-bottom));border-bottom:0;border-radius:14px 14px 0 0;flex-direction:column;align-items:stretch;gap:.65rem;bottom:0}.client-selection-summary{grid-template-columns:1fr auto;gap:.05rem 1rem;display:grid}.client-selection-savings{grid-column:1/-1}.client-selection-bar .button{width:100%;min-height:44px}}@media (max-width:420px){.client-photo-toolbar .button,.client-photo-navigation .button{padding-inline:.8rem}}
