:root{font-family:"Malgun Gothic","맑은 고딕",Apple SD Gothic Neo,Arial,sans-serif;color:#20332c;background:#f6f8f5;font-size:15px;--green:#1f5347;--dark:#1c4038;--ink:#22352e;--soft:#678078;--line:#dfe8e2;--white:#fff;--focus:#85bca1}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}a:hover{text-decoration:none}input,textarea,select{min-width:0}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.wrap{width:min(1130px,calc(100% - 40px));margin-inline:auto}.site-header,.admin-header{border-bottom:1px solid #e5ece6;background:#fff}.header-inner{height:84px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand-mark{background:var(--green);color:#fff;border-radius:12px;display:grid;place-items:center;width:43px;height:43px;font-family:Georgia,serif;font-size:29px}.brand b{font-size:17px;letter-spacing:-.5px;display:block}.brand small{display:block;margin-top:3px;font-size:10px;letter-spacing:2.3px;color:#799188;font-weight:700}.header-phone{font-size:14px;font-weight:700;text-decoration:none;color:var(--green);padding:10px 0}.header-phone span{margin-left:6px}.public-body{background:linear-gradient(125deg,#f1f7f2,#fafbf8 48%,#f6f8f5)}.public-layout{display:grid;grid-template-columns:minmax(310px,.95fr) minmax(425px,1fr);gap:75px;align-items:start;padding-top:86px;padding-bottom:115px}.intro{padding-top:30px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:800;color:#5e927d;margin:0 0 22px}.intro h1{font-size:clamp(30px,3.7vw,47px);line-height:1.45;letter-spacing:-2.5px;font-weight:800;margin:0}.intro h1 em{color:#27805e;font-style:normal}.intro-copy{font-size:15px;color:#687d73;line-height:1.95;margin:23px 0 36px}.contact-card{display:flex;align-items:center;gap:17px;max-width:390px;background:var(--green);border-radius:14px;padding:19px 23px;color:#fff;box-shadow:0 12px 28px rgba(16,54,40,.14)}.contact-icon{width:42px;height:42px;background:#377365;border-radius:12px;display:grid;place-items:center;font-size:24px}.contact-card div{display:flex;flex-direction:column;gap:5px}.contact-card small{opacity:.75;font-size:12px}.contact-card a{font-size:23px;font-weight:800;text-decoration:none;letter-spacing:.3px}.contact-arrow{margin-left:auto;font-size:22px;opacity:.85}.intro-info{margin-top:44px;max-width:390px}.intro-info>div{border-bottom:1px solid #dce6de;padding:15px 0;display:grid;grid-template-columns:8px 93px 1fr;gap:12px;align-items:center;font-size:12px;color:#658075}.intro-info strong{font-size:12px;color:#37574c;font-weight:700;text-align:right}.bullet-dot{width:7px;height:7px;background:#7eab8d;border-radius:50%}.form-shell{background:#fff;border:1px solid #e4eae4;border-radius:19px;box-shadow:0 22px 65px rgba(45,71,53,.09);overflow:hidden}.switch{display:grid;grid-template-columns:1fr 1fr;padding:8px;background:#f1f5f0;gap:6px}.switch button{border:0;border-radius:10px;padding:17px 8px;font-weight:700;color:#788d81;background:transparent;font-size:13px}.switch button.on{color:#244f40;background:#fff;box-shadow:0 2px 8px rgba(24,56,31,.06)}.form-top{padding:34px 36px 14px}.step-chip{display:inline-block;border-radius:5px;background:#ecf5ef;color:#317454;font-size:11px;font-weight:800;padding:6px 9px}.form-top h2{margin:13px 0 9px;font-size:24px;letter-spacing:-1.2px}.form-top p{font-size:13px;color:#89978f;margin:0;line-height:1.8}#intake-form{padding:13px 36px 36px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:19px;font-size:13px;font-weight:700;color:#344d43}.field sup{color:#dc7766;font-size:14px;vertical-align:baseline}.field>span,.field>label{display:block}.field input,.field select,.field textarea,.filters select,.filters input{border:1px solid #dce5de;border-radius:9px;padding:12px 13px;color:#304b3e;background:#fff;outline-offset:1px;width:100%;font-weight:400;transition:border .15s ease;font-size:13px}.field textarea{resize:vertical;line-height:1.6}.field input::placeholder,.field textarea::placeholder,.filters input::placeholder{color:#a3afa7}.field input:hover,.field select:hover,.field textarea:hover{border-color:#9ab4a3}.privacy{margin-top:4px;padding:18px 19px 16px;border-radius:10px;border:1px solid #e0e9df;background:#f8faf7}.privacy-head{display:flex;justify-content:space-between;align-items:center;font-size:12px}.privacy-head span{font-size:11px;color:#4c8969}.privacy p{font-size:11px;color:#708278;line-height:2;margin:11px 0 15px}.checkline{display:flex;gap:9px;align-items:flex-start;font-size:12px;line-height:1.55;color:#344d43;font-weight:700;cursor:pointer}.checkline input{accent-color:#267e55;width:17px;height:17px;margin-top:1px;flex-shrink:0}.primary-button,.dark-button{border:none;background:var(--green);color:#fff;font-weight:800;border-radius:10px;min-height:49px;box-shadow:0 7px 13px rgba(25,72,53,.11)}.primary-button{display:flex;justify-content:center;align-items:center;gap:10px;width:100%;padding:12px 20px;margin-top:20px}.primary-button:hover,.dark-button:hover{background:#174239}.primary-button:disabled{opacity:.55;cursor:not-allowed}.help-line{text-align:center;margin:12px 0 0;font-size:11px;color:#94a099;line-height:1.7}.feedback{font-size:12px;line-height:1.7;min-height:0}.feedback:not(:empty){margin-top:14px;padding:12px 13px;border-radius:9px}.feedback.success{background:#e9f5ec;color:#246b49}.feedback.error{background:#fff0eb;color:#ad433c}.site-footer{border-top:1px solid #e4ebe4;background:#fff}.footer-grid{display:flex;justify-content:space-between;gap:14px;padding-top:23px;padding-bottom:23px;color:#92a39a;font-size:11px;line-height:1.7}.footer-grid a{color:#627f70;text-decoration:none}.trap{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden} [hidden]{display:none!important}
/* Admin */
.admin-body{background:#f4f7f4}.admin-header{background:#fff}.admin-nav{display:flex;align-items:center;gap:17px}.admin-nav a{text-decoration:none;font-size:12px;color:#557165;font-weight:700}.light-button,.dark-button,.danger-button{padding:11px 17px;border-radius:9px;font-size:12px;font-weight:800}.light-button{border:1px solid #d8e4da;background:#fff;color:#365c48}.light-button:hover{background:#f2f8f2}.dark-button{min-height:auto;box-shadow:none}.danger-button{border:1px solid #f3d2ce;background:#fff2f0;color:#ab4744}.danger-button:hover{background:#ffe8e2}.admin-main{padding-top:49px;padding-bottom:90px;min-height:calc(100vh - 84px)}.dashboard-top{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:31px;gap:25px}.dashboard-top .eyebrow{margin-bottom:10px}.dashboard-top h1{font-size:30px;letter-spacing:-1.3px;margin:0 0 8px}.muted{color:#829388;font-size:12px;line-height:1.8}.dashboard-top .muted{margin:0}.actions{display:flex;gap:9px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid #e3eae2;border-radius:14px;padding:21px 23px 19px;min-height:145px}.stat-card span{display:block;font-size:12px;font-weight:800;color:#5f7a68}.stat-card strong{display:block;font-size:36px;letter-spacing:-1.6px;margin:13px 0 5px;color:#2b5946}.stat-card small{font-size:11px;color:#95a49c}.data-panel{background:#fff;border:1px solid #e0e8e0;border-radius:15px;overflow:hidden}.data-top{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:27px 27px 20px}.data-top h2{font-size:18px;margin:0 0 6px;letter-spacing:-.5px}.data-top h2 span{font-size:12px;color:#449067;margin-left:6px}.data-top p{margin:0}.filters{display:flex;gap:8px}.filters select,.filters input{max-width:160px;min-width:110px;padding:11px 12px}.filters input{max-width:200px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:825px;font-size:12px}th{background:#f6f9f6;color:#799083;font-size:11px;text-align:left;padding:14px 24px;white-space:nowrap;font-weight:800}td{border-top:1px solid #eef1ec;padding:17px 24px;color:#3e554b}td b{font-size:12px;color:#264f3d;display:block}.table-date{color:#8e9e93;font-size:11px;display:block;margin-top:6px;white-space:nowrap}.click-row{cursor:pointer}.click-row:hover{background:#f7faf7}.phone-cell{white-space:nowrap;font-variant-numeric:tabular-nums}.status{display:inline-block;background:#edf3ee;color:#587660;font-size:11px;border-radius:6px;padding:5px 9px;font-weight:800;white-space:nowrap}.status-new{background:#fff1e0;color:#ad7034}.table-button{background:transparent;color:#377454;border:0;padding:8px 0;font-size:12px;font-weight:800;white-space:nowrap}.empty{text-align:center;color:#93a197;height:125px}.table-footer{border-top:1px solid #edf2ed;padding:16px 27px;display:flex;justify-content:space-between;gap:12px;color:#93a49a;font-size:11px}.login-panel{max-width:448px;margin:6vh auto 0;background:#fff;border:1px solid #e5ece6;border-radius:20px;padding:42px;box-shadow:0 16px 50px rgba(30,60,43,.06);text-align:center}.login-panel .eyebrow{margin:18px 0 8px}.login-icon{background:#e7f3ea;border-radius:50%;width:65px;height:65px;display:grid;place-items:center;margin:0 auto;font-size:26px}.login-panel h1{font-size:25px;letter-spacing:-1px;margin:0}.login-panel>p:not(.eyebrow){font-size:13px;color:#859589;line-height:1.9}.login-panel form{text-align:left;margin-top:30px}.login-panel .muted{margin-top:16px}.login-panel code{overflow-wrap:anywhere}.detail-dialog{border:none;border-radius:17px;background:#fff;box-shadow:0 30px 80px rgba(12,40,21,.22);width:min(590px,calc(100% - 32px));max-height:90vh;padding:0;color:#2c4338}.detail-dialog::backdrop{background:rgba(12,29,17,.43)}.dialog-head{display:flex;justify-content:space-between;align-items:center;padding:25px 28px 15px}.dialog-head .eyebrow{margin-bottom:9px;letter-spacing:.7px}.dialog-head h2{margin:0;font-size:23px}.close-button{background:#f0f5f1;border:0;border-radius:9px;width:34px;height:34px;font-size:25px;color:#4f6a59}.details{padding:9px 28px 21px;display:grid;grid-template-columns:1fr 1fr;gap:17px;border-bottom:1px solid #e7ede7}.detail-item{min-width:0}.detail-item span{display:block;font-size:11px;font-weight:800;color:#8e9f91;margin-bottom:7px}.detail-item strong{display:block;font-size:13px;line-height:1.8;overflow-wrap:anywhere;white-space:pre-wrap}.detail-item:last-child{grid-column:1/-1}.detail-controls{padding:21px 28px 0}.detail-controls .field{margin-bottom:18px}.dialog-actions{padding:0 28px 26px;display:flex;gap:9px;align-items:center}.push{flex:1}.primary-button.compact{width:auto;margin:0;min-height:41px;font-size:12px;padding:10px 18px}
@media(max-width:1000px){.public-layout{gap:34px;grid-template-columns:1fr 1.05fr}.intro h1{font-size:37px}.data-top{align-items:flex-start;flex-direction:column}.stat-card{padding:20px}}@media(max-width:760px){.wrap{width:min(100% - 28px,580px)}.header-inner{height:70px}.brand-mark{height:37px;width:37px;font-size:25px}.brand b{font-size:14px}.brand small{font-size:9px}.header-phone{font-size:12px;white-space:nowrap}.public-layout{display:block;padding-top:38px;padding-bottom:55px}.intro{padding-top:0;margin-bottom:33px}.intro h1{font-size:35px;line-height:1.42}.intro-copy{margin:15px 0 21px}.contact-card{max-width:100%;padding:15px 17px}.intro-info{display:none}.form-top{padding:27px 22px 10px}#intake-form{padding:13px 22px 25px}.switch button{font-size:11px;padding:14px 5px}.footer-grid{flex-direction:column}.admin-main{padding-top:30px}.dashboard-top{align-items:flex-start;flex-direction:column}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{min-height:130px;padding:17px}.stat-card strong{font-size:30px}.actions{width:100%}.actions button{flex:1}.data-top{padding:21px 18px}.filters{flex-wrap:wrap;width:100%}.filters select{flex:1;min-width:105px}.filters input{flex:1 0 100%;max-width:none}.table-footer{padding:15px 18px;flex-direction:column}.login-panel{padding:32px 24px}.admin-nav a{display:none}.dialog-head{padding:24px 20px 13px}.details{padding:8px 20px 19px}.detail-controls{padding:20px 20px 0}.dialog-actions{padding:0 20px 22px}.dialog-actions button{font-size:11px;padding:9px}.detail-dialog{max-height:92vh}}
@media(max-width:415px){.header-phone{font-size:0}.header-phone span{font-size:20px}.form-grid{grid-template-columns:1fr;gap:0}.intro h1{font-size:31px;letter-spacing:-1.7px}.details{gap:14px}.detail-item strong{font-size:12px}}

.new-nav{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.new-nav a{border:1px solid #c8d8d5;border-radius:10px;padding:12px 14px;background:#fff;color:#173f3a;text-decoration:none;font-weight:700}.captcha-box{margin:14px 0;min-height:52px}.extra-section{margin-top:26px;padding:24px}.mini-list{margin-top:16px}.mini-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid #e6eeee;overflow-wrap:anywhere}.mini-row button{flex-shrink:0}.mini-row span{flex:1}.site-page{max-width:880px;margin:30px auto 90px;padding:0 18px}.site-page h1{font-size:30px;margin:16px 0}.opening-card{background:white;border:1px solid #d9e5e1;border-radius:16px;padding:22px;margin-bottom:14px}.opening-card h2{font-size:20px;margin:0 0 12px}.opening-card .meta{color:#285a52;margin-bottom:12px}.site-page a.back{color:#285a52;text-decoration:underline}.notice-panel{padding:18px;border-radius:10px;background:#f3faf8;border:1px solid #cfe4df;margin:16px 0;line-height:1.7}@media(max-width:700px){.extra-section{padding:16px}.mini-row{flex-direction:column;align-items:flex-start}.site-page h1{font-size:24px}}
/* v2.2 senior accessibility: public form only, not admin dashboard */
body.public-body:has(#intake-form) .intro h1{font-size:clamp(30px,4vw,46px)}
body.public-body:has(#intake-form) .intro-copy,body.public-body:has(#intake-form) .form-top p{font-size:17px;line-height:1.75}
body.public-body:has(#intake-form) .field>span,body.public-body:has(#intake-form) .field>label{font-size:17px;font-weight:750}
body.public-body:has(#intake-form) input:not([type=checkbox]):not([type=hidden]),body.public-body:has(#intake-form) select,body.public-body:has(#intake-form) textarea{font-size:18px;min-height:54px}
body.public-body:has(#intake-form) .switch button{font-size:clamp(14px,1.7vw,18px);min-height:58px}
body.public-body:has(#intake-form) .privacy p,body.public-body:has(#intake-form) .checkline{font-size:16px;line-height:1.75}
body.public-body:has(#intake-form) .primary-button{min-height:60px;font-size:19px}
body.public-body:has(#intake-form) .new-nav a{font-size:16px;line-height:1.5;min-height:52px;display:flex;align-items:center}

/* EDEN_JOB_MANAGEMENT_V308: administrator-only recruitment board */
.job-post-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:18px 0 8px}
.job-post-controls label{font-weight:800;color:#274e3e;font-size:14px}
.job-post-controls select,.job-post-controls input{padding:11px 12px;border:1px solid #ccd9cf;border-radius:9px;font:inherit;font-size:15px;max-width:280px;min-width:120px}
.job-post-entry{background:#fff;border:1px solid #dbe6df;border-radius:12px;padding:18px;margin:13px 0}
.job-post-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap;line-height:1.55}
.job-post-heading strong{font-size:17px;color:#173e33}
.job-badge{display:inline-flex;border-radius:99px;padding:5px 10px;font-size:13px;font-weight:800}
.job-badge.job-open{background:#e4f4e8;color:#125a36}
.job-badge.job-closed{background:#eceeec;color:#52645a}
.job-post-details{font-size:15px;color:#335647;margin:8px 0}
.job-post-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:13px}
.job-post-actions button{min-height:42px;font-size:14px;cursor:pointer}
.job-edit-form{margin-top:15px;border-top:1px solid #e1ebe4;padding-top:15px}
.job-edit-field{display:block;margin:12px 0;font-weight:750;font-size:14px;color:#244b3a}
.job-edit-field span{display:block;margin-bottom:7px}
.job-edit-field input,.job-edit-field textarea{width:100%;padding:12px;border:1px solid #bccfc2;border-radius:9px;font:inherit;font-size:15px}
@media(max-width:650px){.job-post-controls{align-items:stretch;flex-direction:column}.job-post-controls select,.job-post-controls input{width:100%;max-width:none}.job-post-entry{padding:14px}}
/* EDEN_JOB_MANAGEMENT_V308_END */

/* v3.1.1: distinct application-to-posting indication */
.applied-job-notice{background:#ecf7f0;border:2px solid #b4d8c4;border-radius:12px;padding:16px 18px;margin:0 0 20px;color:#164936;line-height:1.6}
.applied-job-notice strong{font-size:17px}.applied-job-notice p{margin:6px 0 10px;font-size:17px;font-weight:650;overflow-wrap:anywhere}
.applied-job-notice small{font-size:14px}.applied-job-notice a{color:#175840;text-decoration:underline}
.job-post-applicants{font-size:16px;font-weight:750;color:#175840;margin:8px 0}
#opening-filter{min-width:165px}
@media(max-width:650px){.applied-job-notice{padding:12px}.applied-job-notice p{font-size:16px}}

/* EDEN_MOBILE_COMPACT_V312_START: full desktop pages remain unchanged. */
.optional-fields>summary,.privacy-details>summary{list-style:none;cursor:pointer;color:#205747;font-weight:800}
.optional-fields>summary::-webkit-details-marker,.privacy-details>summary::-webkit-details-marker{display:none}
.optional-fields>summary,.privacy-details>summary{position:relative;padding:11px 34px 11px 13px;border:1px solid #cbded1;background:#f1f7f2;border-radius:9px}
.optional-fields>summary::after,.privacy-details>summary::after{content:'+';position:absolute;right:12px;font-size:21px;line-height:1;top:50%;transform:translateY(-50%)}
.optional-fields[open]>summary::after,.privacy-details[open]>summary::after{content:'−'}
.optional-fields summary small{font-size:12px;color:#547664}
.optional-fields[open]>summary{margin-bottom:14px}
/* Keep the old desktop form and privacy text fully visible without new headings. */
@media(min-width:761px){.optional-fields>summary,.privacy-details>summary,.mobile-jump,.privacy-brief{display:none}}
@media(max-width:760px){
 .public-layout{padding-top:10px;padding-bottom:32px}
 .intro{margin-bottom:12px;padding:0}
 .intro .eyebrow,.intro h1,.intro-copy,.intro .new-nav,.intro .intro-info{display:none}
 .contact-card{max-width:none;box-shadow:none;min-height:50px;padding:8px 12px;border-radius:10px;gap:10px}
 .contact-icon{height:34px;width:34px;font-size:20px;border-radius:9px}
 .contact-card small{font-size:11px}
 .contact-card a{font-size:19px}
 .contact-arrow{font-size:18px}
 .form-shell{border-radius:14px}
 .switch{padding:6px;gap:5px}
 .switch button{font-size:13px;padding:11px 5px;min-height:45px;line-height:1.35}
 .form-top{padding:16px 16px 5px}
 .form-top h2{font-size:24px;margin:7px 0 4px;line-height:1.3}
 .form-top p{font-size:14px;line-height:1.5}
 .step-chip{font-size:12px;padding:4px 8px}
 .mobile-jump{display:inline-block;font-size:13px;font-weight:750;margin-top:9px;color:#1b6345;text-underline-offset:3px}
 #intake-form{padding:12px 16px 22px}
 .form-grid{grid-template-columns:1fr;gap:0}
 .field{font-size:15px;gap:5px;margin-bottom:11px}
 .field input,.field select,.field textarea{font-size:16px;min-height:45px;padding:10px 12px}
 .optional-fields{margin:4px 0 12px}
 .optional-fields>summary{font-size:14px;line-height:1.6}
 .optional-fields>summary small{font-size:12px;display:inline}
 .privacy{padding:12px 13px;margin-top:8px}
 .privacy-head{font-size:13px}
 .privacy-head span{font-size:12px}
 .privacy-brief{display:block;font-size:12px!important;line-height:1.6!important;margin:9px 0!important;color:#4d6759!important}
 .privacy-details>summary{padding:8px 30px 8px 10px;font-size:13px;line-height:1.4}
 .privacy-details p{font-size:12px;line-height:1.75;margin:9px 0}
 .checkline{margin-top:11px;font-size:14px;line-height:1.5}
 .checkline input{width:23px;height:23px}
 .captcha-box{margin:11px 0;min-height:55px}
 .primary-button{font-size:17px;min-height:52px;margin-top:12px}
 .help-line{font-size:12px}
 #submit{scroll-margin-top:18px}
}
/* EDEN_MOBILE_COMPACT_V312_END */

/* EDEN_SERVICE_FEEDBACK_V320_ADMIN */
.fb-admin-list{display:grid;gap:12px;margin-top:16px}.fb-admin-card{border:1px solid #d2e4d8;border-radius:12px;padding:16px;background:#fff}.fb-admin-card-head{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:5px}.fb-admin-card-head strong{font-size:15px;color:#194b3d}.fb-admin-details{margin-top:12px}.fb-admin-details summary{cursor:pointer;color:#1c6349;font-weight:800;padding:10px 0}.fb-admin-content{white-space:pre-wrap;overflow-wrap:anywhere;padding:14px;background:#f3f7f3;border-radius:9px;line-height:1.7;font-size:14px}.fb-admin-field{display:block;margin:13px 0;font-weight:700;font-size:13px}.fb-admin-field select,.fb-admin-field textarea{display:block;max-width:100%;width:100%;margin-top:7px;padding:12px;border:1px solid #bbd2c2;border-radius:9px;font:inherit;font-size:14px}
