*{box-sizing:border-box}body{margin:0;background:#41486c;color:#fff;font-family:Arial,sans-serif;font-size:17px;line-height:1.6}main{width:min(100% - 40px,720px);margin:64px auto}h1{font-size:clamp(32px,6vw,48px);line-height:1.15;margin:12px 0 22px;letter-spacing:-1px}h2{font-size:23px;font-weight:500}p{margin:12px 0}.eyebrow{font-size:13px;letter-spacing:2px;text-transform:uppercase}.intro{color:#e3e5ef;max-width:580px}label{display:block;margin:24px 0 8px}input,textarea,button{font:inherit}input,textarea{width:100%;border:2px solid transparent;border-radius:18px;background:#f2f2f1;color:#252525;padding:14px 20px}textarea{min-height:165px;resize:vertical}input[type=file]{padding:17px;font-size:15px}input::file-selector-button{border:0;border-radius:8px;padding:8px 10px;margin-right:10px;background:#dedfeb;color:#222}button,.button{display:inline-block;background:#f2f2f1;color:#222;border:0;border-radius:22px;padding:9px 24px;cursor:pointer;margin-top:18px;text-decoration:none}button:hover{background:#fff}button:disabled{opacity:.65;cursor:wait}a{color:inherit;text-underline-offset:4px;overflow-wrap:anywhere}:focus-visible{outline:3px solid #ffdf91;outline-offset:5px}.days{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:34px 0}.days a{text-align:center;border:1px solid #a5abc5;border-radius:14px;text-decoration:none;padding:10px 3px}.days span{display:block;font-size:12px}.days [aria-current]{background:#f2f2f1;color:#303655}.notice,.return{padding:18px 22px;border-radius:18px;background:#343b5d;margin:25px 0}.error{background:#fff1e8;color:#772f16}.success{background:#e8f1e7;color:#284d30}.help{font-size:14px;color:#e0e2ec}.return input{font-size:13px;margin-top:10px}.return summary{cursor:pointer}.inline{display:inline}.quiet{background:transparent;color:#fff;border:1px solid #a5abc5;font-size:14px}footer{border-top:1px solid #737c9d;margin-top:45px;padding-top:20px;font-size:13px;color:#d9dcea}.file{padding:14px 0} .row{display:flex;justify-content:space-between;gap:12px;align-items:center}@media(max-width:480px){main{margin:32px auto}.days{gap:5px}.days a{font-size:14px}.row{display:block}input[type=file]{font-size:13px;padding:10px}}
.participant{border:1px solid #8b93b2;border-radius:18px;padding:22px;margin:24px 0}.participant h2{margin-top:0}.participant summary{cursor:pointer;padding:8px 0}.checkbox{display:flex;gap:12px;align-items:center}.checkbox input{width:22px;height:22px;flex:0 0 22px}.participant a{font-size:16px}input[type=password]{letter-spacing:.05em}

.admin-logout{text-align:right;margin-top:-12px}.admin-logout button{margin-top:0}.create-link{background:#343b5d;border-color:#737c9d}.links-heading{margin:38px 0 0}.link-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.link-row a{min-width:0}.copy-link{flex-shrink:0;margin-top:0}.copy-status:empty{display:none}.saved-link summary{font-size:14px;margin-top:12px}.saved-link h2{margin-bottom:8px}@media(max-width:540px){.link-row{align-items:flex-start;flex-direction:column;gap:12px}.participant{padding:18px}}

.quiet:hover{background:#fff;color:#252525}

/* Photo previews and touch-friendly diary controls. */
[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;scroll-padding:24px}h1,h2,.notice,.help,footer{overflow-wrap:anywhere}form,input,textarea{min-width:0;max-width:100%}input,textarea{font-size:17px}input[type=date]{display:block;min-height:54px;-webkit-appearance:none;appearance:none}input[type=file]{font-size:16px;overflow:hidden}button,.button,.days a{min-height:44px;touch-action:manipulation}.days{grid-template-columns:repeat(5,minmax(0,1fr))}.days a{display:flex;flex-direction:column;justify-content:center}.days span{overflow-wrap:anywhere}.entry-form>button[type=submit]{min-height:52px}.photo-preview{margin:24px 0;min-width:0}.photo-open{display:block;width:100%;padding:0;margin:0;border-radius:18px;overflow:hidden;background:#343b5d;min-height:0}.photo-open:disabled{opacity:1}.photo-open img{display:block;width:100%;height:auto;max-height:65svh;object-fit:contain;image-orientation:from-image}.photo-status{margin-top:10px}.saved-media{margin:24px 0}.document-card{background:#343b5d;border-radius:18px;padding:20px}.document-card p{overflow-wrap:anywhere}.document-kind{font-size:13px;letter-spacing:2px}.photo-dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;padding:20px;padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(20px,env(safe-area-inset-bottom));background:#20263b;color:#fff}.photo-dialog[open]{display:flex;flex-direction:column;gap:18px}.photo-dialog form{text-align:right;flex-shrink:0}.photo-dialog button{margin:0;min-height:44px}.photo-dialog img{display:block;min-height:0;flex:1;width:100%;object-fit:contain}.photo-dialog::backdrop{background:#20263b}.photo-is-open{overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#file-status:empty{display:none}
@media(max-width:540px){main{width:calc(100% - 32px);margin:28px auto;padding-bottom:env(safe-area-inset-bottom)}.days{gap:5px;margin:24px 0}.days a{font-size:14px;padding:10px 2px;min-height:60px}.days span{font-size:10px}input,textarea{padding:13px 14px;border-radius:14px}input[type=file]{font-size:16px;padding:10px}.entry-form>button[type=submit]{width:100%}.photo-open{border-radius:14px}textarea{min-height:200px}.row{display:block}.photo-dialog{padding-left:12px;padding-right:12px}.notice{padding:16px}.eyebrow{font-size:11px;letter-spacing:1.5px}}
