/* Topic-specific pricing icons and account-backed project photo presentation. */
#about .aboutBlock h3.iconTitle{display:flex!important;align-items:center!important;gap:12px!important;}
#about .aboutTopicIcon::before{display:none!important;content:none!important;}
#about .aboutTopicIcon svg{width:23px;height:23px;display:block;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;}
#about .aboutTopicIcon svg .fill{fill:currentColor;stroke:none;}

.projectPhotoField{margin:0;padding:18px;border:0;border-radius:0;background:transparent;}
.projectPhotoControl{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;align-items:center;}
.projectPhotoPreview{position:relative;display:grid;place-items:center;aspect-ratio:1/1;overflow:hidden;border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--edge-soft));border-radius:14px;background:color-mix(in srgb,var(--surface-input) 88%,var(--accent) 12%);}
.projectPhotoPreview img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;display:block;background:var(--surface-input);}
.projectPhotoPreview img[hidden]{display:none!important;}
.projectPhotoPlaceholder{display:grid;place-items:center;color:var(--muted);}
.projectPhotoPlaceholder svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linejoin:round;}
.projectPhotoActions{min-width:0;}
.projectPhotoButtons{display:flex;gap:9px;flex-wrap:wrap;}
.projectPhotoButtons .btn{padding:10px 13px;font-size:.8rem;}
.projectPhotoStatus{margin:8px 0 0;color:var(--muted);font-size:.76rem;line-height:1.45;}
.projectPhotoAltField{margin-top:12px;}
.projectPhotoAltField p{margin:6px 0 0;color:var(--muted);font-size:.72rem;}
.projectPhotoAltField input{font-size:.9rem;}
body.signed-out .projectPhotoField{border-style:dashed;}
body.signed-out #projectPhotoChoose{border-color:color-mix(in srgb,var(--accent) 42%,var(--edge-soft))!important;}


body.projectPhotoEditorOpen{overflow:hidden}.projectPhotoEditor{position:fixed;z-index:9500;inset:0;display:grid;place-items:center;padding:clamp(12px,3vw,32px);background:color-mix(in srgb,var(--bg) 74%,rgba(0,0,0,.75));backdrop-filter:blur(14px)}.projectPhotoEditor[hidden]{display:none}.projectPhotoEditorPanel{width:min(980px,100%);max-height:94vh;overflow:auto;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--line));border-radius:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 7%,var(--surface-main)),var(--surface-main));box-shadow:0 28px 90px rgba(0,0,0,.48)}.projectPhotoEditorPanel>header{position:sticky;z-index:3;top:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-raised) 94%,transparent);backdrop-filter:blur(12px)}.projectPhotoEditorPanel>header span{display:block;color:var(--accent2);font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.projectPhotoEditorPanel>header h2{margin:2px 0 0;color:var(--text);font-size:1.15rem}.projectPhotoEditorClose{width:42px;height:42px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--surface-input);color:var(--text);font-size:1.7rem;line-height:1;cursor:pointer}.projectPhotoEditorPanel .projectPhotoControl{grid-template-columns:1fr;align-items:stretch;gap:16px}.projectPhotoEditorPanel .projectPhotoPreview{--photo-preview-inset:clamp(8px,1.8vw,18px);width:100%;height:min(60vh,560px);aspect-ratio:auto;padding:0;border-style:solid}.projectPhotoEditorPanel .projectPhotoPreview img{position:absolute!important;inset:var(--photo-preview-inset)!important;display:block!important;width:calc(100% - (var(--photo-preview-inset) * 2))!important;height:calc(100% - (var(--photo-preview-inset) * 2))!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:center!important}.projectPhotoEditorPanel .projectPhotoActions{align-self:stretch}.projectPhotoEditorPanel .projectPhotoButtons{display:flex;flex-wrap:wrap;gap:10px}.projectPhotoEditorPanel .projectPhotoButtons .btn{flex:1 1 220px}.projectPhotoEditorPanel .projectPhotoAltField{margin-top:16px}

