:root{color-scheme:light;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f4f7f2;color:#17231d}*{box-sizing:border-box}body{min-width:320px;margin:0;background:#f4f7f2;color:#17231d}button,input,select,textarea{font:inherit}button:disabled,fieldset:disabled{cursor:not-allowed;opacity:.68}.shell{max-width:1120px;margin:0 auto;padding:0 48px 64px}.topbar{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #d9ded7}.brand,.header-meta,.sync-status,.actions,.action-group,.field-meta,.conflict-actions{display:flex;align-items:center}.brand{gap:12px;color:#17231d;font-weight:650;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#173d2d;color:#f7faf5;font-family:Georgia,serif;font-size:20px}.header-meta{gap:16px}.presence{padding:4px 10px;border-radius:12px;background:#e8ede8;color:#4c6358;font-size:13px}.sync-status{gap:8px;color:#4c6358;font-size:13px}.status-dot{width:7px;height:7px;border-radius:50%;background:#3d9a67}.sync-status.offline .status-dot{background:#b88b32}.sync-status.has-conflict .status-dot{background:#a63f32}.hero{max-width:760px;padding:84px 0 56px}.eyebrow{color:#8c4618;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hero h1{margin:18px 0 22px;color:#173d2d;font-family:Georgia,serif;font-size:clamp(38px,5vw,62px);font-weight:500;letter-spacing:-.045em;line-height:1.03}.intro{max-width:680px;color:#56675f;font-size:17px;line-height:1.65}.privacy-note,.receipt{color:#4c6358;font-size:13px;line-height:1.55}.privacy-note{max-width:680px;margin-top:24px;padding-left:14px;border-left:2px solid #bdc9c0}.correction-banner,.notice,.lock-notice{padding:10px 14px;border-radius:4px;font-size:13px}.correction-banner,.lock-notice{background:#fbf1e4;color:#7a4c16}.correction-banner{display:inline-block;margin:18px 0 0}.notice{margin:16px 0 0;background:#eef3ee;color:#4c6358}.update-banner,.conflict-summary,.submit-confirmation,.field-conflict{border:1px solid #dfbd8b;border-radius:6px;background:#fff8ee}.update-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding:18px 20px}.update-banner p,.conflict-summary p,.submit-confirmation p,.field-conflict p{margin:6px 0 0;color:#5e6d65;line-height:1.55}.conflict-summary{margin-bottom:24px;padding:20px 24px;border-color:#d9a398;background:#fff5f3}.conflict-summary h2,.submit-confirmation h2,.field-conflict h2{margin:0;color:#173d2d;font-family:Georgia,serif;font-size:20px;font-weight:500}.progress-row{display:flex;align-items:center;gap:20px;padding:20px 0;border-top:1px solid #d9ded7;border-bottom:1px solid #d9ded7;color:#53665c}.progress-value{margin-right:10px;color:#173d2d;font-family:Georgia,serif;font-size:23px}.progress-label,.progress-row strong{font-size:13px}.progress-track{height:4px;flex:1;background:#dfe5df}.progress-track span{display:block;height:100%;background:#8c4618;transition:width .18s ease-out}.progress-row strong{color:#173d2d}.section-nav{display:flex;flex-wrap:wrap;gap:8px;padding-top:16px}.section-link{padding:6px 12px;border:1px solid #d0d8d1;border-radius:14px;background:#fff;color:#4c6358;cursor:pointer;font-size:12px}.section-link:hover,.section-link:focus-visible{border-color:#a96127;color:#173d2d}.section-link.active{border-color:#173d2d;background:#173d2d;color:#f7faf5}.question-card{display:grid;grid-template-columns:64px 1fr;align-items:start;margin-top:38px;padding:40px;border:1px solid #d9e0da;border-radius:6px;background:#fff;box-shadow:0 12px 30px #173d2d0d}.question-card.invalid,.question-card.has-conflict{border-color:#b35a4d;box-shadow:0 12px 30px #a63f3214}.question-card.locked{background:#f4f5f2}.question-number{color:#8c4618;font-family:Georgia,serif;font-size:22px}.lock-notice{display:inline-block;margin:0 0 12px}.question-content>label,.choice-fieldset legend{display:block;color:#173d2d;font-family:Georgia,serif;font-size:27px;line-height:1.25}.choice-fieldset{margin:0;padding:0;border:0}.choice-fieldset legend{padding:0}.hint{margin:13px 0 24px;color:#607169;line-height:1.55}.question-content input[type=text],.question-content input[type=number],.question-content input[type=date],.question-content select,.question-content textarea,.auth-card input{width:100%;padding:15px 16px;border:1px solid #bdc9c0;border-radius:3px;background:#fff;color:#173d2d}.question-content textarea{resize:vertical}.question-content input:focus,.question-content select:focus,.question-content textarea:focus,.auth-card input:focus{outline:2px solid #a96127;outline-offset:2px}.question-content input[aria-invalid=true],.question-content select[aria-invalid=true],.question-content textarea[aria-invalid=true]{border-color:#a63f32}.option-group{display:grid;gap:10px}.choice{display:flex!important;align-items:flex-start;gap:10px;width:fit-content;color:#273c32!important;cursor:pointer;font-family:inherit!important;font-size:16px!important;line-height:1.45!important}.choice input{width:18px;height:18px;margin:2px 0 0;accent-color:#173d2d}.field-meta{justify-content:space-between;flex-wrap:wrap;gap:4px 12px;margin-top:9px;color:#596b62;font-size:12px}.field-meta span{white-space:nowrap}.field-error,.error{color:#982f24;font-size:13px}.field-error{margin:6px 0 0}.error-panel{padding:14px 16px;border-left:3px solid #a63f32;background:#fff5f3}.field-conflict{margin-top:18px;padding:18px;border-color:#d9a398;background:#fff5f3}.field-conflict h2{font-size:18px}.conflict-actions{flex-wrap:wrap;gap:10px;margin-top:14px}.section-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:24px}.section-pager-label{color:#596b62;font-size:12px}.submit-confirmation{width:min(560px,100% - 32px);margin:auto;padding:24px 28px}.submit-confirmation::backdrop{background:#0a16108c}.submit-confirmation .button{margin:16px 10px 0 0}.actions{justify-content:flex-end;padding-top:28px}.action-group{gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:13px 19px;border:0;border-radius:3px;cursor:pointer;font-size:14px;text-decoration:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.button:focus-visible{outline:2px solid #a96127;outline-offset:3px}.button.primary{background:#9b5926;color:#fff}.button.secondary{background:#e2e9e3;color:#31483d}.button.ghost{background:transparent;color:#173d2d}.button span{margin-left:14px;font-size:18px}.logout{min-height:auto;padding:8px 14px;font-size:13px}.auth-card{display:grid;gap:10px;max-width:480px;margin-top:30px}.auth-card label{color:#4c6358;font-size:13px}.auth-card .button{justify-self:start;margin-top:8px}@media(max-width:760px){.shell{padding:0 20px 40px}.topbar{min-height:70px;align-items:flex-start;padding:18px 0}.header-meta{justify-content:flex-end;flex-wrap:wrap;gap:8px}.presence{display:none}.hero{padding:58px 0 38px}.progress-row{align-items:flex-start;flex-wrap:wrap}.progress-track{order:3;min-width:100%}.question-card{grid-template-columns:1fr;gap:16px;padding:24px}.question-content>label,.choice-fieldset legend{font-size:23px}.section-pager,.update-banner{align-items:stretch;flex-direction:column}.actions{align-items:stretch;flex-direction:column-reverse}.action-group{justify-content:stretch;flex-wrap:wrap}.action-group .button{min-width:150px;flex:1}}
