:root{--blue:#3182f6;--blue-deep:#1763ce;--ink:#191f28;--text:#4e5968;--muted:#6b7684;--line:#e5e8eb;--soft:#f7f9fc;--blue-soft:#edf5ff;--radius:20px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#fff;color:var(--ink);font-family:"Pretendard","Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;line-height:1.6;word-break:keep-all}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #87b8ff;outline-offset:4px}button:disabled{cursor:wait;opacity:.6}[hidden]{display:none!important}svg{display:block;flex-shrink:0}.skip-link{position:fixed;top:-80px;left:16px;background:var(--ink);color:#fff;z-index:20;padding:12px}.skip-link:focus{top:8px}.site-header{border-bottom:1px solid var(--line);background:#fff}.header-inner{max-width:1120px;margin:auto;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:800;letter-spacing:-.7px}.brand-icon{width:38px;height:38px;display:grid;place-items:center;background:var(--blue);border-radius:12px;color:white;font-size:32px;font-weight:500;line-height:1}.brand small{display:block;font-size:10px;font-weight:500;letter-spacing:.7px;color:var(--muted);margin-top:-3px}.header-inner nav{display:flex;gap:30px;font-size:14px;font-weight:600;color:var(--muted)}nav a{padding:10px 0}nav a:hover,nav a[aria-current=page]{color:var(--blue-deep)}main{min-height:65vh;outline:none}.container{max-width:1120px;margin:auto;padding:0 28px}.hero{padding:64px 0 38px;text-align:center;background:linear-gradient(180deg,#f6f9ff 0%,#fff 100%)}.eyebrow{display:inline-flex;align-items:center;gap:6px;color:var(--blue-deep);font-size:12px;font-weight:700;letter-spacing:.2px;margin:0 0 17px}.eyebrow .dot{height:6px;width:6px;border-radius:50%;background:var(--blue)}h1,h2,h3,p{margin-top:0}h1{font-size:42px;letter-spacing:-1.8px;line-height:1.4;margin-bottom:17px;font-weight:800}h1 em{font-style:normal;color:var(--blue)}.hero-copy{color:var(--muted);font-size:16px;margin-bottom:27px}.search{display:flex;align-items:center;gap:14px;max-width:620px;margin:0 auto;border:1px solid #dbe3ed;border-radius:15px;background:white;padding:0 18px;box-shadow:0 4px 18px #183e6810;text-align:left}.search:focus-within{border-color:var(--blue)}.search svg{color:#8b95a1}.search input{height:58px;flex:1;min-width:0;border:0;outline:none;background:transparent;font-size:15px;color:var(--ink)}.search input:focus-visible{outline:none}.clear-search{background:none;border:0;font-size:23px;color:var(--muted);min-width:32px;min-height:44px}.trust-line{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;font-size:12px;color:var(--muted);margin:17px 0 0}.trust-line span{display:flex;align-items:center;gap:5px}.catalog{padding-top:24px;padding-bottom:56px}.catalog-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:18px}.catalog-heading h2{font-size:21px;letter-spacing:-.7px;margin:0}.catalog-heading p{font-size:12px;color:var(--muted);margin:0}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:25px}.filter{padding:8px 17px;min-height:42px;border-radius:24px;background:#f2f4f6;color:var(--text);border:1px solid transparent;font-size:13px;font-weight:600}.filter[aria-pressed=true]{background:var(--ink);color:#fff}.filter:hover{border-color:#bdc9d7}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tool-card{position:relative;padding:25px;border:1px solid var(--line);border-radius:var(--radius);background:white;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;flex-direction:column;align-items:flex-start;min-height:210px}.tool-card:hover{transform:translateY(-3px);border-color:#accbfa;box-shadow:0 7px 20px #183e680a}.tool-card.featured{background:#f5f9ff;border-color:#d6e6ff}.card-top{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:19px}.icon-box{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:var(--blue-soft);color:var(--blue)}.icon-box.green{background:#edf8f2;color:#389b75}.icon-box.purple{background:#f2efff;color:#8d72cc}.icon-box.orange{background:#fff4e7;color:#cc8b3e}.card-tag{color:var(--muted);font-size:11px}.tool-card h3{margin:0 0 8px;font-size:17px;letter-spacing:-.65px}.tool-card p{color:var(--muted);font-size:13px;line-height:1.7;margin:0 17px 0 0}.card-arrow{position:absolute;right:23px;bottom:24px;color:#b0b8c1}.empty-search{padding:50px 20px;text-align:center;background:var(--soft);border-radius:20px}.empty-search h3{font-size:18px}.empty-search p{color:var(--muted);font-size:14px}.guide-banner{display:flex;align-items:center;gap:20px;padding:26px 28px;background:var(--soft);border-radius:18px;margin-top:28px}.guide-banner h3{font-size:16px;margin-bottom:3px}.guide-banner p{font-size:13px;color:var(--muted);margin:0}.guide-banner .text-link{margin-left:auto;white-space:nowrap}.text-link{color:var(--blue-deep);font-size:13px;font-weight:700}.faq{max-width:760px;margin:0 auto 68px;padding:0 28px}.faq h2{font-size:23px;margin-bottom:20px;letter-spacing:-.6px}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:17px 0;font-weight:600;font-size:14px}details p,details ul{color:var(--text);font-size:13px;margin-bottom:20px}.site-footer{max-width:1120px;margin:auto;border-top:1px solid var(--line);padding:30px 28px 40px;display:flex;justify-content:space-between;gap:30px;font-size:11px;color:var(--muted)}.footer-brand{font-size:14px;font-weight:800;color:var(--text)}.site-footer p{margin:4px 0 8px;max-width:510px}.site-footer a:hover{text-decoration:underline}.tool-page{padding-top:30px;padding-bottom:60px}.back-link{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:13px;min-height:40px;margin-bottom:17px}.tool-heading{margin-bottom:30px}.tool-heading .eyebrow{margin-bottom:8px}.tool-heading h1{font-size:32px;letter-spacing:-1.2px;margin-bottom:10px}.tool-heading p{font-size:15px;color:var(--muted);margin-bottom:0}.calculator-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.88fr);gap:24px;align-items:start}.form-panel,.result-panel{border:1px solid var(--line);border-radius:var(--radius);padding:28px;background:#fff;min-width:0}.form-panel h2,.result-panel h2{font-size:18px;letter-spacing:-.5px;margin-bottom:25px}.form-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.step-label{font-size:11px;color:var(--muted)}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 16px}.field{min-width:0}.field.full{grid-column:1/-1}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}.field input,.field select{width:100%;min-width:0;max-width:100%;height:49px;border:1px solid #d8dfe7;border-radius:10px;padding:0 13px;background:#fff;color:var(--ink);font-size:16px}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:#df4955}.field small{display:block;color:var(--muted);font-size:11px;margin-top:7px;line-height:1.6}.input-unit{position:relative}.input-unit input{padding-right:58px}.input-unit>span{position:absolute;right:14px;top:13px;font-size:13px;color:var(--muted);pointer-events:none}.field-checkbox{grid-column:1/-1;display:flex;align-items:flex-start;gap:9px;font-size:13px;color:var(--text)}.field-checkbox input{accent-color:var(--blue);width:18px;height:18px;margin:2px 0;flex-shrink:0}.field-checkbox small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.field-info{grid-column:1/-1;background:var(--soft);padding:14px 16px;border-radius:10px;color:var(--muted);font-size:12px}.field-info p:last-child{margin-bottom:0}.field-info summary{padding:0;font-size:12px}.form-actions{display:flex;gap:10px;margin-top:25px}.btn{border:0;border-radius:11px;padding:13px 20px;min-height:48px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn.primary{background:var(--blue);color:#fff;flex:1}.btn.primary:hover{background:var(--blue-deep)}.btn.secondary{background:#f2f4f6;color:var(--text)}.form-error{color:#c43846;font-size:12px;margin:13px 0 0}.result-panel{background:var(--soft);position:sticky;top:24px}.result-panel:focus{outline:none}.result-placeholder{min-height:280px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:var(--muted);padding:30px 5px}.result-placeholder .icon-box{width:60px;height:60px;background:#eaf0f7;color:#95a3b5;border-radius:19px;margin-bottom:20px}.result-placeholder strong{color:var(--text);font-size:16px;margin-bottom:9px}.result-placeholder p{font-size:13px;margin:0}.result-label{font-size:12px;color:var(--muted);margin-bottom:6px}.result-number{font-size:34px;font-weight:800;letter-spacing:-1px;color:var(--blue-deep);line-height:1.4;overflow-wrap:anywhere}.result-subtitle{font-size:13px;color:var(--muted);margin:9px 0 22px}.result-rows{margin:20px 0 0}.result-row{display:flex;align-items:baseline;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.result-row span{color:var(--muted)}.result-row strong{text-align:right;font-weight:650;overflow-wrap:anywhere}.result-note{font-size:12px;line-height:1.8;color:var(--muted);margin:19px 0 0}.result-note.warning{color:#946226;background:#fff5e3;border-radius:10px;padding:12px}.result-actions{display:flex;gap:8px;margin-top:22px}.result-actions .btn{padding:10px 15px;min-height:42px;font-size:12px;background:white;border:1px solid var(--line)}.result-table-wrap{overflow:auto;max-width:100%;margin-top:20px}.result-table{border-collapse:collapse;width:100%;font-size:12px}.result-table th,.result-table td{padding:10px 6px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}.result-table th:first-child,.result-table td:first-child{text-align:left}.result-table th{color:var(--muted);font-weight:500}.benefit{padding:16px 0;border-bottom:1px solid var(--line)}.benefit h3{display:flex;gap:10px;justify-content:space-between;font-size:14px;margin-bottom:7px}.benefit h3 strong{color:var(--blue-deep);white-space:nowrap}.benefit p{font-size:12px;color:var(--muted);margin-bottom:6px}.benefit small{color:#946226;font-size:11px}.source-box{margin-top:26px;color:var(--muted);font-size:12px;line-height:1.8}.source-box details{border-bottom:0}.source-box summary{font-size:12px}.source-box a{color:var(--blue-deep);text-decoration:underline}.prose{max-width:800px;margin:auto;padding:40px 28px 70px}.prose h1{font-size:32px}.prose h2{font-size:21px;margin-top:36px;margin-bottom:13px}.prose p,.prose li{font-size:14px;color:var(--text);line-height:1.9}.prose a{color:var(--blue-deep);text-decoration:underline}.prose .back-link{text-decoration:none;color:var(--muted)}.guide-steps{display:grid;gap:14px;margin:25px 0}.guide-step{border:1px solid var(--line);padding:22px;border-radius:16px}.guide-step label{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:700}.guide-step input{width:20px;height:20px;accent-color:var(--blue)}.guide-step p{margin:10px 0 0 32px;font-size:13px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:90vw;width:max-content;padding:13px 22px;background:var(--ink);color:#fff;border-radius:12px;box-shadow:0 8px 32px #191f2820;font-size:13px;z-index:30}.noscript{padding:30px;text-align:center}.month-bars{display:flex;align-items:flex-end;gap:6px;height:85px;margin-top:25px}.month-bars .bar{flex:1;background:#bfd9ff;border-radius:4px 4px 0 0;min-height:3px}.month-bars .bar:first-child{background:var(--blue)}.search-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.header-inner{padding-top:14px;padding-bottom:14px}.brand{line-height:1.35}.hero{padding:36px 0 20px}.hero h1{font-size:36px;line-height:1.3;margin-bottom:12px}.hero .eyebrow{margin-bottom:12px}.hero-copy{font-size:14px;margin-bottom:18px}.search input{height:52px}.trust-line{margin-top:12px}.catalog{padding-top:16px}.catalog-heading{margin-bottom:14px}.filters{margin-bottom:20px}.tool-card{min-height:195px;padding:23px}.card-top{margin-bottom:16px}
@media(max-width:850px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calculator-layout{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:16px}.form-panel,.result-panel{padding:22px}.fields{grid-template-columns:1fr}.field.full{grid-column:auto}.field-checkbox,.field-info{grid-column:auto}.result-number{font-size:29px}.tool-card{min-height:206px}}
@media(max-width:640px){.header-inner{padding:14px 20px;gap:10px}.brand{font-size:17px;gap:8px}.brand-icon{width:33px;height:33px;border-radius:10px}.brand small{font-size:8px}.header-inner nav{gap:16px;font-size:12px}.header-inner nav a:last-child{display:none}.container{padding-left:20px;padding-right:20px}.hero{padding:37px 0 24px}h1{font-size:30px;letter-spacing:-1.1px}.eyebrow{font-size:11px;margin-bottom:13px}.hero-copy{font-size:13px;max-width:280px;margin:0 auto 24px}.search{padding:0 14px;gap:10px}.search input{height:54px;font-size:14px}.trust-line{font-size:10px;gap:12px}.catalog{padding-top:18px;padding-bottom:38px}.catalog-heading h2{font-size:19px}.filters{gap:6px;margin-bottom:20px}.filter{padding:7px 13px;font-size:12px}.card-grid{grid-template-columns:1fr;gap:12px}.tool-card{min-height:0;padding:20px 48px 20px 81px;display:block;border-radius:16px}.card-top{position:static;margin:0}.icon-box{width:42px;height:42px;border-radius:13px}.card-top .icon-box{position:absolute;top:24px;left:21px}.card-tag{font-size:10px;display:block;margin-bottom:5px}.tool-card h3{font-size:16px;margin-bottom:5px}.tool-card p{font-size:12px;margin-right:0}.card-arrow{right:20px;bottom:auto;top:50%;transform:translateY(-50%)}.guide-banner{padding:21px;gap:13px;flex-wrap:wrap;margin-top:22px}.guide-banner>.icon-box{display:none}.guide-banner h3{font-size:15px}.guide-banner p{font-size:12px}.guide-banner .text-link{margin-left:0}.faq{margin-bottom:40px;padding:0 20px}.faq h2{font-size:20px}.site-footer{padding:25px 20px 30px;flex-direction:column;gap:10px}.tool-page{padding-top:16px;padding-bottom:40px}.back-link{margin-bottom:13px}.tool-heading{margin-bottom:23px}.tool-heading h1{font-size:27px}.tool-heading p{font-size:13px}.calculator-layout{grid-template-columns:1fr;gap:20px}.form-panel,.result-panel{padding:23px 20px;border-radius:17px}.result-panel{position:static}.result-placeholder{min-height:190px;padding:10px}.form-panel h2,.result-panel h2{font-size:17px}.fields{gap:19px}.result-number{font-size:32px}.result-row{font-size:12px}.prose{padding:22px 20px 40px}.prose h1{font-size:27px}.prose h2{font-size:20px}.prose p,.prose li{font-size:13px}.guide-step{padding:18px}.guide-step label{font-size:14px}.source-box{font-size:11px}.result-subtitle{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(max-width:640px){.hero h1{font-size:29px;line-height:1.4}.hero .eyebrow{margin-bottom:13px}.hero-copy{font-size:13px;margin-bottom:24px}.search input{height:54px}.trust-line{margin-top:17px}.tool-card{min-height:0;padding:20px 48px 20px 81px}.card-top{margin:0}}
@media print{.site-header,.site-footer,.back-link,.form-actions,.result-actions,.toast,.source-box{display:none!important}.tool-page,.prose{padding:0;max-width:none}.calculator-layout{display:block}.form-panel{display:none}.result-panel{position:static;border:0;box-shadow:none;background:white}.result-table-wrap{overflow:visible}details{break-inside:avoid}body{font-size:12px}.tool-heading h1{font-size:24px}}

.field-label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}
.birth-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:#f2f4f6;border-radius:12px}
.birth-mode-button{min-height:42px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:13px;font-weight:650;padding:8px 12px}
.birth-mode-button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:0 1px 4px #191f2818}
.welfare-api-panel{display:grid;grid-column:1/-1;gap:10px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fafbfd}
.welfare-api-panel>label{font-size:13px;font-weight:700}
.welfare-key-row{display:flex;align-items:center;gap:8px}
.welfare-key-row input,.welfare-keyword-field input{width:100%;min-width:0;height:47px;border:1px solid #d8dfe7;border-radius:10px;padding:0 13px;background:#fff;color:var(--ink);font-size:15px}
.welfare-key-row .btn,.api-key-options .btn{min-height:42px;padding:9px 13px;flex-shrink:0;font-size:12px}
.welfare-api-panel>small,.welfare-keyword-field small{display:block;color:var(--muted);font-size:11px;line-height:1.6}
.api-key-options{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.api-key-options .field-checkbox{flex:1;min-width:220px}
.welfare-keyword-field label{display:block;font-size:12px;font-weight:700;margin-bottom:7px}
.welfare-api-panel .field-info{margin:0}
.welfare-api-panel>.text-link{justify-self:start}
.welfare-result-location{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 13px;color:var(--text);font-size:13px;font-weight:650}
.welfare-result-location span{color:var(--muted);font-size:11px;font-weight:400;text-align:right}
.welfare-service-card{padding:16px 0;border-bottom:1px solid var(--line)}
.welfare-service-card h3{font-size:15px;line-height:1.5;margin:4px 0 7px;overflow-wrap:anywhere}
.welfare-service-card>p:not(.welfare-service-meta){font-size:12px;line-height:1.75;color:var(--text);margin:0 0 8px;white-space:pre-wrap}
.welfare-service-meta{font-size:10px;color:var(--muted);margin:0}
.welfare-tags{display:flex;flex-wrap:wrap;gap:5px;margin:9px 0}
.welfare-tag{padding:3px 8px;border-radius:20px;background:#edf5ff;color:var(--blue-deep);font-size:10px;line-height:1.5}
.welfare-service-actions{display:flex;flex-wrap:wrap;gap:15px;margin-top:10px}
.welfare-service-actions button{border:0;padding:0;background:transparent;cursor:pointer}
.welfare-detail{margin-top:13px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:12px;font-size:12px;line-height:1.8;overflow-wrap:anywhere}
.welfare-detail section{margin-top:13px}
.welfare-detail section:first-child{margin-top:0}
.welfare-detail h4{font-size:12px;margin:0 0 4px}
.welfare-detail p{margin:0 0 8px;white-space:pre-wrap}
.welfare-detail-summary{display:grid;gap:5px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.welfare-detail-row{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px}
.welfare-detail-row strong{color:var(--muted);font-weight:500}
.welfare-related{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.welfare-related p{margin:5px 0}
.welfare-detail a,.welfare-result-location a{color:var(--blue-deep);text-decoration:underline}
.welfare-more{width:100%;margin-top:16px;min-height:44px}
.welfare-empty{padding:24px 8px;text-align:center;color:var(--muted)}
.welfare-empty strong{font-size:13px;color:var(--text)}
.welfare-empty p{font-size:11px;margin:6px 0 0}
@media(max-width:640px){.welfare-api-panel{padding:15px}.api-key-options{align-items:flex-start}.api-key-options .field-checkbox{min-width:0}.welfare-result-location{display:block}.welfare-result-location span{display:block;margin-top:4px;text-align:left}.welfare-detail-row{grid-template-columns:64px minmax(0,1fr)}}