.yarl__fullsize{width:100%;height:100%}.yarl__relative{position:relative}.yarl__portal{position:fixed;top:0;right:0;bottom:0;left:0;opacity:0;overflow:hidden;z-index:var(--yarl__portal_zindex,9999);transition:opacity var(--yarl__fade_animation_duration,.25s) var(--yarl__fade_animation_timing_function,ease);pointer-events:auto}.yarl__portal_open{opacity:1}.yarl__container{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background-color:var(--yarl__container_background_color,var(--yarl__color_backdrop,#000));outline:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:var(--yarl__controller_touch_action,none);overscroll-behavior:var(--yarl__controller_overscroll_behavior,contain)}.yarl__carousel{display:flex;flex:0 0 auto;height:100%;align-content:center;justify-content:center;align-items:stretch;width:calc(100% + (var(--yarl__carousel_slides_count) - 1)*(100% + var(--yarl__carousel_spacing_px, 0)*1px + var(--yarl__carousel_spacing_percent, 0)*1%));transform:translate(var(--yarl__swipe_offset,0),var(--yarl__pull_offset,0));opacity:var(--yarl__pull_opacity,1)}.yarl__carousel_with_slides{-moz-column-gap:calc(var(--yarl__carousel_spacing_px, 0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent, 0))*var(--yarl__carousel_spacing_percent, 0)*1%);column-gap:calc(var(--yarl__carousel_spacing_px, 0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent, 0))*var(--yarl__carousel_spacing_percent, 0)*1%)}.yarl__flex_center{display:flex;justify-content:center;align-content:center;align-items:center}.yarl__slide{flex:1;position:relative;overflow:hidden;padding:calc(var(--yarl__carousel_padding_px, 0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent, 0))*var(--yarl__carousel_padding_percent, 0)*1%)}[dir=rtl] .yarl__slide{--yarl__direction:-1}.yarl__slide_image{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain;touch-action:var(--yarl__controller_touch_action,none);-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.yarl__slide_image_cover{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.yarl__slide_image_loading{opacity:0}@media screen and (min-width:800px){.yarl__slide_wrapper:not(.yarl__slide_wrapper_interactive) .yarl__slide_image{-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden;-webkit-transform-style:preserve-3d}}.yarl__slide_placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%) translateY(-50%);line-height:0}.yarl__slide_loading{color:var(--yarl__slide_icon_loading_color,var(--yarl__color_button,hsla(0,0%,100%,.8)));animation:yarl__delayed_fadein 1s linear}.yarl__slide_loading line{animation:yarl__stroke_opacity 1s linear infinite}.yarl__slide_loading line:first-of-type{animation-delay:-1.875s}.yarl__slide_loading line:nth-of-type(2){animation-delay:-1.75s}.yarl__slide_loading line:nth-of-type(3){animation-delay:-1.625s}.yarl__slide_loading line:nth-of-type(4){animation-delay:-1.5s}.yarl__slide_loading line:nth-of-type(5){animation-delay:-1.375s}.yarl__slide_loading line:nth-of-type(6){animation-delay:-1.25s}.yarl__slide_loading line:nth-of-type(7){animation-delay:-1.125s}.yarl__slide_loading line:nth-of-type(8){animation-delay:-1s}.yarl__slide_error{width:var(--yarl__slide_icon_error_size,48px);height:var(--yarl__slide_icon_error_size,48px);color:var(--yarl__slide_icon_error_color,red)}@media (prefers-reduced-motion){.yarl__portal,.yarl__slide{transition:unset}.yarl__slide_loading,.yarl__slide_loading line{animation:unset}}.yarl__toolbar{position:absolute;top:0;right:0;bottom:auto;left:auto;display:flex;justify-content:flex-end;padding:var(--yarl__toolbar_padding,8px)}[dir=rtl] .yarl__toolbar{top:0;right:auto;bottom:auto;left:0}.yarl__icon{width:var(--yarl__icon_size,32px);height:var(--yarl__icon_size,32px)}.yarl__button{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--yarl__button_background_color,transparent);border:var(--yarl__button_border,0);margin:var(--yarl__button_margin,0);outline:none;line-height:0;padding:var(--yarl__button_padding,8px);color:var(--yarl__color_button,hsla(0,0%,100%,.8));filter:var(--yarl__button_filter,drop-shadow(2px 2px 2px rgba(0,0,0,.8)));-webkit-tap-highlight-color:transparent}.yarl__button:focus{color:var(--yarl__color_button_active,#fff)}.yarl__button:focus:not(:focus-visible){color:var(--yarl__color_button,hsla(0,0%,100%,.8))}.yarl__button:focus-visible{color:var(--yarl__color_button_active,#fff)}@media (hover:hover){.yarl__button:focus-visible:hover,.yarl__button:focus:hover,.yarl__button:hover{color:var(--yarl__color_button_active,#fff)}}.yarl__button:disabled{color:var(--yarl__color_button_disabled,hsla(0,0%,100%,.4));cursor:default}.yarl__navigation_next,.yarl__navigation_prev{position:absolute;top:50%;transform:translateY(-50%);padding:var(--yarl__navigation_button_padding,24px 16px)}.yarl__navigation_prev{left:0}[dir=rtl] .yarl__navigation_prev{left:unset;right:0;transform:translateY(-50%) rotate(180deg)}.yarl__navigation_next{right:0}[dir=rtl] .yarl__navigation_next{left:0;right:unset;transform:translateY(-50%) rotate(180deg)}.yarl__no_scroll{height:100%;overflow:hidden;overscroll-behavior:none}@keyframes yarl__delayed_fadein{0%{opacity:0}80%{opacity:0}to{opacity:1}}@keyframes yarl__stroke_opacity{0%{stroke-opacity:1}to{stroke-opacity:.125}}.yarl__counter{position:var(--yarl__counter_position,absolute);top:var(--yarl__counter_top,0);left:var(--yarl__counter_left,0);bottom:var(--yarl__counter_bottom,unset);right:var(--yarl__counter_right,unset);color:var(--yarl__counter_color,var(--yarl__color_button,hsla(0,0%,100%,.8)));filter:var(--yarl__counter_filter,drop-shadow(2px 2px 2px rgba(0,0,0,.8)));margin:var(--yarl__counter_margin,var(--yarl__toolbar_padding,8px));padding:var(--yarl__counter_padding,var(--yarl__button_padding,8px));line-height:var(--yarl__counter_line_height,var(--yarl__icon_size,32px));-webkit-user-select:var(--yarl__counter_user_select,none);-moz-user-select:var(--yarl__counter_user_select,none);user-select:var(--yarl__counter_user_select,none)}[dir=rtl] .yarl__counter{left:var(--yarl__counter_rtl_left,unset);right:var(--yarl__counter_rtl_right,0)}:root{--bg: #eef1f5;--panel: #ffffff;--panel-2: #e4e9ef;--fg: #16202a;--muted: #5d6b7a;--line: #d9e0e8;--accent: #0f766e;--accent-hover: #0b5f58;--accent-soft: #d8efec;--on-accent: #ffffff;--sun: #f5b83d;--danger: #c2410c;--shadow: 0 1px 2px rgba(22, 32, 42, .06), 0 8px 24px rgba(22, 32, 42, .08);--display: "Geologica", "Onest", system-ui, sans-serif;--body: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;--r-sm: 4px;--r-md: 6px;--r-lg: 8px;--r-xs: 2px;--pad: clamp(16px, 4vw, 40px);--max: 1240px;color-scheme:light}@media (prefers-color-scheme: dark){:root{--bg: #0e1419;--panel: #161e25;--panel-2: #1d2731;--fg: #e8edf2;--muted: #93a1af;--line: #26323d;--accent: #2dd4bf;--accent-hover: #5eead4;--accent-soft: #123a37;--on-accent: #062a26;--sun: #f5b83d;--danger: #fb923c;--shadow: 0 1px 2px rgba(0,0,0,.3), 0 10px 30px rgba(0,0,0,.35);color-scheme:dark}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--fg);font:400 16px/1.6 var(--body);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent);color:var(--on-accent)}.shell{min-height:100vh;display:flex;flex-direction:column}.page{flex:1;width:100%;max-width:var(--max);margin:0 auto;padding:36px var(--pad) 80px}.topbar{position:sticky;top:0;z-index:20;padding-top:env(safe-area-inset-top);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.topbar-inner{max-width:var(--max);margin:0 auto;padding:14px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:16px}.wordmark{font:700 1.15rem/1 var(--display);letter-spacing:-.02em;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;gap:10px}.wordmark:before{content:"";width:10px;height:10px;border-radius:1px;background:var(--accent)}.nav{display:flex;gap:2px;padding:3px;background:var(--panel-2);border-radius:var(--r-md)}.nav a{font-weight:600;font-size:.92rem;text-decoration:none;color:var(--muted);padding:8px 16px;border-radius:var(--r-sm);transition:color .15s,background .15s}.nav a:hover{color:var(--fg)}.nav a.active{background:var(--panel);color:var(--fg);box-shadow:0 1px 3px #16202a1f}.footer{max-width:var(--max);width:100%;margin:0 auto;padding:22px var(--pad) calc(22px + env(safe-area-inset-bottom));display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:.875rem;border-top:1px solid var(--line)}.footer a{text-decoration:none;font-weight:500}.footer a:hover{color:var(--accent)}.page-title{font:700 clamp(2.2rem,5vw,3.6rem)/1.02 var(--display);letter-spacing:-.035em;margin:0 0 32px}.section-title{font:650 1.35rem/1.2 var(--display);letter-spacing:-.02em;margin:64px 0 18px}.notice{color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:18px 20px;margin:0}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(18px,3vw,28px)}.btn{font:600 .95rem/1 var(--body);height:44px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);border-radius:var(--r-sm);cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s}.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn.ghost{background:var(--panel);color:var(--fg);border-color:var(--line)}.btn.ghost:hover{border-color:var(--fg);background:var(--panel)}.btn:disabled{opacity:.45;cursor:not-allowed}input[type=password],input[type=text],input[type=date],input:not([type]){font:500 1rem var(--body);color:var(--fg);background:var(--panel);width:100%;height:46px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-sm);transition:border-color .15s,box-shadow .15s}input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input:disabled{opacity:.6}.form-error{color:var(--danger);font-weight:500;margin:8px 0 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.display{font:800 clamp(5rem,17vw,13rem)/.85 var(--display);letter-spacing:-.05em;margin:8px 0 36px -.04em}.home-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(20px,4vw,48px);align-items:start}.home figure{margin:0}.home figure img{width:100%;object-fit:cover;background:var(--panel-2);border-radius:var(--r-lg)}.home-lead img{aspect-ratio:4 / 5}.home figcaption{font-size:.85rem;color:var(--muted);padding:10px 4px 0}.home-side{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(20px,3vw,32px)}.greeting{font:700 clamp(1.6rem,2.6vw,2.1rem)/1.1 var(--display);letter-spacing:-.03em;margin:0 0 14px}.lede{font-size:1.08rem;color:var(--muted);max-width:46ch;margin:0 0 10px}.lede:last-of-type{color:var(--fg);font-weight:600}.facts{margin:24px 0 0;display:grid;gap:8px}.facts div{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;background:var(--bg);border-radius:var(--r-sm)}.facts dt{color:var(--muted)}.facts dd{margin:0;font-weight:600}.home-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.home-pair img{aspect-ratio:1}.invite-list{display:grid;gap:28px}.invite{display:grid;grid-template-columns:1fr 1fr;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.invite-art{width:100%;height:100%;min-height:280px;object-fit:cover;background:var(--panel-2)}.invite-body{padding:clamp(22px,3.5vw,40px)}.invite h2{font:700 clamp(1.9rem,3.6vw,2.8rem)/1.02 var(--display);letter-spacing:-.035em;margin:0 0 24px}.invite-facts{margin:0 0 22px;display:grid;gap:14px}.invite-facts div{display:grid;grid-template-columns:84px 1fr;gap:14px}.invite-facts dt{font-weight:600;color:var(--accent)}.invite-facts dd{margin:0}.invite-details{margin:0 0 26px;color:var(--muted);max-width:52ch}.invite-actions{display:flex;gap:10px;flex-wrap:wrap}.invite.is-past .invite-art{filter:grayscale(1);opacity:.7}.past-note{margin:16px 0 0;color:var(--muted);font-size:.9rem}.countdown{list-style:none;padding:6px;margin:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg)}.countdown li{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;align-items:center;padding:14px 16px;border-radius:var(--r-sm)}.countdown li+li{border-top:1px solid var(--line)}.countdown .who{font:650 1.1rem var(--display);letter-spacing:-.01em}.countdown .when{color:var(--muted)}.countdown .left{justify-self:end;font-weight:600;font-size:.9rem;background:var(--bg);color:var(--muted);padding:6px 12px;border-radius:var(--r-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.countdown .left strong{color:var(--fg)}.countdown li:first-child .left{background:var(--sun);color:#3d2a00}.countdown li:first-child .left strong{color:inherit}.invite-solo{max-width:1040px;margin:0 auto}.solo-home{display:inline-block;margin-top:32px;color:var(--muted);font-size:.9rem}.crumbs{display:flex;flex-wrap:wrap;gap:4px;font-size:.9rem;color:var(--muted);margin-bottom:10px}.crumbs a{text-decoration:none;font-weight:500}.crumbs a:hover{color:var(--accent)}.crumbs .sep{margin:0 6px;opacity:.6}.folders{list-style:none;padding:0;margin:0 0 48px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.folders.level1,.folders.level2{grid-template-columns:repeat(auto-fill,minmax(min(46%,190px),1fr))}.folder{position:relative;display:block;aspect-ratio:4 / 3;overflow:hidden;text-decoration:none;border-radius:var(--r-md);background:var(--panel);border:1px solid var(--line);color:var(--fg);transition:transform .2s,box-shadow .2s}.folders.level1 .folder,.folders.level2 .folder{aspect-ratio:1}.folder img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}.folder.has-cover{color:#fff;border-color:transparent}.folder.has-cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#0a1016b3,#0a101600 60%)}.folder:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.folder:hover img{transform:scale(1.04)}.folder-text{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:16px 18px;display:grid;gap:2px}.folder-icon{width:20px;height:16px;fill:var(--accent);margin-bottom:6px}.folder.has-cover .folder-icon{fill:#fff;opacity:.9}.folder-label{font:700 clamp(2rem,4vw,2.8rem)/1 var(--display);letter-spacing:-.04em;font-variant-numeric:tabular-nums}.folders.level1 .folder-label{font-size:clamp(1.5rem,2.6vw,2rem);letter-spacing:-.03em}.folder-sub{font-size:.9rem;opacity:.85}.count{color:var(--muted);font-size:.9rem;margin:0 0 12px}.grid{list-style:none;padding:0;margin:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(min(31%,220px),1fr))}.tile{display:block;width:100%;padding:0;border:0;cursor:zoom-in;background:var(--panel-2);overflow:hidden;aspect-ratio:1;border-radius:var(--r-xs)}.tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}.tile:hover img{transform:scale(1.04)}.lock-stage{position:relative;min-height:540px;overflow:hidden;border-radius:var(--r-lg)}.lock-blur{filter:blur(16px);opacity:.9;pointer-events:none;-webkit-user-select:none;user-select:none}.tile.fake{display:block}.tile.f0{background:#9cc9c3}.tile.f1{background:#c7d3e0}.tile.f2{background:#f3d39a}.tile.f3{background:#7f97ad}.lock-card{display:grid;gap:12px;width:min(400px,100%);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:30px;box-shadow:var(--shadow)}.lock-stage .lock-card{position:absolute;left:50%;top:64px;transform:translate(-50%)}.lock-card h1,.lock-card h2{font:700 1.6rem/1.1 var(--display);letter-spacing:-.03em;margin:0}.lock-card p{margin:0 0 6px;color:var(--muted)}.lock-card label{font-size:.875rem;font-weight:600;margin-top:6px}.lock-card .btn{margin-top:8px;width:100%}.auth-page{display:grid;place-items:center;padding-top:32px}.admin-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:28px}.admin-head .page-title{margin:0}.admin-target{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-target label{display:grid;gap:6px}.admin-target span{font-size:.875rem;font-weight:600;color:var(--muted)}.dropzone{margin-top:20px;border:2px dashed var(--line);border-radius:var(--r-md);background:var(--bg);padding:36px 20px;text-align:center;display:grid;gap:10px;justify-items:center;transition:border-color .15s,background .15s}.dropzone p{margin:0}.dropzone.is-over{border-color:var(--accent);background:var(--accent-soft)}.drop-icon{width:32px;height:32px;fill:none;stroke:var(--accent);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.dropzone .hint{color:var(--muted);font-size:.85rem;max-width:52ch}.staged{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.staged li{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--panel)}.staged-blank{width:56px;height:56px;border-radius:var(--r-xs);background:var(--panel-2)}.staged img{width:56px;height:56px;object-fit:cover;border-radius:var(--r-xs);background:var(--panel-2)}.staged-info{min-width:0;display:grid;gap:2px;position:relative}.staged-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staged-meta{font-size:.85rem;color:var(--muted);font-variant-numeric:tabular-nums}.staged-bar{height:3px;border-radius:0;background:var(--accent-soft);overflow:hidden;margin-top:4px}.staged-bar:after{content:"";display:block;height:100%;width:calc(var(--p) * 100%);background:var(--accent);transition:width .2s}.staged .saved{border-color:var(--accent)}.staged .saved .staged-meta{color:var(--accent);font-weight:600}.staged .error,.staged .invalid{border-color:color-mix(in srgb,var(--danger) 45%,var(--line))}.staged .error .staged-meta,.staged .invalid .staged-meta{color:var(--danger);white-space:normal}.staged .invalid img{opacity:.5}.icon-btn{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted);cursor:pointer}.icon-btn:hover{background:var(--bg);color:var(--fg)}.icon-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.upload-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted)}.upload-bar strong{color:var(--fg)}.upload-actions{display:flex;gap:8px}.summary{margin:16px 0 0;padding:12px 14px;border-radius:var(--r-sm);background:var(--accent-soft);color:var(--fg);font-weight:500}.admin-grid li{position:relative}.admin-grid .tile{cursor:default}.delete{position:absolute;right:8px;bottom:8px;font:600 .8rem var(--body);border:0;border-radius:var(--r-xs);background:color-mix(in srgb,var(--panel) 92%,transparent);color:var(--danger);padding:6px 10px;cursor:pointer}.delete:hover{background:var(--danger);color:#fff}.dest{border:0;margin:0;padding:0;display:grid;gap:12px}.dest legend{font:650 1.05rem var(--display);letter-spacing:-.01em;padding:0;margin-bottom:12px}.segmented{display:inline-flex;padding:3px;gap:2px;background:var(--panel-2);border-radius:var(--r-md);justify-self:start}.segmented button{font:600 .92rem var(--body);border:0;background:transparent;color:var(--muted);padding:9px 16px;border-radius:var(--r-sm);cursor:pointer}.segmented button.on{background:var(--panel);color:var(--fg);box-shadow:0 1px 3px #16202a1f}.dest-note{color:var(--muted);font-size:.9rem;margin:0;max-width:70ch}.dest-custom{display:grid;gap:8px;max-width:560px}.dest-chip{display:inline-block;font-weight:600;color:var(--fg);background:var(--bg);padding:1px 8px;border-radius:var(--r-xs);margin-right:6px}.dest-why{color:var(--muted)}.summary p{margin:0}.summary-links{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;gap:8px}.summary-links a{display:inline-block;font-weight:600;text-decoration:none;background:var(--panel);border:1px solid var(--line);padding:4px 10px;border-radius:var(--r-xs)}.summary-links a:hover{border-color:var(--accent);color:var(--accent)}.tile-folder{position:absolute;left:8px;top:8px;font-size:.75rem;font-weight:600;background:color-mix(in srgb,var(--panel) 90%,transparent);padding:2px 6px;border-radius:var(--r-xs);max-width:calc(100% - 16px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn svg,.item-actions svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.danger:hover{background:color-mix(in srgb,var(--danger) 85%,#000);border-color:transparent}.danger-text{color:var(--danger)!important}.title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:32px}.title-row .page-title{margin:0;overflow-wrap:anywhere}.title-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-note{margin:-20px 0 24px;font-size:.85rem;color:var(--muted)}.folder-item,.photo-item{position:relative}.item-actions{position:absolute;top:8px;right:8px;z-index:2;display:flex;gap:4px;opacity:0;transition:opacity .15s}.folder-item:hover .item-actions,.photo-item:hover .item-actions,.item-actions:focus-within{opacity:1}@media (hover: none){.item-actions{opacity:1}}.item-actions button{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:var(--r-sm);cursor:pointer;background:color-mix(in srgb,var(--panel) 92%,transparent);color:var(--fg);box-shadow:0 1px 3px #0000002e}.item-actions button:hover{background:var(--panel)}.folder-editing{display:grid;align-items:center;padding:14px;aspect-ratio:auto!important;min-height:100%;border-color:var(--accent)}.rename{display:grid;gap:10px;max-width:720px;margin-bottom:32px}.rename input{font-size:1.15rem;font-weight:600}.rename.compact{margin:0;gap:8px}.rename.compact input{font-size:.95rem;height:40px}.rename-actions{display:flex;gap:8px}.rename.compact .btn{height:36px;padding:0 12px;font-size:.85rem}.rename .form-error{margin:0;font-size:.85rem}.rename-hint{margin:0;color:var(--muted);font-size:.85rem}dialog.confirm{width:min(460px,calc(100% - 32px));border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;background:var(--panel);color:var(--fg);box-shadow:var(--shadow)}dialog.confirm::backdrop{background:#0a10168c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}dialog.confirm h2{font:700 1.3rem/1.2 var(--display);letter-spacing:-.02em;margin:0 0 12px;overflow-wrap:anywhere}.confirm-body p{margin:0;color:var(--muted)}.confirm-body strong{color:var(--fg)}.confirm-photo{display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:center}.confirm-photo img{width:72px;height:72px;object-fit:cover;border-radius:var(--r-xs)}.confirm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}dialog.confirm .form-error{margin-top:12px}@media (max-width: 760px){.page{padding-top:24px}.topbar-inner{padding:10px var(--pad)}.wordmark{font-size:1rem}.nav a{padding:7px 11px;font-size:.85rem}.home-grid,.invite,.admin-target{grid-template-columns:1fr}.invite-art{min-height:0;aspect-ratio:16 / 10}.countdown li{grid-template-columns:1fr auto}.countdown .when{grid-row:2;margin-top:-10px;font-size:.9rem}.countdown .left{grid-row:1 / span 2;grid-column:2}.lock-stage .lock-card{top:20px;padding:22px;width:calc(100% - 24px)}.upload-actions{width:100%}.upload-actions .btn:last-child{flex:1}.title-actions .btn{height:38px;padding:0 12px;font-size:.85rem}}@media (max-width: 480px){.wordmark-text{display:none}.wordmark:before{width:14px;height:14px}}@media (max-width: 400px){.nav a{padding:7px 9px;font-size:.8rem}}@media (prefers-reduced-motion: reduce){*{transition:none!important}}@media print{.topbar,.footer,.invite-actions,.solo-home{display:none}body{background:#fff;color:#000}.invite{border:0}}
