#folder-ring-page{position:fixed;inset:0;overflow:hidden;background:linear-gradient(to bottom,#1e2126 0%,#1e2126 84%,#203034 100%);color:#e8eaed}
.fr-header{height:58px;border-bottom:1px solid #343b44;display:flex;align-items:center;gap:26px;padding:0 28px;color:#aeb7c3;font-size:11px}
.fr-header button{border:1px solid #4b596b;border-radius:20px;padding:8px 13px;color:#d0def0;font-size:11px}
.fr-stage{position:absolute;inset:58px 0 102px;overflow:hidden;touch-action:none;cursor:grab;outline:none;user-select:none}
.fr-stage:active{cursor:grabbing}.fr-stage:focus-visible{outline:none}
.fr-track{position:absolute;left:50%;top:46%;width:80%;height:48%;transform:translate(-50%,-50%);border:1px solid #58647338;border-radius:50%;pointer-events:none}
.fr-track::after{content:"";position:absolute;inset:-1px;border-radius:50%;border:1px solid transparent;border-bottom-color:#8495aa52}
.fr-cards{position:absolute;inset:0;pointer-events:none}
.fr-card{position:absolute;top:0;left:0;width:280px;height:174px;text-align:left;display:flex;flex-direction:column;gap:8px;padding:18px;border:1px solid #637081;background:#292e35;border-radius:12px;box-shadow:0 14px 38px #0008,inset 0 1px 0 #ffffff11;transform-origin:center;will-change:transform,opacity;pointer-events:auto;overflow:hidden;cursor:pointer}
.fr-card:hover{border-color:#91a8c6;background:#303740}.fr-card.is-front{border-color:#9ab2d1;background:#303945;box-shadow:0 18px 44px #000a,inset 0 1px 0 #ffffff18}
.fr-card-head{display:flex;align-items:center;gap:10px;min-width:0;flex:none}.fr-card-icon{display:grid;place-items:center;flex:none;width:31px;height:31px;border-radius:8px;background:#404954;color:var(--icon-color,#cbd0d5);font-size:14px;overflow:hidden;position:relative}.fr-card-icon img{width:25px;height:25px;object-fit:contain;position:absolute;opacity:0}.fr-card-icon.has-favicon img{opacity:1}.fr-card-icon.has-favicon .icon-letter{opacity:0}.fr-card-domain{font-size:10px;color:#aeb8c4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fr-card-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-clamp:2;overflow:hidden;line-height:1.45;height:44px;flex:none;font-size:15px;font-weight:500;color:#eef2f7;overflow-wrap:anywhere}
.fr-card-extra{display:flex;flex-direction:column;gap:5px;min-height:0;flex:none;font-size:10px;color:#aab9cb}.fr-card-url{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fr-card-date{margin-top:auto;flex:none;font-size:9px;color:#8996a6}
.fr-empty{position:absolute;top:53%;left:50%;transform:translate(-50%,-50%);font-size:13px;color:#a4afbc;text-align:center}
.fr-footer{position:absolute;bottom:0;left:0;right:0;height:102px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;background:linear-gradient(transparent,var(--satellite-bottom,#203034) 100%)}.fr-actions{display:flex;align-items:center;gap:20px}.fr-actions button{width:34px;height:34px;border:1px solid #536174;border-radius:50%;font-size:18px}.fr-progress{width:112px;text-align:center;color:#bbc6d4;font-size:11px;letter-spacing:1px}.fr-progress-line{height:2px;background:#49515b;margin-top:9px}.fr-progress-line span{display:block;height:100%;background:#b1c8e6;width:0}
.section-actions{display:flex;align-items:center;gap:9px}.section-actions .explore{white-space:nowrap}
@media(max-width:720px){.fr-card{width:248px;height:164px;padding:15px}.fr-card-title{font-size:14px}.fr-header{padding:0 17px}.section-actions{flex-direction:column;align-items:stretch}.section-actions .explore{justify-content:center}}
@media(max-width:420px){.fr-card{width:220px;height:154px;padding:12px;gap:8px}.fr-card-title{font-size:12px;height:36px}.fr-card-extra{font-size:9px}.fr-footer{height:92px}.fr-stage{bottom:92px}.fr-actions{gap:14px}}
/* The familiar Google search stays still while bookmark cards orbit it. */
.fr-center{position:absolute;z-index:105;top:37%;left:50%;transform:translate(-50%,-50%);width:min(560px,calc(100% - 170px));text-align:center;pointer-events:none}
.fr-center .google-wordmark{position:static;transform:none;margin:0 0 18px;font-size:58px;line-height:1.1;letter-spacing:-4px}
#fr-web-search{display:flex;align-items:center;gap:14px;width:100%;height:48px;padding:0 15px 0 19px;background:#e8eaed;color:#5f6368;border-radius:28px;box-shadow:0 5px 18px #0004;pointer-events:auto}
#fr-web-search>svg{width:20px;height:20px;flex:none}
#fr-web-query{width:100%;border:0;outline:0;background:transparent;color:#202124;font-size:14px}
#fr-web-query::placeholder{color:#686d74}
#fr-web-search button{width:30px;height:30px;border-radius:50%;font-size:20px;color:#5f6368;flex:none}
#fr-web-search:focus-within{outline:2px solid #aecbfa;outline-offset:3px}
@media(max-width:720px){.fr-center{width:min(420px,calc(100% - 105px))}.fr-center .google-wordmark{font-size:54px;margin-bottom:16px}}
@media(max-width:420px){.fr-center{top:35.8%;width:calc(100% - 122px)}.fr-center .google-wordmark{font-size:43px;margin-bottom:15px}#fr-web-search{height:43px;padding:0 10px;gap:5px}#fr-web-query{font-size:11px}#fr-web-search>svg{width:16px;height:16px}#fr-web-search button{width:20px;height:24px;font-size:16px}}

/* Keep familiar Google links available on the first screen. */
.fr-header{position:relative;z-index:200;gap:18px}
.fr-brand{display:flex;align-items:center;gap:8px;color:#aeb9c8;letter-spacing:.04em;white-space:nowrap}
.fr-brand img{opacity:.8}
.fr-top-nav{display:flex;align-items:center;gap:22px;margin-left:auto;font-size:12px;color:#e0e4e9}
.fr-top-nav>a:hover,.fr-apps a:hover{text-decoration:underline}
.fr-apps-wrap{position:relative}
.fr-header .fr-apps-toggle{width:34px;height:34px;padding:7px;display:grid;place-items:center;border:0;border-radius:50%;color:#c6cdd6}
.fr-apps-toggle svg{width:21px;height:21px;fill:currentColor;stroke:none}
.fr-header .help{width:27px;height:27px;flex:none;border:1px solid #66717e;border-radius:50%;padding:0;font-size:12px}
.fr-apps{position:absolute;top:44px;right:-38px;width:min(348px,calc(100vw - 24px));max-height:min(610px,calc(100vh - 82px));overflow-y:auto;padding:10px;border:1px solid #526174;border-radius:24px;background:#292d34;box-shadow:0 20px 50px #0009;color:#e6eaf0;overscroll-behavior:contain}
.fr-apps[hidden]{display:none}
.fr-apps-favorites{padding:12px 10px 9px;border-radius:19px;background:#1b1d21}
.fr-apps-heading{margin:2px 12px 12px;color:#c6c9d0;font-size:15px;line-height:1.4}
.fr-apps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.fr-apps-more{padding:13px 10px 5px}
.fr-apps a{min-width:0;min-height:88px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:9px 3px;border-radius:12px;font-size:11px;white-space:nowrap}
.fr-apps a img{display:block;width:36px;height:36px;object-fit:contain}
.fr-apps a:hover,.fr-apps a:focus-visible{background:#37414d;text-decoration:none}
.fr-account-wrap{position:relative}
.fr-header .fr-account-toggle{display:grid;place-items:center;width:34px;height:34px;padding:2px;border:0;border-radius:50%;background:#35435c}
.fr-account-toggle img{display:block;width:30px;height:30px;border-radius:50%}
.fr-account-menu{position:absolute;top:44px;right:-35px;width:min(286px,calc(100vw - 24px));padding:17px;border:1px solid #526174;border-radius:17px;background:#292f37;box-shadow:0 20px 50px #0009;color:#e6eaf0}
.fr-account-menu[hidden]{display:none}
.fr-account-menu strong{display:block;font-size:13px;font-weight:600}
.fr-account-menu p{margin:9px 0 15px;color:#b5c0cb;font-size:10px;line-height:1.6}
.fr-account-menu a{display:block;padding:10px 11px;border-radius:9px;font-size:11px}
.fr-account-menu a:hover,.fr-account-menu a:focus-visible{background:#37414d;text-decoration:none}
.fr-appearance-wrap{position:relative}
:is(.fr-header,.library-header) .fr-appearance-toggle{display:grid;place-items:center;width:30px;height:30px;padding:6px;border:0;border-radius:50%;color:#c6cdd6}
.fr-appearance-toggle svg{width:17px;height:17px}
.fr-appearance{position:absolute;top:42px;right:-34px}
:is(.fr-appearance,.interaction-panel){width:min(340px,calc(100vw - 24px));padding:18px;border:1px solid #526174;border-radius:15px;background:#292f37;box-shadow:0 20px 50px #0009;color:#e6eaf0;text-align:left}
.fr-appearance[hidden]{display:none}
.fr-appearance h2{margin:0 0 14px;font-size:13px;font-weight:600}
.fr-appearance-choices{display:grid;grid-template-columns:1fr 1fr;gap:7px}
:is(.fr-header,.library-header) .fr-appearance-choices button{padding:9px 6px;border:1px solid #586677;border-radius:9px;color:#e6eaf0;font-size:11px}
:is(.fr-header,.library-header) .fr-appearance-choices button[aria-pressed="true"]{border-color:#a8c5e8;background:#394b60}
.fr-appearance p{margin:13px 0;color:#b5c0cb;font-size:10px;line-height:1.6}
.fr-appearance-color{display:flex;align-items:center;gap:9px;font-size:11px}
.fr-appearance-color label{margin-right:auto}
.fr-appearance-color input{width:34px;height:30px;padding:2px;border:1px solid #637286;border-radius:6px;background:none;cursor:pointer}
:is(.fr-header,.library-header) .fr-appearance-color button{padding:7px 9px;border:1px solid #637286;border-radius:8px;color:#e6eaf0;font-size:10px}
html[data-appearance="chrome"] #folder-ring-page,html[data-appearance="chrome"] #home-page::before{background:linear-gradient(to bottom,var(--chrome-theme-color) 0%,var(--chrome-theme-color) 75%,var(--chrome-theme-footer) 100%);color:var(--chrome-theme-ink)}
html[data-appearance="chrome"] .fr-header{border-bottom-color:color-mix(in srgb,var(--chrome-theme-ink) 22%,transparent);color:var(--chrome-theme-ink)}
html[data-appearance="chrome"] .fr-header>button,html[data-appearance="chrome"] :is(.fr-header,.library-header) .fr-appearance-toggle,html[data-appearance="chrome"] .fr-header .fr-apps-toggle,html[data-appearance="chrome"] .fr-header .help,html[data-appearance="chrome"] .fr-brand,html[data-appearance="chrome"] .fr-top-nav,html[data-appearance="chrome"] .fr-center .google-wordmark,html[data-appearance="chrome"] .fr-footer,html[data-appearance="chrome"] .fr-progress{color:var(--chrome-theme-ink)}
html[data-appearance="chrome"] .fr-header>button,html[data-appearance="chrome"] .fr-header .help,html[data-appearance="chrome"] .fr-actions button{border-color:color-mix(in srgb,var(--chrome-theme-ink) 35%,transparent)}
html[data-appearance="chrome"] .fr-track{border-color:color-mix(in srgb,var(--chrome-theme-ink) 18%,transparent)}
html[data-appearance="chrome"] .fr-track::after{border-bottom-color:color-mix(in srgb,var(--chrome-theme-ink) 22%,transparent)}
html[data-appearance="chrome"] .fr-footer{background:linear-gradient(transparent,var(--chrome-theme-footer))}
html[data-appearance="chrome"] .fr-progress-line{background:color-mix(in srgb,var(--chrome-theme-ink) 28%,transparent)}
html[data-appearance="chrome"] .fr-progress-line span{background:var(--chrome-theme-ink)}
html[data-appearance="chrome"] .fr-apps,html[data-appearance="chrome"] .fr-appearance,html[data-appearance="chrome"] .fr-account-menu{color:#e6eaf0}
@media(max-width:660px){.fr-header{padding:0 14px;gap:8px}.fr-brand{display:none}.fr-top-nav{gap:10px;font-size:11px}.fr-header>button{padding:8px 10px}.fr-apps,.fr-account-menu,.fr-appearance{position:fixed;top:calc(var(--satellite-header-height) + 4px);right:12px}.fr-apps{max-height:calc(100vh - var(--satellite-header-height) - 16px)}}
@media(max-height:680px){.fr-center{top:31%;width:min(200px,calc(100% - 100px))}.fr-center .google-wordmark{font-size:42px;margin-bottom:8px}#fr-web-search{height:40px}}

html[data-appearance="satellite"] #folder-ring-page,html[data-appearance="satellite"] #home-page::before{background:var(--satellite-background,linear-gradient(#1e2126,#203034))}
.fr-appearance{width:min(340px,calc(100vw - 24px));max-height:calc(100dvh - 88px);overflow-y:auto;padding:18px}
.appearance-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
:is(.fr-appearance,.interaction-panel) .appearance-heading h2{margin:0;font-size:14px}
:is(.fr-header,.library-header,.shared-bookmark-tools) .appearance-heading button{border:0;padding:3px 8px;font-size:20px;color:#aeb9c8}
.appearance-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}
:is(.fr-header,.library-header) .appearance-presets button{padding:5px;border:1px solid transparent;border-radius:10px;text-align:left;min-width:0}
:is(.fr-header,.library-header) .appearance-presets button:hover{background:#ffffff09}
:is(.fr-header,.library-header) .appearance-presets button[aria-pressed="true"]{border-color:#aecbfa;background:#aecbfa12}
.preset-swatch{display:block;height:50px;border-radius:6px;border:1px solid #ffffff18;position:relative}
.preset-swatch:after{content:"";position:absolute;inset:12px 10px;border:1px solid #ffffff35;border-radius:50%;transform:rotate(-12deg)}
.preset-name{display:block;font-size:10px;margin:7px 0 2px;white-space:nowrap}
.appearance-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:18px;padding-top:12px;border-top:1px solid #ffffff16;font-size:11px}
:is(.fr-header,.library-header,.shared-bookmark-tools) .appearance-bottom button{border:0;padding:6px;color:#aecbfa;font-size:10px}
:is(.fr-appearance,.interaction-panel) p.appearance-save-note{margin:10px 0 0;font-size:10px;color:#9ba8b8}
.fr-appearance-color{margin-top:18px}

.fr-appearance-choices{grid-template-columns:1.4fr 1fr 1fr}
html[data-appearance="satellite"][data-preset="noir"] #folder-ring-page,html[data-appearance="satellite"][data-preset="noir"] #home-page::before{background:radial-gradient(ellipse at 50% 50%,transparent 66%,#ffffff04 66.2%,transparent 76%),repeating-linear-gradient(0deg,transparent 0 63px,#ffffff03 64px),repeating-linear-gradient(90deg,transparent 0 63px,#ffffff03 64px),var(--satellite-background)}
html[data-appearance="satellite"][data-preset="noir"] .fr-header{background:#0b0c0e}
html[data-appearance="satellite"][data-preset="noir"] .fr-card{background:#121416;border-color:#393d42;box-shadow:0 12px 28px #0006}
html[data-appearance="satellite"][data-preset="noir"] .fr-card.is-front{background:#1c1f22;border-color:#858d96}
html[data-appearance="satellite"][data-preset="noir"] .fr-footer{background:linear-gradient(transparent,var(--satellite-bottom))}
html[data-appearance="image"] #folder-ring-page,html[data-appearance="image"] #home-page::before{background:linear-gradient(#0006,#0009),var(--satellite-image);background-size:cover;background-position:center}
html[data-appearance="image"] .fr-header{background:#0002}
html[data-appearance="image"] .fr-footer{background:linear-gradient(transparent,#0005)}
.image-drop{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;position:relative;margin-top:16px;padding:25px 12px;border:1px dashed #8190a1;border-radius:10px;cursor:pointer;font-size:12px}
.image-drop small{font-size:10px;color:#aeb9c8}
.image-drop.is-dragging,.image-drop:hover{border-color:#aecbfa;background:#aecbfa15}
.image-drop:focus-within{outline:2px solid #aecbfa;outline-offset:2px}
.image-drop input{position:absolute;width:100%;height:100%;inset:0;opacity:0;cursor:pointer}

/* Both views share the same viewport-sized backdrop, independent of list length. */
html,body{overscroll-behavior:none}
#home-page{position:relative;isolation:isolate;background:transparent}
#home-page::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--satellite-background,#1e2126)}
#home-page .library-header{background:transparent}
html[data-appearance="chrome"] #home-page{color:var(--chrome-theme-ink)}
html[data-appearance="chrome"] #home-page :is(.section-top p,.results-heading,.home-footer,.library-brand){color:var(--chrome-theme-ink)}

.library-header{position:relative;z-index:200}

html[data-appearance="satellite"] #folder-ring-page,html[data-appearance="satellite"] #home-page::before{background-size:cover;background-position:center}

/* A shared, non-interactive backdrop keeps motion continuous between views. */
body{isolation:isolate}
#ambient-background{display:none;position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:var(--satellite-base)}
html[data-appearance="satellite"]:is([data-preset="stargaze"],[data-preset="aurora"],[data-preset="dunes"],[data-preset="water"],[data-preset="geometry"],[data-preset="sakura"],[data-preset="nebula"],[data-preset="tide"],[data-preset="opal"]) #ambient-background{display:block}
html[data-appearance="satellite"]:is([data-preset="stargaze"],[data-preset="aurora"],[data-preset="dunes"],[data-preset="water"],[data-preset="geometry"],[data-preset="sakura"],[data-preset="nebula"],[data-preset="tide"],[data-preset="opal"]) #folder-ring-page,html[data-appearance="satellite"]:is([data-preset="stargaze"],[data-preset="aurora"],[data-preset="dunes"],[data-preset="water"],[data-preset="geometry"],[data-preset="sakura"],[data-preset="nebula"],[data-preset="tide"],[data-preset="opal"]) #home-page::before{background:transparent}
#ambient-background::before,#ambient-background::after{content:"";position:absolute;inset:-8%;background:var(--satellite-texture) center/cover no-repeat;transform-origin:center;animation:sky-drift 24s linear infinite alternate}
#ambient-background::after{opacity:.35;animation-duration:17s;animation-direction:alternate-reverse}
html[data-preset="stargaze"] #ambient-background::after{animation-name:star-breathe; background-size:130%}
html[data-preset="aurora"] #ambient-background::before{animation:aurora-flow 20s cubic-bezier(.45,0,.55,1) infinite}
html[data-preset="aurora"] #ambient-background::after{animation:aurora-flow 28s cubic-bezier(.45,0,.55,1) -9s infinite;opacity:.28;mix-blend-mode:screen}
html[data-preset="dunes"] #ambient-background::before{animation:dune-flow 14s linear infinite alternate}
html[data-preset="dunes"] #ambient-background::after{animation:dune-flow 19s linear infinite alternate-reverse;opacity:.25}
html:is([data-preset="water"],[data-preset="opal"]) #ambient-background::before{animation:water-flow 14s ease-in-out infinite alternate}
html:is([data-preset="water"],[data-preset="opal"]) #ambient-background::after{animation:water-flow 19s ease-in-out infinite alternate-reverse;opacity:.45}
html[data-preset="geometry"] #ambient-background::before{animation:none}
html[data-preset="geometry"] #ambient-background::after{display:none}
@keyframes sky-drift{from{transform:translate(-3%,-2%) rotate(-2deg)}to{transform:translate(3%,2%) rotate(2deg)}}
@keyframes star-breathe{from{opacity:.15;transform:scale(1.02) translateX(-1%)}to{opacity:.6;transform:scale(1.08) translateX(1%)}}
@keyframes aurora-flow{0%,100%{transform:translate(-4%,1%) skewX(-6deg) scale(1.18)}25%{transform:translate(0,-3%) skewX(0deg) scale(1.21)}50%{transform:translate(4%,1%) skewX(6deg) scale(1.18)}75%{transform:translate(0,3%) skewX(0deg) scale(1.15)}}
@keyframes dune-flow{from{transform:translate(-3%,1%) scaleY(1.02)}to{transform:translate(3%,-1%) scaleY(1.1)}}
@keyframes water-flow{from{transform:translate(-1%,-2%) scale(1.03) skewX(-2deg);opacity:.6}to{transform:translate(1%,2%) scale(1.09) skewX(2deg);opacity:1}}
@media(prefers-reduced-motion:reduce){#ambient-background::before,#ambient-background::after{animation:none!important}}
html[data-page-hidden="true"] #ambient-background::before,html[data-page-hidden="true"] #ambient-background::after{animation-play-state:paused}

/* Ripples expand from the orbit's measured center, rather than sliding sideways. */
.water-ripple{display:none}
html:is([data-preset="water"],[data-preset="opal"]) #ambient-background::before,html:is([data-preset="water"],[data-preset="opal"]) #ambient-background::after{display:none}
html:is([data-preset="water"],[data-preset="opal"]) .water-ripple{display:block;position:absolute;left:var(--ripple-x,50%);top:var(--ripple-y,46%);width:var(--ripple-width,160vw);height:var(--ripple-height,50vw);border:2px solid #a9e3e84d;border-radius:50%;box-shadow:0 0 20px #8bd4da12,inset 0 0 18px #8bd4da0d;animation:ripple-out 12s linear infinite;pointer-events:none}
html:is([data-preset="water"],[data-preset="opal"]) .water-ripple:nth-of-type(2){animation-delay:-3s}
html:is([data-preset="water"],[data-preset="opal"]) .water-ripple:nth-of-type(3){animation-delay:-6s}
html:is([data-preset="water"],[data-preset="opal"]) .water-ripple:nth-of-type(4){animation-delay:-9s}
@keyframes ripple-out{0%{transform:translate(-50%,-50%) scale(.02);opacity:0}12%{opacity:.65}75%{opacity:.35}100%{transform:translate(-50%,-50%) scale(1);opacity:0}}
html[data-preset="geometry"] #ambient-background::before{inset:0;background-size:cover;background-repeat:no-repeat}
@media(prefers-reduced-motion:reduce){html:is([data-preset="water"],[data-preset="opal"]) .water-ripple{animation:none;transform:translate(-50%,-50%) scale(.25);opacity:.3}html:is([data-preset="water"],[data-preset="opal"]) .water-ripple:nth-of-type(2){transform:translate(-50%,-50%) scale(.5)}html:is([data-preset="water"],[data-preset="opal"]) .water-ripple:nth-of-type(3){transform:translate(-50%,-50%) scale(.75)}html:is([data-preset="water"],[data-preset="opal"]) .water-ripple:nth-of-type(4){transform:translate(-50%,-50%) scale(1)}}
html[data-page-hidden="true"] .water-ripple{animation-play-state:paused}

.sakura-petal{display:none}
html[data-preset="sakura"] #ambient-background::before,html[data-preset="sakura"] #ambient-background::after{display:none}
html[data-preset="sakura"] .sakura-petal{display:block;position:absolute;left:var(--petal-x);top:-30px;width:var(--petal-size);height:calc(var(--petal-size) * 1.5);border-radius:80% 10% 75% 35%;background:linear-gradient(140deg,#f6d2e3cc,#d890b27a);animation:petal-fall var(--petal-duration) linear var(--petal-delay) infinite;opacity:0}
@keyframes petal-fall{0%{transform:translate(-30px,-30px) rotate(0deg);opacity:0}10%{opacity:.7}35%{transform:translate(45px,35vh) rotate(100deg) rotateY(45deg)}65%{transform:translate(-15px,65vh) rotate(210deg) rotateY(140deg);opacity:.6}100%{transform:translate(65px,110vh) rotate(340deg) rotateY(220deg);opacity:0}}
html[data-page-hidden="true"] .sakura-petal{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){html[data-preset="sakura"] .sakura-petal{animation:none;top:var(--petal-x);transform:rotate(30deg);opacity:.4}}

html[data-preset="stargaze"] #ambient-background::before{animation:night-drift 180s linear infinite alternate}
html[data-preset="stargaze"] #ambient-background::after{background-image:url("assets/theme-stargaze-twinkle.svg");background-size:cover;animation:night-twinkle 7s ease-in-out infinite alternate;opacity:.25}
.shooting-star{display:none}
html[data-preset="stargaze"] .shooting-star{display:block;position:absolute;left:20%;top:15%;width:110px;height:1px;background:linear-gradient(90deg,transparent,#dcecff);transform-origin:left center;border-radius:50%;animation:shooting-star 23s linear infinite;opacity:0}
@keyframes shooting-star{0%,88%{opacity:0;transform:rotate(25deg) translateX(-180px)}89%{opacity:.65}94%,100%{opacity:0;transform:rotate(25deg) translateX(65vw)}}
html[data-page-hidden="true"] .shooting-star{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){html[data-preset="stargaze"] .shooting-star{display:none}}

html[data-preset="nebula"] #ambient-background::before{animation:nebula-swirl 18s ease-in-out infinite}
html[data-preset="nebula"] #ambient-background::after{animation:nebula-swirl 25s ease-in-out -9s infinite reverse;mix-blend-mode:screen;opacity:.4}
@keyframes nebula-drift{0%,100%{transform:scale(1.1) rotate(-4deg) translate(-2%,0)}50%{transform:scale(1.22) rotate(4deg) translate(2%,-2%)}}

html[data-page-hidden="true"] #ambient-background::before,html[data-page-hidden="true"] #ambient-background::after{animation-play-state:paused}

html:is([data-preset="water"],[data-preset="opal"]) .water-ripple{border:0;box-shadow:none;background:radial-gradient(ellipse closest-side,transparent 48%,#3c718808 57%,#68b9c326 70%,#99dedb65 80%,#759bda38 88%,#52789c0d 96%,transparent 100%)}

html[data-page-hidden="true"] #ambient-background::before,html[data-page-hidden="true"] #ambient-background::after{animation-play-state:paused}

@keyframes nebula-swirl{0%,100%{transform:scale(1.3) rotate(-10deg) translate(-5%,2%)}25%{transform:scale(1.4) rotate(0deg) translate(0,-5%)}50%{transform:scale(1.32) rotate(10deg) translate(5%,0)}75%{transform:scale(1.4) rotate(0deg) translate(0,5%)}}

html[data-preset="tide"] #ambient-background::before{animation:tide-flow 12s linear infinite}
html[data-preset="tide"] #ambient-background::after{animation:tide-flow 12s linear -6s infinite;mix-blend-mode:screen;opacity:.35}
@keyframes tide-flow{0%{transform:translateY(-20%) scale(1.15);opacity:0}15%{opacity:.65}75%{opacity:.65}100%{transform:translateY(25%) scale(1.25);opacity:0}}
html[data-page-hidden="true"] #ambient-background::before,html[data-page-hidden="true"] #ambient-background::after{animation-play-state:paused}

html[data-preset="opal"] .water-ripple{background:radial-gradient(ellipse closest-side,transparent 42%,#abb8dd05 52%,#c4b1e426 64%,#d4d9f065 76%,#b1dbe746 85%,#8499cf12 95%,transparent 100%)}

html[data-preset="opal"] .water-ripple{left:38%;top:38%;width:125vw;height:65vh;animation:opal-expand 12s linear infinite;--opal-angle:-28deg}
html[data-preset="opal"] .water-ripple:nth-of-type(2){left:67%;top:66%;--opal-angle:30deg;animation-delay:-6s}
html[data-preset="opal"] .water-ripple:nth-of-type(3),html[data-preset="opal"] .water-ripple:nth-of-type(4){display:none}
@keyframes opal-expand{0%{transform:translate(-50%,-50%) rotate(var(--opal-angle)) scale(.3);opacity:0}15%{opacity:.6}70%{opacity:.45}100%{transform:translate(-50%,-50%) rotate(var(--opal-angle)) scale(1.6);opacity:0}}
html[data-preset="tide"] #ambient-background::before{inset:0 -1600px 0 0;background-size:1600px 100%;background-position:0 0;background-repeat:repeat-x;animation:tide-stream 12s linear infinite;opacity:.8}
html[data-preset="tide"] #ambient-background::after{inset:0 -1600px 0 0;background-size:1600px 100%;background-position:800px 100px;background-repeat:repeat-x;animation:tide-stream 18s linear -6s infinite;opacity:.3}
@keyframes tide-stream{from{transform:translateX(0)}to{transform:translateX(-1600px)}}
@media(prefers-reduced-motion:reduce){html[data-preset="opal"] .water-ripple{animation:none;transform:translate(-50%,-50%) rotate(var(--opal-angle)) scale(1);opacity:.45}}
html[data-page-hidden="true"] #ambient-background::before,html[data-page-hidden="true"] #ambient-background::after{animation-play-state:paused}

.shared-bookmark-tools{position:fixed;z-index:300;top:12px;left:calc(var(--satellite-header-start) + 100px);right:340px;display:flex;align-items:center;gap:12px;max-width:340px;height:40px}
.shared-bookmark-tools .bookmark-search{height:36px;width:260px;padding:7px 12px;font-size:11px}
.shared-bookmark-tools .fr-appearance-toggle{display:grid;place-items:center;width:30px;height:30px;padding:6px;border:0;border-radius:50%;color:#c6cdd6}
.shared-bookmark-tools .fr-appearance-wrap{flex:none}
.shared-bookmark-tools .fr-appearance{position:fixed;left:24px;right:auto;top:76px}
.shared-bookmark-tools .appearance-presets button{padding:5px;border:1px solid transparent;border-radius:10px;text-align:left;min-width:0}
.shared-bookmark-tools .appearance-presets button[aria-pressed="true"]{border-color:#aecbfa;background:#aecbfa12}
.shared-bookmark-tools .fr-appearance-choices button{padding:9px 6px;border:1px solid #586677;border-radius:9px;color:#e6eaf0;font-size:11px}
.shared-bookmark-tools .fr-appearance-choices button[aria-pressed="true"]{border-color:#a8c5e8;background:#394b60}
@media(max-width:900px){.shared-bookmark-tools{left:var(--satellite-header-start);right:280px}}
@media(max-width:720px){.shared-bookmark-tools{top:64px;left:var(--satellite-header-start);right:12px}.shared-bookmark-tools .bookmark-search{width:100%}.shared-bookmark-tools .bookmark-search kbd{display:none}.shared-bookmark-tools .fr-appearance{top:126px;left:12px}}
@media(max-width:420px){.shared-bookmark-tools{gap:5px}.shared-bookmark-tools .bookmark-search{padding:7px 8px;gap:5px}.shared-bookmark-tools input{font-size:10px}}

@keyframes night-drift{from{transform:translate(0,0)}to{transform:translate(.8%,.4%)}}
@keyframes night-twinkle{from{opacity:.15}to{opacity:.55}}

/* Quiet navigation, with a generous hit area independent of the icon size. */
.fr-actions :is(#fr-prev,#fr-next){display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;opacity:.62;box-shadow:none;transition:opacity .18s ease,background-color .18s ease}
.fr-actions :is(#fr-prev,#fr-next) svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.fr-actions :is(#fr-prev,#fr-next):hover:not(:disabled){opacity:1;background:color-mix(in srgb,currentColor 6%,transparent)}
.fr-actions :is(#fr-prev,#fr-next):focus-visible{opacity:1;outline:1px solid currentColor;outline-offset:2px}
.fr-actions :is(#fr-prev,#fr-next):disabled{opacity:.2;cursor:default}

.fr-actions :is(#fr-prev,#fr-next){touch-action:none;user-select:none;-webkit-user-select:none}
.shared-bookmark-tools{max-width:382px}
.interaction-wrap{flex:none}
#interaction-toggle{display:grid;place-items:center;width:30px;height:30px;padding:6px;border:0;border-radius:50%;color:#c6cdd6}
#interaction-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}
#interaction-toggle svg circle{fill:#20262d}
.interaction-panel{position:fixed;top:76px;left:24px;max-height:calc(100dvh - 88px);overflow-y:auto}
.interaction-panel label{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin-top:18px;gap:12px}
.interaction-panel output{font-size:11px;color:#aeb9c8;font-variant-numeric:tabular-nums}
.interaction-panel input[type=range]{width:100%;margin:12px 0 0;accent-color:#a8bfdc}
.range-hints{display:flex;justify-content:space-between;font-size:10px;color:#aeb9c8;margin-top:5px}
.interaction-panel .low-power{justify-content:flex-start}.low-power input{accent-color:#a8bfdc}
.interaction-panel p{font-size:11px;color:#aeb9c8;line-height:1.6}
.interaction-panel .appearance-bottom{justify-content:flex-end}
.interaction-panel .appearance-heading+label{margin-top:0}
@media(max-width:720px){.interaction-panel{left:12px;top:126px;max-height:calc(100dvh - 140px)}}
html[data-low-power="true"] #ambient-background::before,html[data-low-power="true"] #ambient-background::after,html[data-low-power="true"] #ambient-background *{animation-play-state:paused!important}
html[data-low-power="true"] .fr-card,html[data-low-power="true"] .fr-card.is-front{box-shadow:none}
