@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#242722;background:#f7f7f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;font-weight:400;--ink: #242722;--muted: #898d84;--line: #e9eae5;--green: #374d3f;--lime: #d8ed7e}*{box-sizing:border-box}body{min-width:360px;min-height:100vh;margin:0}button,a{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #a0c84e;outline-offset:3px}button:disabled{cursor:wait;opacity:.7}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:5;display:flex;flex-direction:column;width:246px;padding:32px 19px 18px;background:#fff;border-right:1px solid #efefec}.brand{display:flex;align-items:center;gap:10px;width:fit-content;margin:0 0 62px 9px;color:var(--ink);text-decoration:none}.brand-mark{display:grid;grid-template-columns:repeat(2,9px);gap:3px;transform:rotate(-7deg)}.brand-mark span{width:9px;height:9px;border-radius:3px;background:#506f55}.brand-mark span:nth-child(2){background:#c6d883;border-radius:50% 50% 4px}.brand-mark span:nth-child(3){background:#efb995;border-radius:50% 4px 50% 50%}.brand-mark span:nth-child(4){background:#e0d8bc}.brand-name{font-family:Manrope,sans-serif;font-size:20px;font-weight:800;letter-spacing:-1.1px}.brand-name>span{color:#98b655}.sidebar-label{padding-left:11px;color:#a2a49e;font-size:9px;font-weight:700;letter-spacing:1.45px}.main-nav{display:grid;gap:6px;margin-top:15px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:11px;border:0;border-radius:9px;background:transparent;color:#747970;cursor:pointer;text-align:left;font-size:13px;transition:background .2s,color .2s}.nav-item:hover{background:#f6f7f3;color:var(--ink)}.nav-item.active{background:#f0f3e9;color:#334b39;font-weight:600}.nav-count{margin-left:auto;color:#9a9d95;font-size:11px;font-weight:500}.sidebar-note{position:relative;margin-top:auto;padding:16px 14px 14px;border:1px solid #edeee8;border-radius:11px;background:#fafbf8}.note-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:#edf2dd;color:#577048}.sidebar-note p{max-width:145px;margin:12px 0 15px;color:#454a42;font-size:12px;line-height:1.55}.note-caption{color:#a0a39a;font-size:8px;font-weight:700;letter-spacing:1px}.sidebar-profile{display:flex;align-items:center;gap:10px;margin-top:17px;padding:14px 4px 0;border-top:1px solid #efefec}.profile-avatar,.topbar-avatar{display:grid;flex:0 0 auto;place-items:center;width:34px;height:34px;border-radius:50%;background:#e9dfd1;color:#6c5849;font-family:Manrope,sans-serif;font-weight:700}.profile-copy{display:grid;gap:3px;font-size:11px}.profile-copy strong{font-size:11px;font-weight:600}.profile-copy span{color:#92958d;font-size:10px}.online-dot,.local-badge>span,.demo-label>span{width:7px;height:7px;border-radius:50%;background:#8eaa66}.online-dot{margin-left:auto}.main-content{min-height:100vh;margin-left:246px}.topbar{position:sticky;top:0;z-index:4;display:flex;height:70px;align-items:center;justify-content:space-between;padding:0 48px;border-bottom:1px solid #eeefeb;background:#f7f7f5ed;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.breadcrumb{display:flex;align-items:center;gap:9px;color:#999c94;font-size:11px}.breadcrumb strong{color:#444840;font-size:11px;font-weight:600}.topbar-right{display:flex;align-items:center;gap:19px}.local-badge{display:flex;align-items:center;gap:7px;color:#777d71;font-size:10px}.local-badge>span{width:6px;height:6px}.topbar-avatar{width:31px;height:31px;font-size:12px}.page-content{max-width:1320px;min-height:calc(100vh - 70px);margin:0 auto;padding:37px 48px 20px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:28px}.eyebrow{margin:0 0 8px;color:#8c9c71;font-size:9px;font-weight:700;letter-spacing:1.4px}h1,h2,p{margin-top:0}h1{margin:0;font-family:Manrope,sans-serif;font-size:clamp(34px,4vw,43px);font-weight:600;letter-spacing:-2px;line-height:1.18}.heading-period{color:#a1b56b}.page-subtitle{margin:9px 0 0;color:#898d84;font-size:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:7px;cursor:pointer;font-size:11px;font-weight:600;transition:transform .2s,background .2s}.button:hover{transform:translateY(-1px)}.button-dark{min-height:39px;padding:0 14px;background:#344b3d;color:#fff}.button-dark:hover{background:#273b30}.album-import-actions{display:flex;align-items:center;gap:8px}.welcome-banner{position:relative;display:flex;min-height:239px;overflow:hidden;align-items:center;justify-content:space-between;padding:28px 43px;border-radius:12px;background:#31483b;color:#fff}.banner-copy{position:relative;z-index:2}.banner-kicker{display:inline-flex;align-items:center;gap:7px;color:#d9e7ba;font-size:8px;font-weight:700;letter-spacing:1.3px}.banner-kicker svg{color:#d2e77e}.banner-copy h2{margin:12px 0 7px;font-family:Manrope,sans-serif;font-size:28px;font-weight:500;letter-spacing:-1.15px;line-height:1.24}.banner-copy>p{margin-bottom:17px;color:#d0d6cd;font-size:10px}.button-lime{min-height:34px;padding:0 12px;background:var(--lime);color:#2e3c2f;font-size:10px}.button-lime:hover{background:#e2f397}.banner-art{position:absolute;top:0;right:3%;bottom:0;left:46%}.banner-photo{position:absolute;width:141px;height:178px;overflow:hidden;border:5px solid #fff;border-radius:7px;background:#d8d4c9;box-shadow:0 14px 34px #15241e4d}.banner-photo img{width:100%;height:100%;object-fit:cover}.banner-photo-back{top:32px;right:24%;transform:rotate(10deg);opacity:.92}.banner-photo-mid{top:21px;right:10%;transform:rotate(5deg)}.banner-photo-front{top:38px;right:14%;width:154px;height:173px;transform:rotate(-7deg)}.banner-photo-front img{object-position:center 42%}.banner-sparkle{position:absolute;color:#d2e77e;font-size:21px}.sparkle-one{top:29px;right:4%}.sparkle-two{right:45%;bottom:36px;color:#f0b995;font-size:16px}.banner-doodle{position:absolute;top:29px;left:31%;color:#d9e6b2;font-family:Georgia,serif;font-size:32px;transform:rotate(-15deg)}.banner-index{position:absolute;right:20px;bottom:17px;color:#ffffff8c;font-size:8px;letter-spacing:.8px}.stats-row{display:flex;min-height:93px;align-items:center;gap:25px;padding:17px 2px 16px;border-bottom:1px solid var(--line)}.stat-block{display:grid;min-width:104px;gap:3px}.stat-label{color:#92968d;font-size:8px;font-weight:700;letter-spacing:1.1px}.stat-block strong{font-family:Manrope,sans-serif;font-size:21px;font-weight:600;letter-spacing:-.7px}.stat-hint{color:#92968d;font-size:9px}.stat-divider{width:1px;height:38px;background:#e8e9e4}.stats-aside{display:flex;align-items:center;gap:8px;margin-left:auto;color:#85897e;font-size:9px}.stats-aside svg{color:#94a777}.error-message{margin:15px 0 0;padding:11px 14px;border:1px solid #efcccc;border-radius:7px;background:#fff5f4;color:#9b3939;font-size:11px}.success-message{margin:15px 0 0;padding:11px 14px;border:1px solid #e1e8d3;border-radius:7px;background:#f1f5e9;color:#536742;font-size:11px;line-height:1.5}.gallery-section{padding-top:25px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:16px}.section-title-row{display:flex;align-items:center;gap:9px}.section-title-row h2{margin:0;font-family:Manrope,sans-serif;font-size:16px;font-weight:600;letter-spacing:-.45px}.section-count{display:inline-grid;min-width:22px;height:19px;place-items:center;padding:0 6px;border-radius:20px;background:#edeee9;color:#74796f;font-size:9px}.section-heading p{margin:5px 0 0;color:#92958d;font-size:10px}.analysis-action{display:flex;align-items:center;gap:12px;margin:-5px 0 16px}.analyze-button{min-height:40px;padding:0 15px;font-size:11px;white-space:nowrap}.analyze-button:disabled{cursor:wait;opacity:.75}.analysis-progress{color:#74796f;font-size:10px}.text-button{display:inline-flex;align-items:center;gap:5px;padding:0 0 2px;border:0;background:none;color:#5b7052;cursor:pointer;font-size:10px;font-weight:600}.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.photo-tile{position:relative;min-width:0;overflow:hidden;aspect-ratio:1.16 / 1;border-radius:7px;background:#e5e6df}.photo-tile:after{position:absolute;top:45%;right:0;bottom:0;left:0;background:linear-gradient(transparent,#1118);content:"";opacity:0;transition:opacity .2s}.photo-tile:hover:after{opacity:1}.photo-tile>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.photo-tile:hover>img{transform:scale(1.04)}.photo-caption{position:absolute;z-index:1;right:10px;bottom:9px;left:10px;display:flex;align-items:center;gap:5px;overflow:hidden;color:#fff;font-size:9px;opacity:0;text-overflow:ellipsis;white-space:nowrap;transition:opacity .2s}.photo-tile:hover .photo-caption{opacity:1}.photo-tile-interactive{cursor:zoom-in}.photo-tile-interactive:focus-visible{outline:3px solid #a0c84e;outline-offset:3px}.caption-dot{flex:0 0 auto;width:3px;height:3px;border-radius:50%;background:#ffffffba}.page-footer{display:flex;justify-content:space-between;padding:24px 0 2px;color:#a2a59e;font-size:8px;letter-spacing:.4px}.page-footer>span:first-child{font-size:7px;font-weight:700;letter-spacing:1.1px}.footer-dot{color:#a1b56b}.demo-label{display:flex;align-items:center;gap:7px;margin-bottom:7px;padding:7px 9px;border:1px solid #e5e8df;border-radius:20px;color:#74796f;font-size:8px;font-weight:700;letter-spacing:.8px}.demo-label>span{width:6px;height:6px}.people-intro{display:flex;align-items:center;gap:13px;margin:3px 0 24px;padding:15px 17px;border:1px solid #e8eadf;border-radius:9px;background:#f2f4ec}.intro-icon{display:grid;flex:0 0 auto;place-items:center;width:38px;height:38px;border-radius:10px;background:#e4ebd2;color:#647c4e}.people-intro strong{color:#3b4837;font-size:11px;font-weight:600}.people-intro p{margin:4px 0 0;color:#82877c;font-size:10px;line-height:1.5}.people-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.person-card{min-width:0;padding:0;border:0;background:none;cursor:pointer;text-align:left}.person-portrait-wrap{position:relative;overflow:hidden;aspect-ratio:.91 / 1;border-radius:8px;background:#e7e6df}.person-portrait{width:100%;height:100%;object-fit:cover;transition:transform .4s}.person-card:hover .person-portrait{transform:scale(1.045)}.person-open{position:absolute;right:10px;bottom:10px;display:grid;width:31px;height:31px;place-items:center;border-radius:50%;background:#fffffff0;color:#364a3a;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s}.person-card:hover .person-open,.person-card:focus-visible .person-open{opacity:1;transform:translateY(0)}.person-card-info{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:11px 1px 0}.person-name{overflow:hidden;font-family:Manrope,sans-serif;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.person-count{color:#95998f;font-size:9px;white-space:nowrap}.coming-card{display:flex;align-items:center;gap:12px;margin-top:29px;padding:14px 16px;border:1px dashed #dedfd8;border-radius:9px}.coming-symbol{display:grid;flex:0 0 auto;place-items:center;width:35px;height:35px;border-radius:9px;background:#efefe9;color:#848a7c}.coming-card>div:nth-child(2){display:grid;gap:3px}.coming-card strong{color:#565b51;font-size:10px;font-weight:600}.coming-card>div:nth-child(2)>span{color:#999c94;font-size:9px}.coming-tag{margin-left:auto;padding:5px 7px;border-radius:4px;background:#f0f1eb;color:#92968d;font-size:7px;font-weight:700;letter-spacing:.7px}.person-detail{padding-top:1px}.back-button{display:inline-flex;align-items:center;gap:8px;margin:0 0 19px;padding:0;border:0;background:transparent;color:#70776a;cursor:pointer;font-size:10px}.back-button:hover{color:#344b3d}.back-arrow{font-size:18px;line-height:1}.person-detail-header{position:relative;display:flex;align-items:center;gap:25px;min-height:203px;overflow:hidden;padding:25px 32px;border-radius:12px;background:#edf0e7}.person-detail-header>img{width:126px;height:148px;border-radius:8px;object-fit:cover}.person-detail-copy h1{font-size:34px}.person-detail-copy>p:not(.eyebrow){margin:7px 0 12px;color:#73796e;font-size:11px}.person-detail-copy .eyebrow{margin-bottom:4px}.detail-count{display:inline-flex;padding:6px 9px;border-radius:20px;background:#fff;color:#73796e;font-size:9px}.rename-button{width:fit-content;margin:5px 0 2px}.rename-form{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:5px 0 2px}.rename-form input{width:min(190px,40vw);min-height:30px;padding:0 8px;border:1px solid #daddd2;border-radius:6px;background:#fff;color:var(--ink);font:inherit;font-size:11px}.rename-cancel{margin:0;font-size:10px}.detail-heart{position:absolute;right:36px;bottom:10px;color:#dae1cc;font-family:Georgia,serif;font-size:111px;line-height:1;transform:rotate(-12deg)}.detail-section-heading{margin:27px 0 15px}.detail-download-action{display:flex;align-items:center;gap:11px;margin:0 0 15px}.detail-download-action>span{color:#74796f;font-size:10px}.detail-delete-action{margin:0 0 18px}.danger-button{padding:8px 0;border:0;background:transparent;color:#a34f48;cursor:pointer;font-size:10px;font-weight:600}.danger-button:hover{color:#80342e}.delete-confirmation{max-width:560px;padding:15px;border:1px solid #efd4d1;border-radius:9px;background:#fff9f8}.delete-confirmation>strong{color:#613b38;font-size:11px}.delete-confirmation>p{margin:6px 0 10px;color:#806d69;font-size:10px;line-height:1.5}.delete-confirmation-actions{display:flex;align-items:center;gap:16px}.delete-confirmation-actions .back-button{margin:0}.danger-button-solid{padding:8px 11px;border-radius:6px;background:#a34f48;color:#fff}.danger-button-solid:hover{background:#80342e;color:#fff}.person-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-footnote{display:flex;align-items:center;gap:8px;margin-top:19px;color:#90958a;font-size:9px}.demo-footnote svg{color:#96a976}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}.photo-preview{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:28px}.photo-preview-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;background:#111d;cursor:default}.photo-preview-panel{position:relative;z-index:1;display:flex;width:min(100%,1100px);max-height:100%;flex-direction:column;overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 22px 70px #0005}.photo-preview-toolbar{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px 9px 18px}.photo-preview-toolbar>strong{overflow:hidden;font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.photo-preview-toolbar>div{display:flex;flex:0 0 auto;align-items:center;gap:9px}.photo-preview-close{display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:50%;background:#f1f2ee;color:#42483f;cursor:pointer;font-size:25px;line-height:1}.photo-preview-panel>img{display:block;width:100%;min-height:0;max-height:calc(100vh - 130px);flex:1;object-fit:contain;background:#171917}.shared-admin-form{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 20px;padding:15px;border:1px solid var(--line);border-radius:9px;background:#fff}.shared-admin-form label{color:#555b50;font-size:11px;font-weight:600}.shared-admin-form input{min-width:0;height:36px;flex:1;padding:0 10px;border:1px solid #dfe2d8;border-radius:6px}.shared-admin-form .error-message{flex-basis:100%;margin:0}.album-delete-action{margin:15px 0}.person-portrait-placeholder{display:grid;width:100%;height:100%;place-items:center;background:#e9eee2;color:#81916c}.person-detail-placeholder{display:grid;width:146px;height:168px;flex:0 0 auto;place-items:center;border-radius:8px;background:#e9eee2;color:#81916c}.flow-steps{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}.flow-steps li{display:flex;flex:1 1 150px;flex-wrap:wrap;align-items:center;gap:4px 7px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#555b50;font-size:11px;font-weight:600}.flow-steps li>span{display:grid;width:20px;height:20px;place-items:center;border-radius:50%;background:#f1f2ee;color:var(--muted);font-size:10px}.flow-steps li>small{flex-basis:100%;padding-left:27px;color:var(--muted);font-size:10px;font-weight:400}.flow-steps li.done{border-color:#dbe7c3;background:#f6f9ef}.flow-steps li.done>span{background:var(--lime);color:var(--green)}.flow-step-link{padding:0;border:0;background:none;color:inherit;cursor:pointer;font:inherit;text-decoration:underline;text-underline-offset:2px}.publish-panel{display:grid;gap:10px;margin:0 0 22px}.publish-step{display:flex;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:9px;background:#fff}.publish-step-number{display:grid;width:26px;height:26px;flex:0 0 auto;place-items:center;border-radius:50%;background:var(--lime);color:var(--green);font-size:12px;font-weight:700}.publish-step-body{min-width:0;flex:1}.publish-step-body>strong{color:var(--ink);font-size:13px}.publish-step-body>p{margin:4px 0 10px;color:var(--muted);font-size:11px;line-height:1.5}.publish-step-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.publish-project-field{display:flex;align-items:center;gap:6px;color:#555b50;font-size:11px;font-weight:600}.publish-project-field input{width:190px;max-width:100%;height:36px;padding:0 10px;border:1px solid #dfe2d8;border-radius:6px;font:inherit;font-weight:400}.publish-project-suffix{color:var(--muted);font-weight:400}.publish-hint{margin:8px 0 0!important}.publish-instructions{margin:0 0 12px;padding-left:18px;color:#555b50;font-size:11px;line-height:1.7}.publish-instructions code{padding:1px 4px;border-radius:4px;background:#f1f2ee;font-size:10px}a.button{text-decoration:none}.publish-error{white-space:pre-wrap}.publish-link a{color:var(--green);font-weight:700;word-break:break-all}.correction-panel{margin:0 0 14px}.correction-panel>p{margin:8px 0;color:var(--muted);font-size:11px}.correction-merge{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.correction-merge select,.move-photo-select{max-width:100%;height:34px;padding:0 8px;border:1px solid #dfe2d8;border-radius:6px;background:#fff;font:inherit;font-size:11px}.person-photo-cell{display:flex;min-width:0;flex-direction:column;gap:6px}.move-photo-select{width:100%}@media(min-width:1500px){.page-content{padding-top:42px}.welcome-banner{min-height:255px}.photo-grid{gap:15px}}@media(max-width:1100px){.sidebar{width:220px}.main-content{margin-left:220px}.topbar{padding:0 32px}.page-content{padding-right:32px;padding-left:32px}.banner-art{right:-4%;left:43%}.photo-grid,.people-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.sidebar{inset:auto 0 0;flex-direction:row;width:auto;height:65px;align-items:center;justify-content:center;padding:5px 12px max(5px,env(safe-area-inset-bottom));border-top:1px solid #eceee8;border-right:0}.brand,.sidebar-label,.sidebar-note,.sidebar-profile{display:none}.main-nav{display:flex;width:min(440px,100%);justify-content:center;gap:10px;margin:0}.nav-item{flex:1;justify-content:center;gap:8px;width:auto;padding:11px 8px;font-size:11px}.nav-count{margin-left:0}.main-content{margin-left:0;padding-bottom:65px}.topbar{height:57px;padding:0 21px}.page-content{min-height:calc(100vh - 122px);padding:29px 21px 17px}.page-heading{margin-bottom:22px}.welcome-banner{min-height:225px;padding:25px}.banner-art{right:-16%;left:42%;opacity:.82}.banner-photo{width:116px;height:155px}.banner-photo-front{width:126px;height:152px}.banner-photo-back{right:23%}.banner-photo-mid{right:9%}.banner-doodle{left:22%}.banner-index{right:12px;bottom:10px}.stats-row{gap:18px}.stats-aside{max-width:145px;line-height:1.45}.photo-grid,.people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.person-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coming-card{margin-top:24px}}@media(max-width:480px){body{min-width:320px}.topbar{padding:0 16px}.local-badge{font-size:0;gap:0}.local-badge>span{width:8px;height:8px}.topbar-right{gap:12px}.shared-admin-form{align-items:stretch;flex-direction:column}.shared-admin-form .button-dark{align-self:flex-start}.person-detail-placeholder{width:104px;height:132px}.page-content{padding:25px 16px 16px}.page-heading{align-items:flex-start;gap:12px}h1{font-size:35px}.album-heading{align-items:center}.album-heading .page-subtitle{max-width:220px;font-size:10px;line-height:1.5}.album-heading .button-dark{flex:0 0 auto;width:37px;min-width:37px;height:37px;padding:0;overflow:hidden;font-size:0;gap:0}.album-heading .button-dark svg{flex:0 0 auto}.welcome-banner{min-height:235px;padding:23px 19px}.banner-copy h2{font-size:24px}.banner-copy>p{max-width:195px;font-size:9px;line-height:1.5}.banner-art{right:-32%;left:39%;opacity:.57}.banner-photo-back{right:18%}.banner-photo-mid{right:4%}.banner-photo-front{right:8%}.banner-sparkle,.banner-doodle{display:none}.stats-row{min-height:83px;gap:12px}.stat-block{min-width:81px}.stats-aside{max-width:102px;font-size:8px}.stats-aside svg{flex:0 0 auto}.gallery-section{padding-top:21px}.section-heading p{max-width:240px;font-size:9px;line-height:1.5}.analysis-action{align-items:stretch;flex-direction:column;gap:8px}.analyze-button{width:100%;white-space:normal}.analysis-progress{text-align:center}.text-button{font-size:0}.text-button svg{width:19px;height:19px}.photo-grid{gap:9px}.photo-tile{aspect-ratio:1 / 1}.people-intro{align-items:flex-start;padding:13px}.person-portrait-wrap{aspect-ratio:.83 / 1}.demo-label{font-size:7px}.person-detail-header{gap:17px;min-height:173px;padding:17px}.person-detail-header>img{width:104px;height:132px}.person-detail-copy h1{font-size:28px}.detail-heart{right:8px;bottom:2px;font-size:78px}.detail-download-action{align-items:flex-start;flex-direction:column}.delete-confirmation-actions{align-items:flex-start;flex-direction:column;gap:8px}.person-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-preview{padding:10px}.photo-preview-toolbar{padding-left:10px}.photo-preview-toolbar .button{min-height:34px;padding:0 9px;font-size:10px}.photo-preview-panel>img{max-height:calc(100vh - 100px)}.page-footer{gap:10px;font-size:7px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
