@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/variable/pretendardvariable.css";:root{color:#1b2433;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f3f5f8;font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,system-ui,sans-serif}@media (width<=700px){.job-primary-filters,.job-filter-row{grid-template-columns:1fr}.jobs-filter-header{flex-direction:column;align-items:stretch}.jobs-filter-header button{width:100%}}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}input[type=number]{appearance:textfield}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}button{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-weight:800;display:inline-flex}button.secondary{color:#273449;background:#e8edf5}button:disabled{cursor:not-allowed;opacity:.45}input:not([type=checkbox]){color:#182233;background:#fff;border:1px solid #d4dce8;border-radius:8px;width:100%;min-width:0;padding:10px 12px}.select-root{width:100%;min-width:0;position:relative}.select-trigger{color:#182233;text-align:left;background:#fff;border:1px solid #d4dce8;border-radius:8px;justify-content:space-between;gap:10px;width:100%;min-width:0;padding:10px 12px;font-weight:500}.select-trigger:hover:not(:disabled){border-color:#b9c4d6}.select-trigger.open,.select-trigger:focus-visible{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1f}.select-value,.select-placeholder{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.select-placeholder{color:#64748b}.select-chevron{color:#64748b;flex:none;transition:transform .15s}.select-trigger.open .select-chevron{color:#2563eb;transform:rotate(180deg)}.select-menu{z-index:40;background:#fff;border:1px solid #dfe5ee;border-radius:10px;max-height:260px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 16px 36px #1e2a3e24}.select-option{color:#182233;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:6px;padding:9px 10px;overflow:hidden}.select-option.highlighted{background:#f1f5f9}.select-option.selected{background:#f1f5f9;font-weight:800}.select-option.disabled{color:#b7c0cd;cursor:not-allowed}input[type=checkbox]{flex-shrink:0;width:auto;min-width:auto;margin-top:2px}input[readonly]{color:#64748b;background:#f8fafc}h1,h2,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(25px,2.4vw,34px);font-weight:800;line-height:1.18}h2{margin:0;font-size:16px;font-weight:800;line-height:1.35}code{color:#1d4ed8;overflow-wrap:anywhere;background:#e9f0ff;border-radius:6px;padding:2px 6px}.shell{width:min(100%,1120px);min-height:100vh;margin:0 auto;padding:28px}.setup-shell{align-content:center;gap:22px;display:grid}.setup-header{max-width:760px}.setup-header p:last-child{color:#64748b;line-height:1.6}.setup-panel{max-width:760px}.login-shell{align-content:center;display:grid}.login-card{background:#fff;border:1px solid #dfe5ee;border-radius:10px;gap:22px;width:min(100%,560px);padding:28px;display:grid;box-shadow:0 18px 44px #1e2a3e14}.login-card p{color:#64748b;line-height:1.6}.oauth-list{gap:10px;display:grid}.oauth-button{color:#172033;background:#f8fafc;border:1px solid #dfe5ee;justify-content:space-between;min-height:48px}.oauth-button.google{background:#fff}.oauth-button.kakao{background:#fee500}.oauth-button.naver{color:#fff;background:#03c75a}.oauth-button span{color:inherit;opacity:.72;font-size:12px}.login-note{margin-bottom:0;font-size:13px}.onboarding-layout{grid-template-columns:260px minmax(0,760px);align-items:start;gap:18px;display:grid}.onboarding-steps{gap:10px;display:grid}.context-onboarding{border-top:1px solid #e2e8f0;gap:14px;margin-top:22px;padding-top:20px;display:grid}.context-onboarding h3{margin:3px 0 4px;font-size:15px}.context-onboarding p{color:#64748b;margin:0;font-size:13px}.context-choice,.context-pledge{gap:8px;display:grid}.context-choice>span,.context-pledge>span{color:#334155;font-size:13px;font-weight:800}.context-pledge em{color:#94a3b8;font-style:normal;font-weight:500}.context-choice>div{flex-wrap:wrap;gap:8px;display:flex}.context-choice button{color:#475569;background:#f8fafc;border:1px solid #dbe3ef;padding:8px 10px;font-size:13px}.context-choice button.active{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.step-item{color:#64748b;background:#fff;border:1px solid #dfe5ee;border-radius:8px;grid-template-columns:34px 1fr;align-items:center;gap:4px 10px;padding:14px;display:grid}.step-item span{color:#64748b;background:#eef2f7;border-radius:8px;grid-row:span 2;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.step-item strong{color:#1b2433}.step-item small{font-size:12px}.step-item.active span{color:#fff;background:#2563eb}.field-group{gap:10px;margin-bottom:16px;display:grid}label{gap:7px;min-width:0;display:grid}label>span{color:#334155;font-size:13px;font-weight:800}.money-input{align-items:center;gap:8px;display:flex}.money-input input{flex:1}.money-input>span{color:#64748b;flex:none;font-size:13px;font-weight:700}.money-field{gap:7px}.preset-row{flex-wrap:wrap;gap:8px;display:flex}button.preset{color:#273449;background:#eef3fb;width:auto;padding:7px 10px;font-size:12px}button.preset.active{color:#fff;background:#2563eb}.setup-actions{background:#f8fbff;border:1px solid #dbe4f0;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding:14px;display:flex}.setup-actions div{gap:3px;display:grid}.setup-actions span{color:#64748b;font-size:13px}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:#fff;border-right:1px solid #dfe5ee;height:100vh;padding:22px 16px;position:sticky;top:0}.brand{align-items:center;gap:12px;padding:6px 6px 22px;display:flex}.brand-mark{color:#fff;background:#1e3a8a;border-radius:8px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.brand strong,.brand span{display:block}.brand span{color:#64748b;margin-top:2px;font-size:12px;font-weight:600}.sidebar nav{gap:6px;display:grid}.sidebar nav button{color:#475569;background:0 0;justify-content:flex-start;width:100%;font-weight:700}.sidebar nav button.active{color:#1d4ed8;background:#eaf1ff}.workspace{min-width:0;padding:28px}.topbar{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:18px;display:flex}.eyebrow,.section-kicker{color:#2563eb;letter-spacing:0;margin:0 0 6px;font-size:12px;font-weight:800}.status{border:1px solid #d6dfec;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:900}.status.stable{color:#047857;background:#e0f8ed}.status.caution{color:#9a6700;background:#fff4cf}.status.risk{color:#b91c1c;background:#fee2e2}.summary-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.dashboard-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px;margin-bottom:16px;display:grid}.policy-page-layout{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:start;gap:16px;margin-bottom:16px;display:grid}.policy-list-column{gap:16px;min-width:0;display:grid}.policy-pagination-bottom{justify-content:center;padding:4px 0 8px}.dashboard-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.jobs-page{gap:16px;display:grid}.jobs-filter-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.jobs-filter-header h2{font-size:20px}.job-primary-filters,.job-filter-row{gap:12px;display:grid}.job-primary-filters{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:12px}.job-filter-row{grid-template-columns:repeat(3,minmax(0,1fr))}.job-primary-field,.job-filter-row label,.job-salary-field{gap:7px;display:grid}.job-primary-field>span,.job-filter-row label>span,.job-salary-field>span{color:#475569;font-size:12px;font-weight:800}.job-primary-field .select-trigger{background:#f8fbff;border-color:#b9c9e2;min-height:48px;font-weight:700}.job-primary-field input{background:#f8fbff;border-color:#b9c9e2;min-height:48px}.salary-range{align-items:center;gap:7px;display:flex}.salary-range input{min-width:0}.salary-range b{color:#94a3b8}.salary-range em{color:#64748b;white-space:nowrap;font-size:12px;font-style:normal}.inline-check{color:#475569;align-items:center;gap:7px;margin-top:12px;font-size:13px;display:inline-flex}.inline-check input{width:auto}.job-search-button{margin-top:18px}.jobs-empty-state{color:#64748b;text-align:center;place-items:center;gap:9px;min-height:180px;padding:28px;display:grid}.jobs-empty-state svg{color:#93a9c9}.jobs-empty-state strong{color:#334155}.jobs-empty-state span{font-size:13px}.jobs-search-error{color:#b42318;background:#fffbfa;border:1px solid #fecdca;border-radius:8px;margin:0;padding:12px 14px;font-size:13px}.job-result-list{gap:10px;display:grid}.jobs-result-note{color:#64748b;margin:0 0 2px;font-size:12px}.job-result-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(220px,.8fr) auto;align-items:center;gap:18px;padding:16px;display:grid}.job-result-card>div:first-child,.job-result-meta{gap:5px;display:grid}.job-result-card strong{color:#1e293b}.job-result-card span,.job-result-card a{color:#64748b;font-size:12px}.job-result-card a{color:#2563eb;white-space:nowrap;align-items:center;gap:4px;font-weight:800;display:inline-flex}.job-pagination{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:8px;display:flex}.job-pagination button{min-width:38px;padding:8px 10px;font-size:13px}.job-pagination button.active{color:#fff;background:#2563eb}.calendar-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;display:grid}.side-stack{gap:16px;display:grid}.panel,.metric,.notice{background:#fff;border:1px solid #dfe5ee;border-radius:8px;box-shadow:0 8px 22px #1e2a3e0f}.panel{min-width:0;padding:18px}.panel-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.metric{align-content:start;gap:8px;min-height:118px;padding:16px;display:grid}.metric-icon{color:#2563eb;background:#e9f0ff;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.metric span,.metric small,.muted{color:#64748b}.success-text{color:#15803d;font-size:13px;font-weight:700}.metric strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:clamp(18px,1.6vw,22px);line-height:1.15}.chart{height:300px}.guide-badge{color:#1d4ed8;background:#eff6ff;border:1px solid #93c5fd;border-radius:999px;margin-bottom:8px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.guide{color:#273449;font-size:15px;line-height:1.72}.form-row{grid-template-columns:minmax(0,1fr) 160px;gap:10px;margin-bottom:10px;display:grid}.form-row.single{grid-template-columns:1fr}.form-row.triple{grid-template-columns:repeat(3,minmax(0,1fr))}.button-row{flex-wrap:wrap;gap:10px;margin:10px 0 16px;display:flex}.flow-list,.item-list{gap:10px;display:grid}.with-margin{margin-top:16px}.flow-row,.item,.policy,.compare{background:#fbfcfe;border:1px solid #e4eaf2;border-radius:8px;padding:12px}.flow-row,.item,.compare{justify-content:space-between;align-items:center;gap:14px;min-width:0;display:flex}.item div,.policy div{gap:4px;min-width:0;display:grid}.item span,.policy span,.compare span{color:#64748b;overflow-wrap:anywhere;font-size:12px;line-height:1.45}.item strong,.item b,.flow-row strong,.policy strong,.compare strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.policy{cursor:pointer;grid-template-columns:18px minmax(0,1fr) auto;gap:12px;display:grid}.policy input{margin-top:3px}.policy p{color:#475569;margin-bottom:0;font-size:13px;line-height:1.55}.policy-pagination{flex-wrap:wrap;gap:6px;display:flex}.policy-pagination button{min-width:38px;padding:8px 10px}.policy-hide-button{white-space:nowrap;align-self:start;font-size:12px}.hidden-policy-list{border-top:1px solid #e4eaf2;gap:8px;margin-top:16px;padding-top:14px;display:grid}.hidden-policy-section{margin-top:16px}.hidden-policy-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.policy-filter-grid{grid-template-columns:minmax(130px,.8fr) minmax(180px,1.4fr) minmax(130px,.8fr);gap:10px;display:grid}.policy-filter-grid label{color:#475569;gap:6px;font-size:12px;font-weight:700;display:grid}.policy-result-summary{margin:12px 0 8px}@media (width<=700px){.policy-filter-grid{grid-template-columns:1fr}}.scenario-note{color:#2563eb;margin:12px 0 0;font-weight:800}.notice,.requirement{align-items:flex-start;gap:10px;display:flex}.notice{color:#b91c1c;padding:18px}.requirement{color:#273449;line-height:1.6}.calendar-tabs{margin-bottom:16px}.day-detail-tabs{margin-top:0}.transaction-type-toggle button{flex:1}.income-amount{color:#16a34a}.expense-amount{color:#dc2626}.finance-day-amounts{font-variant-numeric:tabular-nums;gap:2px;font-size:11px;font-weight:800;display:grid}.calendar-toolbar{grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-bottom:14px;display:grid}.calendar-nav-button{justify-self:start}.calendar-toolbar .calendar-nav-button:last-of-type{grid-column:3;justify-self:end}.calendar-month-title{text-align:center;grid-area:1/2;font-size:20px}.calendar-month-cost{color:#64748b;text-align:center;grid-area:2/1/auto/-1;font-size:13px}.calendar-toolbar .icon-button-text{grid-area:3/1/auto/-1;justify-self:center;margin-top:2px}.calendar-toolbar input{max-width:180px}.year-month-select{gap:8px;display:flex}.year-month-select .select-root{flex:1;min-width:0}.calendar-toolbar .year-month-select{max-width:220px}.weekday-row,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.weekday-row{color:#64748b;background:#f7f9fc;border:1px solid #e4eaf2;border-bottom:0;border-radius:8px 8px 0 0;font-size:12px;font-weight:800}.weekday-row span{text-align:center;padding:9px}.calendar-grid{border-top:1px solid #e4eaf2;border-left:1px solid #e4eaf2}.calendar-cell{background:#fff;border-bottom:1px solid #e4eaf2;border-right:1px solid #e4eaf2;min-height:164px;padding:12px}.muted-cell{color:#9aa7b8;background:#f8fafc}.day-number{place-items:center;min-width:24px;height:24px;font-size:12px;font-weight:800;display:inline-grid}.calendar-events{gap:7px;margin-top:8px;display:grid}.event-chip{color:#1d4ed8;text-overflow:ellipsis;white-space:nowrap;background:#eaf1ff;justify-content:flex-start;width:100%;min-width:0;padding:8px 9px;font-size:12px;font-weight:800;overflow:hidden}.event-list-item{text-align:left;cursor:pointer;border:0;width:100%}.event-list-item>span{gap:3px;display:grid}.event-list-item>span>span{color:#718096;font-size:12px}.selected-item{outline-offset:-2px;outline:2px solid #93c5fd}button.danger{color:#b42318;background:#fff1f0}.modal-backdrop{z-index:30;background:#0f172a6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.event-modal{background:#fff;border:1px solid #e4eaf2;border-radius:16px;width:min(100%,460px);padding:24px;box-shadow:0 24px 70px #0f172a38}.modal-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.modal-header h2{margin:5px 0 0;font-size:22px}.eyebrow{color:#2563eb;font-size:12px;font-weight:800}.icon-button{color:#64748b;background:#f1f5f9;width:34px;height:34px;padding:0}.event-detail-grid{background:#f8fafc;border-radius:10px;gap:14px;padding:16px;display:grid}.event-detail-grid span{color:#64748b;gap:4px;font-size:12px;display:grid}.event-detail-grid strong{color:#182233;font-size:14px}.modal-actions{justify-content:flex-end;margin-bottom:0}.date-trigger{color:#182233;background:#fff;border:1px solid #d4dce8;justify-content:flex-start;width:100%}.form-modal{width:min(100%,520px)}.form-modal>.panel{margin:0}.date-modal{background:#fff;border-radius:16px;width:min(100%,430px);padding:24px;box-shadow:0 24px 70px #0f172a38}.date-events-modal{background:#fff;border-radius:16px;width:min(100%,520px);padding:24px;box-shadow:0 24px 70px #0f172a38}.day-event-list{gap:10px;max-height:360px;display:grid;overflow-y:auto}.day-event-row{background:#fbfcfe;border:1px solid #e4eaf2;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex}.day-event-row>div:first-child{gap:4px;min-width:0;display:grid}.day-event-row span{color:#64748b;font-size:12px}.compact-actions{gap:6px;display:flex}.danger-icon{color:#b42318;background:#fff1f0}.date-picker-toolbar{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.date-picker-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.date-picker-day{color:#182233;background:#f8fafc;min-height:42px;padding:8px 4px}.date-picker-day:hover,.picked-date{color:#fff;background:#2563eb}.muted-date{color:#9aa7b8}@media (width<=1180px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.summary-strip,.dashboard-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-layout{grid-template-columns:1fr}}@media (width<=900px){.app-shell{grid-template-columns:1fr}.sidebar{z-index:10;border-bottom:1px solid #dfe5ee;border-right:0;height:auto;padding:12px;position:sticky;top:0}.brand{padding:0 4px 10px}.sidebar nav{gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.sidebar nav button{white-space:nowrap;flex:none;width:auto}.workspace,.shell{padding:18px}.topbar{flex-direction:column;align-items:flex-start}.summary-strip,.dashboard-grid,.policy-page-layout,.dashboard-grid.three,.form-row,.form-row.triple,.onboarding-layout{grid-template-columns:1fr}.onboarding-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.step-item{grid-template-columns:1fr}.step-item span{grid-row:auto}.chart{height:250px}}@media (width<=620px){.workspace,.shell{padding:12px}.topbar{gap:12px;margin-bottom:14px}.status{text-align:center;width:100%}.panel,.metric,.login-card{padding:14px}.metric{min-height:auto}.chart{height:220px;margin-left:-10px}.guide{font-size:15px}.job-result-card{grid-template-columns:1fr;gap:10px}.job-result-card a{justify-self:start}.flow-row,.item,.compare{flex-direction:column;align-items:flex-start;gap:8px}.button-row,button,.setup-actions button{width:100%}.setup-actions{flex-direction:column;align-items:stretch}.onboarding-steps{grid-template-columns:1fr}input,.select-trigger{min-height:44px}.calendar-toolbar{grid-template-columns:auto 1fr auto;gap:10px}.calendar-toolbar input{max-width:none}.weekday-row span{padding:6px 2px;font-size:11px}.calendar-cell{min-height:64px;padding:6px 4px}.day-number{min-width:20px;height:20px;font-size:11px}.calendar-events{gap:4px;margin-top:4px}.event-chip{padding:4px 5px;font-size:10px}}.modal-title{align-items:center;gap:6px;font-size:15px;font-weight:700;display:inline-flex}.error-text{color:#b42318}.email-import-modal{background:#fff;border-radius:16px;flex-direction:column;gap:8px;width:min(100%,560px);max-height:80vh;padding:20px 24px;display:flex;box-shadow:0 24px 70px #0f172a38}.email-import-modal .modal-header{border:none;padding:0}.email-import-status{text-align:center;padding:24px 0}.email-import-toolbar{border-bottom:1px solid #e4eaf2;align-items:center;padding:6px 0;display:flex}.checkbox-label{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:inline-flex}.email-import-toolbar .checkbox-label{white-space:nowrap}.email-import-list{flex-direction:column;flex:1;gap:4px;list-style:none;display:flex;overflow-y:auto}.email-import-item{border:1px solid #e4eaf2;border-radius:8px;padding:8px 12px;transition:background .1s}.email-import-item.checked{background:#f0f5ff;border-color:#2563eb}.email-import-item .checkbox-label{align-items:flex-start;width:100%;display:flex}.email-import-info{text-align:left;flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.email-import-title{color:#182233;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.email-import-meta{color:#64748b;flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.event-type-badge{color:#2563eb;background:#e4eaf2;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600}.icon-button-text{align-items:center;gap:5px;height:30px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}
