@font-face {font-family:Pretendard;src:url('/fonts/Pretendard-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face {font-family:Pretendard;src:url('/fonts/Pretendard-SemiBold.ttf') format('truetype');font-weight:600 800;font-display:swap}
.workspace-shell {--sidebar-width:208px;--font:Pretendard,'Malgun Gothic',sans-serif;font-family:var(--font);font-size:14px;background:#f3f6fb;color:#152b49}
.workspace-shell .sidebar {width:208px;background:#edf2f7;color:#233b58;border-right:1px solid #ccd8e5}
.workspace-shell .app-layout {grid-template-columns:208px minmax(0,1fr)}
.workspace-shell .brand {padding:20px 14px;gap:9px}
.workspace-shell .brand-copy strong {font-size:14px}
.workspace-shell .brand-copy span {font-size:11px}
.workspace-shell .nav-item {font-size:14px;min-height:42px;padding:10px;gap:8px;margin:0;line-height:20px;white-space:normal;color:#233b58}
.workspace-shell .nav-item svg {color:#607b9b;width:15px;height:15px;stroke-width:2}
.workspace-shell .nav-item:hover {background:#e2e7ed;color:#293b4d}
.workspace-shell .nav-item.active {background:#dfe5eb;color:#293b4d;box-shadow:inset 3px 0 #7e8b99}
.workspace-shell .nav-section-title {display:flex;align-items:center;font-size:12px;font-weight:400;line-height:18px;letter-spacing:normal;color:#596f89;height:25px;margin:4px 4px 2px;padding:0 8px}
.workspace-shell .sidebar-nav {display:flex;flex-direction:column;gap:2px;padding:0;min-height:0;scrollbar-width:thin;scrollbar-color:#a8b9cc transparent}
.workspace-shell .sidebar-nav::-webkit-scrollbar {width:6px}
.workspace-shell .sidebar-nav::-webkit-scrollbar-track {background:transparent}
.workspace-shell .sidebar-nav::-webkit-scrollbar-thumb {background:#a8b9cc;border-radius:8px}
.workspace-shell .nav-section {margin:0;padding:3px 8px}
.workspace-shell .workspace-nav-items {display:flex;flex-direction:column;gap:4px}
.workspace-shell .workspace-sidebar-header {padding:0 12px 14px;flex-shrink:0}
.workspace-shell .workspace-sidebar-footer {border-top:1px solid #ccd8e5;padding:8px;flex-shrink:0}
.workspace-shell .sidebar-user {padding:16px 10px 10px;gap:9px;min-height:0;font-size:13px;background:transparent;border:0;color:#233b58}
.workspace-shell .workspace-user-copy {display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;line-height:1.4}
.workspace-shell .sidebar-user small {margin-left:0;font-size:12px;color:#596f89;white-space:nowrap}
.workspace-shell .workspace-user-copy>span,.workspace-shell .workspace-user-copy>small {display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.workspace-shell .workspace-user-name {overflow-wrap:normal;word-break:normal}
.workspace-shell .sidebar-user .user-avatar {width:24px;height:24px;flex-shrink:0;background:#d7e4f3;color:#203f64}
.workspace-sidebar-search {display:flex;align-items:center;gap:7px;border:1px solid #c8d5e3;background:#f8fafc;border-radius:6px;padding:0 10px;color:#49617c}
.workspace-sidebar-search input {width:100%;min-width:0;height:38px;padding:0;border:0;outline:0;box-shadow:none;font-size:14px;background:transparent;color:#233b58}
.workspace-sidebar-search input::placeholder {color:#647997}
.workspace-sidebar-search:focus-within {outline:2px solid #8aa9d0;outline-offset:2px}
.workspace-sidebar-no-results {font-size:13px;color:#596f89;padding:16px;margin:0}
.workspace-shell [hidden] {display:none !important}
.workspace-shell .sidebar-user .user-copy span {font-size:10px;color:#596f89}
.workspace-shell .topbar {gap:18px;flex-wrap:wrap;min-height:72px}
.workspace-shell .topbar-actions {flex-wrap:wrap}
.workspace-shell .workspace-menu-toggle {display:inline-flex !important}
.workspace-breadcrumb {display:flex;align-items:center;gap:16px;color:#7d91ab;font-size:14px;margin-left:18px;}
.workspace-breadcrumb strong {color:#243c58;}
.workspace-account-actions {display:flex;align-items:center;flex-wrap:wrap;gap:14px;font-size:12px;color:#52677f;}
.workspace-account-actions a {color:#52677f;}
.workspace-shell .workspace-content {padding:38px 40px;max-width:1600px;min-width:0}
.workspace-work-panel {background:#fff;border:1px solid #dbe3ef;border-radius:10px;padding:26px;min-width:0;max-width:100%}
.workspace-section-heading {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;margin-bottom:24px}
.workspace-section-heading .page-heading {min-width:0}
.workspace-shell .workspace-section-heading h1 {font-size:30px;line-height:1.35;font-weight:600;letter-spacing:-.035em;margin:0}
.workspace-shell .workspace-section-heading .page-heading p {font-size:16px;line-height:1.5;color:#677b96;margin:9px 0 0}
.workspace-eyebrow {color:#607b9c;font-size:12px;line-height:18px;letter-spacing:.11em;font-weight:600;margin-bottom:9px}
.workspace-card-toolbar {display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:18px;padding:0;background:transparent;border:0}
.workspace-card-toolbar:has(.topbar-actions:empty) {display:none}
.workspace-card-toolbar .topbar-actions {width:100%;justify-content:flex-start;min-width:0;gap:10px}
.workspace-card-toolbar .global-search {width:min(560px,100%);max-width:100%;height:38px}
.workspace-card-toolbar .global-search input {min-height:0;height:100%;padding:0}
@media(min-width:768px){.workspace-shell .sidebar {transform:none}.workspace-shell .app-main {width:calc(100% - 208px);margin-left:208px}.workspace-shell.workspace-menu-collapsed .sidebar {transform:translateX(-100%);visibility:hidden}.workspace-shell.workspace-menu-collapsed .app-main {width:100%;margin-left:0;}}
.workspace-shell .welcome-strip {background:#edf2f7;color:#263b51;border-color:#d2dce7;box-shadow:none}
.workspace-shell .welcome-strip p {color:#566b82}
.workspace-shell .welcome-strip .eyebrow {color:#617388}
.workspace-shell .card-detail-heading {background:#edf2f7;color:#263b51;border-bottom:1px solid #d2dce7}
.workspace-shell .card-detail-heading h2 {color:#263b51}
.workspace-shell .card-detail-heading p {color:#566b82}
.workspace-shell .card-detail-heading .contact-avatar.large {background:#dfe7ef;color:#344b65}
.workspace-shell .card-detail-company {background:#f8fafc;border-color:#c5d1df}
.workspace-shell .card-detail-company span,.workspace-shell .card-detail-company small {color:#566b82}
.workspace-shell .card-detail-company a {color:#263b51}
.workspace-shell .company-monogram {background:#dfe7ef;color:#344b65}
.workspace-shell .server-address-card {background:#edf2f7;color:#263b51;border:1px solid #d2dce7}
.workspace-shell .server-address-card .server-illustration {color:#566b82}
.workspace-shell .server-address-card span,.workspace-shell .server-address-card p {color:#566b82}
.workspace-shell .audit-json-grid pre,.workspace-shell .code-panel {background:#edf2f7;color:#263b51}
.workspace-shell .code-panel code {background:#dfe7ef;color:#263b51}
.workspace-shell .button.primary {background:#e2e8ef;border-color:#bdcad8;color:#293f56}
.workspace-shell .button.primary:hover {background:#d5dee8;border-color:#a8b7c8;color:#20364e}
.workspace-shell .welcome-actions .button.secondary {background:#f8fafc;border-color:#c5d1df;color:#344b65}
.workspace-shell .welcome-actions .button.secondary:hover {background:#e0e7ef}
.workspace-shell .sidebar-user .icon-button.inverse {color:#596f89}
.workspace-shell .sidebar-account-link {font-size:11px;color:#596f89;margin-top:5px}
.workspace-shell .card-filter-panel {padding:0;border:0;background:transparent;box-shadow:none}
.workspace-shell .card-filter-details>summary {cursor:pointer;color:#52677f;font-size:13px;padding:8px 0;}
.workspace-shell .card-filter-form {display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;padding:14px;border:1px solid #d9e2ed;border-radius:8px;background:#fff;margin-top:8px}
.workspace-shell .card-filter-form>label {flex:1 1 180px;min-width:0;display:grid;gap:6px;}
.workspace-shell .card-filter-form input[type='month'] {appearance:auto;min-width:0;width:100%;height:38px;border:1px solid #c8d5e3;border-radius:6px;padding:0 10px;background:#fff;color:#263f60;font:inherit;}
@media(max-width:767px){.workspace-shell .global-search {display:flex;width:100%;min-width:0;}.workspace-shell .topbar-actions {width:100%;}.workspace-shell .global-search input {min-width:0;}}
.workspace-module-tabs {display:flex;flex-wrap:wrap;gap:6px;padding:0 0 12px;margin-bottom:24px;border-bottom:1px solid #dbe3ef;background:#fff;font-size:14px}
.workspace-module-tabs a {color:#52677f;text-decoration:none;padding:7px 10px;border-radius:6px}
.workspace-module-tabs a:hover {background:#edf2f7;color:#293b4d}
.workspace-module-tabs a[aria-current='page'] {background:#dfe5eb;color:#293b4d;font-weight:600}
.workspace-shell .auth-main {width:100%;max-width:520px;margin:auto;padding:28px 20px}
.workspace-shell .signup-panel {padding:26px;box-sizing:border-box}
.workspace-shell .signup-panel h1 {font-size:24px;margin:0 0 8px}
.workspace-shell .signup-panel p {line-height:1.7;margin:14px 0}
.workspace-shell .stack-form {display:grid;gap:14px}
.workspace-shell .stack-form .field {display:grid;gap:6px}

/* Card create/edit: aligned field groups without stretching a checkbox to a memo's height. */
.workspace-shell .card-form-sections {display:grid;gap:24px;padding:20px;min-width:0;container-type:inline-size}
.workspace-shell .card-form-section {border:0;margin:0;padding:0;min-width:0}
.workspace-shell .card-form-section legend {padding:0;margin-bottom:12px;font-size:14px;font-weight:600;color:var(--ink-950)}
.workspace-shell .card-basic-fields,.workspace-shell .card-contact-fields,.workspace-shell .card-note-fields {display:grid;gap:16px;align-items:start;min-width:0}
.workspace-shell .card-basic-fields {grid-template-columns:repeat(4,minmax(0,1fr))}
.workspace-shell .card-contact-fields {grid-template-columns:repeat(3,minmax(0,1fr))}
.workspace-shell .card-note-fields {grid-template-columns:repeat(2,minmax(0,1fr))}
.workspace-shell .card-form-sections .field {gap:7px}
.workspace-shell .card-form-sections .field input,.workspace-shell .card-form-sections .field select {height:40px;min-width:0}
.workspace-shell .card-form-sections textarea {width:100%;resize:vertical;line-height:1.6}
.workspace-shell .card-contact-fields textarea {height:88px;min-height:88px}
.workspace-shell .card-note-fields textarea {height:112px;min-height:112px}
.workspace-shell .card-primary-field {align-self:start;align-items:center;padding:12px 14px;min-height:0}
.workspace-shell .card-primary-field input {flex:none;margin:0}
@container (max-width:900px) {
  .workspace-shell .card-basic-fields {grid-template-columns:repeat(2,minmax(0,1fr))}
  .workspace-shell .card-contact-fields {grid-template-columns:repeat(2,minmax(0,1fr))}
  .workspace-shell .card-contact-fields .field:last-child {grid-column:1 / -1}
}
@container (max-width:540px) {
  .workspace-shell .card-basic-fields,.workspace-shell .card-contact-fields,.workspace-shell .card-note-fields {grid-template-columns:minmax(0,1fr)}
}
.workspace-shell .stack-form input {width:100%;min-height:40px}

/* Login only: do not widen signup and other single-column account forms. */
.workspace-shell .auth-main.workspace-login-main {max-width:1120px;min-height:100dvh;padding:36px 28px;box-sizing:border-box}
.workspace-login-main .login-shell {width:100%;min-height:560px;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);border-radius:16px}
.workspace-login-main .login-brand-panel {min-width:0;padding:40px;gap:40px;background:#edf2f7;color:#152b49;border-right:1px solid #d8e2ed}
.workspace-login-main .official-brand-mark {width:156px;height:31px;box-sizing:border-box;border-radius:0;background:transparent;flex-shrink:0}
.workspace-login-main .official-brand-mark img {display:block;width:156px;height:31px;object-fit:contain}
.workspace-login-main .login-brand-panel h1 {font-size:30px;line-height:1.45;word-break:keep-all;letter-spacing:-.8px}
.workspace-login-main .login-brand-panel p {font-size:14px;line-height:1.8;word-break:keep-all;color:#566d89}
.workspace-login-main .login-brand-panel .eyebrow {font-size:11px !important;letter-spacing:1.3px;color:#405979 !important}
.workspace-login-main .login-security-note {font-size:12px;line-height:1.7;max-width:320px;word-break:keep-all;background:transparent;border-color:#c8d7e6;color:#536a88}
.workspace-login-main .login-security-note svg {flex-shrink:0}
.workspace-login-main .login-form-panel {min-width:0;min-height:0;padding:40px}
.workspace-login-main .login-form-wrap {width:100%;max-width:390px;min-width:0}
.workspace-login-main .login-heading h2 {font-size:28px;line-height:1.4}
.workspace-login-main .login-heading p {font-size:14px;line-height:1.7;word-break:keep-all}
.workspace-login-main .login-heading .eyebrow {font-size:11px}
.workspace-shell .workspace-login-main .field input {min-height:46px;font-size:15px}
.workspace-shell .workspace-login-main .button {min-height:44px;font-size:14px}
.workspace-login-main .login-help {margin-top:24px;padding-top:20px}
.workspace-login-main .login-help strong {font-size:13px;line-height:1.7;word-break:keep-all}
.workspace-login-main .login-help p {margin:7px 0 12px;font-size:12px;line-height:1.75;word-break:keep-all}
.workspace-login-main .login-version {font-size:11px;line-height:1.6;margin-top:20px;word-break:keep-all}
@media(max-width:760px){
  .workspace-shell .auth-main.workspace-login-main {padding:24px 18px}
  .workspace-login-main .login-shell {grid-template-columns:minmax(0,1fr);min-height:0;max-width:520px}
  .workspace-login-main .login-brand-panel {display:flex;min-height:0;padding:24px 28px;gap:16px}
  .workspace-login-main .login-brand-panel h1 {font-size:23px;margin:0}
  .workspace-login-main .login-brand-panel p,.workspace-login-main .login-security-note {display:none}
  .workspace-login-main .login-brand-panel .eyebrow {display:block}
  .workspace-login-main .login-form-panel {padding:28px;min-height:0}
}
@media(max-width:380px){
  .workspace-shell .auth-main.workspace-login-main {padding:12px}
  .workspace-login-main .login-brand-panel,.workspace-login-main .login-form-panel {padding:22px}
}

/* Match the material workspace, including elements with legacy 9-11px rules.
   These styles affect web pages only, not workbook or print-template fonts. */
.workspace-shell .page-heading h1 {font-size:30px;line-height:1.35}
.workspace-shell .panel-header h2 {font-size:18px;line-height:1.4}
.workspace-shell .data-table th {font-size:13px;min-height:44px;height:auto;padding:11px 12px;line-height:1.5}
.workspace-shell .data-table td {font-size:15px;padding:11px 12px;line-height:1.6}
.workspace-shell .data-table .primary-link {font-size:16px}
.workspace-shell .detail-list dd,.workspace-shell .contact-info strong,
.workspace-shell .contact-memo p,.workspace-shell .record-meta-panel>div strong,
.workspace-shell .readonly-field strong,.workspace-shell .memo-box {font-size:16px;line-height:1.7}
.workspace-shell .button,.workspace-shell .button.compact,
.workspace-shell .global-search input,.workspace-shell .field input,
.workspace-shell .field select,.workspace-shell .field textarea,
.workspace-shell .filter-form input,.workspace-shell .filter-form select {font-size:14px;min-height:38px}
.workspace-shell .field,.workspace-shell .filter-form>label:not(.filter-search),
.workspace-shell .detail-list dt,.workspace-shell .readonly-field span,
.workspace-shell .contact-info span,.workspace-shell .text-link,
.workspace-shell .text-button,.workspace-shell .copy-button.labeled,
.workspace-shell .check-field strong,.workspace-shell .contact-card-header p,
.workspace-shell .page-heading p,.workspace-shell .panel-header p,
.workspace-shell .inline-alert p,.workspace-shell .empty-state p {font-size:13px;line-height:1.6}
.workspace-shell .field small,.workspace-shell .cell-subtext,
.workspace-shell .detail-list dd small,.workspace-shell .badge,.workspace-shell .grade-badge,
.workspace-shell .primary-badge,.workspace-shell .role-badge,.workspace-shell .action-badge,
.workspace-shell .count-pill,.workspace-shell .tag,.workspace-shell .inline-code,
.workspace-shell .per-page,.workspace-shell .pagination-bar,
.workspace-shell .card-detail-company span,.workspace-shell .card-detail-company small,
.workspace-shell .record-meta-panel>div span,.workspace-shell .record-meta-panel>div small,
.workspace-shell .contact-meta dd,.workspace-shell .contact-footer,
.workspace-shell .validation-errors,.workspace-shell .check-field small {font-size:13px;line-height:1.6}
.workspace-shell .metric-card span,.workspace-shell .quick-list strong,
.workspace-shell .action-list strong,.workspace-shell .activity-item strong {font-size:14px}
.workspace-shell .metric-card p,.workspace-shell .quick-list span,
.workspace-shell .action-list span,.workspace-shell .activity-item span {font-size:12px;line-height:1.6}
.workspace-shell .card-list-table .col-date {width:125px}
.workspace-shell .card-list-table .col-name {width:120px}
.workspace-shell .card-list-table .col-mobile {width:165px}
.workspace-shell .card-detail-company a {font-size:16px;line-height:1.6}
.workspace-shell .global-search {min-height:40px}
.workspace-shell .contact-meta dt,.workspace-shell .contact-memo strong,
.workspace-shell .memo-box strong,.workspace-shell .timeline-list strong,
.workspace-shell .image-upload-title strong,.workspace-shell .danger-zone strong {font-size:13px;line-height:1.6}
.workspace-shell .timeline-list small,.workspace-shell .image-upload-title span,
.workspace-shell .image-placeholder span,.workspace-shell .remove-image-check,
.workspace-shell .no-card-image,.workspace-shell .danger-zone p {font-size:12px;line-height:1.6}
.workspace-shell .panel,.workspace-shell .dashboard-grid>* {min-width:0;max-width:100%}
.workspace-shell .workspace-brand-title {font-size:14px;flex:1}
.workspace-shell .brand {justify-content:center;flex-wrap:wrap;min-height:88px;height:auto;padding:24px 0 18px;background:transparent;border-radius:0;border-bottom:0;box-shadow:none}
.workspace-shell .workspace-company-logo {display:block;width:156px;height:auto;max-width:100%;object-fit:contain;filter:none}
.workspace-shell .workspace-sidebar-close {display:none}
.workspace-shell .workspace-menu-toggle {width:auto;min-width:74px;height:36px;gap:7px;padding:0 10px;border:1px solid #d8e3f3;border-radius:8px;color:#203c60;background:#fff;font-size:13px;font-weight:600;flex-shrink:0}
.workspace-shell .workspace-menu-toggle:hover {background:#f3f6fb;border-color:#a6bbd7}
.workspace-shell .workspace-menu-toggle:focus-visible,.workspace-shell .workspace-sidebar-close:focus-visible {outline:2px solid #7094c0;outline-offset:3px}
.workspace-shell .nav-item.active svg {color:inherit}
.workspace-shell .nav-item.active::before {display:none}
@media(max-width:767px){
  .workspace-shell.workspace-menu-open {overflow:hidden}
  .workspace-shell .sidebar {width:min(296px,86vw);height:100dvh;min-height:0;overflow:hidden}
  .workspace-shell .brand {min-height:88px;height:auto;padding:24px 0 18px;flex-shrink:0}
  .workspace-shell .sidebar-nav {min-height:0}
  .workspace-shell .sidebar-user {flex-shrink:0}
  .workspace-shell .workspace-menu-toggle {display:inline-flex !important}
  .workspace-shell .workspace-sidebar-close {display:inline-flex;align-items:center;justify-content:center;flex-basis:100%;gap:6px;min-height:32px;padding:4px 10px;border:1px solid #c8d5e3;border-radius:6px;background:#f8fafc;color:#49617c;font-size:13px}
  .workspace-shell .workspace-sidebar-close span {font-size:20px;line-height:1}
  .workspace-shell .sidebar-backdrop {backdrop-filter:blur(3px)}
}
/* Icon and input must share the inside of one border, including fractional zoom. */
.workspace-shell .filter-form>label {min-width:0}
.workspace-shell .filter-search {height:40px;min-width:0}
.workspace-shell .filter-search input {flex:1;min-width:0;width:0;min-height:0;height:100%;padding:0;border:0;background:transparent;box-shadow:none}
.workspace-shell .filter-form select,.workspace-shell .filter-form .button {height:40px;min-height:40px;box-sizing:border-box}
.workspace-shell code,.workspace-shell pre,.workspace-shell kbd,.workspace-shell samp,
.workspace-shell .inline-code,.workspace-shell .credential-box strong,
.workspace-shell .audit-json-grid pre,.workspace-shell .server-address-card strong,
.workspace-shell .code-panel code {font-family:var(--font)}
@media(max-width:1200px){.workspace-shell .workspace-content {padding:26px}}
@media(max-width:700px){.workspace-shell .workspace-content {padding:16px}.workspace-work-panel {padding:16px 12px}}
@media(max-width:640px){.workspace-shell .workspace-section-heading h1 {font-size:26px}}
/* A narrow window must wrap management actions, never remove them. */
.workspace-shell .company-side-actions {display:block;min-width:0}
.workspace-shell .topbar-actions .button.secondary {display:inline-flex}
.workspace-shell .topbar-actions,.workspace-shell .company-side-actions .button-row {flex-wrap:wrap;gap:10px}
.workspace-shell .global-search {min-width:0;max-width:100%}
.workspace-shell .global-search input {min-width:0}
.workspace-shell .company-detail-layout>* {min-width:0}
/* Match ERP column titles; retain body numbers and row-label alignment. */
.workspace-shell .data-table > thead > tr > th {text-align:center!important;vertical-align:middle}
/* Match ERP screen tables; do not change standalone cards or printed tables. */
@media screen {
  .workspace-shell .data-table > :is(thead, tbody, tfoot) > tr > :is(th, td):not(:last-child) {border-right:1px solid #dbe3ef!important}
  .workspace-shell .data-table > :is(thead, tbody, tfoot) > tr > :is(th, td) + :is(th, td) {border-left:0!important}
}
