*{box-sizing:border-box}body{margin:0;background:#faf9fc;color:#242138;font:17px Nunito,Arial,sans-serif}header{background:white;padding:24px max(24px,calc((100% - 1000px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #eee}a{color:#38217d}.brand{font:800 26px Montserrat,Arial,sans-serif;text-decoration:none;letter-spacing:-1px}.brand span{color:#ff7148}header>a:last-child{font-size:14px}main{max-width:1000px;margin:auto;padding:55px 24px}h1,h2,legend{font-family:Montserrat,Arial,sans-serif}h1{font-size:46px;letter-spacing:-2px;line-height:1.15;font-weight:900;margin:18px 0}h2{font-size:28px;font-weight:800}.eyebrow{font:700 11px Montserrat,Arial,sans-serif;letter-spacing:2px;color:#8b7a99}.intro{font-size:20px;line-height:1.6}.local-note{background:#f0ebf8;padding:17px 20px;border-radius:10px;font-size:14px;line-height:1.6;margin:25px 0 35px}fieldset{border:1px solid #e2ddea;border-radius:14px;padding:28px;margin:0 0 28px;background:white;min-width:0}legend{font-size:20px;font-weight:700;padding:0 10px}fieldset p{font-size:14px;color:#74727c;line-height:1.6;margin:0 0 18px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.numbers{grid-template-columns:repeat(4,1fr)}label{display:block;font-size:14px;font-weight:800;margin-bottom:20px}input,textarea{font:400 16px Nunito,Arial,sans-serif;width:100%;padding:13px;border:1px solid #d8d1e3;border-radius:8px;display:block;margin-top:8px;background:white;color:#242138}textarea{resize:vertical}input:focus,textarea:focus{outline:2px solid #8559bf;outline-offset:2px}.checks{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:25px}.checks label{display:flex;align-items:center;gap:12px;font-weight:600;margin:0}.checks input{width:20px;height:20px;margin:0;accent-color:#38217d}.actions{display:flex;gap:12px;flex-wrap:wrap}button{font:800 15px Nunito,Arial,sans-serif;cursor:pointer;background:white;border:1px solid #38217d;color:#38217d;border-radius:8px;padding:14px 20px}.primary{background:#38217d;color:white}button:disabled{opacity:.4;cursor:not-allowed}.photo-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.photo-item{border:1px solid #e2ddea;border-radius:9px;overflow:hidden}.photo-item img{width:100%;height:110px;object-fit:cover;display:block}.photo-item button{padding:5px 8px;font-size:12px;border:0}.photo-item span{font-size:11px;display:block;padding:8px}.photo-item>div{display:flex;justify-content:space-between}#status{font-size:15px;line-height:1.6;color:#583682;min-height:25px}#photo-status{margin-top:15px}.preview-heading{margin-top:45px}iframe{width:100%;height:850px;border:1px solid #ddd;border-radius:12px;background:white}footer{text-align:center;padding:30px;font-size:13px;color:#74727c}button:focus-visible,a:focus-visible{outline:3px solid #fa794b;outline-offset:4px}@media(max-width:650px){h1{font-size:32px;letter-spacing:-1px}header{padding:20px}header>a:last-child{font-size:11px}.brand{font-size:23px}main{padding:35px 18px}.fields{grid-template-columns:1fr;gap:0}.numbers{grid-template-columns:1fr 1fr;gap:15px}fieldset{padding:22px 18px}legend{font-size:17px}.checks{grid-template-columns:1fr}.photo-list{grid-template-columns:1fr 1fr}.actions button{flex-grow:1}}

.account-panel{background:white;border:1px solid #e2ddea;border-radius:14px;padding:25px;margin-bottom:35px}.account-panel p{font-size:14px;line-height:1.6}.publish-consent{display:flex;align-items:flex-start;gap:12px;font-weight:600;margin-top:22px;line-height:1.6}.publish-consent input{width:20px;height:20px;flex-shrink:0;margin:3px 0 0;accent-color:#38217d}#published-result{padding:20px;border-radius:10px;background:#eaf6ef}#published-result a{display:block;overflow-wrap:anywhere;margin-top:10px}.account-panel [hidden],#published-result[hidden]{display:none}
.form-locked{opacity:.42;filter:grayscale(.7);user-select:none;pointer-events:none}.login-required{background:#f0ebf8;border:1px solid #ded4ef;padding:16px 20px;border-radius:10px;color:#38217d;font-size:15px;line-height:1.6}.login-required[hidden]{display:none}.account-panel h2{font-size:26px;line-height:1.3}.account-panel{margin-top:0}
