/**
 * Business Number Check
 * 라이브 테마 :root 토큰만 사용하는 도구 전용 스타일.
 */
.bizno-page .otl-body{background:var(--text-white)}

/* ── 히어로 ──────────────────────────────────────────────
   셸 바(44px) 바로 아래 한 장. 여기까지만 연회색이고 아래부터는 흰 배경이다.
   구획은 hairline 하나로 끝낸다 — 그림자와 겹치지 않는다. */
.bizno-hero{padding:var(--space-2xl) var(--px);border-bottom:calc(var(--space-xs) / 4) solid var(--surface-200);background:var(--surface-100);text-align:center}
.bizno-hero__inner{max-width:var(--max-w-narrow);margin:0 auto}
.bizno-hero__eyebrow{margin:0 0 var(--space-md);color:var(--primary);font-size:var(--font-xs);font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.bizno-hero__title{margin:0;color:var(--t-main);font-size:var(--font-3xl);font-weight:800;line-height:1.4;letter-spacing:-.02em}
.bizno-hero__accent{color:var(--primary)}
.bizno-hero__desc{max-width:var(--max-w-narrow);margin:var(--space-md) auto 0;color:var(--t-muted);font-size:var(--font-md);line-height:1.7}

.bizno-app,.bizno-app *,.bizno-app *::before,.bizno-app *::after{box-sizing:border-box}
.bizno-app{
		--bizno-hairline:calc(var(--space-xs) / 4);
	--bizno-focus-width:calc(var(--space-xs) / 2);
	--bizno-col-min:calc(var(--space-3xl) * 6 + var(--space-xl));
	--bizno-input-w:calc(var(--space-3xl) * 5 + var(--space-xl));
	--bizno-icon:var(--space-md);
	width:100%;max-width:var(--max-w);min-width:0;margin:0 auto;padding:var(--space-xl) var(--px) var(--space-2xl);background:var(--text-white);color:var(--t-body);font-size:var(--font-base);line-height:1.6
}
.bizno-app [hidden]{display:none}
.bizno-app h1,.bizno-app h2,.bizno-app h3,.bizno-app p,.bizno-app ul{margin:0}
.bizno-app h1,.bizno-app h2,.bizno-app h3{color:var(--t-main);line-height:1.3;font-weight:600;letter-spacing:-.012em}
.bizno-app h1{font-size:var(--font-xl)}
.bizno-app h2{font-size:var(--font-lg)}
.bizno-app h3{font-size:var(--font-md)}
.bizno-app button,.bizno-app input,.bizno-app select,.bizno-app textarea{font:inherit}
.bizno-workspace,.bizno-form,.bizno-query-layout,.bizno-card,.bizno-input-pane,.bizno-output-pane,.bizno-review,.bizno-preview,.bizno-results,.bizno-table-wrap{min-width:0}
.bizno-workspace{display:grid;gap:var(--space-md)}
.bizno-form{display:grid;gap:var(--space-xl)}
.bizno-notice{display:grid;gap:var(--space-sm);padding:var(--space-lg);border:calc(var(--space-xs) / 4) solid var(--surface-200);border-radius:var(--radius-nm);background:var(--surface-100);box-shadow:none;color:var(--t-body)}
.bizno-notice + .bizno-notice{margin-top:var(--space-md)}
.bizno-notice--fatal .bizno-notice__title{color:var(--color-danger)}
.bizno-notice__detail,.bizno-notice--boot{color:var(--t-muted);font-size:var(--font-sm)}
.bizno-intro{display:flex;align-items:flex-start;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-md)}
.bizno-account-summary{display:grid;justify-items:end;gap:var(--space-xs);color:var(--t-muted);font-size:var(--font-sm)}
.bizno-link{color:var(--primary);font-weight:600;text-decoration:underline;text-underline-offset:var(--space-xs)}
.bizno-link:hover{color:var(--primary-dark)}
.bizno-topbar{display:grid;gap:var(--space-xs)}
.bizno-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm);min-width:0}
.bizno-actions--primary{justify-content:flex-start}
.bizno-actions--csv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm);inline-size:max-content;max-inline-size:100%}
.bizno-run-reason{color:var(--color-danger);font-size:var(--font-sm)}
.bizno-query-layout{display:grid;grid-template-columns:minmax(0,var(--bizno-input-w)) minmax(0,1fr);gap:var(--space-lg);align-items:start}
.bizno-card{padding:var(--space-xl);border:calc(var(--space-xs) / 4) solid var(--surface-200);border-radius:var(--radius-nm);background:var(--text-white);box-shadow:none}
.bizno-input-card,.bizno-output-pane,.bizno-review,.bizno-results{display:grid;gap:var(--space-md)}
.bizno-section-heading,.bizno-mapping__heading,.bizno-output-heading,.bizno-results__heading{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md);min-width:0}
.bizno-section-heading > div,.bizno-output-heading > div,.bizno-results__heading > div,.bizno-diagnostics > div{display:grid;gap:var(--space-xs);min-width:0}
.bizno-section-heading p,.bizno-output-heading > div > p,.bizno-file-meta,.bizno-results__heading p,.bizno-lock-note,.bizno-diagnostics{color:var(--t-muted);font-size:var(--font-sm)}
.bizno-error-summary{color:var(--color-danger);font-size:var(--font-sm);font-weight:600}
.bizno-review-empty{padding:var(--space-xl) var(--space-lg);border:0;border-radius:var(--radius-nm);background:var(--surface-100);color:var(--t-muted);font-size:var(--font-sm);text-align:center}
.bizno-file-input,.bizno-visually-hidden{position:absolute;inline-size:var(--space-xs);block-size:var(--space-xs);padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.bizno-file-button,.bizno-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2xs);min-block-size:calc(var(--space-lg) + var(--space-nm));margin:0;padding:var(--space-sm) var(--space-md);border-width:var(--bizno-hairline);border-style:solid;border-radius:var(--radius-md);box-shadow:none;font-size:var(--font-md);font-weight:600;line-height:1.35;text-decoration:none;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),opacity var(--transition-fast)}
.bizno-button--sm{min-block-size:calc(var(--space-xl) + var(--space-xs));padding:var(--space-2xs) var(--space-nm);font-size:var(--font-sm)}
.bizno-button__icon{inline-size:var(--bizno-icon);block-size:var(--bizno-icon);flex:none}
.bizno-file-button,.bizno-button--secondary{border-color:var(--surface-300);background:var(--bg-subtle);color:var(--t-body)}
.bizno-file-button:hover,.bizno-button--secondary:hover:not(:disabled){border-color:var(--primary-300);color:var(--primary-dark)}
.bizno-button--primary{border-color:var(--primary);background:var(--primary);color:var(--text-white)}
.bizno-button--primary:hover:not(:disabled),.bizno-button--primary:focus-visible{border-color:var(--primary-dark);background:var(--primary-dark);color:var(--text-white)}
.bizno-button:disabled,.bizno-file-button[aria-disabled="true"]{opacity:.55;cursor:not-allowed}
.bizno-file-button[aria-disabled="true"]{pointer-events:none}
.bizno-field-label,.bizno-select-field{display:grid;gap:var(--space-xs);color:var(--t-main);font-size:var(--font-sm);font-weight:600}
.bizno-textarea,.bizno-select-field select,.bizno-copy-fallback{width:100%;min-width:0;margin:0;padding:var(--space-sm) var(--space-nm);border:var(--bizno-hairline) solid var(--surface-300);border-radius:var(--radius-md);background:var(--bg-subtle);box-shadow:none;color:var(--t-main);font-size:var(--font-md);line-height:1.55}
.bizno-textarea{min-block-size:calc(var(--space-3xl) + var(--space-3xl) + var(--space-3xl));resize:vertical}
.bizno-textarea[readonly]{background:var(--surface-100);color:var(--t-muted);cursor:default}
.bizno-copy-fallback{min-block-size:calc(var(--space-3xl) + var(--space-3xl));margin-top:var(--space-md)}
.bizno-textarea::placeholder{color:var(--t-muted)}
.bizno-mapping,.bizno-diagnostics,.bizno-limit-choice,.bizno-progress,.bizno-pause{padding:var(--space-md);border:0;border-radius:var(--radius-nm);background:var(--surface-100);box-shadow:none;display:grid;gap:var(--space-md)}
.bizno-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:var(--space-md);min-width:0}
.bizno-checkbox{display:inline-flex;align-items:center;gap:var(--space-sm);color:var(--t-body);font-size:var(--font-sm);font-weight:600;cursor:pointer}
.bizno-checkbox input{inline-size:var(--space-md);block-size:var(--space-md);margin:0;accent-color:var(--primary)}
.bizno-diagnostics ul{display:grid;gap:var(--space-xs);padding-inline-start:var(--space-lg);color:var(--t-body);font-size:var(--font-sm);list-style:disc}
.bizno-limit-preflight{color:var(--color-danger);font-weight:700}
.bizno-runbar{display:grid;gap:var(--space-md);min-width:0}
.bizno-limit-choice,.bizno-pause{color:var(--color-danger)}
.bizno-progress label{color:var(--t-main);font-size:var(--font-sm);font-weight:700}
.bizno-progress p{color:var(--t-muted);font-size:var(--font-sm)}
.bizno-progress progress{display:block;width:100%;block-size:var(--space-sm);border:0;border-radius:var(--radius-sm);background:var(--surface-200);accent-color:var(--primary);overflow:hidden}
.bizno-progress progress::-webkit-progress-bar{background:var(--surface-200)}
.bizno-progress progress::-webkit-progress-value{background:var(--primary)}
.bizno-progress progress::-moz-progress-bar{background:var(--primary)}
.bizno-app[data-bizno-locked="true"] .bizno-output-heading{display:none}
.bizno-empty{padding:var(--space-xl) var(--space-lg);border:0;border-radius:var(--radius-nm);background:var(--surface-100);color:var(--t-muted);font-size:var(--font-sm);text-align:center}
.bizno-table-wrap{width:100%;max-width:100%;border:var(--bizno-hairline) solid var(--surface-200);border-radius:var(--radius-nm);overflow-x:auto;overscroll-behavior-inline:contain;background:var(--bg-subtle);box-shadow:none}
.bizno-table{width:100%;min-width:100%;margin:0;border:0;border-collapse:collapse;background:var(--bg-subtle);color:var(--t-body);font-size:var(--font-md)}
.bizno-table th,.bizno-table td{padding:var(--space-nm) var(--space-md);border-width:0 0 var(--bizno-hairline);border-style:solid;border-color:var(--surface-200);background:var(--bg-subtle);color:inherit;text-align:left;vertical-align:top;white-space:nowrap}
.bizno-table th{background:var(--bg-subtle);border-color:var(--surface-300);color:var(--t-muted);font-size:var(--font-sm);font-weight:600;letter-spacing:.01em}
.bizno-table tr:last-child td{border-bottom:0}
.bizno-source-cell{white-space:nowrap}
.bizno-date-cell{white-space:nowrap}
.bizno-status-cell{min-width:var(--bizno-col-min);white-space:normal}
.bizno-status-content{display:flex;align-items:flex-start;gap:var(--space-sm);min-width:0}
.bizno-status-text{min-width:0;white-space:normal;overflow-wrap:anywhere}
.bizno-state-indicator{display:inline-flex;align-items:center;flex:none;gap:var(--space-xs);white-space:nowrap}
.bizno-state-indicator--normal{color:var(--color-success)}
.bizno-state-indicator--pending{color:var(--t-muted)}
.bizno-state-indicator__dot{inline-size:var(--space-2xs);block-size:var(--space-2xs);border-radius:var(--radius-full);background:currentColor;flex:none}
.bizno-state{display:inline-flex;align-items:center;flex:none;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border:var(--bizno-hairline) solid var(--surface-300);border-radius:var(--radius-md);background:var(--bg-subtle);box-shadow:none;font-size:var(--font-sm);font-weight:600;white-space:nowrap}
.bizno-state--warning{color:var(--color-warning)}
.bizno-state--danger{color:var(--color-danger)}
.bizno-app :is(button,input,select,textarea,[tabindex]):focus-visible{outline:0;border-color:var(--primary)}
.bizno-file-input:focus-visible + .bizno-file-button{border-color:var(--primary)}
.bizno-app .bizno-link:focus-visible,.bizno-results__heading h2:focus-visible{outline:var(--bizno-focus-width) solid var(--primary);outline-offset:var(--space-xs)}

@media (max-width:48rem){
	.bizno-hero{padding:var(--space-xl) var(--space-md)}
	.bizno-hero__title{font-size:var(--font-2xl)}
	.bizno-hero__desc{font-size:var(--font-sm)}
	.bizno-app{padding-inline:var(--space-md)}
	.bizno-intro{display:grid;justify-content:stretch}
	.bizno-account-summary{justify-items:start}
	.bizno-query-layout{display:flex;flex-direction:column}
	.bizno-input-pane,.bizno-output-pane{width:100%}
	.bizno-app[data-bizno-locked="true"] .bizno-output-pane{order:-1}
	.bizno-section-heading,.bizno-output-heading,.bizno-results__heading{display:grid}
	.bizno-actions{width:100%}
	.bizno-actions .bizno-button{flex:1 1 auto}
	.bizno-actions--csv{inline-size:100%}
	.bizno-card{padding:var(--space-lg)}
}
