:root{--forest:#2f5d50;--sage:#a4b69a;--cream:#f2efe7;--sand:#d4a373;--ink:#1e293b;--white:#fff;--muted:#66736e;--line:#d8dfd9;--danger:#a43f35;--shadow:0 24px 70px rgba(30,41,59,.12);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#f7f5ef 0%,var(--cream) 100%)}button,input{font:inherit}.hidden{display:none!important}.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;max-width:1180px;margin:0 auto;padding:0 32px}.brand{display:flex;gap:11px;align-items:center;color:var(--forest);font-weight:750;text-decoration:none;letter-spacing:-.01em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;background:var(--forest);color:var(--cream);border-radius:50%;font-size:24px;transform:rotate(-20deg)}.header-note{font-size:.9rem;color:var(--muted)}main{max-width:1180px;margin:0 auto;padding:26px 32px 70px}.intro{min-height:calc(100vh - 170px);display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:80px}.intro-copy{padding-bottom:7vh}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;font-weight:800;color:var(--forest);margin:0 0 18px}h1,h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em;margin:0;color:var(--ink)}h1{font-size:clamp(2.9rem,6vw,5.5rem);line-height:.96;max-width:760px}h2{font-size:clamp(2.2rem,4vw,3.5rem)}.lead{max-width:610px;font-size:1.2rem;line-height:1.65;color:#4f5f59;margin:30px 0 34px}.button{min-height:48px;border-radius:999px;border:0;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:750;cursor:pointer;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s}.button:hover{transform:translateY(-1px)}.button:focus-visible,input:focus-visible{outline:3px solid rgba(212,163,115,.55);outline-offset:3px}.button.primary{background:var(--forest);color:#fff;box-shadow:0 10px 25px rgba(47,93,80,.24)}.button.primary:hover{background:#234b40}.button.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.nature-panel{height:min(610px,67vh);min-height:440px;border-radius:40% 40% 24px 24px;background:radial-gradient(circle at 68% 22%,rgba(242,239,231,.35),transparent 22%),linear-gradient(150deg,#244c40,#567b68);position:relative;overflow:hidden;box-shadow:var(--shadow)}.nature-panel:after{content:"";position:absolute;inset:auto -10% -23% -10%;height:52%;background:var(--sage);border-radius:50% 50% 0 0;opacity:.9}.leaf{position:absolute;display:block;background:linear-gradient(135deg,#c6d2bc,#88a17d);border-radius:100% 0 100% 0;transform:rotate(28deg);box-shadow:inset -8px -8px 20px rgba(47,93,80,.18)}.leaf:after{content:"";position:absolute;width:70%;height:2px;background:rgba(47,93,80,.45);top:53%;left:12%;transform:rotate(-34deg);transform-origin:left}.leaf-one{width:220px;height:115px;left:-35px;top:85px}.leaf-two{width:255px;height:135px;right:-65px;top:195px;transform:rotate(205deg)}.leaf-three{width:185px;height:100px;left:60px;bottom:125px;transform:rotate(84deg);z-index:1}.nature-caption{position:absolute;z-index:2;bottom:30px;left:30px;right:30px;background:rgba(242,239,231,.94);padding:22px;border-radius:18px;display:flex;flex-direction:column;gap:6px}.nature-caption strong{font-family:Georgia,serif;font-size:1.55rem}.nature-caption span{color:var(--muted);line-height:1.4}.survey-shell{max-width:840px;margin:55px auto;background:#fff;padding:42px;border-radius:28px;box-shadow:var(--shadow)}.progress-row{display:flex;justify-content:space-between;color:var(--muted);font-size:.88rem;font-weight:700}.progress-track{height:7px;background:#e8ece8;border-radius:99px;margin:12px 0 42px;overflow:hidden}.progress-track span{display:block;width:9%;height:100%;background:var(--sand);border-radius:99px;transition:width .25s}.question-number{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--forest);font-weight:800;margin-bottom:14px}.question-title{font-family:Georgia,serif;font-size:clamp(1.65rem,4vw,2.5rem);line-height:1.18;letter-spacing:-.025em;margin:0 0 10px}.question-hint{color:var(--muted);line-height:1.5;margin:0 0 24px}.options{display:grid;gap:12px;margin-top:26px}.option{position:relative;display:flex;align-items:flex-start;gap:14px;padding:17px 18px;border:1px solid var(--line);border-radius:14px;cursor:pointer;line-height:1.45;transition:border .15s,background .15s,transform .15s}.option:hover{border-color:var(--sage);background:#f8faf7;transform:translateX(2px)}.option input{position:absolute;opacity:0}.option-control{flex:0 0 22px;width:22px;height:22px;border:2px solid #9da9a3;border-radius:50%;margin-top:1px;display:grid;place-items:center}.option.checkbox .option-control{border-radius:6px}.option input:checked+.option-control{border-color:var(--forest);background:var(--forest)}.option input:checked+.option-control:after{content:"";width:7px;height:7px;border-radius:50%;background:#fff}.option.checkbox input:checked+.option-control:after{width:9px;height:5px;border-radius:0;border-left:2px solid #fff;border-bottom:2px solid #fff;background:transparent;transform:rotate(-45deg) translate(1px,-1px)}.option:has(input:checked){border-color:var(--forest);background:#eff5f1}.form-actions{display:flex;justify-content:space-between;gap:16px;margin-top:36px}.form-error{min-height:22px;color:var(--danger);font-size:.9rem;margin:16px 0 0}.success{max-width:680px;margin:14vh auto;text-align:center;background:#fff;padding:64px 48px;border-radius:28px;box-shadow:var(--shadow)}.success-icon{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;margin:0 auto 24px;background:var(--sage);color:var(--forest);font-size:32px;font-weight:800}.success p:not(.eyebrow){color:var(--muted);font-size:1.08rem;line-height:1.65}footer{max-width:1180px;margin:0 auto;padding:22px 32px 32px;border-top:1px solid rgba(47,93,80,.14);display:flex;justify-content:space-between;color:var(--muted);font-size:.88rem}footer a{color:var(--forest)}.admin-body{background:#edf0ec}.admin-main{padding-top:55px}.login-card{max-width:610px;margin:7vh auto;background:#fff;padding:48px;border-radius:26px;box-shadow:var(--shadow)}.login-card h1,.dashboard h1{font-size:clamp(2.5rem,5vw,4rem)}.login-card>p:not(.eyebrow){color:var(--muted);line-height:1.55}.login-card label{display:block;font-weight:750;margin:30px 0 9px}.password-row{display:flex;gap:10px}.password-row input{min-width:0;flex:1;border:1px solid var(--line);border-radius:999px;padding:0 18px;font-size:1rem}.text-button{border:0;background:transparent;color:var(--forest);font-weight:750;cursor:pointer}.dashboard-title{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.stat-card{margin:34px 0 22px;background:var(--forest);color:#fff;border-radius:20px;padding:24px 28px;display:inline-flex;min-width:230px;flex-direction:column;gap:7px}.stat-card span{font-size:.9rem;opacity:.78}.stat-card strong{font-family:Georgia,serif;font-size:2.4rem}.table-card{background:#fff;border-radius:22px;box-shadow:0 16px 45px rgba(30,41,59,.08);overflow:hidden}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:840px}th,td{text-align:left;padding:16px 18px;border-bottom:1px solid #e7ebe8;vertical-align:top}th{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#f8faf8}td{font-size:.92rem;line-height:1.45}.row-action{color:var(--forest);border:0;background:transparent;font-weight:750;cursor:pointer}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:14px;padding:18px}.empty{text-align:center;padding:54px;color:var(--muted)}dialog{width:min(760px,calc(100% - 32px));max-height:82vh;border:0;border-radius:24px;padding:40px;box-shadow:0 30px 90px rgba(30,41,59,.3)}dialog::backdrop{background:rgba(30,41,59,.62);backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:32px;color:var(--muted);cursor:pointer}dialog h2{font-size:2rem;margin-bottom:26px}dialog dl{margin:0}dialog dt{font-weight:800;color:var(--forest);margin-top:19px}dialog dd{margin:6px 0 0;line-height:1.5;color:#475650}
@media(max-width:800px){.site-header{height:64px;padding:0 20px}.header-note{display:none}main{padding:15px 18px 50px}.intro{min-height:auto;grid-template-columns:1fr;gap:34px;padding:45px 0}.intro-copy{padding:0}.intro h1{font-size:clamp(2.9rem,14vw,4.3rem)}.lead{font-size:1.05rem;margin:23px 0 28px}.nature-panel{height:330px;min-height:0;border-radius:28px}.leaf-one{width:150px;height:78px}.leaf-two{width:170px;height:90px}.leaf-three{width:125px;height:70px;bottom:90px}.nature-caption{left:18px;right:18px;bottom:18px;padding:16px}.survey-shell{margin:25px auto;padding:26px 18px;border-radius:20px}.progress-track{margin-bottom:30px}.option{padding:15px 13px}.form-actions{position:sticky;bottom:10px;background:rgba(255,255,255,.94);padding:10px 0;margin-top:25px}.form-actions .button{flex:1;padding:0 14px}.success{margin:10vh auto;padding:42px 22px}footer{padding:20px;flex-direction:column;gap:12px}.admin-main{padding-top:28px}.login-card{margin:3vh auto;padding:30px 20px}.password-row{flex-direction:column}.password-row input{height:50px}.dashboard-title{align-items:flex-start;flex-direction:column}.dashboard-title .button{width:100%}.stat-card{width:100%}.pagination{justify-content:center}.admin-header{background:#fff}dialog{padding:34px 22px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.button.danger{background:#fff1ef;color:var(--danger);border:1px solid #efc8c3;box-shadow:none}.button.danger:hover{background:#fde4e0}.dialog-actions{display:flex;justify-content:flex-end;margin-top:32px;padding-top:22px;border-top:1px solid var(--line)}
