:root{--bg:#fff;--fg:#1a1a1a;--muted:#5f6368;--line:#d0d4d8;--accent:#1a1a1a;--on-accent:#fff;--error:#b3261e;--heart:#c2185b;--in-gallery:#188038;--pending:#1a73e8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#121212;--fg:#ececec;--muted:#a0a4a8;--line:#3a3d40;--accent:#ececec;--on-accent:#121212;--error:#f2b8b5;--heart:#f48fb1;--in-gallery:#137333;--pending:#1967d2}}body{background:var(--bg);color:var(--fg);margin:0;font-family:system-ui,sans-serif}main{max-width:40rem;margin:0 auto;padding:1rem}header{max-width:1340px;margin:0 auto}.topnav{color:#fff;background:#0b1f5c;justify-content:flex-end;min-height:2.75rem;padding:0 1rem}.marquee,.banner img{width:100%;height:auto;margin:0 auto;display:block}.marquee{width:min(100%,max(28rem,177.778svh - 28.4444rem))}.banner img{width:min(100%,max(20rem,94.2857svh))}h1{font-size:1.5rem}form{flex-direction:column;gap:.75rem;margin:1rem 0;display:flex}label{flex-direction:column;gap:.25rem;font-weight:600;display:flex}input,select{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:.5rem;padding:.625rem .75rem;font-weight:400}input.code{letter-spacing:.3em;max-width:10ch;font-size:1.5rem}button{font:inherit;border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer;border-radius:.5rem;padding:.625rem 1rem;font-weight:600}button:disabled{opacity:.5;cursor:default}button.secondary{color:var(--fg);background:0 0}button.link{color:inherit;background:0 0;border:0;padding:0;font-weight:400;text-decoration:underline}.muted{color:var(--muted);font-size:.875rem}.site-footer{border-top:1px solid var(--line);max-width:40rem;color:var(--muted);flex-wrap:wrap;gap:.5rem 1.25rem;margin:2rem auto 0;padding:1rem 1rem 2rem;font-size:.875rem;display:flex}.support{margin-top:2rem}.support a{white-space:nowrap}.error{color:var(--error);margin:0}h2{margin:0 0 .25rem;font-size:1.125rem}textarea{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--fg);resize:vertical;border-radius:.5rem;padding:.625rem .75rem}fieldset{border:1px solid var(--line);border-radius:.5rem;flex-direction:column;gap:.75rem;min-width:0;margin:0;padding:.75rem;display:flex}legend{padding:0 .25rem;font-weight:600}label.choice{flex-direction:row;align-items:flex-start;gap:.5rem;font-weight:400}label.choice input{margin-top:.3rem}label.choice small{display:block}.row{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.row>label{flex:10rem}.spread{justify-content:space-between}a.button{background:var(--accent);color:var(--on-accent);border-radius:.5rem;padding:.625rem 1rem;font-weight:600;text-decoration:none;display:inline-block}.card{border:1px solid var(--line);border-radius:.75rem;margin:1rem 0;padding:1rem}.share .qr{background:#fff;border-radius:.5rem;width:min(14rem,100%);padding:.5rem;line-height:0}.share .qr svg{width:100%;height:auto}.share-url{word-break:break-all}.qr-code{font-variant-numeric:tabular-nums}.qr-code strong,strong.qr-code{letter-spacing:.08em;font-size:1.25em}.list{margin:.5rem 0;padding:0;list-style:none}.list>li{border-bottom:1px solid var(--line);padding:.625rem 0}.list>li>a{color:inherit;flex-direction:column;text-decoration:none;display:flex}.inline-form{margin-top:2rem}.inline-form input{text-transform:uppercase;letter-spacing:.1em;flex:8rem}.prewrap{white-space:pre-wrap}button.danger{color:var(--error)}a{color:inherit}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.add-photos{margin:1rem 0}.header-upload button{color:#0b1f5c;background:#ffc61a;border-color:#ffc61a;padding:.25rem .75rem}.grid{grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));gap:.25rem;margin:1rem 0;padding:0;list-style:none;display:grid}.grid li{aspect-ratio:1;background:var(--line);border-radius:.25rem;position:relative;overflow:hidden}.grid .tile,.grid img,.grid .placeholder{width:100%;height:100%;display:block}.grid .tile{cursor:pointer;background:0 0;border:0;border-radius:0;padding:0;position:relative}.grid img{object-fit:cover}.grid li.selected img{opacity:.7}.grid li.selected:after{content:"";border:3px solid var(--pending);border-radius:inherit;pointer-events:none;position:absolute;inset:0}.grid .check{box-sizing:border-box;color:#fff;background:#00000059;border:2px solid #fff;border-radius:50%;place-items:center;width:1.5rem;height:1.5rem;font-size:.875rem;font-weight:700;display:grid;position:absolute;top:.25rem;right:.25rem}.grid .check.in{background:var(--in-gallery)}.grid .check.pending{background:var(--pending)}.chips{flex-wrap:wrap;gap:.375rem;display:flex}button.chip{border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:1rem;padding:.25rem .625rem;font-size:.875rem;font-weight:500}button.chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.select-bar{z-index:1;border:1px solid var(--line);background:var(--bg);border-radius:.5rem;margin:.5rem 0;padding:.5rem .75rem;position:sticky;top:0}dialog.viewer[open]{color:#fff;background:#000;border:0;flex-direction:column;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;display:flex}dialog.viewer::backdrop{background:#000}dialog.viewer button:not(.link,.viewer-nav){color:#000;background:#fff;border-color:#fff}dialog.viewer button.secondary{color:#fff;background:0 0}dialog.viewer .muted,dialog.viewer button.link,dialog.viewer a{color:#d0d4d8}.viewer-bar,.viewer-foot{padding:.5rem 1rem}.viewer-foot{max-height:45dvh;padding-bottom:max(.5rem, env(safe-area-inset-bottom));overflow-y:auto}.viewer-foot p{margin:.25rem 0}.viewer-foot .badge{margin-left:.5rem}.viewer-stage{flex:1;place-items:center;min-height:0;display:grid;position:relative}.viewer-stage img,.viewer-stage video{object-fit:contain;max-width:100%;max-height:100%}.viewer-nav{color:#fff;background:#00000073;border:0;border-radius:50%;width:2.75rem;height:2.75rem;padding:0;font-size:1.75rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.viewer-nav.prev{left:.5rem}.viewer-nav.next{right:.5rem}dialog.viewer button.danger{color:#f2b8b5}dl.info{grid-template-columns:max-content 1fr;gap:.25rem 1rem;margin:.5rem 0;font-size:.875rem;display:grid}dl.info div{display:contents}dl.info dt{color:#a0a4a8}dl.info dd{overflow-wrap:anywhere;margin:0}.grid .placeholder{color:var(--muted);place-items:center;font-size:.75rem;display:grid}.grid .play{color:#fff;background:#0009;border-radius:.25rem;padding:0 .3rem;font-size:.75rem;position:absolute;bottom:.25rem;right:.25rem}.grid .badges{flex-wrap:wrap;gap:.2rem;display:flex;position:absolute;top:.25rem;left:.25rem;right:2rem}.badge{color:#fff;background:#000000a6;border-radius:.25rem;padding:0 .3rem;font-size:.6875rem;line-height:1.4}.badge.warn{background:#b3261e}.upload-panel{left:.5rem;right:.5rem;bottom:max(.5rem, env(safe-area-inset-bottom));border:1px solid var(--line);background:var(--bg);border-radius:.75rem;max-width:30rem;max-height:60vh;margin:0 auto;padding:.5rem .75rem;position:fixed;overflow-y:auto;box-shadow:0 4px 16px #0003}.upload-panel progress{width:100%;height:.375rem}.upload-panel .filename{text-overflow:ellipsis;white-space:nowrap;max-width:60%;overflow:hidden}.slideshow{z-index:10;color:#fff;background:#000;place-items:center;display:grid;position:fixed;inset:0}.slideshow.idle{cursor:none}.slideshow .slide{object-fit:contain;width:100%;height:100%;animation:.8s slide-in;position:absolute;inset:0}@keyframes slide-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.slideshow .slide{animation:none}}.slide-empty{text-align:center;padding:1rem}.slide-qr{background:#0000008c;border-radius:.5rem;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;font-size:.875rem;display:flex;position:absolute;bottom:1rem;right:1rem}.slide-qr .qr{width:clamp(6rem,12vmin,10rem);line-height:0}.slide-qr .qr svg{width:100%;height:auto}.slide-qr.big{margin-top:1rem;font-size:1.25rem;position:static}.slide-qr.big .qr{width:clamp(10rem,40vmin,22rem)}.slide-controls{background:linear-gradient(#0009,#0000);justify-content:space-between;padding:.75rem 1rem;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.slideshow.idle .slide-controls{opacity:0;pointer-events:none}.slide-controls button.secondary{color:#fff;border-color:#fff}.slide-title{font-weight:600}button.heart{border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:1rem;padding:.25rem .75rem}button.heart.on{border-color:var(--heart);color:var(--heart)}.grid .hearts{color:#fff;background:#0009;border-radius:.25rem;padding:0 .3rem;font-size:.75rem;position:absolute;bottom:.25rem;left:.25rem}dialog.how[open]{border:1px solid var(--line);background:var(--bg);width:min(36rem,100vw - 2rem);max-height:min(42rem,100dvh - 2rem);color:var(--fg);border-radius:.75rem;flex-direction:column;padding:0;display:flex}dialog.how::backdrop{background:#00000080}.how-head,.how-foot{padding:.75rem 1rem}.how-foot{border-top:1px solid var(--line)}.how-steps{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:.25rem;margin:0;padding:0 1rem .75rem;list-style:none;display:flex}.how-steps button{border:1px solid var(--line);background:var(--bg);color:var(--muted);border-radius:1rem;padding:.2rem .55rem;font-size:.8125rem;font-weight:500}.how-steps button.done{color:var(--fg)}.how-steps button[aria-current=step]{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.how-body{flex:1;padding:1rem;overflow-y:auto}.how-body h2{outline:none;font-size:1.25rem}.how-options{margin:.75rem 0}.how-options div{border-top:1px solid var(--line);padding:.5rem 0}.how-options dt{font-weight:600}.how-options dd{color:var(--muted);margin:.125rem 0 0}.install-help{flex-basis:100%;margin:0;display:block}.share-icon{vertical-align:-.15em;width:1.1em;height:1.1em}.album-pick{flex-direction:row;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.album-pick select{flex:1;min-width:0;max-width:20rem}.album-list{margin:.5rem 0;padding:0;list-style:none}.album-list li{flex-wrap:nowrap;margin-bottom:.375rem}.album-list input{flex:1;min-width:0}.albums{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.75rem;margin:1rem 0;padding:0;list-style:none;display:grid}.albums a{color:inherit;flex-direction:column;gap:.125rem;text-decoration:none;display:flex}.albums img,.albums .placeholder{aspect-ratio:1;object-fit:cover;background:var(--line);width:100%;color:var(--muted);border-radius:.375rem;place-items:center;font-size:.75rem;display:grid}.albums .album-name{overflow-wrap:anywhere;font-weight:600}.notes{margin:.5rem 0;padding:0;list-style:none}.notes li{border-bottom:1px solid var(--line);padding:.5rem 0}.notes li p{margin:.125rem 0}.notes textarea{box-sizing:border-box;width:100%}