.selectedProjectCard.hasProjectPhoto{display:grid;grid-template-columns:200px minmax(0,1fr);column-gap:18px;align-items:start;}
.selectedProjectCard.hasProjectPhoto>.projectPhotoSavedMedia{grid-column:1;grid-row:1/span 8;margin:0;}
.selectedProjectCard.hasProjectPhoto>:not(.projectPhotoSavedMedia){grid-column:2;}
.selectedProjectCard.hasProjectPhoto>.projectUseSnapshot{margin-top:0;}
.projectPhotoSavedMedia{overflow:hidden;border:1px solid var(--edge-soft);border-radius:15px;background:var(--surface-input);box-shadow:var(--elevation-1);}
.projectPhotoSavedTitle{margin:0!important;padding:11px 10px 9px;color:var(--text);font-size:.96rem!important;text-align:center;border-bottom:1px solid var(--edge-soft);background:var(--surface-raised)}.projectPhotoSavedMedia img{display:block;width:100%;height:100%;aspect-ratio:1/1;object-fit:cover!important;object-position:center!important;background:var(--surface-input);}
.projectPhotoSavedMedia figcaption{padding:7px 9px;color:var(--muted);font-size:.68rem;font-weight:800;text-align:center;}
.projectPhotoSavedPlaceholder{display:grid;place-items:center;width:100%;aspect-ratio:1/1;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-input) 82%,var(--accent) 18%),color-mix(in srgb,var(--surface-raised) 90%,var(--accent2) 10%));color:color-mix(in srgb,var(--accent2) 72%,var(--text) 28%)}.projectPhotoEmptyArt{display:block;width:76%;height:76%;background:currentColor;opacity:.72;-webkit-mask:url("images/no-project.svg") center/contain no-repeat;mask:url("images/no-project.svg") center/contain no-repeat;filter:drop-shadow(0 10px 18px color-mix(in srgb,var(--accent) 20%,transparent))}.projectPhotoOptions{width:calc(100% - 20px);margin:2px 10px 10px;padding:9px 10px!important;font-size:.76rem!important}.projectResetText{grid-column:2;justify-self:end;align-self:end;margin:8px 2px 0;padding:3px 0;border:0;background:transparent;color:var(--accent2);font:800 .72rem/1.2 var(--app-font,system-ui);cursor:pointer}.projectResetText:hover,.projectResetText:focus-visible{color:var(--accent);text-decoration:underline;text-underline-offset:3px;outline:none}
.projectPhotoOpen{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;color:#fff;cursor:zoom-in}.projectPhotoOpen span{position:absolute;right:9px;bottom:9px;padding:5px 8px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(0,0,0,.64);font-size:.62rem;font-weight:800;opacity:0;transform:translateY(3px);transition:.16s ease;backdrop-filter:blur(8px)}.projectPhotoOpen:hover span,.projectPhotoOpen:focus-visible span{opacity:1;transform:none}.projectPhotoOpen:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:-3px}

body.projectPhotoLightboxOpen{overflow:hidden}.projectPhotoLightbox{position:fixed;z-index:10000;inset:0;display:grid;place-items:center;padding:clamp(12px,3vw,30px);background:color-mix(in srgb,var(--bg) 76%,rgba(0,0,0,.78));backdrop-filter:blur(14px)}.projectPhotoLightbox[hidden]{display:none}.projectPhotoLightboxPanel{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(1120px,100%);height:min(900px,100%);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 58%,var(--line));border-radius:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 7%,var(--surface-main)),var(--surface-main));box-shadow:0 28px 90px rgba(0,0,0,.52)}.projectPhotoLightboxPanel header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid var(--line);background:var(--surface-raised)}.projectPhotoLightboxPanel header span{display:block;color:var(--accent2);font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.projectPhotoLightboxPanel h2{margin:2px 0 0;color:var(--text);font-size:1.15rem}.projectPhotoLightboxClose{width:42px;height:42px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--surface-input);color:var(--text);font-size:1.7rem;line-height:1;cursor:pointer}.projectPhotoLightboxStage{display:grid;place-items:center;min-height:0;padding:18px;background:color-mix(in srgb,var(--surface-input) 88%,#000 12%)}.projectPhotoLightboxStage img{display:block;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 16px 32px rgba(0,0,0,.3))}.projectPhotoLightboxPanel footer{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding:14px 18px;border-top:1px solid var(--line);background:var(--surface-raised)}

body.theme-light .projectPhotoField{background:transparent!important;}
body.theme-light .projectPhotoPreview{background:color-mix(in srgb,#fff 82%,var(--accent) 18%);}

@media(max-width:620px){
  .projectPhotoControl{grid-template-columns:88px minmax(0,1fr);gap:11px;}
  .projectPhotoButtons{display:grid;grid-template-columns:1fr;}
  .projectPhotoButtons .btn{width:100%;}
  .selectedProjectCard.hasProjectPhoto{grid-template-columns:1fr;}
  .selectedProjectCard.hasProjectPhoto>.projectPhotoSavedMedia,.selectedProjectCard.hasProjectPhoto>:not(.projectPhotoSavedMedia){grid-column:1;grid-row:auto;}
  .selectedProjectCard.hasProjectPhoto>.projectPhotoSavedMedia{margin-bottom:12px;}
  .projectPhotoSavedMedia img{aspect-ratio:1/1;}
  .projectPhotoOpen span{opacity:1;transform:none}.projectPhotoLightbox{padding:0}.projectPhotoLightboxPanel{width:100%;height:100%;border:0;border-radius:0}.projectPhotoLightboxStage{padding:10px}.projectPhotoLightboxPanel footer{display:grid;grid-template-columns:1fr 1fr}.projectPhotoLightboxPanel footer .btn{width:100%}.projectPhotoLightboxDone{grid-column:1/-1}
  .projectPhotoEditor{padding:0}.projectPhotoEditorPanel{width:100%;height:100%;max-height:none;border:0;border-radius:0}.projectPhotoEditorPanel .projectPhotoControl{grid-template-columns:1fr}.projectPhotoEditorPanel .projectPhotoPreview{height:min(48vh,420px)}.projectPhotoEditorPanel .projectPhotoActions{width:100%}
}
