:root{font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo",sans-serif;color:#28372e;background:#f8f6f0;font-size:18px}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;justify-content:space-between;padding:26px 6vw;border-bottom:1px solid #dedfd6}.brand{font-weight:800;letter-spacing:-1px;color:inherit;text-decoration:none}.brand span{font-size:19px;margin-left:9px;font-weight:500}main{max-width:1120px;margin:64px auto;padding:0 24px;min-height:65vh}h1{font-size:clamp(32px,5vw,54px);line-height:1.35;letter-spacing:-2px;margin:14px 0 22px}p{line-height:1.8}.eyebrow{font-size:14px;letter-spacing:2px;color:#6b795f;font-weight:700}#login{max-width:580px;margin:auto}form{display:grid;gap:18px;margin:32px 0}label{display:grid;gap:9px;font-size:16px}input,select,button{font:inherit;border-radius:12px;padding:14px;border:1px solid #cdd2c5;background:#fff;color:inherit}button{cursor:pointer;min-height:50px}button:hover{filter:brightness(.95)}button:disabled{opacity:.5;cursor:wait}.primary{background:#354e3c;color:#fff;border:0;font-weight:700}small{color:#687368}#upload{padding:24px;background:#edeee5;border-radius:18px;grid-template-columns:1fr 1fr;align-items:end}#upload small{font-size:13px}.title-row{display:flex;justify-content:space-between;align-items:center}#count{color:#6b795f}#grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.card{background:white;border-radius:18px;overflow:hidden;box-shadow:0 5px 25px #243a2610}.photo-button{display:block;width:100%;border:0;padding:0;border-radius:0;background:#e4e6df}.card img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.card-body{padding:16px}.card p{margin:0 0 8px;white-space:pre-wrap;overflow-wrap:anywhere}.card time{font-size:14px;color:#6c776f}.delete{font-size:14px;margin-top:14px;width:100%;color:#994333}#status{color:#805126;white-space:pre-wrap}footer{padding:28px;text-align:center;font-size:13px;color:#7b8274}dialog{width:96vw;max-width:1300px;height:94dvh;border:0;border-radius:18px;background:#18221b;color:#fff;padding:16px}dialog::backdrop{background:#000b}.viewer-bar{display:flex;justify-content:space-between;gap:10px}.viewer-bar button{background:#ffffff12;color:#fff;border-color:#ffffff30}.image-scroll{height:calc(100% - 140px);overflow:auto;display:flex;align-items:center;justify-content:center;margin-top:16px;touch-action:pan-x pan-y pinch-zoom}#full{max-width:100%;max-height:100%;object-fit:contain}#detail{text-align:center;white-space:pre-wrap;margin:10px 0;font-size:17px}#empty{text-align:center;padding:60px 0;color:#687368}[hidden]{display:none!important}@media(max-width:650px){main{margin-top:36px}#grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#upload{grid-template-columns:1fr}.brand span{font-size:16px}.card-body{padding:12px}.card p{font-size:16px}header{padding:20px}.title-row h1{font-size:32px}#logout{font-size:14px;padding:10px}.viewer-bar button{font-size:16px}}

.app-install{text-align:center;margin:40px 0}.app-install a{color:#354e3c;text-underline-offset:5px;font-size:16px}

#admin-security{background:#eeeee4;padding:22px;border:1px solid #d7ddcb;border-radius:18px;margin:24px 0}.security-heading{display:flex;justify-content:space-between;align-items:center;gap:18px}.security-heading p{margin:8px 0;font-size:16px}#mfa-panel{max-width:600px}#mfa-qr{display:block;max-width:100%;height:auto;margin:20px auto}#mfa-secret{font-family:monospace;font-size:15px}#recovery-codes{padding:18px;background:white;font-size:16px;overflow-x:auto;line-height:1.9}#mfa-done{width:100%}@media(max-width:650px){.security-heading{align-items:stretch;flex-direction:column}#admin-security{padding:18px}}
