/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}.container{width:min(100%,1200px);margin-inline:auto;padding-inline:1.5rem}:root{color-scheme:dark}html{background-color:#0c0c0d;min-height:100%}body{color:#ffffffeb;background-color:#0c0c0d;min-height:100vh;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body:before{content:"";filter:blur(60px);z-index:-2;background:radial-gradient(120% 120% at 110% -10%,#4c1bff1a,#0c0c0df2 55%),radial-gradient(110% 110% at -10% 120%,#00adb526,#0c0c0de6 60%);position:fixed;inset:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;color:inherit}::selection{background:#7c3aed59}@keyframes item-load{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.grid{border-radius:12px;min-height:400px;position:relative;overflow:hidden}.grid-item{opacity:0;background:#111;border-radius:0;animation:.4s forwards item-load;position:relative;overflow:hidden}.grid-item img{object-fit:cover;outline-offset:0px;opacity:0;background:#101010;outline:3px solid #0000;width:100%;height:100%;transition:opacity .5s cubic-bezier(.4,0,.2,1);position:relative}.grid-item img.loaded{opacity:1}.grid-item.image-error{background:linear-gradient(135deg,#ef444414,#dc26261f);border:1px solid #ef444433}.grid-item.image-error:after{content:"⚠";color:#ef444499;pointer-events:none;z-index:1;font-size:32px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.grid-item.image-error:hover:after{color:#ef4444cc}@keyframes backfill-success{0%{background:linear-gradient(135deg,#ef444414,#dc26261f);border-color:#ef444433}50%{background:linear-gradient(135deg,#4ade801f,#22c55e29);border-color:#4ade8066}to{background:#111;border-color:#0000}}.grid-item.backfilling{animation:1.2s cubic-bezier(.4,0,.2,1) forwards backfill-success}@media (hover:hover) and (pointer:fine){.grid-item:hover{z-index:12}}body.modal-open .grid-item{animation:none!important;transform:none!important}body.modal-open,body.zoom-overlay-open{overflow:hidden}.image-zoom-overlay{z-index:9999;opacity:0;background:#060403f2;transition:opacity .5s cubic-bezier(.4,0,.2,1);position:fixed;inset:0}.image-zoom-overlay.is-visible{opacity:1}.image-zoom-overlay__img{z-index:10;will-change:left,top,width,height,opacity;object-fit:contain;backface-visibility:hidden;border-radius:12px;transition:left .48s cubic-bezier(.22,.61,.36,1),top .48s cubic-bezier(.22,.61,.36,1),width .48s cubic-bezier(.22,.61,.36,1),height .48s cubic-bezier(.22,.61,.36,1),opacity .32s cubic-bezier(.4,0,.2,1),border-radius .38s cubic-bezier(.22,.61,.36,1),box-shadow .38s cubic-bezier(.22,.61,.36,1);position:fixed;box-shadow:0 24px 64px #0000008c}body.zoom-meta-panel-open .image-zoom-overlay__img{box-shadow:0 24px 64px #0000008c}.image-zoom-overlay__nav{opacity:0;pointer-events:none;background:0 0;align-items:stretch;width:clamp(18px,3vw,40px);padding:0;transition:opacity .2s;display:flex;position:fixed;top:0;bottom:0}.image-zoom-overlay__nav--prev{justify-content:center;left:0}.image-zoom-overlay__nav--next{justify-content:center;right:0}.image-zoom-overlay:hover .image-zoom-overlay__nav{opacity:1}.image-zoom-overlay__navButton{color:#ffffffdb;pointer-events:auto;cursor:pointer;background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;width:100%;height:100%;font-size:24px;transition:color .22s cubic-bezier(.4,0,.2,1),background .22s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.image-zoom-overlay__navButton:hover,.image-zoom-overlay__navButton:focus-visible{color:#fffffff0;background:#00000047;outline:none}.image-zoom-overlay__navButton:active{color:#fffffffa;background:#0000005c}.zoom-meta-panel__triggerZone{pointer-events:auto;z-index:10001;transition:left var(--zoom-panel-duration,0s)var(--zoom-panel-easing,ease),top var(--zoom-panel-duration,0s)var(--zoom-panel-easing,ease);justify-content:flex-end;align-items:flex-start;padding:8px 10px 0 0;display:flex;position:fixed}.zoom-meta-panel__toggle{color:#ffffffe6;cursor:pointer;opacity:0;pointer-events:none;background:#16100cbd;border:none;border-radius:12px;justify-content:center;align-items:center;width:34px;min-width:0;height:34px;transition:opacity .22s,transform .22s,background .2s,box-shadow .2s;display:flex;transform:translateY(-6px);box-shadow:0 12px 28px #00000047}.zoom-meta-panel__triggerZone:hover .zoom-meta-panel__toggle,.zoom-meta-panel__toggle:focus-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.zoom-meta-panel__toggle:hover,.zoom-meta-panel__toggle:focus-visible{background:#0c0806f0;outline:none;box-shadow:0 16px 34px #00000061}.zoom-meta-panel__triggerZone.is-hidden .zoom-meta-panel__toggle,.zoom-meta-panel__toggle.is-hidden{opacity:0;pointer-events:none;transform:scale(.92)translateY(-4px)}.zoom-meta-panel__toggle.is-instant-hide{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:none!important}.zoom-meta-panel__triggerZone.is-instant-hide{pointer-events:none!important;transition:none!important}.zoom-meta-panel__sheet{color:#ffffffeb;opacity:0;pointer-events:none;z-index:9;transform-origin:0;clip-path:inset(0 0 0 100% round 0 20px 20px 0);will-change:left,top,width,height,opacity,clip-path,transform,box-shadow,padding;backface-visibility:hidden;width:320px;max-width:min(360px,100vw - 36px);transition:left var(--zoom-panel-duration,.46s)var(--zoom-panel-easing,cubic-bezier(.22,.61,.36,1))var(--zoom-panel-delay,0s),top var(--zoom-panel-duration,.46s)var(--zoom-panel-easing,cubic-bezier(.22,.61,.36,1))var(--zoom-panel-delay,0s),width var(--zoom-panel-duration,.46s)var(--zoom-panel-easing,cubic-bezier(.22,.61,.36,1))var(--zoom-panel-delay,0s),height var(--zoom-panel-duration,.46s)var(--zoom-panel-easing,cubic-bezier(.22,.61,.36,1))var(--zoom-panel-delay,0s),padding var(--zoom-panel-duration,.46s)var(--zoom-panel-easing,cubic-bezier(.22,.61,.36,1))var(--zoom-panel-delay,0s),clip-path var(--zoom-panel-duration,.46s)cubic-bezier(.25,.75,.26,1),transform var(--zoom-panel-duration,.46s)cubic-bezier(.25,.75,.26,1),opacity .26s cubic-bezier(.33,0,.26,1),box-shadow var(--zoom-panel-duration,.46s)cubic-bezier(.25,.75,.26,1);background:linear-gradient(136deg,#110d0bf0,#130f0ce6 60%,#16120fdb);border-radius:0 20px 20px 0;flex-direction:column;padding:22px 22px 24px;display:flex;position:fixed;overflow:hidden;transform:translate(-36px,6px)scaleX(.82)scaleY(.94);box-shadow:0 26px 54px #00000085}.zoom-meta-panel__sheet:before{content:"";opacity:0;transition:transform var(--zoom-panel-duration,.46s)cubic-bezier(.25,.75,.26,1),opacity .32s cubic-bezier(.42,0,.58,1);pointer-events:none;background:linear-gradient(120deg,#ffffff38,#ffffff14 45%,#0000);position:absolute;inset:-12% -10% -12% -34%;transform:translate(-22%)}.zoom-meta-panel__sheet.is-open{opacity:1;pointer-events:auto;clip-path:inset(0 round 0 20px 20px 0);transform:translate(0)scaleX(1)scaleY(1);box-shadow:0 32px 70px #0000008f}.zoom-meta-panel__sheet.is-open:before{opacity:.28;transform:translate(0)}.zoom-meta-panel__sheet.is-open.is-opening{transform:translate(-6px)scaleX(1.02)scaleY(1);box-shadow:0 38px 84px #0000009e}.zoom-meta-panel__sheet.is-initializing{opacity:0!important;clip-path:inset(0 0 0 100% round 0 20px 20px 0)!important;transform:translate(-38px,7px)scaleX(.78)scaleY(.9)!important;box-shadow:0 22px 52px #0000007a!important}.zoom-meta-panel__sheet.is-exiting{clip-path:inset(0 0 0 100% round 0 20px 20px 0);opacity:0;transform:translate(-34px,6px)scaleX(.78)scaleY(.9);box-shadow:0 20px 48px #0000007a;pointer-events:none!important}@media (prefers-reduced-motion:reduce){.zoom-meta-panel__sheet{clip-path:inset(0 round 0 20px 20px 0);transition:left linear,top linear,width linear,height linear,padding linear,clip-path linear,transform linear,opacity .16s,box-shadow linear;transform:translate(0)scaleX(1)scaleY(1)}.zoom-meta-panel__sheet:before{opacity:.2;transition:opacity .16s;transform:translate(0)}.zoom-meta-panel__sheet.is-open,.zoom-meta-panel__sheet.is-open.is-opening,.zoom-meta-panel__sheet.is-initializing,.zoom-meta-panel__sheet.is-exiting{clip-path:inset(0 round 0 20px 20px 0)!important;transform:translate(0)scaleX(1)scaleY(1)!important}}.zoom-meta-panel__header{letter-spacing:.02em;text-transform:uppercase;color:#ffffffd1;margin-bottom:14px;font-size:15px;font-weight:600}.zoom-meta-panel__content{flex-direction:column;flex:1;gap:12px;padding-right:6px;display:flex;overflow-y:auto}.zoom-meta-panel__row{color:#ffffffdb;flex-direction:column;gap:4px;font-size:13px;display:flex}.zoom-meta-panel__label{text-transform:uppercase;letter-spacing:.08em;color:#ffffff80;font-size:11px}.zoom-meta-panel__value{word-break:break-word;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;line-height:1.5;display:flex}.zoom-meta-panel__link{color:#93c5fdf2;overflow-wrap:anywhere;max-width:100%;text-decoration:none}.zoom-meta-panel__copyButton{color:#ffffffe6;cursor:pointer;background:#1c1613b8;border:1px solid #ffffff47;border-radius:6px;padding:4px 10px;font-size:12px;transition:background .18s,color .18s,border-color .18s}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}body{display:flex;flex-direction:column;transition:opacity .5s ease-in-out;opacity:1}body.page-loading{opacity:0}main{flex-grow:1;height:100vh;overflow-y:auto}[data-photostream]{width:100%}.photostream-container{margin:0;min-height:400px;position:relative}.loading-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff9;text-align:center;font-size:.95rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.grid-item{position:absolute;overflow:hidden;background:#0b0b0b;border-radius:10px;transition:opacity .4s cubic-bezier(.25,.1,.25,1);transform-origin:center}.grid-item.is-placeholder{background:#0f0f0f}.image-placeholder{position:absolute;inset:0;background:#0c0c0cd1;opacity:0;transition:opacity .3s ease;pointer-events:none;border-radius:inherit}.image-placeholder.is-hidden{opacity:0}.grid-item.is-placeholder .image-placeholder{opacity:1}.grid-item img{display:block;transition:opacity .36s ease;border-radius:inherit}.directory-panel{position:fixed;bottom:0;left:0;width:100%;display:flex;justify-content:center;align-items:flex-end;z-index:50;pointer-events:none}.control-dock-trigger-zone{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:min(480px,50vw);height:80px;pointer-events:auto;z-index:51}.control-dock-trigger-zone.is-disabled{pointer-events:none}.directory-trigger-area{position:relative;display:flex;align-items:center;justify-content:center;padding:18px;pointer-events:auto;z-index:52}.control-dock{opacity:0;pointer-events:none;transition:opacity .25s ease}.control-dock.is-visible,.control-dock.is-pinned{opacity:1;pointer-events:auto}.directory-action-group{display:inline-flex;align-items:stretch;gap:0;background:#141416eb;border-radius:14px;border:1px solid rgba(95,95,95,.38);padding:6px;box-shadow:0 18px 36px #00000073;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,opacity .25s ease;backdrop-filter:blur(16px);opacity:.94;overflow:hidden;pointer-events:auto;transform:translateY(12px)}.control-dock.is-visible .directory-action-group,.directory-action-group.is-active{transform:translateY(0);box-shadow:0 18px 36px #00000073;opacity:1}.directory-action-group.is-toast-active{box-shadow:none;opacity:.85;transform:translateY(0)}.directory-action-button{position:relative;border:none;background:transparent;color:#f5f5f5;font-size:14px;font-weight:500;padding:10px 18px;border-radius:0;box-sizing:border-box;cursor:pointer;pointer-events:auto;transition:background-color .2s ease,color .2s ease;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.directory-action-button:first-child{border-top-left-radius:12px;border-bottom-left-radius:12px}.directory-action-button:last-child{border-top-right-radius:12px;border-bottom-right-radius:12px}.directory-action-button:not(:first-child){border-left:1px solid rgba(255,255,255,.12)}.directory-action-button:hover,.directory-action-button:focus-visible{background:#ffffff14;outline:none}.directory-action-button:focus-visible{box-shadow:0 0 0 2px #f5f5f573}.directory-action-button--primary{font-weight:500}.directory-action-group.is-active .directory-action-button--primary{background:#ffffff1f}.directory-action-button:disabled{opacity:.55;cursor:not-allowed}.directory-action-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px}.directory-action-icon .directory-icon{width:18px;height:18px}.directory-action-label{line-height:1}.directory-action-feedback{position:absolute;bottom:100%;margin-bottom:14px;background:#101012f2;color:#f5f5f5;padding:8px 12px;border-radius:10px;border:1px solid rgba(90,90,90,.45);box-shadow:0 16px 30px #0006;font-size:13px;white-space:nowrap;opacity:0;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease;pointer-events:none;z-index:1}.directory-action-feedback.is-visible{opacity:1;transform:translateY(0)}.directory-action-feedback[data-variant=error]{border-color:#ef44448c;color:#fecaca}.control-dock.is-toast-active .directory-action-group{box-shadow:none;opacity:.78}.directory-action-button--locale .locale-indicator{opacity:.45;transition:opacity .2s ease}.directory-action-button--locale .locale-indicator.is-active{opacity:1;font-weight:600}.locale-indicator{display:inline-block;min-width:1.4ch;text-align:center}.directory-window{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:300px;max-height:70vh;display:flex;flex-direction:column;border-radius:12px;background:linear-gradient(160deg,#141416f5,#101012eb);color:#f3f4f6;box-shadow:0 16px 48px #0000008c;pointer-events:auto;overflow:hidden;backdrop-filter:blur(16px);border:1px solid rgba(70,70,70,.35)}.directory-window.hidden{display:none}.directory-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px 6px}.directory-mode-toggle{display:inline-flex;gap:6px;background:#5a5a5a33;border-radius:999px;padding:4px}.directory-mode-toggle button{border:none;border-radius:999px;padding:4px 14px;background:transparent;color:inherit;font-size:13px;cursor:pointer;transition:background .2s ease,color .2s ease}.directory-mode-toggle button.is-active{background:#8c8c8c52;color:#f8fafc}.directory-upload-open{border:none;border-radius:999px;padding:6px 18px;background:#94a3b829;color:#f8fafc;font-size:13px;cursor:pointer;transition:background .2s ease,color .2s ease;white-space:nowrap}.directory-upload-open:hover{background:#94a3b84d}.directory-body{padding:10px 0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(110,110,110,.45) transparent}.directory-tree{list-style:none;margin:0;padding:0 0 8px}.directory-node,.directory-load-more,.directory-empty{padding-left:calc(12px + max(0,var(--depth, 1) - 1)*20px)}.directory-row{display:flex;align-items:center;gap:10px;padding:6px 18px 6px 6px;border-radius:12px;transition:background-color .18s ease,color .18s ease}.upload-overlay{position:fixed;inset:0;display:flex;align-items:flex-start;justify-content:center;padding:36px 24px 24px;background:#0c0c108c;backdrop-filter:blur(16px);z-index:90;opacity:0;pointer-events:none;transition:opacity .2s ease}.upload-overlay.hidden{opacity:0;pointer-events:none}.upload-overlay:not(.hidden){opacity:1;pointer-events:auto}.upload-overlay--active{opacity:.35}.upload-modal{width:min(640px,94vw);max-height:82vh;display:flex;flex-direction:column;gap:16px;background:linear-gradient(160deg,#141416f5,#101012eb);border-radius:18px;box-shadow:0 28px 80px #0000008c;padding:18px 24px;border:1px solid rgba(70,70,70,.35);color:#f3f4f6}.upload-overlay.hidden .upload-modal{opacity:0;transform:translateY(18px);pointer-events:none}.upload-modal__header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.upload-modal__headline{display:flex;flex-direction:column;gap:6px}.upload-modal__title{margin:0;font-size:1.15rem;font-weight:600;color:inherit}.upload-modal__info{margin:0;font-size:.85rem;color:#cbd5e1b3}.upload-modal__header-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:nowrap;overflow-x:auto;margin-top:6px;padding-bottom:2px}.upload-modal__action{border:1px solid rgba(255,255,255,.22);border-radius:6px;padding:6px 16px;background:#1c1613b8;color:#ffffffe6;cursor:pointer;font-size:.88rem;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}.upload-modal__action.primary{border-color:#b4c8ff47;background:#221e2ac7}.upload-modal__action.danger{border-color:#c8606052;background:#361616c7}.upload-modal__action:disabled{opacity:.45;cursor:not-allowed}.upload-modal__action:hover:not(:disabled),.upload-modal__action:focus-visible:not(:disabled){background:#120e0ce6;border-color:#ffffff5c;outline:none}.upload-modal__action:focus-visible:not(:disabled){outline:2px solid rgba(255,255,255,.38);outline-offset:2px}.upload-modal__action.primary:hover:not(:disabled),.upload-modal__action.primary:focus-visible:not(:disabled){background:#2a263ae6;border-color:#c4d2ff6b}.upload-modal__action.danger:hover:not(:disabled),.upload-modal__action.danger:focus-visible:not(:disabled){background:#401c1ce6;border-color:#d2787873}.upload-modal__list{margin:0;padding:0 6px 0 0;list-style:none;overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column;gap:12px}.upload-modal__empty{padding:32px 0;font-size:.9rem;color:#d1d5db99;text-align:center}.upload-task{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;column-gap:14px;row-gap:6px;padding:14px 16px;border-radius:14px;background:#2c2e3694;border:1px solid transparent;transition:border-color .2s ease,background .2s ease;align-items:center}.upload-task.is-active{border-color:#9494a066}.upload-task.is-error{border-color:#b0484899}.upload-task.is-complete{background:#32343c70;color:#e2e8f0cc}.upload-task.is-complete .upload-task__path,.upload-task.is-complete .upload-task__status{color:#cbd5e18f}.upload-task__info{display:flex;flex-direction:column;gap:4px;grid-column:1 / 2;grid-row:1 / 2}.upload-task__name{font-size:.95rem;font-weight:500}.upload-task__path{font-size:.75rem;color:#cbd5e1a3}.upload-task__status{font-size:.8rem;color:#d1d5dbd1;grid-column:1 / 2;grid-row:2 / 3}.upload-task__progress{width:100%;height:6px;border-radius:999px;background:#4446529e;overflow:hidden;grid-column:1 / 3;grid-row:3 / 4}.upload-task__progress-bar{width:0;height:100%;background:linear-gradient(90deg,#9499a899,#b2b6c4cc);transition:width .2s ease}.upload-task__actions{display:flex;gap:8px;grid-column:2 / 3;grid-row:1 / 3;align-self:stretch;justify-content:flex-end;align-items:center}.upload-task__btn{border:none;border-radius:6px;padding:4px 8px;background:#767a8842;color:inherit;cursor:pointer;font-size:.75rem;transition:background .2s ease}.upload-task__btn:hover{background:#8a8e9c52}.upload-task__btn.danger{background:#9c3c3c4d}.upload-task__btn.danger:hover{background:#9c3c3c6b}.upload-task__btn.hidden{display:none}.upload-task__btn--copy{border:1px solid rgba(255,255,255,.28);background:#1c1613b8;color:#ffffffe6;padding:4px 10px;font-size:.75rem;transition:background .18s ease,color .18s ease,border-color .18s ease}.upload-task__btn--copy:hover,.upload-task__btn--copy:focus-visible{background:#0c0907e0;border-color:#fff6;outline:none}.upload-task__btn--copy:active{background:#0c0907c7}.upload-task__btn--copy.danger{color:#f87171;border-color:#f8717166}.upload-task__btn--copy.danger:hover,.upload-task__btn--copy.danger:focus-visible{color:#fecaca;border-color:#fca5a580}.upload-task__actions.hidden{display:none}.upload-progress-toast{position:fixed;bottom:24px;right:24px;display:none;flex-direction:column;gap:10px;min-width:260px;max-width:320px;padding:14px 16px;border-radius:14px;background:linear-gradient(160deg,#141416f5,#101012eb);color:#f3f4f6;border:1px solid rgba(70,70,70,.35);box-shadow:0 18px 48px #00000073;cursor:pointer;pointer-events:auto;transition:transform .2s ease,opacity .2s ease;opacity:0;transform:translateY(12px);z-index:95}.upload-progress-toast.is-visible{display:flex;opacity:1;transform:translateY(0)}.upload-progress-toast__label{font-size:.85rem;display:flex;justify-content:space-between;align-items:center;gap:12px}.upload-progress-toast__status{font-size:.78rem;color:#cbd5e1b3}.upload-progress-toast__bar{width:100%;height:6px;border-radius:999px;background:#4446529e;overflow:hidden}.upload-progress-toast__bar-inner{width:0;height:100%;background:linear-gradient(90deg,#9499a899,#b2b6c4cc);transition:width .2s ease}.directory-expand{width:24px;height:24px;border:none;background:#5a5a5a2e;color:#e5e5e5db;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background-color .18s ease,color .18s ease}.directory-expand .directory-icon{width:16px;height:16px}.directory-row:hover{background:#5a5a5a38}.directory-row:hover .directory-expand:not(:disabled){background:#78787847;color:#f5f5f5}.directory-label{flex:1;text-align:left;border:none;background:transparent;color:inherit;font-size:14px;font-weight:500;cursor:pointer;padding:2px 0}.directory-label.is-selected{color:#f4f4f5;font-weight:600}.directory-meta{font-size:12px;color:#d2d2d2a6;min-width:32px;text-align:right}.directory-load-more button{width:100%;margin:0;padding:8px 12px;border:1px solid rgba(90,90,90,.28);background:#3c3c3c99;color:#f1f1f1;cursor:pointer;border-radius:6px;transition:background-color .18s ease,border-color .18s ease}.directory-load-more button:disabled{opacity:.6;cursor:default}.directory-load-more button:not(:disabled):hover{background:#5a5a5a66;border-color:#78787866}.directory-empty{padding:12px 16px;font-size:13px;color:#fff9}.directory-footer{padding:10px 18px 16px;display:flex;justify-content:flex-end}.directory-clear{border:none;border-radius:8px;padding:6px 16px;background:#46464680;color:#f5f5f5;cursor:pointer;font-size:13px;transition:background .2s ease,transform .2s ease}.directory-clear:hover{background:#6e6e6e94;transform:translateY(-1px)}.directory-body::-webkit-scrollbar{width:6px}.directory-body::-webkit-scrollbar-thumb{background-color:#6e6e6e73;border-radius:999px}.directory-body::-webkit-scrollbar-track{background:transparent}.grid-item.image-error{background-color:#0a0a0a}.grid-item.image-error img{display:none!important}@media (hover: hover) and (pointer: fine){.grid-item:hover{z-index:12}}.zoom-meta-panel__triggerZone{position:fixed;display:flex;align-items:flex-start;justify-content:flex-end;pointer-events:auto;z-index:10001;padding:8px 10px 0 0}.zoom-meta-panel__toggle{min-width:0;width:34px;height:34px;border-radius:12px;border:none;background:#16100cbd;color:#ffffffe6;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .22s ease,transform .22s ease,background .2s ease,box-shadow .2s ease;opacity:0;transform:translateY(-6px);pointer-events:none;box-shadow:0 12px 28px #00000047}.zoom-meta-panel__triggerZone:hover .zoom-meta-panel__toggle,.zoom-meta-panel__toggle:focus-visible{opacity:1;transform:translateY(0);pointer-events:auto}.zoom-meta-panel__toggle:hover,.zoom-meta-panel__toggle:focus-visible{background:#0c0806f0;box-shadow:0 16px 34px #00000061;outline:none}.zoom-meta-panel__toggle:active{background:#0c0806db;transform:translateY(1px)}.zoom-meta-panel__triggerZone.is-hidden .zoom-meta-panel__toggle,.zoom-meta-panel__toggle.is-hidden{opacity:0;pointer-events:none;transform:scale(.92) translateY(-5px)}.zoom-meta-panel__toggle.is-instant-hide{transition:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}.zoom-meta-panel__triggerZone.is-instant-hide{transition:none!important;pointer-events:none!important}.zoom-meta-panel__icon{width:18px;height:18px;display:block}.zoom-meta-panel__sheet{position:fixed;display:flex;flex-direction:column;padding:22px 22px 24px;width:320px;max-width:min(360px,calc(100vw - 36px));background:linear-gradient(136deg,#110d0bf0,#130f0ce6 60%,#16120fdb);color:#ffffffeb;border-radius:0 20px 20px 0;box-shadow:0 26px 54px #00000085;z-index:9;opacity:0;pointer-events:none;overflow:hidden;transform-origin:left center;transform:translate3d(-36px,6px,0) scaleX(.82) scaleY(.94);clip-path:inset(0 0 0 100% round 0 20px 20px 0);will-change:left,top,width,height,opacity,clip-path,transform,box-shadow,padding;backface-visibility:hidden;transition:left var(--zoom-panel-duration, .46s) var(--zoom-panel-easing, cubic-bezier(.22, .61, .36, 1)) var(--zoom-panel-delay, 0ms),top var(--zoom-panel-duration, .46s) var(--zoom-panel-easing, cubic-bezier(.22, .61, .36, 1)) var(--zoom-panel-delay, 0ms),width var(--zoom-panel-duration, .46s) var(--zoom-panel-easing, cubic-bezier(.22, .61, .36, 1)) var(--zoom-panel-delay, 0ms),height var(--zoom-panel-duration, .46s) var(--zoom-panel-easing, cubic-bezier(.22, .61, .36, 1)) var(--zoom-panel-delay, 0ms),padding var(--zoom-panel-duration, .46s) var(--zoom-panel-easing, cubic-bezier(.22, .61, .36, 1)) var(--zoom-panel-delay, 0ms),clip-path var(--zoom-panel-duration, .46s) cubic-bezier(.25,.75,.26,1),transform var(--zoom-panel-duration, .46s) cubic-bezier(.25,.75,.26,1),opacity .26s cubic-bezier(.33,0,.26,1),box-shadow var(--zoom-panel-duration, .46s) cubic-bezier(.25,.75,.26,1)}.zoom-meta-panel__sheet:before{content:"";position:absolute;inset:-12% -10% -12% -34%;background:linear-gradient(120deg,rgba(255,255,255,.22),rgba(255,255,255,.08) 45%,transparent 100%);opacity:0;transform:translate3d(-22%,0,0);transition:transform var(--zoom-panel-duration, .46s) cubic-bezier(.25,.75,.26,1),opacity .32s cubic-bezier(.42,0,.58,1);pointer-events:none}.zoom-meta-panel__sheet.is-open{opacity:1;pointer-events:auto;clip-path:inset(0 0 0 0 round 0 20px 20px 0);transform:translateZ(0) scaleX(1) scaleY(1);box-shadow:0 32px 70px #0000008f}.zoom-meta-panel__sheet.is-open:before{opacity:.28;transform:translateZ(0)}.zoom-meta-panel__sheet.is-open.is-opening{transform:translate3d(-6px,0,0) scaleX(1.02) scaleY(1);box-shadow:0 38px 84px #0000009e}.zoom-meta-panel__sheet.is-initializing{opacity:0!important;clip-path:inset(0 0 0 100% round 0 20px 20px 0)!important;transform:translate3d(-38px,7px,0) scaleX(.78) scaleY(.9)!important;box-shadow:0 22px 52px #0000007a!important}.zoom-meta-panel__sheet.is-exiting{pointer-events:none!important;clip-path:inset(0 0 0 100% round 0 20px 20px 0);transform:translate3d(-34px,6px,0) scaleX(.78) scaleY(.9);opacity:0;box-shadow:0 20px 48px #0000007a}@media (prefers-reduced-motion: reduce){.zoom-meta-panel__sheet{transition:left 0ms linear,top 0ms linear,width 0ms linear,height 0ms linear,padding 0ms linear,clip-path 0ms linear,transform 0ms linear,opacity .16s ease,box-shadow 0ms linear;transform:translateZ(0) scaleX(1) scaleY(1);clip-path:inset(0 0 0 0 round 0 20px 20px 0)}.zoom-meta-panel__sheet:before{transition:opacity .16s ease;opacity:.2;transform:translateZ(0)}.zoom-meta-panel__sheet.is-open,.zoom-meta-panel__sheet.is-open.is-opening,.zoom-meta-panel__sheet.is-initializing,.zoom-meta-panel__sheet.is-exiting{transform:translateZ(0) scaleX(1) scaleY(1)!important;clip-path:inset(0 0 0 0 round 0 20px 20px 0)!important}}.zoom-meta-panel__header{font-size:15px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;margin-bottom:14px;color:#ffffffd1}.zoom-meta-panel__content{flex:1;overflow-y:auto;padding-right:6px;display:flex;flex-direction:column;gap:12px}.zoom-meta-panel__row{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#ffffffdb}.zoom-meta-panel__label{text-transform:uppercase;font-size:11px;letter-spacing:.08em;color:#ffffff80}.zoom-meta-panel__value{font-size:13px;line-height:1.5;word-break:break-word;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.zoom-meta-panel__link{color:#93c5fdf2;text-decoration:none;max-width:100%;overflow-wrap:anywhere}.zoom-meta-panel__link:hover,.zoom-meta-panel__link:focus-visible{text-decoration:underline}.zoom-meta-panel__copyButton{border:1px solid rgba(255,255,255,.28);background:#1c1613b8;color:#ffffffe6;border-radius:6px;padding:4px 10px;font-size:12px;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease}.zoom-meta-panel__copyButton:hover,.zoom-meta-panel__copyButton:focus-visible{background:#0c0907e0;border-color:#fff6;outline:none}.zoom-meta-panel__copyButton:active{background:#0c0907c7}.zoom-meta-panel__copyButton[data-state=copied]{color:#4ade80;border-color:#4ade8059}.zoom-meta-panel__copyButton[data-state=failed]{color:#f87171;border-color:#f8717166}
