*{box-sizing:border-box} :root{--ink:#262925;--muted:#858a81;--line:#e6e8e2;--paper:#fafbf8;--accent:#e8eddb}body{margin:0;font:14px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI','Microsoft YaHei',sans-serif;color:var(--ink);background:var(--paper)}button,input,select,textarea{font:inherit}button,.button{border:1px solid var(--line);border-radius:18px;background:#fff;padding:9px 15px;color:inherit;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;gap:6px;text-decoration:none;transition:background .18s,transform .18s}button:hover,.button:hover{background:#f0f2e9}button:active,.button:active{transform:scale(.98)}button:disabled{opacity:.4;cursor:default}button.primary,.button.primary{background:var(--ink);color:white;border-color:var(--ink)}button:focus-visible,.button:focus-within,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #758957;outline-offset:3px}input,select,textarea{border:1px solid var(--line);border-radius:11px;padding:10px;background:white;min-width:0;color:inherit}input[type=checkbox]{accent-color:#53663b}header{height:84px;position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:25px;padding:18px 30px;border-bottom:1px solid var(--line);background:rgba(250,251,248,.95);backdrop-filter:blur(16px)}.brand{font-size:22px;letter-spacing:-1px;color:inherit;text-decoration:none;white-space:nowrap}.brand span{font-size:11px;letter-spacing:2px;color:var(--muted);margin-left:8px}.local-badge{font-size:11px;color:#68764f;background:var(--accent);border-radius:30px;padding:6px 10px;white-space:nowrap}.local-badge i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#829365;margin-right:5px}.header-actions{margin-left:auto;display:flex;gap:10px;align-items:center}#saveState{font-size:11px;color:var(--muted);max-width:200px}.workspace{display:grid;grid-template-columns:180px minmax(0,1fr) 285px;min-height:calc(100vh - 84px)}.sidebar{padding:30px 18px;position:sticky;top:84px;height:calc(100vh - 84px);display:flex;flex-direction:column;border-right:1px solid var(--line)}.side-label,.eyebrow{font-size:9px;color:var(--muted);letter-spacing:2px;margin-bottom:20px}.side{border:0;background:transparent;justify-content:flex-start;border-radius:11px;margin-bottom:7px;padding:12px 10px;font-size:13px}.side small{margin-left:auto;color:var(--muted)}.side.active{background:var(--accent)}.side-bottom{margin-top:auto;font-size:11px;color:var(--muted)}.side-bottom button{font-size:11px;padding:8px}main{min-width:0;padding:35px 32px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px}h1{font-size:32px;line-height:1.2;font-weight:500;letter-spacing:-1px;margin:0 0 10px}h2{font-size:18px;font-weight:500}p{color:#7a8075}.eyebrow{margin-bottom:12px}.page-heading p{margin:0;font-size:12px}.heading-actions{display:flex;gap:6px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);padding:20px 0;margin-bottom:18px;gap:15px}.metrics small{display:block;color:var(--muted);font-size:10px}.metrics b{display:block;font-size:23px;font-weight:400;margin-top:5px}.notice{font-size:12px;color:#68754f;background:#f0f3e9;border-radius:10px;padding:12px 15px;margin-bottom:20px;overflow-wrap:anywhere}.notice.error{color:#9c4d36;background:#fff0e9}.toolbar{display:flex;gap:7px;flex-wrap:wrap}.toolbar input{flex:1 1 190px}.toolbar select,.toolbar button{font-size:11px}.selection{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:16px 0;font-size:11px}.selection button,.selection select{padding:6px 9px;font-size:11px}.selection>span{color:var(--muted);margin-right:auto}.selection label{white-space:nowrap}.grid-label{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin:24px 0 12px;gap:10px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px 14px}.photo-card{min-width:0;border-radius:12px;padding:5px;background:transparent;position:relative}.photo-card.selected{background:var(--accent)}.photo-frame{height:145px;border-radius:10px;background:#eeefe9;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;cursor:pointer}.photo-frame img{width:100%;height:100%;object-fit:contain;padding:8px}.photo-frame .missing{font-size:10px;color:#a2a699;text-align:center;padding:15px}.photo-card .check{position:absolute;top:9px;left:9px;background:#ffffffd9;border-radius:5px;z-index:1}.photo-card .check input{display:block;margin:5px}.photo-card .zoom{position:absolute;bottom:5px;right:5px;padding:3px 8px;font-size:10px;border-radius:8px}.photo-name{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:8px 2px 2px}.photo-sub{font-size:9px;color:var(--muted);margin:0 2px;display:flex;justify-content:space-between;gap:3px}.photo-order{display:flex;gap:3px;margin-top:5px}.photo-order button{padding:1px 8px;font-size:10px;border-radius:6px}.photo-order span{font-size:9px;margin-left:auto;color:var(--muted)}.drag-over{outline:2px solid #8da56d;outline-offset:3px}.dragging{opacity:.4}.pagination{display:flex;justify-content:center;gap:15px;align-items:center;margin:30px 0;font-size:11px}.pagination button{font-size:11px}.inspector{border-left:1px solid var(--line);padding:25px 20px;position:sticky;top:84px;height:calc(100vh - 84px);overflow:auto;background:#fff}.inspector-head{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:var(--muted);letter-spacing:1px;margin-bottom:25px}.inspector-head button{padding:1px 8px}.inspector label,dialog label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#747c6b;margin:13px 0}.inspector textarea{resize:vertical}.inspect-image{width:100%;height:190px;background:#f3f4ee;border:0;border-radius:10px;padding:8px}.inspect-image img{width:100%;height:100%;object-fit:contain}.hint{font-size:11px;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}.mono{font:9px/1.8 monospace;overflow-wrap:anywhere}.inspector .button,.inspector button:not(.inspect-image){font-size:11px}.flags{display:flex;flex-wrap:wrap;gap:8px}.flags label{flex-direction:row;gap:3px;margin:5px 0;font-size:10px}.inspector #setCover,.inspector .button{width:100%;margin-top:8px}.inspector #restorePhotoVersion{margin-top:8px}.album-list{display:flex;flex-direction:column;gap:12px}.album-row{display:flex;align-items:center;gap:15px;border:1px solid var(--line);border-radius:16px;padding:14px;background:#fff}.album-row img{width:80px;height:75px;object-fit:contain;background:#f0f1ec;border-radius:8px}.album-row .album-text{flex:1;min-width:0}.album-row h2{margin:0 0 5px;font-size:16px}.album-row p{margin:0;font-size:11px}.album-buttons{display:flex;gap:5px;flex-wrap:wrap;max-width:240px}.album-buttons button{font-size:10px;padding:5px 8px}.backup-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.backup-grid article,.cloud-note{padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff}.backup-grid p,.cloud-note p{font-size:12px}.backup-grid button,.backup-grid .button{font-size:11px;margin:4px 4px 4px 0}.backup-grid select{max-width:100%;font-size:11px}.cloud-note{margin-top:20px}.queue{padding:15px;border:1px solid var(--line);border-radius:12px;margin-bottom:20px;font-size:11px}.queue>div:first-child{display:flex;justify-content:space-between;gap:10px}.queue progress{width:100%;height:5px;margin-top:12px;accent-color:#778d58}#queueFailures{max-height:100px;overflow:auto;color:#a4563a}.extra-filters{display:flex;gap:10px;flex-wrap:wrap;padding:14px 0}.extra-filters label{font-size:10px;display:flex;align-items:center;gap:5px}.extra-filters input{max-width:140px}.empty{padding:50px;text-align:center;color:var(--muted);font-size:13px}dialog{border:1px solid var(--line);border-radius:22px;padding:25px;max-width:min(500px,92vw);width:100%;max-height:90vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#19201255;backdrop-filter:blur(6px)}.dialog-head,.dialog-actions{display:flex;justify-content:space-between;align-items:center;gap:10px}.dialog-head h2{margin:0}.dialog-head button{border:0}.dialog-actions{justify-content:flex-end;margin-top:20px}.viewer{max-width:96vw;width:96vw;height:94vh;background:#fafbf8;padding:45px 30px 60px;overflow:hidden}.viewer img{width:100%;height:100%;object-fit:contain}.viewer-close{position:absolute;right:15px;top:12px;z-index:1}.viewer-bottom{position:absolute;bottom:15px;left:20px;right:20px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px}.viewer-bottom span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#viewerError{position:absolute;inset:40% 20px;text-align:center}.inspect-active .photo-card.active{box-shadow:0 0 0 1px #9daa8b} [hidden]{display:none!important}@media(min-width:1600px){.photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.photo-frame{height:190px}main{padding:40px}}@media(max-width:1150px){.workspace{grid-template-columns:150px minmax(0,1fr)}.inspector{display:none;position:fixed;right:0;top:84px;width:300px;z-index:20;box-shadow:-10px 0 60px #19201215}.inspect-active .inspector{display:block}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.header-actions #saveState{display:none}.local-badge{margin-left:auto}.header-actions{margin-left:0}.sidebar{padding-inline:12px}main{padding:28px 22px}}@media(max-width:650px){header{height:auto;min-height:76px;gap:10px;padding:14px 15px;flex-wrap:wrap}.brand{font-size:18px}.brand span{font-size:9px}.local-badge{font-size:9px}.header-actions{width:100%;justify-content:flex-end}.header-actions button{font-size:11px;padding:6px 12px}.workspace{display:flex;flex-direction:column}.sidebar{position:static;height:auto;border-right:0;flex-direction:row;gap:5px;overflow:auto;padding:12px 15px;border-bottom:1px solid var(--line)}.side-label,.side-bottom{display:none}.side{white-space:nowrap;margin:0;font-size:11px;padding:9px}.side small{margin-left:5px}main{padding:25px 15px}.page-heading{align-items:flex-start;gap:10px}h1{font-size:27px}.eyebrow{font-size:8px}.page-heading p{font-size:11px}.heading-actions .button{font-size:11px;white-space:nowrap;padding:8px 12px}.metrics{padding:15px 0;gap:8px}.metrics b{font-size:19px}.metrics small{font-size:9px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 8px}.photo-frame{height:150px}.inspector{top:0;height:100vh;width:min(340px,95vw)}.toolbar select{max-width:48%;flex:1}.grid-label #dragHint{max-width:140px;font-size:9px}.selection{gap:7px}.selection select{max-width:180px}.album-row{flex-wrap:wrap;padding:12px}.album-row img{width:65px;height:65px}.album-buttons{max-width:none;width:100%}.backup-grid{grid-template-columns:1fr}.viewer{padding-inline:10px}.viewer-bottom button{padding:7px;font-size:11px}.viewer-bottom{left:10px;right:10px;gap:5px}.viewer-bottom span{max-width:120px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

@media(max-width:650px){.toolbar input{flex:1 1 100%;width:100%}.toolbar select{flex:1 1 calc(50% - 8px);width:calc(50% - 8px);max-width:calc(50% - 3px)}}
#homeView .album-list,#groupsView .album-list,#contentView .album-list{margin-top:20px}.picker-card{display:flex;flex-direction:column;gap:5px;font-size:10px}.picker-card img{width:100%;height:100px;object-fit:contain;background:#f1f2ed}.picker-card input{align-self:start}#picker{max-width:800px}#backgroundFields{display:grid;grid-template-columns:1fr 1fr;gap:14px}#backgroundFields label,.cloud-note label{display:flex;flex-direction:column;font-size:11px;gap:7px;margin-block:12px}.cloud-note textarea{width:100%}#groupFields label{margin-top:12px}.sidebar{overflow:auto}.side-bottom{min-height:70px}.page-heading+.toolbar{margin-bottom:25px}@media(max-width:650px){#backgroundFields{grid-template-columns:1fr}.header-actions{flex-wrap:wrap}.sidebar{flex-wrap:nowrap}.backup-grid select{width:100%}}

/* V5-002/003: Studio only; public V5 styling remains frozen. */
#albumPath{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px;font-size:12px}#albumSummary{color:var(--muted)}.photo-card.selected{outline:2px solid #839365;outline-offset:1px}.photo-frame .details{position:absolute;bottom:5px;left:5px;padding:3px 8px;font-size:10px;border-radius:8px}.photo-frame[aria-pressed=true]{box-shadow:inset 0 0 0 2px #839365}#selectionMore{position:relative}#selectionMore summary{cursor:pointer;padding:6px}#selectionMore[open]{padding:8px;border:1px solid var(--line);border-radius:10px}#clearSelection{border-color:#839365}.album-text h2[role=button]{cursor:pointer}.picker-card:has(input:checked){background:var(--accent);outline:2px solid #839365;border-radius:8px;padding:5px}.photo-card .check{pointer-events:none;opacity:.85}#picker{scrollbar-gutter:stable}#pickerSearch{width:60%}#pickerAlbumFilter{max-width:36%}#picker .dialog-head{margin-bottom:12px}.selection #assign[hidden],.selection #selectionMore[hidden]{display:none}

.publication-badge{display:inline-flex;border-radius:20px;padding:3px 9px;font-size:11px;margin:5px 0}.is-public{color:#1760a7;background:#eaf3fc}.is-private{color:#b34e46;background:#fbeeea}.photo-paths{display:flex;flex-direction:column;align-items:flex-end;gap:4px;margin:5px 0}.path-pill{font-size:10px;border-radius:20px;background:#eff1e9;padding:3px 8px;max-width:100%;overflow-wrap:anywhere}.card-actions{display:none;gap:5px;flex-wrap:wrap;margin-top:8px}.photo-card.selected .card-actions{display:flex}.card-actions button{font-size:10px;padding:5px 8px}.status-tabs{display:flex;gap:9px;margin:16px 0}.status-tabs button[aria-pressed=true]{background:var(--ink);color:white}.queue>div:first-child{flex-wrap:wrap}#queueText,#queueCurrent,#queueTiming{overflow-wrap:anywhere}#queueCurrent{font-size:11px;margin:8px 0}.toolbar #albumFilter,.toolbar #sourceFilter,.toolbar #flagFilter,.selection #targetAlbum,.selection #assign{display:none!important}#photoCaptionSettings{margin-top:25px}#photoCaptionSettings summary{cursor:pointer;font-size:12px}#photoCaptionSettings textarea{width:100%}

/* 040 shared picker: fixed actions, independent list, selection order. */
#picker[open]{display:flex;flex-direction:column;width:min(1440px,96vw);max-width:96vw;height:min(900px,92dvh);max-height:92dvh;padding:0;overflow:hidden;border-radius:22px}#picker .dialog-head{flex-shrink:0;margin:0;padding:16px 20px;border-bottom:1px solid var(--line);gap:12px;align-items:center}#picker h2{margin:0;font-size:18px}#pickerCount{margin-right:auto;font-variant-numeric:tabular-nums}#picker .picker-tools{display:flex;gap:12px;padding:12px 20px;flex-shrink:0}#pickerSearch{flex:1;width:auto}#pickerAlbumFilter{max-width:30%}#pickerHint{margin:0;padding:0 20px 10px;color:var(--muted);font-size:12px}#picker .picker-scroll{overflow:auto;min-height:0;padding:8px 20px 20px;overscroll-behavior:contain}#pickerGrid{display:grid;grid-template-columns:repeat(var(--picker-columns,4),minmax(0,1fr));gap:12px}#picker .picker-card{position:relative;min-width:0;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--paper);outline-offset:0}#picker .picker-card img{height:clamp(90px,15vw,190px);border-radius:7px}#picker .picker-card>span:not(.picker-ordinal){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#picker .picker-card input{position:absolute;top:12px;right:12px;margin:0}#picker .picker-ordinal{position:absolute;top:12px;left:12px;padding:4px 8px;border-radius:8px;background:#fff;color:#263d38;font-size:14px;font-weight:600;pointer-events:none}#picker .picker-order{display:flex;gap:6px}#picker .picker-move{padding:2px 12px;min-height:28px}#picker .picker-card:has(input:checked){padding:6px;background:var(--accent);outline:2px solid #839365}@media(max-width:650px){#picker .dialog-head{padding:12px;flex-wrap:wrap;gap:8px}#picker h2{font-size:16px}#pickerCount{font-size:12px}#picker .picker-tools{padding:10px;flex-wrap:wrap}#picker .picker-scroll{padding:6px 10px 14px}#pickerGrid{gap:7px}#picker .picker-card img{height:90px}#picker .picker-card input{top:8px;right:8px}#picker .picker-ordinal{top:8px;left:8px;font-size:11px;padding:2px 4px}#picker .picker-move{padding:2px 6px}#picker input,#picker select{font-size:16px}}
