.flow-success{border:1px solid color-mix(in srgb,var(--ok)44%,var(--border));background:color-mix(in srgb,var(--ok)12%,var(--surface));border-radius:12px;gap:.4rem;padding:.8rem;display:grid}.flow-success h3,.flow-success h1,.flow-success h2{color:var(--text);margin:0}.flow-success p{color:var(--text-muted);margin:0}.flow-success-screen{z-index:44;text-align:center;background:radial-gradient(circle at 18% 14%,color-mix(in srgb,var(--accent)30%,transparent),transparent 48%),radial-gradient(circle at 82% 22%,color-mix(in srgb,var(--ok)22%,transparent),transparent 45%),linear-gradient(180deg,color-mix(in srgb,var(--surface)96%,transparent),color-mix(in srgb,var(--surface-2)94%,transparent));border:0;border-radius:0;align-content:center;justify-items:center;gap:clamp(.55rem,2.1vh,1rem);width:100%;min-height:100svh;padding:clamp(1.2rem,4vw,2.6rem);position:fixed;inset:0}.flow-success-screen p{width:min(42ch,100%);max-width:42ch;margin-inline:auto}.flow-success-saved-value{letter-spacing:-.04em;margin:0;font-size:clamp(2.2rem,9vw,4rem);line-height:1}.flow-success-subtitle{color:color-mix(in srgb,var(--ok)72%,var(--text));margin:0;font-size:clamp(1.2rem,4.4vw,1.9rem);font-weight:700}.flow-restore-link{color:var(--accent);text-underline-offset:.18rem;font-weight:700;text-decoration:underline}.flow-restore-link:hover,.flow-restore-link:focus-visible{color:color-mix(in srgb,var(--accent-2)92%,white)}.flow-success-delete-album-block{background:color-mix(in srgb,var(--surface-2)88%,transparent);border:1px solid var(--border);text-align:center;border-radius:12px;margin:.6rem 0;padding:.8rem 1rem}.flow-success-delete-album-hint{font-size:var(--text-sm);margin:0 0 .6rem;line-height:1.4}.flow-success-open-album-link{background:var(--accent);color:var(--accent-contrast,#fff);border-radius:10px;padding:.45rem .9rem;font-weight:700;text-decoration:none;display:inline-block}.flow-success-open-album-link:hover,.flow-success-open-album-link:focus-visible{background:var(--accent-2);color:var(--accent-contrast,#fff)}.flow-success-title{letter-spacing:-.03em;margin:.1rem 0 .15rem;font-size:clamp(2rem,8vw,3.4rem);line-height:1.02;animation:.52s cubic-bezier(.16,.84,.3,1) both flow-fade-in-down}.flow-success-super-swipe-count{letter-spacing:.02em;color:color-mix(in srgb,var(--accent)92%,var(--text));margin:.2rem 0 0;font-size:clamp(1.6rem,6vw,2.6rem);font-weight:600;animation:.56s cubic-bezier(.16,.84,.3,1) 80ms both flow-fade-in-down}@keyframes flow-fade-in-down{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}.flow-party-wrap{justify-items:center;width:100%;display:grid}.flow-party-hero{width:clamp(7rem,28vw,12rem);height:auto;filter:drop-shadow(0 14px 30px color-mix(in srgb,var(--shadow)62%,transparent));animation:1.8s ease-in-out infinite alternate flow-party-bob}@keyframes flow-party-bob{0%{transform:translateY(0)rotate(-2deg)scale(.98)}to{transform:translateY(-6px)rotate(2deg)scale(1.02)}}.flow-success-screen .nextcloud-action-button{min-width:min(24rem,100%);min-height:3.35rem;margin-top:.4rem}.success-share-card{width:min(28rem,100%);margin:var(--space-3)auto var(--space-2);padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);border:1px solid color-mix(in srgb,var(--accent)25%,var(--border));background:color-mix(in srgb,var(--accent)5%,var(--surface));align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.success-share-preview{text-align:center;color:var(--text);width:auto;max-width:none;margin:0;font-size:.92rem;font-style:italic;line-height:1.5}.success-share-button{width:100%;min-width:auto!important}.flow-flow-shell{border:1px solid var(--border);background:linear-gradient(170deg,color-mix(in srgb,var(--surface)92%,transparent),color-mix(in srgb,var(--surface-2)88%,transparent));border-radius:14px;flex-direction:column;height:100%;min-height:0;padding:.85rem;display:flex;position:relative;overflow:hidden}.flow-flow-shell.is-success-step{min-height:0}.flow-flow-shell.is-review-step{flex-direction:column;min-height:0;display:flex;overflow:hidden}.flow-flow-shell.is-review-step .flow-step-screen{flex-direction:column;flex:1 1 0;align-items:center;min-height:0;display:flex;overflow:hidden}.flow-flow-shell.is-review-step .flow-step-screen>*{box-sizing:border-box;width:100%;max-width:42rem}.flow-flow-shell.is-review-step .swipe-review-shell{flex-direction:column;flex:1 1 0;min-height:0;display:flex;overflow:hidden}.flow-flow-shell.is-review-step .swipe-review-list{flex:0 auto;min-height:0;max-height:min(100dvh - 15rem,42rem);overflow-y:auto}.flow-flow-shell.is-swipe-step .flow-step-screen{grid-template-rows:1fr;align-content:stretch;align-items:stretch;overflow:hidden}.flow-flow-error{color:var(--danger);margin:0 0 .5rem;font-size:.9rem}.flow-step-screen{flex:1 1 0;align-content:start;align-items:flex-start;gap:.5rem;min-height:0;display:grid;overflow:auto}.flow-step-content{text-align:left;width:min(42rem,100%);padding:var(--space-4)var(--space-3);margin-inline:auto}.flow-step-content-fill-mobile{flex-direction:column;gap:.6rem;display:flex}.flow-step-screen.is-success-screen{min-height:100svh}.flow-step-enter-forward{animation:flow-step-in-forward var(--motion-base)cubic-bezier(.2,.8,.2,1)both}.flow-step-enter-back{animation:flow-step-in-back var(--motion-base)cubic-bezier(.2,.8,.2,1)both}@keyframes flow-step-in-forward{0%{opacity:0;transform:translate(36px)}to{opacity:1;transform:translate(0)}}@keyframes flow-step-in-back{0%{opacity:0;transform:translate(-36px)}to{opacity:1;transform:translate(0)}}.flow-step-header{overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;align-content:start;gap:.45rem;min-height:clamp(6.2rem,10vw,7.2rem);display:grid}.flow-step-header-row{justify-content:space-between;align-items:center;display:flex}.flow-step-header h2{color:var(--text);overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;min-height:1.35em;margin:0;font-size:clamp(1.15rem,4vw,1.45rem);animation:.4s cubic-bezier(.16,.84,.3,1) both flow-fade-in-down}.flow-step-header p{color:var(--text-muted);font-size:var(--text-sm);overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;min-height:2.5em;margin:0;line-height:1.25;animation:.4s cubic-bezier(.16,.84,.3,1) 80ms both flow-fade-in-down}.flow-step-header p.is-empty{visibility:hidden}.flow-provider-pill{margin-left:auto}.flow-provider-list{gap:.55rem;display:grid}.flow-provider-card{width:100%}.flow-provider-card strong{color:var(--text);font-size:1rem}.flow-login-form{gap:.62rem;display:grid}.flow-login-form label{gap:.25rem;display:grid}.flow-login-form label span{color:var(--text);font-size:var(--text-sm)}.flow-login-form input:not([type=checkbox]){width:100%;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:12px;min-height:2.85rem;padding:.75rem}.flow-password-field-wrap{position:relative}.flow-password-field-wrap input{padding-right:2.7rem}.flow-password-visibility-toggle{width:var(--touch-min);min-width:var(--touch-min);height:var(--touch-min);min-height:var(--touch-min);border:1px solid var(--border);background:color-mix(in srgb,var(--surface)90%,transparent);color:var(--text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;right:.45rem;transform:translateY(-50%)}.flow-password-visibility-toggle:hover,.flow-password-visibility-toggle:focus-visible{border-color:color-mix(in srgb,var(--accent)62%,var(--border));background:color-mix(in srgb,var(--accent)12%,var(--surface))}.flow-login-checkbox-row{width:100%;color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.55rem;font-size:.9rem;line-height:1.35;display:flex}.flow-login-checkbox-row span{white-space:normal;min-width:0}.flow-status{color:var(--ok);font-size:var(--text-sm);margin:.1rem 0 0}.flow-folder-list{border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)90%,transparent);border-radius:12px;padding:.7rem}.flow-folder-list p{color:var(--text-muted);margin:0}.flow-folder-head-row{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.flow-folder-legend{font-size:var(--text-sm);color:color-mix(in srgb,var(--text-muted)88%,var(--text));border:1px solid color-mix(in srgb,var(--accent)34%,var(--border));background:color-mix(in srgb,var(--accent)10%,transparent);border-radius:10px;margin:0 0 .45rem;padding:.46rem .58rem;line-height:1.3}.flow-folder-head-actions{flex-wrap:wrap;gap:.35rem;display:flex}.flow-folder-bulk-button{min-height:var(--touch-min);font-size:var(--text-sm);padding:.5rem .62rem}.flow-folder-groups{gap:.5rem;margin:.4rem 0 0;padding:0;list-style:none;display:grid}.flow-list-sentinel{width:100%;height:1px}.flow-folder-group{opacity:0;animation:flow-folder-in var(--motion-base)ease forwards;animation-delay:calc(var(--idx,0)*var(--motion-stagger-step));transform:translateY(8px)}.flow-folder-group:nth-child(n+8){animation-delay:calc(7*var(--motion-stagger-step))}@keyframes flow-folder-in{to{opacity:1;transform:translateY(0)}}.flow-folder-row{align-items:flex-start;gap:.36rem;display:flex}.flow-folder-parent-row>label,.flow-folder-row.is-subfolder label{border:1px solid var(--border);background:color-mix(in srgb,var(--surface)90%,transparent);border-radius:10px;flex:1;align-items:flex-start;gap:.55rem;padding:.58rem .6rem;display:flex}.flow-folder-row.is-subfolder{margin-top:.34rem;padding-inline-start:4.8rem}.flow-folder-row.is-subfolder label{margin-inline-start:0;padding-inline-start:1.58rem}.flow-folder-row label{min-height:var(--touch-min);cursor:pointer;align-items:center;gap:.5rem;padding-block:.35rem;display:flex}.flow-folder-row input{flex-shrink:0;width:1.2rem;min-width:1.2rem;height:1.2rem;min-height:1.2rem;margin-top:0}.flow-folder-row span{gap:.12rem;min-width:0;display:grid}.flow-folder-row strong{color:var(--text);font-size:var(--text-md);align-items:center;gap:.35rem;display:inline-flex}.flow-folder-row small{color:var(--text-muted);font-size:var(--text-xs)}.flow-folder-expand{width:var(--touch-min);min-width:var(--touch-min);height:var(--touch-min);border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)90%,transparent);color:var(--text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.flow-folder-expand:hover,.flow-folder-expand:focus-visible{border-color:color-mix(in srgb,var(--accent)52%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent)24%,transparent)}.flow-folder-expand-spacer{width:var(--touch-min);min-width:var(--touch-min);height:var(--touch-min)}.flow-folder-children{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .26s,opacity .26s;display:grid}.flow-folder-children.is-open{opacity:1;grid-template-rows:1fr}.flow-folder-children-inner{overflow:hidden}.flow-folder-children ul{margin:0;padding:0;list-style:none}.flow-folder-partial{font-size:.88rem;line-height:1}.flow-sort-column{gap:.72rem;width:min(42rem,100%);margin-inline:auto;display:grid}.flow-overview-actions{gap:.75rem;width:min(42rem,100%);margin-inline:auto;padding-bottom:.35rem;display:grid}.flow-primary-cta-zone{gap:.55rem;width:min(42rem,100%);margin-inline:auto;display:grid}.flow-primary-cta-zone .nextcloud-action-button{width:100%}.flow-secondary-actions{gap:.62rem;margin-top:0}.flow-secondary-actions .flow-sort-button{min-height:3.45rem;font-size:var(--text-md)}.flow-sort-column .nextcloud-action-button{width:100%}.flow-sort-button{min-height:3.85rem;font-size:var(--text-lg);padding:.95rem 1rem}.flow-login-submit-button,.flow-sort-button-smart{border-color:color-mix(in srgb,var(--accent)62%,var(--border));background:linear-gradient(138deg,color-mix(in srgb,var(--accent)84%,#fff),color-mix(in srgb,var(--accent-2)82%,#fff));color:var(--accent-ink);box-shadow:0 10px 24px color-mix(in srgb,var(--accent)28%,transparent)}.flow-login-submit-button:hover,.flow-login-submit-button:focus-visible,.flow-sort-button-smart:hover,.flow-sort-button-smart:focus-visible{filter:saturate(1.06)}.flow-sort-button-no{border-color:color-mix(in srgb,var(--accent)46%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--surface)94%,transparent),color-mix(in srgb,var(--accent)14%,transparent))}.flow-sort-column .flow-sort-button .button-inline-content{justify-content:center;gap:.55rem;width:100%}.flow-sort-column .flow-sort-button .button-icon-badge{width:1.45rem;height:1.45rem}.flow-goal-step{margin-top:.5rem;flex-direction:column;gap:.82rem;width:min(42rem,100%);margin-inline:auto;display:flex}.flow-goal-per-day{color:var(--text-muted);margin:0;font-size:.9rem}.flow-goal-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.flow-goal-option{width:100%;min-height:3.5rem;font-size:var(--text-md);justify-content:center;padding:.72rem .9rem;font-weight:700}.flow-goal-option.is-selected{background:color-mix(in srgb,var(--accent)22%,var(--surface));border-color:var(--accent)}.flow-goal-option-none{min-height:3.25rem;font-size:var(--text-sm);grid-column:1/-1;font-weight:600}.sort-button-label{text-align:left;flex-direction:column;gap:.15rem;display:flex}.sort-button-hint{font-size:var(--text-xs);color:var(--text-muted);font-weight:400;line-height:1.3}.flow-sort-button-smart .sort-button-hint{color:color-mix(in srgb,var(--text-muted)80%,var(--accent))}.flow-sort-button-smart{position:relative;overflow:hidden}.flow-sort-button-smart:before{content:"";background:linear-gradient(135deg,color-mix(in srgb,var(--accent)14%,transparent),transparent 60%);pointer-events:none;position:absolute;inset:0}.flow-sort-button-smart .button-icon-badge{border-color:color-mix(in srgb,var(--accent)62%,var(--border));background:color-mix(in srgb,var(--accent)22%,transparent)}.flow-overview-swipe-hint{text-align:center;width:min(42rem,100%);color:var(--text-muted);font-size:var(--text-md);margin:0 auto .2rem}.flow-video-upsell{text-align:center;width:min(42rem,100%);color:color-mix(in srgb,var(--text)84%,var(--accent));font-size:var(--text-sm);margin:0 auto .6rem}.flow-overview-swipe-hint.is-login-hint{text-align:left;border:1px solid color-mix(in srgb,var(--accent)32%,var(--border));background:color-mix(in srgb,var(--accent)10%,transparent);color:color-mix(in srgb,var(--text)88%,var(--accent));border-radius:12px;margin:.15rem 0 .5rem;margin-inline:0;padding:.62rem .74rem}.flow-empty-message{text-align:center}.flow-empty-message p{margin:0}.flow-progress-notice{color:color-mix(in srgb,var(--ok)80%,var(--text));border:1px solid color-mix(in srgb,var(--ok)44%,var(--border));background:color-mix(in srgb,var(--ok)14%,transparent);font-size:var(--text-sm);border-radius:12px;margin:.55rem 0 .35rem;padding:.78rem .86rem;line-height:1.5}.flow-overview-summary{margin-inline:auto;width:min(42rem,100%);margin-bottom:.8rem}.flow-summary-card{text-align:center;background:linear-gradient(170deg,color-mix(in srgb,var(--surface)90%,transparent),color-mix(in srgb,var(--surface-2)86%,transparent));align-content:center;justify-items:center;gap:.12rem;min-height:6.4rem;display:grid}.flow-metric-label{text-transform:none;letter-spacing:.01em;font-size:var(--text-sm);font-weight:700}.flow-summary-card .flow-metric-value{text-align:center;min-width:7ch;color:var(--text);letter-spacing:-.03em;font-variant-numeric:tabular-nums;text-shadow:0 8px 22px color-mix(in srgb,var(--shadow)40%,transparent);margin-top:0;font-size:clamp(1.7rem,7vw,2.5rem);line-height:1.03;display:inline-block}.flow-summary-card .flow-metric-value.is-rolling{animation:90ms linear infinite flow-metric-roll}.flow-calculating-size{align-items:center;gap:.4rem;display:inline-flex}.flow-calculating-spinner{border:2px solid color-mix(in srgb,var(--text)26%,transparent);border-top-color:var(--accent);border-radius:999px;width:.75rem;height:.75rem;animation:.9s linear infinite nextcloud-spin}:root[data-color-mode=light] .flow-folder-list,:root[data-color-mode=light] .flow-summary-card,:root[data-color-mode=light] .swipe-review-item,:root[data-color-mode=light] .swipe-meta-panel,:root[data-color-mode=light] .swipe-desktop-meta{background:#fefefe;border-color:#1213183d}:root[data-color-mode=light] .flow-overview-swipe-hint,:root[data-color-mode=light] .flow-folder-row small,:root[data-color-mode=light] .swipe-review-meta small{color:#3f4654}@keyframes flow-metric-roll{0%{filter:blur(.9px);opacity:.92;transform:translateY(-5px)skewY(-2.4deg)}50%{filter:blur(.2px);opacity:1;transform:translateY(2px)skewY(1deg)}to{filter:blur(.9px);opacity:.92;transform:translateY(5px)skewY(2.4deg)}}.flow-swipe-screen{background:0 0;flex-direction:column;height:100%;min-height:0;padding:0;display:flex;overflow:hidden}.flow-swipe-screen .swipe-mode-shell{flex:1 1 0;grid-template-rows:auto auto minmax(0,1fr);gap:.58rem;width:min(1220px,100% - .4rem);min-height:0;margin:0 auto;padding:.55rem;display:grid}.flow-swipe-screen .swipe-mode-header,.flow-swipe-screen .swipe-score-row,.flow-swipe-screen .swipe-score-grid,.flow-swipe-screen .swipe-meta-panel,.flow-swipe-screen .swipe-meta-panel-top{box-sizing:border-box;width:100%;max-width:100%}.flow-swipe-screen .swipe-mode-header{z-index:2;position:relative}.flow-swipe-screen .swipe-score-grid{margin-inline:0}.swipe-goal-modal-card{width:min(460px,100% - .4rem)}.flow-confirm-hold-hint{background:color-mix(in srgb,var(--accent)12%,var(--surface));color:var(--text-muted);border-radius:8px;margin:0 0 .75rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.4}.hold-to-confirm-button{min-height:var(--touch-min);position:relative;overflow:visible}.hold-to-confirm-button__outline{pointer-events:none;border-radius:inherit;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.hold-to-confirm-button__outline-svg{width:100%;height:100%;display:block}.hold-to-confirm-button.nextcloud-danger-button .hold-to-confirm-button__outline-fill{stroke:color-mix(in srgb,var(--danger)95%,white);stroke-width:6px;filter:drop-shadow(0 0 2px var(--danger))drop-shadow(0 0 6px color-mix(in srgb,var(--danger)85%,transparent))drop-shadow(0 0 12px color-mix(in srgb,var(--danger)55%,transparent))drop-shadow(0 0 20px color-mix(in srgb,var(--danger)35%,transparent));transition:stroke-dashoffset 50ms linear}.hold-to-confirm-button.nextcloud-danger-button.hold-to-confirm-button--holding .hold-to-confirm-button__outline-fill{animation:hold-outline-breathe var(--motion-emphasis)var(--ease-out-expo)infinite alternate}@media (prefers-reduced-motion:reduce){.hold-to-confirm-button.nextcloud-danger-button.hold-to-confirm-button--holding .hold-to-confirm-button__outline-fill{animation:none}}@keyframes hold-outline-breathe{0%{filter:drop-shadow(0 0 2px var(--danger))drop-shadow(0 0 6px color-mix(in srgb,var(--danger)85%,transparent))drop-shadow(0 0 12px color-mix(in srgb,var(--danger)55%,transparent))drop-shadow(0 0 20px color-mix(in srgb,var(--danger)35%,transparent))}to{filter:drop-shadow(0 0 4px var(--danger))drop-shadow(0 0 10px color-mix(in srgb,var(--danger)90%,transparent))drop-shadow(0 0 18px color-mix(in srgb,var(--danger)60%,transparent))drop-shadow(0 0 28px color-mix(in srgb,var(--danger)40%,transparent))}}.hold-to-confirm-button.nextcloud-danger-button.hold-to-confirm-button--confirmed .hold-to-confirm-button__outline-fill{stroke-dashoffset:0;animation:hold-seal-complete .35s var(--ease-out-expo)forwards}@keyframes hold-seal-complete{0%{filter:drop-shadow(0 0 2px var(--danger))drop-shadow(0 0 6px color-mix(in srgb,var(--danger)85%,transparent))drop-shadow(0 0 12px color-mix(in srgb,var(--danger)55%,transparent))drop-shadow(0 0 20px color-mix(in srgb,var(--danger)35%,transparent));opacity:1}35%{filter:drop-shadow(0 0 6px var(--danger))drop-shadow(0 0 14px color-mix(in srgb,var(--danger)95%,transparent))drop-shadow(0 0 24px color-mix(in srgb,var(--danger)70%,transparent))drop-shadow(0 0 36px color-mix(in srgb,var(--danger)50%,transparent));opacity:1}to{filter:drop-shadow(0 0 4px var(--danger))drop-shadow(0 0 10px color-mix(in srgb,var(--danger)40%,transparent))drop-shadow(0 0 16px color-mix(in srgb,var(--danger)20%,transparent))drop-shadow(0 0 24px color-mix(in srgb,var(--danger)10%,transparent));opacity:0}}.hold-to-confirm-button:not(.nextcloud-danger-button) .hold-to-confirm-button__outline-fill{stroke:var(--accent);stroke-width:6px;filter:drop-shadow(0 0 3px var(--accent))drop-shadow(0 0 10px color-mix(in srgb,var(--accent)50%,transparent));transition:stroke-dashoffset 50ms linear}.hold-to-confirm-button .hold-to-confirm-button__content{z-index:1;position:relative}.hold-to-confirm-button--confirmed{animation:hold-to-confirm-success .35s var(--ease-out-expo)forwards}@keyframes hold-to-confirm-success{0%{transform:scale(1)}40%{transform:scale(1.08)}to{transform:scale(1)}}.flow-swipe-screen .swipe-stage{--swipe-card-height:clamp(18rem,calc(100dvh - 13.5rem),84rem);min-height:calc(var(--swipe-card-height) + .2rem);margin-bottom:var(--space-2)}.flow-swipe-screen .swipe-card-back,.flow-swipe-screen .swipe-card-front,.flow-swipe-screen .swipe-card-front-frame{width:min(44rem,100%)}.swipe-meta-panel-top{margin-top:.18rem;margin-bottom:.28rem}.swipe-card-front .swipe-onboarding.swipe-card-front-onboarding{z-index:2;border-radius:inherit;position:absolute;inset:0}.swipe-onboarding{z-index:7;border:1px solid color-mix(in srgb,var(--accent)58%,var(--border));background:radial-gradient(circle at 74% 12%,color-mix(in srgb,var(--accent)24%,transparent),transparent 48%),color-mix(in srgb,var(--surface)94%,transparent);text-align:center;padding:calc(.9rem + var(--safe-top))calc(.9rem + var(--safe-right))calc(.9rem + var(--safe-bottom))calc(.9rem + var(--safe-left));overscroll-behavior:contain;scrollbar-gutter:stable both-edges;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:14px;align-content:start;justify-items:center;gap:.65rem;max-height:100%;display:grid;position:absolute;inset:clamp(.5rem,1.8vw,1rem);overflow-y:auto}.swipe-onboarding>*{width:min(34rem,100%)}.swipe-onboarding h5{margin:0;font-size:1.05rem}.swipe-onboarding p{color:var(--text-muted);max-width:52ch;margin:0}.swipe-onboarding>p:first-child{color:var(--accent);font-weight:700}.swipe-onboarding-policy-link{color:color-mix(in srgb,var(--accent)88%,var(--text));font-size:.82rem;text-decoration:underline}.swipe-onboarding-shortcuts{align-items:center;gap:.5rem;display:inline-flex}.swipe-onboarding-shortcuts span{border:1px solid color-mix(in srgb,var(--accent)52%,var(--border));background:color-mix(in srgb,var(--accent)14%,transparent);width:2rem;height:2rem;color:var(--accent);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.swipe-onboarding-login-card{border:1px solid color-mix(in srgb,var(--accent)45%,var(--border));background:radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--accent)20%,transparent),transparent 40%),linear-gradient(145deg,color-mix(in srgb,var(--accent)14%,transparent),color-mix(in srgb,var(--surface-2)78%,transparent));box-shadow:0 8px 18px color-mix(in srgb,var(--shadow)42%,transparent);border-radius:12px;gap:.5rem;padding:.72rem;display:grid}.swipe-onboarding-login-card p{color:var(--text);margin:0;font-size:.88rem;line-height:1.42}.swipe-onboarding-login-card .nextcloud-action-button{width:100%;min-height:2.85rem}.swipe-onboarding-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;width:min(34rem,100%);display:grid}.swipe-onboarding-skip{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:.25rem .4rem;font-size:.92rem;font-weight:700}.swipe-onboarding-skip:hover,.swipe-onboarding-skip:focus-visible{color:var(--accent)}.flow-loader-overlay{z-index:22;background:radial-gradient(circle at 78% 12%,color-mix(in srgb,var(--accent)18%,transparent),transparent 44%),linear-gradient(180deg,color-mix(in srgb,var(--surface)94%,transparent),color-mix(in srgb,var(--surface-2)92%,transparent));align-content:center;justify-items:center;gap:.8rem;padding:1.2rem;display:grid;position:absolute;inset:0}.flow-loader-cancel{z-index:1;width:var(--touch-min);min-width:var(--touch-min);height:var(--touch-min);min-height:var(--touch-min);border:2px solid var(--border);background:color-mix(in srgb,var(--surface)92%,transparent);color:var(--text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:border-color .15s;display:flex;position:absolute;top:.75rem;right:.75rem}.flow-loader-cancel:hover{background:color-mix(in srgb,var(--surface-2)88%,transparent);border-color:var(--text-muted);color:var(--text)}.flow-loader-cancel:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.flow-loader-orb{background:radial-gradient(circle at 35% 35%,#ffffff47,transparent 42%),linear-gradient(145deg,color-mix(in srgb,var(--accent)84%,white),color-mix(in srgb,var(--accent-2)88%,transparent));width:3.8rem;height:3.8rem;box-shadow:0 14px 30px color-mix(in srgb,var(--shadow)62%,transparent);border-radius:999px;animation:1.1s ease-in-out infinite alternate flow-loader-pulse}@keyframes flow-loader-pulse{0%{filter:saturate(.95);transform:scale(.92)translateY(0)}to{filter:saturate(1.12);transform:scale(1.05)translateY(-2px)}}.flow-loader-overlay p{color:var(--text);letter-spacing:.01em;margin:0;font-weight:700}.flow-loader-slow-hint{color:var(--text-muted);text-align:center;max-width:22ch;margin:0;font-size:.9rem;font-weight:500;animation:.56s cubic-bezier(.16,.84,.3,1) both flow-fade-in-up}@keyframes flow-fade-in-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.flow-loader-progress{background:color-mix(in srgb,var(--surface-2)84%,transparent);border:1px solid var(--border);border-radius:999px;width:min(18rem,74vw);height:.52rem;overflow:hidden}.flow-loader-progress span{border-radius:inherit;background:linear-gradient(145deg,#4acf7b,#16a34ae6);height:100%;transition:width .16s linear;display:block}.flow-confetti{min-height:1.8rem;position:relative}.flow-confetti span{left:calc(8% + (var(--idx,0)*11%));opacity:0;animation:1.8s ease-out infinite flow-confetti-drop;animation-delay:calc(var(--idx,0)*90ms);position:absolute;top:0}@keyframes flow-confetti-drop{0%{opacity:0;transform:translateY(-10px)rotate(0)}20%{opacity:1}to{opacity:0;transform:translateY(40px)rotate(32deg)}}.field-title-row{color:var(--text);align-items:center;gap:.35rem;margin-bottom:.2rem;font-weight:700;display:flex}.field-title-row.has-help{margin-bottom:0}.field-hint-wrap{align-items:center;display:inline-flex;position:relative}.field-help-button{width:var(--touch-min);min-width:var(--touch-min);height:var(--touch-min);min-height:var(--touch-min);border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:.8rem;line-height:1;display:inline-flex}.field-help-popover{border:1px solid var(--border);background:var(--surface);width:min(15.5rem,78vw);color:var(--text-muted);box-shadow:0 10px 22px color-mix(in srgb,var(--shadow)65%,transparent);opacity:0;pointer-events:none;z-index:6;border-radius:10px;padding:.5rem .55rem;font-size:.78rem;line-height:1.35;transition:opacity .16s,transform .17s;position:absolute;top:-.2rem;left:1.55rem;transform:translateY(-5px)}.field-hint-wrap:hover .field-help-popover,.field-hint-wrap:focus-within .field-help-popover,.field-hint-wrap[data-open=true] .field-help-popover{opacity:1;pointer-events:auto;transform:translateY(0)}.app-action-button{border:2px solid var(--border);background:linear-gradient(145deg,color-mix(in srgb,var(--surface-2)88%,transparent),color-mix(in srgb,var(--surface)86%,transparent));color:var(--text);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;min-height:3rem;padding:.8rem 1rem;font-weight:700;transition:transform .18s,border-color .18s,box-shadow .18s;display:inline-flex}.app-action-link{text-decoration:none}.app-action-button:hover,.app-action-button:focus-visible,.nextcloud-action-button:hover,.nextcloud-action-button:focus-visible{border-color:color-mix(in srgb,var(--accent)62%,var(--border));background:linear-gradient(140deg,color-mix(in srgb,var(--surface-2)84%,transparent),color-mix(in srgb,var(--accent)22%,transparent));box-shadow:0 11px 24px color-mix(in srgb,var(--shadow)68%,transparent);transform:translateY(-1px)}[data-color-mode=light] .nextcloud-action-button:hover,[data-color-mode=light] .nextcloud-action-button:focus-visible{color:var(--text)}.design-lab-hint{margin:0 0 var(--space-4);color:var(--text-muted)}.design-lab-grid{gap:var(--space-3);padding:0 var(--space-4);grid-template-columns:1fr;display:grid}.design-style-card{border:2px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-4);background:linear-gradient(160deg,color-mix(in srgb,var(--surface)86%,transparent),color-mix(in srgb,var(--surface-2)74%,transparent))}.design-style-card h2{align-items:center;gap:var(--space-1);margin-top:0;margin-bottom:var(--space-1);font-size:var(--text-xl);display:inline-flex}.design-style-card p{margin-top:0;margin-bottom:var(--space-3);color:var(--text-muted)}.design-style-sample{border:1px dashed var(--border);border-radius:var(--radius-lg);padding:var(--space-3);margin-bottom:var(--space-3)}.design-style-chip-row{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.design-style-chip-row span{border:1px solid var(--border);border-radius:var(--radius-full);padding:var(--space-1)var(--space-2);color:var(--text-muted);font-size:var(--text-xs)}.design-rail{gap:var(--space-1);display:grid}.design-rail span{gap:var(--space-1);color:var(--text-muted);font-size:var(--text-sm);align-items:center;display:inline-flex}.button-inline-content{align-items:center;gap:var(--space-2);display:inline-flex}.button-icon-badge{border:1px solid color-mix(in srgb,var(--accent)45%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--surface-2)86%,transparent),color-mix(in srgb,var(--accent)22%,transparent));width:1.2rem;height:1.2rem;color:var(--text);border-radius:999px;flex:none;justify-content:center;align-items:center;display:inline-flex}.nextcloud-action-button{border:2px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(145deg,color-mix(in srgb,var(--surface-2)88%,transparent),color-mix(in srgb,var(--surface)86%,transparent));color:var(--text);padding:var(--space-3)var(--space-4);min-height:var(--space-7);cursor:pointer;justify-content:center;align-items:center;font-weight:700;transition:transform .18s,border-color .18s,box-shadow .18s;display:inline-flex}.nextcloud-action-button:disabled{opacity:.55;cursor:not-allowed}.nextcloud-action-button.is-active{border-color:color-mix(in srgb,var(--accent)62%,var(--border));background:linear-gradient(140deg,color-mix(in srgb,var(--surface-2)82%,transparent),color-mix(in srgb,var(--accent)24%,transparent));box-shadow:0 10px 24px color-mix(in srgb,var(--shadow)66%,transparent)}.nextcloud-continue-button{border-color:color-mix(in srgb,var(--continue)62%,var(--border));color:var(--continue-text);background:linear-gradient(145deg,var(--continue),var(--continue-border))}.nextcloud-continue-button .button-icon-badge{border-color:var(--continue-icon-border);color:var(--continue-text);background:var(--continue-icon-bg)}.nextcloud-continue-button:hover,.nextcloud-continue-button:focus-visible{border-color:var(--continue-hover);box-shadow:0 10px 24px var(--continue-shadow)}.nextcloud-continue-button:disabled{opacity:.7;cursor:not-allowed;box-shadow:none;color:var(--continue-disabled-text);border-color:color-mix(in srgb,var(--continue-border)70%,var(--border))}[data-color-mode=light] .nextcloud-continue-button{color:var(--continue-text);background:linear-gradient(145deg,var(--continue),var(--continue-hover));border-color:var(--continue-border)}[data-color-mode=light] .nextcloud-continue-button .button-icon-badge{color:var(--continue-text);border-color:var(--continue-icon-border);background:var(--continue-icon-bg)}[data-color-mode=light] .nextcloud-continue-button:hover,[data-color-mode=light] .nextcloud-continue-button:focus-visible{color:var(--continue-hover-text);border-color:var(--continue-hover-border)}[data-color-mode=light] .nextcloud-continue-button:disabled{color:var(--continue-disabled-text);opacity:.75;border-color:var(--continue-disabled-border)}.nextcloud-button-loading{align-items:center;gap:var(--space-2);display:inline-flex}.nextcloud-spinner{border:2px solid color-mix(in srgb,var(--text)26%,transparent);border-top-color:var(--accent);border-radius:999px;width:.88rem;height:.88rem;animation:.9s linear infinite nextcloud-spin}.swipe-mode-shell{margin-top:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(170deg,color-mix(in srgb,var(--surface)90%,transparent),color-mix(in srgb,var(--surface-2)84%,transparent));padding:var(--space-3);gap:var(--space-3);display:grid}.swipe-preflight{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-3);background:color-mix(in srgb,var(--surface-2)88%,transparent);gap:var(--space-2);display:grid}@media (prefers-reduced-motion:no-preference){.swipe-preflight{animation:lab-section-reveal .45s var(--ease-out-expo)both}.swipe-preflight .lab-order-buttons .nextcloud-action-button{animation:lab-section-reveal .4s var(--ease-out-expo)both}.swipe-preflight .lab-order-buttons .nextcloud-action-button:first-child{animation-delay:80ms}.swipe-preflight .lab-order-buttons .nextcloud-action-button:nth-child(2){animation-delay:.14s}.swipe-preflight .lab-order-buttons .nextcloud-action-button:nth-child(3){animation-delay:.2s}.swipe-preflight .lab-order-buttons .nextcloud-action-button:nth-child(4){animation-delay:.26s}}.swipe-preflight h4{color:var(--text);margin:0}.swipe-preflight p{color:var(--text-muted);font-size:var(--text-sm);margin:0}.swipe-fullpage-shell{height:100%;min-height:0;padding:calc(var(--space-4) + var(--safe-top))var(--safe-right)calc(var(--space-5) + var(--safe-bottom))var(--safe-left);background:radial-gradient(circle at 80% 3%,color-mix(in srgb,var(--accent)15%,transparent),transparent 46%),linear-gradient(180deg,color-mix(in srgb,var(--surface)96%,transparent),color-mix(in srgb,var(--surface-2)90%,transparent));flex-direction:column;display:flex;overflow:hidden}.swipe-fullpage-shell .swipe-mode-shell{width:min(1080px,calc(100% - var(--space-4)));flex:1 1 0;grid-template-rows:auto auto minmax(0,1fr);min-height:0;margin:0 auto;display:grid}.swipe-fullpage-shell:not(.flow-swipe-screen){min-height:min(80dvh,40rem)}.swipe-meta-folder{cursor:help}.lab-note{margin:0 0 var(--space-3);border:1px solid color-mix(in srgb,var(--accent)40%,var(--border));border-radius:var(--radius-lg);padding:var(--space-2)var(--space-3);background:color-mix(in srgb,var(--accent)12%,transparent);color:var(--text)}.lab-link-row{margin-bottom:var(--space-3);gap:var(--space-3);flex-wrap:wrap;display:flex}.lab-link-row a{min-height:var(--touch-min);padding:var(--space-1)var(--space-2);align-items:center;display:inline-flex}.design-lab-swipe-shell[data-flow-active] .app-content{padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);padding-left:var(--safe-left);padding-right:var(--safe-right);flex-direction:column;gap:0;display:flex}.lab-swipe-chrome{margin-bottom:var(--space-3);gap:var(--space-3);flex-wrap:wrap;flex-shrink:0;align-items:center;display:flex}.lab-swipe-demo-section{flex-direction:column;flex:1 1 0;min-height:0;display:flex;overflow:hidden}.lab-card-title{color:var(--text);margin:0}.lab-card-subtitle{margin-top:var(--space-1);color:var(--text-muted);font-size:var(--text-sm);margin-bottom:0}.app-toast.is-inline{position:relative;top:0;right:0}.lab-status-ok{margin-bottom:var(--space-2);color:var(--ok)}.lab-status-error{color:var(--danger);margin:0}.lab-swipe-actions-preview{margin-bottom:var(--space-3)}.lab-swipe-feedback-demo-frame{height:14rem}.lab-tone-picker{margin:0 0 var(--space-3);gap:var(--space-2);display:grid}.lab-tone-picker>span{color:var(--text-muted);font-size:var(--text-sm)}.lab-tone-picker-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.lab-tone-chip{border:1px solid var(--border);border-radius:var(--radius-full);padding:var(--space-2)var(--space-4);min-height:var(--touch-min);color:var(--text-muted);background:color-mix(in srgb,var(--surface)92%,transparent);font-size:var(--text-xs);align-items:center;transition:border-color .18s,transform .16s;display:inline-flex}.lab-tone-chip:hover,.lab-tone-chip:focus-visible,.lab-tone-chip.is-active{color:var(--text);border-color:color-mix(in srgb,var(--accent)58%,var(--border));background:color-mix(in srgb,var(--accent)18%,transparent)}.lab-tone-chip:active{transform:scale(.98)}.lab-section{margin-bottom:var(--space-5);padding:var(--space-2)0;scroll-margin-top:var(--space-7)}@media (prefers-reduced-motion:no-preference){.app-content .lab-section{animation:lab-section-reveal .5s var(--ease-out-expo)both}.app-content .lab-section:first-of-type{animation-delay:50ms}.app-content .lab-section:nth-of-type(2){animation-delay:.12s}.app-content .lab-section:nth-of-type(3){animation-delay:.19s}.app-content .lab-section:nth-of-type(4){animation-delay:.26s}.app-content .lab-section:nth-of-type(5){animation-delay:.33s}.app-content .lab-section:nth-of-type(6){animation-delay:.4s}.app-content .lab-section:nth-of-type(7){animation-delay:.47s}}@keyframes lab-section-reveal{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.lab-section h2{margin:0 0 var(--space-2);font-family:var(--font-display),var(--font-body),system-ui,sans-serif;color:var(--text);letter-spacing:-.02em}.lab-section>p{margin:0 0 var(--space-3);color:var(--text-muted);max-width:66ch}.lab-login-iframe-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-2);min-height:22rem;overflow:hidden}.lab-login-iframe{border:0;width:100%;height:28rem;min-height:22rem;display:block}.lab-login-modal-anchor{max-width:24rem}.lab-details-more{margin-top:var(--space-2)}.lab-details-more summary{cursor:pointer;color:var(--text-muted);padding:var(--space-1)0;font-weight:600}.lab-details-more summary:hover{color:var(--text)}.lab-reveal-on-view{opacity:0;transition:opacity .5s var(--ease-out-expo),transform .5s var(--ease-out-expo);transform:translateY(14px)}.lab-reveal-on-view.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.lab-reveal-on-view{opacity:1;transition:none;transform:none}}.lab-showcase-grid{gap:var(--space-3);grid-template-columns:1fr;display:grid}.lab-showcase-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(160deg,color-mix(in srgb,var(--surface)92%,transparent),color-mix(in srgb,var(--surface-2)86%,transparent));padding:var(--space-3);transition:transform .2s var(--ease-out-expo),box-shadow .2s ease}.lab-showcase-card:hover{box-shadow:0 12px 28px color-mix(in srgb,var(--shadow)50%,transparent);transform:translateY(-2px)}.lab-showcase-card h3{margin-top:0;margin-bottom:var(--space-2);font-family:var(--font-display),var(--font-body),system-ui,sans-serif;color:var(--text);font-size:var(--text-md)}.lab-showcase-card-full{grid-column:1/-1}.lab-typography-showcase{gap:var(--space-4);display:grid}.lab-typography-block{gap:var(--space-1);flex-direction:column;display:flex}.lab-typography-label{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.lab-typography-h1{font-family:var(--font-display),var(--font-body),system-ui,sans-serif;letter-spacing:-.03em;color:var(--text);margin:0;font-size:clamp(1.55rem,7vw,2.2rem)}.lab-typography-h2{font-family:var(--font-display),var(--font-body),system-ui,sans-serif;letter-spacing:-.02em;color:var(--text);font-size:var(--text-xl);margin:0}.lab-typography-showcase h3,.lab-typography-showcase h4,.lab-typography-showcase h5{font-family:var(--font-display),var(--font-body),system-ui,sans-serif;color:var(--text);margin:0}.lab-typography-showcase h4,.lab-typography-showcase h5{font-size:var(--text-md)}.lab-typography-showcase p{color:var(--text);font-size:var(--text-md);margin:0;line-height:1.5}.lab-token-list{padding-left:var(--space-4);gap:var(--space-1);color:var(--text-muted);font-size:var(--text-sm);margin:0;display:grid}.lab-token-list code{color:var(--text);font-size:var(--text-xs)}.lab-token-number-row{gap:var(--space-2);font-variant-numeric:tabular-nums;font-size:var(--text-lg);letter-spacing:.01em;display:inline-flex}.lab-button-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.lab-button-row a,.lab-button-row button{min-height:var(--touch-min);padding:var(--space-2)var(--space-3);align-items:center;display:inline-flex}.lab-order-controls{gap:var(--space-2);display:grid}.lab-order-controls>span{color:var(--text-muted);font-size:var(--text-sm)}.lab-order-buttons{gap:var(--space-2);flex-wrap:wrap;display:flex}.lab-order-buttons .nextcloud-action-button{min-height:var(--touch-min);padding:var(--space-2)var(--space-4)}.lab-showcase-desc{margin:0 0 var(--space-2);color:var(--text-muted)}.lab-showcase-desc-below{margin-bottom:var(--space-3)}.lab-narrow-demo{margin-top:var(--space-3);max-width:18.5rem}.lab-mt-2{margin-top:var(--space-2)}.lab-mt-3{margin-top:var(--space-3)}.lab-reset-margin{margin:0}.lab-mb-2{margin-bottom:var(--space-2)}.lab-showcase-desc-tight{margin:0 0 var(--space-1);color:var(--text-muted)}.lab-showcase-note{margin:0 0 var(--space-2);color:var(--text-muted);font-size:var(--text-sm)}.lab-showcase-mb{margin-bottom:var(--space-4)}.lab-toast-inline{position:relative;top:0;left:0;transform:none}.lab-showcase-card .app-toast.is-inline,.lab-showcase-card .app-toast.lab-toast-inline{left:50%;transform:translate(-50%)}.lab-toast-inline+.lab-toast-inline,.lab-toast-inline-mt{margin-top:var(--space-2)}.lab-flow-header-width{width:min(42rem,100%)}.lab-review-demo-width{max-width:22rem}.lab-onboarding-demo-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface-2)86%,transparent);min-height:17.5rem;max-height:20rem;position:relative;overflow:hidden}.swipe-mode-header h4{margin:0 0 var(--space-1);color:var(--text)}.swipe-mode-header-main{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);display:flex}.swipe-pane{gap:var(--space-2);display:grid}.swipe-pane-enter-right{animation:swipe-pane-in-right .36s var(--ease-out-expo)both}.swipe-pane-enter-left{animation:swipe-pane-in-left .36s var(--ease-out-expo)both}@keyframes swipe-pane-in-right{0%{opacity:0;transform:translate(40px)scale(.97)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes swipe-pane-in-left{0%{opacity:0;transform:translate(-40px)scale(.97)}to{opacity:1;transform:translate(0)scale(1)}}.swipe-score-row{min-width:0;animation:swipe-score-row-in .35s var(--ease-out-expo)both;justify-content:space-between;align-items:center;gap:.5rem;margin-top:0;display:flex}@media (prefers-reduced-motion:reduce){.swipe-score-row{animation:none}}@keyframes swipe-score-row-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.swipe-score-grid{flex:auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;min-width:0;max-width:min(42rem,100%);margin-inline:auto;display:grid}.swipe-score-item{border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface)90%,transparent);min-height:2.1rem;color:var(--text);font-size:clamp(.8rem,2.2vw,var(--text-md));font-variant-numeric:tabular-nums;align-content:center;gap:.04rem;padding:.35rem .5rem;display:grid}.swipe-score-item strong{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:600}.swipe-score-saved{border-color:color-mix(in srgb,var(--ok)52%,var(--border));background:color-mix(in srgb,var(--ok)14%,var(--surface));color:color-mix(in srgb,var(--ok)88%,var(--text));font-variant-numeric:tabular-nums;grid-column:1/-1}.swipe-score-saved strong{color:color-mix(in srgb,var(--ok)72%,var(--text-muted))}.swipe-daily-goal-bar{border:1px solid color-mix(in srgb,var(--ok)36%,var(--border));background:color-mix(in srgb,var(--surface-2)88%,transparent);height:.5rem;box-shadow:inset 0 1px 2px color-mix(in srgb,var(--shadow)32%,transparent);border-radius:999px;margin-top:.45rem;overflow:hidden}.swipe-daily-goal-fill{border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--ok)92%,white),color-mix(in srgb,var(--accent)52%,var(--ok)));height:100%;transition:width .25s ease-out}.swipe-header-undo-hint{color:var(--text-muted);margin:.35rem 0 0;font-size:.72rem}.swipe-feedback-toast{opacity:0;pointer-events:none;color:#fff;letter-spacing:.02em;text-shadow:0 1px 2px #0003;z-index:10;background:linear-gradient(145deg,#22c55e 0%,#16a34a 50%,#15803d 100%);border-radius:999px;justify-content:center;align-items:center;min-height:2.25rem;padding:.4rem .9rem;font-size:1.05rem;font-weight:800;transition:transform .2s cubic-bezier(.34,1.56,.64,1),opacity .18s;display:inline-flex;position:absolute;top:.75rem;left:50%;transform:translate(-50%)scale(.88);box-shadow:inset 0 0 0 1px #ffffff40,0 4px 14px #22c55e73,0 2px 6px #00000026}.swipe-feedback-toast.is-visible{opacity:1;animation:.28s cubic-bezier(.34,1.56,.64,1) forwards swipe-feedback-pop;transform:translate(-50%)scale(1)}.swipe-feedback-toast.is-visible.is-fading-out{animation:.22s ease-out forwards swipe-feedback-fade-out}@keyframes swipe-feedback-pop{0%{opacity:0;transform:translate(-50%)scale(.88)}55%{opacity:1;transform:translate(-50%)scale(1.08)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes swipe-feedback-fade-out{to{opacity:0;transform:translate(-50%)scale(.96)}}.swipe-saved-toast{top:auto;bottom:calc(var(--safe-bottom) + .8rem);text-align:center;z-index:1150;width:min(92vw,26rem);left:50%;transform:translate(-50%)translateY(14px)}.swipe-saved-toast.is-visible{transform:translate(-50%)translateY(0)}.swipe-review-cta{min-height:var(--touch-min);border-color:color-mix(in srgb,#ef4444 62%,var(--border));color:#fff;white-space:nowrap;background:linear-gradient(145deg,#ef4444,#dc2626)}.swipe-review-cta .button-icon-badge{color:#fff;background:#0003;border-color:#ffffff8f}.swipe-review-cta:hover,.swipe-review-cta:focus-visible{border-color:#f87171;box-shadow:0 10px 24px #bc202059}.swipe-review-cta:disabled{opacity:.56;cursor:not-allowed;box-shadow:none}.swipe-stage{--swipe-card-height:min(50svh,38rem);z-index:1;min-height:calc(var(--swipe-card-height) + .8rem);place-items:center;display:grid;position:relative}.swipe-card-back,.swipe-card-front{width:min(44rem,100%);height:var(--swipe-card-height);border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)86%,transparent);border-radius:14px;min-height:0;overflow:hidden}.swipe-card-back{width:min(44rem,100%);height:var(--swipe-card-height);transform-origin:50%;opacity:0;visibility:hidden;pointer-events:none;filter:saturate()brightness();will-change:transform,opacity,filter;place-items:center;display:none;position:absolute;inset:auto;overflow:hidden;transform:translateY(14px)scale(.94)}.swipe-card-back.is-promoting{visibility:visible;animation:swipe-promote var(--motion-base)var(--ease-spring)forwards;display:grid}.swipe-card-back-media{grid-template:1fr/1fr;place-items:center;width:100%;min-width:0;height:100%;min-height:0;display:grid;position:relative;overflow:hidden}.swipe-card-back-media img{object-fit:contain;object-position:center}.swipe-card-back span{color:var(--text-muted);font-size:var(--text-sm)}@keyframes swipe-loading-fade-in{0%{opacity:0}to{opacity:1}}.swipe-card-loading-placeholder{color:var(--text-muted);font-size:var(--text-sm);flex-direction:column;justify-content:center;align-items:center;gap:.6rem;padding:1rem;animation:.1s ease-out swipe-loading-fade-in;display:flex}.swipe-card-loading-overlay{z-index:0;position:absolute;inset:0}.swipe-card-loading-placeholder .nextcloud-spinner{width:1.4rem;height:1.4rem}.swipe-card-front{z-index:1;height:var(--swipe-card-height);touch-action:pan-y;-webkit-user-select:none;user-select:none;transition:transform .16s,opacity .16s;position:relative}.swipe-card-front-frame{z-index:1;width:min(44rem,100%);height:var(--swipe-card-height);position:relative}.swipe-card-front-frame .swipe-card-front{width:100%;height:100%}.swipe-finished-actions{grid-template-columns:1fr;gap:.5rem;width:min(34rem,100%);display:grid}.swipe-card-front.is-swiping-left{animation:swipe-left var(--motion-swipe)var(--ease-out-expo)forwards}.swipe-card-front.is-swiping-right{animation:swipe-right var(--motion-swipe)var(--ease-out-expo)forwards}.swipe-card-front.is-swiping-up{animation:swipe-up var(--motion-swipe)var(--ease-out-expo)forwards}.swipe-card-front-frame:has(.swipe-card-front.is-swiping-up):after{content:"";pointer-events:none;animation:swipe-stars .38s var(--ease-out-expo)forwards;border-radius:inherit;background:radial-gradient(circle at 30%,#ffc864b3 0%,#0000 8%),radial-gradient(circle at 70% 45%,#ffdc7899 0%,#0000 6%),radial-gradient(circle at 50% 60%,#ffb450a6 0%,#0000 7%),radial-gradient(circle at 20% 70%,#ffd26e80 0%,#0000 5%),radial-gradient(circle at 80% 55%,#ffbe5a8c 0%,#0000 6%);position:absolute;inset:0}@keyframes swipe-stars{0%{opacity:0;transform:scale(.6)}40%{opacity:1;transform:scale(1.1)}to{opacity:0;transform:scale(1.4)}}@keyframes swipe-left{to{opacity:0;transform:translate(-180px)rotate(-12deg)}}@keyframes swipe-right{to{opacity:0;transform:translate(180px)rotate(12deg)}}@keyframes swipe-up{to{opacity:0;transform:translateY(-150px)scale(.96)}}@keyframes swipe-promote{0%{opacity:0;filter:saturate()brightness();transform:translateY(14px)scale(.94)}55%{opacity:.85;filter:saturate()brightness();transform:translateY(-4px)scale(1.03)}to{opacity:.98;filter:saturate()brightness();transform:translateY(0)scale(1)}}.swipe-card-image{background:color-mix(in srgb,var(--surface-2)92%,transparent);grid-template:1fr/1fr;place-items:center;width:100%;min-width:0;height:100%;min-height:0;display:grid;position:relative;overflow:hidden}.swipe-card-image img{object-fit:contain;object-position:center}.swipe-card-image p{color:var(--text-muted);font-size:var(--text-sm);text-align:center;margin:0;padding:.6rem}.swipe-card-video-wrap{position:absolute;inset:0}.swipe-card-video{object-fit:contain;background:0 0;width:100%;height:100%;position:absolute;inset:0}.swipe-video-mute{right:var(--space-2);bottom:var(--space-2);min-width:var(--touch-min);min-height:var(--touch-min);border-radius:var(--radius-full);border:1px solid color-mix(in srgb,var(--border)88%,white);background:color-mix(in srgb,var(--surface)88%,transparent);width:2.2rem;height:2.2rem;color:var(--text);cursor:pointer;transition:transform var(--motion-fast)var(--ease-out-expo),background var(--motion-fast)var(--ease-out-expo);place-items:center;display:grid;position:absolute}.swipe-video-mute:hover{background:color-mix(in srgb,var(--surface)94%,transparent);transform:scale(1.03)}.swipe-video-mute:focus-visible{box-shadow:var(--focus-ring);outline:none}.swipe-card-meta{border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface)92%,transparent);gap:.2rem;padding:.64rem .72rem .72rem;display:grid}.swipe-card-meta strong{color:var(--text);font-size:var(--text-md);word-break:break-word;line-height:1.25}.swipe-card-meta small{color:var(--text-muted);font-size:var(--text-sm)}.swipe-overlay-actions{left:50%;bottom:max(1rem,calc(.6rem + var(--safe-bottom)));align-items:center;gap:max(.7rem,.5rem + var(--safe-left)*.1);z-index:4;display:flex;position:absolute;transform:translate(-50%)}.swipe-info-wrap{z-index:5;animation:swipe-info-wrap-in .32s var(--ease-out-expo)60ms both;flex:none;justify-content:flex-end;display:flex;position:relative}@media (prefers-reduced-motion:reduce){.swipe-info-wrap{animation:none}}@keyframes swipe-info-wrap-in{0%{opacity:0;transform:scale(.88)translate(4px)}to{opacity:1;transform:scale(1)translate(0)}}.swipe-info-button{border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)88%,transparent);width:2.35rem;height:2.35rem;color:var(--text-muted);cursor:pointer;touch-action:manipulation;border-radius:999px;justify-content:center;align-items:center;transition:color .2s,background .2s,border-color .2s,transform .18s;display:inline-flex}.swipe-info-button:hover,.swipe-info-button:focus-visible{color:var(--text);background:color-mix(in srgb,var(--surface-2)96%,transparent);border-color:color-mix(in srgb,var(--accent)40%,var(--border))}.swipe-info-button[aria-expanded=true]{color:var(--accent);background:color-mix(in srgb,var(--accent)12%,transparent);border-color:color-mix(in srgb,var(--accent)50%,var(--border))}.swipe-info-popover{border:1px solid var(--border);background:color-mix(in srgb,var(--surface)98%,white);min-width:16rem;max-width:min(22rem,90vw);animation:swipe-info-popover-in .2s var(--ease-out-expo)both;border-radius:12px;padding:.75rem .9rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 12px 32px #0000002e}.swipe-info-popover:before{content:"";background:inherit;border-left:1px solid var(--border);border-top:1px solid var(--border);width:12px;height:12px;position:absolute;top:-6px;right:1rem;transform:rotate(45deg)}@keyframes swipe-info-popover-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes swipe-info-meta-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes swipe-info-meta-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.swipe-info-meta-wrap .swipe-info-meta{animation:swipe-info-meta-in var(--motion-base)var(--ease-out-expo)both}.swipe-info-meta-wrap.swipe-info-meta-exit .swipe-info-meta{animation:.12s ease-in both swipe-info-meta-out}.swipe-info-popover-title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:var(--space-2);font-weight:700;display:block}.swipe-info-meta{gap:var(--space-2);flex-direction:column;margin:0 0 .5rem;font-size:.82rem;display:flex}.swipe-info-meta-card{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4)var(--space-4);background:linear-gradient(180deg,color-mix(in srgb,var(--surface)85%,transparent),color-mix(in srgb,var(--surface-2)75%,transparent));box-shadow:0 1px 3px color-mix(in srgb,var(--shadow)18%,transparent);text-align:left;align-items:flex-start;gap:var(--space-1);transition:box-shadow var(--motion-fast)ease,border-color var(--motion-fast)ease;flex-direction:column;display:flex}.swipe-info-meta-card-head{justify-content:flex-start;align-items:center;gap:var(--space-1);display:flex}.swipe-info-meta-icon{border-radius:var(--radius-full);width:1.75rem;height:1.75rem;color:color-mix(in srgb,var(--accent)88%,var(--text-muted));background:color-mix(in srgb,var(--accent)12%,transparent);border:1px solid color-mix(in srgb,var(--accent)28%,var(--border));flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.swipe-info-meta-card-head dt{color:var(--text-muted);font-weight:600;font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;margin:0}.swipe-info-meta-card dd{color:var(--text);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0;font-weight:500;line-height:1.35;overflow:hidden}.swipe-info-popover .swipe-info-meta-card:hover,.swipe-desktop-meta .swipe-info-meta-card:hover{border-color:color-mix(in srgb,var(--accent)35%,var(--border));box-shadow:0 2px 8px color-mix(in srgb,var(--shadow)22%,transparent)}.swipe-info-meta-card-filename dd{white-space:normal;word-break:break-word;min-height:2.7em;text-overflow:unset}.swipe-info-folder dd{white-space:normal;word-break:break-word;text-align:left}.swipe-info-view-full{border:1px solid color-mix(in srgb,var(--accent)50%,var(--border));background:color-mix(in srgb,var(--accent)10%,transparent);width:100%;color:var(--accent);cursor:pointer;touch-action:manipulation;border-radius:8px;justify-content:center;align-items:center;gap:.4rem;padding:.5rem .75rem;font-size:.9rem;font-weight:600;transition:background .2s,color .2s;display:inline-flex}.swipe-info-view-full:hover,.swipe-info-view-full:focus-visible{background:color-mix(in srgb,var(--accent)18%,transparent);color:var(--accent)}.swipe-meta-panel{border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)88%,transparent);border-radius:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.5rem;padding:.58rem .68rem;display:grid}.swipe-desktop-meta{display:none}.swipe-meta-panel span{color:var(--text);gap:.18rem;display:grid}.swipe-meta-panel strong{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.76rem}.swipe-actions{grid-template-columns:1fr 1fr;gap:.58rem;display:grid}.swipe-actions-row .nextcloud-action-button{min-height:3.3rem;font-size:1rem}.swipe-actions-row{grid-template-columns:auto auto;justify-content:center;align-items:center;gap:1.2rem;margin-top:.1rem}.swipe-action-button{min-width:var(--touch-min);min-height:var(--touch-min);cursor:pointer;width:clamp(2.75rem,14vw,4.8rem);height:clamp(2.75rem,14vw,4.8rem);transition:transform .18s var(--ease-out-expo),box-shadow .18s ease,filter .18s ease;isolation:isolate;touch-action:manipulation;background:linear-gradient(#fff,#f2f5fb);border:2px solid #ffffff9e;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:relative;box-shadow:0 12px 32px #04070b59,inset 0 1px #ffffffe6}.swipe-action-button:hover,.swipe-action-button:focus-visible{transform:translateY(-3px)scale(1.05);box-shadow:0 16px 38px #04070b73,inset 0 1px #fffffff2}.swipe-action-button:active{transition-duration:.12s;transform:translateY(0)scale(.96)}.swipe-action-button:focus-visible{outline:2px solid color-mix(in srgb,var(--accent)76%,white);outline-offset:2px}.swipe-action-button:after{content:"";border-radius:inherit;z-index:-1;opacity:0;transition:opacity .18s;position:absolute;inset:-9px}.swipe-action-button:hover:after,.swipe-action-button:focus-visible:after{opacity:1}.swipe-action-button svg{filter:drop-shadow(0 1px 1px #080a0e1a)}.swipe-action-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.swipe-action-button-trash{color:#ff4458;box-shadow:0 12px 32px #04070b59,0 0 0 1px #ff445833,inset 0 1px #ffffffeb}.swipe-action-button-trash:after{background:radial-gradient(circle,#ff44584d,#ff445800)}.swipe-action-button-keep{color:#2bc46d;box-shadow:0 12px 32px #04070b59,0 0 0 1px #2bc46d33,inset 0 1px #ffffffeb}.swipe-action-button-keep:after{background:radial-gradient(circle,#2bc46d47,#2bc46d00)}.swipe-action-button-undo,.card-swipe-super-swipe{min-width:var(--touch-min);min-height:var(--touch-min);width:clamp(2.75rem,11vw,3.7rem);height:clamp(2.75rem,11vw,3.7rem)}.swipe-action-button-undo{color:var(--accent-icon-dark);background:linear-gradient(#ffd978,#ffb342);border-color:#ffb84cd6;box-shadow:0 12px 32px #04070b59,0 0 0 1px #ffa52d4d,inset 0 1px #fff4d1f5}.swipe-action-button-undo:after{background:radial-gradient(circle,#ffa82e52,#ffa82e00)}:root[data-color-mode=light] .swipe-action-button-undo{color:#6d3a00;background:linear-gradient(#ffd673,#ffb54a);border-color:#ee992fb3}:root[data-color-mode=light] .swipe-action-button-undo:after{background:radial-gradient(circle,#ffad3f47,#ffad3f00)}:root[data-color-mode=light] .swipe-action-button{border-color:#1213182e;box-shadow:0 10px 24px #15182133,inset 0 1px #fffffff2}.card-swipe-super-swipe{color:var(--accent-icon-dark);border-color:#ffa82e99;box-shadow:0 8px 20px #7a3f0038,inset 0 1px #ffffff1f}.card-swipe-super-swipe:after{background:radial-gradient(circle,#ffa82e52,#ffa82e00)}.card-swipe-super-swipe.is-disabled{opacity:.5;color:var(--text-muted);border-color:var(--border);box-shadow:none}.card-swipe-super-swipe.is-disabled:after{background:0 0}.card-swipe-super-swipe.is-disabled:hover{opacity:.65}.flow-super-swipe-choice{margin-top:.5rem;flex-direction:column;gap:1rem;width:min(42rem,100%);margin-inline:auto;display:flex}.flow-super-swipe-choice-move-copy .nextcloud-action-button{animation:.4s cubic-bezier(.16,.84,.3,1) both flow-fade-in-down}.flow-super-swipe-choice-move-copy .nextcloud-action-button:first-child{animation-delay:60ms}.flow-super-swipe-choice-move-copy .nextcloud-action-button:nth-child(2){animation-delay:.14s}.flow-super-swipe-choice-hint,.flow-super-swipe-upsell-body{color:var(--text-muted);margin:0;font-size:.92rem}.flow-super-swipe-copy-wrap{flex-direction:column;gap:.25rem;display:flex}.button-inline-content-block{text-align:center;flex-direction:column;align-items:center;gap:.2rem;display:flex}.flow-super-swipe-copy-button .flow-super-swipe-copy-hint{opacity:.9;font-weight:400;display:block}.flow-super-swipe-copy-hint{color:var(--text-muted);font-size:.8rem;display:block}.swipe-finished{border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)84%,transparent);border-radius:12px;padding:.7rem}.swipe-finished strong{color:var(--text);display:block}.swipe-finished p{color:var(--text-muted);margin:.3rem 0 0}.swipe-footer{flex-wrap:wrap;gap:.58rem;display:flex}.swipe-review-shell{border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)86%,transparent);border-radius:12px;gap:.6rem;min-height:0;padding:.65rem;display:grid;overflow:hidden}.swipe-review-shell.swipe-pane-enter-right{animation:swipe-pane-in-right var(--motion-base)cubic-bezier(.2,.8,.2,1)both}.swipe-review-tools{justify-content:flex-end;display:flex}.swipe-review-scroll{min-width:var(--touch-min);min-height:var(--touch-min);border:1px solid color-mix(in srgb,var(--accent)42%,var(--border));background:color-mix(in srgb,var(--surface-2)86%,transparent);width:2.75rem;height:2.75rem;color:var(--text);cursor:pointer;transition:transform .16s var(--ease-out-expo),border-color .18s ease;touch-action:manipulation;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.swipe-review-scroll:hover,.swipe-review-scroll:focus-visible{border-color:color-mix(in srgb,var(--accent)64%,var(--border));background:color-mix(in srgb,var(--accent)16%,transparent);transform:translateY(-1px)}.swipe-review-header h5{color:var(--text);font-size:var(--text-md);margin:0 0 .18rem}.swipe-review-header p{color:var(--text-muted);font-size:var(--text-sm);margin:0}.swipe-review-back{width:fit-content;min-height:var(--touch-min);border-radius:999px;margin-bottom:.22rem}:root[data-color-mode=light] .swipe-score-item strong{color:color-mix(in srgb,var(--text)76%,var(--text-muted))}:root[data-color-mode=light] .swipe-score-saved strong{color:color-mix(in srgb,var(--ok)82%,var(--text))}.swipe-review-empty{color:var(--text-muted);margin:0}.swipe-review-list{gap:var(--space-2);grid-template-columns:minmax(0,1fr);align-content:start;min-height:0;max-height:min(72svh,48rem);margin:0;padding:0;list-style:none;display:grid;overflow:hidden auto}.swipe-review-item{border:1px solid var(--border);background:color-mix(in srgb,var(--surface)90%,transparent);cursor:pointer;min-height:11rem;transition:transform .18s var(--ease-out-expo),border-color .18s ease;opacity:0;animation:swipe-review-in var(--motion-emphasis)var(--ease-out-expo)forwards;animation-delay:calc(var(--idx,0)*42ms);touch-action:manipulation;border-radius:10px;grid-template-rows:auto auto;align-content:start;gap:.42rem;padding:.44rem;display:grid;position:relative;overflow:hidden}.swipe-review-item:hover,.swipe-review-item:focus-visible{border-color:color-mix(in srgb,var(--accent)56%,var(--border));background:color-mix(in srgb,var(--surface)82%,transparent);transform:translateY(-2px)}.swipe-review-item:focus-visible{outline:2px solid color-mix(in srgb,var(--accent)72%,white);outline-offset:2px}@keyframes swipe-review-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.swipe-review-check{z-index:1;place-self:end;display:inline-flex;position:relative}.swipe-review-check input{opacity:0;pointer-events:none;position:absolute}.swipe-review-check{min-width:var(--touch-min);min-height:var(--touch-min);justify-content:center;align-items:center}.swipe-review-check span{border:2px solid color-mix(in srgb,var(--accent)50%,var(--border));background:color-mix(in srgb,var(--surface-2)90%,transparent);border-radius:5px;width:1.58rem;height:1.58rem;box-shadow:0 1px 4px #080a0e33}.swipe-review-check input:checked+span{border-color:color-mix(in srgb,var(--ok)78%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--ok)86%,white),color-mix(in srgb,var(--ok)62%,var(--surface-2)))}.swipe-review-check input:checked+span:after{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:.66rem;height:.38rem;display:block;transform:rotate(-45deg)translate(.29rem,.24rem)}.swipe-review-thumb{aspect-ratio:1;border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)88%,transparent);contain:layout paint;border-radius:8px;place-items:center;width:100%;min-height:0;display:grid;position:relative;overflow:hidden}.swipe-review-thumb img{object-fit:cover}.swipe-review-video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.swipe-review-thumb span{color:var(--text-muted);font-size:var(--text-xs);text-align:center;padding:.18rem}.swipe-review-meta{overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;gap:.16rem;min-width:0;display:grid}.swipe-review-meta-row{z-index:1;border:1px solid color-mix(in srgb,var(--border)88%,transparent);background:color-mix(in srgb,var(--surface-2)94%,transparent);min-width:0;min-height:0;box-shadow:0 6px 14px color-mix(in srgb,var(--shadow)26%,transparent);border-radius:8px;flex-shrink:0;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.42rem;padding:.46rem .5rem;display:grid;position:relative}.swipe-review-meta strong{color:var(--text);font-size:var(--text-sm);word-break:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.22;display:-webkit-box;overflow:hidden}.swipe-review-meta small{color:var(--text-muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.swipe-review-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.58rem;display:flex}.swipe-review-footer span{color:var(--text-muted);font-size:var(--text-sm)}.swipe-review-cta,.flow-success-saved-value{font-variant-numeric:tabular-nums}.swipe-review-footer span strong{color:var(--text)}.swipe-review-footer-actions{flex-direction:column;align-items:flex-end;display:flex;position:relative}.hold-to-confirm-released-hint{border-radius:var(--radius-full);background:color-mix(in srgb,var(--accent)14%,var(--surface));border:1px solid color-mix(in srgb,var(--accent)42%,var(--border));color:var(--text);font-size:var(--text-xs);max-width:min(20rem,90vw);box-shadow:0 4px 14px color-mix(in srgb,var(--shadow)48%,transparent);z-index:10;animation:hold-released-hint-in .28s var(--ease-out-expo)both;margin:0 0 .35rem;padding:.4rem .7rem;font-weight:600;position:absolute;bottom:100%;right:0}.hold-to-confirm-actions--align-start .hold-to-confirm-released-hint{left:0;right:auto}@media (prefers-reduced-motion:reduce){.hold-to-confirm-released-hint{animation:none}}@keyframes hold-released-hint-in{0%{opacity:0;transform:translateY(6px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.nextcloud-danger-button{border-color:color-mix(in srgb,#ef4444 62%,var(--border));background:linear-gradient(145deg,#ef4444,#dc2626);margin-left:auto;color:#fff!important}.nextcloud-danger-button .button-inline-content,.nextcloud-danger-button .button-icon-badge{color:#fff!important}.nextcloud-danger-button .button-icon-badge{background:#0003;border-color:#ffffff8f}.nextcloud-danger-button:hover,.nextcloud-danger-button:focus-visible{border-color:#f87171;box-shadow:0 10px 24px #bc202059}.swipe-lightbox{z-index:80;padding:var(--safe-top)var(--safe-right)var(--safe-bottom)var(--safe-left);place-items:center;display:grid;position:fixed;inset:0}.swipe-lightbox-backdrop{cursor:pointer;animation:lightbox-backdrop-in .28s var(--ease-out-expo)both;background:#070a10d1;border:0;position:absolute;inset:0}.swipe-lightbox-dialog{z-index:1;border:1px solid color-mix(in srgb,var(--border)86%,white);background:color-mix(in srgb,var(--surface)94%,black);touch-action:pan-x pan-y pinch-zoom;width:min(94vw,980px);animation:lightbox-dialog-in .38s var(--ease-spring)60ms both;border-radius:12px;padding:.6rem;position:relative}@keyframes lightbox-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes lightbox-dialog-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.swipe-lightbox-zoom-controls{bottom:max(.5rem,var(--safe-bottom));border:1px solid color-mix(in srgb,var(--border)88%,white);background:color-mix(in srgb,var(--surface-2)92%,transparent);z-index:2;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .5rem;display:flex;position:absolute;left:50%;transform:translate(-50%)}.swipe-lightbox-zoom-btn{width:2.25rem;height:2.25rem;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;transition:background .2s,color .2s;display:inline-flex}.swipe-lightbox-zoom-btn:hover:not(:disabled),.swipe-lightbox-zoom-btn:focus-visible{background:color-mix(in srgb,var(--accent)14%,transparent);color:var(--accent)}.swipe-lightbox-zoom-btn:disabled{opacity:.45;cursor:not-allowed}.swipe-lightbox-zoom-label{color:var(--text-muted);text-align:center;min-width:2.5rem;font-size:.8rem;font-weight:600}.swipe-lightbox-media{background:color-mix(in srgb,var(--surface-2)88%,transparent);transform-origin:50%;width:100%;height:min(82vh,760px);transition:transform .2s var(--ease-out-expo);touch-action:pan-x pan-y pinch-zoom;border-radius:10px;position:relative;overflow:hidden}.swipe-lightbox-media img{object-fit:contain}.swipe-lightbox-video-wrap{position:absolute;inset:0}.swipe-lightbox-video{object-fit:contain;background:0 0;width:100%;height:100%;position:absolute;inset:0}.swipe-lightbox-mute{right:var(--space-4);bottom:var(--space-4);min-width:var(--touch-min);min-height:var(--touch-min);border-radius:var(--radius-full);border:1px solid color-mix(in srgb,var(--border)88%,white);background:color-mix(in srgb,var(--surface)88%,transparent);width:2.4rem;height:2.4rem;color:var(--text);cursor:pointer;transition:transform var(--motion-fast)var(--ease-out-expo),background var(--motion-fast)var(--ease-out-expo);z-index:2;place-items:center;display:grid;position:absolute}.swipe-lightbox-mute:hover{background:color-mix(in srgb,var(--surface)94%,transparent);transform:scale(1.03)}.swipe-lightbox-mute:focus-visible{box-shadow:var(--focus-ring);outline:none}.swipe-lightbox-close{top:max(.25rem,var(--safe-top));right:max(.25rem,var(--safe-right));background:color-mix(in srgb,var(--surface-2)90%,transparent);border-color:color-mix(in srgb,var(--border)88%,white);z-index:2;width:2.75rem;height:2.75rem;position:absolute}@keyframes nextcloud-spin{to{transform:rotate(360deg)}}@keyframes provider-card-in{to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:720px){.app-shell{border-radius:14px;width:min(1080px,100% - .9rem);margin-top:.4rem}.app-header-row{flex-wrap:wrap}.app-header-controls{justify-content:flex-end;width:100%}.app-header-controls .auth-chip-row{flex-shrink:0;width:auto}.field-help-popover{top:1.5rem;left:0}.app-content{padding:0 .72rem}.flow-step-content:has(.flow-primary-cta-zone.is-mobile-sticky){padding-bottom:calc(var(--touch-min) + var(--safe-bottom) + 1rem)}.flow-step-content-fill-mobile{min-height:calc(100dvh - 13rem)}.flow-step-content-fill-mobile .flow-overview-actions,.flow-step-content-fill-mobile .flow-super-swipe-choice,.flow-step-content-fill-mobile .flow-login-form{margin-top:auto}.flow-primary-cta-zone.is-mobile-sticky{bottom:calc(var(--safe-bottom) + .25rem);z-index:8;background:linear-gradient(180deg,color-mix(in srgb,var(--surface)8%,transparent),color-mix(in srgb,var(--surface)94%,transparent));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:14px;margin-inline:-.15rem;padding:.35rem;position:sticky}.swipe-actions{grid-template-columns:1fr}.swipe-onboarding{padding:calc(.75rem + var(--safe-top))calc(.72rem + var(--safe-right))calc(.72rem + var(--safe-bottom))calc(.72rem + var(--safe-left));border-radius:12px;gap:.55rem}.swipe-onboarding-actions{grid-template-columns:1fr;width:100%}.flow-swipe-screen .swipe-mode-shell{width:calc(100% - .3rem);padding:.45rem}.flow-swipe-screen .swipe-stage{--swipe-card-height:clamp(16rem,calc(100dvh - 12.5rem),64rem)}.swipe-overlay-actions{bottom:max(.85rem,calc(.5rem + var(--safe-bottom)));gap:.52rem}.swipe-action-button{width:clamp(3.5rem,19vw,4rem);height:clamp(3.5rem,19vw,4rem)}.swipe-action-button-undo,.card-swipe-super-swipe{width:clamp(2.8rem,15vw,3.25rem);height:clamp(2.8rem,15vw,3.25rem)}.swipe-score-row{gap:.4rem}.swipe-score-grid{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:.35rem;padding-bottom:2px;display:flex;overflow-x:auto}.swipe-score-grid .swipe-score-item{flex:none;min-width:4.2rem}.swipe-meta-panel,.swipe-meta-panel-top{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:.4rem;padding:.4rem .5rem;display:flex;overflow-x:auto}.swipe-meta-panel span{text-overflow:ellipsis;white-space:nowrap;flex:none;min-width:0;overflow:hidden}.swipe-meta-panel strong{display:block}.swipe-stage{--swipe-card-height:min(45svh,26rem)}.swipe-mode-header-main{flex-wrap:wrap}.swipe-mode-header-main .provider-back,.swipe-mode-header-main .swipe-review-cta{flex:auto;justify-content:center}.flow-folder-row.is-subfolder{padding-inline-start:3rem}.flow-folder-row.is-subfolder label{padding-inline-start:1rem}}@media (max-width:480px){.flow-flow-shell{background:0 0;border:none;border-radius:0;min-height:0;padding:0}}@media (min-width:860px){.flow-flow-shell.is-swipe-step{background:0 0;border:none;border-radius:0;padding:0}.flow-swipe-screen .swipe-score-grid{gap:.4rem;max-width:none}.flow-swipe-screen .swipe-score-item{background:color-mix(in srgb,var(--surface-2)70%,transparent);border-radius:var(--radius-full);border:none;flex-direction:row;align-items:baseline;gap:.25rem;min-height:auto;padding:.18rem .5rem;display:flex}.flow-swipe-screen .swipe-score-item strong{flex-shrink:0;font-size:.65rem}.flow-swipe-screen .swipe-score-item strong:after{content:" "}.flow-swipe-screen .swipe-score-saved{background:color-mix(in srgb,var(--ok)18%,var(--surface));border:none}.flow-swipe-screen .swipe-mode-header{margin-bottom:0}.flow-swipe-screen .swipe-mode-header-main{margin-bottom:.2rem}.flow-swipe-screen .swipe-mode-shell{padding:var(--space-2);gap:var(--space-2);border:none}.flow-swipe-screen .swipe-card-back,.flow-swipe-screen .swipe-card-front,.flow-swipe-screen .swipe-card-front-frame{width:min(52rem,100%)}}@media (max-width:420px){.swipe-review-list{grid-template-columns:minmax(0,1fr);gap:.42rem}.swipe-review-item{min-height:9.8rem}}@media (min-width:560px){.swipe-review-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:390px){.app-shell{border-radius:12px;width:calc(100% - .55rem)}.app-content{padding:0 .56rem}.flow-step-header h2{font-size:clamp(1.05rem,5.1vw,1.2rem)}.flow-sort-button{min-height:3.45rem;font-size:var(--text-md);padding:.78rem .82rem}.flow-folder-bulk-button{min-height:var(--touch-min);font-size:var(--text-xs);padding:.44rem .56rem}.swipe-overlay-actions{bottom:max(.7rem,calc(.4rem + var(--safe-bottom)));gap:.42rem}.swipe-action-button{width:clamp(3.2rem,18.5vw,3.6rem);height:clamp(3.2rem,18.5vw,3.6rem)}.swipe-action-button-undo,.card-swipe-super-swipe{width:clamp(2.5rem,14vw,2.9rem);height:clamp(2.5rem,14vw,2.9rem)}.swipe-meta-panel,.swipe-meta-panel-top{gap:.32rem;padding:.32rem .42rem}.swipe-score-grid .swipe-score-item{min-width:3.8rem}.flow-swipe-screen .swipe-stage{--swipe-card-height:clamp(14.8rem,calc(100dvh - 12rem),56rem)}.flow-primary-cta-zone.is-mobile-sticky{margin-inline:-.08rem;padding:.28rem}.swipe-onboarding{padding:calc(.64rem + var(--safe-top))calc(.58rem + var(--safe-right))calc(.64rem + var(--safe-bottom))calc(.58rem + var(--safe-left));gap:.48rem}.flow-folder-row.is-subfolder{padding-inline-start:2.35rem}.flow-folder-row.is-subfolder label{padding-inline-start:.78rem}}@media (min-width:860px){.app-shell{width:min(1080px,100% - 2rem);padding-top:1.45rem}.provider-grid,.lab-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.swipe-review-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1080px){.swipe-review-list{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr))}.flow-flow-shell.is-review-step .flow-step-screen>*{max-width:min(var(--max-width),calc(100% - var(--space-4)))}.flow-flow-shell.is-review-step .swipe-review-shell{max-width:var(--max-width);margin-inline:auto}.flow-swipe-screen .swipe-stage-layout{gap:var(--space-2);flex:1 1 0;align-items:stretch;min-height:0;display:flex}.flow-swipe-screen .swipe-stage-layout .swipe-stage{flex:1 1 0;min-width:0}.flow-swipe-screen .swipe-stage-layout .swipe-card-back,.flow-swipe-screen .swipe-stage-layout .swipe-card-front,.flow-swipe-screen .swipe-stage-layout .swipe-card-front-frame{width:100%;max-width:100%}.swipe-desktop-meta{gap:var(--space-3);width:18rem;min-width:18rem;padding:var(--space-3);border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)88%,transparent);border-radius:12px;grid-template-rows:auto 1fr auto;align-content:start;display:grid}.swipe-desktop-meta .swipe-info-popover-title{margin-bottom:0}.swipe-desktop-meta .swipe-info-meta{margin:0}.swipe-desktop-meta .swipe-info-meta-card dd,.swipe-desktop-meta .swipe-info-folder dd{white-space:normal;text-overflow:unset;word-break:break-word;overflow:visible}.swipe-desktop-meta .swipe-info-view-full{margin-top:auto}.flow-swipe-screen .swipe-info-wrap{display:none}}
