:root{color-scheme:dark;--font-sans: "DM Sans", system-ui, "Segoe UI", sans-serif;--font-display: "Syne", system-ui, sans-serif;--ink: #f5f2ff;--ink-muted: #b6aad4;--surface: #0a0212;--surface-elevated: #150d24;--surface-elevated-2: #1e1232;--surface-glass: rgba(21, 13, 36, .72);--border: rgba(196, 181, 253, .14);--border-strong: rgba(167, 139, 250, .3);--accent: #a855f7;--accent-hover: #c084fc;--accent-muted: #7c3aed;--accent-soft: rgba(168, 85, 247, .14);--accent-glow: rgba(168, 85, 247, .4);--violet-deep: #2e1065;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5);--shadow-md: 0 20px 50px -16px rgba(0, 0, 0, .6), 0 0 0 1px rgba(139, 92, 246, .05);--shadow-glow: 0 0 60px -12px rgba(139, 92, 246, .3);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--container: min(1180px, calc(100% - 2rem) );--pad-x: clamp(1.25rem, 4vw, 2.5rem);--max-read: 38rem;--safe-top: env(safe-area-inset-top);--safe-right: env(safe-area-inset-right);--safe-bottom: env(safe-area-inset-bottom);--safe-left: env(safe-area-inset-left);--page-bg-layers: radial-gradient(ellipse 80% 50% at 50% -20%, rgba(139, 92, 246, .24), transparent), radial-gradient(ellipse 60% 40% at 80% 60%, rgba(168, 85, 247, .14), transparent), radial-gradient(ellipse 50% 50% at 20% 80%, rgba(124, 58, 237, .12), transparent), var(--surface);--text: var(--ink);--muted-text: var(--ink-muted);--primary: var(--accent);--primary-2: var(--accent-muted);--surface-border: var(--border);--bg: var(--surface);--bg-alt: var(--surface-elevated);--overlay: rgba(10, 2, 18, .88);--ring: 0 0 0 3px rgba(168, 85, 247, .22);--glow: var(--shadow-md), var(--shadow-glow);--error: #e879f9;--bg-gradient-1: radial-gradient(ellipse 80% 50% at 50% -20%, rgba(139, 92, 246, .24), transparent);--bg-gradient-2: radial-gradient(ellipse 60% 40% at 80% 60%, rgba(168, 85, 247, .14), transparent);--bg-gradient-base: linear-gradient(180deg, var(--surface) 0%, var(--surface-elevated) 100%);font-family:var(--font-sans);font-size:17px;line-height:1.6;letter-spacing:.01em;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--ink-muted);background:var(--page-bg-layers)}@media(max-width:768px){:root{font-size:15.5px}}h1,h2,h3{font-family:var(--font-display);font-weight:700;color:var(--ink);letter-spacing:-.03em;line-height:1.1}h1{font-size:clamp(1.75rem,4vw,2.75rem);line-height:1.1}a{font-weight:500;color:var(--accent);text-decoration:inherit;transition:color .2s ease}a:hover{color:var(--accent-hover)}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;color:var(--ink-muted);background:var(--page-bg-layers);padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);position:relative}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.038;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}#root{position:relative;z-index:1}button{border-radius:999px;border:1px solid var(--border-strong);padding:.65rem 1.35rem;font-size:.95rem;font-weight:600;font-family:inherit;background:transparent;color:var(--ink);cursor:pointer;transition:border-color .25s ease,box-shadow .25s ease,transform .25s var(--ease-out),background .25s ease}button:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-2px)}button:active{transform:scale(.97)}button:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.hover-ring:hover{box-shadow:var(--ring)}.glow{box-shadow:0 0 32px -6px var(--accent-glow),0 2px 8px #0000004d}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}.fade-in{animation:fadeIn .3s var(--ease-out) both}.slide-up{animation:slideUp .35s var(--ease-out) both}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}#root{max-width:var(--container);margin:0 auto;padding:var(--pad-x)}@media(max-width:640px){#root{padding:16px;max-width:100%}}.header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-bottom:16px}.title{margin:0;text-align:center}.clickable-title{cursor:pointer;transition:color .2s ease,opacity .2s ease;-webkit-user-select:none;user-select:none}.clickable-title:hover{color:var(--accent-hover);opacity:1}.clickable-title:active{opacity:.6}.text-error{color:var(--error)}.back-btn{justify-self:start;background:var(--surface-elevated);border:1px solid var(--border);border-radius:999px;padding:8px 14px;color:var(--ink);cursor:pointer;transition:border-color .3s ease,box-shadow .3s ease,transform .3s var(--ease-out),background .3s ease}.back-btn:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateY(-2px);background:var(--surface-elevated-2)}.folders{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}@media(min-width:1024px){.folders{grid-template-columns:repeat(6,minmax(0,1fr))}}.folder-card{display:grid;grid-template-rows:1fr auto auto;place-items:center;padding:16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-elevated);color:var(--ink);cursor:pointer;transition:box-shadow .3s ease,transform .3s var(--ease-out),border-color .3s ease;min-height:140px}.folder-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateY(-3px)}.folder-card:active{transform:scale(.98)}.folder-icon{font-size:48px}.folder-title{font-weight:600;margin-top:8px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;font-family:var(--font-display);color:var(--ink)}.folder-meta{color:var(--ink-muted);font-size:.72rem;font-weight:600;letter-spacing:.06em}@media(max-width:640px){.folder-icon{font-size:40px}.folder-card{padding:12px;min-height:120px}}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media(max-width:480px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.gallery-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}}.thumb{width:100%;height:160px;object-fit:cover;border-radius:var(--radius-lg);border:1px solid var(--border);transition:transform .5s ease}@media(max-width:640px){.thumb{height:140px;border-radius:var(--radius-md)}}@media(min-width:1024px){.thumb{height:240px}}.gallery-grid>img.thumb:hover{transform:scale(1.04);box-shadow:var(--shadow-md),var(--shadow-glow)}.thumb-wrap{position:relative;overflow:hidden;border-radius:var(--radius-lg);border:1px solid var(--border);cursor:pointer;width:100%;height:160px;background:var(--surface-elevated);transition:border-color .3s ease,box-shadow .3s ease,transform .3s var(--ease-out)}@media(max-width:640px){.thumb-wrap{height:140px;border-radius:var(--radius-md)}}@media(min-width:1024px){.thumb-wrap{height:240px}}.thumb-wrap .thumb{display:block;width:100%;height:100%;object-fit:cover;border:none;border-radius:inherit}.thumb-wrap:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md),var(--shadow-glow)}.thumb-wrap:hover .thumb{transform:scale(1.06)}.thumb-play-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:48px;color:var(--ink);text-shadow:0 2px 16px rgba(10,2,18,.9),0 0 40px var(--accent-glow)}.list-fade-in>*{animation:fadeIn .3s ease both}.list-slide-up>*{animation:slideUp .35s ease both}.list-stagger>*{animation-delay:calc(var(--i, 0) * 40ms)}.lightbox-overlay{position:fixed;inset:0;background:var(--overlay);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);display:grid;place-items:center;z-index:50}.lightbox-content{position:relative;max-width:100vw;max-height:96vh}.lightbox-image,.lightbox-video{max-width:100vw;max-height:80vh;border-radius:var(--radius-lg);border:1px solid var(--border-strong);box-shadow:var(--shadow-md),0 0 80px -24px var(--accent-glow);object-fit:contain}.lightbox-video{display:block}.lightbox-close{position:absolute;top:-8px;right:-8px;width:40px;height:40px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-glass);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1;padding:0;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.lightbox-close:hover{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 32px -6px var(--accent-glow)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:56px;border:1px solid var(--border);background:var(--surface-glass);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);color:var(--ink);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:28px;line-height:1;padding:0;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.lightbox-nav:hover{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 32px -6px var(--accent-glow);transform:translateY(-50%) translateY(-2px)}.lightbox-nav.prev{left:-48px}.lightbox-nav.next{right:-48px}.lightbox-counter{position:absolute;bottom:-28px;left:50%;transform:translate(-50%);color:#b6aad4b8;font-size:.72rem;font-weight:600;letter-spacing:.08em}@media(max-width:640px){.lightbox-nav.prev{left:1px}.lightbox-nav.next{right:1px}.lightbox-counter{bottom:-20px;font-size:12px}}.password-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--pad-x);background:var(--page-bg-layers);position:relative;overflow:hidden}.password-gate:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(139,92,246,.18),transparent),radial-gradient(ellipse 60% 40% at 100% 100%,rgba(168,85,247,.1),transparent);pointer-events:none}.password-gate__form{display:flex;flex-direction:column;gap:1.25rem;padding:2.5rem;width:100%;max-width:380px;background:var(--surface-glass);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border:none;border-radius:var(--radius-xl);box-shadow:var(--shadow-md),0 24px 48px #00000059;animation:passwordGateFadeIn .55s var(--ease-out)}@keyframes passwordGateFadeIn{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.password-gate__title{margin:0;font-family:var(--font-display);font-size:clamp(1.25rem,3vw,1.5rem);font-weight:700;letter-spacing:-.03em;color:var(--ink);text-align:center;line-height:1.1}.password-gate__input{padding:.875rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-elevated-2);color:var(--ink);font-size:1rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.password-gate__input::placeholder{color:#b6aad48c}.password-gate__input:hover{border-color:var(--border-strong)}.password-gate__input:focus{outline:none;border-color:var(--border-strong);box-shadow:var(--ring)}.password-gate__error{margin:0;padding:.5rem 0;font-size:.875rem;color:var(--error);animation:passwordGateShake .3s ease}@keyframes passwordGateShake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.password-gate__btn{padding:.7rem 1.5rem;min-height:50px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-muted) 100%);color:var(--surface);border:none;border-radius:999px;font-size:.95rem;font-weight:600;font-family:inherit;cursor:pointer;box-shadow:0 0 32px -6px var(--accent-glow),0 2px 8px #0000004d;transition:background .25s ease,box-shadow .25s ease,transform .25s var(--ease-out),opacity .25s ease}.password-gate__btn:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-hover) 0%,var(--accent) 100%);box-shadow:0 0 48px -4px var(--accent-glow),0 4px 16px #0000004d;transform:translateY(-2px)}.password-gate__btn:active:not(:disabled){transform:scale(.97)}.password-gate__btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.uploads-page{max-width:var(--max-read)}.uploads-form{margin-top:24px;display:flex;flex-direction:column;gap:1.25rem}.uploads-field{display:flex;flex-direction:column;gap:.5rem}.uploads-field label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}.uploads-field input{padding:.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-elevated);color:var(--ink);font-size:1rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.uploads-field input::placeholder{color:#b6aad48c}.uploads-field input:focus{outline:none;border-color:var(--border-strong);box-shadow:var(--ring)}.uploads-error{margin:0;color:var(--error);font-size:.875rem}.uploads-success{margin:0;color:var(--accent-hover);font-size:.875rem}.uploads-btn{margin-top:.5rem;padding:.7rem 1.5rem;min-height:50px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-muted) 100%);color:var(--surface);border:none;border-radius:999px;font-size:.95rem;font-weight:600;cursor:pointer;box-shadow:0 0 32px -6px var(--accent-glow),0 2px 8px #0000004d;transition:background .25s ease,box-shadow .25s ease,transform .25s var(--ease-out),opacity .25s ease}.uploads-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-hover) 0%,var(--accent) 100%);box-shadow:0 0 48px -4px var(--accent-glow),0 4px 16px #0000004d;transform:translateY(-2px)}.uploads-btn:active:not(:disabled){transform:scale(.97)}.uploads-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}
