/* Álbumes 2.3 · estilos aislados de las invitaciones y del editor. */
@font-face{font-family:Album Sans;src:url('../fonts/dm-sans-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Album Sans;src:url('../fonts/dm-sans-latin-600-normal.woff2') format('woff2');font-weight:600 800;font-display:swap}
@font-face{font-family:Album Serif;src:url('../fonts/cormorant-garamond-latin-500-normal.woff2') format('woff2');font-weight:400 700;font-display:swap}
.album-public{--album-line:color-mix(in srgb,var(--album-accent) 20%,transparent);margin:0;color:var(--album-ink);background:var(--album-paper);font-family:Album Sans,sans-serif;font-size:15px;line-height:1.65;overflow-wrap:anywhere}
.album-public *,.album-dashboard *{box-sizing:border-box}
.album-public [hidden],.album-dashboard [hidden]{display:none!important}
.album-room{display:grid;gap:8px;margin-top:24px;padding:18px;border:1px solid var(--album-line);border-radius:12px;background:var(--album-paper)}
.album-room strong{font-size:17px;line-height:1.45;font-weight:600}
.album-room small{font-size:12px;line-height:1.65}
.album-public a{color:inherit}.album-public button,.album-public input,.album-public select,.album-public textarea{font:inherit}
.album-public button,.album-public a,.album-dashboard button,.album-dashboard a{-webkit-tap-highlight-color:transparent}
.album-public button{cursor:pointer}.album-public button:disabled,.album-dashboard button:disabled{opacity:.5;cursor:default}
.album-public :focus-visible,.album-dashboard :focus-visible{outline:3px solid #158ac1;outline-offset:4px}
.album-public h1,.album-public h2,.album-public h3{font-family:Album Serif,Georgia,serif;line-height:1.02;font-weight:500;margin:0 0 24px;letter-spacing:-.035em}
.album-public h1{font-size:clamp(54px,6.4vw,90px)}.album-public h2{font-size:clamp(34px,3.7vw,48px)}.album-public p{margin:0 0 18px}
.album-skip{position:fixed;left:20px;top:-100px;z-index:20;background:white;padding:12px}.album-skip:focus{top:10px}
.album-header{max-width:1280px;margin:auto;padding:28px 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--album-line);font-size:12px;letter-spacing:.025em}
.album-brand{font-size:24px;letter-spacing:-1.1px;white-space:nowrap;text-decoration:none!important;font-family:Album Sans,sans-serif;font-weight:400}
.album-brand strong{font-weight:600}.album-brand span{margin-left:7px;font-size:21px;color:var(--album-accent)}
.album-wrap{max-width:1280px;margin:auto;padding:0 40px}.album-eyebrow{font:600 10px/1.5 Album Sans,sans-serif!important;letter-spacing:.19em!important;color:var(--album-accent);margin-bottom:22px!important}
.album-hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:40px;padding:86px 0 96px}
.album-hero-copy{position:relative;z-index:1}.album-hero-title{font-family:Album Serif,Georgia,serif;font-size:30px;line-height:1.15;margin:0 0 22px!important}
.album-welcome{max-width:460px;opacity:.8;font-size:15px}.album-hero-copy .album-button{margin-top:12px}
.album-button{display:inline-flex;align-items:center;justify-content:center;gap:25px;border:1px solid var(--album-accent);border-radius:7px;background:var(--album-accent);color:white!important;text-decoration:none;min-height:48px;padding:12px 24px;font-weight:600;line-height:1.3;text-align:center}
.album-button:hover{filter:brightness(.94)}.album-button.secondary{background:transparent;color:var(--album-ink)!important;border-color:var(--album-line)}
.album-hero-notes{display:flex;flex-wrap:wrap;gap:18px;margin-top:24px;font-size:11px;opacity:.75}.album-hero-notes span+span:before{content:'✦';margin-right:12px;color:var(--album-accent)}
.album-hero-art{position:relative;min-height:440px;isolation:isolate}.album-art-orbit{width:340px;height:340px;max-width:100%;position:absolute;inset:45px auto auto 15%;border:1px solid var(--album-line);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--album-accent) 12%,transparent),transparent 70%)}
.album-polaroid{position:absolute;width:245px;height:315px;background:#fffefb;box-shadow:0 20px 55px #30282020;border:1px solid #ffffff;padding:13px;display:flex;flex-direction:column}
.album-polaroid>div{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--album-accent) 18%,var(--album-paper));font-family:Album Serif,Georgia,serif;font-size:110px;color:var(--album-accent);overflow:hidden}
.album-polaroid-front{top:52px;left:36%;transform:rotate(9deg)}.album-polaroid-front>div{background:linear-gradient(145deg,var(--album-paper),color-mix(in srgb,var(--album-accent) 28%,white))}.album-polaroid-front img{width:100%;height:100%;object-fit:cover}.album-polaroid-front>span{height:40px;text-align:center;padding-top:12px;font-family:Album Serif,Georgia,serif;font-size:17px;color:#554535}
.album-polaroid-back{left:7%;top:8px;transform:rotate(-13deg);z-index:-1}.album-polaroid-back>div{background:linear-gradient(145deg,#f2d5b0,#ac775e);color:white;font-size:125px}
.album-art-star{position:absolute;right:0;top:-30px;font-size:70px;color:var(--album-accent);z-index:1}.album-art-caption{position:absolute;bottom:5px;left:20%;font-family:Album Serif,Georgia,serif;font-size:25px;transform:rotate(-7deg);color:var(--album-accent)}
.album-public.infantiles .album-polaroid-back>div{background:linear-gradient(145deg,#f7ca62,#ed8f6c)}.album-public.quince .album-polaroid-back>div{background:linear-gradient(145deg,#edcbf2,#a674c0)}
.album-upload-card{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px;background:white;border:1px solid var(--album-line);border-radius:20px;padding:46px;box-shadow:0 10px 50px #37260d05}
.album-upload-card>div>p:not(.album-eyebrow){font-size:14px;opacity:.8}.album-privacy{padding-top:22px;border-top:1px solid var(--album-line);font-size:12px!important}
.album-public label:not(.album-consent){display:block;font-size:12px;font-weight:600;margin:0 0 8px}.album-public label small{font-weight:400;font-size:11px;opacity:.75}
.album-public input:not([type=checkbox]):not([type=file]),.album-public textarea,.album-public select{width:100%;padding:12px 14px;background:#fff;border:1px solid var(--album-line);border-radius:6px;color:var(--album-ink);font-size:14px;min-width:0}
.album-public textarea{resize:vertical}.album-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:25px 0 20px}.album-upload-actions{display:flex;flex-wrap:wrap;gap:12px}.album-hint{display:block;font-size:11px;opacity:.72;margin-top:10px}
.album-consent{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.6;margin:18px 0}.album-consent input{flex:none;margin-top:4px;accent-color:var(--album-accent)}.album-send-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.album-send-row p{font-size:12px;margin:0;max-width:260px}
.album-public progress{width:100%;height:5px;accent-color:var(--album-accent);margin-top:20px}.album-selected{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.album-selected:empty{margin:0}.album-selected-item{display:flex;align-items:center;gap:9px;padding:7px;border:1px solid var(--album-line);border-radius:7px;min-width:0}.album-selected-item img{width:44px;height:52px;object-fit:cover;background:var(--album-paper);border-radius:4px}.album-selected-item>div{min-width:0;flex:1}.album-selected-item strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px}.album-selected-item small{display:block;font-size:9px;line-height:1.4}.album-selected-item button{border:0;background:transparent;font-size:21px;padding:4px;color:var(--album-ink)}
.album-memories{padding:85px 0 40px}.album-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:30px}.album-section-title h2{margin-bottom:0}.album-filter-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.album-pill{border:1px solid var(--album-line);background:transparent;border-radius:30px;padding:8px 17px;font-size:12px!important;color:var(--album-ink)}.album-pill.active{background:var(--album-ink);color:white;border-color:var(--album-ink)}
.album-photo-grid{columns:3;column-gap:22px}.album-photo{display:inline-block;vertical-align:top;width:100%;break-inside:avoid;margin:0 0 22px;background:#fff;border:1px solid var(--album-line);border-radius:9px;overflow:hidden}
.album-photo-open{display:block;width:100%;padding:0;background:transparent;border:0}.album-photo-open img{display:block;width:100%;height:auto;min-height:80px;background:#efece6}.album-photo-caption{padding:17px 20px}.album-photo-caption p{font-family:Album Serif,Georgia,serif;font-size:23px;line-height:1.2;margin-bottom:12px;white-space:pre-line}.album-photo-caption>span{font-size:11px}.album-photo-caption small{display:block;font-size:10px;opacity:.6;margin-top:7px}.album-photo-caption .album-favorite-label{display:block;color:var(--album-accent);font-size:10px;font-weight:600;margin-bottom:12px}.album-empty{text-align:center;opacity:.75;padding:35px 10px;font-size:14px}.album-empty:empty{display:none}.album-empty>span{font-size:45px}.album-footer{text-align:center;padding:50px 10px 45px;border-top:1px solid var(--album-line);margin-top:20px}.album-footer>span{font:500 30px Album Serif,Georgia,serif}.album-footer>p{font-size:11px;margin-top:14px;margin-bottom:30px;opacity:.75}
#album-toast{position:fixed;z-index:100;bottom:25px;left:50%;transform:translate(-50%,20px);background:#233c35;color:white;border-radius:10px;padding:14px 24px;max-width:min(90%,600px);box-shadow:0 8px 35px #0002;font-size:13px;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none}#album-toast.show{opacity:1;transform:translate(-50%,0)}
#album-lightbox,.album-manager-lightbox{padding:22px;border:0;background:#fffefb;border-radius:12px;color:#302820;max-width:min(900px,94vw);width:fit-content;max-height:92vh;overflow:auto;box-sizing:border-box}
#album-lightbox::backdrop,.album-manager-lightbox::backdrop{background:#171715cf}#album-lightbox>img,.album-manager-lightbox>img{display:block;max-width:100%;max-height:65vh;width:auto;height:auto;object-fit:contain;margin:auto}#album-lightbox>div{padding-top:20px}.album-lightbox-close{position:sticky;display:block;margin:0 0 10px auto;top:0;background:white;border:1px solid #ddd;border-radius:50%;width:35px;height:35px;cursor:pointer;font-size:24px;line-height:1;color:#302820}.album-lock,.album-loading{max-width:620px;margin:auto;padding:45px 24px;text-align:center}.album-lock-card{margin-top:50px;background:white;padding:40px;border-radius:18px;border:1px solid var(--album-line)}.album-lock h1{font-size:49px}.album-lock-card small{font-size:11px;opacity:.7}.album-lock form{max-width:300px;margin:30px auto;text-align:left}.album-lock form .album-button{width:100%;margin-top:16px}.album-spark{font-size:40px;color:var(--album-accent)}.album-error{font-size:13px;color:#9d302d;margin-top:14px!important}
.album-screen{background:#161b18;color:#fcf6ed}.album-live{min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto;padding:20px 30px;gap:15px}.album-live-top{display:flex;justify-content:space-between;align-items:center;gap:25px}.album-live-top>span{font-family:Album Serif,Georgia,serif;font-size:25px}.album-stage{display:flex;align-items:center;justify-content:center;min-height:200px;height:calc(100dvh - 185px)}.album-stage img{width:100%;height:100%;object-fit:contain;animation:album-appear .8s ease}.album-stage p{font-family:Album Serif,Georgia,serif;font-size:35px;text-align:center;max-width:700px}.album-live-footer{display:flex;justify-content:space-between;align-items:center;gap:20px}.album-live-footer p{font-family:Album Serif,Georgia,serif;font-size:27px;line-height:1.1;margin:0 0 6px;max-width:650px}.album-live-footer small{opacity:.6}.album-live-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;font-size:11px}.album-live-controls button,.album-live-controls a{border:1px solid #ffffff35;border-radius:5px;background:transparent;color:inherit;padding:6px 10px;text-decoration:none}.album-live-controls label{margin:0!important;font-size:10px!important}.album-live-controls select{width:auto!important;background:#222a24!important;color:white!important;font-size:10px!important;padding:5px!important;border-color:#ffffff35!important}.album-live .album-brand span{color:#e3bd7e}
@keyframes album-appear{from{opacity:0}to{opacity:1}}
/* Pantallas privadas: utilizan la tipografía, las cabeceras y los botones del sitio. */
.album-dashboard{padding-top:35px!important;padding-bottom:70px!important}.album-dashboard .back-link{font-size:12px;text-decoration:none;opacity:.8}.album-management-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:28px 0}.album-management-heading h1{font-size:clamp(36px,4.8vw,60px);line-height:1.06;margin-bottom:12px}.album-management-heading p{margin:5px 0}.album-management-mark{font-size:75px;color:#a78964;font-family:Georgia,serif}.album-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px;margin:28px 0}.album-stat-grid>div{background:#fff;border:1px solid #e3e4da;border-radius:12px;padding:22px}.album-stat-grid strong{font-size:24px;font-weight:500;display:block;line-height:1.2}.album-stat-grid span{display:block;font-size:11px;opacity:.72;margin-top:9px}.album-stat-grid>div:last-child strong{font-size:21px}.album-onboarding{max-width:860px;margin:20px auto;text-align:center;padding:45px!important}.album-onboarding>p{max-width:620px;margin:20px auto}.album-onboarding .album-stat-grid strong{font-size:26px}
.album-tabs{display:flex;border-bottom:1px solid #d8ded7;gap:8px;margin:30px 0}.album-tabs button{font:inherit;font-size:13px;border:0;background:transparent;padding:16px 22px;border-bottom:3px solid transparent;color:inherit;cursor:pointer}.album-tabs button.active{border-bottom-color:#285146;font-weight:600}.album-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:25px 0}.album-toolbar label{font-size:12px}.album-toolbar select{display:inline-block;width:auto!important;max-width:100%;margin-left:8px}.album-toolbar form{display:flex;align-items:center;gap:8px}.album-toolbar form input{min-width:0;max-width:260px}.album-toolbar h2{margin:0}.album-batch{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#eaf0e8;padding:14px 18px;border-radius:8px;margin-bottom:25px;font-size:11px}.album-batch label{display:flex;align-items:center;gap:6px;font-size:11px}.album-batch button{background:none;border:0;color:#234e41;text-decoration:underline;cursor:pointer;font:inherit;font-weight:600}.album-batch>span{opacity:.75;margin-right:auto}.album-dashboard input[type=checkbox]{width:16px!important;min-height:16px;accent-color:#285146}.album-owner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.album-owner-photo{position:relative;border:1px solid #dbe0d7;border-radius:10px;overflow:hidden;background:white}.album-select-label{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 14px;background:#fff}.album-photo-status{font-size:10px;padding:3px 10px;border-radius:20px;background:#ecf2eb}.album-photo-status.pending{background:#fff0d6;color:#83530a}.album-photo-status.hidden{background:#ededed;color:#606060}.album-owner-image{width:100%;display:block;border:0;background:#ebe9e1;cursor:pointer;padding:0}.album-owner-image img{display:block;width:100%;height:240px;object-fit:cover}.album-owner-caption{padding:18px}.album-owner-caption>strong{font-size:13px}.album-owner-caption>p{font-size:14px;white-space:pre-line;line-height:1.5;overflow-wrap:anywhere}.album-owner-caption>small{display:block;font-size:10px;opacity:.7;margin:8px 0}.album-photo-actions{display:flex;flex-wrap:wrap;gap:6px 12px;border-top:1px solid #e9ebe7;padding-top:12px;margin-top:14px}.album-photo-actions button,.album-photo-actions a{padding:2px 0;border:0;background:transparent;color:#285146;font:inherit;font-size:11px;cursor:pointer;text-decoration:underline}.album-danger{color:#ad3f36!important}.album-pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin:24px 0;font-size:12px}.album-downloads{margin-top:30px;display:flex;flex-direction:column;gap:15px}.album-downloads p{font-size:13px;max-width:760px}.album-action-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}.album-disabled{opacity:.4;cursor:default;pointer-events:none}.album-share-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:25px;align-items:start}.album-share-layout h2{font-size:36px}.album-share-layout p{font-size:13px}.album-share-layout h3{margin-top:30px}.album-share-layout label{font-size:12px;display:block;margin-top:30px}.album-copy-row{display:flex;gap:8px;margin:10px 0}.album-copy-row input{min-width:0;font-size:12px!important}.album-share-qr{text-align:center;background:#fffaf2!important}.album-share-qr img{display:block;width:100%;height:auto;max-width:320px;margin:auto}.album-share-qr p{font-family:Album Serif,Georgia,serif;font-size:34px;line-height:1.08}.album-share-qr small{display:block;font-size:11px;opacity:.75}.album-rotate{margin-top:25px}.album-rotate p{max-width:800px;font-size:13px}.album-settings{max-width:900px}.album-settings .field small{font-size:11px;opacity:.75;display:block;margin-top:7px}.album-settings-switches{display:grid;gap:15px;margin:28px 0;padding-bottom:25px;border-bottom:1px solid #dce2d8}.album-settings-switches>label{display:flex;align-items:flex-start;gap:15px}.album-settings-switches strong{font-size:14px;display:block}.album-settings-switches small{font-size:12px;display:block;opacity:.75;font-weight:400}.album-checkbox{display:flex!important;align-items:center;gap:10px;font-size:13px!important;margin:14px 0}.album-admin-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:25px;align-items:start}.album-admin-layout aside p{font-size:13px}.album-admin-layout h3{margin-top:20px}.album-capacity{display:block;width:100%;height:8px;accent-color:#285146}.album-admin-list{margin-top:25px}.album-table-email{display:block;font-size:11px;opacity:.7;margin-top:8px}.album-health{padding-left:0;list-style:none;font-size:12px;line-height:2}.album-manager-lightbox p{font-size:16px;white-space:pre-line}.album-dashboard .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.album-public .album-hero{padding-top:110px;padding-bottom:120px}}
@media(max-width:1050px){.album-hero{gap:20px;grid-template-columns:1fr 1fr}.album-polaroid{width:195px;height:260px}.album-hero-art{min-height:370px}.album-polaroid-front{left:35%}.album-art-orbit{width:280px;height:280px}.album-upload-card{gap:30px;padding:30px;grid-template-columns:.7fr 1fr}.album-owner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.album-share-layout{grid-template-columns:1.35fr 1fr}.album-admin-layout{grid-template-columns:1.3fr 1fr}.album-live-footer{flex-direction:column;text-align:center}.album-stage{height:calc(100dvh - 220px)}.album-live-controls{justify-content:center}}
@media(max-width:760px){.album-header{padding:20px 24px}.album-header>span{font-size:10px;max-width:100px;text-align:right}.album-brand{font-size:22px}.album-wrap{padding:0 24px}.album-hero{grid-template-columns:1fr;padding:50px 0 45px;gap:10px}.album-hero-copy{max-width:560px}.album-hero h1{font-size:64px}.album-hero-art{min-height:330px;width:360px;max-width:100%;justify-self:center;margin-top:25px}.album-art-star{font-size:55px;top:-15px}.album-art-caption{bottom:-3px}.album-polaroid-front{top:35px}.album-polaroid-back{top:5px}.album-art-orbit{top:25px}.album-upload-card{grid-template-columns:1fr;gap:18px;padding:26px;border-radius:13px}.album-upload-card h2{margin-bottom:18px}.album-privacy{padding-top:14px;margin-bottom:0!important}.album-form-row{grid-template-columns:1fr;gap:16px}.album-selected{grid-template-columns:1fr}.album-upload-actions{gap:9px}.album-upload-actions .album-button{font-size:12px;padding:12px 15px;flex:1}.album-memories{padding-top:55px}.album-section-title{display:block;margin-bottom:25px}.album-section-title .album-filter-row{margin-top:22px}.album-photo-grid{columns:2;column-gap:13px}.album-photo{margin-bottom:13px}.album-photo-caption{padding:12px}.album-photo-caption p{font-size:20px}.album-photo-caption>span{font-size:10px}.album-photo-caption small{font-size:9px}.album-footer>span{font-size:26px}.album-management-mark{display:none}.album-stat-grid{grid-template-columns:1fr 1fr}.album-stat-grid>div{padding:18px}.album-stat-grid strong,.album-stat-grid>div:last-child strong{font-size:20px}.album-share-layout,.album-admin-layout{grid-template-columns:1fr}.album-share-qr{max-width:400px;width:100%;margin:auto}.album-tabs{gap:0}.album-tabs button{padding:15px;font-size:12px}.album-copy-row{flex-wrap:wrap}.album-copy-row input{flex:1;min-width:160px}.album-owner-image img{height:190px}.album-owner-caption{padding:13px}.album-batch{gap:10px;padding:12px}.album-toolbar select{max-width:200px}.album-onboarding{padding:25px!important}.album-live{padding:14px;gap:8px}.album-live-top>span{font-size:18px;text-align:right}.album-live-top .album-brand{font-size:17px}.album-live-top .album-brand span{font-size:16px}.album-live-footer p{font-size:23px}.album-stage{height:calc(100dvh - 250px)}}
@media(max-width:400px){.album-wrap{padding:0 16px}.album-hero h1{font-size:55px}.album-upload-card{padding:20px}.album-photo-grid{columns:1}.album-owner-grid{grid-template-columns:1fr}.album-hero-art{width:310px}.album-polaroid{width:177px;height:242px}.album-live-controls button,.album-live-controls a{padding:5px 7px}}
@media(prefers-reduced-motion:reduce){.album-public *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
