*{box-sizing:border-box}body{margin:0;background:#f4f3ee;color:#222821;font-family:Inter,system-ui,-apple-system,sans-serif}button,input,a{font:inherit}a{color:inherit;text-decoration:none}button,a.primary{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #39795a;outline-offset:4px}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #d9ddd4}.brand{font-size:30px;font-weight:800;letter-spacing:-1.6px}.brand span,h1 span{color:#477d58}.brand span{font-size:16px;margin-left:3px}.quiet{background:transparent;border:1px solid #cdd2c8;border-radius:8px;padding:10px 16px;color:#414b40}.gallery{max-width:1500px;margin:auto;padding:58px 5vw 24px}.intro{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:2px;color:#586a56}h1{font-size:clamp(32px,4vw,54px);line-height:1.1;letter-spacing:-2px;margin:18px 0}.muted{color:#697064;line-height:1.6}.live{font-size:12px;white-space:nowrap;margin-bottom:22px}.live i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#59885e;margin-right:7px}.toolbar{margin-top:38px;border-top:1px solid #d0d5cb;border-bottom:1px solid #d0d5cb;display:flex;justify-content:space-between;align-items:center;padding:12px 0;font-size:13px}.toolbar p{font-weight:650}.day-title{margin:34px 0 18px;font-size:18px;font-weight:650}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.photo{background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e0e3db}.image-button{display:block;width:100%;border:0;padding:0;background:#e8e9e3;cursor:zoom-in}.photo img{display:block;width:100%;height:260px;object-fit:cover;transition:opacity .2s}.photo img:hover{opacity:.9}.meta{padding:16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.name{display:block;font-size:13px;word-break:break-all}.date{color:#6c7568;font-size:12px;margin:7px 0 0}.download{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border:1px solid #d9dfd4;border-radius:10px;color:#284d37;background:#f6f8f3;transition:background .15s,border-color .15s}.download:hover{background:#e7eee2;border-color:#9eaf98}.download-icon{display:inline-block;flex-shrink:0;vertical-align:middle}#original{display:inline-flex;align-items:center;justify-content:center;gap:9px}.primary{display:inline-block;background:#284d37;color:white;border:0;padding:14px 20px;border-radius:8px;font-weight:600;font-size:14px}#more{display:block;margin:32px auto}#more[hidden]{display:none}#status{color:#65715e;line-height:1.8}footer{margin-top:70px;border-top:1px solid #d0d5cb;padding:23px 0;font-size:11px;font-weight:700;letter-spacing:1px;display:flex;justify-content:space-between}footer span{font-weight:400;letter-spacing:0}.login{min-height:100vh;display:grid;place-items:center;padding:28px}.login-card{width:100%;max-width:430px}.login-card .eyebrow{margin-top:60px}.login-card h1{font-size:44px}.login-card form{display:grid;gap:12px;margin-top:30px}.login-card label{font-size:13px;font-weight:600}.login-card input{width:100%;padding:13px;border:1px solid #bfc8b8;border-radius:7px;background:#fff}.login-card button{margin-top:12px}.login-card small{display:block;text-align:center;color:#798172;margin-top:32px}dialog{max-width:1100px;width:94vw;max-height:94vh;border:0;border-radius:14px;background:#f4f3ee;padding:20px}dialog::backdrop{background:#101c16cf}dialog>button{display:block;margin:0 0 16px auto}#preview{display:block;max-width:100%;max-height:65vh;margin:auto;object-fit:contain}.viewer-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px}.viewer-meta p{font-size:13px;color:#65715e}@media(min-width:1600px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:950px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.intro{display:block}.live{margin:20px 0 0}}@media(max-width:580px){header{height:74px}.gallery{padding-top:30px}h1{letter-spacing:-1px}.grid{grid-template-columns:1fr;gap:18px}.photo img{height:280px}.viewer-meta{display:block}.viewer-meta a{width:100%;text-align:center}.intro .muted{font-size:14px}.day-title{font-size:16px}footer{margin-top:40px}}

.photographer-link{text-align:center;margin:24px 0 0;font-size:14px}.photographer-link a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#284d37;text-decoration:underline;text-underline-offset:4px}.photographers{max-width:800px;margin:auto;padding:40px 5vw 60px}.photographers h1{font-size:clamp(32px,5vw,48px)}.photographers h2{font-size:19px;letter-spacing:-.3px}.settings-card{background:#fff;border:1px solid #d9dfd4;border-radius:12px;padding:22px;margin:24px 0}.settings-card h2{margin-top:0}.settings-card p,.sending-tips{font-size:14px;line-height:1.7}.camera-settings{display:grid;grid-template-columns:minmax(140px,1fr) 2fr;gap:14px 20px;font-size:14px;line-height:1.5}.camera-settings dt{color:#697064}.camera-settings dd{margin:0;overflow-wrap:anywhere}.photographers code{font-size:14px;background:#edf0e9;padding:2px 5px;border-radius:4px}.sending-tips{margin:30px 0}.sending-tips ul{padding-left:22px}.sending-tips li{margin:10px 0}@media(max-width:580px){.camera-settings{grid-template-columns:1fr;gap:4px}.camera-settings dd{margin-bottom:12px}.settings-card{padding:18px}}

.photo-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.meta>div:first-child{min-width:0}.star-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:1px solid #d9dfd4;border-radius:10px;background:#f6f8f3;color:#67715f;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.star-button:hover{background:#fff4ce;border-color:#c4a64f}.star-button[aria-pressed="true"]{background:#fff3cc;color:#956512;border-color:#d4b55b}.star-button[aria-pressed="true"] svg{fill:#efc659}.star-button:disabled{opacity:.6;cursor:wait}.star-filter{display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;margin-left:auto;margin-right:16px;font-weight:600}.star-filter{position:relative}.star-filter input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.filter-control{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid #cdd2c8;border-radius:8px;color:#414b40;transition:background .15s,border-color .15s,color .15s}.star-filter:hover .filter-control{background:#e7eee2}.star-filter input:checked+.filter-control{background:#fff3cc;color:#956512;border-color:#d4b55b}.star-filter input:checked+.filter-control svg{fill:#efc659}.star-filter input:focus-visible+.filter-control{outline:3px solid #39795a;outline-offset:4px}.toolbar{flex-wrap:wrap;gap:8px}#preview-star{display:flex;align-items:center}@media(max-width:580px){.toolbar #count{flex-basis:100%;margin-bottom:0}.star-filter{margin-left:0;margin-right:auto}.viewer-meta #preview-star{margin:12px 0}.photo-actions{gap:6px}}
