/* Álbuns v31, catálogo profissional e correções de controlos nativos. */
#albumsView{min-height:calc(100dvh - 90px);padding-bottom:120px}
.professional-album-rail{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:8px}
.professional-album-card{position:relative;min-width:0;aspect-ratio:16/9;border:1px solid #ffffff17;border-radius:20px;overflow:hidden;background:#0d1218;box-shadow:0 18px 45px #0006;isolation:isolate}
.professional-album-open{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:#0d1218;color:#fff;text-align:left;cursor:pointer}
.professional-album-open img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .38s ease,filter .38s ease}
.professional-album-open:hover img,.professional-album-open:focus-visible img{transform:scale(1.035);filter:brightness(.9)}
.professional-album-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 18%,#050709ec 92%)}
.professional-album-copy{position:absolute;z-index:2;left:16px;right:82px;bottom:15px;min-width:0}
.professional-album-copy strong,.professional-album-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.professional-album-copy strong{margin-top:7px;font:800 18px/1.05 Manrope}
.professional-album-copy small{margin-top:5px;color:#bcc4cd;font-size:11px}
.visibility-badge{display:inline-flex;width:max-content;max-width:100%;padding:5px 8px;border:1px solid #ffffff20;border-radius:999px;background:#111820db;color:#eef2f6;font-size:9px;font-style:normal;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.visibility-public{background:#d8ff3ee8;color:#080b08;border-color:transparent}.visibility-private_client{background:#253041e8;color:#f4f7fa}.visibility-private_owner{background:#15191ee8;color:#c3cad3}
.professional-album-manage{position:absolute;z-index:4;right:12px;bottom:12px;min-width:60px;min-height:44px;padding:0 12px;border:1px solid #d8ff3e66;border-radius:12px;background:#0a0d0bd9;color:var(--lime);font-weight:850;cursor:pointer;backdrop-filter:blur(12px)}
.professional-album-manage:hover,.professional-album-manage:focus-visible{background:var(--lime);color:#080b08}
.album-visibility-control{display:grid!important;grid-template-columns:44px minmax(0,1fr) minmax(150px,210px);align-items:center;gap:12px;margin:18px 0 4px!important;padding:13px;border:1px solid #d8ff3e42;border-radius:16px;background:#d8ff3e0a;color:#fff!important}
.album-visibility-control .visibility-eye{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#d8ff3e16;color:var(--lime);font-size:20px}
.album-visibility-control strong,.album-visibility-control small{display:block}.album-visibility-control small{margin-top:4px;color:var(--muted);line-height:1.3}
.album-visibility-control select,.upload-visibility-control select{width:100%;min-height:46px;padding:0 40px 0 13px;border:1px solid var(--line);border-radius:12px;background-color:#090c11;color:#fff;font:750 14px DM Sans;color-scheme:dark;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#aeb6c1 50%),linear-gradient(135deg,#aeb6c1 50%,transparent 50%);background-position:calc(100% - 17px) 20px,calc(100% - 12px) 20px;background-size:5px 5px;background-repeat:no-repeat}
.upload-visibility-control{display:block;color:var(--muted);font-size:13px;margin-top:15px}
input[type="number"]{appearance:textfield;-moz-appearance:textfield;color-scheme:dark}
input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.album-api-dialog{width:min(720px,calc(100vw - 32px))!important}.album-api-dialog>p{color:var(--muted);line-height:1.5}.album-api-dialog textarea{width:100%;min-height:150px;margin-top:7px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#070a0e;color:#d8ff3e;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical}.api-copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:7px}.api-copy-row input{margin:0!important;min-width:0}.api-copy-row button{min-width:82px;border:0;border-radius:11px;background:var(--lime);color:#080b08;font-weight:850}.api-revoke{min-height:44px;margin-top:14px;border:1px solid #ff5d5d55;border-radius:12px;background:#ff5d5d0d;color:#ff8585;font-weight:800}.api-security-note{display:block;margin-top:15px;color:var(--muted);line-height:1.45}
.sheet:not(.hidden),.side-panel:not(.hidden),.member-gate:not(.hidden){overscroll-behavior:contain}
.sheet:not(.hidden)>.sheet-card,.side-panel:not(.hidden)>aside,.side-panel:not(.hidden)>form,.member-gate:not(.hidden)>form{touch-action:pan-y;overscroll-behavior:contain;scrollbar-gutter:stable}
@media(max-width:760px){.professional-album-rail{display:flex;gap:12px;margin-right:-16px;padding:2px 16px 10px 0;overflow-x:auto;scroll-snap-type:x mandatory}.professional-album-card{flex:0 0 min(82vw,350px);scroll-snap-align:start}.album-visibility-control{grid-template-columns:44px minmax(0,1fr)}.album-visibility-control select{grid-column:1/-1}.album-api-dialog{width:100%!important}.api-copy-row{grid-template-columns:1fr}.api-copy-row button{min-height:44px}}
@media(prefers-reduced-motion:reduce){.professional-album-open img{transition:none}}
