*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(90deg,#ffdce6 0,#fff);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.album-container{margin:0 auto;max-width:1200px;min-height:100vh;min-height:100dvh;padding:16px}.album-container--locked{align-items:center;display:flex;justify-content:center;max-width:100%;padding:20px}.password-gate{animation:cardEnter .6s cubic-bezier(.16,1,.3,1) both;max-width:440px;width:100%}@keyframes cardEnter{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.password-card{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffd9;border:1px solid #fff9;border-radius:24px;box-shadow:0 4px 6px #00000005,0 12px 24px #0000000f,0 24px 48px #0000000a;padding:48px 40px;text-align:center}.password-logo{margin-bottom:28px}.password-logo img{height:auto;object-fit:contain;width:100px}.password-title{color:#1a1a2e;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin-bottom:8px}.password-subtitle{color:#6b7280;font-size:.95rem;margin-bottom:32px}.password-input-group{border:1.5px solid #00000014;border-radius:14px;box-shadow:0 1px 2px #0000000a,0 2px 8px #0000000f;display:flex;gap:0;overflow:hidden;transition:border-color .2s,box-shadow .2s}.password-input-group:focus-within{border-color:#e8a0b4;box-shadow:0 0 0 3px #e8a0b426,0 2px 8px #0000000f}.password-input-group input{background:#fff;border:none;color:#1a1a2e;flex:1 1;font-size:1rem;letter-spacing:.04em;min-width:0;outline:none;padding:16px 20px}.password-input-group input::placeholder{color:#b0b7c3;letter-spacing:0}.password-submit{align-items:center;background:linear-gradient(135deg,#1a1a2e,#2d2b55);border:none;color:#fff;cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center;transition:background .2s,transform .1s;width:56px}.password-submit:hover:not(:disabled){background:linear-gradient(135deg,#2d2b55,#3d3a6e)}.password-submit:active:not(:disabled){transform:scale(.95)}.password-submit:disabled{cursor:not-allowed;opacity:.6}.btn-spinner{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}.password-error{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#dc2626;font-size:.875rem;margin-top:16px;padding:12px 16px}.album-header{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffffbf;border:1px solid #ffffff80;border-radius:16px;box-shadow:0 2px 12px #0000000f;display:flex;gap:16px;margin-bottom:24px;padding:16px 20px}.album-header-logo{flex-shrink:0;height:48px;object-fit:contain;width:48px}.album-title{color:#1a1a2e;font-size:1.35rem;font-weight:700;letter-spacing:-.01em;margin:0}.album-count{color:#8b8fa3;font-size:.85rem;margin:2px 0 0}.empty-album,.error-message,.loading-spinner{align-items:center;color:#1a1a2e;display:flex;flex-direction:column;justify-content:center;min-height:50vh;text-align:center}.loading-spinner p{color:#6b7280;font-size:1rem;margin-top:20px}.spinner{animation:spin .8s linear infinite;border:3px solid #00000014;border-radius:50%;border-top-color:#1a1a2e;height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.empty-album{color:#8b8fa3;font-size:1rem}.media-grid{grid-gap:12px;animation:gridEnter .4s ease both;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:40px}@keyframes gridEnter{0%{opacity:0}to{opacity:1}}.media-item{aspect-ratio:1;background:#fff;border:1px solid #0000000a;border-radius:12px;box-shadow:0 2px 8px #00000014,0 8px 24px #0000000f;cursor:pointer;overflow:hidden;position:relative;transition:transform .25s ease,box-shadow .25s ease}.media-item:active{box-shadow:0 1px 4px #0000001a,0 4px 12px #0000000f;transform:scale(.97)}.media-item img{display:block;height:100%;object-fit:cover;width:100%}.video-thumbnail{background:#0a0a0a;height:100%;overflow:hidden;position:relative;width:100%}.video-thumbnail video{height:100%;object-fit:cover;opacity:.75;width:100%}.play-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;border-radius:50%;display:flex;height:52px;justify-content:center;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:52px}.play-overlay svg{height:24px;margin-left:2px;width:24px}.media-placeholder{background:#ffdce633;color:#00000026;height:100%;width:100%}.media-modal,.media-placeholder{align-items:center;display:flex;justify-content:center}.media-modal{animation:modalIn .2s ease;background:#000000f2;inset:0;position:fixed;z-index:1000}@keyframes modalIn{0%{opacity:0}to{opacity:1}}.modal-top-bar{align-items:center;background:linear-gradient(180deg,#00000080 0,#0000);display:flex;justify-content:space-between;left:0;padding:12px 16px;position:absolute;right:0;top:0;z-index:1002}.modal-counter{font-feature-settings:"tnum";color:#fffc;font-size:.9rem;font-variant-numeric:tabular-nums;font-weight:500}.modal-close{align-items:center;background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:background .2s;width:40px}.modal-close:hover{background:#fff3}.modal-nav{align-items:center;background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:background .2s;width:44px;z-index:1001}.modal-nav:hover{background:#fff3}.modal-nav--prev{left:12px}.modal-nav--next{right:12px}.modal-content{align-items:center;display:flex;justify-content:center;max-height:85vh;max-width:90vw;position:relative}.modal-media{border-radius:4px;max-height:85vh;max-width:100%;object-fit:contain;user-select:none;-webkit-user-select:none}@media (min-width:600px){.album-container{padding:24px}.media-grid{gap:12px;grid-template-columns:repeat(3,1fr)}.media-item:hover{box-shadow:0 4px 12px #0000001a,0 16px 40px #0000001a;transform:translateY(-4px)}.media-item:active{transform:none}}@media (min-width:960px){.album-container{padding:32px}.media-grid{gap:16px;grid-template-columns:repeat(4,1fr)}.media-item{border-radius:14px}.album-header{margin-bottom:32px}.album-title{font-size:1.5rem}}@media (max-width:400px){.album-container{padding:10px}.album-header{gap:12px;margin-bottom:16px;padding:12px 14px}.album-header-logo{height:40px;width:40px}.album-title{font-size:1.15rem}.media-grid{gap:6px}.media-item{border-radius:8px}.password-card{border-radius:20px;padding:32px 20px}.password-title{font-size:1.35rem}.password-logo img{width:80px}}@media (max-width:768px){.modal-nav{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffff26;bottom:24px;height:52px;top:auto;transform:none;width:52px}.modal-nav--prev{left:calc(50% - 64px)}.modal-nav--next{right:calc(50% - 64px)}.modal-content{max-height:75vh;max-width:100vw;padding:0 4px}.modal-media{border-radius:0;max-height:75vh}.password-card{padding:36px 28px}.password-title{font-size:1.5rem}}.App,.home-page{min-height:100vh}.home-page{align-items:center;display:flex;justify-content:center;padding:20px}.home-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #0000000d;border-radius:20px;box-shadow:0 8px 32px 0 #0000001a;color:#000;padding:40px;text-align:center}.home-content h1{color:#000;font-size:3rem;font-weight:700;margin-bottom:20px}.home-content p{color:#000;font-size:1.2rem;opacity:.8}
/*# sourceMappingURL=main.168c4afc.css.map*/