/* Lovable-style PACS Wiki skin. Scoped to body.pacs-lovable. */
:root{--lv-bg:#f4f4f5;--lv-side:#09090b;--lv-line:#e4e4e7;--lv-soft:#fafafa;--lv-text:#18181b;--lv-muted:#71717a;--lv-faint:#a1a1aa;--lv-accent:#0d9488;--lv-accent2:#0f766e;--lv-danger:#ef4444;--lv-font:"Inter","Noto Sans KR","Malgun Gothic","Apple SD Gothic Neo",system-ui,sans-serif;--lv-mono:"JetBrains Mono","Consolas",monospace}
html body.pacs-lovable{margin:0!important;background:var(--lv-bg)!important;color:var(--lv-text)!important;font-family:var(--lv-font)!important;font-size:14px!important}body.pacs-lovable a{text-decoration:none!important}body.pacs-lovable button,body.pacs-lovable input{font-family:inherit!important}
body.pacs-lovable .main-layout{display:grid!important;grid-template-columns:268px minmax(0,1fr)!important;gap:0!important;min-height:100vh!important;padding:0!important;background:var(--lv-bg)!important}body.pacs-lovable .sidebar{position:sticky!important;top:0!important;width:268px!important;height:100vh!important;min-height:100vh!important;padding:0!important;overflow:hidden!important;border:0!important;border-right:1px solid #27272a!important;border-radius:0!important;background:var(--lv-side)!important;box-shadow:none!important}body.pacs-lovable .content{min-width:0!important;padding:0!important;background:var(--lv-bg)!important}
.lv-header{min-height:102px;padding:25px 44px;border-bottom:1px solid #d8d8dd;background:#fafafa}.lv-inner{max-width:1440px;margin:0 auto}.lv-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.lv-kicker{margin:0 0 6px;color:var(--lv-faint);font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.lv-title{margin:0;color:var(--lv-text);font-size:27px;font-weight:900;line-height:1.15;letter-spacing:-.035em}.lv-title span{color:var(--lv-faint);font-weight:500;margin:0 9px}.lv-title b{color:var(--lv-accent);font-weight:900}.lv-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.lv-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:38px!important;padding:0 16px!important;border-radius:5px!important;border:1px solid #d8d8df!important;background:#fff!important;color:#52525b!important;font-size:14px!important;font-weight:800!important;line-height:1!important;cursor:pointer!important}.lv-btn-accent{background:var(--lv-accent)!important;border-color:var(--lv-accent)!important;color:#fff!important}.lv-btn-accent:hover{background:var(--lv-accent2)!important}.lv-btn-dark{background:#18181b!important;border-color:#18181b!important;color:#fafafa!important}.lv-btn-dark:hover{background:#27272a!important}.lv-btn-ghost:hover{background:#f4f4f5!important;color:#18181b!important}
.lv-body{max-width:1440px;margin:0 auto;padding:32px 44px 42px}.lv-stack{display:flex;flex-direction:column;gap:22px}.lv-card{border:1px solid #dedee3!important;border-radius:10px!important;background:#fff!important;box-shadow:0 1px 2px rgba(24,24,27,.025)!important;overflow:hidden!important}.lv-search-card{padding:24px!important}.lv-label{display:block;margin:0 0 14px;color:#52525b;font-size:12px;font-weight:800}.lv-search-form{display:grid!important;grid-template-columns:minmax(260px,1fr) 96px 96px!important;gap:10px!important;align-items:center!important}.lv-input{width:100%!important;min-height:40px!important;padding:0 15px!important;border:1px solid #d8d8df!important;border-radius:5px!important;background:#fafafa!important;color:#18181b!important;font-size:14px!important;font-weight:500!important;outline:none!important;box-shadow:none!important}.lv-input:focus{border-color:rgba(13,148,136,.55)!important;background:#fff!important;box-shadow:0 0 0 2px rgba(13,148,136,.08)!important}
.lv-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;border-bottom:1px solid #f1f1f3}.lv-card-title{margin:0;color:#18181b;font-size:15px;font-weight:900}.lv-card-sub{margin:5px 0 0;color:var(--lv-muted);font-size:14px}.lv-card-meta{color:var(--lv-muted);font-size:12px;font-weight:700;white-space:nowrap}.lv-card-body{padding:22px 24px 24px}.lv-todo-add{display:grid;grid-template-columns:minmax(240px,1fr) 72px;gap:10px;align-items:center;padding-bottom:12px;margin-bottom:10px;border-bottom:1px solid var(--lv-line)}.lv-todo-add .lv-input{border:0!important;border-radius:0!important;background:transparent!important;padding-left:0!important}.lv-link{border:0!important;background:transparent!important;color:var(--lv-accent)!important;font-size:14px!important;font-weight:900!important;cursor:pointer!important}.lv-link:hover{color:var(--lv-accent2)!important}
.lv-todo-list{display:flex;flex-direction:column;gap:5px}.lv-todo{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;min-height:48px!important;padding:10px 12px!important;border:1px solid rgba(24,24,27,.02)!important;border-radius:6px!important;background:rgba(250,250,250,.72)!important}.lv-todo.done{opacity:.55}.lv-todo-main{min-width:0;flex:1}.lv-todo .todo-inline-edit-form{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important;width:100%!important}.lv-badge{display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:3px 8px;border-radius:5px;font-size:10px;font-weight:900;line-height:1.2;white-space:nowrap}.lv-badge-normal{background:#dbeafe;color:#1d4ed8}.lv-badge-important{background:#fef3c7;color:#b45309}.lv-badge-urgent{background:#fee2e2;color:#dc2626}.lv-todo-title{min-width:0;overflow:hidden;color:#3f3f46;font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.lv-todo-input{display:none!important;min-height:34px!important}.lv-todo.editing .lv-todo-title{display:none!important}.lv-todo.editing .lv-todo-input{display:block!important}.lv-todo-actions{display:flex;align-items:center;gap:16px;flex:0 0 auto}.lv-todo-actions button{border:0!important;background:transparent!important;color:#a1a1aa!important;font-size:12px!important;font-weight:800!important;cursor:pointer!important}.lv-todo-actions button:hover{color:var(--lv-accent)!important}.lv-todo-actions .lv-del:hover{color:var(--lv-danger)!important}
.lv-table-wrap{width:100%;overflow-x:auto}.lv-table{width:100%;border-collapse:collapse;background:#fff}.lv-table thead tr{background:#fafafa;border-bottom:1px solid #f1f1f3}.lv-table th{padding:13px 24px;color:var(--lv-muted);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;text-align:left;white-space:nowrap}.lv-table th.lv-right,.lv-table td.lv-right{text-align:right}.lv-table tbody tr{border-bottom:1px solid #f1f1f3;cursor:pointer;transition:background .12s ease}.lv-table tbody tr:hover{background:rgba(244,244,245,.72)}.lv-table td{padding:16px 24px;color:#52525b;font-size:13px;vertical-align:middle}.lv-mono{font-family:var(--lv-mono);color:#a1a1aa;font-size:12px}.lv-case-title{display:block;color:#18181b;font-size:14px;font-weight:800;line-height:1.35}.lv-chip-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.lv-chip{display:inline-flex;align-items:center;padding:4px 8px;border-radius:5px;background:#f4f4f5;color:#52525b;font-size:10px;font-weight:800;line-height:1.2;white-space:nowrap}.lv-chip-accent{background:rgba(13,148,136,.10);color:#0f766e}.lv-empty{padding:52px 24px;color:#a1a1aa;text-align:center;font-size:14px;font-weight:700}
body.pacs-lovable .sidebar-home-link{display:flex!important;align-items:center!important;gap:12px!important;min-height:82px!important;margin:0!important;padding:25px 26px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#fafafa!important;box-shadow:none!important}.sidebar-home-mark{display:flex!important;align-items:center!important;justify-content:center!important;width:34px!important;height:34px!important;border:1px solid rgba(13,148,136,.40)!important;border-radius:5px!important;background:rgba(13,148,136,.18)!important;color:var(--lv-accent)!important;font-size:10px!important;font-weight:900!important}.sidebar-home-title{color:#f4f4f5!important;font-size:15px!important;font-weight:900!important}.sidebar-home-subtitle{margin-top:4px!important;color:#71717a!important;font-size:10px!important;font-weight:800!important;letter-spacing:.16em!important;text-transform:uppercase!important}.sidebar-scroll-body{height:calc(100vh - 82px)!important;padding:16px 13px 22px!important;overflow-y:auto!important;overflow-x:hidden!important}.sidebar-section-title,.sidebar-title{display:block!important;margin:0 0 12px!important;padding:0 13px!important;color:#71717a!important;font-size:10px!important;font-weight:900!important;letter-spacing:.16em!important;text-transform:uppercase!important}.popular-list{display:flex!important;flex-direction:column!important;gap:2px!important}.popular-item,.side-link,.sidebar-import-link,.sidebar-manager-btn{display:flex!important;align-items:center!important;width:100%!important;min-height:34px!important;padding:8px 13px!important;border:0!important;border-radius:5px!important;background:transparent!important;color:#a1a1aa!important;font-size:14px!important;font-weight:650!important;line-height:1.25!important;text-align:left!important;overflow:hidden!important}.popular-item:hover,.side-link:hover,.sidebar-import-link:hover,.sidebar-manager-btn:hover{background:#18181b!important;color:#e4e4e7!important}.side-link.active{background:#27272a!important;color:#fafafa!important;font-weight:900!important}.popular-item span{margin-left:5px;color:var(--lv-accent)!important;font-size:12px!important}body.pacs-lovable hr{margin:24px 0!important;border:0!important;border-top:1px solid #18181b!important}
.image-preview-modal{background:rgba(9,9,11,.78)!important;backdrop-filter:blur(4px)!important}.image-preview-modal img{max-width:min(1180px,94vw)!important;max-height:88vh!important;border-radius:8px!important;box-shadow:0 22px 80px rgba(0,0,0,.45)!important}@media(max-width:1100px){body.pacs-lovable .main-layout{grid-template-columns:1fr!important}body.pacs-lovable .sidebar{position:relative!important;width:100%!important;height:auto!important;min-height:0!important}.sidebar-scroll-body{height:auto!important;max-height:360px!important}.lv-head-row{align-items:flex-start!important;flex-direction:column!important}}@media(max-width:760px){.lv-header,.lv-body{padding-left:18px!important;padding-right:18px!important}.lv-search-form,.lv-todo-add{grid-template-columns:1fr!important}.lv-todo{align-items:stretch!important;flex-direction:column!important}.lv-table th,.lv-table td{padding-left:14px!important;padding-right:14px!important}}


/* Lovable all-pages extension: login, import, form, tip form */
body.pacs-lovable .container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 32px 44px 44px;
}

body.pacs-lovable .container > h1 {
  margin: 0 0 22px;
  color: var(--lv-text);
  font-size: 27px;
  font-weight: 900;
  letter-spacing: -.035em;
}

body.pacs-lovable .tip-form-desc,
body.pacs-lovable .form-help {
  color: var(--lv-muted);
  font-size: 13px;
  line-height: 1.65;
}

body.pacs-lovable .case-form {
  border: 1px solid #dedee3;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(24,24,27,.025);
  overflow: hidden;
}

body.pacs-lovable .case-form-rows .form-row,
body.pacs-lovable .case-form .form-row {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 20px;
  padding: 18px 24px;
  border-bottom: 1px solid #f1f1f3;
  align-items: start;
}

body.pacs-lovable .case-form .form-row:last-child {
  border-bottom: 0;
}

body.pacs-lovable .form-label,
body.pacs-lovable .case-form label {
  color: #52525b;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
}

body.pacs-lovable .form-field input,
body.pacs-lovable .case-form input[type="text"],
body.pacs-lovable .case-form input[type="file"],
body.pacs-lovable .case-form select,
body.pacs-lovable .case-form textarea,
body.pacs-lovable .modal-add-row input,
body.pacs-lovable .modal-search-row input,
body.pacs-lovable .master-table input {
  width: 100%;
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid #d8d8df;
  border-radius: 5px;
  background: #fafafa;
  color: #18181b;
  font-size: 14px;
  outline: none;
  box-shadow: none;
}

body.pacs-lovable .case-form textarea,
body.pacs-lovable textarea.tip-body {
  min-height: 360px;
  padding: 14px;
  resize: vertical;
  line-height: 1.7;
}

body.pacs-lovable .form-field input:focus,
body.pacs-lovable .case-form textarea:focus,
body.pacs-lovable .case-form select:focus {
  border-color: rgba(13,148,136,.55);
  background: #fff;
  box-shadow: 0 0 0 2px rgba(13,148,136,.08);
}

body.pacs-lovable .form-field-with-button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 110px;
  gap: 10px;
}

body.pacs-lovable .actions {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  padding: 20px 24px;
  background: #fafafa;
}

body.pacs-lovable .actions button,
body.pacs-lovable .case-form button[type="submit"],
body.pacs-lovable .config-btn,
body.pacs-lovable .btn,
body.pacs-lovable .modal-add-row button,
body.pacs-lovable .master-order-toolbar button,
body.pacs-lovable .master-pagination button,
body.pacs-lovable .mini-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 15px;
  border: 1px solid #d8d8df;
  border-radius: 5px;
  background: #fff;
  color: #52525b;
  font-size: 13px;
  font-weight: 850;
  cursor: pointer;
  text-decoration: none;
}

body.pacs-lovable .actions button,
body.pacs-lovable .case-form button[type="submit"] {
  background: var(--lv-accent);
  border-color: var(--lv-accent);
  color: #fff;
}

body.pacs-lovable .actions button:hover,
body.pacs-lovable .case-form button[type="submit"]:hover {
  background: var(--lv-accent2);
  border-color: var(--lv-accent2);
}

body.pacs-lovable .config-btn:hover,
body.pacs-lovable .btn:hover,
body.pacs-lovable .modal-add-row button:hover,
body.pacs-lovable .master-order-toolbar button:hover,
body.pacs-lovable .master-pagination button:hover {
  background: #f4f4f5;
  color: #18181b;
}

body.pacs-lovable .toastui-editor-defaultUI {
  border: 1px solid #d8d8df;
  border-radius: 8px;
  overflow: hidden;
}

body.pacs-lovable .ts-control {
  min-height: 40px;
  border: 1px solid #d8d8df;
  border-radius: 5px;
  background: #fafafa;
  box-shadow: none;
}

/* Modal */
body.pacs-lovable .modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1000;
  background: rgba(9,9,11,.55);
  backdrop-filter: blur(3px);
}

body.pacs-lovable .master-modal {
  position: fixed;
  z-index: 1001;
  top: 6vh;
  left: 50%;
  transform: translateX(-50%);
  width: min(920px, 92vw);
  max-height: 88vh;
  overflow: auto;
  padding: 24px;
  border: 1px solid #dedee3;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 24px 80px rgba(0,0,0,.25);
}

body.pacs-lovable .master-modal h2 {
  margin: 0 0 18px;
  color: #18181b;
  font-size: 20px;
  font-weight: 900;
}

body.pacs-lovable .modal-close {
  float: right;
  border: 0;
  background: transparent;
  color: #71717a;
  font-weight: 800;
  cursor: pointer;
}

body.pacs-lovable .modal-add-row,
body.pacs-lovable .modal-search-row,
body.pacs-lovable .master-order-toolbar {
  display: flex;
  gap: 10px;
  margin-bottom: 12px;
  align-items: center;
}

body.pacs-lovable .master-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 14px;
}

body.pacs-lovable .master-table th {
  padding: 11px 12px;
  border-bottom: 1px solid #f1f1f3;
  background: #fafafa;
  color: #71717a;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .12em;
  text-align: left;
}

body.pacs-lovable .master-table td {
  padding: 10px 12px;
  border-bottom: 1px solid #f1f1f3;
  color: #3f3f46;
  font-size: 13px;
}

body.pacs-lovable .selected-master-row td {
  background: rgba(13,148,136,.08);
}

/* Import / message boxes */
body.pacs-lovable .success-box,
body.pacs-lovable .error-box,
body.pacs-lovable .login-error {
  margin-bottom: 16px;
  padding: 12px 14px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 750;
}

body.pacs-lovable .success-box {
  border: 1px solid rgba(13,148,136,.25);
  background: rgba(13,148,136,.08);
  color: #0f766e;
}

body.pacs-lovable .error-box,
body.pacs-lovable .login-error {
  border: 1px solid rgba(239,68,68,.25);
  background: rgba(239,68,68,.08);
  color: #dc2626;
}

/* Login */
body.pacs-lovable .login-container {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px;
  background:
    radial-gradient(circle at 20% 20%, rgba(13,148,136,.12), transparent 28%),
    #f4f4f5;
}

body.pacs-lovable .login-box {
  width: min(420px, 100%);
  padding: 34px;
  border: 1px solid #dedee3;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 20px 70px rgba(24,24,27,.08);
}

body.pacs-lovable .login-box h1 {
  margin: 0 0 22px;
  color: #18181b;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: -.035em;
}

body.pacs-lovable .login-box form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

body.pacs-lovable .login-box input {
  min-height: 44px;
  padding: 0 14px;
  border: 1px solid #d8d8df;
  border-radius: 6px;
  background: #fafafa;
}

body.pacs-lovable .login-box button {
  min-height: 44px;
  border: 1px solid var(--lv-accent);
  border-radius: 6px;
  background: var(--lv-accent);
  color: #fff;
  font-weight: 900;
  cursor: pointer;
}

@media(max-width:760px){
  body.pacs-lovable .container{padding:24px 18px}
  body.pacs-lovable .case-form-rows .form-row,
  body.pacs-lovable .case-form .form-row{grid-template-columns:1fr}
  body.pacs-lovable .form-field-with-button{grid-template-columns:1fr}
  body.pacs-lovable .actions{justify-content:stretch;flex-direction:column}
}


/* Lovable pixel tune v2 */
body.pacs-lovable .main-layout {
  grid-template-columns: 256px minmax(0,1fr) !important;
}

body.pacs-lovable .sidebar {
  width: 256px !important;
  background: #050507 !important;
  border-right: 1px solid #202024 !important;
}

body.pacs-lovable .sidebar-home-link {
  min-height: 86px !important;
  padding: 24px 28px !important;
  border-bottom: 1px solid #151519 !important;
}

body.pacs-lovable .sidebar-home-mark {
  width: 35px !important;
  height: 35px !important;
  border-radius: 6px !important;
  background: rgba(13,148,136,.16) !important;
  border-color: rgba(13,148,136,.34) !important;
  color: #14b8a6 !important;
  box-shadow: none !important;
}

body.pacs-lovable .sidebar-home-title {
  color: #fafafa !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: -.01em !important;
}

body.pacs-lovable .sidebar-home-subtitle {
  color: #71717a !important;
  font-size: 9px !important;
  font-weight: 850 !important;
  letter-spacing: .18em !important;
}

body.pacs-lovable .sidebar-scroll-body {
  height: calc(100vh - 86px) !important;
  padding: 22px 14px 24px !important;
}

body.pacs-lovable .sidebar-section-title,
body.pacs-lovable .sidebar-title {
  color: #71717a !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: .17em !important;
  margin: 0 0 13px !important;
  padding: 0 12px !important;
}

body.pacs-lovable .popular-item,
body.pacs-lovable .side-link,
body.pacs-lovable .sidebar-import-link,
body.pacs-lovable .sidebar-manager-btn {
  min-height: 33px !important;
  padding: 8px 12px !important;
  color: #8f96a3 !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  border-radius: 5px !important;
}

body.pacs-lovable .popular-item:hover,
body.pacs-lovable .side-link:hover,
body.pacs-lovable .sidebar-import-link:hover,
body.pacs-lovable .sidebar-manager-btn:hover {
  background: #17171b !important;
  color: #e5e7eb !important;
}

body.pacs-lovable .side-link.active {
  background: #27272a !important;
  color: #ffffff !important;
}

body.pacs-lovable .sidebar-manager-btn {
  justify-content: flex-start !important;
  color: #8f96a3 !important;
  background: transparent !important;
}

body.pacs-lovable hr {
  margin: 22px 0 !important;
  border-top-color: #17171b !important;
}

body.pacs-lovable .lv-header {
  min-height: 98px !important;
  padding: 24px 48px !important;
  background: #fafafa !important;
}

body.pacs-lovable .lv-inner,
body.pacs-lovable .lv-body {
  max-width: 1320px !important;
}

body.pacs-lovable .lv-body {
  padding: 30px 48px 48px !important;
}

body.pacs-lovable .lv-title {
  font-size: 25px !important;
  letter-spacing: -.04em !important;
}

body.pacs-lovable .lv-kicker {
  font-size: 9px !important;
  margin-bottom: 7px !important;
}

body.pacs-lovable .lv-stack {
  gap: 18px !important;
}

body.pacs-lovable .lv-card {
  border-color: #dddddf !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

body.pacs-lovable .lv-search-card {
  padding: 22px 24px !important;
}

body.pacs-lovable .lv-search-form {
  grid-template-columns: minmax(260px,1fr) 84px 84px !important;
  gap: 10px !important;
}

body.pacs-lovable .lv-input {
  min-height: 38px !important;
  border-radius: 4px !important;
  background: #fafafa !important;
  font-size: 13px !important;
}

body.pacs-lovable .lv-btn {
  min-height: 38px !important;
  border-radius: 4px !important;
  font-size: 13px !important;
  font-weight: 850 !important;
}

body.pacs-lovable .lv-card-head {
  padding: 21px 24px !important;
}

body.pacs-lovable .lv-card-title {
  font-size: 14px !important;
}

body.pacs-lovable .lv-card-sub {
  font-size: 13px !important;
}

body.pacs-lovable .lv-card-body {
  padding: 20px 24px 22px !important;
}

body.pacs-lovable .lv-todo {
  min-height: 42px !important;
  padding: 8px 10px !important;
  border: 0 !important;
  border-bottom: 1px solid #f1f1f3 !important;
  border-radius: 0 !important;
  background: #fff !important;
}

body.pacs-lovable .lv-todo:last-child {
  border-bottom: 0 !important;
}

body.pacs-lovable .lv-todo-title {
  font-size: 13px !important;
  font-weight: 650 !important;
  color: #27272a !important;
}

body.pacs-lovable .lv-todo-actions button {
  color: #a1a1aa !important;
  font-size: 11px !important;
  font-weight: 750 !important;
}

body.pacs-lovable .lv-badge {
  min-width: 31px !important;
  padding: 3px 7px !important;
  border-radius: 4px !important;
  font-size: 9px !important;
}

body.pacs-lovable .lv-table th {
  padding: 12px 24px !important;
  background: #fafafa !important;
  color: #71717a !important;
  font-size: 9px !important;
}

body.pacs-lovable .lv-table td {
  padding: 15px 24px !important;
  font-size: 12px !important;
}

body.pacs-lovable .lv-case-title {
  font-size: 13px !important;
  font-weight: 800 !important;
}

body.pacs-lovable .lv-chip {
  border-radius: 4px !important;
  font-size: 9px !important;
  padding: 4px 7px !important;
}

@media(max-width:1100px){
  body.pacs-lovable .main-layout {
    grid-template-columns: 1fr !important;
  }

  body.pacs-lovable .sidebar {
    width: 100% !important;
  }
}


/* Lovable pixel tune v3 - width, sidebar, button polish */
body.pacs-lovable .main-layout {
  grid-template-columns: 248px minmax(0, 1fr) !important;
}

body.pacs-lovable .sidebar {
  width: 248px !important;
  background: #050507 !important;
  border-right: 1px solid #1f1f23 !important;
}

body.pacs-lovable .content {
  min-width: 0 !important;
}

body.pacs-lovable .lv-header {
  min-height: 96px !important;
  padding: 24px 0 !important;
  background: #fbfbfc !important;
}

body.pacs-lovable .lv-inner,
body.pacs-lovable .lv-body {
  width: auto !important;
  max-width: none !important;
  margin-left: 64px !important;
  margin-right: 64px !important;
}

body.pacs-lovable .lv-body {
  padding: 30px 0 48px !important;
}

body.pacs-lovable .lv-head-row {
  align-items: flex-end !important;
}

body.pacs-lovable .lv-title {
  font-size: 25px !important;
  letter-spacing: -0.045em !important;
}

body.pacs-lovable .lv-title b {
  color: #0d9488 !important;
}

body.pacs-lovable .lv-kicker {
  color: #a1a1aa !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
}

body.pacs-lovable .lv-actions {
  gap: 9px !important;
}

body.pacs-lovable .lv-btn {
  min-height: 36px !important;
  padding: 0 14px !important;
  border-radius: 4px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

body.pacs-lovable .lv-btn-accent {
  background: #0d9488 !important;
  border-color: #0d9488 !important;
}

body.pacs-lovable .lv-btn-dark {
  background: #111114 !important;
  border-color: #111114 !important;
}

body.pacs-lovable .lv-btn-ghost {
  background: #ffffff !important;
  border-color: #d8d8df !important;
  color: #52525b !important;
}

body.pacs-lovable .lv-stack {
  gap: 18px !important;
}

body.pacs-lovable .lv-card {
  border-color: #dddddf !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

body.pacs-lovable .lv-search-card {
  padding: 21px 24px !important;
}

body.pacs-lovable .lv-search-form {
  grid-template-columns: minmax(260px, 1fr) 84px 84px !important;
  gap: 10px !important;
}

body.pacs-lovable .lv-input {
  min-height: 37px !important;
  border-radius: 4px !important;
  border-color: #dcdce1 !important;
  background: #fafafa !important;
  font-size: 12px !important;
}

body.pacs-lovable .lv-label {
  margin-bottom: 13px !important;
  color: #52525b !important;
  font-size: 11px !important;
  font-weight: 850 !important;
}

body.pacs-lovable .lv-card-head {
  padding: 20px 24px !important;
}

body.pacs-lovable .lv-card-title {
  font-size: 14px !important;
  font-weight: 900 !important;
}

body.pacs-lovable .lv-card-sub {
  color: #71717a !important;
  font-size: 12px !important;
}

body.pacs-lovable .lv-card-body {
  padding: 19px 24px 21px !important;
}

body.pacs-lovable .lv-todo-add {
  grid-template-columns: minmax(240px, 1fr) 58px !important;
  padding-bottom: 11px !important;
  margin-bottom: 6px !important;
}

body.pacs-lovable .lv-link {
  color: #0d9488 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

body.pacs-lovable .lv-todo {
  min-height: 40px !important;
  padding: 7px 10px !important;
  border: 0 !important;
  border-bottom: 1px solid #f1f1f3 !important;
  border-radius: 0 !important;
  background: #fff !important;
}

body.pacs-lovable .lv-todo:last-child {
  border-bottom: 0 !important;
}

body.pacs-lovable .lv-todo-title {
  color: #27272a !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

body.pacs-lovable .lv-todo-actions {
  gap: 13px !important;
}

body.pacs-lovable .lv-todo-actions button {
  color: #a1a1aa !important;
  font-size: 11px !important;
  font-weight: 750 !important;
}

body.pacs-lovable .lv-todo-actions button:hover {
  color: #0d9488 !important;
}

body.pacs-lovable .lv-todo-actions .lv-del {
  color: #ef4444 !important;
}

body.pacs-lovable .lv-badge {
  min-width: 30px !important;
  padding: 3px 7px !important;
  border-radius: 4px !important;
  font-size: 9px !important;
}

body.pacs-lovable .lv-table th {
  padding: 11px 24px !important;
  background: #fafafa !important;
  color: #71717a !important;
  font-size: 9px !important;
  font-weight: 900 !important;
}

body.pacs-lovable .lv-table td {
  padding: 14px 24px !important;
  color: #52525b !important;
  font-size: 12px !important;
}

body.pacs-lovable .lv-case-title {
  font-size: 12px !important;
  font-weight: 850 !important;
}

body.pacs-lovable .lv-chip {
  padding: 3px 7px !important;
  border-radius: 4px !important;
  font-size: 9px !important;
  font-weight: 800 !important;
}

/* Sidebar tune */
body.pacs-lovable .sidebar-home-link {
  min-height: 84px !important;
  padding: 24px 26px !important;
  border-bottom: 1px solid #151519 !important;
}

body.pacs-lovable .sidebar-home-mark {
  width: 32px !important;
  height: 32px !important;
  border-radius: 5px !important;
  background: rgba(13,148,136,.16) !important;
  border-color: rgba(13,148,136,.34) !important;
  color: #14b8a6 !important;
  box-shadow: none !important;
  font-size: 8px !important;
}

body.pacs-lovable .sidebar-home-title {
  color: #fafafa !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: -.01em !important;
}

body.pacs-lovable .sidebar-home-subtitle {
  color: #71717a !important;
  font-size: 8px !important;
  font-weight: 850 !important;
  letter-spacing: .18em !important;
}

body.pacs-lovable .sidebar-scroll-body {
  height: calc(100vh - 84px) !important;
  padding: 21px 13px 24px !important;
}

body.pacs-lovable .sidebar-section-title,
body.pacs-lovable .sidebar-title {
  color: #71717a !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: .17em !important;
  margin: 0 0 12px !important;
  padding: 0 12px !important;
}

body.pacs-lovable .sidebar-title-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  padding: 0 12px !important;
  margin: 0 0 7px !important;
}

body.pacs-lovable .sidebar-title-row .sidebar-title {
  margin: 0 !important;
  padding: 0 !important;
}

body.pacs-lovable .sidebar-title-row .sidebar-manager-btn {
  width: auto !important;
  min-height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #71717a !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  letter-spacing: .04em !important;
}

body.pacs-lovable .sidebar-title-row .sidebar-manager-btn:hover {
  background: transparent !important;
  color: #14b8a6 !important;
}

body.pacs-lovable .popular-item,
body.pacs-lovable .side-link,
body.pacs-lovable .sidebar-import-link {
  min-height: 31px !important;
  padding: 7px 12px !important;
  color: #8f96a3 !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  border-radius: 5px !important;
}

body.pacs-lovable .popular-item:hover,
body.pacs-lovable .side-link:hover,
body.pacs-lovable .sidebar-import-link:hover {
  background: #17171b !important;
  color: #e5e7eb !important;
}

body.pacs-lovable .side-link.active {
  background: #27272a !important;
  color: #ffffff !important;
  font-weight: 900 !important;
}

body.pacs-lovable .popular-item span {
  color: #0d9488 !important;
  font-size: 10px !important;
}

body.pacs-lovable hr {
  margin: 21px 0 !important;
  border-top-color: #17171b !important;
}

@media(max-width:1100px){
  body.pacs-lovable .main-layout {
    grid-template-columns: 1fr !important;
  }

  body.pacs-lovable .sidebar {
    width: 100% !important;
  }

  body.pacs-lovable .lv-inner,
  body.pacs-lovable .lv-body {
    margin-left: 24px !important;
    margin-right: 24px !important;
  }
}


/* Lovable exact v4 */
body.pacs-lovable {
  margin: 0 !important;
  min-height: 100vh !important;
  background: #f4f4f5 !important;
  color: #18181b !important;
  font-family: "Inter", "Noto Sans KR", "Malgun Gothic", system-ui, sans-serif !important;
  font-size: 14px !important;
}

body.pacs-lovable .main-layout {
  display: flex !important;
  min-height: 100vh !important;
  padding: 0 !important;
  gap: 0 !important;
  background: #f4f4f5 !important;
}

body.pacs-lovable .sidebar {
  width: 256px !important;
  min-width: 256px !important;
  max-width: 256px !important;
  height: 100vh !important;
  min-height: 100vh !important;
  position: sticky !important;
  top: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 0 !important;
  border-right: 1px solid #27272a !important;
  border-radius: 0 !important;
  background: #09090b !important;
  box-shadow: none !important;
}

body.pacs-lovable .content {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
  background: #f4f4f5 !important;
}

/* Header */
body.pacs-lovable .lv-header {
  min-height: auto !important;
  padding: 24px 40px !important;
  border-bottom: 1px solid #e4e4e7 !important;
  background: #fafafa !important;
}

body.pacs-lovable .lv-inner {
  width: 100% !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.pacs-lovable .lv-head-row {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 24px !important;
}

body.pacs-lovable .lv-kicker {
  margin: 0 0 4px !important;
  color: #a1a1aa !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

body.pacs-lovable .lv-title {
  margin: 0 !important;
  color: #18181b !important;
  font-size: 24px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: -.025em !important;
}

body.pacs-lovable .lv-title span {
  margin: 0 8px !important;
  color: #a1a1aa !important;
  font-weight: 400 !important;
}

body.pacs-lovable .lv-title b {
  color: #0d9488 !important;
  font-weight: 600 !important;
}

/* Body */
body.pacs-lovable .lv-body {
  width: 100% !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 32px 40px !important;
}

body.pacs-lovable .lv-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
}

/* Card */
body.pacs-lovable .lv-card {
  border: 0 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 1px rgba(0,0,0,.05) !important;
  overflow: hidden !important;
}

body.pacs-lovable .lv-search-card {
  padding: 24px !important;
}

body.pacs-lovable .lv-label {
  display: block !important;
  margin: 0 0 16px !important;
  color: #71717a !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

body.pacs-lovable .lv-search-form {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

body.pacs-lovable .lv-input {
  min-height: 38px !important;
  flex: 1 1 auto !important;
  padding: 8px 16px !important;
  border: 1px solid #e4e4e7 !important;
  border-radius: 4px !important;
  background: #fafafa !important;
  color: #18181b !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  outline: none !important;
  box-shadow: none !important;
}

body.pacs-lovable .lv-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 38px !important;
  padding: 8px 16px !important;
  border-radius: 4px !important;
  border: 1px solid transparent !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

body.pacs-lovable .lv-btn-accent {
  background: #0d9488 !important;
  border-color: #0d9488 !important;
  color: #ffffff !important;
}

body.pacs-lovable .lv-btn-dark {
  background: #18181b !important;
  border-color: #18181b !important;
  color: #fafafa !important;
}

body.pacs-lovable .lv-btn-ghost {
  background: #ffffff !important;
  border-color: #e4e4e7 !important;
  color: #71717a !important;
}

body.pacs-lovable .lv-search-form .lv-btn-accent {
  padding-left: 32px !important;
  padding-right: 32px !important;
}

body.pacs-lovable .lv-search-form .lv-btn-ghost {
  padding-left: 24px !important;
  padding-right: 24px !important;
}

body.pacs-lovable .lv-card-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 24px !important;
  border-bottom: 1px solid #f4f4f5 !important;
}

body.pacs-lovable .lv-card-title {
  margin: 0 !important;
  color: #18181b !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

body.pacs-lovable .lv-card-sub {
  margin: 4px 0 0 !important;
  color: #71717a !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

body.pacs-lovable .lv-card-body {
  padding: 24px !important;
}

/* Todo */
body.pacs-lovable .lv-todo-add {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding-bottom: 8px !important;
  margin-bottom: 16px !important;
  border-bottom: 0 !important;
}

body.pacs-lovable .lv-todo-add .lv-input {
  min-height: 38px !important;
  padding: 8px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #e4e4e7 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.pacs-lovable .lv-link {
  padding: 8px 16px !important;
  border: 0 !important;
  background: transparent !important;
  color: #0d9488 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}

body.pacs-lovable .lv-todo-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

body.pacs-lovable .lv-todo {
  min-height: 46px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 12px !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: rgba(250,250,250,.5) !important;
  box-shadow: 0 0 0 1px rgba(0,0,0,.02) !important;
}

body.pacs-lovable .lv-todo-main,
body.pacs-lovable .lv-todo .todo-inline-edit-form {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

body.pacs-lovable .lv-badge {
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  padding: 2px 8px !important;
  border-radius: 4px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

body.pacs-lovable .lv-todo-title {
  min-width: 0 !important;
  overflow: hidden !important;
  color: #3f3f46 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.pacs-lovable .lv-todo-actions {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  flex: 0 0 auto !important;
  margin-left: 16px !important;
}

body.pacs-lovable .lv-todo-actions button {
  border: 0 !important;
  background: transparent !important;
  color: #a1a1aa !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
}

body.pacs-lovable .lv-todo-actions .lv-del {
  color: #f87171 !important;
}

/* Table */
body.pacs-lovable .lv-table {
  width: 100% !important;
  border-collapse: collapse !important;
  text-align: left !important;
  background: #ffffff !important;
}

body.pacs-lovable .lv-table thead tr {
  background: #fafafa !important;
  border-bottom: 1px solid #f4f4f5 !important;
}

body.pacs-lovable .lv-table th {
  padding: 12px 24px !important;
  color: #71717a !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  text-align: left !important;
}

body.pacs-lovable .lv-table td {
  padding: 16px 24px !important;
  color: #52525b !important;
  font-size: 12px !important;
  border-bottom: 1px solid #f4f4f5 !important;
  vertical-align: middle !important;
}

body.pacs-lovable .lv-case-title {
  color: #18181b !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.pacs-lovable .lv-chip {
  display: inline-flex !important;
  align-items: center !important;
  padding: 4px 8px !important;
  border-radius: 4px !important;
  background: #f4f4f5 !important;
  color: #52525b !important;
  font-size: 10px !important;
  font-weight: 500 !important;
}

body.pacs-lovable .lv-chip-accent {
  background: #f4f4f5 !important;
  color: #52525b !important;
}

/* Sidebar */
body.pacs-lovable .sidebar-home-link {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 24px !important;
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
}

body.pacs-lovable .sidebar-home-mark {
  width: 32px !important;
  height: 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 4px !important;
  background: rgba(13,148,136,.2) !important;
  box-shadow: 0 0 0 1px rgba(13,148,136,.4) !important;
  color: #0d9488 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
}

body.pacs-lovable .sidebar-home-title {
  color: #f4f4f5 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

body.pacs-lovable .sidebar-home-subtitle {
  margin-top: 4px !important;
  color: #71717a !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}

body.pacs-lovable .sidebar-scroll-body {
  flex: 1 1 auto !important;
  height: auto !important;
  overflow-y: auto !important;
  padding: 16px 12px !important;
}

body.pacs-lovable .sidebar-section {
  margin-bottom: 32px !important;
}

body.pacs-lovable .sidebar-section-title {
  margin: 0 0 12px !important;
  padding: 0 12px !important;
  color: #71717a !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}

body.pacs-lovable .popular-list,
body.pacs-lovable .sidebar-product-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

body.pacs-lovable .popular-item {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 34px !important;
  padding: 8px 12px !important;
  border-radius: 6px !important;
  background: transparent !important;
  color: #a1a1aa !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

body.pacs-lovable .hot-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 999px !important;
  background: #f97316 !important;
  flex: 0 0 auto !important;
}

body.pacs-lovable .sidebar-truncate,
body.pacs-lovable .sidebar-recent-title {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.pacs-lovable .recent-item {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 4px !important;
}

body.pacs-lovable .sidebar-recent-id {
  color: #52525b !important;
  font-family: "JetBrains Mono", ui-monospace, monospace !important;
  font-size: 10px !important;
}

body.pacs-lovable .side-link {
  width: 100% !important;
  min-height: 30px !important;
  display: flex !important;
  align-items: center !important;
  padding: 6px 12px !important;
  border: 0 !important;
  border-radius: 2px !important;
  background: transparent !important;
  color: #71717a !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.pacs-lovable .side-link:hover {
  background: #18181b !important;
  color: #d4d4d8 !important;
}

body.pacs-lovable .side-link.active {
  background: #27272a !important;
  color: #f4f4f5 !important;
}

body.pacs-lovable .sidebar-bottom-actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  padding: 16px !important;
  border-top: 1px solid #27272a !important;
  background: transparent !important;
}

body.pacs-lovable .sidebar-manager-btn,
body.pacs-lovable .sidebar-import-link {
  display: flex !important;
  align-items: center !important;
  min-height: auto !important;
  width: auto !important;
  padding: 0 8px !important;
  border: 0 !important;
  background: transparent !important;
  color: #71717a !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  cursor: pointer !important;
  text-align: left !important;
}

body.pacs-lovable .sidebar-manager-btn:hover,
body.pacs-lovable .sidebar-import-link:hover {
  color: #d4d4d8 !important;
}

body.pacs-lovable hr {
  display: none !important;
}

@media(max-width:1100px){
  body.pacs-lovable .main-layout {
    display: block !important;
  }

  body.pacs-lovable .sidebar {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
  }

  body.pacs-lovable .lv-header,
  body.pacs-lovable .lv-body {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}


/* Lovable exact v5 - spacing/sidebar polish */
body.pacs-lovable .lv-body {
  padding-top: 28px !important;
  padding-bottom: 44px !important;
}

body.pacs-lovable .lv-stack {
  gap: 18px !important;
}

body.pacs-lovable .lv-search-card {
  padding: 24px !important;
}

body.pacs-lovable .lv-card-head {
  padding: 22px 24px !important;
}

body.pacs-lovable .lv-card-body {
  padding: 22px 24px 24px !important;
}

body.pacs-lovable .lv-todo-add {
  margin-bottom: 14px !important;
  padding-bottom: 10px !important;
}

body.pacs-lovable .lv-todo-list {
  gap: 5px !important;
}

body.pacs-lovable .lv-todo {
  min-height: 44px !important;
  padding: 11px 12px !important;
}

/* WIKI table spacing */
body.pacs-lovable .lv-table th {
  padding-top: 13px !important;
  padding-bottom: 13px !important;
}

body.pacs-lovable .lv-table td {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

/* Sidebar: hide scrollbar completely but keep scroll */
body.pacs-lovable .sidebar,
body.pacs-lovable .sidebar-scroll-body {
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

body.pacs-lovable .sidebar::-webkit-scrollbar,
body.pacs-lovable .sidebar-scroll-body::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

/* Sidebar text size / contrast */
body.pacs-lovable .sidebar-section-title {
  color: #8b8b95 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
}

body.pacs-lovable .popular-item {
  min-height: 36px !important;
  padding: 8px 12px !important;
  color: #b8c2d6 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

body.pacs-lovable .popular-item:hover {
  color: #ffffff !important;
}

body.pacs-lovable .hot-case-item {
  color: #cbd5e1 !important;
}

body.pacs-lovable .sidebar-truncate {
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.pacs-lovable .sidebar-recent-title {
  color: #cbd5e1 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

body.pacs-lovable .sidebar-recent-id {
  color: #6b7280 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}

body.pacs-lovable .side-link {
  min-height: 32px !important;
  padding: 7px 12px !important;
  color: #9ca3af !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.pacs-lovable .side-link.active {
  background: #27272a !important;
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* Sidebar bottom actions less intrusive */
body.pacs-lovable .sidebar-bottom-actions {
  padding: 13px 16px 14px !important;
}

body.pacs-lovable .sidebar-manager-btn,
body.pacs-lovable .sidebar-import-link {
  color: #71717a !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

body.pacs-lovable .sidebar-manager-btn:hover,
body.pacs-lovable .sidebar-import-link:hover {
  color: #14b8a6 !important;
}

/* Main card width visual alignment */
body.pacs-lovable .lv-inner,
body.pacs-lovable .lv-body {
  max-width: 1440px !important;
}

body.pacs-lovable .lv-header {
  padding-top: 23px !important;
  padding-bottom: 23px !important;
}

body.pacs-lovable .lv-title {
  font-size: 24px !important;
}

body.pacs-lovable .lv-kicker {
  font-size: 10px !important;
}


/* Lovable exact v6 - fix broken todo/add/sidebar */
body.pacs-lovable .lv-body {
  max-width: 1440px !important;
  padding: 28px 40px 40px !important;
}

body.pacs-lovable .lv-stack {
  gap: 16px !important;
}

/* Search card */
body.pacs-lovable .lv-search-card {
  padding: 22px 24px !important;
}

body.pacs-lovable .lv-search-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 92px 76px !important;
  gap: 10px !important;
  align-items: center !important;
}

body.pacs-lovable .lv-search-form .lv-input {
  width: 100% !important;
}

body.pacs-lovable .lv-search-form .lv-btn {
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Todo card compact */
body.pacs-lovable .lv-card-head {
  padding: 20px 24px 18px !important;
}

body.pacs-lovable .lv-card-body {
  padding: 18px 24px 20px !important;
}

body.pacs-lovable .lv-card-title {
  font-size: 14px !important;
  font-weight: 700 !important;
}

body.pacs-lovable .lv-card-sub {
  margin-top: 4px !important;
  font-size: 13px !important;
}

body.pacs-lovable .lv-todo-add {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 52px !important;
  gap: 12px !important;
  align-items: center !important;
  margin-bottom: 10px !important;
  padding-bottom: 10px !important;
}

body.pacs-lovable .lv-todo-add .lv-input {
  width: 100% !important;
  min-height: 34px !important;
  padding: 6px 0 !important;
}

body.pacs-lovable .lv-link {
  width: 52px !important;
  min-width: 52px !important;
  height: 34px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  writing-mode: horizontal-tb !important;
  line-height: 1 !important;
}

body.pacs-lovable .lv-todo-list {
  gap: 3px !important;
}

body.pacs-lovable .lv-todo {
  min-height: 38px !important;
  padding: 8px 12px !important;
  border-radius: 4px !important;
}

body.pacs-lovable .lv-todo-title {
  font-size: 13px !important;
  font-weight: 500 !important;
}

body.pacs-lovable .lv-todo-actions {
  gap: 14px !important;
  margin-left: 14px !important;
}

body.pacs-lovable .lv-todo-actions button {
  font-size: 12px !important;
}

/* Table compact */
body.pacs-lovable .lv-table th {
  padding: 11px 24px !important;
}

body.pacs-lovable .lv-table td {
  padding: 13px 24px !important;
}

body.pacs-lovable .lv-case-title {
  font-size: 13px !important;
  font-weight: 600 !important;
}

/* Sidebar: no scrollbar, no fixed bottom actions */
body.pacs-lovable .sidebar,
body.pacs-lovable .sidebar-scroll-body {
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

body.pacs-lovable .sidebar::-webkit-scrollbar,
body.pacs-lovable .sidebar-scroll-body::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

body.pacs-lovable .sidebar-bottom-actions {
  display: none !important;
}

/* Sidebar spacing/font closer to Lovable */
body.pacs-lovable .sidebar-home-link {
  padding: 24px 24px 20px !important;
}

body.pacs-lovable .sidebar-scroll-body {
  padding: 16px 12px 28px !important;
}

body.pacs-lovable .sidebar-section {
  margin-bottom: 28px !important;
}

body.pacs-lovable .sidebar-section-title {
  margin-bottom: 11px !important;
  color: #8b8b95 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .15em !important;
}

body.pacs-lovable .popular-list,
body.pacs-lovable .sidebar-product-list {
  gap: 3px !important;
}

body.pacs-lovable .popular-item {
  min-height: 34px !important;
  padding: 7px 12px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #b8c2d6 !important;
}

body.pacs-lovable .popular-item:hover {
  color: #ffffff !important;
}

body.pacs-lovable .sidebar-recent-title,
body.pacs-lovable .sidebar-truncate {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #cbd5e1 !important;
}

body.pacs-lovable .sidebar-recent-id {
  margin-top: 2px !important;
  color: #60636b !important;
  font-size: 10px !important;
}

body.pacs-lovable .side-link {
  min-height: 30px !important;
  padding: 6px 12px !important;
  color: #9ca3af !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.pacs-lovable .side-link.active {
  background: #27272a !important;
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* Prevent text wrapping in small action labels */
body.pacs-lovable button,
body.pacs-lovable a {
  word-break: keep-all !important;
}


/* Lovable exact v7 - final visual correction */

/* 전체 본문 간격 */
body.pacs-lovable .lv-body {
  padding-top: 26px !important;
  padding-bottom: 42px !important;
}

body.pacs-lovable .lv-stack {
  gap: 17px !important;
}

/* 상단 헤더 버튼 크기 조정 */
body.pacs-lovable .lv-actions .lv-btn {
  min-height: 32px !important;
  height: 32px !important;
  padding: 0 12px !important;
  border-radius: 4px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

body.pacs-lovable .lv-actions .lv-btn strong {
  font-size: 13px !important;
  line-height: 1 !important;
}

/* 검색 카드 */
body.pacs-lovable .lv-search-card {
  padding: 21px 24px !important;
}

body.pacs-lovable .lv-label {
  margin-bottom: 12px !important;
  color: #52525b !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .03em !important;
  text-transform: none !important;
}

body.pacs-lovable .lv-search-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 78px 68px !important;
  gap: 9px !important;
  align-items: center !important;
}

/* 검색 input: '제목, 제품명, 병원명, 오류코드 검색' 크기 축소 */
body.pacs-lovable .lv-search-form .lv-input {
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 13px !important;
  border-radius: 4px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

body.pacs-lovable .lv-search-form .lv-input::placeholder {
  color: #8b8f99 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

body.pacs-lovable .lv-search-form .lv-btn {
  width: 100% !important;
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border-radius: 4px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

/* 업무 카드 간격 */
body.pacs-lovable .lv-card-head {
  padding: 20px 24px 17px !important;
}

body.pacs-lovable .lv-card-title {
  font-size: 14px !important;
  font-weight: 700 !important;
}

body.pacs-lovable .lv-card-sub {
  margin-top: 4px !important;
  color: #6b7280 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

body.pacs-lovable .lv-card-body {
  padding: 18px 24px 20px !important;
}

body.pacs-lovable .lv-todo-add {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 48px !important;
  gap: 10px !important;
  align-items: center !important;
  margin-bottom: 9px !important;
  padding-bottom: 9px !important;
}

body.pacs-lovable .lv-todo-add .lv-input {
  min-height: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  font-size: 12px !important;
}

body.pacs-lovable .lv-todo-add .lv-input::placeholder {
  color: #8b8f99 !important;
  font-size: 12px !important;
}

body.pacs-lovable .lv-link {
  width: 48px !important;
  min-width: 48px !important;
  height: 32px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #0d9488 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  line-height: 1 !important;
}

/* 업무 행 */
body.pacs-lovable .lv-todo-list {
  gap: 3px !important;
}

body.pacs-lovable .lv-todo {
  min-height: 38px !important;
  padding: 8px 12px !important;
  background: rgba(250, 250, 250, .55) !important;
  border-radius: 4px !important;
}

body.pacs-lovable .lv-todo-title {
  color: #27272a !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

body.pacs-lovable .lv-todo-actions {
  gap: 13px !important;
  margin-left: 14px !important;
}

body.pacs-lovable .lv-todo-actions button {
  color: #9ca3af !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}

body.pacs-lovable .lv-todo-actions .lv-del {
  color: #ef4444 !important;
}

/* WIKI 테이블 */
body.pacs-lovable .lv-table th {
  padding: 11px 24px !important;
  color: #6b7280 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
}

body.pacs-lovable .lv-table td {
  padding: 13px 24px !important;
  color: #52525b !important;
  font-size: 12px !important;
}

body.pacs-lovable .lv-case-title {
  color: #18181b !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

body.pacs-lovable .lv-chip {
  padding: 3px 7px !important;
  font-size: 10px !important;
}

/* 사이드바 스크롤바 완전 제거 */
body.pacs-lovable .sidebar,
body.pacs-lovable .sidebar-scroll-body {
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

body.pacs-lovable .sidebar::-webkit-scrollbar,
body.pacs-lovable .sidebar-scroll-body::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* 사이드바 하단 관리 링크는 숨김 */
body.pacs-lovable .sidebar-bottom-actions {
  display: none !important;
}

/* 사이드바 섹션 제목 */
body.pacs-lovable .sidebar-section-title {
  margin: 0 0 12px !important;
  padding: 0 12px !important;
  color: #858b98 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

/* HOT / RECENT 글자 크기와 대비 강제 보정 */
body.pacs-lovable .sidebar .popular-item,
body.pacs-lovable .sidebar .hot-case-item,
body.pacs-lovable .sidebar .recent-item {
  min-height: 35px !important;
  padding: 7px 12px !important;
  color: #cbd5e1 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

body.pacs-lovable .sidebar .popular-item:hover,
body.pacs-lovable .sidebar .hot-case-item:hover,
body.pacs-lovable .sidebar .recent-item:hover {
  color: #ffffff !important;
}

body.pacs-lovable .sidebar .sidebar-truncate,
body.pacs-lovable .sidebar .sidebar-recent-title {
  color: #cbd5e1 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

body.pacs-lovable .sidebar .sidebar-recent-id {
  margin-top: 2px !important;
  color: #6b7280 !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

body.pacs-lovable .sidebar .hot-dot {
  width: 6px !important;
  height: 6px !important;
  background: #f97316 !important;
}

/* 제품 필터 */
body.pacs-lovable .sidebar .side-link {
  min-height: 31px !important;
  padding: 6px 12px !important;
  color: #9ca3af !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.pacs-lovable .sidebar .side-link:hover {
  background: #18181b !important;
  color: #e5e7eb !important;
}

body.pacs-lovable .sidebar .side-link.active {
  background: #27272a !important;
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* 상단 타이틀 */
body.pacs-lovable .lv-title {
  font-size: 24px !important;
  font-weight: 600 !important;
}

body.pacs-lovable .lv-kicker {
  font-size: 10px !important;
  font-weight: 600 !important;
}

/* 버튼/링크 텍스트 줄바꿈 방지 */
body.pacs-lovable button,
body.pacs-lovable a {
  word-break: keep-all !important;
}


/* Lovable exact v8 - image preview modal hidden by default */
body.pacs-lovable .image-preview-modal,
.image-preview-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(9, 9, 11, .78);
  backdrop-filter: blur(4px);
}

body.pacs-lovable .image-preview-modal img,
.image-preview-modal img {
  display: block;
  max-width: min(1180px, 94vw);
  max-height: 88vh;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,.15);
  background: #ffffff;
  box-shadow: 0 22px 80px rgba(0, 0, 0, .45);
}


/* Lovable v9 - form/modal/layout fix */

/* 관리 모달은 기본 숨김. JS inline display:block이 들어오면 열림 */
body.pacs-lovable #modalBackdrop,
body.pacs-lovable #masterModal,
body.pacs-lovable .modal-backdrop,
body.pacs-lovable .master-modal {
  display: none;
}

/* form 계열 전체 폭 보정 */
body.pacs-lovable .content > .container,
body.pacs-lovable .container.tip-form-container {
  width: calc(100% - 80px) !important;
  max-width: 1180px !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding: 32px 0 44px !important;
  box-sizing: border-box !important;
}

body.pacs-lovable .container > h1 {
  margin: 0 0 24px !important;
  color: #18181b !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  letter-spacing: -0.04em !important;
}

/* form 카드 */
body.pacs-lovable .case-form {
  width: 100% !important;
  max-width: 100% !important;
  border: 1px solid #dedee3 !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  overflow: hidden !important;
  box-shadow: 0 0 0 1px rgba(0,0,0,.02) !important;
  box-sizing: border-box !important;
}

/* form row 폭 계산 */
body.pacs-lovable .case-form-rows .form-row,
body.pacs-lovable .case-form .form-row {
  display: grid !important;
  grid-template-columns: 180px minmax(0, 1fr) !important;
  gap: 20px !important;
  align-items: start !important;
  padding: 18px 24px !important;
  border-bottom: 1px solid #f1f1f3 !important;
  box-sizing: border-box !important;
}

body.pacs-lovable .form-label {
  padding-top: 8px !important;
  color: #374151 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

body.pacs-lovable .form-field,
body.pacs-lovable .editor-field {
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.pacs-lovable .form-field-with-button {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 120px !important;
  gap: 10px !important;
  align-items: start !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* input/select/textarea 공통 */
body.pacs-lovable .case-form input,
body.pacs-lovable .case-form select,
body.pacs-lovable .case-form textarea,
body.pacs-lovable .form-field input,
body.pacs-lovable .form-field select,
body.pacs-lovable .form-field textarea {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #fafafa !important;
  color: #18181b !important;
  font-size: 14px !important;
  outline: none !important;
}

/* 분류 / 오류코드 / 태그: 과한 회색 박스 제거 */
body.pacs-lovable input[name="category"],
body.pacs-lovable input[name="error_code"],
body.pacs-lovable input[name="tags"] {
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 14px !important;
  background: #fafafa !important;
  line-height: 42px !important;
}

/* Tom Select 폭/높이 보정 */
body.pacs-lovable .ts-wrapper {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

body.pacs-lovable .ts-control {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 42px !important;
  padding: 6px 10px !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #fafafa !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

body.pacs-lovable .ts-control input {
  min-height: 26px !important;
  height: 26px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  font-size: 14px !important;
}

/* TIP textarea 잘림 방지 */
body.pacs-lovable textarea.tip-body,
body.pacs-lovable .tip-case-form textarea {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 360px !important;
  padding: 14px !important;
  resize: vertical !important;
  line-height: 1.7 !important;
  box-sizing: border-box !important;
  background: #fafafa !important;
}

/* Toast UI editor 폭 보정 */
body.pacs-lovable .toastui-editor-defaultUI,
body.pacs-lovable .toastui-editor,
body.pacs-lovable .toastui-editor-main,
body.pacs-lovable .toastui-editor-ww-container {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.pacs-lovable .form-row-editor .form-field {
  overflow: hidden !important;
}

/* 첨부파일 레이아웃 밖으로 나가는 문제 */
body.pacs-lovable input[type="file"],
body.pacs-lovable .file-upload-input {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 42px !important;
  height: auto !important;
  padding: 8px 12px !important;
  line-height: 1.4 !important;
  background: #fafafa !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.pacs-lovable .form-help {
  margin-top: 8px !important;
  color: #6b7280 !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

/* 제품/병원 관리 버튼 */
body.pacs-lovable .config-btn {
  width: 120px !important;
  min-width: 120px !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 12px !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #ffffff !important;
  color: #374151 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

/* 저장/목록 버튼 */
body.pacs-lovable .actions {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  padding: 20px 24px !important;
  background: #fafafa !important;
  border-top: 1px solid #f1f1f3 !important;
}

body.pacs-lovable .actions button,
body.pacs-lovable .actions .btn {
  min-width: 64px !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 18px !important;
  border-radius: 5px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  box-sizing: border-box !important;
}

/* 모달 열렸을 때 레이아웃 */
body.pacs-lovable .master-modal {
  position: fixed !important;
  z-index: 1001 !important;
  top: 6vh !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: min(920px, 92vw) !important;
  max-height: 88vh !important;
  overflow: auto !important;
  padding: 24px !important;
  border: 1px solid #dedee3 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: 0 24px 80px rgba(0,0,0,.25) !important;
  box-sizing: border-box !important;
}

body.pacs-lovable .modal-backdrop {
  position: fixed !important;
  inset: 0 !important;
  z-index: 1000 !important;
  background: rgba(9,9,11,.55) !important;
  backdrop-filter: blur(3px) !important;
}

/* 모바일/작은 창 */
@media(max-width:900px){
  body.pacs-lovable .content > .container,
  body.pacs-lovable .container.tip-form-container {
    width: calc(100% - 32px) !important;
    padding-top: 24px !important;
  }

  body.pacs-lovable .case-form-rows .form-row,
  body.pacs-lovable .case-form .form-row {
    grid-template-columns: 1fr !important;
  }

  body.pacs-lovable .form-field-with-button {
    grid-template-columns: 1fr !important;
  }

  body.pacs-lovable .config-btn {
    width: 100% !important;
  }
}


/* Lovable v10 - remove gray wrapper behind category/error/tag fields */

/* form-field 자체에 남아있는 회색 배경 제거 */
body.pacs-lovable .case-form .form-field {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Tom Select 외곽 래퍼 회색 배경 제거 */
body.pacs-lovable .case-form .ts-wrapper,
body.pacs-lovable .case-form .ts-wrapper.single,
body.pacs-lovable .case-form .ts-wrapper.multi,
body.pacs-lovable .case-form .ts-wrapper.plugin-remove_button {
  width: 100% !important;
  max-width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* 실제 입력 박스만 보이게 */
body.pacs-lovable .case-form .ts-control {
  width: 100% !important;
  min-height: 42px !important;
  padding: 6px 12px !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #fafafa !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

/* 분류/오류코드/태그 input이 Tom Select 안에서 커지는 문제 방지 */
body.pacs-lovable .case-form .ts-control > input {
  min-height: 26px !important;
  height: 26px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  line-height: 26px !important;
}

/* 일반 input도 외곽 회색 없이 단일 박스로 */
body.pacs-lovable input[name="category"],
body.pacs-lovable input[name="error_code"],
body.pacs-lovable input[name="tags"] {
  display: block !important;
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 14px !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #fafafa !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

/* tag item pill 크기 정리 */
body.pacs-lovable .case-form .ts-control .item {
  margin: 2px 4px 2px 0 !important;
  padding: 4px 8px !important;
  border-radius: 999px !important;
  background: #dbeafe !important;
  color: #1d4ed8 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

/* 첨부파일 영역도 동일 폭으로 고정 */
body.pacs-lovable .case-form input[type="file"],
body.pacs-lovable .case-form .file-upload-input {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  background: #fafafa !important;
}


/* Lovable v11 - keyword chip gray box and master modal fix */

/* 동적 keyword editor 회색 박스 제거 */
body.pacs-lovable .keyword-chip-editor {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  width: 100% !important;
  min-height: 42px !important;
  padding: 6px 12px !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #fafafa !important;
  color: #18181b !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
}

body.pacs-lovable .keyword-chip-editor:focus-within {
  border-color: rgba(13,148,136,.55) !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 2px rgba(13,148,136,.08) !important;
}

body.pacs-lovable .keyword-chip-editor-input {
  flex: 1 1 160px !important;
  min-width: 140px !important;
  height: 28px !important;
  min-height: 28px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #18181b !important;
  line-height: 28px !important;
  box-shadow: none !important;
}

body.pacs-lovable .keyword-chip-editor-input::placeholder {
  color: #6b7280 !important;
  font-size: 14px !important;
}

body.pacs-lovable .keyword-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  min-height: 26px !important;
  padding: 4px 9px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #e5e7eb !important;
  color: #374151 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

body.pacs-lovable .keyword-chip.error {
  background: #fee2e2 !important;
  color: #dc2626 !important;
}

body.pacs-lovable .keyword-chip.tag {
  background: #dbeafe !important;
  color: #1d4ed8 !important;
}

body.pacs-lovable .keyword-chip-remove {
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
  cursor: pointer !important;
  padding: 0 0 0 2px !important;
  font-weight: 900 !important;
}

/* 분류/오류코드/태그 form-field 자체는 투명 */
body.pacs-lovable .case-form .form-field:has(.keyword-chip-editor) {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

/* 병원/제품 관리 모달 기본 레이아웃 */
body.pacs-lovable .master-modal {
  width: min(980px, 92vw) !important;
  max-height: 88vh !important;
  padding: 24px !important;
  border-radius: 12px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  box-sizing: border-box !important;
}

body.pacs-lovable .master-modal h2 {
  margin: 0 0 18px !important;
  color: #111827 !important;
  font-size: 22px !important;
  font-weight: 800 !important;
}

body.pacs-lovable .modal-close {
  position: absolute !important;
  top: 22px !important;
  right: 24px !important;
  width: auto !important;
  min-width: auto !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #6b7280 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

/* 모달 상단 입력/검색 */
body.pacs-lovable .modal-add-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 64px !important;
  gap: 10px !important;
  margin-bottom: 12px !important;
}

body.pacs-lovable .modal-search-row {
  display: block !important;
  margin-bottom: 14px !important;
}

body.pacs-lovable .modal-add-row input,
body.pacs-lovable .modal-search-row input {
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 14px !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #fafafa !important;
  box-sizing: border-box !important;
}

body.pacs-lovable .modal-add-row button {
  width: 64px !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 !important;
}

/* 순서 조정 툴바 */
body.pacs-lovable .master-order-toolbar {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin: 12px 0 16px !important;
}

body.pacs-lovable .master-order-toolbar span {
  margin-right: 4px !important;
  color: #111827 !important;
  font-size: 14px !important;
}

body.pacs-lovable .master-order-toolbar button {
  width: auto !important;
  min-width: 58px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 14px !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #ffffff !important;
  color: #374151 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

/* 모달 테이블 */
body.pacs-lovable .master-table {
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  margin-top: 10px !important;
}

body.pacs-lovable .master-table th {
  height: 42px !important;
  padding: 0 12px !important;
  border-bottom: 1px solid #f1f1f3 !important;
  background: #fafafa !important;
  color: #6b7280 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  text-align: left !important;
}

body.pacs-lovable .master-table td {
  padding: 12px !important;
  border-bottom: 1px solid #f1f1f3 !important;
  vertical-align: middle !important;
  color: #111827 !important;
  font-size: 14px !important;
  box-sizing: border-box !important;
}

/* 동적으로 생성되는 input + 확인 버튼 한 줄 배치 */
body.pacs-lovable .master-name-edit {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 52px !important;
  gap: 8px !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.pacs-lovable .master-name-edit input {
  width: 100% !important;
  min-width: 0 !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 12px !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #fafafa !important;
  box-sizing: border-box !important;
}

body.pacs-lovable .master-name-edit button {
  width: 52px !important;
  min-width: 52px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #ffffff !important;
  color: #111827 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

/* 삭제 버튼 겹침 방지 */
body.pacs-lovable .master-table .delete-btn,
body.pacs-lovable .master-table .mini-btn {
  width: 54px !important;
  min-width: 54px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #ffffff !important;
  color: #111827 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

/* 페이지 버튼 */
body.pacs-lovable .master-pagination {
  display: flex !important;
  gap: 6px !important;
  justify-content: center !important;
  margin-top: 16px !important;
}

body.pacs-lovable .master-pagination button {
  min-width: 34px !important;
  height: 34px !important;
  padding: 0 10px !important;
}\n

/* TODO order UI */
body.pacs-lovable .lv-todo-order {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  min-width: 26px !important;
  height: 26px !important;
  border-radius: 999px !important;
  background: #f4f4f5 !important;
  color: #52525b !important;
  font-family: "JetBrains Mono", "Consolas", monospace !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

body.pacs-lovable .lv-todo-actions {
  gap: 10px !important;
}

body.pacs-lovable .lv-todo-actions .todo-move-up-btn,
body.pacs-lovable .lv-todo-actions .todo-move-down-btn {
  color: #71717a !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

body.pacs-lovable .lv-todo-actions .todo-move-up-btn:hover,
body.pacs-lovable .lv-todo-actions .todo-move-down-btn:hover {
  color: #0d9488 !important;
}
\n


/* TODO hover order arrows */
body.pacs-lovable .lv-todo-order {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  min-width: 28px !important;
  height: 30px !important;
  border-radius: 999px !important;
  background: #f4f4f5 !important;
  color: #52525b !important;
  font-family: "JetBrains Mono", "Consolas", monospace !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  overflow: hidden !important;
}

body.pacs-lovable .lv-todo-order-number {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

body.pacs-lovable .lv-todo-order-arrows {
  display: none !important;
  position: absolute !important;
  inset: 2px !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
}

body.pacs-lovable .lv-todo-order:hover {
  background: rgba(13, 148, 136, .10) !important;
}

body.pacs-lovable .lv-todo-order:hover .lv-todo-order-number {
  display: none !important;
}

body.pacs-lovable .lv-todo-order:hover .lv-todo-order-arrows {
  display: flex !important;
}

body.pacs-lovable .lv-todo-order-arrow {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  height: 12px !important;
  min-height: 12px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #0d9488 !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

body.pacs-lovable .lv-todo-order-arrow:hover {
  color: #0f766e !important;
}

/* 기존 액션 영역의 위/아래 텍스트 버튼 숨김 */
body.pacs-lovable .lv-todo-actions .todo-move-form,
body.pacs-lovable .lv-todo-actions form:has(.todo-move-up-btn),
body.pacs-lovable .lv-todo-actions form:has(.todo-move-down-btn) {
  display: none !important;
}

body.pacs-lovable .lv-todo-actions {
  gap: 13px !important;
}


/* TODO hover arrows fix v2 - keep arrows inside number circle */
body.pacs-lovable .lv-todo-order {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  min-width: 28px !important;
  height: 30px !important;
  min-height: 30px !important;
  border-radius: 999px !important;
  background: #f4f4f5 !important;
  color: #52525b !important;
  font-family: "JetBrains Mono", "Consolas", monospace !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  overflow: hidden !important;
  flex: 0 0 28px !important;
}

body.pacs-lovable .lv-todo-order-number {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

body.pacs-lovable .lv-todo-order-arrows {
  position: static !important;
  inset: auto !important;
  display: none !important;
  width: 100% !important;
  height: 100% !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  transform: none !important;
}

body.pacs-lovable .lv-todo-order:hover {
  background: rgba(13, 148, 136, .10) !important;
}

body.pacs-lovable .lv-todo-order:hover .lv-todo-order-number {
  display: none !important;
}

body.pacs-lovable .lv-todo-order:hover .lv-todo-order-arrows {
  display: flex !important;
}

body.pacs-lovable .lv-todo-order-arrow {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 13px !important;
  min-height: 13px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #0d9488 !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

body.pacs-lovable .lv-todo-order-arrow:hover {
  color: #0f766e !important;
}

/* 혹시 기존 위/아래 텍스트 버튼이 남아 있으면 계속 숨김 */
body.pacs-lovable .lv-todo-actions .todo-move-form,
body.pacs-lovable .lv-todo-actions form:has(.todo-move-up-btn),
body.pacs-lovable .lv-todo-actions form:has(.todo-move-down-btn) {
  display: none !important;
}


/* Main/filter behavior + TODO number polish */
body.pacs-lovable .lv-todo-order {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  min-width: 24px !important;
  height: 28px !important;
  min-height: 28px !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #374151 !important;
  font-family: "JetBrains Mono", "Consolas", monospace !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  overflow: hidden !important;
  flex: 0 0 24px !important;
}

body.pacs-lovable .lv-todo-order:hover {
  background: transparent !important;
}

body.pacs-lovable .lv-todo-order-number {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

body.pacs-lovable .lv-todo-order-arrows {
  position: static !important;
  display: none !important;
  width: 100% !important;
  height: 100% !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
}

body.pacs-lovable .lv-todo-order:hover .lv-todo-order-number {
  display: none !important;
}

body.pacs-lovable .lv-todo-order:hover .lv-todo-order-arrows {
  display: flex !important;
}

body.pacs-lovable .lv-todo-order-arrow {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 20px !important;
  height: 12px !important;
  min-height: 12px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #0d9488 !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

/* WIKI table view count alignment */
body.pacs-lovable .lv-table th.lv-right,
body.pacs-lovable .lv-table td.lv-right {
  width: 80px !important;
  min-width: 80px !important;
  max-width: 80px !important;
  text-align: right !important;
  padding-right: 24px !important;
  white-space: nowrap !important;
}

body.pacs-lovable .lv-table td.lv-right .lv-mono {
  display: inline-block !important;
  min-width: 24px !important;
  text-align: right !important;
}


/* Home/Wiki split + table count alignment */
body.pacs-lovable .lv-table th.lv-right,
body.pacs-lovable .lv-table td.lv-right {
  width: 80px !important;
  min-width: 80px !important;
  max-width: 80px !important;
  text-align: right !important;
  padding-right: 24px !important;
  white-space: nowrap !important;
}

body.pacs-lovable .lv-table td.lv-right .lv-mono {
  display: inline-block !important;
  min-width: 24px !important;
  text-align: right !important;
}


/* HOME / WIKI mode display control */
body.pacs-lovable.home-mode .lv-case-list-section {
  display: none !important;
}

body.pacs-lovable.wiki-mode .lv-todo-section {
  display: none !important;
}

body.pacs-lovable.wiki-mode .lv-case-list-section {
  display: block !important;
}

body.pacs-lovable.home-mode .lv-todo-section {
  display: block !important;
}

/* TODO number without circle */
body.pacs-lovable .lv-todo-order {
  background: transparent !important;
  border-radius: 0 !important;
  color: #374151 !important;
  width: 24px !important;
  min-width: 24px !important;
  height: 28px !important;
  flex: 0 0 24px !important;
}

/* WIKI view count alignment */
body.pacs-lovable .lv-table th.lv-right,
body.pacs-lovable .lv-table td.lv-right {
  width: 80px !important;
  min-width: 80px !important;
  max-width: 80px !important;
  text-align: right !important;
  padding-right: 24px !important;
  white-space: nowrap !important;
}

body.pacs-lovable .lv-table td.lv-right .lv-mono {
  display: inline-block !important;
  text-align: right !important;
}


/* Unified WIKI type field */
body.pacs-lovable #case_type {
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 14px !important;
  border: 1px solid #d8d8df !important;
  border-radius: 5px !important;
  background: #fafafa !important;
  color: #18181b !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  box-sizing: border-box !important;
}

body.pacs-lovable #case_type:focus {
  border-color: rgba(13,148,136,.55) !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 2px rgba(13,148,136,.08) !important;
  outline: none !important;
}


/* WIKI type toggle: INCIDENT / TIP only */
body.pacs-lovable .case-type-toggle {
  display: inline-grid !important;
  grid-template-columns: 1fr 1fr !important;
  width: 240px !important;
  height: 42px !important;
  border: 1px solid #d8d8df !important;
  border-radius: 7px !important;
  overflow: hidden !important;
  background: #f4f4f5 !important;
}

body.pacs-lovable .case-type-option {
  height: 42px !important;
  border: 0 !important;
  border-right: 1px solid #d8d8df !important;
  background: #ffffff !important;
  color: #52525b !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  cursor: pointer !important;
}

body.pacs-lovable .case-type-option:last-child {
  border-right: 0 !important;
}

body.pacs-lovable .case-type-option.active {
  background: #0d9488 !important;
  color: #ffffff !important;
}

body.pacs-lovable.case-tip-mode .hospital-field,
body.pacs-lovable.case-tip-mode .case-category-row,
body.pacs-lovable.case-tip-mode .case-error-row,
body.pacs-lovable.case-tip-mode .case-solution-row {
  display: none !important;
}

body.pacs-lovable.case-tip-mode .case-symptom-row .toastui-editor-defaultUI {
  min-height: 420px !important;
}

body.pacs-lovable.case-tip-mode .case-symptom-row .toastui-editor-main {
  min-height: 360px !important;
}


/* Toast UI editor context menu fix */
body.pacs-lovable .case-form,
body.pacs-lovable .case-form .form-row,
body.pacs-lovable .case-form .form-field,
body.pacs-lovable .editor-field,
body.pacs-lovable .form-row-editor,
body.pacs-lovable .toastui-editor-defaultUI,
body.pacs-lovable .toastui-editor,
body.pacs-lovable .toastui-editor-main,
body.pacs-lovable .toastui-editor-ww-container,
body.pacs-lovable .toastui-editor-md-container {
  overflow: visible !important;
}

body.pacs-lovable .toastui-editor-popup,
body.pacs-lovable .toastui-editor-popup-body,
body.pacs-lovable .toastui-editor-context-menu,
body.pacs-lovable .toastui-editor-table-context-menu,
body.pacs-lovable .toastui-editor-tooltip,
body.pacs-lovable .toastui-editor-dropdown-toolbar {
  z-index: 99999 !important;
  overflow: visible !important;
}

body.pacs-lovable .toastui-editor-popup {
  max-height: none !important;
}

body.pacs-lovable .toastui-editor-table-context-menu {
  max-height: 520px !important;
  overflow-y: auto !important;
}


/* Toast UI table context menu height limit */
body.pacs-lovable .toastui-editor-table-context-menu,
body.pacs-lovable .toastui-editor-context-menu {
  max-height: 245px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  z-index: 100000 !important;
}

/* Toast context menu scrollbar */
body.pacs-lovable .toastui-editor-table-context-menu::-webkit-scrollbar,
body.pacs-lovable .toastui-editor-context-menu::-webkit-scrollbar {
  width: 6px !important;
}

body.pacs-lovable .toastui-editor-table-context-menu::-webkit-scrollbar-thumb,
body.pacs-lovable .toastui-editor-context-menu::-webkit-scrollbar-thumb {
  background: #cbd5e1 !important;
  border-radius: 999px !important;
}

/* Prevent context menu from visually colliding with next form row */
body.pacs-lovable .form-row-editor {
  position: relative !important;
  overflow: visible !important;
}

body.pacs-lovable .form-row-editor .form-field,
body.pacs-lovable .form-row-editor .editor-field {
  overflow: visible !important;
}

/* TIP mode editor row spacing */
body.pacs-lovable.case-tip-mode .case-symptom-row {
  padding-bottom: 28px !important;
}


/* TIP mode tag row visibility fix */
body.pacs-lovable.case-tip-mode .case-symptom-row {
  padding-bottom: 92px !important;
  overflow: visible !important;
}

body.pacs-lovable.case-tip-mode .case-symptom-row .form-field,
body.pacs-lovable.case-tip-mode .case-symptom-row .editor-field {
  overflow: visible !important;
}

body.pacs-lovable.case-tip-mode .case-symptom-row .toastui-editor-defaultUI {
  min-height: 420px !important;
  margin-bottom: 36px !important;
}

body.pacs-lovable.case-tip-mode .case-tags-row {
  position: relative !important;
  z-index: 5 !important;
  display: grid !important;
  background: #ffffff !important;
}

body.pacs-lovable.case-tip-mode .case-tags-row .keyword-chip-editor,
body.pacs-lovable.case-tip-mode .case-tags-row .form-field {
  position: relative !important;
  z-index: 6 !important;
}

