@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&display=swap";:root{font-family:DM Sans,sans-serif;color:#26282c;background:#fff;font-synthesis:none;--accent: #bd292e;--accent-hover: #9f1f25;--accent-soft: #f9e9e9;--muted: #6b7078;--line: #e9eaed;--surface: #f7f8fa;--radius: 10px;--shadow: 0 16px 56px #18203022;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}input:focus,textarea:focus,select:focus{outline:2px solid #bd292e50;border-color:var(--accent)}::selection{background:#f1c6c8;color:#652025}input,textarea{caret-color:var(--accent)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#d6d8de;border:2px solid white;border-radius:8px}h1,h2,h3,p{margin:0}h1{font-size:30px;font-weight:600;letter-spacing:-.035em;line-height:1.2}h2{font-size:19px;font-weight:600;letter-spacing:-.025em}h3{font-size:15px;font-weight:600}p{line-height:1.65}svg{flex-shrink:0}input:not([type=checkbox]),textarea,select{width:100%;background:#fff;border:1px solid #dcdfe4;border-radius:8px;padding:11px 12px;min-width:0;color:inherit}textarea{resize:vertical}label{display:block;font-weight:500;font-size:13px;margin:18px 0}label input,label textarea,label select{display:block;margin-top:8px}input[type=checkbox]{accent-color:var(--accent);width:17px;height:17px}form>label:first-child{margin-top:0}.optional{font-size:12px;font-weight:400;color:var(--muted);margin-left:4px}.button{min-height:40px;border:0;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:8px;font-size:13px;font-weight:550;padding:10px 16px;white-space:nowrap;transition:background .15s,color .15s}.button.primary{background:var(--accent);color:#fff}.button.primary:hover{background:var(--accent-hover)}.button.secondary{background:#fff;box-shadow:inset 0 0 0 1px #dde0e6}.button.secondary:hover{background:#f3f4f6}.button.danger{background:#b9232b;color:#fff}.button.selected{background:var(--accent-soft);color:var(--accent)}.full{width:100%}.icon-button{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;border-radius:8px;position:relative;flex-shrink:0}.icon-button:hover{background:#e9ebef}.text-button{background:none;border:0;display:inline-flex;gap:6px;align-items:center;font-size:13px;color:var(--accent);font-weight:550;padding:8px 0}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand img{width:42px;height:37px;object-fit:contain;background:var(--accent);padding:5px;border-radius:7px}.brand>span{font-size:25px;letter-spacing:-1px;font-weight:600}.brand-dot{color:var(--accent)}.private-label{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);white-space:nowrap}.avatar{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:0;background:#e9d8d4;color:#79433d;font-weight:600;border-radius:50%;flex-shrink:0}.avatar.large{width:48px;height:48px;font-size:20px}.muted{color:var(--muted)}.small{font-size:12px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.toast{position:fixed;z-index:200;bottom:28px;left:50%;transform:translate(-50%);padding:10px 12px 10px 16px;background:#292d32;color:#fff;display:flex;align-items:center;gap:10px;border-radius:10px;box-shadow:var(--shadow);max-width:min(94vw,600px);font-size:13px}.toast>.icon-button:hover{background:#fff2}.error-box{display:flex;align-items:flex-start;gap:9px;padding:12px 14px;background:#fff0f0;color:#9c222b;border-radius:8px;font-size:13px;margin:12px 0}.error-box>span{flex:1}.error-box .text-button{padding:0}.app-shell{display:flex;min-height:100vh}.sidebar{width:236px;position:fixed;inset:0 auto 0 0;background:#f7f8fa;display:flex;flex-direction:column;padding:25px 16px 14px;z-index:20}.sidebar-brand{padding:0 14px;margin-bottom:33px}.upload-button{background:#fff;box-shadow:0 3px 10px #24313c0b;min-height:46px;border:1px solid #e4e6eb;margin:0 12px 28px;justify-content:flex-start;gap:12px;font-size:14px;font-weight:550}.upload-button svg{color:var(--accent)}.upload-button:hover{background:#f0f1f5}.main-nav{display:flex;flex-direction:column;gap:5px}.nav-item{display:flex;gap:14px;align-items:center;min-height:43px;padding:10px 17px;color:#626873;border-radius:8px;font-weight:450;font-size:13px}.nav-item:hover{background:#eceef2;color:#30343a}.nav-item.active{background:#f3e4e4;color:#af292d;font-weight:600}.nav-count{margin-left:auto;font-size:11px;font-weight:500}.nav-divider{height:1px;background:#e5e7eb;margin:20px 17px}.sidebar-bottom{margin-top:auto;padding:24px 14px 0}.storage-label{display:flex;gap:10px;align-items:center;font-size:12px;color:#565e68}.sidebar-bottom>strong{font-size:12px;display:block;margin:12px 0 5px;font-weight:600}.sidebar-bottom>strong>span{font-weight:400;color:var(--muted)}.storage-link{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--muted);margin-top:10px}.storage-link:hover{color:var(--accent)}.sidebar-rule{height:1px;background:var(--line);margin:24px 0 18px}.account-button{display:flex;align-items:center;width:100%;border:0;gap:10px;background:none;text-align:left;padding:0}.account-button>span:nth-child(2){flex:1}.account-button strong{display:block;font-size:12px;font-weight:600}.account-button small{font-size:10px;color:var(--muted);display:block;margin-top:3px}.account-button>svg{color:var(--muted)}.main{margin-left:236px;flex:1;min-width:0}.topbar{height:89px;padding:0 40px;display:flex;align-items:center;gap:20px;border-bottom:1px solid #f0f1f4}.searchbox{display:flex;align-items:center;gap:11px;max-width:650px;background:#f4f5f7;border-radius:9px;padding:0 15px;width:100%;height:43px;color:#848b95}.searchbox>input{border:0;background:transparent;font-size:13px;outline:0;padding:10px 0;box-shadow:none}.searchbox>input:focus{outline:0}.searchbox:focus-within{outline:2px solid #bd292e55}.topbar-right{margin-left:auto;display:flex;gap:22px;align-items:center}.notification-dot{position:absolute;top:4px;right:4px;width:7px;height:7px;background:var(--accent);border-radius:50%}.content{padding:40px 40px 0;min-height:calc(100vh - 89px);display:flex;flex-direction:column}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:35px}.page-heading p{color:var(--muted);font-size:13px;margin-top:9px}.heading-actions{display:flex;gap:10px;align-items:center}.back-link{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;margin-bottom:12px}.back-link:hover{color:var(--accent)}.section-row{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px;font-size:12px;color:var(--muted)}.section-row h2{font-size:15px;color:#363c44;letter-spacing:-.01em}.dot-separator{margin:0 8px;color:#a0a5ae}.content-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;color:#727b87;padding:35px 0 24px;font-size:10px}.content-footer>span:first-child{display:flex;align-items:center;gap:6px}.footer-version{color:#a1a7ae;margin-left:7px}.welcome-empty{border:1px solid #e8e9ed;border-radius:14px;overflow:hidden;margin-top:3px}.empty-topline{padding:19px 24px;display:flex;align-items:center;justify-content:space-between;color:#7f8792;font-size:11px;border-bottom:1px solid #eff0f3}.empty-topline>span:first-child{display:flex;gap:6px;align-items:center;color:#58616e}.welcome-center{text-align:center;padding:53px 20px 40px}.photo-stack{position:relative;width:110px;height:101px;margin:0 auto 28px}.photo-stack>div{position:absolute;inset:8px 14px;background:#eef0f3;border:1px solid #e1e4e9;border-radius:10px;transform:rotate(-15deg)}.photo-stack>div:nth-child(2){transform:rotate(13deg);background:#f4e9e6}.photo-stack>div:nth-child(3){transform:rotate(-1deg);background:#fff;display:flex;align-items:center;justify-content:center;color:#ae6f64;box-shadow:0 4px 12px #3a2e2310}.welcome-center h2{font-size:25px;font-weight:550;letter-spacing:-.03em}.welcome-center p{font-size:13px;line-height:1.8;color:#67717f;margin:13px 0 25px}.welcome-center>.button{min-height:43px}.drag-hint{display:block;margin-top:12px;font-size:10px;color:#737d8b}.welcome-features{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:28px 40px;border-top:1px solid #eff0f3;background:#fcfcfd}.welcome-features>div>svg{color:#8e96a1;margin-bottom:12px}.welcome-features strong{font-size:12px;font-weight:550;display:block;margin-bottom:5px}.welcome-features p{color:#6a7584;font-size:11px;line-height:1.7;max-width:26ch}.connection-link{display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-top:1px solid #eff0f3;background:#fff;width:100%;font-size:11px;color:#8b5960;padding:15px 16px}.connection-link:hover{background:#fbf6f6}.empty-state{text-align:center;padding:85px 20px 100px;margin:auto 0}.empty-icon{display:flex;width:76px;height:76px;align-items:center;justify-content:center;margin:0 auto 25px;border-radius:18px;background:#f3f4f7;color:#88929f}.empty-state h2{font-size:23px;font-weight:550;margin-bottom:12px}.empty-state p{font-size:13px;color:var(--muted);max-width:48ch;margin:0 auto 25px;line-height:1.8}.filter-bar{display:flex;gap:20px;align-items:center;padding:15px 20px;background:var(--surface);border-radius:8px;margin-bottom:25px}.filter-bar label{margin:0;font-size:11px;max-width:210px}.filter-bar input{margin-top:5px}.selection-bar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:12px;background:#f8eaea;color:var(--accent);border-radius:8px;padding:9px 12px;margin-bottom:20px;flex-wrap:wrap;font-size:13px}.selection-actions{margin-left:auto;display:flex;gap:8px}.day-group{margin-bottom:28px}.day-group>h2{font-size:13px;letter-spacing:0;color:#58616d;font-weight:550;margin:0 0 13px}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:5px}.compact .photo-grid{grid-template-columns:repeat(auto-fill,minmax(135px,1fr))}.photo-tile{position:relative;aspect-ratio:1.2;background:#eef0f3;overflow:hidden;border-radius:4px;transition:background .15s}.photo-open{width:100%;height:100%;border:0;padding:0;background:none;display:block;overflow:hidden}.photo-open img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.photo-tile:hover .photo-open img{transform:scale(1.025)}.photo-tile.is-selected{background:#dfe6f4;outline:2px solid var(--accent);outline-offset:-2px}.photo-tile.is-selected .photo-open{padding:7px}.photo-select{position:absolute;top:10px;left:10px;width:23px;height:23px;border:2px solid #ffffffdd;border-radius:50%;background:#0003;color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;box-shadow:0 1px 4px #0003}.photo-tile:hover .photo-select,.photo-select:focus-visible,.is-selected .photo-select{opacity:1}.is-selected .photo-select{background:var(--accent);border-color:#fff}.photo-star{position:absolute;bottom:9px;right:10px;color:#fff;filter:drop-shadow(0 1px 2px #0005)}.video-badge{position:absolute;bottom:9px;left:10px;display:flex;align-items:center;gap:5px;color:#fff;font-size:11px;filter:drop-shadow(0 1px 2px #000)}.album-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:30px 22px}.album-cover{aspect-ratio:1.35;background:#f1f3f6;border-radius:10px;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center;color:#a8b0ba}.album-cover img{width:100%;height:100%;object-fit:cover}.folder-cover{background:#f3ede7;color:#b4a48d}.album-card:hover .album-cover{outline:2px solid #d6d9df;outline-offset:3px}.album-card h3{font-size:14px;margin-top:12px;font-weight:550}.album-card p{font-size:11px;color:var(--muted);margin-top:4px}.album-type{position:absolute;right:10px;bottom:10px;background:#fff9;border-radius:5px;display:flex;padding:5px;color:#5a6470}.load-more{display:flex;margin:25px auto}.skeleton-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.skeleton-grid>div{aspect-ratio:1.2;background:#f2f3f5;border-radius:5px;animation:pulse 1.5s infinite}@keyframes pulse{50%{opacity:.4}}.modal{width:min(480px,calc(100vw - 32px));border:0;border-radius:16px;padding:26px;box-shadow:var(--shadow);max-height:88vh;overflow:auto;color:#292e36}.modal.wide{width:min(620px,calc(100vw - 32px))}.modal::backdrop{background:#20283366;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal>header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.modal>header h2{font-size:19px}.modal>header>.icon-button{margin-right:-6px}.modal-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;margin-top:25px}.dialog-copy{font-size:13px;color:var(--muted);margin-bottom:20px}.segmented{display:flex;padding:4px;border-radius:9px;background:var(--surface);gap:5px;margin-bottom:24px}.segmented>button{flex:1;display:flex;align-items:center;justify-content:center;border:0;background:none;padding:10px;gap:7px;border-radius:6px;font-size:13px;color:var(--muted)}.segmented>.active{background:#fff;box-shadow:0 2px 5px #17243c0c;color:var(--accent)}.album-picker{max-height:50vh;overflow:auto;margin-bottom:20px}.album-picker>button{display:flex;gap:12px;align-items:center;width:100%;border:0;background:none;padding:15px 10px;border-radius:7px;text-align:left;color:#68717d}.album-picker>button:hover{background:var(--surface)}.album-picker>button>span{flex:1;color:#30353b}.album-picker small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.album-picker>p{color:var(--muted);font-size:13px;padding:20px 0}.check-label{display:flex;align-items:flex-start;gap:10px;font-weight:450}.check-label>input{margin:2px 0 0}.check-label small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.share-success{text-align:center;padding:10px 4px 24px}.share-success>svg{color:#517c64;margin-bottom:15px}.share-success h3{font-size:20px;margin-bottom:12px}.share-success p{font-size:13px;color:var(--muted)}.copy-field{display:flex;gap:8px;margin-bottom:15px}.copy-field>input{font-size:12px;background:var(--surface)}.share-list{border-top:1px solid var(--line)}.share-row{display:flex;align-items:center;gap:15px;padding:22px 0;border-bottom:1px solid var(--line)}.share-icon{width:43px;height:43px;border-radius:10px;background:var(--surface);display:flex;align-items:center;justify-content:center;color:#7b8794}.share-info{flex:1;min-width:0}.share-info>strong{font-weight:550;font-size:13px}.share-info>p{font-size:11px;color:var(--muted);margin-top:6px}.status{padding:5px 9px;display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:550;border-radius:5px;background:#eaf2ed;color:#3d6f52;white-space:nowrap}.status.inactive{color:#7a808b;background:#f0f1f4}.info-strip{display:flex;gap:11px;align-items:flex-start;background:var(--surface);padding:16px 18px;margin-top:26px;border-radius:9px;color:#707985;font-size:12px}.info-strip p{flex:1;line-height:1.7}.info-strip a{text-decoration:underline;text-underline-offset:3px;color:var(--accent)}.settings-layout{max-width:850px}.settings-section{padding:28px 0;border-bottom:1px solid var(--line)}.settings-section:first-of-type{padding-top:0}.settings-section-heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:25px}.settings-section-heading>svg{color:#7e8998;margin-top:3px}.settings-section-heading>div{flex:1}.settings-section-heading h2{font-size:17px;letter-spacing:-.02em}.settings-section-heading p{font-size:12px;color:var(--muted);margin-top:5px}.profile-row{display:flex;gap:14px;align-items:center;margin-bottom:20px}.profile-row>div{flex:1}.profile-row strong{font-size:13px}.profile-row p{color:var(--muted);font-size:12px;margin-top:3px}.settings-details{border-top:1px solid var(--line);margin:20px 0}.settings-details>summary{padding:17px 0;list-style:none;display:flex;gap:12px;align-items:center;cursor:pointer;font-size:13px}.settings-details>form{max-width:430px;margin-bottom:22px}.storage-explainer{display:flex;gap:12px;align-items:flex-start;font-size:12px;color:#737d88;line-height:1.7;margin-bottom:23px}.storage-explainer svg{color:#869392}.callback-note{background:var(--surface);border-radius:8px;padding:15px 18px;margin:18px 0 25px;font-size:12px}.callback-note>strong{display:block;font-size:11px;font-weight:500}.callback-note code{display:block;font-size:11px;margin:10px 0;overflow-wrap:anywhere;color:#5d6672}.callback-note span{color:#89919b;font-size:11px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid>label{margin-top:0}.settings-connect{display:flex;gap:15px;align-items:center;margin-top:24px}.settings-connect>span{font-size:11px;color:var(--muted)}.connected-account{display:flex;gap:8px;align-items:center;font-size:13px;color:#55755f}.settings-section>.muted{margin-top:13px}.people-list>div{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #f2f3f5}.people-list>div>span:nth-child(2){flex:1}.people-list strong{font-size:12px;font-weight:550;display:block}.people-list small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.about-section{border-bottom:0}.about-section .brand>span{font-size:19px}.about-section .brand img{width:32px;height:28px}.about-section>p{font-size:12px;color:var(--muted);line-height:1.8;max-width:70ch;margin:16px 0 10px}.upload-summary{display:flex;gap:15px;align-items:center;justify-content:space-between;color:#7c8794;margin-bottom:24px}.upload-summary strong{font-size:15px;color:#353e48;font-weight:550}.upload-summary p{font-size:12px;margin-top:5px}.upload-list{max-height:45vh;overflow:auto}.upload-item{display:flex;gap:12px;padding:16px 0;align-items:center;border-bottom:1px solid var(--line)}.upload-file-icon{width:39px;height:39px;background:var(--surface);border-radius:7px;display:flex;align-items:center;justify-content:center;color:#8994a0}.upload-item>div:nth-child(2){flex:1;min-width:0}.upload-item strong{font-size:12px;font-weight:500;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:420px}.upload-item small{font-size:10px;color:var(--muted);display:block;margin-top:5px;line-height:1.6}.upload-item progress{display:block;width:100%;height:4px;accent-color:var(--accent);margin-top:10px}.success{color:#4b8365}.upload-notes{font-size:10px;color:#89919c;margin-top:20px}.upload-actions{flex-wrap:wrap}.viewer{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;background:#101113;color:#eee;border:0;overflow:hidden}.viewer::backdrop{background:#101113}.viewer-toolbar{height:76px;display:flex;justify-content:space-between;align-items:center;padding:0 24px;background:#141518;gap:20px}.viewer-toolbar>div{display:flex;align-items:center;gap:12px;min-width:0}.viewer-toolbar>div:first-child{flex:1}.viewer-toolbar>div>span{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewer-toolbar small{display:block;color:#8b909a;font-size:10px;margin-top:4px}.viewer .icon-button{color:#ced2d8}.viewer .icon-button:hover,.viewer .icon-button.selected{background:#ffffff18}.viewer .favorited{color:#e7b857}.viewer-body{height:calc(100dvh - 76px);display:flex}.viewer-stage{flex:1;position:relative;display:flex;align-items:center;justify-content:center;min-width:0;padding:15px 60px;overflow:hidden}.viewer-stage>img,.viewer-stage>video{max-width:100%;max-height:100%;object-fit:contain}.viewer-stage.zoomed{overflow:auto;display:block}.viewer-stage.zoomed>img{max-width:none;max-height:none;cursor:zoom-out}.viewer-prev,.viewer-next{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:48px;display:flex;align-items:center;justify-content:center;background:#202226bb;color:#fff;border:0;border-radius:8px;z-index:2}.viewer-prev{left:12px}.viewer-next{right:12px}.photo-info{width:330px;background:#202125;padding:24px;overflow:auto;flex-shrink:0}.photo-info>.section-row{color:#bfc5ce}.photo-info h2{color:#fff}.photo-info>h3{font-size:15px;line-height:1.6;overflow-wrap:anywhere}.photo-info .photo-caption{font-size:12px;color:#b4bbc5;margin:13px 0;white-space:pre-wrap}.photo-info .text-button{color:#e6a7ac;margin-top:10px}.photo-info dl{margin:25px 0}.photo-info dt{font-size:10px;color:#949ca7;margin-top:25px}.photo-info dd{margin:7px 0 0;font-size:12px;color:#e0e3e8;overflow-wrap:anywhere}.photo-info dd small{display:block;color:#8f97a4;font-size:11px;margin-top:6px}.photo-info input,.photo-info textarea{background:#2b2d33;border-color:#454853;color:#fff}.photo-info .button.secondary{background:#363a43;color:#d4d9e2;box-shadow:none;font-size:11px}.viewer-info-actions{display:flex;gap:12px;flex-direction:column;margin-top:30px}.viewer-confirm{position:absolute;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:5;padding:20px}.viewer-confirm>div{background:#fff;color:#333;border-radius:14px;padding:28px;max-width:440px}.viewer-confirm h2{font-size:20px;margin-bottom:15px}.viewer-confirm p{font-size:13px;color:var(--muted)}.shared-page{max-width:1400px;margin:auto;padding:0 40px;min-height:100vh;display:flex;flex-direction:column}.shared-page>header{height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.shared-page>main{padding:50px 0}.shared-heading{margin-bottom:40px}.shared-heading p{font-size:13px;color:var(--muted);margin-top:12px}.shared-page>footer{margin-top:auto;padding:30px 0;display:flex;gap:7px;align-items:center;justify-content:center;color:#959ca7;font-size:11px}.share-locked{max-width:350px;margin:80px auto;text-align:center;width:100%}.share-locked h1{font-size:27px}.share-locked>p{margin:13px 0 30px;font-size:13px;color:var(--muted)}.share-locked form{text-align:left}.share-locked form label{margin-bottom:20px}.login-layout{min-height:100dvh;display:flex;flex-direction:column;background:#fcfcfd}.login-top{padding:30px 55px;display:flex;align-items:center;justify-content:space-between}.login-main{flex:1;display:grid;grid-template-columns:1fr 1fr;max-width:1080px;width:100%;align-items:center;margin:auto;gap:100px;padding:50px 40px 80px}.login-copy{padding:0 20px}.login-symbol{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#f4e9e7;color:#a65e59;border-radius:16px;margin-bottom:32px}.login-copy h1{font-size:55px;line-height:1.08;letter-spacing:-.04em;font-weight:500}.login-copy>p{font-size:16px;color:#8a8f97;margin-top:24px;line-height:1.8}.login-note{display:flex;gap:8px;align-items:center;margin-top:50px;color:#899490;font-size:12px}.login-form{background:#fff;border:1px solid #e7e9ee;border-radius:16px;padding:37px 35px}.login-form h2{font-size:23px;font-weight:550;margin-bottom:8px}.login-form>p{color:var(--muted);font-size:13px;margin-bottom:30px}.login-form label{margin-bottom:22px}.password-field{position:relative}.password-field>input{padding-right:42px}.password-field>.icon-button{position:absolute;right:3px;top:3px;color:#89929f}.login-form>.button{margin-top:3px}.login-form>.login-help{font-size:10px;line-height:1.8;color:#717b89;margin:25px 0 0;text-align:center}.login-footer{display:flex;justify-content:space-between;padding:25px 55px;font-size:11px;color:#949ba7}.login-footer>span{letter-spacing:2px;font-size:9px}.loading-app{height:100vh;display:flex;align-items:center;justify-content:center;gap:35px}.mobile-only,.mobile-bottom{display:none}@media(min-width:1600px){.content{padding:45px 60px 0}.topbar{padding:0 60px}.welcome-center{padding:70px 20px 55px}.welcome-features{padding:36px 55px}.welcome-center h2{font-size:29px}}@media(max-width:1100px){.sidebar{width:205px;padding-left:10px;padding-right:10px}.main{margin-left:205px}.topbar{padding:0 25px;gap:15px}.content{padding:30px 25px 0}.topbar-right{gap:12px}.topbar-right>.private-label{display:none}.page-heading{gap:15px}.welcome-features{gap:24px;padding:24px}.welcome-center{padding:45px 15px 35px}.welcome-center h2{font-size:23px}.login-main{gap:40px}.login-copy h1{font-size:46px}.photo-info{width:290px}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}@media(max-width:760px){h1{font-size:26px}.sidebar{transform:translate(-100%);transition:transform .2s;width:250px;z-index:50}.nav-open .sidebar{transform:none}.sidebar-brand{display:flex;align-items:center;justify-content:space-between;padding:0 10px}.nav-scrim{position:fixed;inset:0;z-index:40;background:#15203555;border:0}.main{margin-left:0}.mobile-only{display:inline-flex}.topbar{height:74px;padding:0 16px;gap:9px}.searchbox{height:40px;padding:0 11px;gap:8px}.searchbox>input{font-size:12px}.topbar-right{gap:8px}.topbar-right>.icon-button{display:none}.topbar-right>.avatar{width:30px;height:30px;font-size:12px}.content{padding:27px 20px 76px;min-height:calc(100vh - 74px)}.page-heading{align-items:flex-start;flex-wrap:wrap;margin-bottom:25px}.page-heading p{font-size:12px;margin-top:7px}.heading-actions{margin-left:auto;gap:5px}.heading-actions .button{padding:8px 11px;font-size:11px;min-height:35px}.heading-actions .icon-button{width:32px;height:32px}.welcome-empty{margin-top:0}.empty-topline{padding:15px 17px;font-size:10px}.empty-topline>span:last-child{display:none}.welcome-center{padding:35px 17px}.photo-stack{width:95px;height:90px;margin-bottom:23px}.photo-stack>div{inset:7px 13px}.photo-stack>div>svg{width:35px}.welcome-center h2{font-size:22px;line-height:1.3;max-width:17ch;margin:0 auto}.welcome-center p{font-size:11px;margin-top:12px;line-height:1.8}.welcome-center p>br{display:none}.welcome-center .button{font-size:12px;padding:10px 14px}.drag-hint{font-size:9px}.welcome-features{padding:22px 20px;display:flex;flex-direction:column;gap:22px}.welcome-features>div{display:grid;grid-template-columns:22px 1fr;column-gap:12px;align-items:start}.welcome-features>div>svg{grid-row:span 2;margin:2px 0 0;width:18px}.welcome-features strong{font-size:11px;margin-bottom:4px}.welcome-features p{max-width:none;font-size:10px}.connection-link{font-size:10px;padding:14px;line-height:1.7;text-align:left;gap:9px}.connection-link>svg:last-child{display:none}.content-footer{padding:28px 0 4px;font-size:9px;gap:10px}.footer-version{display:none}.mobile-bottom{position:fixed;bottom:0;left:0;right:0;display:flex;height:65px;background:#fff;border-top:1px solid var(--line);z-index:25;padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom>a,.mobile-bottom>button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:transparent;border:0;color:#626d7c;font-size:10px}.mobile-bottom>.active{color:var(--accent)}.mobile-bottom>button>svg{border-radius:7px;background:var(--accent);color:#fff;width:31px;height:28px;padding:3px}.filter-bar{flex-wrap:wrap;gap:12px;padding:12px}.filter-bar>label{flex:1;max-width:none}.selection-bar{gap:7px;padding:7px;font-size:12px}.selection-bar>.text-button{font-size:10px}.selection-actions{width:100%;justify-content:flex-end;gap:7px}.selection-actions>.icon-button{width:33px;height:33px}.photo-grid{grid-template-columns:repeat(3,1fr);gap:3px}.compact .photo-grid{grid-template-columns:repeat(4,1fr)}.photo-tile{aspect-ratio:1}.photo-select{opacity:1;width:20px;height:20px;top:7px;left:7px}.photo-star{bottom:6px;right:7px}.day-group>h2{font-size:11px}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px}.album-cover{aspect-ratio:1.2}.album-card h3{font-size:12px;line-height:1.5}.album-card p{font-size:10px}.section-row{font-size:10px;margin-bottom:18px}.section-row>h2{font-size:13px}.empty-state{padding:70px 10px}.empty-state h2{font-size:21px;line-height:1.35}.empty-state p{font-size:12px}.modal{padding:22px;max-height:88dvh;border-radius:13px}.modal>header h2{font-size:18px;line-height:1.4}.modal>header{margin-bottom:20px}.modal-actions{gap:8px}.form-grid{grid-template-columns:1fr;gap:0}.settings-section-heading{gap:11px}.settings-section-heading>h2{font-size:16px}.settings-section-heading>.button{padding:8px 10px;font-size:10px;min-height:34px}.settings-section-heading>svg{width:18px}.settings-section-heading p{font-size:11px}.settings-section-heading h2{font-size:16px}.profile-row{gap:12px;flex-wrap:wrap}.profile-row p{font-size:11px}.settings-connect{align-items:flex-start;flex-direction:column;gap:12px}.callback-note{padding:14px}.callback-note code,.people-list small{font-size:10px}.share-row{gap:11px;flex-wrap:wrap;padding:18px 0}.share-icon{width:36px;height:36px}.share-info{width:calc(100% - 50px);flex:auto}.share-info>p{font-size:10px;line-height:1.9}.share-row>.status{margin-left:47px}.share-row>.icon-button{margin-left:auto}.share-row .dot-separator{margin:0 5px}.info-strip{font-size:11px;padding:14px}.toast{bottom:80px;font-size:12px}.viewer-toolbar{padding:0 10px;height:65px;gap:5px}.viewer-toolbar>div{gap:3px}.viewer-toolbar>div>span{display:none}.viewer-toolbar .icon-button{width:34px;height:34px}.viewer-body{height:calc(100dvh - 65px)}.viewer-stage{padding:5px 0}.viewer-prev,.viewer-next{height:40px;width:30px}.viewer-prev{left:5px}.viewer-next{right:5px}.photo-info{position:absolute;top:65px;right:0;bottom:0;width:min(88vw,330px);z-index:3;box-shadow:-10px 0 40px #0005}.viewer-stage>video{width:100%}.shared-page{padding:0 20px}.shared-page>header{height:75px}.shared-page .brand>span{font-size:21px}.shared-page .brand img{width:35px;height:30px}.shared-page>main{padding:35px 0}.share-locked{margin:65px auto}.shared-heading h1{font-size:27px}.login-top{padding:25px}.login-main{display:flex;flex-direction:column;gap:30px;padding:20px 25px 45px;max-width:460px;align-items:stretch}.login-copy{padding:0}.login-symbol{display:none}.login-copy h1{font-size:34px;line-height:1.15}.login-copy h1>br{display:none}.login-copy>p{font-size:12px;margin-top:13px;line-height:1.8}.login-note{display:none}.login-form{padding:28px 25px}.login-form h2{font-size:21px}.login-footer{padding:20px 25px;font-size:9px}.login-top>.private-label{font-size:10px}.upload-item strong{max-width:220px}.upload-actions>.button{font-size:11px;padding:8px 12px}.upload-actions>.text-button{width:100%;font-size:11px}.upload-notes{font-size:9px}.skeleton-grid{grid-template-columns:repeat(3,1fr)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html{scrollbar-gutter:stable}body:has(dialog[open]){overflow:hidden}.sidebar{width:236px;background:#f8f9fa;padding-top:20px}.sidebar-brand{margin-bottom:26px}.nav-item{border-radius:0 24px 24px 0;min-height:46px;padding-left:22px}.nav-item.active{background:#f4e4e5}.upload-button{min-height:45px;margin-bottom:22px;box-shadow:none;border-radius:12px}.topbar{height:76px;position:sticky;top:0;z-index:15;background:#fff;border-bottom:0;padding:0 30px}.searchbox{border-radius:25px;height:48px;max-width:720px;background:#f1f3f4}.topbar-right{gap:12px}.topbar-right>.private-label{display:none}.top-upload{padding:8px 11px;background:none;min-width:92px}.top-upload:hover{background:#f1f3f4}.content{padding:28px 30px 0;min-height:calc(100vh - 76px)}.page-heading{min-height:50px;margin-bottom:22px}.page-heading h1{font-size:25px;font-weight:500;letter-spacing:-.025em}.page-heading p{display:none}.content-footer{visibility:hidden;height:24px;min-height:24px;padding:0}.selection-bar{position:fixed;inset:0 0 auto 236px;z-index:30;height:76px;margin:0;padding:0 30px;border-radius:0;background:#faeff0;flex-wrap:nowrap;box-shadow:0 1px #edd9db}.selection-bar>strong{font-size:16px;font-weight:500;white-space:nowrap}.selection-actions{flex-wrap:nowrap}.selection-actions>.icon-button{width:42px;height:42px}.day-group{margin-bottom:30px}.day-heading{display:flex;align-items:center;gap:12px;height:36px;margin-bottom:9px}.day-heading h2{color:#333942;font-size:15px;font-weight:550;letter-spacing:-.01em}.day-select{display:inline-flex;justify-content:center;align-items:center;width:22px;height:22px;border:1.5px solid #a7aeb8;border-radius:50%;color:transparent;background:#fff;opacity:0}.day-group:hover .day-select,.day-select:focus-visible,.day-select.selected{opacity:1}.day-select.selected{background:var(--accent);border-color:var(--accent);color:#fff}.justified-grid{position:relative;width:100%;contain:layout}.justified-grid .photo-tile{aspect-ratio:auto;border-radius:0}.justified-grid .photo-open{transition:transform .14s ease-out}.justified-grid .photo-open img{object-fit:cover}.justified-grid .photo-tile:hover .photo-open img{transform:none}.photo-tile.is-selected .photo-open{padding:0;transform:scale(.93)}.photo-tile.is-selected{background:#f6dedf;outline:none}.photo-select{width:25px;height:25px;border-width:2px;top:11px;left:11px}.thumbnail-error{display:flex;width:100%;height:100%;align-items:center;justify-content:center;gap:10px;flex-direction:column;color:#737e8c;font-size:11px}.drop-overlay{position:fixed;z-index:90;inset:12px;pointer-events:none;display:grid;place-items:center;background:#fffefbf5;border:3px dashed var(--accent);border-radius:20px;color:var(--accent);text-align:center;box-shadow:0 0 0 12px #ffffffb8}.drop-overlay h2{font-size:28px;margin-top:25px;font-weight:500}.drop-overlay p{color:#646e7b;font-size:16px;margin-top:10px}.drop-overlay span{color:#7c8591;font-size:12px;display:block;margin-top:25px}.upload-panel{position:fixed;bottom:24px;right:24px;width:395px;max-width:calc(100vw - 32px);z-index:60;background:#fff;border-radius:14px;box-shadow:0 8px 45px #18233430;overflow:hidden}.upload-panel>header{display:flex;align-items:center;gap:12px;min-height:76px;padding:15px 14px 15px 20px;background:#f6f7f9}.upload-panel>header>svg{color:#6b7687}.upload-panel>header>div{flex:1;min-width:0}.upload-panel h2{font-size:15px;font-weight:550;letter-spacing:-.015em}.upload-panel>header p{font-size:11px;color:#727d8b;margin-top:4px}.upload-panel>header .icon-button{width:29px;height:29px}.upload-overview{padding:18px 20px 14px}.upload-progress-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:#637081}.upload-panel progress{display:block;width:100%;height:5px;border:0;border-radius:4px;overflow:hidden;background:#e9ecf0;accent-color:var(--accent);margin:10px 0}.upload-panel progress::-webkit-progress-bar{background:#e9ecf0}.upload-panel progress::-webkit-progress-value{background:var(--accent)}.upload-subline{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;color:#737e8c;min-height:24px}.upload-subline .text-button{font-size:11px;padding:2px 0}.upload-panel .upload-list{padding:0 20px;max-height:300px;overflow:auto}.upload-panel .upload-item{gap:10px;padding:14px 0}.upload-panel .upload-item strong{font-size:12px;max-width:230px}.upload-panel .upload-item small{font-size:10px}.upload-panel .upload-item.error small{color:#af2732}.upload-panel .upload-file-icon{width:33px;height:36px}.upload-panel .upload-item .icon-button{width:26px;height:26px}.upload-panel>footer{display:flex;align-items:center;gap:8px;padding:16px 20px;border-top:1px solid var(--line)}.upload-panel>footer .button{min-height:34px;font-size:11px;padding:8px 10px}.upload-panel>footer .text-button{margin-left:auto;font-size:11px}.upload-finished{display:flex;gap:9px;align-items:center;color:#667987;font-size:11px}.upload-finished>svg{color:#56816a}.upload-connect{padding:28px 24px;text-align:center}.upload-connect>svg{color:#8b97a4;margin-bottom:15px}.upload-connect h3{font-size:17px}.upload-connect p{font-size:12px;color:#717c8a;margin:10px 0 20px}.upload-pill{position:fixed;bottom:24px;right:24px;z-index:50;display:flex;align-items:center;gap:12px;border:0;box-shadow:0 5px 25px #18233425;background:#fff;border-radius:10px;padding:16px 20px;font-size:12px}.upload-pill>svg:first-child{color:var(--accent)}.viewer-toolbar{height:64px;padding:0 20px;background:#111214}.viewer-body{height:calc(100dvh - 64px)}.viewer-stage{padding:0 48px;position:relative}.viewer-media{width:100%;height:100%;position:relative;overflow:hidden;display:grid;place-items:center;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.viewer-media>video{max-width:100%;max-height:100%}.viewer-image-viewport{min-width:0;min-height:0;width:100%!important;height:100%!important}.viewer-image-content{min-width:0;min-height:0;width:100%!important;height:100%!important;display:flex;align-items:center;justify-content:center}.viewer-image-content img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;cursor:grab}.viewer-image-content img:active{cursor:grabbing}.viewer-media-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;color:#a8b0bc;font-size:12px}.viewer-media-error{max-width:410px;text-align:center;color:#d6dce5;padding:25px}.viewer-media-error>svg{color:#8993a2;margin-bottom:20px}.viewer-media-error h2{font-size:20px}.viewer-media-error p{color:#a6b0bd;font-size:13px;margin:16px 0 24px}.viewer-error-toast{position:absolute;bottom:25px;left:50%;transform:translate(-50%);z-index:8;display:flex;align-items:center;gap:10px;padding:10px 15px;border-radius:8px;background:#593034;color:#fff;font-size:12px;max-width:90%}.photo-info{top:64px}@media(max-width:1100px)and (min-width:761px){.sidebar{width:205px}.selection-bar{left:205px}.content{padding:24px 25px 0}.topbar{padding:0 25px}.top-upload{min-width:0}.top-upload>span{display:none}}@media(max-width:760px){.sidebar{width:250px}.topbar{height:72px;padding:0 14px;gap:8px}.topbar-right{gap:4px}.topbar-right .top-upload{min-width:32px;width:32px;height:35px;padding:5px;display:inline-flex}.top-upload>span{display:none}.searchbox{height:42px;border-radius:22px}.content{padding:21px 16px 76px;min-height:calc(100vh - 72px)}.page-heading{min-height:40px;margin-bottom:16px}.page-heading h1{font-size:23px}.selection-bar{left:0;height:72px;padding:0 10px;gap:7px}.selection-bar>strong{font-size:13px}.selection-bar>.text-button{display:none}.selection-actions{width:auto;margin-left:auto;gap:0}.selection-actions>.icon-button{width:35px;height:40px}.selection-actions>.button{font-size:10px;padding:7px}.day-heading{height:32px;margin-bottom:6px}.day-heading h2{font-size:13px}.day-select{opacity:1;width:20px;height:20px}.photo-select{width:22px;height:22px;top:8px;left:8px}.upload-panel{bottom:76px;right:12px;width:calc(100vw - 24px);max-width:420px;max-height:calc(100dvh - 100px);overflow:auto}.upload-panel .upload-list{max-height:34dvh}.upload-pill{bottom:80px;right:15px;padding:13px 16px}.drop-overlay{inset:8px;border-radius:12px}.drop-overlay h2{font-size:22px;max-width:20ch}.drop-overlay p{font-size:14px}.drop-overlay span{font-size:10px}.viewer-toolbar{height:60px;padding:0 8px}.viewer-toolbar .icon-button{width:36px;height:40px}.viewer-body{height:calc(100dvh - 60px)}.viewer-stage{padding:0}.photo-info{top:60px}}.locked-folder{max-width:400px;width:100%;margin:50px auto 70px;text-align:center;padding:0 15px}.locked-folder-icon{width:88px;height:88px;border-radius:50%;background:#f3f4f6;color:#7b8798;display:grid;place-items:center;margin:0 auto 24px}.locked-folder h2{font-size:23px;font-weight:500;line-height:1.3}.locked-folder>p{font-size:13px;color:#697584;margin:16px 0 28px}.locked-folder form{text-align:left}.locked-folder .vault-note{display:flex;align-items:center;justify-content:center;gap:7px;color:#596675;font-size:11px;margin-top:24px}.locked-folder>small{display:block;font-size:12px;line-height:1.7;color:#596675;margin-top:14px}.modal .locked-folder{margin:5px auto 10px;padding:0}.modal .locked-folder h2{display:none}.sidebar .main-nav{flex:1;min-height:0;overflow:auto;padding-bottom:8px;scrollbar-width:thin;gap:2px}.sidebar .nav-item{min-height:38px;padding-top:7px;padding-bottom:7px;flex-shrink:0}.sidebar .nav-divider{flex-shrink:0;margin-top:12px;margin-bottom:12px}.sidebar-bottom{flex-shrink:0;padding-top:18px}.sidebar-brand{flex-shrink:0;margin-bottom:20px}.sidebar>.upload-button{flex-shrink:0;margin-bottom:16px}.sidebar-bottom>.sidebar-rule{margin:18px 0 14px}.access-manager{grid-column:1 / -1}.access-manager h3{font-size:15px;margin:26px 0 14px}.access-albums{border:1px solid var(--line);border-radius:8px;padding:12px;max-height:210px;overflow:auto;margin:16px 0}.access-albums legend{font-size:12px;padding:0 5px;color:#596675}.access-check{display:flex;flex-direction:row;gap:10px;align-items:center;margin:12px 0;font-size:13px}.access-check input{width:16px;height:16px;flex-shrink:0;accent-color:var(--accent)}.access-actions{display:flex;gap:10px;flex-wrap:wrap}.invite-result{background:#f8f9fa;padding:18px;border-radius:10px;margin:22px 0}.invite-result p{margin:10px 0;line-height:1.6;color:#596675;font-size:13px}.invite-result input{font-size:12px}.access-person{display:flex;gap:18px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.access-person>div{flex:1;min-width:180px;overflow-wrap:anywhere}.access-person strong{font-size:13px}.access-person p,.access-person small{font-size:12px;color:#596675;margin-top:5px}.invitation-page{max-width:620px;margin:35px auto;padding:0 20px 40px}.invitation-page>.brand{margin-bottom:35px}.invitation-page h1{font-size:27px;margin:16px 0}.invitation-page p{line-height:1.6;margin:15px 0}.invitation-page form{margin-top:22px}.invitation-page .button{margin-top:12px}.shared-libraries>label{max-width:450px;margin:20px 0 30px}.shared-library-empty{text-align:center;padding:60px 15px;color:#596675}.shared-library-empty h2{font-size:21px;margin:20px 0 12px;color:var(--text)}.shared-library-empty p{margin-bottom:15px}.shared-library-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.shared-library-heading h2{font-size:22px}.shared-library-heading p{color:#596675;font-size:12px;margin:8px 0}.shared-library-tools{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:20px 0 30px}.shared-library-tools label{flex:1;min-width:170px;margin:0}.shared-library-tools .button{margin-bottom:0}.shared-viewer .viewer-toolbar>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px}.shared-viewer .viewer-toolbar>div{margin-left:auto}@media(max-width:600px){.access-person{gap:12px}.shared-library-tools .button{width:100%}.invitation-page{margin-top:24px}}.sharing-tabs{display:flex;flex-wrap:wrap;gap:12px 24px;padding-bottom:17px;margin-bottom:24px;border-bottom:1px solid var(--line);font-size:13px;color:#596675}.sharing-tabs a[aria-current=page]{color:var(--accent);font-weight:600}.sharing-tabs a:hover{text-decoration:underline;text-underline-offset:4px}
