:root{font-family:system-ui,sans-serif;color:#332a24;background:#f4f0e9;font-size:16px}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 5%;background:#fffdf9;border-bottom:1px solid #ded5c8;flex-wrap:wrap}header a{color:inherit;text-decoration:none;font-weight:700}header nav{display:flex;align-items:center;gap:16px}main{max-width:1150px;margin:32px auto;padding:0 20px}h1{font-size:28px;margin:0 0 10px}h2{font-size:20px;margin:0 0 16px}p{line-height:1.6}.muted,small{color:#74685c}.card{background:#fffdf9;border:1px solid #ded5c8;border-radius:12px;padding:24px;margin-bottom:20px}.login{max-width:440px;margin:10vh auto}.columns{display:grid;grid-template-columns:minmax(270px,1fr) minmax(320px,1.3fr);gap:24px}label{display:block;margin:16px 0 6px;font-weight:600}input:not([type=checkbox]){width:100%;padding:11px;border:1px solid #bfb09e;border-radius:6px;font:inherit;background:white}button,.button{display:inline-block;font:inherit;border:1px solid #bfb09e;background:#fffdf9;color:#44372b;border-radius:6px;padding:10px 14px;cursor:pointer;text-decoration:none}button.primary{background:#72513b;color:white;border-color:#72513b}button:disabled{opacity:.55;cursor:wait}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.notice{min-height:24px;color:#9a3027;white-space:pre-wrap}.success{color:#31643e}.account{display:block;width:100%;text-align:left;margin:10px 0;padding:15px}.account strong,.account small{display:block}.account[aria-pressed=true]{border:2px solid #72513b;background:#f3ece3}.badge{display:inline-block;font-size:12px;border-radius:12px;padding:3px 8px;background:#e4efdf;color:#36542a}.badge.off{background:#eee2dd;color:#7c3e34}.folder-list{max-height:330px;overflow:auto;border:1px solid #ded5c8;border-radius:6px;padding:10px;margin-top:12px}.folder-list label{display:flex;align-items:baseline;gap:8px;font-size:14px;font-weight:400;margin:8px 0;overflow-wrap:anywhere}.check{display:flex;gap:9px;align-items:center}input[type=checkbox]{width:17px;height:17px;flex-shrink:0}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px}.photo{border:0;padding:0;background:transparent;text-align:left;overflow:hidden}.photo img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}.photo span{display:block;overflow-wrap:anywhere;font-size:13px;margin:7px 0}.folders{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}dialog{border:1px solid #cdbfae;border-radius:12px;max-width:95vw;width:1000px}dialog::backdrop{background:#000a}dialog img{display:block;max-width:100%;max-height:72vh;margin:15px auto}.note{white-space:pre-wrap;overflow-wrap:anywhere}[hidden]{display:none!important}@media(max-width:760px){.columns{grid-template-columns:1fr}header{padding:16px 20px}main{margin:20px auto}.card{padding:18px}}
.album-navigation{margin:0 0 24px}.contribution-forms{display:grid;grid-template-columns:1fr 1fr;gap:28px}.contribution-forms form{min-width:0}.contribution-forms input[type=file]{font-size:14px}#title,#upload-results{overflow-wrap:anywhere}.photo-comments{margin-top:28px;border-top:1px solid #ded5c8;padding-top:20px}.photo-comments textarea{display:block;width:100%;font:inherit;padding:12px;border:1px solid #bfb09e;border-radius:6px;margin-top:10px;resize:vertical}.family-comment{border-bottom:1px solid #ded5c8;padding:14px 0}.family-comment time{display:block;font-size:13px;color:#74685c;margin-top:4px}.comment-text{white-space:pre-wrap;overflow-wrap:anywhere}.photo-comments label{display:block;margin:18px 0 8px}header nav{flex-wrap:wrap}@media(max-width:760px){.contribution-forms{grid-template-columns:1fr;gap:12px}}
.admin-tabs{margin-bottom:24px}.admin-tabs [aria-pressed=true]{background:#72513b;color:white;border-color:#72513b}.activity-filters{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.activity-filters label{margin:0;min-width:180px}.activity-filters select{display:block;width:100%;font:inherit;padding:10px;margin-top:8px;border:1px solid #bfb09e;border-radius:6px;background:white}.activity-table-wrap{overflow-x:auto}.activity-table{border-collapse:collapse;width:100%;font-size:14px}.activity-table th,.activity-table td{text-align:left;vertical-align:top;padding:14px 10px;border-bottom:1px solid #ded5c8}.activity-table th{color:#74685c}.activity-table td:first-child{min-width:155px}.activity-table td small{display:block;margin-top:4px}.activity-table td:last-child{min-width:200px;max-width:480px;overflow-wrap:anywhere}.activity-table a{color:#72513b}.activity-table summary{cursor:pointer;margin-top:10px}.activity-table p{margin-bottom:0}#activity-page{align-self:center}

#detail{margin:3vh auto;margin-block:3dvh;max-height:94vh;max-height:94dvh}#detail #image{max-height:calc(94vh - 100px);max-height:calc(94dvh - 100px);object-fit:contain}
