/* One action hierarchy across public pages and customer/office forms. */
:root{--ink:#172940;--navy:#172940;--accent:#245edb;--blue:#245edb;--muted:#627087;--line:#dce3ee;--action:#245edb;--action-hover:#194bb6;--choice:#eef4ff;--control-border:#b8c7df}
body{color:var(--ink)}
button,a.button,a.button-link,a.btn,.consult-action,.fee-consult{transition:background-color .15s,border-color .15s,box-shadow .15s;touch-action:manipulation}
button:disabled,button[aria-disabled="true"]{background:#e8edf4!important;border-color:#d5deea!important;color:#69778d!important;box-shadow:none!important;opacity:1!important;cursor:not-allowed}
:is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #245edb!important;outline-offset:3px}
button:not(:disabled):active,a.button:active,a.button-link:active{transform:translateY(1px)}
button.primary,a.button,a.button-link,a.btn,button.button,button[type="submit"],.consult-action,.fee-consult{background:var(--action)!important;border-color:var(--action)!important;color:#fff!important;border-radius:8px!important}
button.primary:not(:disabled):hover,a.button:hover,a.button-link:hover,a.btn:hover,button.button:not(:disabled):hover,.consult-action:hover,.fee-consult:hover{background:var(--action-hover)!important;border-color:var(--action-hover)!important;color:#fff!important}
button.secondary,button.plain,button.plain-button,button.text,button.email-copy,button[type="reset"],.revenue-presets button,.compare-card>button{background:#fff!important;color:#244679!important;border:1px solid var(--control-border)!important;box-shadow:none!important}
button.secondary:not(:disabled):hover,button.plain:not(:disabled):hover,button.plain-button:not(:disabled):hover,button.text:not(:disabled):hover,button.email-copy:not(:disabled):hover,button[type="reset"]:hover,.revenue-presets button:hover,.compare-card>button:hover{background:var(--choice)!important;border-color:var(--action)!important}
/* Primary and secondary header actions retain the same size and position. */
.public-header{color:#172940;border-bottom-color:#e2e7f0}
.public-header .public-nav a:hover,.public-header .public-nav a[aria-current="page"]{color:var(--action)}
.public-header .public-nav .office-entry{text-decoration:none}
.public-header .public-nav .nav-consult,.public-header .public-nav .filing-entry,.home .mobile-consult>a{border-radius:8px;border:1px solid var(--action);gap:7px;box-shadow:none;text-decoration:none!important}
.public-header .public-nav .nav-consult,.home .mobile-consult>a[href="/consult/"]{background:#fff;color:var(--action)}
.public-header .public-nav .nav-consult:hover,.home .mobile-consult>a[href="/consult/"]:hover{background:var(--choice);color:var(--action-hover);box-shadow:none}
.public-header .public-nav .filing-entry,.home .mobile-consult .mobile-filing{background:var(--action);color:#fff}
.public-header .public-nav .filing-entry:hover,.home .mobile-consult .mobile-filing:hover{background:var(--action-hover);color:#fff}
.public-header .public-nav .filing-entry[aria-current="page"]{background:var(--action-hover);color:#fff}
.public-header .nav-icon{width:17px;height:17px;flex:0 0 17px}
.public-header .nav-arrow{width:14px;height:14px;flex:0 0 14px}
/* Only the active calculator has a filled surface; every tab remains clickable. */
.tax-main .calc-switch{border:0;gap:10px;margin-bottom:18px}
.tax-main .calc-switch button{display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--control-border)!important;background:#fff!important;color:#244679!important;padding:14px 18px;outline:none;box-shadow:none;flex:1 1 190px}
.tax-main .calc-switch button[aria-pressed="true"]{background:var(--action)!important;border-color:var(--action)!important;color:#fff!important;outline:none}
.tax-main .calc-switch button[aria-pressed="true"]::before{content:"✓";font-weight:750}
.tax-main .calc-switch button[aria-pressed="false"]:hover{background:var(--choice)!important;border-color:var(--action)!important}
/* Selection controls use a fixed border and an actual, visible check mark. */
:is(.customer,.simulation-customer) .tax-choice button{position:relative;background:#fff!important;color:#172940!important;border:2px solid #d3ddeb!important;border-radius:10px!important;outline:none!important;box-shadow:none;padding:20px 52px 20px 20px!important;min-height:112px!important}
:is(.customer,.simulation-customer) .tax-choice button::after{content:"";position:absolute;right:18px;top:21px;width:24px;height:24px;border:2px solid #b7c6dc;border-radius:50%;box-sizing:border-box}
:is(.customer,.simulation-customer) .tax-choice button.chosen{background:var(--choice)!important;color:#173b77!important;border:2px solid var(--action)!important;box-shadow:none;padding:20px 52px 20px 20px!important;outline:none!important}
:is(.customer,.simulation-customer) .tax-choice button.chosen::after{content:"✓";display:grid;place-items:center;background:var(--action);border-color:var(--action);color:#fff;font-size:15px;line-height:1;font-weight:750}
:is(.customer,.simulation-customer) .tax-choice button:not(.chosen):hover{background:#f7faff!important;border-color:#8baae5!important}
:is(.customer,.simulation-customer) .tax-choice button.chosen:hover{background:#e7efff!important}
:is(.customer,.simulation-customer) .tax-choice button strong{color:inherit}
:is(.customer,.simulation-customer) .tax-choice button span{color:#627087!important}
:is(.customer,.simulation-customer) .tax-choice button.chosen span{color:#365781!important}
:is(.customer,.simulation-customer) .tax-choice button:focus-visible{outline:3px solid #245edb!important}
.choice-row button,.group-buttons button{background:#fff!important;color:#244679!important;border:1px solid var(--control-border)!important;outline:none;box-shadow:none}
.choice-row button.selected,.group-buttons button.selected,.group-buttons button[aria-pressed="true"]{background:var(--choice)!important;color:#194bb6!important;border:2px solid var(--action)!important;outline:none!important}
.choice-row button.selected::before{content:"✓ ";font-weight:750}
.topic-options label,.need-grid label{border:2px solid #dce3ee;border-radius:8px;min-height:52px;padding:12px;gap:10px;background:#fff;color:#344563}
.topic-options label:hover,.need-grid label:hover{background:#f7faff;border-color:#9db6e4}
.topic-options label:has(:checked),.need-grid label:has(:checked){border:2px solid var(--action);background:var(--choice);color:#194bb6;font-weight:650}
.topic-options input,.need-grid input,input[type="checkbox"],input[type="radio"]{accent-color:#245edb!important;cursor:pointer}
.topic-options input,.need-grid input{width:22px;height:22px;flex:0 0 22px}
.check,.check-label,.kakao-consent,.industry-choice{cursor:pointer}
.check:has(:checked),.kakao-consent:has(:checked){color:#194bb6}
.business-segments input:checked+span{border-color:var(--action);color:#194bb6;background:var(--choice)}
.business-segments input:checked+span::before{content:"✓";margin-right:7px;font-weight:750}
/* Neutral waiting state remains distinct from actions that can be pressed. */
#kakao-auth button.query-loading,#kakao-auth button.query-loading:disabled,#kakao-auth button.query-loading:hover{background:#e5e7eb!important;color:#172b4d!important;border-color:#e5e7eb!important;cursor:wait}
@media(max-width:700px){.public-header .public-nav .nav-consult,.public-header .public-nav .filing-entry{gap:5px}.public-header .nav-icon{width:15px;height:15px;flex-basis:15px}.public-header .nav-arrow{width:12px;height:12px;flex-basis:12px}.tax-main .calc-switch{gap:8px}.tax-main .calc-switch button{flex:1 1 100%;min-height:52px;padding:13px 12px}:is(.customer,.simulation-customer) .tax-choice button,:is(.customer,.simulation-customer) .tax-choice button.chosen{padding:16px 50px 16px 16px!important;min-height:100px!important}.topic-options label,.need-grid label{padding:11px 10px}}
@media(max-width:360px){.public-header .nav-icon,.public-header .nav-arrow{display:none}}
@media(prefers-reduced-motion:reduce){button,a.button,a.button-link,a.btn,.consult-action,.fee-consult{transition:none}}
html body button:disabled,html body button[aria-disabled="true"]{background:#e8edf4!important;border-color:#d5deea!important;color:#69778d!important;box-shadow:none!important;opacity:1!important;cursor:not-allowed}
html body #kakao-auth button.query-loading:disabled{background:#e5e7eb!important;color:#172b4d!important;cursor:wait}
