@font-face{font-family:Panchang;src:url('fonts/panchang-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Pilcrow;src:url('fonts/pilcrow-rounded.woff2') format('woff2');font-weight:400 900;font-display:swap}
:root{color-scheme:dark;--bg:#060608;--ink:rgba(3,3,5,.64);--raised:rgba(12,12,16,.7);--paper:#f2f3f5;--muted:#c1c6cf;--faint:#a9afba;--red:#f2323a;--brand:#ca0005;--edge:rgba(255,255,255,.09);--curve:cubic-bezier(.22,1,.36,1);--spring:cubic-bezier(.34,1.56,.64,1);--font:Pilcrow,Arial,sans-serif;--display:Panchang,Pilcrow,sans-serif;--radius:20px;--header-layer:3;--menu-layer:10;--drawer-layer:20;--toast-layer:100}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{background:var(--bg);color:var(--paper);font:550 15px/1.5 var(--font);-webkit-font-smoothing:antialiased}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer}button{border:0;background:none}a{color:inherit;text-decoration:none}button:disabled{cursor:default;opacity:.45}input{color:var(--paper);outline:0;min-width:0}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--red);outline-offset:4px}input::placeholder{color:#a0a1ab;opacity:1}::selection{color:#fff;background:#9f1821}h1,h2,h3,p{margin:0}svg.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.red{color:var(--red)}[hidden]{display:none!important}#waves,.ambient{position:fixed;inset:0;width:100%;height:100%;pointer-events:none}#waves{opacity:.51}.ambient{background:radial-gradient(ellipse at 4% 85%,rgba(133,0,0,.14),transparent 50%),linear-gradient(0deg,rgba(6,6,8,.7),transparent 80%)}.glass{position:relative;background:var(--ink);border:1px solid var(--edge);box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 12px 40px rgba(0,0,0,.16)}.glass:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;backdrop-filter:blur(22px) saturate(120%)}
.app-shell{position:relative;display:grid;grid-template-columns:222px minmax(0,1fr);grid-template-rows:72px minmax(0,1fr);gap:22px;height:100dvh;padding:22px 26px 24px;max-width:1920px;margin:auto}.topbar{grid-column:1/-1;border-radius:20px;display:flex;align-items:center;padding:0 24px;isolation:isolate;z-index:var(--header-layer)}.wordmark{font:600 24px/1 var(--display);letter-spacing:-1.2px}.wordmark span{color:#ff162b}.nav-track{display:flex;position:relative;gap:4px;margin-left:52px;padding:5px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.035);border-radius:12px}.nav-glider{position:absolute;left:0;top:5px;height:34px;width:85px;transform:translateX(5px);background:linear-gradient(180deg,rgba(158,23,31,.52),rgba(51,7,12,.7));border:1px solid rgba(242,50,58,.19);border-radius:8px;transition:transform .5s var(--spring),width .4s var(--curve);pointer-events:none}.nav-button{position:relative;z-index:1;padding:7px 16px;font-size:13px;font-weight:750;color:var(--faint);white-space:nowrap;transition:color .2s}.nav-button.active{color:#fff}.nav-button span{margin-left:5px;font-size:11px;color:var(--faint)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:20px}.icon-button{height:38px;min-width:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;color:#c6c8d0;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.065);transition:background .25s,color .25s,transform .35s var(--spring)}.icon-button:hover{background:rgba(255,255,255,.075);color:#fff;transform:translateY(-1px)}.icon-button:active{transform:translateY(1px)}
.sidebar{border-radius:20px;padding:25px 20px 20px;display:flex;flex-direction:column;min-height:0;isolation:isolate;overflow:visible}.sidebar-head{display:flex;justify-content:space-between;align-items:center}.sidebar-label{font-size:11px;letter-spacing:.045em;color:var(--faint);font-weight:750}.sidebar h2{font:600 17px/1.6 var(--display);letter-spacing:-.8px;margin-top:10px}.sidebar-description{font-size:14px;color:var(--faint);margin-top:13px;line-height:1.7}.filter-controls{margin-top:34px;display:flex;flex-direction:column;gap:18px}.filter-field{position:relative}.filter-label{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-weight:850;margin:0 0 7px 2px}.filter-trigger{display:flex;align-items:center;gap:9px;width:100%;height:43px;padding:0 12px;border-radius:11px;border:1px solid rgba(255,255,255,.085);background:rgba(255,255,255,.026);font-size:13px;font-weight:700;text-align:left;transition:border-color .25s,background .25s}.filter-trigger .icon{height:16px;width:16px;color:var(--faint)}.filter-trigger>.icon:last-child{margin-left:auto;height:14px;width:14px;transition:transform .35s var(--curve)}.filter-trigger[aria-expanded=true]>.icon:last-child{transform:rotate(180deg)}.filter-trigger:hover,.filter-trigger[aria-expanded=true]{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.15)}.trigger-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.swatch{width:12px;height:12px;border-radius:4px;background:var(--swatch);border:1px solid rgba(255,255,255,.16);display:inline-block;flex-shrink:0}.popover{position:fixed;z-index:var(--menu-layer);padding:6px;background:rgba(10,8,11,.85);border:1px solid rgba(255,255,255,.12);border-radius:13px;backdrop-filter:blur(26px);box-shadow:0 18px 45px rgba(0,0,0,.35);animation:menu-in .25s var(--curve);max-height:350px;overflow:hidden;display:flex;flex-direction:column;min-width:200px}.popover-list{overflow-y:auto;position:relative;scrollbar-width:none;max-height:290px}.popover-list::-webkit-scrollbar{display:none}.menu-glider{position:absolute;top:0;left:0;right:0;height:36px;border-radius:8px;background:linear-gradient(180deg,rgba(173,25,34,.27),rgba(62,11,17,.36));border:1px solid rgba(242,50,58,.12);pointer-events:none;transition:transform .35s var(--curve),opacity .2s}.menu-option{position:relative;width:100%;height:36px;display:flex;align-items:center;gap:9px;text-align:left;padding:0 9px;font-size:13px;border-radius:8px;white-space:nowrap}.menu-option span.option-label{overflow:hidden;text-overflow:ellipsis}.menu-option .option-count{margin-left:auto;color:var(--faint);font-size:11px}.menu-option .icon{margin-left:auto;width:15px;height:15px;color:var(--red)}.menu-search{border:1px solid var(--edge);background:rgba(255,255,255,.035);border-radius:8px;padding:8px 10px;font-size:13px;width:100%;margin-bottom:5px;caret-color:var(--red)}.menu-empty{padding:15px 8px;color:var(--faint);font-size:12px}.reset-button{display:flex;align-items:center;gap:7px;color:var(--faint);font-size:12px;padding:20px 3px 4px;width:max-content;transition:color .2s}.reset-button .icon{width:14px;height:14px}.reset-button:hover{color:var(--red)}.sidebar-bottom{margin-top:auto;padding-top:30px}.collection-size{display:flex;flex-direction:column;gap:1px}.collection-size strong{font:600 29px/1.3 var(--display);letter-spacing:-1px}.collection-size span{font-size:12px;color:var(--faint)}.sidebar-rule{height:1px;background:var(--edge);margin:20px 0}.sidebar-bottom p{font-size:14px;line-height:1.7;color:var(--muted)}.local-note{display:flex;align-items:flex-start;gap:6px;font-size:10px;color:var(--faint);margin-top:18px}.local-note .icon{width:12px;height:12px;margin-top:1px}
.workspace{min-width:0;min-height:0;display:flex;flex-direction:column;padding:13px 0 0 7px}.workspace-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:26px;padding-right:5px}.workspace h1{font:600 clamp(23px,2.6vw,40px)/1.4 var(--display);letter-spacing:-.055em;white-space:nowrap}.workspace h1 span{color:var(--red)}.workspace-heading p{color:var(--faint);font-size:14px;margin-top:6px}.key{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border-radius:11px;background:linear-gradient(165deg,#e01c28 0%,#9c0d18 55%,#3a060d 100%);border:1px solid rgba(255,108,115,.28);box-shadow:0 3px 0 #4c030a,0 4px 0 #1c0105,inset 0 1px 0 rgba(255,255,255,.15);padding:11px 17px;font-size:12px;font-weight:800;color:white;transform:translateY(-1px);transition:transform .32s var(--spring),filter .25s,box-shadow .25s}.key:hover{transform:translateY(0);filter:brightness(1.14);box-shadow:0 2px 0 #4c030a,0 3px 0 #1c0105,inset 0 1px 0 rgba(255,255,255,.19)}.key:active{transform:translateY(3px);box-shadow:0 0 0 #4c030a}.key .icon{width:16px;height:16px}.shuffle-button{margin-right:1px}.toolbar{display:flex;align-items:center;gap:12px;padding-right:5px}.search-field{height:48px;border:1px solid rgba(255,255,255,.1);background:rgba(3,3,5,.65);border-radius:13px;display:flex;align-items:center;gap:12px;padding:0 15px;flex:1;position:relative;overflow:hidden}.search-field>.icon{color:var(--faint);width:19px;height:19px}.search-field input{border:0;background:none;width:100%;height:100%;font-size:14px;font-weight:550;padding:0;caret-color:transparent}.search-field input::-webkit-search-cancel-button{-webkit-appearance:none}.search-field:focus-within{border-color:rgba(242,50,58,.6)}kbd{font-family:var(--font);font-size:11px;padding:2px 7px;color:var(--faint);border:1px solid var(--edge);border-radius:5px;line-height:1.3}.clear-search{display:flex;align-items:center;color:var(--faint);padding:2px}.clear-search .icon{height:15px;width:15px}.smooth-caret{position:absolute;width:1.5px;height:18px;left:0;top:50%;margin-top:-9px;border-radius:1px;background:var(--red);pointer-events:none;opacity:0;transition:transform .13s var(--curve)}[data-smooth-caret]:focus-within .smooth-caret{opacity:1;animation:caret-blink 1.2s steps(1) infinite}.density-track{height:46px;display:flex;position:relative;gap:4px;padding:4px;border:1px solid var(--edge);border-radius:12px;background:rgba(3,3,5,.65)}.density-track button{display:flex;align-items:center;justify-content:center;width:38px;position:relative;z-index:1;color:var(--faint)}.density-track button.active{color:#fff}.density-glider{position:absolute;left:4px;top:4px;bottom:4px;width:38px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.065);border-radius:8px;transition:transform .4s var(--spring)}.density-track:has([data-density=compact].active) .density-glider{transform:translateX(42px)}.results-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:49px;padding:9px 7px 8px 2px;color:var(--faint);font-size:12px}.results-bar>span{flex-shrink:0}.results-bar strong{font-weight:750;color:var(--paper)}.active-filters{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.active-filter{display:inline-flex;align-items:center;gap:5px;font-size:10px;line-height:1;padding:6px 8px;border-radius:6px;color:#f6b6bb;background:rgba(202,0,5,.1);border:1px solid rgba(242,50,58,.15)}.active-filter .icon{height:11px;width:11px}.gallery-viewport{min-height:0;flex:1;overflow-y:auto;overflow-x:hidden;position:relative;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent;border-radius:18px;overscroll-behavior:contain;outline:none!important}.gallery-viewport::-webkit-scrollbar{width:4px}.gallery-viewport::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:4px}.gallery-grid{position:relative;width:100%;contain:layout style}.image-card{position:absolute;left:0;top:0;width:var(--card-width);height:var(--card-height);transform:translate3d(var(--x),var(--y),0);contain:layout style}.image-open{display:block;width:100%;aspect-ratio:1;position:relative;border-radius:16px;overflow:hidden;padding:0;background:rgba(255,255,255,.026);isolation:isolate;border:1px solid rgba(255,255,255,.055)}.image-open:after{content:'';position:absolute;inset:0;border:1px solid rgba(255,255,255,.08);border-radius:inherit;pointer-events:none;transition:border-color .35s}.image-open:hover:after{border-color:rgba(255,255,255,.28)}.image-open img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transform:scale(1.035);transition:opacity .5s var(--curve),transform .75s var(--curve)}.image-open.loaded img{opacity:1;transform:scale(1)}.image-open.loaded:hover img{transform:scale(1.045)}.skeleton{position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.022) 25%,rgba(255,255,255,.065) 45%,rgba(255,255,255,.022) 65%);overflow:hidden}.skeleton:after{content:'';position:absolute;inset:-50%;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.06) 48%,transparent 60%);animation:skeleton-glide 2.3s linear infinite;transform:translateX(-60%)}.image-open .skeleton{transition:opacity .4s;pointer-events:none}.image-open.loaded .skeleton{opacity:0}.image-open.loaded .skeleton:after{animation:none}.card-error{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;color:var(--faint);opacity:0}.image-open.failed .card-error{opacity:1}.image-open.failed .skeleton:after{animation:none}.card-caption{height:43px;padding:8px 2px 0 3px;display:flex;align-items:flex-start;gap:8px}.card-name{font-size:11px;font-weight:700;color:#d2d2d9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.caption-meta{display:flex;flex-direction:column;gap:1px;min-width:0}.card-palette{font-size:10px;color:var(--faint);font-weight:500}.card-save{margin-left:auto;display:flex;align-items:center;justify-content:center;min-width:30px;height:28px;color:#afb0bd;border-radius:8px;margin-top:-2px;transition:color .25s,background .25s,transform .3s var(--spring)}.card-save .icon{width:16px;height:16px}.card-save:hover{background:rgba(255,255,255,.05);color:white;transform:scale(1.07)}.card-save.saved{color:var(--red)}.card-save.saved .icon{fill:rgba(242,50,58,.22)}.empty-state{position:absolute;inset:5% 0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;text-align:center}.empty-icon{height:66px;width:66px;border-radius:20px;border:1px solid rgba(242,50,58,.16);display:flex;align-items:center;justify-content:center;background:rgba(202,0,5,.045);margin-bottom:4px;color:var(--red)}.empty-icon .icon{width:28px;height:28px}.empty-state h2{font:600 20px/1.5 var(--display);letter-spacing:-.7px}.empty-state p{color:var(--faint);font-size:14px;max-width:300px}.empty-state .key{margin-top:6px}
dialog{color:var(--paper);border:1px solid rgba(255,255,255,.12);padding:0;outline:0;background:rgba(6,6,9,.96);border-radius:22px;box-shadow:0 35px 120px rgba(0,0,0,.6);max-width:calc(100vw - 40px);max-height:calc(100dvh - 40px)}dialog[open]{animation:dialog-in .45s var(--curve)}dialog::backdrop{background:rgba(3,2,5,.72);backdrop-filter:blur(16px);animation:backdrop-in .4s var(--curve)}.viewer-dialog{width:1250px;height:min(850px,calc(100dvh - 70px));overflow:hidden}.viewer-layout{height:100%;display:grid;grid-template-columns:minmax(0,1fr) 316px}.viewer-stage{position:relative;min-height:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#150e11,#070709 70%);padding:30px;overflow:hidden}.viewer-stage>img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;opacity:0;transform:scale(.98);transition:opacity .45s var(--curve),transform .6s var(--curve);border-radius:5px;box-shadow:0 16px 65px rgba(0,0,0,.2)}.viewer-stage.loaded>img{opacity:1;transform:scale(1)}.viewer-skeleton{inset:10%;border-radius:12px;transition:opacity .3s}.viewer-stage.loaded .viewer-skeleton{opacity:0;pointer-events:none}.viewer-stage.loaded .viewer-skeleton:after{animation:none}.viewer-arrow{position:absolute;top:50%;transform:translateY(-50%);width:37px;height:47px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.1);background:rgba(7,6,9,.65);border-radius:12px;backdrop-filter:blur(10px);transition:background .25s}.viewer-arrow:hover{background:rgba(110,15,23,.7)}.viewer-arrow.prev{left:15px}.viewer-arrow.next{right:15px}.viewer-image-error{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:#0b090c}.viewer-details{padding:22px;overflow-y:auto;scrollbar-width:none;border-left:1px solid var(--edge);background:rgba(12,9,12,.65)}.viewer-details::-webkit-scrollbar{display:none}.viewer-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.viewer-details h2{font:600 18px/1.5 var(--display);letter-spacing:-.9px;margin-bottom:4px}.viewer-dimensions{color:var(--faint);font-size:11px}.viewer-actions{display:flex;gap:9px;margin:24px 0 26px}.viewer-actions .key{flex:1}.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 14px;border:1px solid rgba(255,255,255,.12);border-radius:11px;font-size:12px;white-space:nowrap;font-weight:750;background:rgba(255,255,255,.025);transition:background .25s}.secondary-button .icon{width:16px;height:16px}.secondary-button:hover{background:rgba(255,255,255,.065)}.detail-section{margin-top:24px}.detail-section h3,.about-dialog h3{font-size:12px;font-weight:800;margin-bottom:10px}.detail-section h3>span{font-weight:500;font-size:9px;color:var(--faint);margin-left:5px}.viewer-palette{display:flex;gap:6px}.palette-token{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--faint);padding:5px 8px;border:1px solid var(--edge);border-radius:7px}.palette-token .swatch{width:9px;height:9px;border-radius:3px}.average-color{display:flex;align-items:center;gap:10px;margin-top:13px}.average-color>span{width:31px;height:31px;border-radius:8px;background:var(--swatch);border:1px solid rgba(255,255,255,.1)}.average-color>div{display:flex;flex-direction:column}.average-color>div>span{font-size:10px;color:var(--faint)}.average-color button{font-size:11px;font-weight:750;text-align:left;padding:0;letter-spacing:.02em}.tag-list{display:flex;flex-wrap:wrap;gap:6px}.tag{display:inline-flex;align-items:center;gap:4px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025);color:var(--muted);border-radius:7px;padding:5px 8px;font-size:10px;font-weight:600;transition:background .2s,border-color .2s}.tag:hover{background:rgba(242,50,58,.09);border-color:rgba(242,50,58,.24)}.tag.user-tag{color:#f3a9af;border-color:rgba(242,50,58,.2);background:rgba(202,0,5,.06)}.tag .remove-tag{padding:0 0 0 3px;display:flex;color:#d9a5a9}.tag .icon{width:11px;height:11px}.detail-note{font-size:10px;color:var(--faint);line-height:1.65;margin-top:10px}.tag-input-row{display:flex;gap:6px;margin-top:10px}.tag-input-field{position:relative;min-width:0;flex:1;border-radius:9px;border:1px solid var(--edge);background:rgba(255,255,255,.025);overflow:hidden}.tag-input-field input{width:100%;height:38px;padding:0 10px;background:none;border:0;font-size:12px;caret-color:transparent}.tag-input-row .icon-button{height:38px;min-width:36px;border-radius:9px}
.about-dialog{width:530px;padding:25px 29px;isolation:isolate;overflow-y:auto;background:rgba(8,5,9,.94)}.about-dialog h2{font:600 24px/1.65 var(--display);letter-spacing:-1px;margin-bottom:18px}.about-dialog>p{color:var(--muted);font-size:13px;line-height:1.8}.about-note{display:flex;gap:12px;padding:17px 0;margin:17px 0;border-top:1px solid var(--edge);border-bottom:1px solid var(--edge)}.about-note>.icon{color:var(--red);margin-top:2px;width:19px;height:19px}.about-note strong{font-size:12px}.about-note p{font-size:12px;color:var(--faint);line-height:1.75;margin-top:5px}.about-dialog h3{margin-top:21px}.about-actions{display:flex;gap:10px;margin-top:22px}.about-footer{display:flex;flex-direction:column;gap:5px;color:var(--faint);font-size:10px;line-height:1.6;margin-top:27px;padding-top:18px;border-top:1px solid var(--edge)}.toast{position:fixed;left:50%;bottom:28px;z-index:var(--toast-layer);transform:translate(-50%,25px) scale(.95);opacity:0;border-color:rgba(242,50,58,.2);border-radius:12px;background:rgba(23,0,1,.78);padding:14px 22px;display:flex;align-items:center;gap:9px;font-size:12px;max-width:calc(100vw - 32px);transition:transform .5s var(--spring),opacity .3s;pointer-events:none;isolation:isolate;overflow:hidden}.toast .icon{height:16px;width:16px;color:var(--red)}.toast.visible{opacity:1;transform:translate(-50%,0) scale(1);pointer-events:auto}.toast-fuse{position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--red);transform-origin:left}.toast.visible .toast-fuse{animation:toast-life 3.5s linear forwards}.toast:hover .toast-fuse{animation-play-state:paused}.loading-cover{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 50%,rgba(91,0,9,.22),rgba(6,6,8,.97) 65%);backdrop-filter:blur(16px);transition:opacity .45s var(--curve),visibility .45s}.loading-cover.leaving{opacity:0;visibility:hidden;pointer-events:none}.loading-mark{font:600 40px/1.3 var(--display);letter-spacing:-2px;animation:logo-breathe 2.6s cubic-bezier(.45,0,.55,1) infinite}.loading-line{height:2px;margin-top:22px;background:rgba(255,255,255,.055);position:relative;overflow:hidden}.loading-line i{display:block;position:absolute;inset:0;background:#ff0022;transform:scaleX(.05);transform-origin:center;transition:transform .55s var(--curve)}.loading-cover p{margin-top:22px;color:var(--faint);font-size:12px;max-width:340px;text-align:center;padding:0 15px}.loading-cover>.key{margin-top:20px}.mobile-only{display:none}.noscript-message{position:fixed;inset:0;z-index:201;display:grid;place-items:center;padding:30px;background:#060608;color:white}
@keyframes skeleton-glide{from{transform:translateX(-60%)}to{transform:translateX(60%)}}@keyframes logo-breathe{0%,100%{transform:scale(.98);opacity:.8}50%{transform:scale(1.04);opacity:1}}@keyframes caret-blink{0%,80%{opacity:1}81%,100%{opacity:0}}@keyframes toast-life{from{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes menu-in{from{opacity:0;transform:translateY(-5px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes dialog-in{from{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}
.menu-search-wrap{position:relative;margin-bottom:5px;overflow:hidden}.menu-search-wrap .menu-search{margin-bottom:0;caret-color:transparent}.toast[popover]{inset:auto;left:50%;bottom:28px;margin:0;overflow:visible}.toast[popover] .toast-fuse{border-radius:0 0 12px 12px}.toast::backdrop{background:transparent;pointer-events:none}
/* Layer scale: header 3, dropdowns 10, mobile drawer 20, toast 100, startup 200.
   Dialogs use the browser top layer. The supplied Yume motion policy is explicit;
   system reduced-motion does not disable the animations in this design. */
@media(max-width:1150px){.app-shell{grid-template-columns:200px minmax(0,1fr);gap:18px;padding:18px}.sidebar{padding:22px 16px}.workspace{padding-left:0}.workspace h1{font-size:28px}.sidebar-bottom p{display:none}.filter-controls{margin-top:27px}.sidebar-description{font-size:13px}.topbar{padding:0 20px}.nav-track{margin-left:35px}}
@media(max-height:830px) and (min-width:761px){.sidebar-description{display:none}.filter-controls{margin-top:23px;gap:14px}.sidebar-bottom{padding-top:15px}.sidebar-rule{margin:13px 0}.sidebar-bottom p{display:none}.local-note{margin-top:13px}.workspace-heading{margin-bottom:21px}.workspace{padding-top:7px}}
@media(max-width:760px){.app-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:61px minmax(0,1fr);gap:16px;padding:12px 14px 10px}.topbar{padding:0 15px;border-radius:16px}.wordmark{font-size:20px;letter-spacing:-1px}.nav-track{margin-left:auto;margin-right:10px;background:none;border:0;padding:4px;gap:0}.nav-button{padding:7px 11px;font-size:11px}.nav-button span{font-size:9px;margin-left:3px}.nav-glider{top:4px;height:32px}.topbar-right{gap:0;margin:0}.topbar-right>.icon-button{height:33px;min-width:33px;border-radius:9px}.workspace{padding:0;grid-column:1;grid-row:2}.workspace-heading{align-items:flex-start;margin:2px 0 18px;padding:0}.workspace h1{font-size:clamp(20px,5.1vw,29px);line-height:1.5;letter-spacing:-.05em}.workspace-heading p{font-size:12px;margin-top:6px}.shuffle-button{padding:10px;min-width:39px;margin-top:3px;font-size:0;gap:0}.shuffle-button .icon{height:17px;width:17px}.toolbar{gap:8px;padding:0}.search-field{height:44px;border-radius:11px;padding:0 12px;gap:9px}.search-field input{font-size:12px}.search-field>.icon{height:17px;width:17px}.search-field kbd{display:none}.density-track{height:42px;padding:3px;gap:0}.density-track button{width:30px}.density-glider{width:30px;left:3px;top:3px;bottom:3px;border-radius:7px}.density-track:has([data-density=compact].active) .density-glider{transform:translateX(30px)}.density-track .icon{width:17px;height:17px}.toolbar>.icon-button{height:42px;min-width:37px;border-radius:11px}.results-bar{font-size:10px;min-height:44px;gap:5px;padding-right:1px}.active-filter{padding:5px 6px;font-size:9px}.active-filters{gap:3px;max-width:65%}.gallery-viewport{border-radius:12px}.image-open{border-radius:12px}.card-name{font-size:10px}.card-palette{font-size:9px}.card-caption{padding-top:6px;height:40px}.card-save{min-width:25px;height:26px}.mobile-only{display:inline-flex}.sidebar{position:fixed;left:14px;top:86px;bottom:14px;width:260px;z-index:var(--drawer-layer);transform:translateX(calc(-100% - 30px));opacity:0;transition:transform .5s var(--curve),opacity .35s;background:rgba(6,4,7,.93);padding:23px}.sidebar.open{transform:translateX(0);opacity:1}.sidebar-head .icon-button{width:30px;min-width:30px;height:30px}.sidebar h2{font-size:20px}.sidebar-description{display:block}.sidebar-bottom p{display:block}.sidebar-scrim{position:fixed;inset:0;z-index:19;background:rgba(0,0,0,.55);backdrop-filter:blur(6px)}.popover{z-index:25}.viewer-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;border-radius:0;border:0}.viewer-layout{grid-template-columns:1fr;grid-template-rows:53dvh minmax(0,1fr)}.viewer-stage{padding:22px 40px}.viewer-details{border-left:0;border-top:1px solid var(--edge);padding:18px 21px}.viewer-heading{margin-bottom:9px}.viewer-details h2{font-size:19px}.viewer-actions{margin:17px 0 20px}.viewer-arrow{width:32px;height:43px}.viewer-arrow.prev{left:7px}.viewer-arrow.next{right:7px}.viewer-details .detail-section{margin-top:20px}.viewer-details>#close-viewer{position:fixed}.viewer-heading #close-viewer{position:fixed;right:14px;top:14px;background:rgba(6,6,8,.75);backdrop-filter:blur(12px);color:#fff;border-color:rgba(255,255,255,.2);z-index:2}.about-dialog{padding:21px 23px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 36px)}.about-dialog h2{font-size:21px}.about-actions{flex-direction:column}.about-dialog p{font-size:12px}.empty-state h2{font-size:18px}.empty-state p{font-size:12px}.toast{bottom:17px;font-size:11px;padding:12px 16px}}
@media(prefers-reduced-transparency:reduce){.glass,.popover,.viewer-details{background:#0a080c}.glass:before,.popover{backdrop-filter:none}}

.pagination{display:flex;align-items:center;gap:18px;min-height:55px;padding:12px 5px 0 1px;border-top:1px solid var(--edge);margin-top:6px;flex-shrink:0}.pagination-status{color:var(--faint);font-size:10px;margin-right:auto;white-space:nowrap}.pagination-nav{display:flex;align-items:center;gap:7px}.page-numbers{display:flex;align-items:center;gap:3px;position:relative;height:32px}.page-glider{position:absolute;left:0;top:0;width:32px;height:32px;border-radius:8px;background:linear-gradient(180deg,rgba(158,23,31,.52),rgba(51,7,12,.7));border:1px solid rgba(242,50,58,.21);transition:transform .45s var(--spring),width .3s var(--curve);pointer-events:none}.page-number{position:relative;z-index:1;min-width:32px;height:32px;padding:0 7px;color:var(--faint);font-size:11px;font-weight:750;border-radius:8px}.page-number[aria-current=page]{color:#fff}.page-number:hover{color:#fff}.page-ellipsis{font-size:11px;color:var(--faint);padding:0 2px}.page-arrow{height:32px;width:29px;display:flex;align-items:center;justify-content:center;border-radius:8px;color:var(--muted);border:1px solid var(--edge);background:rgba(255,255,255,.025)}.page-arrow .icon{width:16px;height:16px}.page-arrow:not(:disabled):hover{background:rgba(242,50,58,.09);color:#fff}.page-size-trigger{width:103px;height:33px;font-size:10px;flex-shrink:0;padding:0 9px}.page-size-trigger>.icon:last-child{width:12px;height:12px}
@media(max-width:1050px) and (min-width:761px){.pagination{gap:10px;flex-wrap:wrap}.pagination-status{flex:1}.pagination-nav{order:3;width:100%;justify-content:center}.pagination{padding-top:9px}}
@media(max-width:760px){.pagination{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:2px;padding:9px 0 1px;min-height:83px}.pagination-status{font-size:9px}.page-size-trigger{grid-column:2;grid-row:1;justify-self:end;height:28px;width:90px;font-size:9px}.pagination-nav{grid-column:1/-1;grid-row:2;justify-content:center;gap:8px}.page-number{min-width:29px;height:30px;font-size:10px}.page-glider{height:30px}.page-numbers{height:30px}.page-arrow{height:30px;width:28px}.page-ellipsis{font-size:10px}}
/* ScarletPic wordmark fits compact navigation and the startup cover. */
.wordmark{font-size:21px}.loading-mark{font-size:clamp(24px,7.2vw,40px)}
@media(max-width:760px){.wordmark{font-size:clamp(12px,3.3vw,18px);letter-spacing:-.65px}.nav-track{margin-right:6px}.nav-button{padding-inline:9px}.topbar{padding-inline:13px}}
@media(max-width:370px){.nav-button span{display:none}.nav-button{padding-inline:8px}.topbar{padding-inline:11px}}
