/* Premium gallery admin v3 — shared visual layer. */
:root{
  --pg-ink:#191b19;--pg-muted:#747a76;--pg-line:#e7e9e6;--pg-soft:#f5f6f3;
  --pg-paper:#fff;--pg-accent:#17785a;--pg-accent-soft:#eaf5f0;--pg-danger:#a63d3d;
  --pg-r-sm:6px;--pg-r-md:10px;--pg-r-lg:16px;
  --pg-shadow:0 18px 50px rgba(19,25,21,.12);
  --mobile-safe-top:env(safe-area-inset-top,0px);
  --mobile-safe-right:env(safe-area-inset-right,0px);
  --mobile-safe-bottom:env(safe-area-inset-bottom,0px);
  --mobile-safe-left:env(safe-area-inset-left,0px)
}
html{background:var(--pg-paper)}
body{color:var(--pg-ink);background:#f8f8f6;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--pg-accent);outline-offset:2px}
.btn-primary,.btn-b{background:var(--pg-ink)!important;color:#fff!important;border-color:var(--pg-ink)!important;box-shadow:none!important}
.btn-primary:hover,.btn-b:hover{background:#000!important}
.btn-secondary,.btn-l{background:#fff!important;border-color:var(--pg-line)!important;color:var(--pg-ink)!important;box-shadow:none!important}
.btn-secondary:hover,.btn-l:hover{background:var(--pg-soft)!important;border-color:#d7dad6!important}

/* Collections — desktop refinement */
.sidebar-logo-mark,.login-logo-mark{background:#201e1b url('/assets/pwa/icon-192.png') center/cover no-repeat!important;color:transparent!important;border-radius:8px!important}
.sidebar{border-right-color:var(--pg-line)!important}
.sidebar-logo{padding:18px!important;border-bottom-color:var(--pg-line)!important}
.sidebar-nav{padding:14px 10px!important}
.nav-item{border-left:0!important;border-radius:7px!important;padding:10px 12px!important;margin:2px 0!important}
.nav-item.active{background:var(--pg-accent-soft)!important;color:var(--pg-accent)!important}
.storage-bar-fill{background:var(--pg-accent)!important}
.topbar{border-bottom-color:var(--pg-line)!important;padding:18px 30px!important}
.topbar h2{font-size:20px!important;letter-spacing:-.02em}
.content{padding:26px 30px 42px!important}
.filters{gap:10px!important;margin-bottom:24px!important}
.filter-select,.search-field,.search-box{border-color:var(--pg-line)!important;background:#fff!important}
.collections-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important;gap:28px 18px!important}
.collection-card{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
.collection-card:hover{transform:none!important;box-shadow:none!important}
.collection-thumb{aspect-ratio:4/3;border-radius:var(--pg-r-sm)!important;overflow:hidden;background:#eceeeb}
.collection-thumb img{transition:transform .35s ease,opacity .2s ease}
@media(hover:hover){.collection-card:hover .collection-thumb img{transform:scale(1.015)}}
.collection-info{padding:10px 1px 0!important}
.collection-info h3{font-size:14px!important;line-height:1.35!important;font-weight:590!important;letter-spacing:-.01em;margin:0 0 4px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.collection-info p{font-size:11px!important;color:var(--pg-muted)!important}
.collection-badge{top:9px!important;left:9px!important;right:auto!important;border:0!important;background:rgba(24,26,24,.72)!important;color:#fff!important;backdrop-filter:blur(7px);font-size:9px!important;letter-spacing:.04em;padding:4px 7px!important}
.collection-card-actions{top:8px!important;right:8px!important;left:auto!important;opacity:1!important}
.card-menu-toggle{display:flex!important;width:40px!important;height:40px!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;background:rgba(20,21,20,.64)!important;color:#fff!important;font-size:22px!important;backdrop-filter:blur(7px)}
.card-menu{display:none!important;position:absolute!important;right:0!important;top:45px!important;width:180px!important;z-index:20!important;padding:6px!important;flex-direction:column!important;gap:2px!important;border:1px solid var(--pg-line)!important;border-radius:12px!important;background:#fff!important;box-shadow:var(--pg-shadow)!important}
.collection-card.menu-open .card-menu{display:flex!important}
.card-menu .card-action{display:flex!important;width:100%!important;min-height:42px!important;padding:0 11px!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;border-radius:7px!important;background:#fff!important;color:var(--pg-ink)!important;font-size:12px!important}
.card-menu .card-action:hover{background:var(--pg-soft)!important}
.card-menu .danger{color:var(--pg-danger)!important}

/* Editor — desktop refinement */
.hdr{border-bottom-color:var(--pg-line)!important;box-shadow:none!important}
.lay{background:#f8f8f6}
.side{border-right-color:var(--pg-line)!important}
.cv{border-radius:var(--pg-r-md)!important}
.sr{border-radius:7px!important}
.sr.act{background:var(--pg-accent-soft)!important;color:var(--pg-accent)!important}
.ab{color:var(--pg-accent)!important}
.mn{background:#fff}
.gd{gap:8px!important}
.pc{border-radius:var(--pg-r-sm)!important;background-color:#eceeeb!important}
.pc.sel{outline-color:var(--pg-accent)!important}
.pc .cv2{background:rgba(22,24,22,.74)!important;color:#fff!important;border-radius:999px!important;padding:4px 7px!important;letter-spacing:.04em}
.bulkbar{border-color:var(--pg-line)!important;box-shadow:none!important}
.privacy-switch:checked{background:var(--pg-accent)!important;border-color:var(--pg-accent)!important}
.activity-tabs button.active{background:var(--pg-ink)!important}
.premium-mobile-action,.premium-card-menu,.premium-sheet-overlay{display:none}

/* Shared premium sheets */
.premium-sheet-overlay{position:fixed;inset:0;z-index:1500;background:rgba(13,15,13,.44);align-items:flex-end;justify-content:center;padding:0;opacity:0;transition:opacity .18s ease}
.premium-sheet-overlay.open{display:flex;opacity:1}
.premium-sheet{width:min(560px,100%);max-height:min(82dvh,760px);overflow:auto;background:#fff;border-radius:20px 20px 0 0;padding:8px 14px calc(16px + var(--mobile-safe-bottom));box-shadow:0 -24px 70px rgba(0,0,0,.18);transform:translateY(14px);animation:premiumSheetIn .2s ease forwards;overscroll-behavior:contain}
@keyframes premiumSheetIn{to{transform:translateY(0)}}
.premium-sheet-handle{width:34px;height:4px;border-radius:99px;background:#d9dcd8;margin:2px auto 14px}
.premium-sheet-head{display:flex;align-items:center;gap:12px;padding:0 2px 12px;border-bottom:1px solid var(--pg-line)}
.premium-sheet-head strong{flex:1;font-size:16px;letter-spacing:-.01em}
.premium-sheet-close{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--pg-soft);color:var(--pg-ink)}
.premium-sheet-actions{display:grid;padding:8px 0}
.premium-sheet-action{width:100%;min-height:52px;display:flex;align-items:center;gap:13px;padding:8px 10px;border-radius:9px;text-align:left;color:var(--pg-ink)}
.premium-sheet-action:hover{background:var(--pg-soft)}
.premium-sheet-action svg,.premium-mobile-action svg,.premium-card-menu svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.premium-sheet-action span{display:block;font-size:14px;font-weight:560}
.premium-sheet-action small{display:block;margin-top:2px;color:var(--pg-muted);font-size:11px;font-weight:400}
.premium-sheet-action.danger{color:var(--pg-danger);border-top:1px solid var(--pg-line);border-radius:0;margin-top:5px;padding-top:12px}

@media(max-width:900px){
  html,body{max-width:100%;overflow-x:hidden}
  body{background:#fff;padding-left:var(--mobile-safe-left);padding-right:var(--mobile-safe-right)}

  /* Native-like collections shell */
  .app.active{display:block!important;min-height:100dvh!important}
  .sidebar{position:sticky!important;top:0!important;width:100%!important;height:auto!important;bottom:auto!important;z-index:100!important;padding-top:var(--mobile-safe-top)!important;border:0!important;border-bottom:1px solid var(--pg-line)!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(18px)}
  .sidebar-logo{height:58px!important;padding:9px 14px!important;border:0!important}
  .sidebar-logo-mark{width:36px!important;height:36px!important;flex:none}
  .sidebar-logo-text strong{font-size:14px!important}.sidebar-logo-text small{font-size:8px!important}
  .sidebar-nav{display:grid!important;grid-template-columns:repeat(3,1fr)!important;padding:0 10px!important;gap:0!important}
  .nav-item{min-height:44px!important;margin:0!important;padding:9px 6px!important;justify-content:center!important;border-radius:0!important;border-bottom:2px solid transparent!important;font-size:12px!important;color:#777!important}
  .nav-item svg{display:none!important}.nav-item.active{background:transparent!important;color:var(--pg-ink)!important;border-bottom-color:var(--pg-accent)!important}
  .sidebar-footer{display:none!important}
  .main{margin-left:0!important;min-width:0!important}
  .topbar{top:calc(102px + var(--mobile-safe-top))!important;min-height:55px!important;padding:8px 12px!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(18px)}
  .topbar h2{font-size:18px!important}.topbar-actions{gap:6px!important}
  .topbar-actions #new-collection{width:42px!important;height:42px!important;border-radius:50%!important;padding:0!important;display:grid!important;place-items:center!important;font-size:0!important}
  .topbar-actions #new-collection svg{width:17px!important;height:17px!important}
  .content{padding:10px 10px calc(28px + var(--mobile-safe-bottom))!important}
  .mobile-collection-tools{gap:7px!important;margin:0 0 13px!important}
  .mobile-collection-tools button{min-height:44px!important;border-color:var(--pg-line)!important;border-radius:8px!important;background:#fff!important;color:var(--pg-ink)!important;font-size:11px!important}
  .mobile-collection-tools svg{width:16px!important;height:16px!important}
  .collections-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 9px!important}
  .collection-thumb{aspect-ratio:4/5!important;border-radius:4px!important}
  .collection-info{padding:8px 1px 0!important}.collection-info h3{font-size:12.5px!important}.collection-info p{font-size:10px!important}
  .collection-badge{top:7px!important;left:7px!important;max-width:calc(100% - 54px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:8px!important}
  .collection-card-actions{top:6px!important;right:6px!important}.card-menu-toggle{width:40px!important;height:40px!important}
  .filters{border-radius:20px 20px 0 0!important;padding:10px 16px calc(18px + var(--mobile-safe-bottom))!important}

  /* Compact editor header and set rail */
  .hdr{padding:calc(7px + var(--mobile-safe-top)) 9px 8px!important;grid-template-columns:40px minmax(0,1fr) auto!important;gap:6px!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(18px)!important}
  .hdr>a{width:40px!important;height:42px!important}.hdr h1{font-size:14px!important;font-weight:620!important;letter-spacing:-.01em!important}
  .hdr .badge{grid-column:3!important;max-width:82px!important;font-size:8px!important;background:var(--pg-accent-soft)!important;color:var(--pg-accent)!important}
  .hdr #pv{grid-column:1/3!important;grid-row:2!important}.hdr #sh{grid-column:3!important;grid-row:2!important}
  .hdr .btn{min-height:42px!important}
  .lay{display:block!important;min-height:0!important}
  .side{position:relative!important;top:auto!important;z-index:1!important;width:100%!important;padding:10px 10px 8px!important;display:grid!important;grid-template-columns:72px minmax(0,1fr)!important;gap:9px 11px!important;border:0!important;border-bottom:1px solid var(--pg-line)!important;overflow:visible!important}
  .cv{grid-column:1!important;grid-row:1!important;width:72px!important;aspect-ratio:1!important;margin:0!important;border-radius:8px!important}
  .cover-tools{display:none!important}
  .side>div:not(.cover-tools):not(.linked-box){grid-column:1/-1!important;min-width:0!important}
  .side .linked-box{display:none!important}
  .sct{margin-bottom:6px!important}.sact{gap:12px!important}.sact #tpl-open{display:none!important}
  .sets{display:flex!important;gap:6px!important;overflow-x:auto!important;padding:0 0 3px!important;scrollbar-width:none!important;scroll-snap-type:x proximity}
  .sets::-webkit-scrollbar{display:none}.sr{flex:0 0 auto!important;min-width:0!important;max-width:190px!important;min-height:42px!important;padding:7px 8px 7px 11px!important;border:1px solid var(--pg-line)!important;border-radius:999px!important;scroll-snap-align:start}
  .sr.act{border-color:#bcdccd!important}.sr .nm{max-width:112px!important}.sr .ex,.sr .dx{width:32px!important;height:32px!important;border-radius:50%!important}
  .mn{padding:10px 8px calc(24px + var(--mobile-safe-bottom))!important;overflow:visible!important}
  .mh{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:3px 8px!important;align-items:center!important;margin-bottom:10px!important}
  .mh h2{grid-column:1!important;font-size:17px!important;font-weight:620!important;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mh>div{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;align-items:center!important;margin-top:7px}
  .mh .info{grid-column:1/-1!important;font-size:10.5px!important;color:var(--pg-muted)!important;margin-top:-2px}
  .mh #send-inside,.mh #video-up,.mh .photo-order{display:none!important}
  .mh #up{grid-column:auto!important;min-height:44px!important;width:100%!important;font-size:11px!important;justify-content:center!important;padding:8px!important}
  .premium-mobile-action{display:flex;min-height:44px;align-items:center;justify-content:center;gap:6px;padding:7px;border:1px solid var(--pg-line);border-radius:8px;background:#fff;color:var(--pg-ink);font-size:11px;font-weight:560}
  .premium-mobile-action.active{background:var(--pg-accent-soft);border-color:#bcdccd;color:var(--pg-accent)}

  /* Photography first */
  .gd{--editor-cols:2!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important}
  .pc{border-radius:3px!important;content-visibility:auto;contain-intrinsic-size:170px 170px;touch-action:manipulation}
  .pc .pa,.pc .sd{display:none!important}
  .pc .pick{display:none!important;top:6px!important;right:6px!important;width:40px!important;height:40px!important;border-radius:50%!important;background:rgba(255,255,255,.94)!important;color:var(--pg-ink)!important;box-shadow:0 2px 12px rgba(0,0,0,.14)!important}
  body.premium-selection-mode .pc .pick{display:grid!important;place-items:center}
  body.premium-selection-mode .premium-card-menu{display:none!important}
  .premium-card-menu{display:grid;place-items:center;position:absolute;right:5px;bottom:5px;width:42px;height:42px;z-index:5;border-radius:50%;background:rgba(20,21,20,.64);color:#fff;backdrop-filter:blur(7px)}
  .pc.sel::after{content:'';position:absolute;inset:0;border:3px solid var(--pg-accent);pointer-events:none;z-index:2}
  .pc .cv2{top:6px!important;left:6px!important;max-width:calc(100% - 56px)!important;font-size:8px!important}
  .bulkbar.show{display:grid!important;grid-template-columns:minmax(0,1fr) repeat(3,auto)!important;position:fixed!important;left:8px!important;right:8px!important;bottom:calc(8px + var(--mobile-safe-bottom))!important;top:auto!important;z-index:120!important;margin:0!important;padding:8px!important;gap:6px!important;border:1px solid rgba(0,0,0,.08)!important;border-radius:14px!important;box-shadow:0 12px 38px rgba(0,0,0,.2)!important;background:rgba(255,255,255,.98)!important;backdrop-filter:blur(16px)}
  .bulkbar .sp{grid-column:1!important;align-self:center;padding-left:5px;font-size:11px!important;font-weight:650;color:var(--pg-ink)!important}
  .bulkbar #bulk-set{display:none!important}.bulkbar .btn{width:auto!important;min-height:42px!important;padding:7px 10px!important;font-size:10px!important}.bulkbar #sel-all{display:none!important}.bulkbar #bulk-del{background:#fff!important;color:var(--pg-danger)!important;border:1px solid var(--pg-line)!important}.premium-bulk-move{display:flex!important}
  .set-divider{padding:13px 0 7px!important}.empty{border-color:var(--pg-line)!important;background:var(--pg-soft)!important}

  /* Mobile modal language */
  .mbg,.modal-overlay{align-items:flex-end!important;padding:0!important;background:rgba(13,15,13,.44)!important}
  .mdl,.modal{width:100%!important;max-width:none!important;max-height:92dvh!important;border-radius:20px 20px 0 0!important;padding:22px 16px calc(18px + var(--mobile-safe-bottom))!important;overflow:auto!important;overscroll-behavior:contain}
  .privacy-mdl,.share-mdl,.focus-mdl,.groups-mdl,.video-cover-mdl,.activity-mdl{width:100%!important;max-width:none!important;max-height:94dvh!important;border-radius:20px 20px 0 0!important}
  .privacy-head,.privacy-body,.share-head,.share-body,.activity-head,.activity-tabs,.activity-summary,.activity-table-wrap{padding-left:16px!important;padding-right:16px!important}
  .privacy-footer,.share-actions,.video-cover-footer{position:sticky!important;bottom:0!important;background:#fff!important;padding-bottom:calc(14px + var(--mobile-safe-bottom))!important}
  .activity-mdl{height:94dvh!important}.activity-summary{grid-template-columns:repeat(3,1fr)!important;gap:6px!important;padding-top:12px!important;padding-bottom:12px!important}.activity-stat{padding:10px 8px!important}.activity-stat strong{font-size:17px!important}.activity-stat span{font-size:9px!important}
  .activity-table-wrap{overflow:auto!important}.activity-table{display:block!important;min-width:0!important;width:100%!important}.activity-table thead{display:none!important}.activity-table tbody{display:grid!important;gap:8px!important}.activity-table tr{display:grid!important;grid-template-columns:1fr auto!important;gap:5px 12px!important;padding:12px!important;border:1px solid var(--pg-line)!important;border-radius:10px!important;background:#fff!important}.activity-table td{display:block!important;padding:0!important;border:0!important;font-size:11px!important}.activity-table td:first-child{grid-column:1/-1!important;font-size:12px!important}.activity-table td:nth-child(2){grid-column:1!important}.activity-table td:nth-child(3){grid-column:2!important;color:var(--pg-muted)!important}.activity-table td:nth-child(4){grid-column:1/-1!important;color:var(--pg-muted)!important;font-size:10px!important}.activity-table .activity-empty{display:block!important;grid-column:1/-1!important;padding:36px 12px!important;border:0!important}
  .pg{left:10px!important;right:10px!important;bottom:calc(10px + var(--mobile-safe-bottom))!important;min-width:0!important;border-radius:12px!important}
}

@media(min-width:700px) and (max-width:900px){.collections-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.gd{--editor-cols:4!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}.content{padding-left:18px!important;padding-right:18px!important}}
@media(max-width:340px){.content,.mn{padding-left:7px!important;padding-right:7px!important}.collections-grid,.gd{gap:5px!important}.collection-info h3{font-size:11.5px!important}.premium-mobile-action{font-size:10px!important}.bulkbar .btn{padding:6px 8px!important}}
@media(min-width:901px){.sidebar{width:232px!important}.main{margin-left:232px!important}.premium-sheet-overlay{display:none!important}.mn{padding:28px!important}.side{width:268px!important;padding:22px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media(max-width:900px){.side>div:not(.cover-tools):not(.linked-box){grid-column:2!important;grid-row:1!important;overflow:hidden!important}.sr .ex,.sr .dx{display:none!important}.premium-set-menu{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:50%;color:var(--pg-muted);background:transparent}.premium-set-menu svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}}
@media(max-width:900px){.privacy-mdl,.share-mdl,.focus-mdl,.activity-mdl,.video-cover-mdl{padding:0!important;overflow:hidden!important}.focus-mdl{display:flex!important}.activity-table-wrap{padding-bottom:calc(18px + var(--mobile-safe-bottom))!important}}
@media(min-width:901px){.premium-set-menu{display:none!important}}
