@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');
:root{--ink:#203028;--muted:#738078;--line:#e5ebe4;--paper:#f6f8f3;--green:#28734f;--green-dark:#1f6042;--mint:#e6f3e9;--white:#fff;--amber:#fbf3df;--red:#a8473a;--shadow:0 12px 36px #1e3d270d;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px 'Noto Sans KR',sans-serif}button,input,select,textarea{font:inherit}button,a,select{cursor:pointer}a{color:var(--green);text-decoration:none}.topbar{height:76px;background:#ffffffed;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100vw - 1240px)/2),28px);gap:28px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:20px;font-weight:800;letter-spacing:-.8px;white-space:nowrap}.brand-mark{width:34px;height:34px;border-radius:12px;background:var(--green);color:#fff;display:grid;place-items:center;font:700 19px 'DM Sans',sans-serif}.nav{display:flex;gap:5px;align-items:center}.nav-btn,.button,.text-button{border:0;border-radius:11px;font-weight:700;transition:background .15s,color .15s,transform .15s}.nav-btn{background:transparent;color:#69756d;padding:10px 13px}.nav-btn:hover,.nav-btn.active{background:var(--mint);color:var(--green)}.count{font-size:11px;color:var(--green)}.account-actions{display:flex;align-items:center;gap:7px}.welcome{font-size:12px;color:var(--muted);max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.button{padding:11px 15px}.button:hover{transform:translateY(-1px)}.primary{background:var(--green);color:white}.primary:hover{background:var(--green-dark)}.subtle{background:#eef2ed;color:#3c5144}.subtle:hover{background:#e3e9e2}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.mobile-menu{display:none;border:0;background:#eef2ed;border-radius:10px;padding:9px 12px}.shell{max-width:1240px;margin:auto;padding:0 28px 88px}.view{display:none}.view.active{display:block}.hero{min-height:420px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:50px;padding:48px 8px 30px}.eyebrow{display:inline-block;color:var(--green);font:700 11px 'DM Sans',sans-serif;letter-spacing:1.7px}.hero h1{font-size:clamp(40px,5vw,60px);line-height:1.17;letter-spacing:-2.7px;margin:13px 0 15px}.hero p{font-size:16px;line-height:1.8;color:var(--muted);max-width:480px}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:25px}.hero-actions .button{padding:14px 19px}.hero-actions .button span{margin-left:14px}.quiet-link{font-size:13px;color:#6e7d72}.hero-art{height:310px;position:relative;display:grid;place-items:center}.orbit{position:absolute;border:1px solid #cfe2d1;border-radius:50%;transform:rotate(-25deg)}.orbit-one{width:295px;height:220px}.orbit-two{width:390px;height:278px;transform:rotate(28deg)}.hero-sun{width:148px;height:148px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(150deg,#e7f5e9,#cde6d2);font-size:56px;color:var(--green);box-shadow:0 25px 70px #4c936225}.hero-note{position:absolute;background:white;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:30px;padding:10px 15px;font-size:12px;font-weight:700;color:#536458}.note-a{top:45px;left:13%}.note-b{bottom:44px;right:8%}.hero-leaf{position:absolute;right:23%;top:26%;width:44px;height:44px;display:grid;place-items:center;border-radius:15px;background:var(--green);color:#fff;font-size:21px;transform:rotate(14deg)}.trust-strip{display:flex;align-items:center;gap:10px;background:#eff5ee;border-radius:12px;padding:13px 17px;color:#5f7064;font-size:12px;margin:8px 0 57px}.trust-dot{width:8px;height:8px;border-radius:50%;background:#50a06b}.trust-strip a{margin-left:auto;font-weight:700;font-size:12px}.section-head,.panel-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.section-head h2,.page-head h1{font-size:30px;letter-spacing:-1.1px;margin:8px 0 5px}.section-head p,.page-head p{margin:0;color:var(--muted);font-size:14px}.result-total{color:var(--muted);font-size:12px;padding-bottom:4px}.filters{display:flex;gap:10px;margin:23px 0 14px;align-items:stretch}.searchbox{height:48px;border:1px solid var(--line);border-radius:12px;background:white;display:flex;align-items:center;gap:9px;padding:0 13px;flex:1;box-shadow:var(--shadow);color:#829087}.searchbox>span{font-size:21px}.searchbox input{width:100%;border:0;outline:0;background:transparent;font-size:14px;color:var(--ink)}.searchbox input::placeholder{color:#9ba69f}.searchbox kbd{font:11px 'DM Sans';padding:3px 6px;background:#f1f4f0;border-radius:5px}.filter-label{height:48px;padding:0 10px;border:1px solid var(--line);border-radius:12px;background:white;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px}.filter-label select,.toolbar select{border:0;outline:0;background:transparent;color:#304238;font-size:12px;font-weight:700}.toolbar{display:flex;justify-content:space-between;align-items:center;min-height:34px;color:var(--muted);font-size:12px;margin:5px 0 12px}.toolbar-right{display:flex;gap:15px;align-items:center}.compare-toggle{display:flex;gap:6px;align-items:center}.compare-toggle input{accent-color:var(--green)}.job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.job-card{min-height:207px;background:white;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow);transition:.16s;position:relative;display:flex;flex-direction:column;cursor:pointer}.job-card:hover{transform:translateY(-3px);border-color:#c3ddc9}.card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.category-pill{font-size:10px;font-weight:700;color:var(--green);background:#edf6ee;padding:6px 9px;border-radius:20px;line-height:1.3}.card-actions{display:flex;align-items:center;gap:5px}.icon-button{width:32px;height:32px;border:0;background:transparent;border-radius:9px;color:#a4ada6;font-size:18px}.icon-button:hover{background:#f2f5f1;color:var(--green)}.icon-button.saved{color:#d99c21}.icon-button.checked{color:var(--green)}.job-card h3{font-size:18px;letter-spacing:-.4px;margin:16px 0 8px}.job-card p{font-size:12px;color:var(--muted);line-height:1.65;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:39px}.card-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:15px;gap:8px}.status-pill{font-size:10px;padding:5px 8px;border-radius:20px;background:#f2f3f0;color:#657168;white-space:nowrap}.status-required{background:#e7f3eb;color:#246b48}.status-preferred{background:var(--amber);color:#8e6a1b}.status-none{background:#eff2f0;color:#657168}.status-verify{background:#f2f1ec;color:#78715c}.code-label{font:11px 'DM Sans',sans-serif;color:#a0aaa2}.empty-state{grid-column:1/-1;background:white;border:1px dashed #d4ddd4;border-radius:16px;padding:50px 20px;text-align:center;color:var(--muted)}.pagination{display:flex;justify-content:center;gap:6px;margin:25px 0}.page-button{border:1px solid var(--line);background:white;color:#637168;border-radius:9px;padding:8px 12px}.page-button.active{background:var(--green);border-color:var(--green);color:white}.page-button:disabled{opacity:.45}.scope-card{display:grid;grid-template-columns:34px 1fr;gap:13px;margin:55px 0 0;background:#eef3ed;border-radius:15px;padding:20px 22px}.scope-icon{width:28px;height:28px;border-radius:50%;background:white;color:var(--green);display:grid;place-items:center;font:bold 15px 'DM Sans'}.scope-card h3{font-size:14px;margin:2px 0 8px}.scope-card p{font-size:12px;color:#68776c;line-height:1.75;margin:0 0 7px}.scope-card a{font-size:12px;font-weight:700}.scope-card span{display:block;color:#8b968d;font-size:11px;margin-top:6px}.page-head{padding:49px 0 25px}.page-head h1{font-size:36px;margin:10px 0 7px}.plan-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow)}.panel h2{font-size:18px;margin:0 0 7px}.muted{font-size:12px;color:var(--muted)}.inline-form{display:flex;gap:8px;margin:17px 0}.input{width:100%;border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:white;color:var(--ink);outline-color:#8cbea0}.input:focus{border-color:#83b998}.plan-layout textarea{resize:vertical}.task-list{display:grid;gap:7px;margin-top:8px}.task-row{display:flex;align-items:center;gap:9px;padding:10px;border-radius:10px;background:#f6f8f5;font-size:13px}.task-row input{accent-color:var(--green)}.task-row.done span{text-decoration:line-through;color:#98a29b}.task-row button{margin-left:auto;border:0;background:transparent;color:#a5aea7}.reflection{background:#edf5ee}.reflection h2{font-size:24px;line-height:1.45;letter-spacing:-.6px;margin:12px 0}.reflection p{font-size:13px;line-height:1.8;color:#68796c;margin:0 0 16px}.compare-empty{background:white;border:1px dashed var(--line);border-radius:14px;text-align:center;padding:56px;color:var(--muted)}.compare-table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}.compare-table{border-collapse:collapse;width:100%;min-width:650px}.compare-table th,.compare-table td{padding:15px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;width:33.3%;line-height:1.7;font-size:13px}.compare-table th:first-child,.compare-table td:first-child{width:135px;background:#f7f8f5;color:#68766c;font-size:11px}.compare-table th{font-size:16px;color:var(--ink)}.compare-table tr:last-child td{border-bottom:0}.admin-message{display:flex;gap:14px;align-items:center;background:#f2f6f0;border-radius:12px;padding:14px 16px;color:#5e7063;font-size:12px;margin-bottom:16px}.admin-message b{color:var(--green);white-space:nowrap}.admin-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:15px;align-items:start}.admin-list-panel{min-height:400px}.panel-title-row{align-items:center}.panel-title-row h2{margin:0 0 4px}.compact{height:40px;max-width:210px;box-shadow:none}.compact input{font-size:12px}.admin-list{display:grid;margin-top:15px}.admin-row{display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line);padding:12px 0}.admin-row:last-child{border-bottom:0}.admin-row-info{flex:1;min-width:0}.admin-row-info b{display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-row-info small{font-size:10px;color:var(--muted)}.admin-row .button{padding:7px 10px;font-size:11px}.admin-form-panel h2{font-size:22px;margin:6px 0}.admin-form-panel>label,#job-form>label,.dialog-card>label{display:block;font-size:12px;font-weight:700;color:#536358;margin:11px 0}.admin-form-panel label .input,.dialog-card label .input{display:block;margin-top:6px;font-weight:400}.catalog-search{margin:13px 0 8px}.catalog-results{max-height:210px;overflow:auto;margin-bottom:12px}.catalog-result{display:flex;align-items:center;gap:7px;border-bottom:1px solid var(--line);padding:7px 0}.catalog-result span{font-size:12px;flex:1}.catalog-result small{color:var(--muted)}.catalog-result button{padding:6px 8px;font-size:10px}.admin-form-panel hr{border:0;border-top:1px solid var(--line);margin:14px 0}.form-actions{display:flex;gap:8px;margin-top:14px}.audit-panel{margin-top:16px}.audit-list{margin-top:12px}.audit-row{display:grid;grid-template-columns:150px 1fr auto;gap:12px;border-top:1px solid var(--line);padding:11px 0;font-size:12px;align-items:center}.audit-row small{color:var(--muted)}.dialog{border:0;border-radius:18px;padding:0;width:min(520px,calc(100% - 26px));max-height:calc(100% - 26px);overflow:auto;box-shadow:0 25px 85px #15231b40}.dialog::backdrop{background:#14201985;backdrop-filter:blur(3px)}.dialog-card{position:relative;padding:28px;background:white;border-radius:18px}.dialog-card h2{font-size:25px;letter-spacing:-.8px;margin:9px 0}.dialog-close{position:absolute;right:16px;top:15px;border:0;width:34px;height:34px;border-radius:50%;background:#eff3ee;font-size:20px;color:#5d6c62}.full{width:100%;margin-top:11px}.text-button{display:block;background:transparent;color:var(--green);margin:13px auto 0;padding:7px}.form-error{color:var(--red);font-size:12px;margin-top:9px}.hidden{display:none!important}.quiz-card{width:100%}.quiz-card fieldset{border:0;padding:0;margin:19px 0}.quiz-card legend{font-size:13px;font-weight:700;margin-bottom:10px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice-grid label{border:1px solid var(--line);border-radius:10px;padding:10px;font-size:12px;color:#56675b;display:flex;gap:8px;align-items:center}.choice-grid input{accent-color:var(--green)}.quiz-results{border-top:1px solid var(--line);margin-top:17px;padding-top:15px}.quiz-results h3{margin:0 0 8px}.quiz-results p{font-size:12px;color:var(--muted);line-height:1.7}.quiz-chips{display:flex;gap:6px;flex-wrap:wrap}.quiz-chips button{border:1px solid #d9e8dc;background:#f2f8f2;color:var(--green);border-radius:20px;padding:7px 10px;font-size:11px}.detail-card{width:100%}.detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.detail-head h2{font-size:29px;margin:6px 0}.detail-description{font-size:14px;line-height:1.8;color:#65736a}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.detail-box{padding:14px;background:#f5f7f3;border-radius:11px}.detail-box h4{font-size:11px;color:var(--muted);margin:0 0 7px}.detail-box p,.detail-box li{font-size:12px;line-height:1.7;margin:0;color:#3c4d41}.detail-box ul{padding-left:17px;margin:0}.source-note{font-size:11px;color:#859087;line-height:1.7;margin:14px 0}.detail-actions{display:flex;gap:8px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);padding:11px 17px;border-radius:10px;background:#20362a;color:#fff;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:40;box-shadow:var(--shadow)}.toast.show{opacity:1;transform:translate(-50%,0)}footer{border-top:1px solid var(--line);min-height:88px;display:flex;justify-content:center;align-items:center;gap:25px;padding:20px;color:#89938b;font-size:11px}.footer-brand{font-size:14px}footer .brand-mark{width:26px;height:26px;border-radius:9px;font-size:14px}
@media(max-width:980px){.topbar{gap:12px;padding:0 18px}.nav{gap:0}.nav-btn{padding:9px 8px;font-size:12px}.welcome{display:none}.hero{gap:15px}.admin-layout{grid-template-columns:1fr}.admin-form-panel{order:-1}.job-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.topbar{height:64px;padding:0 14px}.brand{font-size:17px}.brand-mark{width:30px;height:30px}.mobile-menu{display:block}.nav{display:none;position:absolute;top:63px;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:9px;flex-wrap:wrap;box-shadow:var(--shadow)}.nav.open{display:flex}.nav-btn{flex:1}.account-actions{margin-left:auto}.account-actions .button{padding:8px 10px;font-size:11px}.shell{padding:0 15px 55px}.hero{grid-template-columns:1fr;min-height:0;padding:43px 0 10px}.hero h1{font-size:43px}.hero-art{height:210px;transform:scale(.8);margin:-10px 0}.trust-strip{margin:2px 0 42px;align-items:flex-start}.trust-strip a{white-space:nowrap}.section-head h2{font-size:24px}.filters{flex-wrap:wrap}.searchbox{flex-basis:100%}.filter-label{flex:1;justify-content:space-between}.toolbar{align-items:flex-start;gap:8px}.toolbar-right{gap:8px}.job-grid{grid-template-columns:1fr}.job-card{min-height:185px}.page-head{padding:37px 0 20px}.page-head h1{font-size:31px}.plan-layout{grid-template-columns:1fr}.scope-card{margin-top:37px;padding:16px}.admin-message{align-items:flex-start;flex-direction:column;gap:4px}.panel{padding:17px}.admin-list-panel{min-height:0}.compact{max-width:145px}.audit-row{grid-template-columns:1fr auto}.audit-row small{grid-column:1}.detail-grid{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr}.dialog-card{padding:24px 20px}.hero-actions{flex-wrap:wrap;gap:12px}.hero-actions .button{width:100%}footer{flex-direction:column;gap:8px;text-align:center}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.footer-contact{flex-basis:100%;display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--line);color:#89938b}.footer-contact strong{color:var(--ink)}.footer-contact a{color:var(--muted)}.footer-contact .feedback-link{color:var(--green);font-weight:700}
