:root {
  --blue: #1764ff;
  --blue-dark: #0f4fd1;
  --ink: #101828;
  --muted: #667085;
  --line: #e6edf7;
  --line-strong: #d6e0ee;
  --panel: #ffffff;
  --bg: #f4f7fb;
  --soft-blue: #eaf2ff;
  --danger: #ff4d4f;
  --green: #32b57c;
  --orange: #ff7659;
  --red: #ef3737;
  --cyan: #28b7ef;
  --teal: #087f68;
  --amber: #b35c00;
  --soft-teal: #ecfdf5;
  --soft-amber: #fff8e8;
  --soft-cyan: #ecfeff;
  --font-title: 18px;
  --font-section: 16px;
  --font-body: 13px;
  --font-help: 12px;
  --font-button: 14px;
  font-family: "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;
}

* {
  box-sizing: border-box;
}

html {
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--bg);
  font-size: var(--font-body);
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}

button,
textarea,
input,
select {
  font: inherit;
}

button {
  border: 0;
  cursor: pointer;
  white-space: nowrap;
}

.hidden {
  display: none !important;
}

.app {
  width: 100vw;
  height: 100vh;
  display: flex;
  flex-direction: column;
  background: #f5f7fb;
}

.titlebar {
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 8px 0 4px;
  color: #101828;
  background: #fff;
  border-bottom: 1px solid #e6edf7;
  -webkit-app-region: drag;
}

.brand {
  display: flex;
  align-items: center;
  gap: 5px;
}

.brand-mark {
  width: 19px;
  height: 19px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid #e6edf7;
  border-radius: 4px;
  background: #f8fafc;
}

.brand-avatar {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.brand strong {
  display: block;
  color: #101828;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
}

.brand span {
  display: none;
}

.titlebar-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  -webkit-app-region: no-drag;
}

.soft-action {
  height: 38px;
  padding: 0 24px;
  border-radius: 2px;
  color: var(--blue);
  background: #fff;
  font-weight: 700;
}

.icon-button,
.window-button {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  color: #fff;
  background: transparent;
  border-radius: 2px;
  font-size: 20px;
}

.icon-button:hover,
.window-button:hover {
  background: rgba(255, 255, 255, 0.16);
}

.window-button.close:hover {
  background: #f04438;
}

.layout {
  min-height: 0;
  width: 100%;
  display: flex;
  flex: 1;
}

.sidebar {
  width: 212px;
  display: flex;
  flex-direction: column;
  padding: 0 0 14px;
  background: #f7f8fb;
  border-right: 1px solid var(--line);
}

.category-menu {
  min-height: 0;
  flex: 1;
  overflow-y: auto;
  padding: 12px 0;
}

.category-group {
  position: relative;
  margin: 0 6px 10px 12px;
  border: 1px solid #e4e9f1;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.72);
  overflow: hidden;
  box-shadow: -4px 0 0 rgba(23, 100, 255, 0.05);
}

.category-group::before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  bottom: 12px;
  width: 11px;
  border-left: 2px solid rgba(23, 100, 255, 0.34);
  border-top: 2px solid rgba(23, 100, 255, 0.22);
  border-bottom: 2px solid rgba(23, 100, 255, 0.22);
  border-radius: 8px 0 0 8px;
  pointer-events: none;
  z-index: 1;
}

.category-group:nth-child(2)::before {
  border-left-color: rgba(11, 143, 114, 0.42);
  border-top-color: rgba(11, 143, 114, 0.24);
  border-bottom-color: rgba(11, 143, 114, 0.24);
}

.category-group:nth-child(3)::before {
  border-left-color: rgba(198, 112, 15, 0.42);
  border-top-color: rgba(198, 112, 15, 0.24);
  border-bottom-color: rgba(198, 112, 15, 0.24);
}

.category-group-toggle {
  width: 100%;
  min-height: 48px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 7px;
  padding: 8px 8px;
  color: #25344a;
  background: #fff;
  text-align: left;
}

.category-group-toggle:hover { background: #f1f6ff; }
.category-group-toggle strong {
  min-width: 0;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.25;
  white-space: nowrap;
}
.category-group-mark {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  color: #fff;
  background: #1f66f3;
  border-radius: 8px;
  font-weight: 400;
}
.category-group:nth-child(2) .category-group-mark { background: #0b8f72; }
.category-group:nth-child(3) .category-group-mark { background: #c6700f; }
.category-group-count { color: #8793a5; font-size: 12px; }
.category-chevron { color: #6a7890; transition: transform 0.18s ease; }
.category-group.open .category-chevron { transform: rotate(180deg); }
.category-group-items {
  position: relative;
  padding: 7px 0 3px 5px;
  border-top: 1px solid #edf0f5;
}
.category-group-items::before {
  content: "";
  position: absolute;
  left: 14px;
  top: 12px;
  bottom: 12px;
  width: 1px;
  background: #d7e4f8;
  pointer-events: none;
}
.category-group-items[hidden] { display: none; }

.category-link {
  width: calc(100% - 8px);
  height: 48px;
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 4px 4px;
  padding: 0 10px;
  color: #617086;
  background: transparent;
  text-align: left;
  font-size: 13px;
  font-weight: 400;
  border-radius: 6px;
  transition: color 0.16s ease, background-color 0.16s ease;
}

.category-link:hover {
  color: var(--blue);
  background: #edf4ff;
}

.category-link.active {
  color: var(--blue);
  background: #e8f1ff;
  font-weight: 400;
  box-shadow: inset 3px 0 0 var(--blue);
}

.category-group:nth-child(2) .category-link:hover,
.category-group:nth-child(2) .category-link.active {
  color: var(--teal);
  background: var(--soft-teal);
}

.category-group:nth-child(2) .category-link.active {
  box-shadow: inset 3px 0 0 var(--teal);
}

.category-group:nth-child(3) .category-link:hover,
.category-group:nth-child(3) .category-link.active {
  color: var(--amber);
  background: var(--soft-amber);
}

.category-group:nth-child(3) .category-link.active {
  box-shadow: inset 3px 0 0 #c6700f;
}

.category-icon {
  width: 19px;
  height: 19px;
  display: grid;
  place-items: center;
  flex: 0 0 19px;
}

.svg-icon {
  width: 1em;
  height: 1em;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.more-products {
  height: 52px;
  margin: 14px 16px 0;
  margin-top: auto;
  color: #7a4b00;
  background: #fff8df;
  border: 1px solid #ffe2a8;
  font-size: 16px;
  border-radius: 2px;
}

.more-products:hover {
  color: #9a5d00;
  background: #fff4cc;
  border-color: #ffd58a;
}

.content {
  min-width: 0;
  height: 100%;
  flex: 1;
  padding: 16px 28px 22px;
  overflow: auto;
}

.home-view,
.tool-view {
  width: 100%;
  max-width: none;
  min-width: 0;
}

.notice-bar {
  min-height: 46px;
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
  padding: 0 18px;
  color: #7a4b00;
  background: #fff8df;
  border: 1px solid #ffe2a8;
  border-left: 6px solid #f0b429;
  border-radius: 6px 0 0 6px;
}

.notice-bar strong {
  color: #9a5d00;
}

.tabs {
  display: flex;
  margin-bottom: 28px;
}

.tabs button {
  min-width: 110px;
  height: 60px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: var(--ink);
  background: #fafcff;
  border: 1px solid var(--line);
  border-right: 0;
  padding: 0 26px;
  font-size: 18px;
}

.tab-icon {
  width: 21px;
  height: 21px;
  display: grid;
  place-items: center;
  color: currentColor;
}

.tabs button:last-child {
  border-right: 1px solid var(--line);
}

.tabs .active {
  color: var(--blue);
  background: #fff;
  font-weight: 800;
}

.wp-step-tabs {
  display: grid;
  gap: 2px;
  align-content: start;
  min-height: 0;
  padding: 10px 8px;
  background: #f4f7fb;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
}

.wp-mode-card {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 4px 8px;
  align-items: start;
  margin-bottom: 6px;
  padding: 10px;
  color: #344054;
  background: #fff;
  border: 1px solid #d8e7ff;
  border-radius: var(--radius-sm);
}

.wp-mode-card input {
  grid-row: 1 / 3;
  margin-top: 2px;
}

.wp-mode-card strong {
  color: var(--ink);
  font-size: 13px;
}

.wp-mode-card small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

#wpWizardNavSteps {
  display: grid;
  gap: 2px;
}

.wp-step-tabs button {
  min-height: 44px;
  color: #344054;
  background: transparent;
  border: 0;
  border-left: 3px solid transparent;
  border-radius: var(--radius-sm);
  font-size: 12px;
  font-weight: 700;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  gap: 0 10px;
  padding: 6px 8px;
  text-align: left;
  box-shadow: none;
}

.wp-step-tabs button:hover,
.wp-step-tabs button:focus-visible,
.wp-step-tabs button.active {
  color: var(--blue);
  background: var(--soft-blue);
  border-left-color: var(--blue);
  outline: none;
}

.wp-step-tabs button.done {
  color: #344054;
  background: transparent;
  border-left-color: transparent;
}

.wp-step-tabs button span {
  grid-row: 1 / 3;
  width: 23px;
  height: 23px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  color: var(--blue);
  background: #e8f1ff;
  font-size: 12px;
  font-weight: 700;
}

.wp-step-tabs button:hover span,
.wp-step-tabs button.active span {
  color: #fff;
  background: var(--blue);
}

.wp-step-tabs button strong,
.wp-step-tabs button small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.wp-step-tabs button strong {
  grid-column: 2;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}

.wp-step-tabs button small {
  grid-column: 2;
  display: block;
  margin-top: 2px;
  color: #98a2b3;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
}

.wp-step-tabs button.active small {
  color: #98a2b3;
}

.wp-common-panel {
  margin-bottom: 16px;
}

.wp-wizard {
  display: grid;
  gap: 12px;
  height: 100%;
  min-height: 0;
}

.wp-wizard-shell {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr) 300px;
  height: 100%;
  min-height: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line-strong);
  border-radius: 8px;
}

.wp-wizard-main {
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}

.wp-step-pane {
  height: 100%;
  min-height: 0;
}

.wp-step-pane h2 {
  margin-bottom: 6px;
}

.wp-step-pane h3 {
  margin: 0 0 8px;
  color: var(--ink);
  font-size: var(--font-section);
}

.wp-step-notice {
  min-height: 34px;
  display: flex;
  align-items: center;
  padding: 0 14px;
  color: #9a5b00;
  background: #fff8df;
  border: 1px solid #ffe09a;
  border-radius: 6px;
  font-weight: 700;
}

.field-help,
.inline-note,
.field-row small,
.helper-options small,
.target-field small {
  color: var(--muted);
  font-size: var(--font-help);
  line-height: 1.35;
}

.inline-note {
  margin: 8px 0 0;
}

.field-grid {
  display: grid;
  gap: 8px;
}

.field-grid.two {
  grid-template-columns: repeat(2, minmax(0, 260px));
}

.field-card {
  display: grid;
  gap: 5px;
  padding: 8px 10px;
  background: #fff;
  border: 1px solid var(--line);
}

.field-card span {
  color: #475467;
  font-weight: 800;
}

.field-card input {
  width: 100%;
}

.helper-options {
  margin-top: 8px;
}

.helper-options label {
  align-items: flex-start;
  padding: 6px 8px;
  background: #fff;
  border: 1px solid var(--line);
}

.helper-options small {
  display: block;
  margin-left: 2px;
}

.compact-actions {
  margin-top: 10px;
}

.wp-two-column {
  grid-template-columns: repeat(2, minmax(360px, 1fr));
  gap: 16px;
}

.finish-summary {
  display: grid;
  gap: 12px;
  max-width: 880px;
}

.target-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 10px;
  max-width: 1180px;
}

.target-field {
  min-height: 64px;
  display: grid;
  grid-template-columns: 118px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  gap: 2px 8px;
  padding: 6px 8px;
  background: #fff;
  border: 1px solid var(--line);
}

.target-field span {
  grid-row: 1 / span 2;
  color: #475467;
  font-weight: 800;
}

.target-field input {
  width: 100%;
  height: 34px;
}

.target-field:has(#wpQuarkTargetDir) {
  order: 1;
}

.target-field:has(#wpBaiduTargetDir) {
  order: 2;
}

.target-field:has(#wpXunleiTargetDir) {
  order: 3;
}

.target-field small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.publish-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  max-width: 1220px;
}

.publish-card {
  display: grid;
  align-content: start;
  gap: 7px;
  padding: 10px 12px;
  background: #fff;
  border: 1px solid var(--line);
}

.publish-field {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  align-items: center;
  gap: 6px 8px;
}

.publish-field label,
.publish-options strong {
  color: #475467;
  font-weight: 800;
}

.publish-field input,
.publish-field select {
  width: 100%;
  height: 34px;
}

.publish-inline {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) 52px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
}

.publish-batch-help {
  grid-column: 2 / -1;
  color: #667085;
  font-size: var(--font-help);
  line-height: 1.45;
}

.publish-field.with-button {
  grid-template-columns: 92px minmax(0, 1fr) 82px;
}

.publish-field.stack {
  grid-template-columns: 92px minmax(0, 1fr);
  align-items: start;
}

.publish-field.stack textarea {
  min-height: 46px;
}

.publish-options {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 12px;
}

.publish-options .option-grid {
  padding-top: 0;
}

.publish-field small {
  grid-column: 2;
  overflow: hidden;
  font-size: var(--font-help);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-button.mini-help {
  height: 34px;
  padding: 0 8px;
  font-size: 12px;
  white-space: nowrap;
}

.publish-field.with-button .text-button {
  height: 34px;
  padding: 0 8px;
  font-size: 12px;
  white-space: nowrap;
}

.finish-summary div {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 12px;
  padding: 12px 14px;
  background: #fff;
  border: 1px solid var(--line);
}

.finish-summary span {
  color: var(--muted);
  word-break: break-all;
}

.wp-wizard-nav {
  border: 0;
  border-right: 1px solid var(--line-strong);
  border-radius: 0;
}

.wp-page-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 9px;
  border-bottom: 1px solid var(--line);
}

.wp-page-head span,
.wp-page-head p {
  margin: 0;
  color: var(--muted);
  font-size: var(--font-help);
}

.wp-page-head h2 {
  margin: 2px 0 0;
  font-size: 17px;
  letter-spacing: 0;
}

.wp-setup-page {
  padding: 12px;
  overflow: auto;
}

.wp-setup-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 10px;
  padding-top: 10px;
}

.wp-setting-group {
  min-width: 0;
  padding: 10px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
}

.wp-setting-group > h2 {
  margin: 0 0 5px;
  font-size: 14px;
  letter-spacing: 0;
}

.wp-numbered-heading {
  display: flex;
  align-items: center;
  gap: 7px;
}

.wp-numbered-heading > span:first-child {
  flex: 0 0 23px;
  width: 23px;
  height: 23px;
  display: inline-grid;
  place-items: center;
  color: var(--blue);
  background: #e8f1ff;
  border: 1px solid #cfe0ff;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 700;
}

.wp-numbered-heading > strong {
  color: var(--ink);
  font-size: 14px;
}

.wp-folder-group { grid-column: 1 / -1; }
.wp-drive-group { grid-column: 1 / -1; }
.wp-source-group textarea { min-height: 180px; }
.wp-rules-group .field-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.wp-execute-page {
  display: block;
  overflow: hidden;
}

.wp-execute-main {
  min-width: 0;
  min-height: 0;
  height: 100%;
  display: grid;
  align-content: start;
  gap: 9px;
  padding: 12px;
  overflow: auto;
}

.wp-execute-main .target-grid,
.wp-execute-main .publish-grid { max-width: none; }

.wp-publish-settings .publish-card {
  padding: 0;
  border: 0;
  border-radius: 0;
}

.wp-execute-side {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(200px, 1fr);
  gap: 10px;
  padding: 12px;
  background: #f8fafc;
  border-left: 1px solid var(--line);
}

.wp-result-summary {
  padding: 10px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 6px;
}

.wp-result-head {
  display: grid;
  gap: 2px;
  margin-bottom: 8px;
}

.wp-result-head span { color: var(--blue); font-size: var(--font-help); }
.wp-result-head strong { color: var(--ink); font-size: 14px; }
.wp-execute-side .finish-summary { gap: 6px; }
.wp-execute-side .finish-summary div {
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 7px;
  padding: 7px 0;
  border: 0;
  border-top: 1px solid #eef2f7;
}

.wp-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  margin-top: 8px;
}

.wp-stat-grid > div {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: baseline;
  gap: 5px;
  padding: 7px 8px;
  background: #f8fafc;
  border: 1px solid #e4eaf3;
  border-radius: 6px;
}

.wp-stat-grid span {
  color: var(--ink);
  font-size: 17px;
  font-weight: 800;
}

.wp-stat-grid small {
  overflow: hidden;
  color: var(--muted);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wp-execute-side .tool-page-log-panel {
  height: auto;
  min-height: 200px;
  margin: 0;
}

@media (max-width: 980px) {
  .wp-wizard,
  .wp-wizard-shell { height: auto; }
  .wp-wizard-shell {
    grid-template-columns: minmax(0, 1fr);
    overflow: visible;
  }
  .wp-wizard-nav {
    border-right: 0;
    border-bottom: 1px solid var(--line-strong);
  }
  #wpWizardNavSteps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wp-setup-grid { grid-template-columns: minmax(0, 1fr); }
  .wp-execute-page { height: auto; overflow: visible; }
  .wp-execute-main { overflow: visible; }
  .wp-execute-side {
    border-left: 0;
    border-top: 1px solid var(--line);
  }
}

@media (max-width: 430px) {
  .wp-page-head { display: block; }
  .wp-page-head p { margin-top: 5px; }
  .wp-setup-page,
  .wp-execute-main,
  .wp-execute-side { padding: 8px; }
  .wp-setting-group { padding: 8px; }
  .field-grid.two,
  .target-grid,
  .publish-grid { grid-template-columns: minmax(0, 1fr); }
  .target-field,
  .publish-field,
  .publish-field.with-button,
  .publish-field.stack,
  .publish-inline {
    grid-template-columns: minmax(0, 1fr);
  }
  .target-field span,
  .publish-batch-help,
  .publish-field small { grid-column: 1; grid-row: auto; }
}

.compact-button {
  min-width: 86px;
  padding: 0 18px;
}

.option-list {
  display: grid;
  gap: 12px;
  color: #53677f;
  font-size: 15px;
  line-height: 1.6;
}

.option-list span {
  padding-left: 14px;
  border-left: 3px solid #d8e6ff;
}

.tool-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(310px, 1fr));
  gap: 22px 28px;
  padding: 18px 28px 32px;
}

.tool-card {
  position: relative;
  min-height: 118px;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 20px 24px;
  color: var(--ink);
  background: #fff;
  border: 1px solid #e7edf6;
  border-radius: 2px;
  box-shadow: 0 14px 34px rgba(16, 24, 40, 0.04);
  text-align: left;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
  overflow: hidden;
}

.tool-card:hover {
  border-color: #bfd4ff;
  box-shadow: 0 18px 48px rgba(23, 100, 255, 0.12);
  transform: translateY(-2px);
}

.tool-card::before,
.tool-card::after {
  position: absolute;
  left: 50%;
  z-index: 30;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.14s ease, transform 0.14s ease;
}

.tool-card::after {
  content: attr(data-tooltip);
  bottom: calc(100% + 12px);
  width: max-content;
  max-width: min(390px, calc(100vw - 56px));
  padding: 11px 15px;
  color: #fff;
  background: #c9142f;
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(124, 15, 37, 0.25);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
  white-space: normal;
  transform: translate(-50%, 7px);
}

.tool-card::before {
  content: "";
  bottom: calc(100% + 4px);
  width: 0;
  height: 0;
  border: 8px solid transparent;
  border-top-color: #c9142f;
  transform: translate(-50%, 7px);
}

.tool-card:hover::before,
.tool-card:hover::after,
.tool-card:focus-visible::before,
.tool-card:focus-visible::after {
  opacity: 1;
  transform: translate(-50%, 0);
}

.tool-card.disabled {
  opacity: 0.65;
  cursor: not-allowed;
}

.status-badge {
  position: absolute;
  top: 12px;
  right: 14px;
  padding: 4px 8px;
  color: #667085;
  background: #f2f4f7;
  border: 1px solid #e4e7ec;
  font-size: 12px;
  font-style: normal;
}

.status-badge.ready {
  color: #027a48;
  background: #ecfdf3;
  border-color: #abefc6;
}

.status-badge.beta {
  color: #175cd3;
  background: #eff8ff;
  border-color: #b2ddff;
}

.status-badge.linked {
  color: #175cd3;
  background: #eff8ff;
  border-color: #b2ddff;
}

.path-paste-area {
  min-height: 66px;
  margin-top: 10px;
  resize: vertical;
}

.post-file-state input {
  width: min(720px, 100%);
  min-width: 280px;
}

.tool-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  color: #fff;
  font-size: 28px;
}

.tool-icon.blue,
.tool-icon.gray {
  background: var(--blue);
}

.tool-icon.green {
  background: #2EAD68;
}

.tool-icon.orange {
  background: #F9734D;
}

.tool-icon.red {
  background: #E53935;
}

.tool-icon.cyan {
  background: #28A8E0;
}

.tool-copy strong {
  display: block;
  width: 100%;
  margin-bottom: 10px;
  overflow: hidden;
  font-size: 18px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tool-copy small {
  display: block;
  color: #667795;
  font-size: 13px;
  line-height: 1.55;
  overflow: hidden;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.tool-copy {
  flex: 1 1 auto;
  min-width: 0;
  max-width: calc(100% - 14px);
}

.tool-card.long-desc .tool-copy small {
  column-count: 2;
  column-gap: 14px;
  max-height: 3.2em;
}

.tool-view {
  height: 100%;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  align-self: stretch;
  background: #fff;
  border: 1px solid var(--line);
}

.tool-view:has(.process-drawer:not(.hidden)) {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 25vw);
  grid-template-rows: auto minmax(0, 1fr);
}

.tool-header {
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 12px 20px;
  border-bottom: 1px solid var(--line);
}

.tool-view:has(.process-drawer:not(.hidden)) .tool-header {
  grid-column: 1 / -1;
}

.tool-title {
  display: flex;
  align-items: center;
  gap: 14px;
}

.tool-title h1 {
  margin: 0;
  font-size: var(--font-title);
}

.netdisk-pan-embedded-titleline {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.netdisk-pan-embedded-titleline .tutorial-guide-link {
  margin-top: 2px;
}

.tutorial-guide-link {
  position: relative;
  min-width: 176px;
  height: 42px;
  padding: 12px 18px 8px 18px;
  border: 1px solid #f6d98c;
  border-left: 5px solid #d99b12;
  border-radius: 6px;
  color: #8a5a00;
  background: linear-gradient(180deg, #fff8df 0%, #fff2c4 100%);
  box-shadow: 0 0 0 0 rgba(217, 155, 18, 0.2);
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  animation: tutorialGuideBreath 2.8s ease-in-out infinite;
}

.tutorial-guide-link:hover {
  border-color: #e5ae2f;
  background: linear-gradient(180deg, #fff4cb 0%, #ffe9a2 100%);
  color: #704600;
}

.tutorial-guide-badge {
  position: absolute;
  top: -9px;
  right: 10px;
  padding: 2px 7px;
  border-radius: 999px;
  color: #fff;
  background: #d99b12;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.25;
}

@keyframes tutorialGuideBreath {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(217, 155, 18, 0.18);
  }
  50% {
    box-shadow: 0 0 14px 2px rgba(217, 155, 18, 0.28);
  }
}

.back-button,
.primary {
  color: #fff;
  background: var(--blue);
  font-weight: 800;
}

.back-button {
  height: 38px;
  padding: 0 18px;
  border-radius: 19px;
  font-size: var(--font-button);
}

.toolbar {
  display: flex;
  align-items: center;
  gap: 10px;
}

.primary,
.secondary,
.danger {
  height: 38px;
  padding: 0 14px;
  border-radius: 2px;
  font-size: var(--font-button);
}

.secondary {
  color: var(--blue);
  background: var(--soft-blue);
  border: 1px solid #cfe0fb;
  font-weight: 800;
}

.danger {
  color: #fff;
  background: var(--danger);
  font-weight: 800;
}

.primary:disabled,
.secondary:disabled,
.danger:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.has-hover-tip {
  position: relative;
}

.has-hover-tip::after {
  content: attr(data-hover-tip);
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 80;
  width: max-content;
  max-width: 280px;
  padding: 8px 10px;
  color: #fff;
  background: #172033;
  border-radius: 6px;
  box-shadow: 0 10px 24px rgba(16, 24, 40, 0.18);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.5;
  text-align: left;
  white-space: normal;
  pointer-events: none;
  opacity: 0;
  transform: translateY(-2px);
  transition: opacity 0.12s ease, transform 0.12s ease;
}

.has-hover-tip:hover::after,
.has-hover-tip:focus-visible::after {
  opacity: 1;
  transform: translateY(0);
}

.work-panel {
  min-height: 0;
  padding: 12px 16px;
  overflow: auto;
}

.tool-view:has(.tool-page-log-panel) .work-panel {
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.work-panel:has(.tool-page-log-panel) > .panel,
.work-panel:has(.tool-page-log-panel) > .utility-workbench,
.work-panel:has(.tool-page-log-panel) > .office-workbench {
  flex: 1 1 auto;
  min-height: 0;
}

.tool-view.inner-watermark-visible .inner-brand-watermark {
  display: none;
}

.tool-view:has(.post-helper-page) .work-panel {
  overflow: hidden;
}

.tool-view:has(.wallpaper-tool-layout) {
  height: 100%;
  min-height: 0;
}

.tool-view:has(.wallpaper-tool-layout) .work-panel {
  min-height: 0;
  padding: 14px 16px 16px;
  overflow: auto;
}

.tool-view:has(.process-drawer:not(.hidden)) .work-panel {
  grid-column: 1;
  grid-row: 2;
}

.module-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.panel {
  background: #f8fbff;
  border: 1px solid var(--line);
  padding: 14px;
}

.panel h2 {
  margin: 0 0 10px;
  font-size: var(--font-title);
}

.drive-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 18px;
}

.drive-card {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  padding: 10px 12px;
  background: #fff;
  border: 1px solid var(--line);
}

.login-state {
  color: var(--muted);
  font-size: 13px;
}

.login-state.ok {
  color: #0b8a4a;
}

.module-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 16px 0;
}

textarea {
  width: 100%;
  min-height: 280px;
  resize: vertical;
  border: 1px solid #d7dfec;
  padding: 12px;
  color: var(--ink);
  background: #fff;
  outline: none;
  font: var(--font-body)/1.5 Consolas, "Microsoft YaHei UI", monospace;
}

textarea:focus,
input:focus {
  border-color: var(--blue);
  box-shadow: 0 0 0 3px rgba(23, 100, 255, 0.1);
}

input,
select {
  height: 38px;
  min-width: 0;
  border: 1px solid #d7dfec;
  padding: 0 12px;
  color: var(--ink);
  background: #fff;
  outline: none;
}

select {
  min-width: 120px;
}

.readonly-value {
  min-height: 38px;
  display: flex;
  align-items: center;
  padding: 0 12px;
  color: var(--muted);
  background: #f8fbff;
  border: 1px solid var(--line-strong);
}

.hero-panel {
  min-height: 260px;
  background: #fff;
}

.hero-panel p {
  max-width: 920px;
  margin: 0 0 20px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.8;
}

.info-list {
  display: grid;
  gap: 10px;
  max-width: 980px;
}

.info-list div {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 14px;
  align-items: center;
  min-height: 44px;
  padding: 10px 12px;
  background: #f8fbff;
  border: 1px solid var(--line);
}

.info-list span {
  color: var(--muted);
}

.info-list strong {
  word-break: break-all;
}

.form-panel {
  margin-bottom: 10px;
}

.field-row {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}

.field-row.wide {
  grid-template-columns: 120px minmax(0, 1fr) auto;
}

.field-row.compact {
  grid-template-columns: 92px 160px 70px 120px;
  justify-content: start;
}

.field-row.stack {
  grid-template-columns: 1fr;
  align-items: stretch;
}

.field-row.stack label {
  margin-bottom: -2px;
}

.field-row.stack textarea {
  min-height: 150px;
}

.field-row.stack textarea.compact-textarea {
  min-height: 118px;
}

.field-row.stack textarea.compact-textarea.small {
  min-height: 52px;
}

.field-row label {
  color: #475467;
  font-weight: 700;
}

.option-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  padding-top: 4px;
}

.option-grid label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 32px;
  color: #344054;
  font-size: 14px;
}

.option-grid input {
  width: 16px;
  height: 16px;
  min-width: 16px;
  padding: 0;
}

.note-box {
  min-height: 280px;
  padding: 4px 2px;
  color: #53657f;
  font-size: 15px;
  line-height: 1.9;
}

.note-box p {
  margin: 0 0 14px;
}

.subtool-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.subtool-nav {
  display: grid;
  gap: 8px;
  max-height: calc(100vh - 230px);
  overflow: auto;
  padding-right: 4px;
}

.subtool-link {
  display: grid;
  gap: 6px;
  min-height: 76px;
  padding: 12px 14px;
  color: #53657f;
  background: #fff;
  border: 1px solid var(--line);
  text-align: left;
}

.subtool-link strong {
  color: #1d2939;
  font-size: 15px;
}

.subtool-link span {
  overflow: hidden;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.subtool-link.active {
  border-color: #b7ccff;
  background: #edf4ff;
  box-shadow: inset 4px 0 0 var(--blue);
}

.subtool-main {
  min-width: 0;
}

.wallpaper-tool-layout {
  display: grid;
  gap: 12px;
  height: 100%;
  min-height: 0;
}

.wallpaper-module-tabs {
  grid-area: menu;
  display: grid;
  grid-template-columns: 1fr;
  align-content: start;
  gap: 4px;
  padding: 12px 9px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
  background: #f7f9fc;
  box-shadow: none;
  min-height: 0;
}

.wallpaper-module-tab {
  position: relative;
  min-height: 48px;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  gap: 0 10px;
  padding: 7px 8px;
  color: #344054;
  background: transparent;
  border: 0;
  border-left: 3px solid transparent;
  border-radius: 0;
  font-size: 13px;
  font-weight: 750;
  text-align: left;
  box-shadow: none;
  transition: background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, color 0.16s ease;
}

.wallpaper-module-tab::before {
  display: none;
}

.wallpaper-module-tab span {
  grid-row: 1 / 3;
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  color: var(--blue);
  background: rgba(23, 100, 255, 0.08);
  font-size: 12px;
  font-weight: 900;
}

.wallpaper-module-tab em {
  grid-column: 2;
  min-width: 0;
  display: grid;
  gap: 2px;
  font-style: normal;
}

.wallpaper-module-tab strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
  white-space: nowrap;
  line-height: 1.25;
}

.wallpaper-module-tab small {
  min-width: 0;
  overflow: hidden;
  color: #8b9aaf;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wallpaper-module-tab:hover {
  color: var(--blue);
  background: var(--soft-blue);
  border-left-color: var(--blue);
}

.wallpaper-module-tab.active {
  color: var(--blue);
  background: var(--soft-blue);
  border-left-color: var(--blue);
  transform: none;
  box-shadow: none;
}

.wallpaper-module-tab.active::before {
  background: var(--blue);
}

.wallpaper-module-tab.active span {
  color: #fff;
  background: var(--blue);
}

.wallpaper-module-tab.active small {
  color: #7b8fa8;
}

.module-directory {
  grid-area: auto;
  min-width: 0;
  padding: 0 0 0 6px;
  color: #344054;
  background: transparent;
  border: 0;
  border-left: 1px solid #d8e2f0;
  border-radius: 0;
}

.module-directory .wallpaper-module-tab {
  width: 100%;
  min-height: 44px;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: 0 10px;
  align-items: center;
  padding: 6px 8px;
  border: 0;
  border-left: 3px solid transparent;
  border-radius: var(--radius-sm);
  box-shadow: none;
}

.module-directory .wallpaper-module-tab::before {
  display: none;
}

.module-directory .wallpaper-module-tab span {
  grid-row: 1 / 3;
  width: 23px;
  height: 23px;
  color: var(--blue);
  background: #e8f1ff;
  border-radius: 50%;
  font-size: 12px;
  font-weight: 700;
}

.module-directory .wallpaper-module-tab > strong,
.module-directory .wallpaper-module-tab em strong {
  min-width: 0;
  color: inherit;
  font-size: 13px;
  font-weight: 600;
}

.module-directory .wallpaper-module-tab em small {
  color: #98a2b3;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
}

.module-directory .wallpaper-module-tab:hover,
.module-directory .wallpaper-module-tab:focus-visible,
.module-directory .wallpaper-module-tab.active {
  color: var(--blue);
  background: var(--soft-blue);
  border-left-color: var(--blue);
  outline: none;
  transform: none;
}

.module-directory .wallpaper-module-tab:hover span,
.module-directory .wallpaper-module-tab.active span {
  color: #fff;
  background: var(--blue);
}

.module-directory-head {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 2px 10px;
  align-items: center;
  margin: 0 0 10px;
  padding: 12px 14px;
  color: #fff;
  background: var(--blue);
  border-radius: 6px;
  box-shadow: 0 8px 20px rgba(21, 101, 255, 0.16);
}

.module-directory-head span {
  grid-row: 1 / 3;
  width: 30px;
  height: 30px;
  display: inline-grid;
  place-items: center;
  color: #fff;
  background: rgba(255, 255, 255, 0.16);
  border-radius: 8px;
  font-weight: 900;
}

.module-directory-head strong {
  min-width: 0;
  overflow: hidden;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.module-directory-head small {
  min-width: 0;
  overflow: hidden;
  color: rgba(255, 255, 255, 0.82);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wallpaper-workbench {
  display: grid;
  grid-template-columns: 276px minmax(460px, 1fr) minmax(272px, 300px);
  grid-template-rows: auto minmax(0, 1fr);
  grid-template-areas:
    "menu config guide"
    "menu config result";
  gap: 12px;
  align-items: stretch;
  max-width: 100%;
  height: 100%;
  min-height: 0;
}

.wallpaper-config-panel {
  grid-area: config;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

.wallpaper-config-panel .wallpaper-form-rules:last-child {
  flex: 1;
  align-content: start;
}

.wallpaper-guide-panel {
  grid-area: guide;
  padding: 12px 14px;
  background:
    linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
  min-height: 0;
}

.wallpaper-result-panel {
  grid-area: result;
  padding: 12px 14px;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.wallpaper-panel-head,
.wallpaper-result-head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.wallpaper-panel-head {
  justify-content: flex-start;
}

.wallpaper-result-head {
  justify-content: space-between;
}

.wallpaper-title-mark {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border: 1px solid #cfe0ff;
  border-radius: 7px;
  color: var(--blue);
  background: linear-gradient(180deg, #f4f8ff, #eaf2ff);
  font-size: 15px;
  font-weight: 900;
  box-shadow: inset 4px 0 0 rgba(23, 100, 255, 0.22);
}

.wallpaper-panel-head h2,
.wallpaper-result-head h2,
.wallpaper-guide-panel h3 {
  margin: 0;
}

.wallpaper-panel-head h2 {
  line-height: 1.2;
}

.wallpaper-panel-head .module-desc {
  margin-top: 6px;
  margin-bottom: 2px;
  line-height: 1.55;
}

.wallpaper-guide-kicker {
  margin-bottom: 5px;
  color: var(--blue);
  font-size: 12px;
  font-weight: 850;
}

.wallpaper-guide-panel ul {
  display: grid;
  gap: 6px;
  margin: 10px 0;
  padding: 0;
  list-style: none;
}

.wallpaper-guide-panel li {
  padding-left: 12px;
  border-left: 3px solid #d8e6ff;
  color: #475467;
  font-size: 12px;
  line-height: 1.55;
}

.wallpaper-safe-line {
  display: grid;
  gap: 4px;
  margin-top: 10px;
  padding: 9px 10px;
  border: 1px solid #d8e6ff;
  border-radius: 6px;
  background: #f0f6ff;
}

.wallpaper-safe-line strong {
  color: var(--blue);
  font-size: 13px;
}

.wallpaper-safe-line span {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.wallpaper-flow-chips {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 8px;
}

.wallpaper-flow-chips span {
  height: 24px;
  display: inline-flex;
  align-items: center;
  padding: 0 9px;
  border: 1px solid #d8e6ff;
  border-radius: 999px;
  color: #1764ff;
  background: #f0f6ff;
  font-size: 12px;
  font-weight: 750;
}

#wallpaperForm {
  display: grid;
  gap: 10px;
  margin-top: 10px;
}

.wallpaper-form-group {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid #e4edf9;
  border-radius: 7px;
  background: #fbfdff;
}

.wallpaper-form-group + .wallpaper-form-group {
  margin-top: 0;
}

.wallpaper-form-rules {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.wallpaper-form-rules .wallpaper-form-title {
  grid-column: 1 / -1;
}

.wallpaper-form-rules .field-row {
  grid-column: 1 / -1;
}

.wallpaper-form-rules .wallpaper-check {
  width: 100%;
  margin-right: 0;
}

.wallpaper-form-title {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #1764ff;
  font-size: 12px;
  font-weight: 850;
}

.wallpaper-form-title::before {
  content: "";
  width: 4px;
  height: 14px;
  border-radius: 999px;
  background: #1764ff;
}

#wallpaperForm .field-row {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) 76px;
  align-items: center;
  gap: 8px;
  margin-bottom: 0;
}

#wallpaperForm .field-row.stack {
  grid-template-columns: 92px minmax(0, 1fr);
}

#wallpaperForm .field-row.stack textarea {
  min-height: 70px;
}

#wallpaperForm .field-row > label {
  overflow: hidden;
  color: #25344a;
  font-size: 13px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#wallpaperForm .wallpaper-check {
  min-height: 34px;
  margin: 0 10px 0 0;
  padding: 0 8px;
  border: 1px solid #d8e6ff;
  border-radius: 6px;
  background: #f8fbff;
  overflow: visible;
  color: #25344a;
  font-size: 13px;
  font-weight: 800;
  text-overflow: clip;
  white-space: nowrap;
}

#wallpaperForm .wallpaper-check span {
  min-width: 0;
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
}

.wallpaper-result-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
  margin: 10px 0 8px;
}

.wallpaper-result-stats span {
  display: grid;
  gap: 2px;
  min-height: 58px;
  padding: 8px 10px;
  border: 1px solid #d8e6ff;
  border-radius: 6px;
  background: #f8fbff;
}

.wallpaper-result-stats strong {
  color: var(--blue);
  font-size: 19px;
  line-height: 1;
}

.wallpaper-empty-stats strong {
  color: #475467;
  font-size: 18px;
}

.wallpaper-result-stats em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
}

.wallpaper-notes {
  display: grid;
  gap: 5px;
  margin-bottom: 10px;
}

.wallpaper-notes p {
  margin: 0;
  color: #8a5b00;
  font-size: 12px;
}

.wallpaper-result-list {
  display: grid;
  gap: 6px;
  max-height: 168px;
  overflow: auto;
}

.wallpaper-result-row {
  display: grid;
  grid-template-columns: 28px 88px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 7px 9px;
  border: 1px solid #edf2f8;
  border-radius: 6px;
  background: #fff;
}

.wallpaper-result-row b {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  color: var(--blue);
  background: #eaf2ff;
  font-size: 12px;
}

.wallpaper-result-row span {
  overflow: hidden;
  color: #25344a;
  font-size: 12px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wallpaper-result-row p {
  margin: 0;
  overflow: hidden;
  color: #667085;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wallpaper-result-row i {
  color: #98a2b3;
  font-style: normal;
}

.wallpaper-empty-state {
  display: grid;
  place-items: center;
  min-height: 82px;
  padding: 10px 12px;
  border: 1px dashed #c9d8eb;
  border-radius: 6px;
  color: #667085;
  background: #f8fbff;
  font-size: 13px;
  text-align: center;
}

.danger-text {
  color: var(--danger);
}

@media (max-width: 1180px) {
  .wallpaper-workbench {
    grid-template-columns: 1fr;
    grid-template-areas:
      "menu"
      "config"
      "guide"
      "result";
  }

  .wallpaper-module-tabs {
    grid-template-columns: repeat(4, minmax(160px, 1fr));
    overflow-x: auto;
  }

  .wallpaper-module-tab.active {
    transform: none;
  }
}

.compact-tabs {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  margin: 0 0 12px;
}

.compact-tabs button {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 7px 8px;
  color: #466079;
  background: #f8fbff;
  border: 1px solid #d9e5f6;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 750;
  white-space: nowrap;
  box-shadow: 0 8px 18px rgba(16, 24, 40, 0.04);
}

.compact-tabs button span {
  width: 20px;
  height: 20px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  color: var(--blue);
  background: rgba(23, 100, 255, 0.1);
  font-size: 12px;
  font-weight: 900;
}

.compact-tabs button.active {
  color: #fff;
  background: var(--blue);
  border-color: var(--blue);
  box-shadow: 0 10px 24px rgba(23, 100, 255, 0.16);
}

.compact-tabs button.active span {
  color: #fff;
  background: rgba(255, 255, 255, 0.18);
}

.compact-tool-panel {
  display: grid;
  gap: 8px;
  padding: 12px;
  padding-bottom: 12px;
}

.compact-tool-panel h2 {
  margin-bottom: 0;
  font-size: 18px;
}

.compact-tool-panel h3 {
  margin: 2px 0 -2px;
  color: #25344a;
  font-size: 14px;
}

.tool-two-col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.tool-two-col.utility-three-col {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tool-two-col .span-2 {
  grid-column: 1 / -1;
}

.inline-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.field-card {
  min-width: 0;
}

.field-card label {
  color: #475467;
  font-size: 14px;
  font-weight: 800;
}

.field-card small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.field-card .inline-status,
.field-card .plain-help {
  min-height: 38px;
  display: flex;
  align-items: center;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.field-card .inline-status.ok {
  color: #16a34a;
  font-weight: 800;
}

.field-card .inline-check {
  margin: 0;
}

.tool-view:has(.office-workbench) {
  height: 100%;
  min-height: 0;
}

.tool-view:has(.office-workbench) .work-panel {
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding: 14px 16px 16px;
  overflow: hidden;
}

.office-workbench {
  flex: 1;
  height: auto;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 330px);
  gap: 14px;
  align-items: stretch;
}

.office-batch-panel {
  height: 100%;
  min-height: 0;
  margin: 0;
  align-self: stretch;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 8px;
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(249, 252, 255, 0.98));
}

.office-batch-panel > .tool-two-col {
  flex: 0 1 auto;
  min-height: 0;
  overflow: visible;
  padding-right: 0;
  gap: 6px;
}

.office-batch-panel .field-row {
  margin-bottom: 4px;
}

.office-batch-panel .field-card {
  gap: 4px;
  padding: 7px 9px;
}

.office-batch-panel .field-card small {
  line-height: 1.35;
}

.office-batch-panel input,
.office-batch-panel select {
  min-height: 34px;
}

.word-replace-workbench {
  grid-template-columns: minmax(0, 1fr) minmax(286px, 318px);
  gap: 12px;
}

.batch-four-step-workbench {
  grid-template-columns: minmax(0, 1fr) minmax(286px, 318px);
}

.word-replace-panel {
  gap: 8px;
  padding: 0;
  background: #fff;
}

.batch-four-step-panel {
  background: #fff;
}

.batch-four-step-panel .word-replace-step {
  gap: 6px;
  padding: 8px;
}

.word-replace-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.word-replace-title .module-desc {
  margin-bottom: 0;
}

.word-replace-title > span {
  flex: 0 0 auto;
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  padding: 0 9px;
  color: #175cd3;
  background: #eff6ff;
  border: 1px solid #d7e7ff;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 850;
}

.word-replace-flow {
  flex: 1 1 auto;
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto auto minmax(160px, 1fr);
  gap: 8px;
}

.batch-four-step-flow {
  grid-template-rows: auto auto auto auto;
}

.word-replace-step {
  min-width: 0;
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid #dde7f4;
  border-radius: 8px;
  background: #fbfdff;
}

.word-replace-step-head {
  display: grid;
  grid-template-columns: 24px auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
}

.word-replace-step-head b {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  color: #1764ff;
  background: #edf5ff;
  border: 1px solid #cfe0ff;
  border-radius: 6px;
  font-size: 12px;
}

.word-replace-step:nth-child(2) .word-replace-step-head b {
  color: var(--teal);
  background: var(--soft-teal);
  border-color: #a7e3d2;
}

.word-replace-step:nth-child(3) .word-replace-step-head b {
  color: var(--amber);
  background: var(--soft-amber);
  border-color: #f0d39b;
}

.word-replace-step:nth-child(4) .word-replace-step-head b {
  color: #087ea4;
  background: var(--soft-cyan);
  border-color: #a5e3ee;
}

.word-replace-step-head span {
  color: #172033;
  font-size: 14px;
  font-weight: 850;
}

.word-replace-step-head em {
  min-width: 0;
  overflow: hidden;
  color: #667085;
  font-size: 12px;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.word-replace-file-line,
.word-replace-output-grid .field-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: end;
}

.word-replace-file-line label {
  grid-column: 1 / -1;
}

.field-row.stack.word-replace-file-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

.office-file-input.word-replace-file-line {
  grid-template-columns: minmax(0, 1fr) 140px 140px;
  align-items: end;
  margin-bottom: 0;
}

.office-file-input.word-replace-file-line button {
  width: 140px;
  min-width: 0;
  padding-inline: 10px;
}

.word-replace-file-line input,
.word-replace-output-grid input {
  min-width: 0;
}

.word-replace-rule-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(220px, 0.72fr);
  gap: 8px;
}

.batch-four-step .office-option-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-height: 168px;
  overflow: auto;
  padding-right: 2px;
}

.office-batch-empty-rule-card {
  grid-column: 1 / -1;
  display: block;
  width: 100%;
  box-sizing: border-box;
  min-height: 64px;
  text-align: left;
  padding: 14px 18px;
  background: #f8fbff;
  border-style: dashed;
}

.office-batch-empty-rule-card label,
.office-batch-empty-rule-card small {
  display: block;
  width: 100%;
  margin-left: 0;
  text-align: left;
}

.office-batch-empty-rule-card small {
  margin-top: 10px;
  color: #5f718c;
  line-height: 1.65;
}

.batch-four-step .office-option-grid:empty {
  display: none;
}

.word-replace-output-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
  align-items: start;
}

.word-replace-output-grid .field-row {
  margin: 0;
  padding: 8px 9px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
  align-self: start;
}

.word-replace-output-grid .field-row label {
  grid-column: auto;
  align-self: center;
}

.word-replace-output-grid .field-row {
  grid-template-columns: 72px minmax(0, 1fr) auto;
  align-items: center;
}

.word-replace-safety-card {
  min-height: 48px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  padding: 8px 9px;
}

.word-replace-match-card,
.word-replace-safety-card {
  background: #fff;
}

.word-replace-safety-card > label:first-child {
  flex: 0 0 auto;
  margin-right: 2px;
}

.word-replace-safety-card .check-line,
.word-replace-safety-card > label {
  margin: 0;
}

.word-replace-safety-card small {
  flex: 1 0 100%;
  line-height: 1.4;
}

.word-replace-preview-step {
  min-height: 0;
}

.word-replace-preview-step .office-main-tray {
  min-height: 0;
  flex: 1 1 auto;
  padding: 10px;
  background: #fff;
}

.batch-four-step-panel .word-replace-preview-step .office-main-tray {
  min-height: 64px;
  flex: 0 0 auto;
}

.word-replace-preview-step .office-main-tray.is-empty {
  display: flex;
  overflow: hidden;
}

.word-replace-preview-step .office-main-tray.is-empty .office-main-flow {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 68px;
}

.word-replace-preview-step .office-main-tray.is-empty .office-main-flow > * {
  display: none;
}

.word-replace-preview-step .office-main-tray.is-empty .office-main-flow::after {
  content: "绛夊緟鎵弿棰勮锛屼换鍔￠槦鍒椾細鏄剧ず鍦ㄨ繖閲?;
  color: #667085;
  font-size: 12px;
}

.word-replace-preview-step .office-main-tray.is-empty {
  min-height: 64px;
}

.word-replace-preview-step .office-main-tray.is-empty .office-main-tray-head {
  width: auto;
  flex: 0 1 auto;
  justify-content: center;
  gap: 12px;
  margin: auto;
}

.word-replace-preview-step .office-main-tray.is-empty .office-main-tray-head > div {
  display: flex;
  align-items: center;
}

.word-replace-preview-step .office-main-tray.is-empty .office-main-flow {
  display: none;
}

.word-replace-preview-step .office-main-tray.is-empty .office-main-flow::after {
  content: none;
}

.word-replace-preview-step .office-main-tray-head strong,
.word-replace-preview-step .office-main-flow p {
  display: none;
}

.word-replace-preview-step .office-tray-queue {
  min-height: 52px;
  gap: 10px;
}

.word-replace-preview-step .office-tray-queue span {
  min-height: 42px;
  min-width: 128px;
  grid-auto-flow: column;
  gap: 6px;
}

.office-side-panel.word-replace-task-center {
  gap: 8px;
  padding: 12px;
}

.batch-four-step-task-center {
  overflow: hidden;
}

.batch-four-step-task-center .office-side-note p {
  display: -webkit-box;
  margin-top: 4px;
  overflow: hidden;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.batch-four-step-task-center .office-preview-card {
  gap: 6px;
  padding: 10px;
}

.word-replace-task-center:not(.batch-four-step-task-center) .office-preview-card {
  gap: 6px;
  padding: 10px;
}

.batch-four-step-task-center .office-preview-stats span {
  min-height: 46px;
}

.word-replace-task-center:not(.batch-four-step-task-center) .office-preview-stats span {
  min-height: 46px;
}

.batch-four-step-task-center .word-replace-risk-card {
  gap: 5px;
  padding: 8px 10px;
}

.word-replace-task-center:not(.batch-four-step-task-center) .word-replace-risk-card {
  gap: 5px;
  padding: 8px 10px;
}

.batch-four-step-task-center .word-replace-risk-card ul {
  line-height: 1.4;
}

.word-replace-task-center:not(.batch-four-step-task-center) .word-replace-risk-card ul {
  line-height: 1.4;
}

.word-replace-task-center .office-progress-card,
.batch-four-step-task-center .office-progress-card {
  flex: 0 0 auto;
  margin-top: 0;
  padding: 8px 10px;
}

.word-replace-task-center .office-progress-card .utility-progress-track,
.batch-four-step-task-center .office-progress-card .utility-progress-track {
  height: 4px;
}

.word-replace-task-center .office-progress-card p,
.batch-four-step-task-center .office-progress-card p {
  min-height: 0;
  margin-top: 7px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.word-replace-task-center .office-preview-card {
  flex: 0 0 auto;
}

.word-replace-task-center .office-preview-advice.hidden {
  display: none;
}

.word-replace-task-center .tool-page-log-panel {
  flex: 0 0 200px;
  width: 100%;
  margin-top: 0;
  min-height: 0;
}

.word-replace-risk-card {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid #dbe7f7;
  border-left: 3px solid #e0a43a;
  border-radius: 8px;
  background: #fbfdff;
}

.word-replace-task-center .office-preview-card {
  border-left: 3px solid #32a477;
}

.word-replace-task-center .office-progress-card {
  border-left: 3px solid #2aa7c9;
}

.word-replace-task-center .tool-page-log-panel {
  border-left: 3px solid #4e8ff7;
}

.word-replace-risk-card h3 {
  margin: 0;
  color: #172033;
  font-size: 15px;
}

.word-replace-risk-card ul {
  margin: 0;
  padding-left: 17px;
  color: #5f6f84;
  font-size: 12px;
  line-height: 1.7;
}

.format-four-step-workbench {
  grid-template-columns: minmax(0, 1fr) minmax(286px, 318px);
  grid-template-rows: minmax(0, 1fr);
  gap: 12px;
  height: 100%;
  overflow: hidden;
}

.format-four-step-panel {
  min-width: 0;
  padding: 0;
  background: #fff;
}

.format-four-step-flow {
  grid-template-rows: auto auto auto minmax(96px, 1fr);
}

.format-four-step-file-line {
  grid-template-columns: minmax(0, 1fr) 140px 140px;
  align-items: stretch;
}

.format-four-step-file-line textarea {
  min-width: 0;
  min-height: 40px;
  height: 40px;
  max-height: 64px;
  resize: vertical;
}

.format-four-step-file-line button {
  width: 140px;
  min-width: 0;
  padding-inline: 10px;
}

.format-convert-settings-grid {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(210px, 0.8fr) minmax(0, 1.2fr);
  gap: 8px;
}

.format-convert-settings-grid .field-card {
  min-width: 0;
  padding: 8px 9px;
}

.format-convert-method-card {
  position: relative;
  grid-template-columns: auto minmax(0, 1fr) 50px;
  align-items: center;
  column-gap: 9px;
}

.format-convert-method-card label,
.format-convert-method-card small {
  grid-column: 1 / -1;
}

.format-convert-method-card strong {
  min-width: 0;
  color: #344054;
  font-size: 13px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.format-convert-method-card .icon-button {
  width: 48px;
  min-width: 48px;
  height: 30px;
  min-height: 30px;
  padding: 0;
  color: #175cd3;
  background: #f7fbff;
  border: 1px solid #d7e7ff;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 700;
}

.format-convert-output-grid .field-row {
  grid-template-columns: 82px minmax(0, 1fr) auto;
}

.format-convert-safety-card small {
  flex: 1 1 100%;
  min-width: 0;
  overflow-wrap: anywhere;
}

.format-convert-result-step .utility-preview-tray {
  min-height: 70px;
  margin: 0;
  padding: 9px;
  background: #fff;
}

.format-convert-result-step .utility-result-empty {
  min-height: 42px;
}

.format-convert-task-center {
  gap: 8px;
  padding: 12px;
}

.format-convert-task-center .office-preview-advice {
  min-height: 0;
  margin-top: 6px;
  padding: 7px 8px;
  color: #667085;
  background: #f8fbff;
  border: 1px dashed #d7e7ff;
  border-radius: 7px;
  font-size: 12px;
  line-height: 1.4;
}

.format-convert-task-center .format-convert-notes {
  gap: 5px;
  padding: 8px 10px;
}

.format-convert-task-center .format-convert-notes ul {
  line-height: 1.4;
}

.format-convert-task-center .tool-page-log-panel {
  flex: 0 0 200px;
  width: 100%;
  min-height: 0;
  margin-top: 0;
}

.split-merge-four-step-flow {
  grid-template-rows: auto auto auto minmax(96px, 1fr);
}

.split-merge-settings-grid {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 1fr);
}

.split-merge-help-card {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 8px;
}

.split-merge-help-card > input,
.split-merge-help-card > select,
.split-merge-help-card > strong,
.split-merge-help-card > small,
.split-merge-help-card > .check-line,
.split-merge-help-card > .split-merge-inline-options {
  grid-column: 1 / -1;
}

.pdf-merge-bookmark-card .check-line {
  min-width: 0;
}

.split-merge-help-card .compact-help-button {
  width: 58px;
  min-width: 58px;
  height: 30px;
  min-height: 30px;
  padding: 0 8px;
}

.split-merge-method-card strong {
  color: #344054;
  font-size: 13px;
}

.split-merge-inline-options {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 0.55fr);
  gap: 8px;
}

.split-merge-inline-options > label {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.split-merge-inline-options span {
  color: #344054;
  font-size: 12px;
  font-weight: 700;
}

.split-merge-result-step .utility-preview-tray {
  min-height: 70px;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 9px;
  background: #fff;
}

.split-merge-result-step .utility-tray-head {
  display: none;
}

.split-merge-result-step .utility-result-empty {
  min-height: 42px;
}

.split-merge-task-center .office-progress-card {
  min-height: 0;
}

.office-side-panel.split-merge-task-center {
  gap: 6px;
  padding: 10px;
}

.split-merge-task-center .office-side-note p {
  display: -webkit-box;
  margin-top: 4px;
  overflow: hidden;
  line-height: 1.4;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.split-merge-task-center .office-preview-card {
  gap: 5px;
  padding: 8px;
}

.split-merge-task-center .office-preview-card h3 {
  font-size: 16px;
}

.split-merge-task-center .format-convert-notes {
  padding: 7px 9px;
}

.split-merge-task-center .format-convert-notes ul {
  font-size: 12px;
  line-height: 1.35;
}

.split-merge-task-center .office-progress-card {
  padding: 6px 8px;
}

.split-merge-task-center .office-progress-card p {
  margin-top: 4px;
}

.scan-cleanup-workbench {
  width: 100%;
  min-width: 0;
  min-height: 0;
  height: 100%;
  flex: 1 1 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 310px;
  gap: 10px;
  overflow: hidden;
}

.scan-cleanup-main,
.scan-cleanup-task-center {
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid #d9e4f2;
  border-radius: 8px;
}

.scan-cleanup-main {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
}

.scan-cleanup-step {
  min-width: 0;
  padding: 12px;
  border-bottom: 1px solid #e4ebf5;
}

.scan-cleanup-step > header {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}

.scan-cleanup-step > header > span {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  display: grid;
  place-items: center;
  color: #1764ff;
  background: #edf4ff;
  border: 1px solid #cfe0ff;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 800;
}

.scan-cleanup-step:nth-child(2) > header > span {
  color: var(--teal);
  background: var(--soft-teal);
  border-color: #a7e3d2;
}

.scan-cleanup-step:nth-child(3) > header > span {
  color: var(--amber);
  background: var(--soft-amber);
  border-color: #f0d39b;
}

.scan-cleanup-step > header > div {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.scan-cleanup-step > header strong {
  color: #172033;
  font-size: 14px;
}

.scan-cleanup-step > header small {
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.scan-cleanup-step > header em {
  margin-left: auto;
  padding: 3px 8px;
  color: #667085;
  background: #f2f4f7;
  border-radius: 6px;
  font-size: 11px;
  font-style: normal;
  white-space: nowrap;
}

.scan-cleanup-step > header em[data-state="ready"],
.scan-cleanup-step > header em[data-state="loading"] {
  color: #155eef;
  background: #eef4ff;
}

.scan-cleanup-step > header em[data-state="success"] {
  color: #067647;
  background: #ecfdf3;
}

.scan-cleanup-step > header em[data-state="error"] {
  color: #b42318;
  background: #fef3f2;
}

.scan-cleanup-scope {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
  gap: 8px;
}

.scan-cleanup-scope textarea {
  width: 100%;
  min-width: 0;
  height: 62px;
  min-height: 62px;
  padding: 8px 10px;
  resize: none;
}

.scan-cleanup-scope button {
  min-width: 128px;
}

.scan-cleanup-rules {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(180px, 1.4fr) minmax(140px, 1fr) minmax(140px, 1fr);
  gap: 10px;
}

.scan-cleanup-rules > label {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  color: #475467;
  font-size: 12px;
  font-weight: 700;
}

.scan-cleanup-rules select,
.scan-cleanup-rules input {
  width: 100%;
  min-width: 0;
  height: 34px;
  min-height: 34px;
}

.scan-cleanup-number {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  overflow: hidden;
  background: #fff;
  border: 1px solid #d6e0ee;
  border-radius: 6px;
}

.scan-cleanup-number input {
  border: 0;
  border-radius: 0;
}

.scan-cleanup-number b {
  padding: 0 9px;
  color: #667085;
  font-size: 11px;
}

.scan-cleanup-results-step {
  min-height: 0;
  display: flex;
  flex-direction: column;
  border-bottom: 0;
}

.scan-cleanup-results {
  min-height: 0;
  flex: 1;
  overflow: auto;
  border-top: 1px solid #eef2f6;
}

.scan-cleanup-empty {
  min-height: 100%;
  display: grid;
  place-content: center;
  gap: 6px;
  padding: 24px;
  color: #667085;
  text-align: center;
}

.scan-cleanup-empty strong {
  color: #344054;
  font-size: 14px;
}

.scan-cleanup-empty span {
  font-size: 12px;
}

.scan-cleanup-empty.is-loading strong {
  color: #155eef;
}

.scan-cleanup-empty.is-error strong {
  color: #b42318;
}

.scan-result-summary {
  padding: 9px 10px;
  color: #475467;
  background: #f8fafc;
  border-bottom: 1px solid #e4ebf5;
  font-size: 12px;
}

.scan-result-section > header {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 9px 10px;
  color: #344054;
  background: #fbfdff;
  border-bottom: 1px solid #e4ebf5;
}

.scan-result-section > header span {
  color: #667085;
  font-size: 11px;
}

.scan-result-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  padding: 8px 10px;
  border-bottom: 1px solid #eef2f6;
}

.scan-result-row span,
.scan-duplicate-group p span {
  min-width: 0;
  overflow: hidden;
  color: #344054;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.scan-result-row b {
  color: #475467;
  font-size: 11px;
}

.scan-duplicate-group {
  border-bottom: 1px solid #e4ebf5;
}

.scan-duplicate-group > div {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  background: #f8fafc;
}

.scan-duplicate-group > div span {
  color: #667085;
  font-size: 11px;
}

.scan-duplicate-group code {
  margin-left: auto;
  color: #667085;
  font-size: 11px;
}

.scan-duplicate-group p {
  min-width: 0;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 8px;
  margin: 0;
  padding: 7px 10px;
  border-top: 1px solid #eef2f6;
}

.scan-duplicate-group p em {
  color: #667085;
  font-size: 11px;
  font-style: normal;
}

.scan-cleanup-task-center {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) 200px;
  gap: 0;
}

.scan-cleanup-current,
.scan-cleanup-metrics,
.scan-cleanup-safety {
  padding: 12px;
  border-bottom: 1px solid #e4ebf5;
}

.scan-cleanup-current {
  display: grid;
  gap: 4px;
}

.scan-cleanup-current small,
.scan-cleanup-current span {
  color: #667085;
  font-size: 11px;
}

.scan-cleanup-current strong {
  color: #172033;
  font-size: 15px;
}

.scan-cleanup-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}

.scan-cleanup-metrics div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.scan-cleanup-metrics b {
  color: #172033;
  font-size: 18px;
}

.scan-cleanup-metrics span {
  color: #667085;
  font-size: 10px;
}

.scan-cleanup-safety {
  min-height: 0;
  overflow: auto;
}

.scan-cleanup-safety strong {
  color: #172033;
  font-size: 13px;
}

.scan-cleanup-safety ul {
  margin: 8px 0 0;
  padding-left: 16px;
  color: #667085;
  font-size: 11px;
  line-height: 1.6;
}

.scan-cleanup-task-center .tool-page-log-panel {
  width: auto;
  height: 200px;
  margin: 0;
  border: 0;
  border-radius: 0;
}

.c-clean-scope {
  min-width: 0;
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  background: #f8fbff;
  border: 1px solid #d9e4f2;
  border-radius: 7px;
}

.c-clean-scope > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.c-clean-scope strong {
  color: #172033;
  font-size: 13px;
}

.c-clean-scope span {
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.c-clean-scope > b {
  flex: 0 0 auto;
  padding: 4px 8px;
  color: #067647;
  background: #ecfdf3;
  border-radius: 6px;
  font-size: 11px;
}

.c-clean-risk-options {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.c-clean-risk-options label {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  background: #fff;
  border: 1px solid #d9e4f2;
  border-radius: 7px;
}

.c-clean-risk-options label:has(input:checked) {
  background: #f5f9ff;
  border-color: #b8d1ff;
}

.c-clean-risk-options label.is-fixed {
  background: #f8fafc;
}

.c-clean-risk-options span {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.c-clean-risk-options strong {
  color: #344054;
  font-size: 12px;
}

.c-clean-risk-options small {
  overflow: hidden;
  color: #667085;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.c-clean-result-row {
  min-width: 0;
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr) auto 86px;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border-bottom: 1px solid #eef2f6;
}

.c-clean-result-row > span,
.c-clean-outcome-row > span {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.c-clean-result-row strong,
.c-clean-outcome-row strong {
  color: #344054;
  font-size: 12px;
}

.c-clean-result-row small,
.c-clean-outcome-row small {
  overflow: hidden;
  color: #667085;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.c-clean-result-row > em {
  padding: 3px 7px;
  color: #067647;
  background: #ecfdf3;
  border-radius: 6px;
  font-size: 10px;
  font-style: normal;
}

.c-clean-result-row > em[data-risk="moderate"] {
  color: #b54708;
  background: #fffaeb;
}

.c-clean-result-row > em[data-risk="risky"] {
  color: #b42318;
  background: #fef3f2;
}

.c-clean-result-row > b {
  display: grid;
  gap: 2px;
  color: #344054;
  font-size: 11px;
  text-align: right;
}

.c-clean-result-row > b small {
  font-weight: 400;
}

.c-clean-outcome-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 9px 10px;
  border-bottom: 1px solid #eef2f6;
}

.c-clean-outcome-row em {
  padding: 3px 7px;
  color: #067647;
  background: #ecfdf3;
  border-radius: 6px;
  font-size: 10px;
  font-style: normal;
}

.c-clean-outcome-row em[data-state="error"] {
  color: #b42318;
  background: #fef3f2;
}

.ocr-extract-settings {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(180px, 0.7fr) minmax(320px, 1.3fr);
  gap: 10px;
}

.ocr-extract-settings > label {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  color: #475467;
  font-size: 12px;
  font-weight: 700;
}

.ocr-extract-settings select,
.ocr-extract-settings input {
  width: 100%;
  min-width: 0;
  height: 34px;
  min-height: 34px;
}

.ocr-output-control {
  grid-template-columns: auto minmax(0, 1fr) auto !important;
}

.ocr-output-control button {
  height: 34px;
  min-height: 34px;
}

.ocr-extract-result-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
  padding: 9px 10px;
  border-bottom: 1px solid #eef2f6;
}

.ocr-extract-result-row > span {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.ocr-extract-result-row strong,
.ocr-extract-result-row small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ocr-extract-result-row strong {
  color: #344054;
  font-size: 12px;
}

.ocr-extract-result-row small {
  color: #667085;
  font-size: 10px;
}

.ocr-extract-result-row > b {
  color: #475467;
  font-size: 11px;
}

.ocr-extract-result-row > em {
  padding: 3px 7px;
  color: #067647;
  background: #ecfdf3;
  border-radius: 6px;
  font-size: 10px;
  font-style: normal;
}

.ocr-extract-result-row > em[data-state="error"] {
  color: #b42318;
  background: #fef3f2;
}

.lightweight-text-workbench {
  min-width: 0;
  height: 100%;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 10px;
  overflow: hidden;
}

.lightweight-text-head {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 2px 2px 0;
}

.lightweight-text-head > div {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.lightweight-text-head strong {
  color: #172033;
  font-size: 15px;
}

.lightweight-text-head > div span {
  overflow: hidden;
  color: #667085;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lightweight-page-settings {
  flex: 0 0 auto;
  display: flex !important;
  align-items: center;
  gap: 12px !important;
}

.lightweight-setting-control,
.lightweight-check-control {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #475467;
  font-size: 12px;
  font-weight: 700;
}

.lightweight-setting-control select {
  width: 112px;
  height: 34px;
  min-height: 34px;
}

.lightweight-check-control {
  white-space: nowrap;
}

.lightweight-generator-panel {
  min-width: 0;
  min-height: 68px;
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(220px, 320px) auto;
  align-items: center;
  gap: 16px;
  padding: 10px 12px;
  background: #f8fbff;
  border: 1px solid #d9e4f2;
  border-radius: 8px;
}

.lightweight-generator-panel > div:first-child {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.lightweight-generator-panel strong {
  color: #172033;
  font-size: 14px;
}

.lightweight-generator-panel > div:first-child span {
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lightweight-generator-panel > button {
  height: 34px;
  min-height: 34px;
}

.lightweight-generator-count {
  width: 100%;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  color: #475467;
  font-size: 12px;
  font-weight: 700;
}

.lightweight-generator-count input {
  width: 100%;
  height: 34px;
  min-height: 34px;
  font-size: 14px;
}

.lightweight-editor-grid.is-generator {
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto minmax(0, 1fr);
}

.lightweight-editor-grid {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 10px;
}

.lightweight-editor-pane {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
  background: #fff;
  border: 1px solid #d9e4f2;
  border-radius: 8px;
}

.lightweight-editor-head {
  min-width: 0;
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 10px;
  background: #f8fbff;
  border-bottom: 1px solid #e4ebf5;
}

.lightweight-editor-head > div:first-child {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.lightweight-editor-head strong {
  color: #172033;
  font-size: 14px;
}

.lightweight-editor-head span {
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lightweight-editor-actions {
  flex: 0 0 auto;
  display: flex;
  gap: 6px;
}

.lightweight-editor-actions button {
  min-width: 0;
  height: 32px;
  min-height: 32px;
  padding: 0 10px;
  font-size: 12px;
}

.lightweight-editor-pane > textarea {
  width: 100%;
  min-width: 0;
  min-height: 0;
  height: 100%;
  padding: 12px;
  resize: none;
  color: #25344a;
  background: #fff;
  border: 0;
  border-radius: 0;
  outline: none;
  font-family: Consolas, "Cascadia Mono", monospace;
  font-size: 13px;
  line-height: 1.55;
  tab-size: 2;
}

.lightweight-editor-pane > textarea:focus {
  box-shadow: inset 0 0 0 2px rgba(23, 100, 255, 0.16);
}

.lightweight-path-row {
  min-width: 0;
  min-height: 48px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  background: #fbfdff;
  border-top: 1px solid #e4ebf5;
}

.lightweight-path-row > span {
  color: #475467;
  font-size: 12px;
  font-weight: 700;
}

.lightweight-path-row input {
  width: 100%;
  min-width: 0;
  height: 32px;
  min-height: 32px;
}

.lightweight-path-row button {
  height: 32px;
  min-height: 32px;
  padding: 0 12px;
  font-size: 12px;
}

.lightweight-status-bar {
  min-width: 0;
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 7px 10px;
  color: #475467;
  background: #f8fafc;
  border: 1px solid #dfe7f1;
  border-radius: 7px;
}

.lightweight-status-message {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.lightweight-status-message i {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  background: #98a2b3;
  border-radius: 50%;
}

.lightweight-status-message span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lightweight-status-metrics {
  flex: 0 0 auto;
  display: flex;
  gap: 16px;
  color: #667085;
  font-size: 12px;
}

.lightweight-status-metrics b {
  margin-left: 4px;
  color: #344054;
}

.lightweight-status-bar[data-state="ready"] .lightweight-status-message i,
.lightweight-status-bar[data-state="loading"] .lightweight-status-message i {
  background: #1764ff;
}

.lightweight-status-bar[data-state="success"] {
  color: #067647;
  background: #f0fdf4;
  border-color: #b7ebc9;
}

.lightweight-status-bar[data-state="success"] .lightweight-status-message i {
  background: #12b76a;
}

.lightweight-status-bar[data-state="error"] {
  color: #b42318;
  background: #fff7f6;
  border-color: #f7c8c3;
}

.lightweight-status-bar[data-state="error"] .lightweight-status-message i {
  background: #f04438;
}

.office-main-tray {
  min-height: clamp(132px, 22vh, 210px);
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px;
  border: 1px solid #dbe7f7;
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(247, 251, 255, 0.94), rgba(255, 255, 255, 0.98)),
    repeating-linear-gradient(90deg, rgba(23, 100, 255, 0.05) 0 1px, transparent 1px 32px);
}

.office-main-tray-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.office-main-tray-head div {
  display: grid;
  gap: 4px;
}

.office-main-tray-head span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 850;
}

.office-main-tray-head strong {
  color: #152238;
  font-size: 16px;
  line-height: 1.25;
}

.office-main-tray-head em {
  flex: 0 0 auto;
  padding: 5px 10px;
  color: var(--blue);
  background: #edf5ff;
  border: 1px solid #d7e7ff;
  border-radius: 999px;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.office-main-flow {
  flex: 1;
  display: grid;
  gap: 10px;
  align-items: stretch;
  min-height: 0;
}

.office-main-flow p {
  margin: 0;
  color: #667085;
  font-size: 12px;
  text-align: center;
}

.office-tray-table {
  display: grid;
  gap: 6px;
}

.office-tray-table-head,
.office-tray-skeleton-row {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) 90px 90px;
  gap: 8px;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 7px;
}

.office-tray-table-head {
  color: #344054;
  background: #eaf2ff;
  font-size: 12px;
  font-weight: 850;
}

.office-tray-skeleton-row {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid #edf2f9;
}

.office-tray-skeleton-row i {
  height: 8px;
  border-radius: 999px;
  background: #e7eef8;
}

.office-tray-compare,
.office-tray-effect,
.office-tray-transform,
.office-tray-mark,
.office-tray-pages,
.office-tray-thumbs,
.office-tray-queue {
  min-height: 84px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
}

.office-tray-compare div,
.office-tray-effect div,
.office-tray-summary {
  min-width: 220px;
  display: grid;
  gap: 8px;
  padding: 14px 16px;
  border: 1px solid #dbe7f7;
  border-radius: 8px;
  background: #fff;
}

.office-tray-compare strong,
.office-tray-effect strong,
.office-tray-transform b,
.office-tray-pages b {
  color: var(--blue);
  font-size: 22px;
}

.office-tray-compare b,
.office-tray-effect b,
.office-tray-summary b {
  color: #344054;
  font-size: 13px;
}

.office-tray-compare span,
.office-tray-effect span,
.office-tray-summary span {
  color: #667085;
  font-size: 12px;
}

.doc-page {
  position: relative;
  width: 92px;
  height: 122px;
  display: grid;
  align-content: start;
  gap: 8px;
  padding: 22px 14px;
  border: 1px solid #cfdcf0;
  border-radius: 6px;
  background: #fff;
}

.doc-page.mini {
  width: 70px;
  height: 92px;
}

.doc-page.landscape {
  width: 104px;
  height: 72px;
}

.doc-page i {
  height: 7px;
  border-radius: 999px;
  background: #e8eef8;
}

.doc-page .mark-top,
.doc-page .mark-bottom {
  position: absolute;
  left: 12px;
  right: 12px;
  min-height: 18px;
  display: grid;
  place-items: center;
  border-radius: 4px;
  font-size: 10px;
  font-style: normal;
  font-weight: 850;
}

.doc-page .mark-top {
  top: 10px;
  color: var(--blue);
  background: #e8f1ff;
  border: 1px solid #1764ff;
}

.doc-page .mark-bottom {
  bottom: 10px;
  color: #e11d48;
  background: #fff1f2;
  border: 1px solid #fb7185;
}

.office-tray-pages span,
.office-tray-queue span {
  min-width: 48px;
  min-height: 62px;
  display: grid;
  place-items: center;
  padding: 8px;
  color: #667085;
  border: 1px solid #dbe7f7;
  border-radius: 8px;
  background: #fff;
  font-weight: 850;
}

.office-tray-pages .active {
  color: var(--blue);
  background: #e8f1ff;
  border-color: var(--blue);
}

.office-tray-thumbs span {
  width: 86px;
  height: 66px;
  border: 1px solid #dbe7f7;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(23, 100, 255, 0.16), rgba(255, 255, 255, 0.9)),
    #fff;
}

.office-tray-queue span {
  min-width: 160px;
}

.office-tray-queue b {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  color: var(--blue);
  background: #e8f1ff;
  border-radius: 999px;
}

.office-main-rows {
  min-height: 0;
  flex: 1;
  overflow: auto;
  display: grid;
  align-content: start;
  gap: 8px;
}

.office-main-row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 9px 10px;
  border: 1px solid #e0e9f6;
  border-radius: 8px;
  background: #fff;
}

.office-main-row b {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  color: var(--blue);
  background: #e8f1ff;
  border-radius: 999px;
  font-size: 12px;
}

.office-main-row span {
  min-width: 0;
  overflow: hidden;
  color: #344054;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.office-main-row em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.office-side-panel {
  height: 100%;
  min-height: 0;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 14px;
  border: 1px solid #dfe8f5;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(16, 24, 40, 0.05);
}

.office-side-head {
  display: grid;
  gap: 5px;
}

.office-side-head span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 850;
}

.office-side-head strong {
  font-size: 18px;
  line-height: 1.3;
}

.office-side-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.office-side-tags span {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  color: var(--blue);
  background: #edf5ff;
  border: 1px solid #d7e7ff;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
}

.office-side-note {
  padding-left: 10px;
  border-left: 3px solid #cfe0ff;
}

.office-side-note b {
  color: var(--blue);
}

.office-side-note p {
  margin: 6px 0 0;
  color: #5f6f84;
  font-size: 13px;
  line-height: 1.65;
}

.office-preview-card {
  min-height: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 14px;
  border: 1px solid #dbe7f7;
  border-radius: 8px;
  background: #f7fbff;
}

.office-preview-card h3 {
  margin: 0;
  font-size: 18px;
}

.office-preview-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.office-preview-stats span {
  min-width: 0;
  min-height: 64px;
  display: grid;
  align-content: center;
  gap: 3px;
  padding: 8px;
  border: 1px solid #dbe7f7;
  border-radius: 8px;
  background: #fff;
}

.office-preview-stats b {
  color: #344054;
  font-size: 22px;
  line-height: 1;
}

.office-preview-stats em {
  color: #667085;
  font-style: normal;
  font-size: 12px;
}

.office-preview-advice {
  display: grid;
  gap: 7px;
  padding: 12px;
  color: #667085;
  border: 1px solid #dbe7f7;
  border-radius: 8px;
  background: #fff;
  line-height: 1.55;
}

.office-preview-advice b {
  color: var(--blue);
  font-size: 13px;
}

.office-preview-advice span {
  font-size: 12px;
}

.office-batch-panel .field-card .check-line,
.office-batch-panel .check-line {
  justify-content: flex-start;
  gap: 8px;
  min-height: 28px;
}

.office-batch-panel input[type="checkbox"],
.office-batch-panel input[type="radio"] {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  flex: 0 0 16px !important;
}

.nested-panel {
  margin-top: 2px;
  padding: 10px 12px;
  background: #fff;
}

.nested-panel h3 {
  margin: 0 0 8px;
  font-size: 15px;
}

.compact-result {
  min-height: 84px;
  height: 100px;
  resize: vertical;
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-size: 12px;
  line-height: 1.45;
}

.module-desc {
  margin: -4px 0 4px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.auto-video-panel .field-card {
  grid-template-columns: 118px minmax(0, 1fr) 70px;
  align-items: center;
  gap: 5px 8px;
  padding: 6px 8px;
}

.auto-video-panel .field-card label {
  font-size: 13px;
}

.auto-video-panel .field-card small {
  grid-column: 2 / -1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.auto-video-panel .field-card input {
  height: 34px;
}

.auto-video-panel .field-card button {
  height: 34px;
  padding: 0 10px;
  font-size: 13px;
}

.auto-video-panel .field-row.stack {
  margin-bottom: 0;
}

.auto-video-panel .field-row.stack textarea.compact-textarea.small {
  min-height: 44px;
  height: 54px;
}

.auto-video-panel .tool-side-result {
  display: none;
}

.inline-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  margin: 0 16px 12px 0;
  color: #344054;
  font-size: 14px;
}

.inline-check input {
  width: 16px;
  height: 16px;
  min-width: 16px;
  padding: 0;
}

.ad-text {
  min-height: 84px;
}

.file-copy-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
  background: linear-gradient(180deg, #f8fbff 0%, #eef5ff 100%);
}

.file-copy-hero p {
  max-width: 780px;
  margin: 0;
  color: var(--muted);
  line-height: 1.8;
}

.copy-stats {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.copy-stats span {
  display: grid;
  place-items: center;
  min-width: 124px;
  min-height: 66px;
  padding: 10px 14px;
  background: #fff;
  border: 1px solid #d8e6ff;
  color: #53657f;
}

.copy-stats strong {
  color: var(--blue);
  font-size: 24px;
  line-height: 1;
}

.copy-board {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 16px;
  align-items: stretch;
}

.copy-list-panel {
  display: grid;
  grid-template-rows: auto 92px minmax(0, 1fr);
  min-width: 0;
}

.list-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  min-height: 36px;
  margin-bottom: 8px;
}

.list-head h2 {
  flex: 0 0 auto;
}

.list-head .muted {
  overflow: hidden;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.compact-actions {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-content: start;
  gap: 8px;
  min-height: 78px;
  margin: 10px 0 12px;
}

.compact-actions button {
  min-width: 0;
  height: 38px;
  padding: 0 10px;
  overflow: hidden;
  font-size: 13px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.copy-list {
  height: 390px;
  min-height: 390px;
  max-height: 390px;
  overflow: auto;
  background: #fff;
  border: 1px solid #d7dfec;
}

.copy-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 36px;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 8px 10px;
  border-bottom: 1px solid #edf2f8;
}

.copy-row:last-child {
  border-bottom: 0;
}

.copy-row-icon {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  color: var(--blue);
  background: #edf4ff;
  border: 1px solid #d8e6ff;
}

.copy-row-path {
  overflow: hidden;
  color: #25324a;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.icon-btn {
  width: 30px;
  height: 30px;
  padding: 0;
  color: #5d6b82;
  background: #fff;
  border: 1px solid #d7dfec;
  font-size: 20px;
  line-height: 1;
}

.icon-btn:hover {
  color: #dc2626;
  border-color: #fecaca;
  background: #fff5f5;
}

.copy-empty {
  display: grid;
  place-items: center;
  height: 100%;
  min-height: 100%;
  padding: 24px;
  color: var(--muted);
  text-align: center;
}

.copy-options-panel {
  margin-top: 16px;
}

.copy-options {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px 24px;
}

.copy-options label:not(.inline-check) {
  display: inline-grid;
  grid-template-columns: auto 150px;
  align-items: center;
  gap: 10px;
  color: #344054;
  font-weight: 700;
}

.strong-check {
  font-weight: 700;
}

.copy-progress {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin-top: 14px;
}

.progress-bar {
  height: 14px;
  overflow: hidden;
  background: #eaf1fb;
  border: 1px solid #d7e4f5;
}

.progress-bar span {
  display: block;
  width: 0%;
  height: 100%;
  background: var(--blue);
  transition: width 0.18s ease;
}

.post-helper-page {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 12px;
  height: 100%;
  min-height: 0;
}

.post-helper-main {
  display: grid;
  grid-template-columns: minmax(520px, 1.1fr) minmax(420px, 0.9fr);
  gap: 12px;
  min-height: 0;
}

.post-topbar {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(520px, 1.6fr) auto;
  gap: 12px;
  align-items: center;
}

.post-file-state {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.post-file-state strong {
  overflow: hidden;
  color: #101828;
  font-size: 18px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.post-file-state span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.post-controls {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) 120px 120px 76px;
  gap: 8px;
  align-items: end;
}

.post-controls label,
.post-copy-actions label {
  display: grid;
  gap: 5px;
  color: #53657f;
  font-size: 12px;
  font-weight: 700;
}

.post-controls input,
.post-controls select,
.post-copy-actions select {
  width: 100%;
  height: 38px;
}

.post-controls button {
  height: 38px;
  min-width: 0;
  padding: 0 12px;
  font-size: 13px;
}

.post-current {
  min-width: 112px;
  padding: 12px;
  color: #53657f;
  text-align: center;
  background: #fff;
  border: 1px solid #d8e6ff;
}

.post-current strong {
  color: var(--blue);
  font-size: 22px;
}

.post-preview-panel {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  min-height: 0;
}

.post-preview {
  height: 100%;
  min-height: 0;
  overflow: auto;
  background: #fff;
  border: 1px solid #d7dfec;
}

.post-preview table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.post-preview th,
.post-preview td {
  height: 38px;
  padding: 8px 10px;
  overflow: hidden;
  border-bottom: 1px solid #edf2f8;
  color: #25324a;
  font-size: 13px;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.post-preview th {
  position: sticky;
  top: 0;
  z-index: 1;
  color: #475467;
  background: #f4f8ff;
}

.post-preview th:first-child,
.post-preview td:first-child {
  width: 56px;
  color: #667085;
  text-align: center;
}

.post-preview tr.active td {
  background: #eaf2ff;
  color: #0b57d0;
  font-weight: 700;
}

.post-empty {
  display: grid;
  place-items: center;
  height: 100%;
  min-height: 180px;
  padding: 24px;
  color: var(--muted);
  text-align: center;
}

.post-empty.small {
  min-height: 100%;
}

.post-copy-panel {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 14px;
  min-height: 0;
}

.post-copy-actions {
  display: grid;
  grid-template-columns: minmax(112px, 1fr) minmax(150px, 1.2fr) minmax(116px, 0.8fr);
  gap: 10px;
  align-items: end;
}

.post-copy-actions button {
  height: 38px;
  min-width: 0;
  padding: 0 10px;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

.post-column-board {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 46px minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
  min-height: 0;
}

.post-column-board > div {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  min-height: 0;
}

.post-column-board > div:last-child {
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.compact-head {
  min-height: 34px;
}

.post-column-list {
  height: 100%;
  min-height: 116px;
  overflow: auto;
  background: #fff;
  border: 1px solid #d7dfec;
}

.post-column-item {
  display: block;
  width: 100%;
  height: 36px;
  padding: 0 12px;
  overflow: hidden;
  color: #25324a;
  background: #fff;
  border: 0;
  border-bottom: 1px solid #edf2f8;
  font-size: 13px;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.post-column-item.active {
  color: var(--blue);
  background: #edf4ff;
  font-weight: 700;
}

.post-move-buttons {
  display: grid;
  align-content: center;
  gap: 8px;
}

.post-move-buttons button {
  width: 46px;
  height: 36px;
  color: #fff;
  background: var(--blue);
  border: 0;
  font-size: 24px;
}

.post-order-buttons {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 8px;
}

.post-order-buttons button {
  height: 36px;
  min-width: 0;
  padding: 0 8px;
  font-size: 13px;
}

@media (max-width: 1360px) {
  .tool-view:has(.post-helper-page) .work-panel {
    overflow: auto;
  }

  .post-helper-page {
    height: auto;
  }

  .post-helper-main {
    grid-template-columns: 1fr;
  }

  .post-preview {
    height: 300px;
  }

  .post-column-list {
    height: 150px;
  }
}

.netdisk-multi-panel {
  display: grid;
  gap: 18px;
}

.netdisk-multi-panel.compact {
  gap: 10px;
  padding-top: 12px;
  padding-bottom: 12px;
}

.netdisk-multi-head {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  min-height: 88px;
}

.netdisk-multi-head .tool-icon {
  width: 72px;
  height: 72px;
}

.netdisk-multi-head h2 {
  margin: 0 0 8px;
  font-size: 24px;
}

.netdisk-multi-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
}

.multi-form-grid {
  display: grid;
  grid-template-columns: minmax(360px, 1fr) 120px 170px;
  gap: 12px;
  align-items: end;
}

.multi-field {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: #53657f;
  font-size: 13px;
  font-weight: 700;
}

.multi-field input,
.multi-field select {
  width: 100%;
  height: 42px;
}

.multi-mode-badge {
  display: grid;
  align-content: center;
  height: 42px;
  padding: 0 12px;
  background: #edf4ff;
  border: 1px solid #cfe0fb;
}

.multi-mode-badge strong {
  color: var(--blue);
  font-size: 13px;
  line-height: 1.2;
}

.multi-mode-badge span {
  color: var(--muted);
  font-size: 12px;
}

.multi-info-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.multi-info-grid div {
  min-height: 88px;
  padding: 14px;
  background: #fff;
  border: 1px solid #d8e6ff;
}

.multi-info-grid strong {
  display: block;
  margin-bottom: 8px;
  color: #1d2939;
}

.multi-info-grid span {
  color: var(--muted);
  line-height: 1.7;
}

.desktop-provider-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.desktop-provider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 44px;
  border: 1px solid #cfe0fb;
  background: #edf4ff;
  color: var(--blue);
  font-size: 14px;
  font-weight: 700;
}

.desktop-provider.active {
  color: #fff;
  background: var(--blue);
  border-color: var(--blue);
}

.desktop-provider:disabled {
  color: #6b7c93;
  background: #f7faff;
  opacity: 0.82;
}

.desktop-provider .svg-icon {
  width: 18px;
  height: 18px;
}

.desktop-multi-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.desktop-field {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 10px 12px;
  background: #fff;
  border: 1px solid #dbe7f8;
}

.desktop-field.wide {
  grid-column: span 2;
}

.desktop-field span {
  color: #43546b;
  font-size: 14px;
  font-weight: 700;
}

.desktop-field input,
.desktop-field select,
.desktop-field textarea {
  width: 100%;
  height: 36px;
}

.desktop-field textarea {
  height: auto;
  min-height: 88px;
  padding: 8px 10px;
  resize: vertical;
  line-height: 1.5;
}

.desktop-field small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.inline-path-field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 82px 92px;
  gap: 8px;
}

.inline-path-field button {
  min-width: 0;
  height: 36px;
  padding: 0 12px;
}

.inline-path-field .help-button {
  height: 36px;
  padding: 0 10px;
  color: var(--ink);
  background: #fff;
  border: 1px solid var(--line);
  font-size: 13px;
}

.wechat-voice-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.wechat-voice-candidates-panel {
  margin-top: 12px;
}

.wechat-voice-candidate-list {
  display: grid;
  gap: 8px;
  max-height: 220px;
  overflow: auto;
}

.wechat-voice-candidate {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr) 190px;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 44px;
  padding: 9px 12px;
  color: var(--ink);
  text-align: left;
  background: #fff;
  border: 1px solid #dbe7f8;
}

.wechat-voice-candidate:hover {
  border-color: var(--blue);
  background: #f7faff;
}

.wechat-voice-candidate strong,
.wechat-voice-candidate span,
.wechat-voice-candidate small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wechat-voice-candidate strong {
  font-size: 13px;
}

.wechat-voice-candidate span,
.wechat-voice-candidate small {
  color: var(--muted);
  font-size: 12px;
}

.compact-empty {
  min-height: 62px;
  padding: 18px;
}

.utility-workbench {
  flex: 1 1 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 310px;
  gap: 14px;
  align-items: stretch;
  min-height: 0;
  height: 100%;
}

.utility-main-panel {
  min-width: 0;
  min-height: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.utility-main-panel .tool-two-col {
  margin-bottom: 12px;
}

.utility-status-panel {
  min-width: 0;
  height: 100%;
  align-self: stretch;
  overflow: hidden;
  padding: 14px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 16px 34px rgba(21, 94, 239, 0.06);
}

.utility-status-panel > p {
  margin: 0 0 4px;
  color: var(--blue);
  font-weight: 850;
}

.utility-status-panel h3 {
  margin: 0 0 10px;
  color: var(--ink);
  font-size: 18px;
}

.utility-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 12px;
}

.utility-tags span {
  padding: 4px 9px;
  color: var(--blue);
  background: #edf5ff;
  border: 1px solid #d7e7ff;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
}

.utility-status-card {
  padding: 12px;
  background: #f7fbff;
  border: 1px solid #dbe8f8;
  border-radius: 8px;
}

.utility-status-card h4 {
  margin: 0 0 10px;
  color: var(--ink);
  font-size: 16px;
}

.utility-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

.utility-metrics div {
  min-height: 54px;
  padding: 8px;
  background: #fff;
  border: 1px solid #dbe8f8;
  border-radius: 7px;
}

.utility-metrics strong,
.utility-metrics span {
  display: block;
  min-width: 0;
}

.utility-metrics strong {
  color: #344e6c;
  font-size: 20px;
  line-height: 1.1;
}

.utility-metrics span,
.utility-empty-note {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.utility-empty-note {
  padding: 12px;
  text-align: center;
  border: 1px dashed #cfe0f5;
  border-radius: 8px;
}

.utility-progress-card {
  margin-top: 50px;
  padding: 12px;
  background: #fff;
  border: 1px solid #dbe8f8;
  border-radius: 8px;
}

.utility-progress-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.utility-progress-head strong {
  color: var(--ink);
  font-size: 14px;
}

.utility-progress-head span {
  color: var(--muted);
  font-size: 12px;
}

.utility-progress-track {
  height: 8px;
  overflow: hidden;
  background: #eaf2ff;
  border-radius: 999px;
}

.utility-progress-track i {
  display: block;
  width: 0%;
  height: 100%;
  background: var(--blue);
  border-radius: inherit;
  transition: width 0.2s ease;
}

.utility-progress-card p {
  min-height: 34px;
  margin: 10px 0 0;
  color: #5f7390;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.office-progress-card {
  margin-top: 12px;
}

.utility-preview-tray {
  min-height: clamp(118px, 18vh, 180px);
  margin-top: 12px;
  padding: 12px;
  background: #f8fbff;
  border: 1px solid #dbe8f8;
  border-radius: 8px;
}

.tool-page-log-panel {
  height: 200px;
  margin-top: 12px;
  padding: 12px;
  background: #f8fbff;
  border: 1px solid #dbe8f8;
  border-radius: 8px;
  overflow: hidden;
}

.compact-tool-panel:has(.tool-page-log-panel),
.enhancement-panel:has(.tool-page-log-panel),
.office-batch-panel:has(.tool-page-log-panel),
.utility-main-panel:has(.tool-page-log-panel) {
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.office-batch-panel .tool-page-log-panel,
.utility-main-panel .tool-page-log-panel,
.compact-tool-panel .tool-page-log-panel,
.enhancement-panel .tool-page-log-panel {
  flex: 0 0 200px;
  width: 100%;
  margin-top: auto;
}

.utility-main-panel .utility-preview-tray,
.office-batch-panel .office-main-tray {
  margin-bottom: 12px;
}

.tool-page-log-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
}

.tool-page-log-head strong {
  color: var(--blue);
  font-size: 14px;
}

.tool-page-log-head span {
  color: var(--muted);
  font-size: 12px;
}

.tool-page-log-rows {
  height: calc(100% - 28px);
  overflow: auto;
  padding-right: 4px;
}

.tool-page-log-empty {
  height: 100%;
  display: grid;
  place-items: center;
  color: #8aa0bd;
  text-align: center;
  border: 1px dashed #cfe0f5;
  border-radius: 8px;
  font-size: 13px;
}

.tool-page-log-row {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 8px;
  padding: 6px 0;
  border-bottom: 1px solid #e7eef8;
  font-size: 12px;
  line-height: 1.45;
}

.tool-page-log-row span {
  color: #7b8fa8;
}

.tool-page-log-row p {
  margin: 0;
  color: #344e6c;
  overflow-wrap: anywhere;
}

.utility-tray-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.utility-tray-head p {
  margin: 0;
  color: var(--blue);
  font-weight: 850;
}

.utility-tray-head span {
  color: var(--blue);
  background: #edf5ff;
  border: 1px solid #d7e7ff;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 800;
}

.utility-result-tray {
  overflow: hidden;
}

.utility-result-table {
  display: grid;
  gap: 6px;
}

.utility-result-row {
  display: grid;
  grid-template-columns: 58px minmax(160px, 1.1fr) minmax(180px, 1.4fr) 76px;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 0 10px;
  background: #fff;
  border: 1px solid #dbe8f8;
  border-radius: 6px;
  color: #344054;
  font-size: 12px;
}

.utility-result-row.head {
  min-height: 30px;
  color: #49627f;
  background: #edf5ff;
  border-color: #d7e7ff;
  font-weight: 850;
}

.utility-result-row span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.utility-result-empty {
  min-height: 62px;
  display: grid;
  place-items: center;
  color: var(--muted);
  background: #fff;
  border: 1px dashed #cfe0f5;
  border-radius: 8px;
  font-size: 12px;
}

.utility-step-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.utility-step-card {
  min-height: 78px;
  display: grid;
  place-items: center;
  gap: 8px;
  padding: 10px;
  background: #fff;
  border: 1px dashed #c8dcf7;
  border-radius: 8px;
}

.utility-step-card span {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  color: var(--blue);
  background: #eaf3ff;
  border-radius: 999px;
  font-weight: 900;
}

.utility-step-card strong {
  color: #304964;
  font-size: 14px;
  text-align: center;
}

.utility-sequence-table {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr) 110px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #dbe8f8;
  border-radius: 8px;
}

.utility-sequence-table > div {
  padding: 9px 12px;
  color: #304964;
  background: #eaf3ff;
  font-size: 12px;
  font-weight: 850;
}

.utility-sequence-table > span,
.utility-sequence-table > i,
.utility-sequence-table > b {
  min-height: 34px;
  border-top: 1px solid #edf2f8;
}

.utility-sequence-table > span {
  display: grid;
  place-items: center;
  color: var(--blue);
  font-weight: 850;
}

.utility-sequence-table > i,
.utility-sequence-table > b {
  align-self: stretch;
  margin: 11px 12px;
  background: #edf3fb;
  border-radius: 999px;
}

.utility-sequence-table > b {
  max-width: 78px;
}

.tieba-text-workbench {
  display: grid;
  grid-template-areas: "modes main";
  grid-template-columns: 224px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  height: 100%;
  min-height: 0;
}

.tieba-text-nav {
  grid-area: modes;
}

.tieba-text-panel {
  grid-area: main;
  min-width: 0;
  min-height: 0;
}

.ppt-mockup-workbench {
  display: grid;
  grid-template-columns: 224px minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
  min-height: 0;
}

.ppt-mockup-main {
  min-width: 0;
  min-height: 0;
}

.office-file-input {
  display: grid;
  grid-template-columns: 140px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  margin-bottom: 8px;
}

.office-file-input label {
  color: #475467;
  font-weight: 700;
}

.office-main-tray.is-empty {
  display: none;
}

@media (max-width: 1100px) {
  .word-replace-workbench {
    grid-template-columns: minmax(0, 1fr);
  }

  .word-replace-file-line,
  .word-replace-output-grid,
  .word-replace-output-grid .field-row,
  .word-replace-rule-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .office-file-input.word-replace-file-line {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .office-file-input.word-replace-file-line input {
    grid-column: 1 / -1;
  }

  .office-file-input.word-replace-file-line button {
    width: 100%;
  }

  .format-four-step-file-line {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .format-four-step-file-line textarea {
    grid-column: 1 / -1;
    width: 100%;
  }

  .format-four-step-file-line button {
    width: 100%;
  }

  .tool-view:has(.format-four-step-workbench) .work-panel {
    overflow-x: hidden;
    overflow-y: auto;
  }

  .work-panel:has(.tool-page-log-panel) > .format-four-step-workbench {
    flex: 0 0 auto;
    grid-template-rows: auto auto;
    height: auto;
    overflow: visible;
  }

  .format-four-step-panel,
  .format-convert-task-center {
    height: auto;
  }

  .format-convert-settings-grid,
  .format-convert-output-grid .field-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .word-replace-step-head {
    grid-template-columns: 24px minmax(0, 1fr);
  }

  .word-replace-step-head em {
    grid-column: 2;
    white-space: normal;
  }

  .tieba-text-workbench {
    grid-template-areas:
      "modes"
      "main";
    grid-template-columns: minmax(0, 1fr);
  }

  .ppt-mockup-workbench {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 980px) {
  .sidebar {
    display: none;
  }

  .content {
    width: 100%;
    min-width: 0;
  }

  .batch-four-step .office-option-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .batch-four-step .office-option-grid .field-card,
  .batch-four-step .office-option-grid input,
  .batch-four-step .office-option-grid select,
  .batch-four-step .office-option-grid textarea {
    min-width: 0;
    max-width: 100%;
  }

  .format-convert-result-step .utility-result-row {
    grid-template-columns: 32px minmax(0, 0.9fr) minmax(0, 1.2fr) 52px;
    gap: 4px;
    padding-inline: 5px;
  }

  .format-convert-result-step .utility-result-table,
  .format-convert-result-step .utility-result-row,
  .format-convert-result-step .utility-result-empty {
    min-width: 0;
    width: 100%;
  }
}

@media (max-width: 360px) {
  .batch-four-step .office-option-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .format-four-step-file-line {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 600px) {
  body:has(.format-four-step-workbench) .titlebar {
    gap: 8px;
    padding-inline: 10px;
  }

  body:has(.format-four-step-workbench) .titlebar .brand {
    min-width: 0;
  }

  body:has(.format-four-step-workbench) .titlebar .brand strong {
    font-size: 18px;
    line-height: 1.2;
    white-space: nowrap;
  }

  body:has(.format-four-step-workbench) .titlebar .brand span,
  body:has(.format-four-step-workbench) .titlebar-actions > .icon-button {
    display: none;
  }

  body:has(.format-four-step-workbench) .titlebar-actions {
    gap: 0;
  }

  body:has(.format-four-step-workbench) .titlebar-actions .window-button {
    width: 34px;
    min-width: 34px;
  }

  body:has(.format-four-step-workbench) .topbar {
    gap: 8px;
    padding-inline: 12px;
  }

  body:has(.format-four-step-workbench) .brand {
    min-width: 0;
  }

  body:has(.format-four-step-workbench) .brand h1 {
    font-size: 18px;
    line-height: 1.2;
    white-space: nowrap;
  }

  body:has(.format-four-step-workbench) .brand p,
  body:has(.format-four-step-workbench) .title-actions > .icon-button {
    display: none;
  }

  .tool-view:has(.format-four-step-workbench) .tool-header {
    gap: 8px;
    padding-inline: 10px;
  }

  .tool-view:has(.format-four-step-workbench) .tool-title {
    min-width: 0;
  }

  .tool-view:has(.format-four-step-workbench) .tool-title h1 {
    font-size: 18px;
    line-height: 1.25;
  }

  .tool-view:has(.format-four-step-workbench) .toolbar {
    flex: 0 0 112px;
  }

  .tool-view:has(.format-four-step-workbench) #formatRunBtn,
  .tool-view:has(.format-four-step-workbench) #splitMergeRunBtn {
    width: 112px;
    min-width: 0;
    padding-inline: 8px;
    font-size: 12px;
    line-height: 1.25;
    white-space: normal;
  }
}

@media (max-width: 360px) {
  .tool-view:has(.format-four-step-workbench) .tool-header {
    flex-wrap: wrap;
    height: auto;
    min-height: 0;
  }

  .tool-view:has(.format-four-step-workbench) .tool-title {
    flex: 1 0 100%;
    width: 100%;
  }

  .tool-view:has(.format-four-step-workbench) .tool-title h1 {
    font-size: 16px;
  }

  .tool-view:has(.format-four-step-workbench) .back-button {
    min-width: 72px;
    padding-inline: 8px;
    font-size: 12px;
    white-space: nowrap;
  }

  .tool-view:has(.format-four-step-workbench) .toolbar {
    flex: 1 0 100%;
    width: 100%;
  }

  .tool-view:has(.format-four-step-workbench) #formatRunBtn,
  .tool-view:has(.format-four-step-workbench) #splitMergeRunBtn {
    width: 100%;
  }
}

@media (max-height: 820px) and (min-width: 1101px) {
  .batch-four-step-flow {
    gap: 4px;
  }

  .batch-four-step-panel .word-replace-step {
    gap: 3px;
    padding: 5px;
  }

  .batch-four-step .office-option-grid {
    max-height: 112px;
  }

  .batch-four-step-panel .word-replace-preview-step .office-main-tray,
  .word-replace-preview-step .office-main-tray.is-empty {
    min-height: 40px;
    padding-block: 6px;
  }

  .word-replace-panel:not(.batch-four-step-panel) .word-replace-step {
    gap: 6px;
    padding: 8px;
  }

  .word-replace-flow:not(.batch-four-step-flow) {
    grid-template-rows: auto auto auto minmax(110px, 1fr);
    gap: 6px;
  }

  .office-side-panel.word-replace-task-center {
    gap: 2px;
    padding: 6px;
  }

  .word-replace-task-center .office-side-head {
    gap: 2px;
  }

  .word-replace-task-center .office-side-head strong {
    font-size: 16px;
    line-height: 1.2;
  }

  .word-replace-task-center .office-side-note {
    min-height: 32px;
  }

  .word-replace-task-center .office-side-note b {
    display: none;
  }

  .word-replace-task-center .office-side-note p {
    display: block;
    margin: 0;
    overflow: hidden;
    line-height: 32px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .word-replace-task-center .office-preview-card {
    gap: 4px;
    padding: 6px;
  }

  .word-replace-task-center .office-preview-card h3 {
    font-size: 14px;
  }

  .word-replace-task-center .office-preview-stats span {
    min-height: 34px;
  }

  .word-replace-task-center .word-replace-risk-card {
    gap: 4px;
    padding: 6px 8px;
  }

  .word-replace-task-center .word-replace-risk-card ul {
    font-size: 11px;
    line-height: 1.3;
  }

  .word-replace-task-center .word-replace-risk-card h3 {
    font-size: 13px;
  }

  .word-replace-task-center .office-progress-card {
    padding: 6px 8px;
  }

  .word-replace-task-center .office-progress-card p {
    margin-top: 4px;
  }

  .format-four-step-flow {
    gap: 4px;
  }

  .format-four-step-panel .word-replace-step {
    gap: 3px;
    padding: 5px;
  }

  .format-four-step-file-line textarea {
    min-height: 34px;
    height: 34px;
  }

  .format-convert-settings-grid .field-card {
    gap: 2px;
    padding: 5px 7px;
  }

  .format-convert-settings-grid .field-card:first-child small {
    display: none;
  }

  .format-convert-method-card small,
  .format-convert-safety-card small {
    overflow: hidden;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .format-convert-result-step .utility-preview-tray {
    min-height: 54px;
    padding-block: 6px;
  }

  .format-convert-task-center {
    gap: 2px;
    padding: 6px;
  }

  .format-convert-task-center .format-convert-notes {
    gap: 4px;
    padding: 6px 8px;
  }

  .format-convert-task-center .office-preview-advice {
    display: none;
  }
}

.quick-help-backdrop {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(23, 32, 51, 0.34);
}

.quick-help-panel {
  width: min(520px, 100%);
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: 0 18px 60px rgba(23, 32, 51, 0.2);
}

.quick-help-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
}

.quick-help-head strong {
  font-size: 16px;
}

.quick-help-panel ol {
  margin: 0;
  padding: 14px 18px 18px 36px;
  color: #344054;
  line-height: 1.8;
}

.process-drawer {
  margin: 0 16px 12px;
  padding: 12px 14px;
  background: #f8fbff;
  border: 1px solid var(--line);
  box-shadow: 0 12px 28px rgba(16, 24, 40, 0.06);
}

.tool-view:has(.process-drawer:not(.hidden)) .process-drawer {
  grid-column: 2;
  grid-row: 2;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  margin: 12px 16px 12px 0;
}

.process-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 8px;
}

.process-head strong {
  font-size: 16px;
}

.process-head span {
  color: var(--muted);
}

#processLog {
  height: 168px;
  margin: 8px 0 0;
  padding: 8px 10px;
  overflow: auto;
  color: #d1fae5;
  background: #111827;
  border: 1px solid #e6edf7;
  font: 12px Consolas, "Microsoft YaHei UI", monospace;
  white-space: pre-wrap;
}

.tool-view:has(.process-drawer:not(.hidden)) #processLog {
  height: 100%;
  min-height: 0;
}

.empty-state {
  display: grid;
  place-items: center;
  min-height: 420px;
  color: var(--muted);
  font-size: 24px;
  background: #fff;
  border: 1px dashed var(--line-strong);
}

.modal {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(23, 32, 51, 0.42);
}

.modal-panel {
  width: min(980px, 100%);
  max-height: min(760px, calc(100vh - 48px));
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: 0 18px 60px rgba(23, 32, 51, 0.2);
}

.modal.folder-picker-compact {
  z-index: 150;
  align-items: flex-start;
  padding-top: 54px;
  background: rgba(23, 32, 51, 0.34);
}

.modal.folder-picker-compact .modal-panel {
  width: min(720px, calc(100vw - 80px));
  max-height: min(540px, calc(100vh - 96px));
  border-radius: 8px;
}

.modal.folder-picker-compact .modal-head,
.modal.folder-picker-compact .modal-actions,
.modal.folder-picker-compact .modal-foot {
  padding: 10px 12px;
}

.modal.folder-picker-compact .modal-head h2 {
  font-size: 18px;
}

.modal.folder-picker-compact .icon-close {
  width: 36px;
  height: 36px;
  font-size: 22px;
}

.modal.folder-picker-compact .picker-list {
  min-height: 220px;
  max-height: 320px;
}

.modal-create-folder {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  padding: 10px 12px;
  border-top: 1px solid var(--line);
  background: #f8fbff;
}

.modal-create-folder input {
  min-width: 0;
}

.modal-head,
.modal-actions,
.modal-foot {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px;
  border-bottom: 1px solid var(--line);
}

.modal-head,
.modal-foot {
  justify-content: space-between;
}

.modal-head h2 {
  margin: 0;
  font-size: 20px;
}

.modal-foot {
  border-top: 1px solid var(--line);
  border-bottom: 0;
}

.netdisk-cookie-panel {
  width: min(760px, calc(100vw - 64px));
  border-radius: 8px;
}

.netdisk-cookie-modal {
  z-index: 220;
  display: flex;
  align-items: center;
  justify-content: center;
}

.netdisk-cookie-panel .modal-head {
  align-items: flex-start;
}

.netdisk-cookie-panel .modal-head p {
  margin: 6px 0 0;
  color: #667085;
  font-size: 13px;
  line-height: 1.6;
}

.netdisk-cookie-body {
  display: grid;
  gap: 8px;
  padding: 14px;
}

.netdisk-cookie-body label {
  color: #344054;
  font-weight: 700;
}

.netdisk-cookie-body textarea {
  width: 100%;
  min-height: 220px;
  resize: vertical;
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-size: 12px;
  line-height: 1.55;
}

.netdisk-cookie-body small {
  color: #667085;
  line-height: 1.6;
}

.icon-close {
  width: 44px;
  height: 44px;
  color: var(--ink);
  background: #f8fbff;
  border: 1px solid var(--line);
  font-size: 26px;
}

.about-app-panel {
  width: min(540px, calc(100vw - 48px));
  padding: 22px 24px 24px;
  border: 1px solid #e6edf7;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 22px 58px rgba(16, 24, 40, 0.24);
}

.about-app-panel .modal-head {
  padding: 0;
  margin: 0 0 16px;
  border: 0;
}

.about-app-panel .modal-head h2 {
  color: #101828;
  font-size: 18px;
  line-height: 1.3;
  font-weight: 400;
}

.about-app-panel .icon-close {
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #98a2b3;
  font-size: 28px;
  line-height: 1;
}

.about-app-panel .icon-close:hover {
  background: #f4f7fb;
  color: #101828;
}

.about-app-body {
  padding: 0;
  display: grid;
  gap: 12px;
}

.about-app-hero,
.about-app-card {
  border: 1px solid #e6edf7;
  border-radius: 10px;
  background: #fff;
}

.about-app-hero {
  min-height: 104px;
  padding: 18px 20px;
  display: flex;
  align-items: center;
  gap: 16px;
  text-align: left;
}

.about-app-avatar {
  width: 64px;
  height: 64px;
  flex: 0 0 64px;
  object-fit: contain;
  border-radius: 14px;
}

.about-app-summary {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.about-app-hero strong {
  color: #101828;
  font-size: 21px;
  line-height: 1.25;
  font-weight: 500;
  letter-spacing: 0;
}

.about-app-hero span {
  margin: 0;
  color: #667085;
  font-size: 13px;
  line-height: 1.5;
}

.about-app-card {
  min-height: 0;
  padding: 18px 20px 20px;
}

.about-app-card h3 {
  margin: 0 0 14px;
  color: #101828;
  text-align: left;
  font-size: 16px;
  line-height: 1.3;
  font-weight: 400;
}

.about-app-list {
  display: grid;
  gap: 0;
  margin: 0;
}

.about-app-list > div {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-height: 38px;
  padding: 7px 0;
  border-bottom: 1px solid #eef2f7;
}

.about-app-list > div:last-child {
  border-bottom: 0;
}

.about-app-list dt {
  color: #667085;
  font-size: 13px;
  font-weight: 400;
}

.about-app-list dd {
  min-width: 0;
  margin: 0;
  color: #101828;
  font-size: 14px;
  font-weight: 400;
  word-break: break-word;
}

.path-text,
.muted {
  color: var(--muted);
  font-size: 13px;
}

.path-text {
  margin-top: 4px;
  word-break: break-all;
}

.picker-list {
  min-height: 320px;
  overflow: auto;
  padding: 8px 14px;
}

.picker-row {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  border-bottom: 1px solid #edf2f8;
}

.picker-check {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.file-mark {
  width: 54px;
  flex: 0 0 54px;
  color: var(--muted);
  font-size: 13px;
}

.file-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.folder-link {
  color: var(--blue);
  cursor: pointer;
}

.folder-link:hover {
  text-decoration: underline;
}

.enter-folder {
  min-width: 64px;
  height: 34px;
  color: var(--blue);
  background: var(--soft-blue);
  border: 1px solid #cfe0fb;
}

.picker-empty {
  padding: 44px 12px;
  color: var(--muted);
  text-align: center;
}

@media (max-width: 1320px) {
  .tool-grid {
    grid-template-columns: repeat(2, minmax(300px, 1fr));
  }
}

.video-option-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.video-help-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

.tool-view:has(.download-task-workbench) .work-panel {
  min-height: 0;
  overflow: hidden;
}

.download-task-workbench {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 276px;
  gap: 10px;
}

.download-task-main {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: 190px 168px minmax(0, 1fr);
  gap: 8px;
}

.download-task-stage {
  position: relative;
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: 38px minmax(0, 1fr);
  overflow: hidden;
  background: #fff;
  border: 1px solid #dce6f4;
  border-radius: 8px;
}

.download-task-stage > header {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 10px;
  background: #f8fafc;
  border-bottom: 1px solid #e7edf6;
}

.download-task-stage > header > span {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: grid;
  place-items: center;
  color: #175cd3;
  background: #e8f1ff;
  border-radius: 6px;
  font-weight: 750;
}

.download-task-stage:nth-child(2) > header > span {
  color: var(--teal);
  background: var(--soft-teal);
}

.download-task-stage:nth-child(3) > header > span {
  color: var(--amber);
  background: var(--soft-amber);
}

.download-task-stage > header > div {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 7px;
}

.download-task-stage > header strong {
  white-space: nowrap;
}

.download-task-stage > header small {
  overflow: hidden;
  color: #667085;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.download-task-stage > header em {
  margin-left: auto;
  color: #067647;
  font-style: normal;
  white-space: nowrap;
}

.download-task-stage > header em[data-state="loading"] { color: #175cd3; }
.download-task-stage > header em[data-state="error"] { color: #b42318; }

.download-source-body {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1.24fr) minmax(280px, 0.76fr);
  gap: 10px;
  padding: 8px 10px;
}

.download-source-input,
.download-destination-fields {
  min-width: 0;
}

.download-source-modes {
  min-width: 0;
  display: flex;
  gap: 4px;
  margin-bottom: 5px;
  overflow-x: auto;
}

.download-source-modes button {
  height: 25px;
  flex: 0 0 auto;
  padding: 0 8px;
  color: #667085;
  background: #fff;
  border-color: #d9e3f1;
  border-radius: 5px;
  font-size: 11px;
  font-weight: 600;
}

.download-source-modes button.active {
  color: #175cd3;
  background: #eaf2ff;
  border-color: #b9d2ff;
  font-weight: 750;
}

.download-source-input > label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 4px;
}

.download-source-input > label span {
  color: #344054;
  font-weight: 750;
}

.download-source-input > label small,
.download-destination-fields > small {
  color: #667085;
}

.download-source-input textarea {
  width: 100%;
  height: 65px;
  min-height: 0;
  resize: none;
  padding: 7px 8px;
  border-radius: 6px;
  line-height: 1.45;
}

.download-source-input > p {
  margin: 5px 0 0;
  padding-left: 7px;
  color: #7a5500;
  border-left: 3px solid #f0b429;
  font-size: 11px;
}

.download-destination-fields {
  display: grid;
  align-content: start;
  gap: 6px;
}

.download-destination-fields > label {
  min-width: 0;
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
}

.download-destination-fields > label span {
  color: #344054;
  font-weight: 750;
}

.download-destination-fields input {
  width: 100%;
  min-width: 0;
  height: 30px;
  border-radius: 6px;
}

.download-destination-fields button {
  height: 30px;
}

.download-login-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.download-setting-grid {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 7px;
  padding: 8px 10px 6px;
}

.download-setting-grid > label {
  min-width: 0;
  display: grid;
  gap: 4px;
  padding: 6px 7px;
  border: 1px solid #e0e8f3;
  border-radius: 7px;
}

.download-setting-grid strong {
  color: #344054;
}

.download-setting-grid input,
.download-setting-grid select {
  width: 100%;
  min-width: 0;
  height: 29px;
  border-radius: 6px;
}

.download-setting-grid small {
  overflow: hidden;
  color: #667085;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.download-settings-stage {
  z-index: 4;
  grid-template-rows: 38px auto auto;
  overflow: visible;
}

.download-advanced-settings {
  position: relative;
  margin: 0 10px 7px;
}

.download-advanced-settings summary {
  min-height: 30px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 4px 8px;
  color: #52657d;
  background: #f8fafc;
  border: 1px solid #dce6f4;
  border-radius: 7px;
  cursor: pointer;
  list-style: none;
}

.download-advanced-settings summary::-webkit-details-marker { display: none; }
.download-advanced-settings summary strong { color: #344054; }
.download-advanced-settings summary span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.download-advanced-settings summary em {
  margin-left: auto;
  color: #175cd3;
  font-style: normal;
  white-space: nowrap;
}

.download-advanced-grid {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  z-index: 30;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 7px;
  padding: 10px;
  background: #fff;
  border: 1px solid #cddbf0;
  border-radius: 8px;
  box-shadow: 0 14px 34px rgba(16, 24, 40, 0.15);
}

.download-advanced-grid > label {
  min-width: 0;
  display: grid;
  gap: 4px;
  color: #344054;
  font-weight: 700;
}

.download-advanced-grid input,
.download-advanced-grid select {
  width: 100%;
  min-width: 0;
  height: 30px;
  border-radius: 6px;
}

.download-advanced-checks {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 16px;
  color: #475467;
}

.download-advanced-checks label {
  display: flex;
  align-items: center;
  gap: 5px;
}

.download-queue-stage {
  grid-template-rows: 38px 34px minmax(0, 1fr) 28px;
}

.download-queue-toolbar {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 8px;
  border-bottom: 1px solid #edf1f6;
}

.download-queue-toolbar > div {
  min-width: 0;
  display: flex;
  gap: 4px;
}

.download-queue-toolbar button {
  height: 25px;
  padding: 0 8px;
  border-radius: 5px;
  font-size: 11px;
}

#youtubeQueueFilters button {
  color: #667085;
  background: transparent;
  border-color: transparent;
}

#youtubeQueueFilters button.active {
  color: #175cd3;
  background: #eaf2ff;
}

.download-queue-list {
  min-height: 0;
  overflow: auto;
}

.download-queue-empty {
  height: 100%;
  min-height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 4px;
  color: #98a2b3;
}

.download-queue-empty strong { color: #475467; }

.download-queue-row {
  min-width: 0;
  min-height: 43px;
  display: grid;
  grid-template-columns: 20px 34px minmax(0, 1fr) 70px 66px 74px;
  align-items: center;
  gap: 7px;
  padding: 4px 8px;
  border-bottom: 1px solid #edf1f6;
}

.download-platform-mark {
  width: 32px;
  height: 24px;
  display: grid;
  place-items: center;
  color: #fff;
  background: #e63946;
  border-radius: 5px;
  font-size: 10px;
  font-weight: 750;
}

.download-queue-info {
  min-width: 0;
}

.download-queue-info strong,
.download-queue-info small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.download-queue-info small {
  margin-top: 2px;
  color: #667085;
  font-size: 10px;
}

.download-queue-row > b {
  color: #667085;
  font-size: 11px;
}

.download-queue-row.ready > b,
.download-queue-row.running > b { color: #175cd3; }
.download-queue-row.done > b { color: #067647; }
.download-queue-row.failed > b { color: #b42318; }

.download-queue-row > em {
  color: #667085;
  font-style: normal;
  text-align: right;
}

.download-queue-row button {
  height: 26px;
  padding: 0 6px;
  font-size: 11px;
}

.download-queue-stage > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 8px;
  color: #667085;
  background: #f8fafc;
  border-top: 1px solid #edf1f6;
  font-size: 11px;
}

.download-queue-stage > footer em {
  overflow: hidden;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.download-task-center {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto auto 200px;
  gap: 8px;
  padding-left: 10px;
  border-left: 1px solid #dfe7f2;
}

.download-task-center > section {
  min-width: 0;
  padding: 10px;
  background: #fff;
  border: 1px solid #dce6f4;
  border-radius: 8px;
}

.download-task-center > section:nth-child(1) {
  border-left: 3px solid #4e8ff7;
}

.download-task-center > section:nth-child(2) {
  border-left: 3px solid #32a477;
}

.download-task-center > section:nth-child(3) {
  border-left: 3px solid #e0a43a;
}

.download-task-center h3 {
  margin: 0 0 8px;
  font-size: 13px;
}

.download-current-task {
  padding-left: 9px;
  border-left: 3px solid #1760eb;
}

.download-current-task strong,
.download-current-task span {
  display: block;
}

.download-current-task strong {
  margin-bottom: 4px;
  font-size: 15px;
}

.download-current-task span {
  color: #667085;
  line-height: 1.45;
}

.download-task-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px;
}

.download-task-metrics div {
  min-width: 0;
  padding: 7px 2px;
  background: #f7f9fc;
  border-radius: 6px;
  text-align: center;
}

.download-task-metrics b,
.download-task-metrics span {
  display: block;
}

.download-task-metrics b { font-size: 15px; }
.download-task-metrics span {
  overflow: hidden;
  color: #667085;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.download-task-center ul {
  margin: 0;
  padding-left: 16px;
  color: #52657d;
  line-height: 1.65;
}

.download-task-center .tool-page-log-panel {
  width: 100%;
  height: 200px;
  margin: 0;
  border-left: 3px solid #2aa7c9;
}

.feature-help {
  margin: 0 0 14px;
  padding: 12px 14px;
  border: 1px solid #d6e0ee;
  border-left: 3px solid #1764ff;
  background: #f7faff;
  color: #667085;
}

.feature-help h3 { margin: 0 0 7px; color: #101828; font-size: 15px; }
.feature-help p { margin: 3px 0; font-size: 12px; line-height: 1.55; }

.compact-feature-help {
  position: relative;
  display: inline-flex;
  margin: 0 0 8px;
  padding: 0;
  color: #1764ff;
  background: transparent;
  border: 0;
  border-left: 0;
  vertical-align: top;
}

.feature-help-trigger {
  height: 30px;
  padding: 0 12px;
  color: #1764ff;
  background: #eaf2ff;
  border: 1px solid #cfe0ff;
  border-radius: 2px;
  font-size: 12px;
  font-weight: 700;
}

.feature-help-popover {
  position: absolute;
  left: 0;
  top: calc(100% + 8px);
  z-index: 40;
  width: min(560px, 72vw);
  padding: 10px 12px;
  color: #fff;
  background: #cf1433;
  border-radius: 8px;
  box-shadow: 0 16px 36px rgba(16, 24, 40, 0.18);
  font-size: 12px;
  line-height: 1.7;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-4px);
  transition: opacity 0.14s ease, transform 0.14s ease;
}

.compact-feature-help:hover .feature-help-popover,
.compact-feature-help:focus-within .feature-help-popover {
  opacity: 1;
  transform: translateY(0);
}

.netdisk-context-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.netdisk-context-grid > div { display: grid; gap: 6px; }
.netdisk-context-grid label { color: #344054; font-size: 13px; }
.netdisk-context-grid .compact-target-row {
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 0;
}
.netdisk-target-picker .readonly-value {
  min-height: 36px;
  display: flex;
  align-items: center;
}

.account-list, .rule-list { display: grid; gap: 8px; }
.account-row, .history-row {
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 12px;
  border: 1px solid #e6edf7;
  background: #fff;
}

.account-row strong, .account-row small, .history-row span, .history-row small { display: block; }
.account-row small, .history-row small { margin-top: 3px; color: #667085; font-size: 12px; }
.inline-actions { display: flex; gap: 7px; }
.empty-hint { padding: 20px; color: #667085; text-align: center; }
.toolbar-note { align-self: center; color: #667085; font-size: 12px; }

.table-scroll { max-height: 430px; overflow: auto; border: 1px solid #e6edf7; }
.data-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.data-table th, .data-table td { padding: 9px 10px; border-bottom: 1px solid #e6edf7; text-align: left; }
.data-table th { position: sticky; top: 0; z-index: 1; background: #f4f7fb; }
.shares-table {
  max-height: 360px;
}
.shares-table .share-link-cell {
  width: min(520px, 48vw);
  height: 30px;
  padding: 0 8px;
  color: #101828;
  background: #fff;
  border: 1px solid #d6e0ee;
  font-size: 12px;
}
.shares-table .share-link-cell:focus {
  border-color: var(--blue);
  outline: none;
  box-shadow: 0 0 0 2px rgba(23, 100, 255, 0.12);
}

button.success {
  background: #18c760;
  color: #fff;
  border-color: #18c760;
}

.toolbar-check {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 13px;
  color: #101828;
}

.toolbar-check.danger-text {
  color: #ff4d4f;
}

.netdisk-shares-page {
  width: 46px;
  text-align: center;
}

.netdisk-shares-grid .data-table th,
.netdisk-shares-grid .data-table td {
  white-space: nowrap;
}

.netdisk-shares-grid .data-table tbody tr.selected {
  background: #fff;
}

.netdisk-shares-grid .data-table tbody tr.selected:hover {
  background: #f7faff;
}
.text-button { padding: 0; border: 0; background: transparent; color: #1764ff; cursor: pointer; text-align: left; }

.netdisk-rule-row {
  display: grid;
  grid-template-columns: 145px 1fr 1fr 1fr auto;
  gap: 8px;
  align-items: center;
}

.confirm-line { display: flex; align-items: center; gap: 8px; margin: 12px 0; color: #b42318; font-size: 13px; }

@media (max-width: 1250px) {
  .netdisk-context-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .netdisk-rule-row { grid-template-columns: 130px 1fr 1fr; }
}

.video-help-row small {
  color: var(--muted);
  font-size: 12px;
}

/* 澶氱綉鐩樼鐞嗛噰鐢ㄦ垚鐔熸枃浠剁鐞嗗櫒寮忓伐浣滃彴锛氳处鍙枫€佹枃浠躲€佹壒閲忔搷浣滃拰浠诲姟鐘舵€佸湪鍚屼竴灞忓畬鎴愩€?*/
.tool-grid.netdisk-pan-grid {
  display: block;
  padding: 0 0 20px;
}

.netdisk-pan-shell {
  height: calc(100vh - 310px);
  min-height: 620px;
  display: grid;
  grid-template-columns: 224px minmax(0, 1fr);
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line-strong);
  box-shadow: 0 12px 30px rgba(16, 24, 40, 0.07);
}

.netdisk-pan-sidebar {
  min-width: 0;
  padding: 12px 9px;
  color: #344054;
  background: #f7f9fc;
  border-right: 1px solid var(--line-strong);
}

.netdisk-pan-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 58px;
  margin: 0 4px 14px;
  padding: 9px 10px;
  color: #fff;
  background: linear-gradient(135deg, #1764ff, #0f4fd1);
}

.netdisk-pan-brand > span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  background: rgba(255, 255, 255, 0.16);
}

.netdisk-pan-brand svg,
.netdisk-pan-navitem svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
}

.netdisk-pan-brand strong,
.netdisk-pan-brand small,
.netdisk-pan-navitem b,
.netdisk-pan-navitem small {
  display: block;
}

.netdisk-pan-brand strong { font-size: 15px; }
.netdisk-pan-brand small { margin-top: 3px; color: #dce8ff; font-size: 11px; }

.netdisk-pan-navgroup { margin-top: 10px; }
.netdisk-pan-navgroup-flat {
  display: grid;
  gap: 4px;
}
.netdisk-pan-navgroup h3 {
  margin: 0 10px 5px;
  color: #98a2b3;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
}

.netdisk-pan-navitem {
  width: 100%;
  min-height: 44px;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  padding: 6px 8px;
  color: #344054;
  background: transparent;
  border-left: 3px solid transparent;
  text-align: left;
}

.netdisk-pan-navitem:hover,
.netdisk-pan-navitem:focus-visible,
.netdisk-pan-navitem.active {
  color: var(--blue);
  background: var(--soft-blue);
  border-left-color: var(--blue);
  outline: none;
}

.netdisk-pan-navitem > span {
  grid-row: 1 / 3;
  color: #1764ff;
}

.netdisk-pan-navitem:hover > span,
.netdisk-pan-navitem.active > span { color: #fff; }
.netdisk-pan-navitem b { font-size: 13px; font-weight: 600; }
.netdisk-pan-navitem small {
  margin-top: 2px;
  overflow: hidden;
  color: #98a2b3;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.netdisk-pan-index {
  width: 23px;
  height: 23px;
  display: inline-grid;
  place-items: center;
  color: var(--blue);
  background: #e8f1ff;
  border-radius: 50%;
  font-size: 12px;
  font-weight: 700;
}

.netdisk-pan-navitem.active .netdisk-pan-index,
.netdisk-pan-navitem:hover .netdisk-pan-index {
  color: #fff;
  background: var(--blue);
}

.netdisk-pan-navitem[data-netdisk-action="pantools-tutorial"] {
  position: relative;
  color: #8a5a00;
  background: linear-gradient(90deg, #fff6d8 0%, #fffdf7 78%);
  border-left-color: #f0b429;
  border-left-width: 4px;
  box-shadow: inset 0 0 0 1px rgba(240, 180, 41, 0.34), 0 0 12px rgba(240, 180, 41, 0.16);
  animation: pantoolsTutorialPulse 2.4s ease-in-out infinite;
}

.netdisk-pan-navitem[data-netdisk-action="pantools-tutorial"] .netdisk-pan-index {
  color: #fff;
  background: #f0a000;
}

.netdisk-pan-navitem[data-netdisk-action="pantools-tutorial"] b {
  color: #9a6500;
}

.netdisk-pan-navitem[data-netdisk-action="pantools-tutorial"] small {
  color: #9b7a30;
}

.netdisk-pan-navitem[data-netdisk-action="pantools-tutorial"]::after {
  content: "鏂版墜鍏堢湅";
  position: absolute;
  top: 6px;
  right: 8px;
  padding: 2px 7px;
  color: #8a5a00;
  background: #fff0b8;
  border: 1px solid rgba(240, 180, 41, 0.55);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
}

@keyframes pantoolsTutorialPulse {
  0%, 100% {
    box-shadow: inset 0 0 0 1px rgba(240, 180, 41, 0.34), 0 0 10px rgba(240, 180, 41, 0.14);
  }
  50% {
    box-shadow: inset 0 0 0 1px rgba(240, 180, 41, 0.55), 0 0 16px rgba(240, 180, 41, 0.28);
  }
}

.netdisk-pan-main {
  min-width: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

.netdisk-pan-panelhost {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto minmax(300px, 1fr) auto;
  overflow: hidden;
}

.netdisk-pan-panelhost.embedded {
  height: 100%;
  display: block;
}

.netdisk-pan-panelhost.file-workbench {
  display: block;
  min-height: 0;
}

.netdisk-pan-main:has(.netdisk-pan-panelhost.home) {
  grid-template-rows: minmax(0, 1fr);
}

.netdisk-pan-panelhost.home {
  height: 100%;
  display: block;
  overflow: hidden;
}

.netdisk-pantools-entry {
  height: 100%;
  min-height: 0;
  display: grid;
  place-items: center start;
  padding: 32px 24px;
  background: #f6f7f9;
}

.netdisk-pantools-entry-inner {
  width: min(900px, 100%);
  display: grid;
  justify-items: center;
  gap: 22px;
  color: var(--ink);
  text-align: center;
}

.netdisk-pantools-kicker {
  margin: 0;
  padding: 6px 12px;
  color: var(--blue);
  background: #edf4ff;
  border: 1px solid #d6e7ff;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 800;
}

.netdisk-pantools-entry h2 {
  max-width: 820px;
  margin: 0;
  color: #101828;
  font-size: 18px;
  line-height: 1.45;
  font-weight: 600;
  letter-spacing: 0;
}

.netdisk-pantools-subtitle {
  max-width: 860px;
  margin: -10px 0 0;
  color: #667085;
  font-size: 13px;
  line-height: 1.8;
}

.netdisk-pantools-provider-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.netdisk-pantools-provider-row span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 14px;
  color: #475467;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid #e0e8f5;
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(16, 24, 40, 0.04);
}

.netdisk-pantools-provider-row b {
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  color: #fff;
  background: var(--blue);
  border-radius: 8px;
  font-size: 13px;
}

.netdisk-pantools-provider-row span.active {
  color: var(--blue);
  border-color: #bdd6ff;
  background: #fff;
}

.netdisk-pantools-capability-grid {
  display: grid;
  grid-template-columns: repeat(3, 210px);
  justify-content: center;
  gap: 16px;
  margin-top: 0;
}

.netdisk-pantools-capability-grid article {
  width: 210px;
  min-height: 156px;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 10px;
  padding: 24px 20px;
  color: #101828;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid #e3e8ef;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(16, 24, 40, 0.03);
  transition: transform 0.16s ease, box-shadow 0.16s ease, background 0.16s ease, border-color 0.16s ease;
}

.netdisk-pantools-capability-grid article:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.96);
  border-color: #d7e2f1;
  box-shadow: 0 16px 34px rgba(16, 24, 40, 0.08);
}

.netdisk-pantools-capability-grid article > span {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  color: var(--blue);
  background: #edf4ff;
  border-radius: 8px;
}

.netdisk-pantools-capability-grid svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
}

.netdisk-pantools-capability-grid strong {
  font-size: 16px;
  font-weight: 800;
}

.netdisk-pantools-capability-grid p {
  margin: 0;
  color: #98a2b3;
  font-size: 13px;
  line-height: 1.7;
}

.netdisk-pantools-entry-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 4px;
}

.netdisk-pantools-entry-actions button {
  min-width: 138px;
  height: 42px;
  border-radius: 8px;
}

.netdisk-pantools-entry-actions .primary {
  min-width: 168px;
  box-shadow: 0 14px 28px rgba(23, 100, 255, 0.2);
}

.netdisk-mount-modal {
  backdrop-filter: blur(7px);
  background: rgba(16, 24, 40, 0.48);
}

.netdisk-mount-panel {
  width: min(720px, calc(100vw - 48px));
  min-height: 640px;
  padding: 0;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 28px 80px rgba(16, 24, 40, 0.28);
}

.netdisk-mount-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 28px 34px 12px;
}

.netdisk-mount-head h2 {
  margin: 0;
  color: #101828;
  font-size: 22px;
  font-weight: 850;
}

.netdisk-mount-body {
  display: grid;
  gap: 26px;
  padding: 14px 34px 12px;
}

.netdisk-mount-body section {
  display: grid;
  gap: 14px;
}

.netdisk-mount-body h3 {
  margin: 0;
  color: #101828;
  font-size: 16px;
  font-weight: 850;
}

.netdisk-mount-provider-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.netdisk-mount-provider {
  min-height: 86px;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 8px;
  color: #344054;
  background: #f3f6fb;
  border: 1px solid #dbe3ef;
  border-radius: 8px;
}

.netdisk-mount-provider:hover,
.netdisk-mount-provider.active {
  color: var(--blue);
  background: #f3efff;
  border-color: #bdd6ff;
  box-shadow: 0 0 0 3px rgba(23, 100, 255, 0.14);
}

.netdisk-mount-provider span {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  color: var(--blue);
  background: #fff;
  border-radius: 9px;
  box-shadow: 0 6px 14px rgba(16, 24, 40, 0.06);
  overflow: hidden;
  font-size: 18px;
  font-weight: 850;
}

.netdisk-mount-provider span img {
  width: 30px;
  height: 30px;
  object-fit: contain;
  display: block;
}

.netdisk-mount-provider strong {
  font-size: 13px;
}

.netdisk-mount-xunlei-card {
  min-height: 230px;
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 10px;
  padding: 28px 36px;
  background: #f3f6fb;
  border: 1px dashed #d8e0ec;
  border-radius: 10px;
}

.netdisk-mount-xunlei-card img,
.netdisk-mount-xunlei-card b {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin-bottom: 28px;
  color: var(--blue);
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 8px 18px rgba(16, 24, 40, 0.06);
  font-size: 26px;
  font-weight: 850;
}

.netdisk-mount-xunlei-card strong {
  color: #101828;
  font-size: 19px;
  font-weight: 850;
}

.netdisk-mount-xunlei-card span {
  color: #667085;
  font-size: 14px;
}

.netdisk-mount-login-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

.netdisk-mount-cookie-mode {
  color: var(--blue);
  background: #f7fbff;
  border-color: #bdd6ff;
}

#netdiskMountCookieText {
  width: 100%;
  min-height: 180px;
  padding: 14px;
  color: #101828;
  background: #fff;
  border: 1px solid #d6e0ee;
  border-radius: 8px;
  resize: vertical;
}

.netdisk-mount-body small {
  color: #98a2b3;
  line-height: 1.6;
}

.netdisk-mount-status {
  min-height: 24px;
  margin: 4px 34px 0;
  color: #667085;
  font-size: 13px;
  font-weight: 700;
}

.netdisk-mount-status[data-type="warn"] { color: #b45309; }
.netdisk-mount-status[data-type="success"] { color: #039855; }
.netdisk-mount-status[data-type="loading"] { color: var(--blue); }

.netdisk-mount-panel .modal-foot {
  padding: 18px 34px 28px;
}

.netdisk-pan-file-workspace {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(420px, 1fr) 294px;
  overflow: hidden;
}

.netdisk-pan-file-browser {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr);
  overflow: hidden;
}

.netdisk-pan-file-head {
  min-height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 8px 14px;
  border-bottom: 1px solid #e4eaf3;
}
.netdisk-pan-file-head > div { min-width: 0; }
.netdisk-pan-file-head span { color: #98a2b3; font-size: 11px; }
.netdisk-pan-file-head h2 { margin: 2px 0; color: #101828; font-size: 17px; letter-spacing: 0; }
.netdisk-pan-file-head p {
  margin: 0;
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.netdisk-pan-file-head > span {
  max-width: 260px;
  overflow: hidden;
  color: #667085;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.netdisk-pan-embedded {
  min-width: 0;
  height: 100%;
  display: grid;
  grid-template-rows: auto minmax(260px, 1fr) auto;
  overflow: hidden;
  background: #f8fafc;
}

.netdisk-pan-embedded-head {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 10px 14px;
  background: #fff;
  border-bottom: 1px solid var(--line);
}

.netdisk-pan-embedded-head > div:first-child { min-width: 260px; }
.netdisk-pan-embedded-head span { color: #98a2b3; font-size: 11px; }
.netdisk-pan-embedded-head h2 { margin: 2px 0; color: #101828; font-size: 17px; }
.netdisk-pan-embedded-head p {
  max-width: 720px;
  margin: 0;
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.netdisk-pan-embedded-toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 6px;
}

.netdisk-pan-embedded-toolbar button {
  min-height: 34px;
  padding: 0 12px;
}

.netdisk-pan-embedded-content {
  min-width: 0;
  min-height: 0;
  overflow: auto;
  padding: 12px 14px;
}

.netdisk-pan-embedded-content > .feature-help { margin-bottom: 10px; }
.netdisk-pan-embedded-content > .panel { margin-bottom: 10px; box-shadow: none; }
.netdisk-pan-embedded-log {
  position: static;
  min-height: 116px;
  max-height: 170px;
  margin: 0;
  padding: 8px 14px 10px;
  background: #fff;
  border: 0;
  border-top: 1px solid var(--line);
  box-shadow: none;
}

.netdisk-pan-embedded-log .process-head { margin-bottom: 5px; }
.netdisk-pan-embedded-log #netdiskPanEmbeddedLog {
  height: 82px;
  margin: 0;
  padding: 7px 9px;
  overflow: auto;
  color: #d1fae5;
  background: #111827;
  font: 12px Consolas, "Microsoft YaHei UI", monospace;
  white-space: pre-wrap;
}

.netdisk-pan-accountbar {
  min-height: 72px;
  display: grid;
  grid-template-columns: minmax(300px, 0.75fr) minmax(455px, 1fr) minmax(220px, 0.72fr);
  align-items: center;
  gap: 16px;
  padding: 9px 14px;
  border-bottom: 1px solid var(--line);
  overflow: visible;
  position: relative;
  z-index: 40;
}

.netdisk-pan-providers,
.netdisk-pan-accountpick,
.netdisk-pan-accountstatus,
.netdisk-pan-primaryops,
.netdisk-pan-search,
.netdisk-pan-taskbar > div {
  display: flex;
  align-items: center;
}

.netdisk-pan-providers { gap: 5px; }
.netdisk-pan-provider {
  min-width: 96px;
  height: 50px;
  display: grid;
  grid-template-columns: 30px 1fr;
  grid-template-rows: 22px 16px;
  align-items: center;
  padding: 5px 8px;
  color: #475467;
  background: #f8fafc;
  border: 1px solid var(--line);
  text-align: left;
}

.netdisk-pan-provider > span {
  grid-row: 1 / 3;
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  color: #fff;
  background: #1764ff;
  font-weight: 700;
}

.netdisk-pan-provider[data-provider="baidu"] > span { background: #345cff; }
.netdisk-pan-provider[data-provider="xunlei"] > span { background: #7357ff; }
.netdisk-pan-provider b { font-size: 13px; }
.netdisk-pan-provider small { color: #98a2b3; font-size: 10px; }
.netdisk-pan-provider.active {
  color: var(--blue);
  background: var(--soft-blue);
  border-color: #9fc0ff;
  box-shadow: inset 0 -2px 0 var(--blue);
}

.netdisk-pan-accountpick { min-width: 0; gap: 10px; flex-wrap: nowrap; }
.netdisk-pan-accountpick { position: relative; overflow: visible; z-index: 45; }
.netdisk-pan-accountpick label { flex: 0 0 auto; color: #667085; font-size: 12px; }
.netdisk-pan-accountpick select { min-width: 170px; height: 36px; flex: 1 1 220px; border: 1px solid var(--line-strong); }
.netdisk-pan-outline {
  flex: 0 0 auto;
  height: 36px;
  padding: 0 12px;
  color: var(--blue);
  background: #fff;
  border: 1px solid #a9c7ff;
  white-space: nowrap;
}
#netdiskPanQuickLogin { min-width: 118px; }

.netdisk-pan-accountstatus {
  min-width: 0;
  max-width: calc(100% - 22px);
  gap: 7px;
  justify-self: stretch;
  margin-left: 22px;
  color: #667085;
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
}

.netdisk-pan-accountstatus > div { min-width: 0; width: 100%; }
.netdisk-pan-accountstatus span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.netdisk-pan-accountstatus i,
.netdisk-pan-taskbar i {
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  background: #16a34a;
  border-radius: 50%;
}

.netdisk-pan-operationbar {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 14px;
  background: #fbfcfe;
  border-bottom: 1px solid var(--line);
}

.netdisk-pan-primaryops { flex-wrap: wrap; gap: 6px; }
.netdisk-pan-operationbar button,
.netdisk-pan-pathbar button,
.netdisk-pan-taskbar button {
  height: 34px;
  padding: 0 12px;
  color: #344054;
  background: #fff;
  border: 1px solid var(--line-strong);
}

.netdisk-pan-operationbar button:hover,
.netdisk-pan-pathbar button:hover,
.netdisk-pan-taskbar button:hover { color: var(--blue); border-color: #9fc0ff; }
.netdisk-pan-operationbar button.primary { color: #fff; background: var(--blue); border-color: var(--blue); }
.netdisk-pan-operationbar > span { color: #667085; font-size: 12px; white-space: nowrap; }

.netdisk-pan-pathbar {
  min-height: 50px;
  display: grid;
  grid-template-columns: auto minmax(180px, 1fr) auto auto minmax(260px, 0.7fr);
  align-items: center;
  gap: 8px;
  padding: 7px 14px;
  border-bottom: 1px solid var(--line);
}

.netdisk-pan-pathbar > span { color: #667085; font-size: 12px; }
.netdisk-pan-pathbar input,
.netdisk-pan-search input {
  min-width: 0;
  height: 34px;
  padding: 0 10px;
  border: 1px solid var(--line-strong);
  outline: none;
}
.netdisk-pan-pathbar input:focus,
.netdisk-pan-search input:focus { border-color: var(--blue); box-shadow: 0 0 0 2px rgba(23, 100, 255, 0.1); }
.netdisk-pan-search { min-width: 0; }
.netdisk-pan-search > span {
  width: 32px;
  height: 34px;
  display: grid;
  place-items: center;
  color: #98a2b3;
  background: #f8fafc;
  border: 1px solid var(--line-strong);
  border-right: 0;
}
.netdisk-pan-search input { flex: 1; border-left: 0; }

.netdisk-pan-filetable {
  min-height: 300px;
  overflow: auto;
  background: #fff;
}

.netdisk-pan-filetable table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.netdisk-pan-filetable th,
.netdisk-pan-filetable td {
  height: 44px;
  padding: 7px 10px;
  overflow: hidden;
  border-bottom: 1px solid #edf1f7;
  color: #475467;
  font-size: 12px;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.netdisk-pan-filetable th {
  position: sticky;
  z-index: 2;
  top: 0;
  height: 38px;
  color: #667085;
  background: #f7f9fc;
  font-weight: 600;
}
.netdisk-pan-filetable th:nth-child(1) { width: 42px; }
.netdisk-pan-filetable th:nth-child(2) { width: 58px; }
.netdisk-pan-filetable th:nth-child(4) { width: 100px; }
.netdisk-pan-filetable th:nth-child(5) { width: 150px; }
.netdisk-pan-filetable th:nth-child(6) { width: 64px; }
.netdisk-pan-filetable tbody tr:hover { background: #f7faff; }
.netdisk-pan-filemark {
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  color: #fff;
  background: #7aa5ff;
  font-size: 11px;
}
.netdisk-pan-filemark.folder { background: #f0a433; }
.netdisk-pan-filename,
.netdisk-pan-more { padding: 0; color: #344054; background: transparent; }
.netdisk-pan-filename { max-width: 100%; overflow: hidden; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
.netdisk-pan-filename:hover { color: var(--blue); text-decoration: underline; }
.netdisk-pan-more { width: 30px; height: 28px; font-weight: 700; }
.netdisk-pan-empty { padding: 72px 20px; color: #98a2b3; text-align: center; }

.netdisk-pan-taskbar {
  min-height: 46px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 6px 14px;
  background: #f7f9fc;
  border-top: 1px solid var(--line);
  color: #667085;
  font-size: 12px;
}
.netdisk-pan-taskbar > div { gap: 8px; }
.netdisk-pan-taskbar strong { color: #344054; }

.tool-view:has(.netdisk-file-workbench) .work-panel {
  min-height: 0;
  overflow: hidden;
}

.tool-view:has(.netdisk-file-workbench) .tool-content {
  min-height: 0;
  padding: 0;
  overflow: hidden;
}

.netdisk-file-workbench {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-columns: 220px minmax(420px, 1fr) 294px;
  overflow: hidden;
  color: #344054;
  background: #fff;
  border-top: 1px solid #e4eaf3;
}

.netdisk-file-account-pane,
.netdisk-file-side-panel {
  min-width: 0;
  min-height: 0;
  padding: 14px 12px;
  overflow: auto;
  background: #f8fafc;
}

.netdisk-file-account-pane { border-right: 1px solid #e4eaf3; }
.netdisk-file-side-panel {
  display: flex;
  flex-direction: column;
  border-left: 1px solid #e4eaf3;
}

.netdisk-file-pane-title,
.netdisk-file-side-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.netdisk-file-pane-title {
  display: grid;
  margin-bottom: 12px;
}

.netdisk-file-pane-title span,
.netdisk-file-side-head span {
  color: #98a2b3;
  font-size: 11px;
}

.netdisk-file-pane-title strong,
.netdisk-file-side-head strong {
  color: #101828;
  font-size: 14px;
}

.netdisk-file-provider-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4px;
  margin-bottom: 14px;
}

.netdisk-file-provider-tabs button {
  height: 32px;
  padding: 0 5px;
  color: #667085;
  background: #fff;
  border: 1px solid #d8e1ee;
  border-radius: 6px;
  font-size: 12px;
}

.netdisk-file-provider-tabs button.active {
  color: #175cd3;
  background: #eaf2ff;
  border-color: #9fc0ff;
}

.netdisk-file-account-pane > label {
  display: block;
  margin-bottom: 6px;
  color: #667085;
  font-size: 11px;
}

.netdisk-file-account-pane > select {
  width: 100%;
  height: 36px;
  border: 1px solid #d8e1ee;
  border-radius: 6px;
}

.netdisk-file-account-actions,
.netdisk-file-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.netdisk-file-account-actions { margin-top: 7px; }
.netdisk-file-account-actions button,
.netdisk-file-actions button,
.netdisk-file-drawer-foot button,
.netdisk-file-drawer-path button {
  min-height: 34px;
  padding: 0 10px;
  border-radius: 6px;
}

.netdisk-file-account-actions button {
  white-space: nowrap;
  font-size: 12px;
  padding: 0 6px;
}

.netdisk-file-location-nav {
  display: grid;
  gap: 4px;
  margin-top: 22px;
}

.netdisk-file-location-nav > span {
  margin: 0 7px 3px;
  color: #98a2b3;
  font-size: 11px;
}

.netdisk-file-location-nav button {
  min-height: 48px;
  display: grid;
  padding: 7px 9px;
  color: #475467;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 6px;
  text-align: left;
}

.netdisk-file-location-nav button.active,
.netdisk-file-location-nav button:hover:not(:disabled) {
  color: #175cd3;
  background: #eaf2ff;
  border-color: #cfe0ff;
}

.netdisk-file-location-nav button b { font-size: 12px; }
.netdisk-file-location-nav button small { margin-top: 2px; color: #98a2b3; font-size: 10px; }

.netdisk-file-account-note {
  margin-top: 20px;
  padding-top: 12px;
  border-top: 1px solid #e4eaf3;
}

.netdisk-file-account-note strong,
.netdisk-file-account-note span { display: block; }
.netdisk-file-account-note strong { color: #344054; font-size: 11px; }
.netdisk-file-account-note span { margin-top: 4px; color: #98a2b3; font-size: 10px; line-height: 1.55; }

.netdisk-file-browser {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr);
  overflow: hidden;
}

.netdisk-file-browser-head {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 10px 16px;
  border-bottom: 1px solid #e4eaf3;
}

.netdisk-file-browser-head > div { min-width: 0; }
.netdisk-file-browser-head span { color: #98a2b3; font-size: 11px; }
.netdisk-file-browser-head h2 { margin: 2px 0; color: #101828; font-size: 18px; letter-spacing: 0; }
.netdisk-file-browser-head p {
  margin: 0;
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.netdisk-file-browser-head > span {
  max-width: 260px;
  overflow: hidden;
  color: #667085;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.netdisk-file-commandbar {
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 7px 12px;
  background: #fbfcfe;
  border-bottom: 1px solid #e4eaf3;
}

.netdisk-file-commandbar > button {
  min-height: 34px;
  padding: 0 11px;
  border-radius: 6px;
}

.netdisk-file-create-row {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 5px;
}
.netdisk-file-create-row input { width: 160px; }
.netdisk-file-create-row button { min-height: 32px; padding: 0 9px; border-radius: 6px; }

.netdisk-file-search {
  min-width: 180px;
  max-width: 340px;
  height: 34px;
  display: flex;
  align-items: center;
  margin-left: auto;
  overflow: hidden;
  background: #fff;
  border: 1px solid #d8e1ee;
  border-radius: 6px;
}
.netdisk-file-search span { padding: 0 8px; color: #98a2b3; font-size: 11px; }
.netdisk-file-search input {
  min-width: 0;
  height: 32px;
  flex: 1;
  padding: 0 8px 0 0;
  border: 0;
  outline: 0;
}

.netdisk-file-breadcrumb {
  min-height: 36px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 5px 13px;
  color: #667085;
  border-bottom: 1px solid #edf1f7;
  font-size: 11px;
}
.netdisk-file-breadcrumb span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.netdisk-file-breadcrumb strong { flex: 0 0 auto; color: #344054; }

.netdisk-file-table {
  min-height: 0;
  overflow: auto;
}
.netdisk-file-table table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.netdisk-file-table th,
.netdisk-file-table td {
  height: 42px;
  padding: 6px 9px;
  overflow: hidden;
  border-bottom: 1px solid #edf1f7;
  color: #475467;
  font-size: 12px;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.netdisk-file-table th {
  position: sticky;
  z-index: 2;
  top: 0;
  height: 36px;
  color: #667085;
  background: #f8fafc;
  font-weight: 600;
}
.netdisk-file-table th:nth-child(1) { width: 40px; }
.netdisk-file-table th:nth-child(2) { width: 54px; }
.netdisk-file-table th:nth-child(4) { width: 96px; }
.netdisk-file-table th:nth-child(5) { width: 138px; }
.netdisk-file-table tbody tr:hover { background: #f7faff; }
.netdisk-file-table .netdisk-open-item {
  max-width: 100%;
  padding: 0;
  overflow: hidden;
  color: #344054;
  background: transparent;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.netdisk-file-table .netdisk-open-item:hover { color: #175cd3; text-decoration: underline; }
.netdisk-file-empty { padding: 70px 20px; color: #98a2b3; text-align: center; }

.netdisk-file-side-head { min-height: 38px; }
.netdisk-file-side-head > div { display: grid; gap: 2px; }
.netdisk-file-side-head .text-button { padding: 4px; color: #175cd3; font-size: 11px; }

.netdisk-file-selected-list,
.netdisk-file-folder-list {
  min-height: 0;
  flex: 1;
  margin: 10px 0;
  overflow: auto;
  border-top: 1px solid #e4eaf3;
  border-bottom: 1px solid #e4eaf3;
}

.netdisk-file-selected-row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-height: 48px;
  border-bottom: 1px solid #edf1f7;
}
.netdisk-file-selected-row > div { min-width: 0; }
.netdisk-file-selected-row strong,
.netdisk-file-selected-row small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.netdisk-file-selected-row strong { color: #344054; font-size: 11px; }
.netdisk-file-selected-row small { margin-top: 2px; color: #98a2b3; font-size: 10px; }

.netdisk-file-side-empty {
  min-height: 150px;
  display: grid;
  place-content: center;
  gap: 6px;
  padding: 18px;
  color: #98a2b3;
  font-size: 11px;
  line-height: 1.55;
  text-align: center;
}
.netdisk-file-side-empty strong { color: #667085; font-size: 12px; }

.netdisk-file-actions {
  display: grid;
  gap: 6px;
}
.netdisk-file-actions > small,
.netdisk-file-drawer-foot > small {
  color: #98a2b3;
  font-size: 10px;
  line-height: 1.5;
}

.netdisk-file-drawer-path {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  margin-top: 10px;
}
.netdisk-file-drawer-path span {
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.netdisk-file-folder-row {
  width: 100%;
  min-height: 46px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 5px 3px;
  color: #344054;
  background: transparent;
  border-bottom: 1px solid #edf1f7;
  text-align: left;
}
.netdisk-file-folder-row:hover { background: #eef5ff; }
.netdisk-file-folder-row strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.netdisk-file-folder-row > span:last-child { color: #175cd3; font-size: 10px; }

.netdisk-file-drawer-foot {
  display: grid;
  gap: 7px;
}
.netdisk-file-drawer-foot > div { display: grid; gap: 2px; }
.netdisk-file-drawer-foot span { color: #98a2b3; font-size: 10px; }
.netdisk-file-drawer-foot strong { color: #344054; font-size: 12px; }

.netdisk-operation-workbench {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 294px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e4eaf3;
  border-radius: 8px;
}
.netdisk-operation-main {
  min-width: 0;
  min-height: 0;
  padding: 7px 10px;
  overflow: auto;
}
.netdisk-operation-intro {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding: 0 2px 2px;
  color: #667085;
}
.netdisk-operation-intro strong { color: #344054; font-size: 12px; }
.netdisk-operation-intro span {
  overflow: hidden;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.netdisk-operation-section {
  padding: 7px 9px;
  border-top: 1px solid #e7edf6;
}
.netdisk-operation-section:first-of-type { border-top: 0; }
.netdisk-operation-section-head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}
.netdisk-operation-section-head > span {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  color: #1764ff;
  background: #eaf2ff;
  border: 1px solid #cfe0ff;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 700;
}
.netdisk-operation-section-head > div { min-width: 0; }
.netdisk-operation-section-head strong,
.netdisk-operation-section-head small { display: block; }
.netdisk-operation-section-head strong { color: #101828; font-size: 12px; }
.netdisk-operation-section-head small { margin-top: 1px; color: #98a2b3; font-size: 10px; }
.netdisk-context-grid.compact {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}
.netdisk-operation-import {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 6px;
  margin-top: 6px;
}
.netdisk-operation-import > label { margin: 0; }
.netdisk-operation-rules > .field-row.wide {
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr) 150px auto auto;
  align-items: center;
  gap: 6px;
}
.netdisk-operation-rules > .field-row.wide > label { margin: 0; }
.netdisk-operation-rules .rule-list {
  max-height: 82px;
  margin-top: 6px;
  overflow: auto;
}
.netdisk-operation-preview .confirm-line { margin: 0 0 7px; }
.netdisk-operation-preview .compact-result {
  min-height: 74px;
  max-height: 96px;
  margin: 0;
}
.netdisk-operation-summary {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding: 10px 0;
  border-top: 1px solid #e4eaf3;
  border-bottom: 1px solid #e4eaf3;
}
.netdisk-operation-summary > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.netdisk-operation-summary span { color: #98a2b3; font-size: 10px; }
.netdisk-operation-summary strong {
  max-width: 170px;
  overflow: hidden;
  color: #344054;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.netdisk-operation-summary input {
  width: 96px;
  min-width: 0;
  height: 30px;
  border: 1px solid #cfe0f5;
  border-radius: 6px;
  padding: 0 8px;
  font-size: 12px;
}
.netdisk-operation-selected {
  min-height: 0;
  flex: 1;
  margin: 8px 0;
  overflow: auto;
}
.netdisk-operation-selected > div {
  min-height: 38px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  border-bottom: 1px solid #edf1f7;
}
.netdisk-operation-selected > .netdisk-file-side-empty {
  min-height: 150px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  place-content: center;
}
.netdisk-operation-selected strong {
  overflow: hidden;
  color: #344054;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.netdisk-operation-selected > small { color: #98a2b3; font-size: 10px; }
.netdisk-operation-side-actions {
  display: grid;
  gap: 6px;
}
.netdisk-operation-side-actions button { min-height: 34px; border-radius: 6px; }
.netdisk-operation-side-actions small { color: #98a2b3; font-size: 10px; line-height: 1.5; }

.netdisk-dual-mode-workbench {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-columns: 196px minmax(0, 1fr);
  overflow: hidden;
  background: #fff;
  border: 1px solid #e4eaf3;
  border-radius: 8px;
}
.netdisk-mode-rail {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px;
  background: #f8fafc;
  border-right: 1px solid #e4eaf3;
}
.netdisk-mode-rail > div:first-child span,
.netdisk-mode-rail > div:first-child p { color: #667085; font-size: 10px; }
.netdisk-mode-rail h2 { margin: 2px 0 3px; font-size: 17px; letter-spacing: 0; }
.netdisk-mode-rail p { margin: 0; line-height: 1.5; }
.netdisk-mode-rail > .secondary,
.netdisk-mode-rail > .feature-help { align-self: flex-start; }
.netdisk-mode-buttons {
  display: grid;
  gap: 6px;
}
.netdisk-mode-buttons button {
  min-width: 0;
  min-height: 54px;
  display: grid;
  gap: 3px;
  padding: 8px 9px;
  color: #344054;
  text-align: left;
  background: #fff;
  border: 1px solid #dfe7f2;
  border-radius: 6px;
}
.netdisk-mode-buttons button strong { font-size: 12px; }
.netdisk-mode-buttons button span {
  overflow: hidden;
  color: #667085;
  font-size: 10px;
  line-height: 1.4;
  text-overflow: ellipsis;
}
.netdisk-mode-buttons button:hover { border-color: #9fc3ff; }
.netdisk-mode-buttons button.active {
  color: #075fe4;
  background: #eef5ff;
  border-color: #9fc3ff;
  box-shadow: inset 3px 0 #1769ff;
}
.netdisk-mode-content {
  min-width: 0;
  min-height: 0;
  overflow: auto;
  padding: 10px;
  background: #fff;
}
.netdisk-mode-panel-content {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 0;
}
.netdisk-mode-panel-content > .transfer-import-page {
  position: relative;
  width: 100%;
  height: auto;
  min-height: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  grid-template-rows: auto auto minmax(140px, 1fr);
  overflow: visible;
}

.netdisk-inline-active {
  position: relative;
  overflow: hidden;
}
.netdisk-inline-active > :not(.netdisk-inline-layer) { display: none !important; }
.netdisk-inline-layer {
  position: absolute;
  inset: 0;
  z-index: 4;
  overflow: auto;
  background: #f8fafc;
}
.netdisk-inline-layer > .transfer-import-page {
  position: relative;
  width: 100%;
  height: auto;
  min-height: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  grid-template-rows: auto auto minmax(140px, 1fr);
  overflow: visible;
}
.netdisk-transfer-folder-drawer {
  position: fixed;
  inset: 0;
  z-index: 130;
  width: auto;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(16, 24, 40, 0.48);
  border: 0;
  box-shadow: none;
  backdrop-filter: blur(6px);
}

.netdisk-transfer-folder-drawer.hidden {
  display: none;
}

.netdisk-account-workbench,
.netdisk-record-workbench,
.baidu-stats-workbench {
  min-height: 100%;
  background: #fff;
  border: 1px solid #e4eaf3;
  border-radius: 8px;
}
.netdisk-account-workbench {
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr);
  padding: 12px 14px;
  overflow: hidden;
}
.netdisk-account-workbench > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.netdisk-account-workbench > header span,
.netdisk-account-workbench > header p { color: #98a2b3; font-size: 10px; }
.netdisk-account-workbench > header h2 { margin: 2px 0; font-size: 17px; letter-spacing: 0; }
.netdisk-account-workbench > header p { margin: 0; }
.netdisk-account-create {
  display: grid;
  grid-template-columns: 180px minmax(240px, 1fr) minmax(220px, 0.8fr);
  align-items: end;
  gap: 8px;
  margin-top: 10px;
  padding: 10px;
  background: #f8fafc;
  border: 1px solid #e4eaf3;
  border-radius: 6px;
}
.netdisk-account-create > div { display: grid; gap: 4px; }
.netdisk-account-create label { color: #667085; font-size: 10px; }
.netdisk-account-create select,
.netdisk-account-create input { height: 34px; border-radius: 6px; }
.netdisk-account-create > span { align-self: center; color: #98a2b3; font-size: 10px; line-height: 1.5; }
.netdisk-account-list-head {
  display: flex;
  justify-content: space-between;
  padding: 12px 2px 7px;
  color: #667085;
  font-size: 11px;
}
.netdisk-account-list-head strong { color: #344054; }
.netdisk-account-list { min-height: 0; overflow: auto; }
.account-inline-editor {
  display: grid;
  grid-template-columns: auto minmax(180px, 1fr) auto auto;
  align-items: center;
  gap: 7px;
  padding: 8px 10px;
  background: #eef5ff;
  border-bottom: 1px solid #cfe0ff;
}
.account-inline-editor label { color: #475467; font-size: 11px; }
.account-inline-editor input { height: 32px; border-radius: 6px; }
.account-inline-editor button { min-height: 32px; padding: 0 10px; border-radius: 6px; }

.netdisk-record-workbench {
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr);
  overflow: hidden;
}
.netdisk-record-workbench > * { min-width: 0; }
.netdisk-record-head,
.netdisk-record-filters,
.netdisk-record-commandbar {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 7px 10px;
  border-bottom: 1px solid #e7edf6;
}
.netdisk-record-head { justify-content: space-between; min-height: 48px; }
.netdisk-record-head > div { display: grid; gap: 2px; }
.netdisk-record-head strong { color: #101828; font-size: 14px; }
.netdisk-record-head span { color: #98a2b3; font-size: 10px; }
.netdisk-record-filters > div { display: grid; gap: 3px; }
.netdisk-record-filters > div.grow { min-width: 220px; flex: 1; }
.netdisk-record-filters label { color: #667085; font-size: 10px; }
.netdisk-record-filters input,
.netdisk-record-filters select { height: 32px; border-radius: 6px; }
.netdisk-record-filters button,
.netdisk-record-commandbar button { min-height: 32px; padding: 0 10px; border-radius: 6px; }
.netdisk-record-commandbar { background: #f8fafc; color: #667085; font-size: 10px; }
.netdisk-record-commandbar label { display: flex; align-items: center; gap: 4px; }
.netdisk-record-commandbar .netdisk-shares-page { width: 56px; height: 32px; }
.netdisk-record-workbench .netdisk-shares-grid {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 0;
  height: auto;
  overflow: auto;
  border: 0;
}

.baidu-stats-workbench {
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  overflow: hidden;
}
.baidu-stats-controls {
  min-height: 0;
  display: grid;
  align-content: start;
  gap: 7px;
  padding: 12px;
  overflow: auto;
  background: #f8fafc;
  border-right: 1px solid #e4eaf3;
}
.baidu-stats-controls > label,
.baidu-stats-range label { color: #667085; font-size: 10px; }
.baidu-stats-controls > input,
.baidu-stats-range input { width: 100%; height: 32px; margin-top: 3px; border-radius: 6px; }
.baidu-stats-controls > button,
.baidu-stats-side-actions button,
.baidu-stats-status button { min-height: 32px; padding: 0 9px; border-radius: 6px; }
.baidu-stats-status { display: grid; gap: 5px; padding: 8px 0; border-top: 1px solid #e4eaf3; border-bottom: 1px solid #e4eaf3; }
.baidu-stats-status > span { color: #98a2b3; font-size: 10px; }
.baidu-stats-status > strong { color: #344054; font-size: 12px; }
.baidu-stats-status > div,
.baidu-stats-side-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.baidu-stats-range { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.baidu-stats-controls .plain-help { min-height: 32px; padding: 7px; color: #667085; font-size: 10px; line-height: 1.45; }
.baidu-stats-results {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: repeat(2, minmax(0, 1fr));
}
.baidu-stats-results > section { min-height: 0; display: grid; grid-template-rows: auto minmax(0, 1fr); border-bottom: 1px solid #e4eaf3; }
.baidu-stats-results header { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 10px; background: #fbfcfe; }
.baidu-stats-results header > div:first-child { display: grid; gap: 2px; }
.baidu-stats-results header strong { color: #344054; font-size: 12px; }
.baidu-stats-results header span { color: #98a2b3; font-size: 10px; }
.baidu-stats-results header button { min-height: 30px; padding: 0 9px; border-radius: 6px; }
.baidu-stats-results textarea { width: 100%; height: 100%; min-height: 0; padding: 10px; resize: none; border: 0; border-radius: 0; font-size: 11px; }

.netdisk-check-workbench,
.netdisk-monitor-workbench {
  min-height: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
  overflow: hidden;
  background: #fff;
  border: 1px solid #e4eaf3;
  border-radius: 8px;
}
.netdisk-check-workbench > main,
.netdisk-check-workbench > aside,
.netdisk-monitor-workbench > main,
.netdisk-monitor-workbench > aside {
  min-width: 0;
  min-height: 0;
  display: grid;
  padding: 11px 12px;
}
.netdisk-check-workbench > main { grid-template-rows: auto minmax(160px, 1fr) auto auto; gap: 8px; }
.netdisk-check-workbench > aside { grid-template-rows: auto minmax(0, 1fr); border-left: 1px solid #e4eaf3; background: #f8fafc; }
.netdisk-check-workbench header,
.netdisk-monitor-workbench header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.netdisk-check-workbench header > div,
.netdisk-monitor-workbench header > div { display: grid; gap: 2px; }
.netdisk-check-workbench header span,
.netdisk-monitor-workbench header span,
.netdisk-check-workbench header small,
.netdisk-monitor-workbench header small { color: #98a2b3; font-size: 10px; }
.netdisk-check-workbench header strong,
.netdisk-monitor-workbench header strong { color: #101828; font-size: 13px; }
.netdisk-check-workbench textarea { width: 100%; height: 100%; min-height: 0; resize: none; border-radius: 6px; }
.netdisk-check-import { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 6px; }
.netdisk-check-import input,
.netdisk-check-import button { min-height: 34px; border-radius: 6px; }
.netdisk-check-settings { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) auto; align-items: end; gap: 7px; }
.netdisk-check-settings label { color: #667085; font-size: 10px; }
.netdisk-check-settings input { width: 100%; height: 32px; margin-top: 3px; border-radius: 6px; }
.netdisk-check-settings button { min-height: 32px; border-radius: 6px; }
.netdisk-check-workbench > aside header { margin-bottom: 8px; }
.netdisk-check-workbench > aside header button { min-height: 30px; padding: 0 9px; border-radius: 6px; }

.netdisk-monitor-workbench > main { align-content: start; gap: 9px; }
.netdisk-monitor-workbench > aside { grid-template-rows: auto minmax(0, 1fr); border-left: 1px solid #e4eaf3; background: #f8fafc; }
.netdisk-monitor-rules { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.netdisk-monitor-rules label { color: #667085; font-size: 10px; }
.netdisk-monitor-rules select { width: 100%; height: 34px; margin-top: 3px; border-radius: 6px; }
.netdisk-monitor-rows { min-height: 0; margin-top: 8px; overflow: auto; }
.netdisk-monitor-rows .history-row { grid-template-columns: minmax(0, 1fr) auto auto; }

@media (max-width: 1040px) {
  .netdisk-file-workbench { grid-template-columns: 174px minmax(360px, 1fr) 250px; }
  .netdisk-pan-file-workspace { grid-template-columns: minmax(360px, 1fr) 250px; }
  .netdisk-operation-workbench { grid-template-columns: minmax(360px, 1fr) 250px; }
  .netdisk-file-account-actions { grid-template-columns: minmax(0, 1fr); }
  .netdisk-file-browser-head > span { display: none; }
}

@media (max-width: 760px) {
  .netdisk-pan-shell {
    height: auto;
    min-height: 100%;
    display: block;
    overflow: visible;
  }
  .netdisk-pan-sidebar {
    width: 100%;
    padding: 8px;
    border-right: 0;
    border-bottom: 1px solid #e4eaf3;
  }
  .netdisk-pan-brand { min-height: 48px; margin-bottom: 8px; }
  .netdisk-pan-navgroup-flat {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .netdisk-pan-main { display: block; }
  .netdisk-pan-accountbar {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }
  .netdisk-pan-providers {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .netdisk-pan-provider { min-width: 0; width: 100%; }
  .netdisk-pan-accountpick { flex-wrap: nowrap; overflow-x: auto; }
  .netdisk-pan-accountpick select { min-width: 150px; width: auto; }
  .netdisk-pan-accountstatus { white-space: nowrap; }
  .netdisk-pan-panelhost.embedded,
  .netdisk-pan-embedded {
    height: auto;
    min-height: 0;
    overflow: visible;
  }
  .netdisk-pan-embedded { display: block; }
  .netdisk-pan-embedded-head {
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
  }
  .netdisk-pan-embedded-head > div:first-child {
    width: 100%;
    min-width: 0;
  }
  .netdisk-pan-embedded-head p {
    overflow: visible;
    white-space: normal;
  }
  .netdisk-pan-embedded-toolbar { justify-content: flex-start; }
  .netdisk-pan-embedded-content {
    width: 100%;
    padding: 8px;
    overflow: visible;
  }
  .netdisk-pan-embedded-log {
    min-height: 130px;
    max-height: none;
  }
  .netdisk-account-workbench > header {
    flex-direction: column;
  }
  .feature-help-popover {
    position: fixed !important;
    top: 120px !important;
    right: 16px !important;
    left: 16px !important;
    width: auto !important;
    max-width: none !important;
    white-space: normal !important;
  }
  .tool-view:has(.netdisk-file-workbench) .tool-content { overflow: auto; }
  .netdisk-file-workbench {
    height: auto;
    min-height: 100%;
    grid-template-columns: minmax(0, 1fr);
    overflow: visible;
  }
  .netdisk-pan-file-workspace {
    height: auto;
    min-height: 100%;
    grid-template-columns: minmax(0, 1fr);
    overflow: visible;
  }
  .netdisk-operation-workbench {
    grid-template-columns: minmax(0, 1fr);
    overflow: visible;
  }
  .netdisk-dual-mode-workbench {
    height: auto;
    min-height: 100%;
    grid-template-columns: minmax(0, 1fr);
    overflow: visible;
  }
  .netdisk-mode-rail {
    border-right: 0;
    border-bottom: 1px solid #e4eaf3;
  }
  .netdisk-mode-buttons { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .netdisk-mode-content { overflow: visible; }
  .netdisk-mode-panel-content,
  .netdisk-mode-panel-content > .transfer-import-page { height: auto; }
  .netdisk-context-grid.compact { grid-template-columns: minmax(0, 1fr); }
  .netdisk-transfer-folder-drawer {
    position: fixed;
    inset: 0;
    width: auto;
    min-height: 0;
    display: grid;
    place-items: center;
    padding: 18px;
    border: 0;
    box-shadow: none;
  }
  .netdisk-account-create,
  .baidu-stats-workbench,
  .netdisk-check-workbench,
  .netdisk-monitor-workbench { grid-template-columns: minmax(0, 1fr); }
  .netdisk-account-workbench,
  .netdisk-record-workbench,
  .baidu-stats-workbench { overflow: visible; }
  .baidu-stats-results { min-height: 520px; }
  .netdisk-check-workbench > aside,
  .netdisk-monitor-workbench > aside { min-height: 360px; border-left: 0; border-top: 1px solid #e4eaf3; }
  .netdisk-pan-embedded-content > *,
  .netdisk-pan-embedded-content .compact-tool-panel,
  .netdisk-pan-embedded-content .netdisk-share-mode-panel,
  .netdisk-pan-embedded-content .netdisk-transfer-panel {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  .netdisk-pan-embedded-content .netdisk-context-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .netdisk-pan-embedded-content .account-row {
    align-items: flex-start;
    flex-direction: column;
  }
  .netdisk-pan-embedded-content .inline-actions {
    width: 100%;
    flex-wrap: wrap;
  }
  .netdisk-pan-embedded-content .transfer-import-strip {
    display: block;
  }
  .netdisk-pan-embedded-content .transfer-import-strip strong,
  .netdisk-pan-embedded-content .transfer-import-strip span {
    display: block;
    margin: 0;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
  .netdisk-pan-embedded-content .transfer-import-strip > div {
    min-width: 0;
    max-width: 100%;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
  .netdisk-pan-embedded-content .transfer-import-strip span { margin-top: 4px; }
  .netdisk-pan-embedded-content .confirm-line {
    min-width: 0;
    white-space: normal;
  }
  .netdisk-pan-embedded-content .compact-label::after { display: none; }
  .netdisk-record-filters,
  .netdisk-record-commandbar {
    flex-wrap: wrap;
  }
  .netdisk-record-filters > div.grow {
    width: 100%;
    min-width: 0;
    order: 3;
  }
  .netdisk-record-filters > div.grow input { width: 100%; }
  .netdisk-pan-file-browser { min-height: 520px; }
  .netdisk-file-account-pane,
  .netdisk-file-side-panel { overflow: visible; border: 0; border-bottom: 1px solid #e4eaf3; }
  .netdisk-file-account-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .netdisk-file-location-nav,
  .netdisk-file-account-note { display: none; }
  .netdisk-file-browser { min-height: 520px; }
  .netdisk-file-side-panel { min-height: 320px; }
}

@media (max-width: 430px) {
  .netdisk-file-account-actions,
  .netdisk-file-action-grid { grid-template-columns: minmax(0, 1fr); }
  .netdisk-file-browser-head { align-items: flex-start; padding: 10px 12px; }
  .netdisk-file-browser-head p { white-space: normal; }
  .netdisk-file-commandbar { flex-wrap: wrap; }
  .netdisk-file-search { width: 100%; max-width: none; margin-left: 0; }
  .netdisk-file-create-row { width: 100%; flex-wrap: wrap; }
  .netdisk-file-create-row input { width: 100%; }
  .netdisk-file-table th:nth-child(2),
  .netdisk-file-table td:nth-child(2),
  .netdisk-file-table th:nth-child(5),
  .netdisk-file-table td:nth-child(5) { display: none; }
  .account-inline-editor {
    grid-template-columns: minmax(0, 1fr);
  }
  .transfer-mode-switch {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }
  .transfer-mode-switch button { width: 100%; }
}

.tool-view:has(.qdir-workbench) .work-panel {
  min-height: 0;
  overflow: hidden;
}
.qdir-workbench {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 8px;
}
.qdir-workspace-head,
.qdir-workspace-status {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #667085;
  font-size: 12px;
}
.qdir-workspace-head > div {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 10px;
}
.qdir-workspace-head strong {
  color: #101828;
  font-size: 14px;
}
.qdir-workspace-head span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.qdir-workspace-head em,
.qdir-workspace-status em,
.qdir-workspace-status span {
  font-style: normal;
  white-space: nowrap;
}
.qdir-workspace-head em[data-state="loading"] { color: #175cd3; }
.qdir-workspace-head em[data-state="success"] { color: #067647; }
.qdir-workspace-status {
  min-height: 24px;
  padding: 0 2px;
  border-top: 1px solid #e7edf6;
}
.qdir-grid {
  min-height: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.qdir-pane {
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  border: 1px solid #dfe8f5;
  border-radius: 8px;
  box-shadow: none;
}
.qdir-pane.active {
  border-color: #84adff;
  box-shadow: 0 0 0 1px rgba(23, 92, 211, 0.12);
}
.qdir-pane-head {
  min-width: 0;
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 5px 8px;
  background: #f8fafc;
  border-bottom: 1px solid #e7edf6;
}
.qdir-pane.active .qdir-pane-head { background: #f4f8ff; }
.qdir-pane-head > div {
  min-width: 82px;
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.qdir-pane-head strong {
  color: #101828;
  font-size: 12px;
}
.qdir-pane-state {
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.qdir-pane-state[data-state="loading"] { color: #175cd3; }
.qdir-pane-state[data-state="success"] { color: #067647; }
.qdir-pane-state[data-state="error"] { color: #b42318; }
.qdir-pane-toolbar {
  min-width: 0;
  display: flex;
  justify-content: flex-end;
  gap: 4px;
}
.qdir-pane-toolbar button {
  min-width: 0;
  height: 28px;
  padding: 0 8px;
  border-radius: 6px;
  font-size: 11px;
}
.qdir-path-row {
  padding: 6px 8px;
  border-bottom: 1px solid #eef2f7;
}
.qdir-path {
  width: 100%;
  height: 30px;
  padding: 0 8px;
  border-radius: 6px;
  font-size: 11px;
}
.qdir-list {
  min-height: 0;
  flex: 1;
  overflow: auto;
  background: #fff;
}
.qdir-empty,
.qdir-list .compact-empty {
  height: 100%;
  min-height: 92px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 4px;
  padding: 16px;
  color: #98a2b3;
  text-align: center;
}
.qdir-empty strong {
  color: #475467;
  font-size: 12px;
}
.qdir-empty span {
  max-width: 100%;
  overflow-wrap: anywhere;
  font-size: 11px;
}
.qdir-empty.is-loading strong { color: #175cd3; }
.qdir-empty.is-error strong { color: #b42318; }
.qdir-pane > footer {
  min-height: 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 4px 8px;
  background: #f8fafc;
  border-top: 1px solid #e7edf6;
  color: #667085;
  font-size: 11px;
}
.qdir-pane > footer em {
  min-width: 0;
  overflow: hidden;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.qdir-entry {
  width: 100%;
  min-height: 30px;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) 64px;
  align-items: center;
  gap: 5px;
  padding: 3px 8px;
  border: 0;
  border-bottom: 1px solid #f0f3f8;
  border-radius: 0;
  background: #fff;
  color: #344054;
  font-size: 11px;
  text-align: left;
}
.qdir-entry:hover { background: #eef5ff; color: var(--blue); }
.qdir-entry.selected {
  background: #e8f1ff;
  color: #175cd3;
}
.qdir-entry-icon {
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border-radius: 4px;
  color: #fff;
  background: #8aa4c7;
  font-size: 10px;
}
.qdir-entry.folder .qdir-entry-icon { background: #f0a433; }
.qdir-entry-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.qdir-entry small { color: #98a2b3; text-align: right; }

@media (max-width: 760px) {
  .tool-view:has(.qdir-workbench) .work-panel {
    overflow-x: hidden;
    overflow-y: auto;
  }
  .qdir-workbench {
    height: auto;
    min-height: 100%;
    grid-template-rows: auto auto auto;
  }
  .qdir-workspace-head {
    align-items: flex-start;
  }
  .qdir-workspace-head > div {
    align-items: flex-start;
    flex-direction: column;
    gap: 2px;
  }
  .qdir-workspace-head span {
    white-space: normal;
  }
  .qdir-grid {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
  }
  .qdir-pane {
    height: 360px;
  }
}

@media (max-width: 430px) {
  .tool-view:has(.qdir-workbench) .tool-header {
    height: auto;
    min-height: 0;
    flex-wrap: wrap;
  }
  .tool-view:has(.qdir-workbench) .tool-title,
  .tool-view:has(.qdir-workbench) .toolbar {
    flex: 1 0 100%;
    width: 100%;
  }
  .tool-view:has(.qdir-workbench) #qdirRefreshAllBtn {
    width: 100%;
  }
  .qdir-workspace-head {
    flex-wrap: wrap;
  }
  .qdir-workspace-head em {
    width: 100%;
  }
  .qdir-pane {
    height: 340px;
  }
  .qdir-pane-head {
    align-items: stretch;
    flex-direction: column;
  }
  .qdir-pane-head > div {
    min-width: 0;
    flex-direction: row;
    align-items: baseline;
    justify-content: space-between;
  }
  .qdir-pane-toolbar {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .qdir-pane-toolbar button {
    width: 100%;
    padding: 0 4px;
  }
  .qdir-entry {
    grid-template-columns: 22px minmax(0, 1fr) 54px;
    padding-inline: 6px;
  }
  .qdir-workspace-status {
    align-items: flex-start;
    flex-direction: column;
    gap: 2px;
    padding-block: 5px;
  }
}

.enhancement-panel {
  min-height: 520px;
  padding: 14px;
}
.enhancement-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.enhancement-head h2 { margin: 0 0 4px; font-size: 18px; }
.enhancement-head p { margin: 0; color: #667085; font-size: 12px; line-height: 1.6; }
.enhancement-panel input,
.enhancement-panel textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--line-strong);
  background: #fff;
  font-size: 13px;
}
.enhancement-panel input { height: 36px; padding: 0 10px; }
.enhancement-panel textarea { padding: 10px; resize: vertical; }
.enhancement-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(180px, 0.7fr) 100px 100px;
  gap: 8px;
  margin: 10px 0;
}
.enhancement-list {
  max-height: 390px;
  margin-top: 10px;
  overflow: auto;
  border: 1px solid var(--line);
  background: #fff;
}

.enhancement-list.idle-hidden:empty {
  display: none;
}
.compact-enhancement-list {
  max-height: 150px;
  margin-bottom: 10px;
}
.enhancement-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 6px;
  padding: 7px 8px;
  border-bottom: 1px solid #edf1f7;
}
.enhancement-row:last-child { border-bottom: 0; }
.enhancement-main {
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #344054;
  text-align: left;
}
.enhancement-main strong,
.enhancement-main span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.enhancement-main strong { font-size: 13px; }
.enhancement-main span { margin-top: 3px; color: #667085; font-size: 12px; }
.enhancement-main:hover { color: var(--blue); }
.enhancement-row button.secondary,
.enhancement-panel .inline-actions button,
.folder-tabs-bar button {
  height: 32px;
  padding: 0 10px;
  font-size: 12px;
}
.enhancement-preview {
  min-height: 320px;
  max-height: 460px;
  margin-top: 10px;
  overflow: auto;
  padding: 12px;
  border: 1px solid var(--line);
  background: #fff;
  color: #344054;
  font-size: 12px;
}
.enhancement-preview pre {
  margin: 8px 0 0;
  white-space: pre-wrap;
  word-break: break-word;
}
.enhancement-preview img {
  display: block;
  max-width: 100%;
  max-height: 390px;
  margin: 10px auto 0;
  object-fit: contain;
}
.enhancement-meta {
  color: #667085;
  font-size: 12px;
}
.folder-tabs-bar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 10px;
}
.folder-bookmark-bar {
  min-height: 34px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  margin: 0 0 10px;
  padding: 6px;
  background: #f8fbff;
  border: 1px solid var(--line);
}
.folder-bookmark-bar button {
  height: 28px;
  padding: 0 9px;
  border: 1px solid #cfe0ff;
  background: #fff;
  color: #344054;
  font-size: 12px;
}
.folder-native-bar {
  min-height: 34px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  margin: 0 0 8px;
  padding: 6px;
  background: #fff;
  border: 1px dashed #cfe0ff;
}
.folder-native-bar button {
  height: 28px;
  padding: 0 10px;
  border: 1px solid var(--line-strong);
  background: var(--soft-blue);
  color: var(--blue);
  font-size: 12px;
  font-weight: 700;
}
.folder-native-bar button:hover { border-color: var(--blue); background: #fff; }
.folder-bookmark-bar .folder-bookmark:hover {
  color: var(--blue);
  border-color: var(--blue);
}
.folder-tabs-bar button {
  border: 1px solid var(--line-strong);
  background: #fff;
  color: #344054;
}
.folder-tabs-bar button.active {
  border-color: var(--blue);
  background: var(--soft-blue);
  color: var(--blue);
  font-weight: 700;
}
.folder-tabs-bar .folder-tab-close {
  width: 28px;
  padding: 0;
  color: #98a2b3;
}

.export-menu {
  position: relative;
  display: inline-block;
}

.export-menu summary {
  height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
  background: var(--soft-blue);
  color: var(--blue);
  font-size: 12px;
  font-weight: 700;
  list-style: none;
  cursor: pointer;
  user-select: none;
}

.export-menu summary::-webkit-details-marker {
  display: none;
}

.export-menu summary::after {
  content: "鈱?;
  color: #5f7fb8;
  font-size: 12px;
}

.export-menu[open] summary {
  border-color: #9fc0ff;
  background: #fff;
}

.export-menu-panel {
  position: absolute;
  z-index: 30;
  top: calc(100% + 6px);
  left: 0;
  width: 168px;
  display: grid;
  gap: 6px;
  padding: 8px;
  border: 1px solid #d9e5f5;
  border-radius: var(--radius-sm);
  background: #fff;
  box-shadow: 0 14px 28px rgba(16, 24, 40, 0.14);
}

.path-import-menu .export-menu-panel {
  left: auto;
  right: -8px;
  width: 236px;
}

.path-import-menu .export-menu-panel::before {
  content: "";
  position: absolute;
  top: -7px;
  left: auto;
  right: 26px;
  width: 12px;
  height: 12px;
  background: #fff;
  border-left: 1px solid #d9e5f5;
  border-top: 1px solid #d9e5f5;
  transform: rotate(45deg);
}

.export-menu-panel button {
  width: 100%;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  justify-content: flex-start;
  text-align: left;
}

.export-menu-panel button:hover {
  background: #f4f8ff;
}

.export-menu-panel button.export-menu-short {
  display: inline-flex;
  justify-content: center;
  white-space: nowrap;
  text-align: center;
}

.export-menu-panel button strong,
.export-menu-panel button small {
  display: block;
  min-width: 0;
}

.export-menu-panel button strong {
  color: var(--ink);
  font-size: 12px;
  line-height: 1.25;
}

.export-menu-panel button small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.25;
}

.netdisk-login-menu {
  position: relative;
  display: inline-block;
}
.netdisk-login-menu summary {
  height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 14px;
  border: 1px solid #9fc0ff;
  border-radius: var(--radius-sm);
  background: #fff;
  color: var(--blue);
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  list-style: none;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
}
.netdisk-login-menu summary::-webkit-details-marker { display: none; }
.netdisk-login-menu summary::after {
  content: "鈭?;
  color: #5f7fb8;
  font-size: 11px;
}
.netdisk-login-menu[open] summary {
  border-color: var(--blue);
  background: var(--soft-blue);
}
.netdisk-login-menu-panel {
  position: absolute;
  z-index: 60;
  top: calc(100% + 6px);
  right: 0;
  width: 188px;
  display: grid;
  gap: 6px;
  padding: 8px;
  border: 1px solid #d9e5f5;
  border-radius: var(--radius-sm);
  background: #fff;
  box-shadow: 0 14px 28px rgba(16, 24, 40, 0.14);
}
.netdisk-login-menu-panel::before {
  content: "";
  position: absolute;
  top: -7px;
  right: 22px;
  width: 12px;
  height: 12px;
  background: #fff;
  border-left: 1px solid #d9e5f5;
  border-top: 1px solid #d9e5f5;
  transform: rotate(45deg);
}
.netdisk-login-menu-panel button {
  width: 100%;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0 10px;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  background: #fff;
  color: var(--ink);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
  cursor: pointer;
}
.netdisk-login-menu-panel button:hover {
  border-color: #bfdbfe;
  background: #f4f8ff;
  color: var(--blue);
}

.netdisk-account-select {
  position: relative;
  flex: 0 0 240px;
  width: 240px;
  min-width: 240px;
  max-width: 240px;
}

.netdisk-account-select input[type="hidden"] {
  display: none;
}

.netdisk-account-menu,
.netdisk-login-menu {
  position: relative;
  display: inline-block;
}

.netdisk-account-menu {
  width: 100%;
}

.netdisk-login-menu {
  flex: 0 0 auto;
}

.netdisk-account-menu summary,
.netdisk-login-menu summary {
  box-sizing: border-box;
  height: 36px;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 700;
  line-height: 34px;
  box-shadow: none;
  transition: border-color 0.16s ease, background 0.16s ease, box-shadow 0.16s ease;
}

.netdisk-account-menu summary span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 34px;
}

.netdisk-account-menu summary::marker,
.netdisk-login-menu summary::marker {
  content: "";
  display: none;
}

.netdisk-account-menu summary::-webkit-details-marker { display: none; }

.netdisk-account-menu summary::after {
  content: "鈭?;
  flex: 0 0 auto;
  color: #5f7fb8;
  font-size: 11px;
}

.netdisk-account-menu[open] summary,
.netdisk-login-menu[open] summary {
  border-color: var(--blue);
  background: #f5f9ff;
  box-shadow: 0 0 0 3px rgba(23, 100, 255, 0.08);
}

.netdisk-account-menu-panel,
.netdisk-login-menu-panel {
  z-index: 80;
  top: calc(100% + 6px);
  border-color: #d9e5f5;
  box-shadow: 0 12px 24px rgba(16, 24, 40, 0.12);
}

.netdisk-account-menu-panel {
  position: absolute;
  left: 0;
  width: 240px;
  min-width: 100%;
  max-height: 210px;
  display: grid;
  gap: 4px;
  padding: 6px;
  overflow: auto;
  border: 1px solid #d9e5f5;
  border-radius: var(--radius-sm);
  background: #fff;
}

.netdisk-account-menu-panel::before {
  display: none;
}

.netdisk-account-menu-panel button {
  width: 100%;
  min-height: 34px;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 1px;
  padding: 6px 10px;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  background: #fff;
  color: var(--ink);
  font-size: 13px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.netdisk-account-menu-panel button span,
.netdisk-account-menu-panel button small {
  width: 100%;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.netdisk-account-menu-panel button small {
  color: #7a8aa6;
  font-size: 11px;
  font-weight: 500;
}

.netdisk-account-menu-panel button.active,
.netdisk-account-menu-panel button:hover {
  border-color: #bfdbfe;
  background: #f4f8ff;
  color: var(--blue);
}

.netdisk-login-menu-panel {
  width: 190px;
  gap: 4px;
  padding: 6px;
}

.netdisk-login-menu-panel button {
  height: 34px;
  padding: 0 10px;
  font-size: 13px;
  font-weight: 700;
}

.netdisk-account-menu summary::after,
.netdisk-login-menu summary::after {
  content: none;
  display: none;
}

.netdisk-account-menu summary,
.netdisk-login-menu summary {
  justify-content: center;
  gap: 0;
}

.netdisk-account-menu summary span {
  text-align: center;
}

.netdisk-account-menu-panel button {
  min-height: 32px;
  flex-direction: row;
  align-items: center;
}

.netdisk-account-menu-panel button small {
  display: none;
}

.netdisk-login-menu-panel::before {
  display: none;
}

.netdisk-pan-accountpick .netdisk-account-menu summary,
.netdisk-pan-accountpick .netdisk-login-menu summary {
  height: 36px;
  min-height: 36px;
  border: 1px solid #c8d8f2;
  border-radius: 6px;
  background: #fff;
  color: #1764ff;
  font-size: 13px;
  font-weight: 650;
  line-height: 34px;
  box-shadow: none;
  list-style: none;
}

.netdisk-pan-accountpick .netdisk-account-menu[open] summary,
.netdisk-pan-accountpick .netdisk-login-menu[open] summary {
  border-color: #8fb3f6;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(23, 100, 255, 0.08);
}

.netdisk-pan-accountpick .netdisk-account-menu-panel,
.netdisk-pan-accountpick .netdisk-login-menu-panel {
  margin-top: 2px;
  padding: 6px;
  border: 1px solid #d5e3f7;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 12px 26px rgba(15, 23, 42, 0.12);
}

.netdisk-pan-accountpick .netdisk-account-menu-panel button,
.netdisk-pan-accountpick .netdisk-login-menu-panel button {
  min-height: 34px;
  height: 34px;
  padding: 0 12px;
  border-radius: 5px;
  color: #1f2a44;
  font-size: 13px;
  font-weight: 600;
  line-height: 34px;
  letter-spacing: 0;
}

.netdisk-pan-accountpick .netdisk-login-menu-panel button {
  gap: 0;
}

.netdisk-pan-accountpick .netdisk-login-menu-panel button::before {
  content: none;
  display: none;
}

.netdisk-pan-accountpick .netdisk-login-menu-panel button[data-netdisk-login-action="cookie"]::before {
  content: none;
  display: none;
}

.netdisk-pan-accountpick .netdisk-account-menu-panel button.active,
.netdisk-pan-accountpick .netdisk-account-menu-panel button:hover,
.netdisk-pan-accountpick .netdisk-login-menu-panel button:hover {
  border-color: transparent;
  background: #f4f8ff;
  color: #1764ff;
}

.netdisk-pan-accountpick .netdisk-account-menu-panel button.empty {
  color: #7a8aa6;
  cursor: default;
}

.netdisk-pan-accountpick .netdisk-account-menu-panel button.empty:hover {
  background: #fff;
  color: #7a8aa6;
}

.menu-item-icon {
  width: 30px;
  height: 30px;
  display: inline-grid;
  place-items: center;
  border-radius: 8px;
  color: #fff;
  background: var(--blue);
  font-size: 13px;
  font-weight: 850;
}

.transfer-delay-control {
  height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 10px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
  background: #fff;
  color: #344054;
  font-size: 12px;
  font-weight: 700;
}

.transfer-delay-control input[type="number"] {
  width: 64px;
  height: 28px;
  padding: 0 8px;
  font-size: 12px;
}

.transfer-mode-switch {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
}

.transfer-mode-switch button {
  height: 40px;
  padding: 0 16px;
  font-size: 14px;
}

.share-mode-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.share-mode-head span {
  display: block;
  color: #667085;
  font-size: 12px;
}

.share-mode-head h2 {
  margin: 4px 0 4px;
}

.share-mode-head p {
  margin: 0;
  color: #667085;
  font-size: 13px;
}

.share-mode-context {
  display: grid;
  grid-template-columns: minmax(130px, 0.8fr) minmax(180px, 1fr) minmax(120px, 0.7fr) minmax(260px, 1.5fr);
  gap: 10px;
  align-items: end;
  padding: 10px;
  background: #f8fbff;
  border: 1px solid #dbe7f7;
  border-radius: var(--radius-sm);
}

.share-mode-context > div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.share-mode-context label {
  color: #344054;
  font-size: 12px;
  font-weight: 700;
}

.share-mode-context .confirm-line {
  margin: 0;
}

.share-mode-page {
  grid-template-rows: auto auto minmax(220px, 300px) auto;
}

.share-mode-page .transfer-import-head {
  padding-right: 44px;
}

.share-mode-page .export-menu-panel {
  left: auto;
  right: 0;
}

.share-mode-page #netdiskOperationPreview {
  width: 100%;
  height: 100%;
  min-height: 220px;
  max-height: none;
  overflow: auto;
  resize: none;
}

@media (max-width: 1400px), (max-height: 800px) {
  .sidebar {
    width: 218px;
  }

  .work-panel {
    padding: 10px 12px;
  }

  .category-group {
    margin: 0 8px 8px 12px;
  }

  .netdisk-dual-mode-workbench {
    grid-template-columns: 176px minmax(0, 1fr);
  }

  .tool-view:has(.netdisk-dual-mode-workbench) .tool-page-log-panel {
    flex-basis: 160px;
    width: 240px;
    margin-top: 0;
    padding: 10px;
  }

  .netdisk-mode-rail {
    gap: 7px;
    padding: 9px;
  }

  .netdisk-mode-rail h2 {
    font-size: 16px;
  }

  .netdisk-mode-buttons button {
    min-height: 46px;
    padding: 7px 8px;
  }

  .netdisk-mode-content {
    padding: 8px;
  }

  .netdisk-mode-panel-content > .transfer-import-page,
  .netdisk-inline-layer > .transfer-import-page {
    gap: 8px;
    padding: 10px;
  }

  .transfer-import-page {
    grid-template-rows: auto auto minmax(176px, 1fr);
  }

  .share-mode-page {
    grid-template-rows: auto auto minmax(170px, 1fr) auto;
  }

  .share-mode-page #netdiskOperationPreview {
    min-height: 170px;
  }

  .share-mode-context {
    grid-template-columns: minmax(110px, 0.75fr) minmax(150px, 1fr) minmax(100px, 0.65fr);
  }

  .share-mode-context .confirm-line {
    grid-column: 1 / -1;
  }

  .transfer-import-head strong {
    font-size: 17px;
  }

  .share-mode-page .transfer-import-head {
    padding-right: 30px;
  }

  .transfer-import-simple-actions {
    gap: 7px;
    padding-top: 8px;
  }

  .transfer-import-simple-actions #textImportInlineState {
    margin-left: 0;
  }

  .transfer-import-simple-actions button,
  .transfer-delay-control {
    min-height: 34px;
  }
}

.netdisk-mode-panel-content .transfer-import-simple-actions #textImportInlineState,
.netdisk-inline-layer .transfer-import-simple-actions #textImportInlineState {
  flex: 1 1 auto;
  flex-basis: auto;
  margin-left: auto;
}

.transfer-import-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: -4px 0 14px;
  padding: 10px 12px;
  color: #475467;
  background: #f8fbff;
  border: 1px solid #dbe7f7;
  border-radius: var(--radius-sm);
}

.transfer-import-strip strong {
  margin-right: 10px;
  color: #101828;
}

.transfer-import-strip span:last-child,
#transferImportState {
  color: var(--blue);
  font-weight: 700;
  white-space: nowrap;
}

.transfer-import-overlay {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(15, 23, 42, 0.28);
}

.transfer-import-page {
  width: min(1040px, calc(100vw - 72px));
  max-height: calc(100vh - 72px);
  display: grid;
  grid-template-rows: auto auto minmax(240px, 320px) auto;
  gap: 10px;
  padding: 14px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #d6e4f6;
  border-radius: 8px;
  box-shadow: 0 24px 70px rgba(16, 24, 40, 0.2);
}

.transfer-import-head,
.transfer-import-head-actions,
.transfer-import-modebar,
.transfer-import-steps,
.transfer-import-foot {
  display: flex;
  align-items: center;
  gap: 8px;
}

.transfer-import-head {
  justify-content: space-between;
  min-width: 0;
}

.transfer-import-head span {
  display: block;
  color: #667085;
  font-size: 12px;
}

.transfer-import-head strong {
  color: #101828;
  font-size: 18px;
}

.transfer-import-head-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
}

.transfer-import-head-actions label,
.transfer-import-modebar label,
.transfer-import-steps label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #344054;
  font-size: 13px;
}

.transfer-import-input {
  height: 100%;
  min-height: 160px;
  resize: none;
}

.transfer-import-targetbar {
  display: grid;
  grid-template-columns: minmax(220px, 0.8fr) minmax(420px, 1.8fr);
  align-items: end;
  gap: 10px;
  padding: 10px;
  background: #f8fbff;
  border: 1px solid #dbe7f7;
  border-radius: var(--radius-sm);
}

.transfer-import-targetbar > div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.transfer-import-targetbar label {
  color: #344054;
  font-size: 12px;
  font-weight: 700;
}

.transfer-import-targetbar select,
.transfer-import-targetbar input {
  min-width: 0;
}

.transfer-dir-control {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
}

.transfer-dir-display {
  width: 100%;
  height: 36px;
  justify-content: flex-start;
  padding: 0 12px;
  overflow: hidden;
  color: #344054;
  background: #fff;
  border: 1px solid #d7dfec;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.transfer-dir-display:hover,
.transfer-dir-display:focus-visible {
  color: var(--blue);
  border-color: #9fc0ff;
  box-shadow: 0 0 0 3px rgba(23, 100, 255, 0.1);
}

.transfer-import-editor-grid {
  min-height: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.transfer-import-body-grid {
  min-height: 0;
  display: grid;
  grid-template-columns: 168px minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
}

.transfer-import-body-grid > .transfer-import-simple-actions {
  order: -1;
}

.transfer-import-editor-grid section {
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 8px;
}

.transfer-import-editor-grid h3 {
  margin: 0;
  color: #101828;
  font-size: 16px;
}

.transfer-import-simple-actions {
  position: relative;
  z-index: 6;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 10px;
  padding: 10px;
  background: #f8fbff;
  border: 1px solid #dbe7f7;
  border-radius: var(--radius-sm);
  box-shadow: none;
  overflow: hidden;
}

.transfer-import-simple-actions #textImportInlineState {
  min-width: 0;
  margin-left: 0;
  overflow: hidden;
  color: #667085;
  font-size: 12px;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.transfer-import-simple-actions button,
.transfer-delay-control {
  width: 100%;
  min-height: 36px;
  flex: 0 0 auto;
  justify-content: center;
  white-space: nowrap;
}

.transfer-hidden-fields {
  display: none;
}

.transfer-import-modebar {
  color: #344054;
}

.transfer-import-steps {
  flex-wrap: wrap;
  padding: 8px;
  background: #f8fbff;
  border: 1px solid #dbe7f7;
  border-radius: var(--radius-sm);
}

.transfer-import-tablewrap {
  min-height: 0;
  overflow: auto;
  border: 1px solid #dbe7f7;
  border-radius: var(--radius-sm);
}

.transfer-import-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 12px;
}

.transfer-import-table th,
.transfer-import-table td {
  padding: 9px 10px;
  border-bottom: 1px solid #edf2f8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.transfer-import-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  color: #344054;
  background: #f0f6ff;
  font-weight: 700;
}

.transfer-import-table th:nth-child(1) { width: 46px; }
.transfer-import-table th:nth-child(3) { width: 86px; }
.transfer-import-table th:nth-child(5) { width: 74px; }
.transfer-import-table th:nth-child(6) { width: 130px; }
.transfer-import-table th:nth-child(7) { width: 76px; }

.transfer-import-empty {
  height: 120px;
  color: #98a2b3;
  text-align: center;
}

.transfer-import-foot {
  justify-content: space-between;
  color: #667085;
  font-size: 12px;
}
.folder-tabs-list { height: 340px; margin-top: 10px; }
.fast-copy-options label {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #475467;
  font-size: 12px;
}
.fast-copy-options input[type="number"] { width: 90px; }
.c-clean-check {
  width: 16px;
  height: 16px;
}
.audit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}
.audit-card {
  min-height: 92px;
  padding: 12px;
  border: 1px solid var(--line);
  background: #fff;
}
.audit-card strong,
.audit-card span {
  display: block;
}
.audit-card strong { color: #101828; font-size: 14px; }
.audit-card span { margin-top: 4px; color: #667085; font-size: 12px; }
.audit-card p { margin: 8px 0 0; color: #475467; font-size: 12px; line-height: 1.55; }
.audit-card.good { border-left: 4px solid #16a34a; }
.audit-card.warn { border-left: 4px solid #f59e0b; }
.audit-card.todo { border-left: 4px solid #98a2b3; }
.audit-subtitle { margin: 8px 0 6px; font-size: 15px; }

@media (max-width: 1280px) {
  .netdisk-pan-shell { grid-template-columns: 190px minmax(0, 1fr); }
  .netdisk-pan-accountbar { grid-template-columns: minmax(290px, 1fr) minmax(300px, 1fr); }
  .netdisk-pan-accountstatus { display: none; }
  .netdisk-pan-provider { min-width: 88px; }
}

@media (max-width: 980px) {
  .netdisk-pan-shell { grid-template-columns: 1fr; }
  .netdisk-pan-sidebar { display: none; }
  .netdisk-pan-accountbar { grid-template-columns: 1fr; }
  .netdisk-pan-pathbar { grid-template-columns: auto 1fr auto auto; }
  .netdisk-pan-search { grid-column: 1 / -1; }
}

/* 2026 UI polish layer: keep the old renderer stable, but make every page read like one product. */
:root {
  --radius-xs: 4px;
  --radius-sm: 6px;
  --shadow-card: 0 10px 26px rgba(16, 24, 40, 0.055);
  --shadow-card-hover: 0 18px 42px rgba(23, 100, 255, 0.13);
}

* {
  scrollbar-width: thin;
  scrollbar-color: #c7d6ec transparent;
}

::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-thumb {
  background: #c7d6ec;
  border-radius: 999px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

body {
  background: #f5f7fb;
}

.app {
  background: #f5f7fb;
}

.titlebar {
  height: 30px;
  background: #fff;
  box-shadow: none;
}

.brand-mark {
  width: 19px;
  height: 19px;
  border-radius: 4px;
  box-shadow: none;
}

.brand strong {
  font-size: 16px;
  font-weight: 400;
}

.brand span {
  display: none;
}

.soft-action,
.icon-button,
.window-button,
.back-button,
.primary,
.secondary,
.danger,
.compact-button,
.text-button.mini-help,
.feature-help-trigger,
.netdisk-pan-outline,
.netdisk-pan-operationbar button,
.netdisk-pan-pathbar button,
.netdisk-pan-taskbar button,
.folder-native-bar button,
.folder-tabs-bar button,
.folder-bookmark-bar button,
.enhancement-row button.secondary,
.enhancement-panel .inline-actions button {
  border-radius: var(--radius-sm);
}

.primary,
.back-button {
  box-shadow: 0 8px 18px rgba(23, 100, 255, 0.16);
}

.primary:hover,
.back-button:hover {
  background: var(--blue-dark);
}

.secondary:hover,
.soft-action:hover,
.compact-button:hover,
.netdisk-pan-outline:hover {
  border-color: #9fc0ff;
  background: #f5f9ff;
}

.content {
  padding: 18px 24px 22px;
}

.notice-bar,
.wp-step-notice,
.feature-help {
  border-radius: var(--radius-sm);
  box-shadow: 0 6px 18px rgba(16, 24, 40, 0.04);
}

.tabs {
  gap: 8px;
  margin-bottom: 18px;
  padding: 4px;
  background: #edf3fb;
  border: 1px solid #dbe6f4;
  border-radius: var(--radius-sm);
}

.tabs button {
  height: 44px;
  min-width: 100px;
  padding: 0 18px;
  border: 0;
  border-radius: var(--radius-xs);
  background: transparent;
  color: #526277;
  font-size: 14px;
  font-weight: 750;
}

.tabs button:last-child {
  border-right: 0;
}

.tabs .active {
  background: #fff;
  box-shadow: 0 8px 18px rgba(16, 24, 40, 0.08);
}

.tool-grid {
  gap: 16px;
  padding: 12px 8px 24px;
}

.tool-card {
  min-height: 108px;
  min-width: 0;
  gap: 16px;
  padding: 18px 20px;
  border-color: #e3ebf6;
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-card);
  overflow: hidden;
}

.tool-card:hover {
  border-color: #abc7ff;
  box-shadow: var(--shadow-card-hover);
  transform: translateY(-1px);
}

.tool-card:focus-visible {
  outline: 3px solid rgba(23, 100, 255, 0.16);
  outline-offset: 2px;
}

.tool-icon {
  width: 54px;
  height: 54px;
  border-radius: var(--radius-sm);
  box-shadow: inset 0 -12px 24px rgba(0, 0, 0, 0.08);
}

.tool-copy strong {
  width: 100%;
  margin-bottom: 6px;
  font-size: 17px;
}

.tool-copy small {
  color: #667085;
  font-size: 12px;
  overflow: hidden;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.tool-card.long-desc .tool-copy small {
  column-count: 2;
  column-gap: 12px;
  max-height: 3.1em;
}

.status-badge {
  top: 10px;
  right: 12px;
  border-radius: 999px;
}

.tool-view {
  border-color: #dfe8f5;
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: var(--shadow-card);
  overflow: hidden;
}

.tool-header {
  min-height: 64px;
  padding: 10px 16px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}

.tool-title h1 {
  font-size: 18px;
}

.work-panel {
  padding: 14px;
  background: #fbfdff;
}

.module-grid,
.publish-grid,
.wp-two-column,
.target-grid,
.desktop-multi-grid,
.video-option-grid,
.audit-grid,
.netdisk-context-grid {
  gap: 12px;
}

.panel,
.field-card,
.publish-card,
.target-field,
.drive-card,
.subtool-link,
.nested-panel,
.compact-tool-panel,
.copy-list-panel,
.netdisk-multi-panel,
.quick-help-panel,
.enhancement-panel,
.audit-card,
.qdir-pane,
.account-row,
.history-row,
.folder-bookmark-bar,
.folder-native-bar {
  border-color: #dfe8f5;
  border-radius: var(--radius-sm);
  background: #fff;
  box-shadow: 0 6px 18px rgba(16, 24, 40, 0.035);
}

.panel h2,
.compact-tool-panel h2,
.enhancement-head h2,
.qdir-head h2 {
  font-size: 17px;
  letter-spacing: 0;
}

.field-row {
  margin-bottom: 7px;
}

.field-row label,
.publish-field label,
.target-field span,
.field-card span,
.desktop-field label,
.multi-field label {
  color: #344054;
  font-size: 13px;
  font-weight: 750;
}

input,
select,
textarea,
.readonly-value,
.shares-table .share-link-cell,
.netdisk-pan-pathbar input,
.netdisk-pan-search input,
.enhancement-panel input,
.enhancement-panel textarea {
  border-color: #d4deeb;
  border-radius: var(--radius-xs);
  background: #fff;
}

input:hover,
select:hover,
textarea:hover {
  border-color: #b9c9df;
}

textarea {
  min-height: 180px;
}

.field-row.stack textarea {
  min-height: 116px;
}

.field-row.stack textarea.compact-textarea {
  min-height: 92px;
}

.field-row.stack textarea.compact-textarea.small {
  min-height: 46px;
}

.option-grid {
  gap: 8px 12px;
}

.option-grid label,
.inline-check,
.fast-copy-options label {
  min-height: 30px;
  padding: 0 2px;
}

input[type="checkbox"],
input[type="radio"],
.field-card input[type="checkbox"],
.field-card input[type="radio"],
.enhancement-panel input[type="checkbox"],
.enhancement-panel input[type="radio"] {
  width: 16px;
  height: 16px;
  min-width: 16px;
  flex: 0 0 16px;
  padding: 0;
  margin: 0;
  accent-color: var(--blue);
  box-shadow: none;
}

.check-line {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 28px;
  color: #344054;
  font-size: 13px;
  font-weight: 700;
}

.table-scroll,
.data-table,
.enhancement-list,
.enhancement-preview,
.qdir-list,
.netdisk-pan-filetable {
  border-color: #dfe8f5;
  border-radius: var(--radius-sm);
}

.data-table th,
.netdisk-pan-filetable th {
  background: #f3f7fc;
  color: #5f6f84;
  font-size: 12px;
}

.data-table td,
.netdisk-pan-filetable td {
  border-bottom-color: #edf2f8;
}

.data-table tbody tr:hover,
.netdisk-pan-filetable tbody tr:hover,
.enhancement-row:hover,
.qdir-entry:hover {
  background: #f5f9ff;
}

.process-drawer {
  margin: 0 16px 10px;
  padding: 8px 10px;
  border-color: #dfe8f5;
  border-radius: var(--radius-sm);
  background: #fff;
  box-shadow: 0 6px 18px rgba(16, 24, 40, 0.04);
}

.process-head {
  margin-bottom: 5px;
}

.process-head strong {
  font-size: 13px;
}

.process-head span {
  font-size: 12px;
}

#processLog {
  height: 92px;
  min-height: 72px;
  margin: 6px 0 0;
  padding: 7px 9px;
  color: #2f3b4c;
  background: #f6f8fb;
  border-color: #e4ebf5;
  border-radius: var(--radius-xs);
  font-size: 11px;
}

.work-panel:has(.netdisk-transfer-panel) ~ .process-drawer #processLog {
  height: 150px;
  min-height: 132px;
}

.netdisk-transfer-panel .transfer-context-grid {
  grid-template-columns: minmax(120px, 0.7fr) minmax(180px, 1fr) minmax(360px, 2fr);
}

.tool-view:has(.process-drawer:not(.hidden)) {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 20vw);
}

.tool-view:has(.process-drawer:not(.hidden)) .process-drawer {
  margin: 12px 14px 12px 0;
}

.category-menu {
  padding-top: 10px;
}

.category-group {
  border-color: #dfe8f5;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
}

.category-group-toggle {
  min-height: 46px;
  background: #fff;
}

.category-link {
  height: 44px;
  border-radius: 7px;
}

.category-icon {
  color: currentColor;
}

.netdisk-pan-shell {
  border-color: #dfe8f5;
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-card);
}

.netdisk-pan-sidebar {
  background: #f4f7fb;
}

.netdisk-pan-brand,
.netdisk-pan-provider,
.netdisk-pan-provider > span,
.netdisk-pan-navitem,
.netdisk-pan-index,
.netdisk-pan-filemark,
.qdir-entry-icon {
  border-radius: var(--radius-sm);
}

.netdisk-pan-accountbar,
.netdisk-pan-operationbar,
.netdisk-pan-pathbar,
.netdisk-pan-taskbar,
.netdisk-pan-embedded-head {
  background: #fff;
}

.netdisk-pan-embedded {
  background: #f7f9fc;
}

.netdisk-pan-embedded-content {
  padding: 10px 12px;
}

.netdisk-pan-embedded-log {
  min-height: 148px;
  max-height: 232px;
  padding: 7px 12px;
}

.netdisk-pan-embedded-log #netdiskPanEmbeddedLog {
  height: 104px;
  color: #2f3b4c;
  background: #f6f8fb;
  border: 1px solid #e4ebf5;
  border-radius: var(--radius-xs);
  font-size: 11px;
}

.feature-help-popover {
  background: #26364d;
  box-shadow: 0 18px 38px rgba(16, 24, 40, 0.18);
}

.empty-state,
.empty-hint,
.netdisk-pan-empty {
  color: #8a98aa;
}

/* Visible refresh layer: make the loaded stylesheet immediately recognizable. */
.sidebar {
  width: 248px;
  background: linear-gradient(180deg, #f7faff 0%, #f1f5fb 100%);
  box-shadow: inset -1px 0 0 #d8e2f0;
}

.category-group {
  margin-left: 18px;
  margin-right: 0;
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 22px rgba(16, 24, 40, 0.055), -7px 0 0 rgba(23, 100, 255, 0.08);
}

.category-group::before {
  left: -9px;
  top: 14px;
  bottom: 14px;
  width: 13px;
  border-left-width: 3px;
  border-top-width: 3px;
  border-bottom-width: 3px;
  border-left-color: rgba(23, 100, 255, 0.78);
  border-top-color: rgba(23, 100, 255, 0.35);
  border-bottom-color: rgba(23, 100, 255, 0.35);
}

.category-group:nth-child(2)::before {
  border-left-color: rgba(11, 143, 114, 0.82);
  border-top-color: rgba(11, 143, 114, 0.35);
  border-bottom-color: rgba(11, 143, 114, 0.35);
}

.category-group-toggle {
  padding-left: 12px;
}

.category-group-items {
  padding-left: 10px;
}

/* Netdisk workbench viewport fix: the page shell stays still, inner work areas scroll. */
.tool-tabs.hidden {
  display: none;
}

.tool-grid.netdisk-pan-grid {
  min-height: 0;
  overflow: hidden;
}

.tool-grid.netdisk-pan-grid .netdisk-pan-shell {
  height: calc(100vh - 154px);
  min-height: 0;
  max-height: calc(100vh - 154px);
  overflow: hidden;
}

.tool-grid.netdisk-pan-grid .netdisk-pan-sidebar,
.tool-grid.netdisk-pan-grid .netdisk-pan-main,
.tool-grid.netdisk-pan-grid .netdisk-pan-panelhost,
.tool-grid.netdisk-pan-grid .netdisk-pan-embedded {
  min-height: 0;
  overflow: hidden;
}

.tool-grid.netdisk-pan-grid .netdisk-pan-panelhost {
  grid-template-rows: auto auto minmax(0, 1fr) auto;
}

.tool-grid.netdisk-pan-grid .netdisk-pan-filetable {
  min-height: 0;
  height: auto;
  overflow: auto;
  overscroll-behavior: contain;
}

.tool-grid.netdisk-pan-grid .netdisk-pan-embedded {
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.tool-grid.netdisk-pan-grid .netdisk-pan-embedded-content {
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
}

.tool-grid.netdisk-pan-grid .netdisk-pan-embedded-log {
  max-height: 220px;
}

.category-group-items::before {
  left: 18px;
  width: 2px;
  background: linear-gradient(180deg, rgba(23, 100, 255, 0), rgba(23, 100, 255, 0.34), rgba(23, 100, 255, 0));
}

.category-link {
  width: calc(100% - 14px);
  margin-left: 7px;
  padding-left: 17px;
}

.category-link.active {
  background: linear-gradient(90deg, #ddecff 0%, #eaf3ff 100%);
  box-shadow: inset 5px 0 0 var(--blue), 0 8px 18px rgba(23, 100, 255, 0.08);
}

.content {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.55), rgba(247, 250, 255, 0.9)),
    #f6f9fe;
}

.notice-bar {
  border-left: 4px solid #f4b740;
}

.tool-view,
.netdisk-pan-shell {
  border: 1px solid #cfdced;
  box-shadow: 0 16px 42px rgba(31, 53, 82, 0.1);
}

.netdisk-pan-sidebar {
  background: linear-gradient(180deg, #eef5ff 0%, #f8fbff 100%);
}

.netdisk-pan-brand {
  min-height: 64px;
  border-radius: 8px;
  box-shadow: 0 12px 26px rgba(23, 100, 255, 0.22);
}

.netdisk-pan-navitem.active {
  background: linear-gradient(90deg, #dceaff 0%, #eef5ff 100%);
  border-left-width: 5px;
  box-shadow: 0 8px 18px rgba(23, 100, 255, 0.09);
}

.netdisk-pan-accountbar {
  box-shadow: 0 1px 0 #dfe8f5, 0 10px 18px rgba(16, 24, 40, 0.035);
}

.netdisk-pan-provider.active {
  background: #e1eeff;
  border-color: #7fb0ff;
  box-shadow: inset 0 -3px 0 var(--blue), 0 8px 18px rgba(23, 100, 255, 0.12);
}

.panel,
.field-card,
.publish-card,
.target-field,
.drive-card,
.account-row,
.history-row {
  border-color: #d4e0ef;
}

.compact-label {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  cursor: help;
  white-space: nowrap;
}

.compact-label::after {
  content: attr(data-full-label);
  position: absolute;
  left: 0;
  bottom: calc(100% + 8px);
  z-index: 80;
  min-width: max-content;
  max-width: min(360px, 68vw);
  padding: 7px 10px;
  color: #fff;
  background: #26364d;
  border-radius: 6px;
  box-shadow: 0 12px 26px rgba(16, 24, 40, 0.22);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.45;
  opacity: 0;
  pointer-events: none;
  transform: translateY(4px);
  transition: opacity 0.12s ease, transform 0.12s ease;
  white-space: normal;
}

.compact-label::before {
  content: "";
  position: absolute;
  left: 12px;
  bottom: calc(100% + 2px);
  z-index: 81;
  border: 6px solid transparent;
  border-top-color: #26364d;
  opacity: 0;
  pointer-events: none;
  transform: translateY(4px);
  transition: opacity 0.12s ease, transform 0.12s ease;
}

.compact-label:hover::after,
.compact-label:hover::before,
.compact-label:focus-visible::after,
.compact-label:focus-visible::before {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 760px) {
  .tool-view:has(.scan-cleanup-workbench) .work-panel {
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
  }

  .scan-cleanup-workbench {
    height: auto;
    grid-template-columns: minmax(0, 1fr);
    overflow: visible;
  }

  .scan-cleanup-main {
    grid-template-rows: auto auto auto;
    overflow: visible;
  }

  .scan-cleanup-step > header > div {
    align-items: flex-start;
    flex-direction: column;
    gap: 2px;
  }

  .scan-cleanup-step > header small {
    white-space: normal;
  }

  .scan-cleanup-scope,
  .scan-cleanup-rules {
    grid-template-columns: minmax(0, 1fr);
  }

  .scan-cleanup-scope button {
    min-height: 38px;
  }

  .c-clean-risk-options {
    grid-template-columns: minmax(0, 1fr);
  }

  .c-clean-result-row {
    grid-template-columns: 16px minmax(0, 1fr) auto;
  }

  .c-clean-result-row > b {
    grid-column: 2 / 4;
    display: flex;
    align-items: center;
    gap: 8px;
    text-align: left;
  }

  .ocr-extract-settings,
  .ocr-extract-settings > label,
  .ocr-output-control {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .ocr-extract-result-row {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .ocr-extract-result-row > b {
    grid-column: 1;
    grid-row: 2;
  }

  .scan-cleanup-results-step {
    min-height: 420px;
  }

  .scan-cleanup-task-center {
    grid-template-rows: auto auto auto 200px;
    overflow: hidden;
  }

  .tool-view:has(.lightweight-text-workbench) .work-panel {
    overflow-x: hidden;
    overflow-y: auto;
  }

  .lightweight-text-workbench {
    height: auto;
    grid-template-rows: auto auto auto;
    overflow: visible;
  }

  .lightweight-text-head {
    align-items: flex-start;
  }

  .lightweight-text-head > div span {
    white-space: normal;
  }

  .lightweight-editor-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .lightweight-generator-panel {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .lightweight-generator-panel > div:first-child {
    grid-column: 1 / -1;
  }

  .lightweight-editor-pane {
    min-height: 360px;
  }

  .lightweight-path-row {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .lightweight-path-row > span {
    grid-column: 1 / -1;
  }

  .lightweight-status-bar {
    align-items: stretch;
    flex-direction: column;
  }

  .lightweight-status-metrics {
    justify-content: space-between;
  }
}

@media (max-width: 430px) {
  .titlebar {
    padding: 0 6px;
  }

  .brand {
    min-width: 0;
    gap: 6px;
  }

  .brand-mark {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
  }

  .brand-icon {
    width: 22px;
    height: 22px;
  }

  .brand strong {
    overflow: hidden;
    font-size: 17px;
    white-space: nowrap;
  }

  .brand span {
    display: none;
  }

  .titlebar-actions {
    gap: 2px;
  }

  .titlebar-actions .icon-button,
  .titlebar-actions .window-button {
    width: 30px;
  }

  .tool-view:has(.scan-cleanup-workbench) .tool-header {
    height: auto;
    min-height: 0;
    flex-wrap: wrap;
  }

  .tool-view:has(.scan-cleanup-workbench) .tool-title {
    flex: 1 0 100%;
    width: 100%;
  }

  .tool-view:has(.scan-cleanup-workbench) .toolbar {
    flex: 1 0 100%;
    width: 100%;
  }

  .tool-view:has(.scan-cleanup-workbench) #duplicateScanBtn {
    width: 100%;
  }

  .tool-view:has(.lightweight-text-workbench) .tool-header {
    height: auto;
    min-height: 0;
    flex-wrap: wrap;
  }

  .tool-view:has(.lightweight-text-workbench) .tool-title {
    flex: 1 0 100%;
    width: 100%;
  }

  .tool-view:has(.lightweight-text-workbench) .toolbar {
    flex: 1 0 100%;
    width: 100%;
  }

  .tool-view:has(.lightweight-text-workbench) #dataToolRunBtn {
    width: 100%;
  }

  .lightweight-text-head {
    align-items: stretch;
    flex-direction: column;
  }

  .lightweight-page-settings {
    width: 100%;
    justify-content: space-between;
  }

  .lightweight-setting-control {
    flex: 1;
    justify-content: space-between;
  }

  .lightweight-setting-control select {
    width: min(150px, 60%);
  }

  .lightweight-editor-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .lightweight-editor-actions {
    width: 100%;
  }

  .lightweight-editor-actions button {
    flex: 1;
  }

  .lightweight-generator-panel {
    grid-template-columns: minmax(0, 1fr);
  }

  .lightweight-generator-panel > button {
    width: 100%;
  }
}

@media (max-width: 760px) {
  .tool-view:has(.download-task-workbench) .work-panel {
    overflow-x: hidden;
    overflow-y: auto;
  }

  .download-task-workbench {
    height: auto;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

  .download-task-main {
    display: flex;
    flex-direction: column;
  }

  .download-task-main > .download-task-stage {
    flex: 0 0 auto;
  }

  .download-task-main > .download-queue-stage {
    height: 500px;
  }

  .download-task-stage {
    grid-template-rows: auto auto;
    overflow: visible;
  }

  .download-source-body {
    grid-template-columns: minmax(0, 1fr);
  }

  .download-source-input textarea {
    height: 110px;
  }

  .download-setting-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .download-settings-stage {
    grid-template-rows: auto auto auto;
  }

  .download-advanced-grid {
    position: static;
    margin-top: 5px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    box-shadow: none;
  }

  .download-queue-toolbar {
    align-items: flex-start;
    flex-direction: column;
    padding-block: 5px;
  }

  .download-queue-stage {
    grid-template-rows: auto auto minmax(0, 1fr) auto;
    overflow: hidden;
  }

  .download-queue-row {
    grid-template-columns: 20px 34px minmax(0, 1fr) 70px;
  }

  .download-queue-row > em {
    display: none;
  }

  .download-queue-row > button {
    grid-column: 3 / -1;
    width: max-content;
    justify-self: end;
  }

  .download-task-center {
    grid-template-rows: auto auto auto 200px;
    padding-left: 0;
    border-left: 0;
  }
}

@media (max-width: 430px) {
  .tool-view:has(.download-task-workbench) .tool-header {
    height: auto;
    min-height: 0;
    flex-wrap: wrap;
  }

  .tool-view:has(.download-task-workbench) .tool-title,
  .tool-view:has(.download-task-workbench) .toolbar {
    flex: 1 0 100%;
    width: 100%;
  }

  .tool-view:has(.download-task-workbench) .tool-title > button {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .tool-view:has(.download-task-workbench) #youtubeDownloadPrimaryBtn {
    flex: 1;
  }

  .download-task-stage > header {
    align-items: flex-start;
    padding-block: 7px;
  }

  .download-task-stage > header > div {
    align-items: flex-start;
    flex-direction: column;
    gap: 2px;
  }

  .download-task-stage > header small {
    white-space: normal;
  }

  .download-task-stage > header em {
    display: none;
  }

  .download-source-modes {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
  }

  .download-source-modes button {
    width: 100%;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .download-destination-fields > label {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .download-destination-fields > label span {
    grid-column: 1 / -1;
  }

  .download-setting-grid,
  .download-advanced-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .download-advanced-settings summary span {
    display: none;
  }

  .download-queue-toolbar > div {
    width: 100%;
    overflow-x: auto;
  }

  .download-queue-row {
    grid-template-columns: 18px 30px minmax(0, 1fr) 62px;
    gap: 5px;
    padding-inline: 6px;
  }

  .download-platform-mark {
    width: 28px;
  }

  .download-queue-stage > footer {
    align-items: flex-start;
    flex-direction: column;
    gap: 2px;
    padding-block: 5px;
  }
}

.tool-view:has(.media-processing-workbench) .work-panel {
  min-height: 0;
  overflow: hidden;
}

.media-processing-workbench {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 276px;
  gap: 10px;
}

.media-processing-main {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: 240px 132px 108px minmax(0, 1fr);
  gap: 8px;
}

.media-processing-stage {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: 38px minmax(0, 1fr);
  overflow: hidden;
  background: #fff;
  border: 1px solid #dce6f4;
  border-radius: 8px;
}

.media-processing-stage > header {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 10px;
  background: #f8fafc;
  border-bottom: 1px solid #e7edf6;
}

.media-processing-stage > header > span {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: grid;
  place-items: center;
  color: #175cd3;
  background: #e8f1ff;
  border-radius: 6px;
  font-weight: 800;
}

.media-processing-stage:nth-child(2) > header > span {
  color: var(--teal);
  background: var(--soft-teal);
}

.media-processing-stage:nth-child(3) > header > span {
  color: var(--amber);
  background: var(--soft-amber);
}

.media-processing-stage:nth-child(4) > header > span {
  color: #087ea4;
  background: var(--soft-cyan);
}

.media-processing-stage > header > div {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.media-processing-stage > header strong {
  white-space: nowrap;
}

.media-processing-stage > header small,
.media-processing-stage > header em {
  color: #667085;
  font-size: 11px;
  font-style: normal;
}

.media-processing-stage > header em {
  margin-left: auto;
  white-space: nowrap;
}

.media-preview-layout {
  min-height: 0;
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 8px;
  padding: 8px;
}

.media-source-column,
.media-preview-pane {
  min-width: 0;
  min-height: 0;
}

.media-source-column {
  display: grid;
  grid-template-rows: 30px 56px minmax(0, 1fr);
  gap: 6px;
}

.media-source-actions {
  display: flex;
  gap: 6px;
}

.media-source-actions button {
  height: 30px;
  padding: 0 12px;
}

.media-source-column textarea {
  width: 100%;
  height: 56px;
  min-height: 56px;
  resize: none;
  padding: 7px 9px;
  border: 1px solid #d6e0ee;
  border-radius: 6px;
  line-height: 1.4;
}

.media-source-list {
  min-height: 0;
  overflow-y: auto;
  border-top: 1px solid #e7edf6;
}

.media-source-empty,
.media-result-empty {
  height: 100%;
  display: grid;
  place-items: center;
  color: #8a98ad;
  font-size: 12px;
  text-align: center;
}

.media-source-item {
  min-width: 0;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
  padding: 5px 6px;
  border-bottom: 1px solid #edf1f6;
}

.media-source-item.active {
  background: #eef5ff;
  box-shadow: inset 2px 0 0 #1764ff;
}

.media-source-item > button {
  min-width: 0;
  padding: 0;
  color: #101828;
  background: transparent;
  text-align: left;
}

.media-source-item strong,
.media-source-item small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.media-source-item small {
  margin-top: 2px;
  color: #667085;
  font-size: 10px;
}

.media-source-item > em {
  color: #175cd3;
  font-size: 10px;
  font-style: normal;
  white-space: nowrap;
}

.media-source-item.done > em { color: #0b8f55; }
.media-source-item.failed > em { color: #d92d20; }

.media-preview-pane {
  display: grid;
  grid-template-rows: minmax(0, 1fr) 42px;
  border: 1px solid #dce6f4;
  border-radius: 6px;
  overflow: hidden;
}

.media-preview-frame {
  position: relative;
  min-height: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #111827;
}

.media-preview-frame video {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.media-preview-empty {
  position: absolute;
  inset: 0;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 4px;
  color: #d0d5dd;
  background: #111827;
  text-align: center;
}

.media-preview-empty strong {
  color: #fff;
}

.media-preview-empty span {
  font-size: 11px;
}

.media-preview-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: center;
  background: #f8fafc;
  border-top: 1px solid #e7edf6;
}

.media-preview-meta span {
  min-width: 0;
  display: grid;
  gap: 1px;
  padding: 0 8px;
  border-right: 1px solid #e7edf6;
}

.media-preview-meta span:last-child {
  border-right: 0;
}

.media-preview-meta b {
  color: #667085;
  font-size: 9px;
  font-weight: 600;
}

.media-preview-meta em {
  overflow: hidden;
  color: #344054;
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.media-compress-settings,
.media-generic-settings,
.image-processing-settings {
  min-height: 0;
  display: grid;
  grid-template-columns: 1.35fr 1fr 1fr 1.35fr;
  gap: 8px;
  padding: 8px;
}

.image-processing-settings {
  grid-template-columns: repeat(auto-fit, minmax(104px, 1fr));
}

.image-processing-settings > label:has(.media-setting-path) {
  grid-column: span 2;
}

.media-compress-settings > label,
.media-compress-settings > div,
.media-generic-settings > label,
.media-generic-settings > div,
.image-processing-settings > label,
.image-processing-settings > div {
  min-width: 0;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 6px 8px;
  background: #fbfcfe;
  border: 1px solid #e2e8f2;
  border-radius: 6px;
}

.media-generic-settings > label {
  gap: 3px;
  padding: 4px 6px;
}

.media-compress-settings strong,
.media-generic-settings strong,
.image-processing-settings strong {
  font-size: 11px;
}

.media-compress-settings select,
.media-generic-settings select,
.media-generic-settings input,
.image-processing-settings select,
.image-processing-settings input {
  width: 100%;
  height: 30px;
  border: 1px solid #d6e0ee;
  border-radius: 6px;
}

.media-compress-settings > div span,
.media-generic-settings span,
.media-generic-settings small,
.image-processing-settings span,
.image-processing-settings small {
  color: #667085;
  font-size: 10px;
  line-height: 1.4;
}

.media-setting-path {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px;
}

.media-setting-path input {
  min-width: 0;
}

.media-preview-pane.is-audio {
  background: #f8fafc;
}

.media-preview-pane.is-audio .media-preview-frame {
  padding: 18px;
  background: #f8fafc;
}

.media-preview-frame audio {
  width: min(100%, 520px);
}

.image-preview-pane .media-preview-frame {
  background: #f4f6f9;
}

.image-preview-pane .media-preview-frame img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.image-preview-pane .media-preview-empty {
  color: #667085;
  background: #f4f6f9;
}

.image-preview-pane .media-preview-empty strong {
  color: #344054;
}

.image-readonly-note {
  display: flex;
  align-items: center;
}

.media-preview-pane.is-audio .media-preview-empty {
  color: #667085;
  background: #f8fafc;
}

.media-preview-pane.is-audio .media-preview-empty strong {
  color: #344054;
}

.media-crf-control > span {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}

.media-crf-control output {
  color: #175cd3;
  font-size: 10px;
  white-space: nowrap;
}

.media-crf-control input {
  width: 100%;
  accent-color: #1764ff;
}

.media-output-row {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, 1fr);
  align-items: center;
  gap: 8px;
  padding: 8px;
}

.media-output-row label {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}

.media-output-row input {
  width: 100%;
  height: 34px;
  border: 1px solid #d6e0ee;
  border-radius: 6px;
}

.media-output-row p {
  margin: 0;
  color: #667085;
  font-size: 10px;
  line-height: 1.45;
}

.media-output-row p strong {
  color: #344054;
}

.media-result-list {
  min-height: 0;
  overflow-y: auto;
}

.media-result-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  border-bottom: 1px solid #edf1f6;
}

.media-result-row span {
  min-width: 0;
}

.media-result-row strong,
.media-result-row small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.media-result-row small {
  color: #667085;
  font-size: 10px;
}

.media-result-row em {
  color: #344054;
  font-size: 10px;
  font-style: normal;
  white-space: nowrap;
}

.media-result-row.failed em {
  color: #d92d20;
}

.media-processing-center {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: 136px 104px minmax(150px, 1fr) 200px;
  gap: 8px;
  padding-left: 10px;
  border-left: 1px solid #dce6f4;
}

.media-processing-center > section {
  min-width: 0;
  overflow: hidden;
  padding: 10px;
  background: #fff;
  border: 1px solid #dce6f4;
  border-radius: 8px;
}

.media-processing-center > section:nth-child(1) {
  border-left: 3px solid #4e8ff7;
}

.media-processing-center > section:nth-child(2) {
  border-left: 3px solid #32a477;
}

.media-processing-center > section:nth-child(3) {
  border-left: 3px solid #e0a43a;
}

.media-processing-center > section:nth-child(4) {
  border-left: 3px solid #2aa7c9;
}

.media-processing-center h3 {
  margin: 0 0 8px;
  font-size: 12px;
}

.media-processing-center ul {
  margin: 0;
  padding-left: 16px;
  color: #475467;
  font-size: 11px;
  line-height: 1.6;
}

.media-processing-center .tool-page-log-panel {
  height: 200px;
}

@media (max-width: 760px) {
  .tool-view:has(.media-processing-workbench) .work-panel {
    overflow-x: hidden;
    overflow-y: auto;
  }

  .media-processing-workbench {
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: start;
  }

  .media-processing-main {
    width: 100%;
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
  }

  .media-processing-stage {
    flex: 0 0 auto;
    grid-template-rows: auto auto;
    overflow: visible;
  }

  .media-source-stage {
    height: 620px;
  }

  .media-result-stage {
    height: 260px;
  }

  .media-preview-layout {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: 250px 310px;
  }

  .media-compress-settings,
  .media-generic-settings,
  .image-processing-settings {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .image-processing-settings > label:has(.media-setting-path) {
    grid-column: 1 / -1;
  }

  .media-output-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .media-processing-center {
    width: 100%;
    flex: 0 0 auto;
    grid-template-rows: auto auto auto 200px;
    padding-left: 0;
    border-left: 0;
  }
}

@media (max-width: 430px) {
  .tool-view:has(.media-processing-workbench) .tool-header {
    height: auto;
    min-height: 0;
    flex-wrap: wrap;
  }

  .tool-view:has(.media-processing-workbench) .tool-title,
  .tool-view:has(.media-processing-workbench) .toolbar {
    flex: 1 0 100%;
    width: 100%;
  }

  .tool-view:has(.media-processing-workbench) .tool-title > button {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .tool-view:has(.media-processing-workbench) #mediaCompressPrimaryBtn,
  .tool-view:has(.media-processing-workbench) #genericMediaPrimaryBtn,
  .tool-view:has(.media-processing-workbench) #imageProcessingPrimaryBtn {
    width: 100%;
  }

  .media-processing-stage > header {
    align-items: flex-start;
    padding-block: 7px;
  }

  .media-processing-stage > header > div {
    align-items: flex-start;
    flex-direction: column;
    gap: 2px;
  }

  .media-processing-stage > header small {
    white-space: normal;
  }

  .media-processing-stage > header em {
    display: none;
  }

  .media-source-stage {
    height: 680px;
  }

  .media-preview-layout {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: 280px 320px;
  }

  .media-compress-settings,
  .media-generic-settings,
  .image-processing-settings {
    grid-template-columns: minmax(0, 1fr);
  }

  .media-output-row label {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .media-output-row label span {
    grid-column: 1 / -1;
  }

  .media-preview-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 34px;
  }

  .media-preview-pane {
    grid-template-rows: minmax(0, 1fr) 68px;
  }

  .media-preview-meta span:nth-child(2) {
    border-right: 0;
  }
}

/* Content collection and publishing workbenches */
.content-flow-workbench {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 10px;
  width: 100%;
  height: 100%;
  min-height: 0;
  overflow: hidden;
}

.content-flow-main,
.content-flow-aside {
  min-width: 0;
  min-height: 0;
}

.content-flow-main {
  display: flex;
  flex-direction: column;
  gap: 8px;
  overflow: hidden;
}

.content-flow-step,
.content-flow-result {
  min-width: 0;
  padding: 10px;
  background: #fff;
  border: 1px solid var(--line-strong);
  border-radius: 8px;
}

.content-flow-step-head {
  display: grid;
  grid-template-columns: 24px auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.content-flow-step-head > span {
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  color: var(--brand);
  background: #eef5ff;
  border: 1px solid #cfe0ff;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 800;
}

.content-flow-step:nth-child(2) .content-flow-step-head > span {
  color: var(--teal);
  background: var(--soft-teal);
  border-color: #a7e3d2;
}

.content-flow-step:nth-child(3) .content-flow-step-head > span {
  color: var(--amber);
  background: var(--soft-amber);
  border-color: #f0d39b;
}

.content-flow-step-head strong {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.25;
}

.content-flow-step-head small {
  overflow: hidden;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.content-flow-step-body {
  min-width: 0;
  margin-top: 8px;
}

.content-flow-path-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.content-flow-path-grid .field-row,
.content-flow-step-body > .field-row {
  grid-template-columns: 82px minmax(0, 1fr) auto;
  gap: 8px;
  margin: 0;
}

.content-flow-short-row {
  grid-template-columns: 90px 110px minmax(0, 1fr) !important;
}

.content-flow-inline-actions,
.content-flow-task-controls {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.content-flow-inline-actions button,
.content-flow-task-controls button {
  min-width: 0;
  padding-inline: 10px;
}

.content-flow-rule-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(110px, 1fr));
  gap: 8px;
}

.content-flow-rule-grid > label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.content-flow-rule-grid span {
  color: #475467;
  font-size: 11px;
  font-weight: 700;
}

.content-flow-rule-grid input {
  width: 100%;
  min-width: 0;
}

.content-flow-options {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
  min-width: 0;
  margin-top: 8px;
}

.content-flow-options label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #344054;
  font-size: 12px;
  white-space: nowrap;
}

.content-flow-stage-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  min-height: 0;
}

.content-flow-stage {
  min-height: 78px;
}

.content-flow-stage .content-flow-step-body {
  display: flex;
  align-items: center;
  min-height: 26px;
}

.content-flow-action-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.content-flow-action-summary strong {
  color: var(--brand);
}

.content-flow-action-summary span {
  overflow: hidden;
  color: var(--muted);
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.content-flow-mode-switch {
  display: inline-flex;
  padding: 3px;
  background: #f3f6fa;
  border: 1px solid var(--line);
  border-radius: 8px;
}

.content-flow-mode-switch button {
  min-width: 116px;
  color: #475467;
  background: transparent;
  border-color: transparent;
}

.content-flow-mode-switch button.active {
  color: var(--brand);
  background: #fff;
  border-color: #cfe0ff;
}

.content-flow-aside {
  display: grid;
  grid-template-rows: auto minmax(180px, 1fr);
  gap: 8px;
  overflow: hidden;
}

.content-flow-result {
  display: grid;
  gap: 8px;
}

.content-flow-result-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding-top: 7px;
  border-top: 1px solid var(--line);
}

.content-flow-result-status strong {
  color: #344054;
  font-size: 12px;
}

.content-flow-workbench .status-badge {
  position: static;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 24px;
  padding: 3px 8px;
  border-radius: 999px;
}

.content-flow-workbench .status-badge.running {
  color: #175cd3;
  background: #eff8ff;
  border-color: #b2ddff;
}

.content-flow-workbench .status-badge.warning {
  color: #b54708;
  background: #fffaeb;
  border-color: #fedf89;
}

.content-flow-workbench .status-badge.error {
  color: #b42318;
  background: #fef3f2;
  border-color: #fecdca;
}

.content-flow-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.content-flow-stats > div {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: baseline;
  gap: 5px;
  min-width: 0;
  padding: 8px;
  background: #f8fafc;
  border: 1px solid var(--line);
  border-radius: 6px;
}

.content-flow-stats strong {
  color: var(--ink);
  font-size: 18px;
}

.content-flow-stats span {
  overflow: hidden;
  color: var(--muted);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.content-flow-result-text {
  width: 100%;
  min-height: 96px;
  max-height: 145px;
  resize: none;
}

.content-flow-aside .tool-page-log-panel {
  height: auto;
  min-height: 180px;
  margin: 0;
}

.content-flow-task-controls {
  justify-content: flex-end;
}

.content-flow-format-options {
  margin-top: 0;
}

@media (max-width: 980px) {
  .content-flow-workbench {
    grid-template-columns: minmax(0, 1fr);
    height: auto;
    overflow: visible;
  }

  .content-flow-main,
  .content-flow-aside {
    overflow: visible;
  }

  .content-flow-path-grid,
  .content-flow-rule-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 430px) {
  .content-flow-workbench,
  .content-flow-path-grid,
  .content-flow-rule-grid,
  .content-flow-stage-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .content-flow-step-head {
    grid-template-columns: 24px minmax(0, 1fr);
  }

  .content-flow-step-head small {
    grid-column: 2;
    white-space: normal;
  }

  .content-flow-path-grid .field-row,
  .content-flow-step-body > .field-row,
  .content-flow-short-row {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .content-flow-inline-actions,
  .content-flow-action-summary {
    flex-wrap: wrap;
  }

  .content-flow-mode-switch {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .content-flow-mode-switch button {
    min-width: 0;
  }

  .content-flow-action-summary span {
    width: 100%;
    white-space: normal;
  }
}

/* Pantools account capacity stays readable without turning each account into a tall card. */
.netdisk-account-list .account-row {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 0.8fr) auto;
  align-items: center;
  min-height: 64px;
}

.account-identity,
.account-storage-summary {
  min-width: 0;
}

.account-storage-summary {
  display: grid;
  gap: 6px;
}

.account-storage-summary > div:first-child {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: #667085;
  font-size: 11px;
}

.account-storage-summary > div:first-child span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-storage-summary > div:first-child b {
  flex: 0 0 auto;
  color: #344054;
  font-size: 11px;
}

.account-storage-summary.error > div:first-child {
  color: #b54708;
}

.account-storage-meter {
  width: 100%;
  height: 5px;
  overflow: hidden;
  background: #e7edf5;
  border-radius: 3px;
}

.account-storage-meter > i {
  display: block;
  width: 0;
  height: 100%;
  background: #1764ff;
  border-radius: inherit;
  transition: width 0.18s ease;
}

.account-storage-meter.unavailable > i,
.account-storage-summary.loading .account-storage-meter > i,
.account-storage-summary.error .account-storage-meter > i {
  width: 0 !important;
}

.netdisk-pan-accountstatus {
  min-width: 0;
}

.netdisk-pan-accountstatus > div {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.netdisk-pan-accountstatus > div > span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.netdisk-pan-accountstatus .account-storage-meter {
  width: min(100%, 180px);
  max-width: 180px;
}

.netdisk-pan-accountstatus .account-storage-meter > i {
  width: 0;
  height: 100%;
  background: #1764ff;
  border-radius: inherit;
}

@media (max-width: 1100px) {
  .netdisk-account-list .account-row {
    grid-template-columns: minmax(190px, 0.8fr) minmax(210px, 1fr);
  }

  .netdisk-account-list .account-row .inline-actions {
    grid-column: 1 / -1;
    justify-content: flex-end;
  }
}

@media (max-width: 760px) {
  .netdisk-account-list .account-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .netdisk-account-list .account-row .inline-actions {
    grid-column: auto;
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .netdisk-pan-accountstatus {
    min-width: 0;
    width: 100%;
  }

  .netdisk-pan-accountstatus > div {
    width: 100%;
  }
}

/* Final safety net: checkbox/radio must never inherit text-input or card sizing. */
input[type="checkbox"],
input[type="radio"],
label input[type="checkbox"],
label input[type="radio"],
.field-card input[type="checkbox"],
.field-card input[type="radio"] {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  max-width: 16px !important;
  min-height: 16px !important;
  max-height: 16px !important;
  flex: 0 0 16px !important;
  padding: 0 !important;
  margin: 0 !important;
  accent-color: var(--blue);
  box-shadow: none !important;
}


.tutorial-guide-link.gold-tutorial {
  min-width: 96px;
  height: 28px;
  padding: 5px 14px 4px;
  border: 1px solid rgba(240, 180, 41, 0.58);
  border-left: 1px solid rgba(240, 180, 41, 0.58);
  border-radius: 999px;
  color: #9a6500;
  background: linear-gradient(90deg, #fff6d8 0%, #fffdf7 100%);
  box-shadow: inset 0 0 0 1px rgba(240, 180, 41, 0.18);
  font-size: 13px;
  font-weight: 700;
  animation: pantoolsTutorialPulse 2.4s ease-in-out infinite;
}

.tutorial-guide-link.gold-tutorial:hover {
  border-color: #f0b429;
  color: #8a5a00;
  background: linear-gradient(90deg, #fff0b8 0%, #fff9df 100%);
}

.tutorial-guide-link.gold-tutorial > span:not(.tutorial-guide-badge) {
  color: #9a6500;
}

.tutorial-guide-link.gold-tutorial:hover > span:not(.tutorial-guide-badge) {
  color: #8a5a00;
}

.tutorial-guide-link.gold-tutorial .tutorial-guide-badge {
  top: -11px;
  right: 8px;
  padding: 2px 7px;
  color: #8a5a00;
  background: #fff0b8;
  border: 1px solid rgba(240, 180, 41, 0.55);
  border-radius: 999px;
  font-size: 11px;
  line-height: 1.3;
}


.copy-target-scan {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto minmax(150px, 0.8fr) minmax(120px, 0.7fr) 78px;
  gap: 8px;
  align-items: end;
  margin: 8px 0;
}
.copy-target-scan label { display: grid; gap: 4px; color: #667085; font-size: 11px; }
.copy-target-scan input,
.copy-target-scan select { height: 32px; border: 1px solid #d7e2f0; border-radius: 6px; padding: 0 9px; color: #344054; background: #fff; }
.copy-target-scan button { height: 32px; }


.netdisk-operation-target-list {
  display: grid;
  gap: 6px;
  max-height: 124px;
  margin: 8px 0 4px;
  overflow: auto;
}
.netdisk-operation-target-chip {
  min-height: 30px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 24px;
  align-items: center;
  gap: 6px;
  padding: 5px 6px 5px 9px;
  border: 1px solid #dce8f8;
  border-radius: 7px;
  background: #f8fbff;
}
.netdisk-operation-target-chip span { overflow: hidden; color: #344054; font-size: 11px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.netdisk-operation-target-chip button { width: 24px; height: 24px; border: 0; border-radius: 6px; background: #eef4ff; color: #667085; cursor: pointer; }

.netdisk-pan-shell.pantools-shell {
  grid-template-columns: 86px 318px minmax(0, 1fr);
  gap: 0;
  min-height: calc(100vh - 18px);
  background: #f5f6f8;
}

.pantools-shell .netdisk-pan-brand {
  display: none;
}

.pantools-shell .netdisk-pan-sidebar {
  width: 86px;
  padding: 18px 6px 16px;
  align-items: center;
  background: #fff;
  border-right: 1px solid #e6edf7;
}

.pantools-shell .netdisk-pan-navgroup-flat {
  gap: 8px;
  width: 100%;
}

.pantools-shell .netdisk-pan-navitem {
  width: 72px;
  min-height: 62px;
  grid-template-columns: 1fr;
  justify-items: center;
  gap: 5px;
  padding: 8px 5px;
  border-radius: 10px;
  text-align: center;
  box-shadow: none;
  border: 0;
  background: transparent;
}

.pantools-shell .netdisk-pan-navitem .netdisk-pan-index {
  width: 24px;
  height: 24px;
  border-radius: 7px;
  background: transparent;
  color: #667085;
}

.pantools-shell .netdisk-pan-navitem b {
  font-size: 12px;
  line-height: 1.2;
  color: #344054;
}

.pantools-shell .netdisk-pan-navitem small {
  display: none;
}

.pantools-shell .netdisk-pan-navitem.active {
  background: #eaf2ff;
  box-shadow: inset 4px 0 0 var(--blue), 0 12px 28px rgba(23, 100, 255, 0.12);
}

.pantools-shell .netdisk-pan-navitem.active .netdisk-pan-index,
.pantools-shell .netdisk-pan-navitem.active b {
  color: var(--blue);
}

.pantools-account-pool {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 100%;
  padding: 18px 14px 14px;
  border-right: 1px solid #e6edf7;
  background: #fff;
}

.pantools-account-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  padding: 0 4px;
}

.pantools-account-head h2 {
  margin: 0;
  color: #101828;
  font-size: 17px;
  line-height: 1.2;
}

.pantools-account-head span {
  display: inline-grid;
  place-items: center;
  min-width: 30px;
  height: 26px;
  padding: 0 9px;
  border-radius: 999px;
  background: #eaf2ff;
  color: var(--blue);
  font-size: 13px;
  font-weight: 800;
}

body.pantools-app-mode .pantools-tool-category-pool {
  width: 100% !important;
  padding: 16px 12px !important;
  background: #ffffff !important;
  border-right: 1px solid #e6edf7 !important;
}

body.pantools-app-mode .pantools-tool-category-pool .pantools-account-head {
  gap: 10px !important;
  margin: 0 0 22px !important;
  padding: 0 0 0 2px !important;
}

body.pantools-app-mode .pantools-tool-category-pool .pantools-account-head h2 {
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  color: #101828 !important;
}

body.pantools-app-mode .pantools-tool-category-pool .pantools-account-head span {
  min-width: 28px !important;
  height: 24px !important;
  padding: 0 9px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  background: #eaf2ff !important;
  color: #1764ff !important;
}

body.pantools-app-mode .pantools-tool-category-list {
  display: grid !important;
  gap: 14px !important;
}

body.pantools-app-mode .pantools-tool-category-item {
  width: 100% !important;
  min-height: 46px !important;
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 6px 10px !important;
  color: #101828 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  text-align: left !important;
}

body.pantools-app-mode .pantools-tool-category-item span {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  color: #667085 !important;
  background: #f1f5fb !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .pantools-tool-category-item .svg-icon {
  width: 16px !important;
  height: 16px !important;
  stroke-width: 1.9 !important;
}

body.pantools-app-mode .pantools-tool-category-item strong {
  min-width: 0 !important;
  color: #101828 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

body.pantools-app-mode .pantools-tool-category-item.active {
  color: #1764ff !important;
  background: #eaf2ff !important;
  box-shadow: inset 4px 0 0 #1764ff !important;
}

body.pantools-app-mode .pantools-tool-category-item.active span {
  color: #1764ff !important;
  background: #dceaff !important;
}

body.pantools-app-mode .pantools-tool-category-item.active strong {
  color: #1764ff !important;
}

.pantools-account-tabs {
  display: inline-flex;
  align-items: center;
  width: max-content;
  max-width: 100%;
  margin: 0 0 12px;
  padding: 4px;
  border-radius: 9px;
  background: #f0f3f8;
}

.pantools-account-tabs button {
  height: 28px;
  min-width: 43px;
  padding: 0 10px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #344054;
  font-size: 13px;
  cursor: pointer;
}

.pantools-account-tabs button.active {
  background: var(--blue);
  color: #fff;
  box-shadow: 0 8px 18px rgba(23, 100, 255, 0.16);
}

.pantools-account-list {
  display: grid;
  justify-items: start;
  align-content: start;
  gap: 7px;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 0 2px 86px 0;
}

.pantools-account-card {
  position: relative;
  display: grid;
  grid-template-columns: 42px 168px 20px;
  width: 250px;
  max-width: 100%;
  gap: 8px;
  align-items: center;
  min-height: 62px;
  padding: 9px 8px 9px 10px;
  border: 0;
  border-radius: 8px;
  background: #fff;
  color: #101828;
  text-align: left;
  cursor: pointer;
}

.pantools-account-card:hover {
  background: #f8fbff;
}

.pantools-account-card.active {
  background: #eaf2ff;
  box-shadow: inset 4px 0 0 var(--blue);
}

.pantools-account-logo,
.pantools-current-logo {
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid #e1e8f3;
  border-radius: 11px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(16, 24, 40, 0.06);
}

.pantools-account-logo {
  width: 38px;
  height: 38px;
}

.pantools-account-logo img,
.pantools-current-logo img {
  max-width: 72%;
  max-height: 72%;
  object-fit: contain;
}

.pantools-provider-fallback {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  background: var(--blue);
  color: #fff;
  font-size: 20px;
  font-weight: 800;
}

.pantools-account-info {
  display: grid;
  width: 168px;
  min-width: 0;
  gap: 4px;
}

.pantools-account-info strong {
  overflow: hidden;
  color: #101828;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pantools-account-info small {
  justify-self: start;
  padding: 2px 6px;
  border-radius: 5px;
  background: #fff5e8;
  color: #d98500;
  font-size: 11px;
  line-height: 1.2;
}

.pantools-account-info i {
  display: block;
  width: 96px;
  height: 4px;
  overflow: hidden;
  border-radius: 999px;
  background: #eef2f7;
}

.pantools-account-info i b,
.pantools-current-storage i b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #12b886;
}

.pantools-account-empty {
  display: grid;
  place-items: center;
  min-height: 140px;
  border: 1px dashed #d6e0ee;
  border-radius: 10px;
  background: #f8fbff;
  color: #98a2b3;
  font-size: 13px;
}

.pantools-add-account {
  position: sticky;
  bottom: 0;
  width: 250px;
  max-width: 100%;
  min-height: 46px;
  margin-top: auto;
  border: 0;
  border-radius: 8px;
  background: var(--blue);
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  box-shadow: 0 18px 34px rgba(23, 100, 255, 0.24);
  cursor: pointer;
}

.pantools-shell .netdisk-pan-main {
  min-width: 0;
  background: #f5f6f8;
}

.pantools-currentbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 76px;
  padding: 12px 24px;
  border-bottom: 1px solid #e6edf7;
  background: #fff;
}

.pantools-current-account {
  display: grid;
  grid-template-columns: 58px minmax(0, auto) auto;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.pantools-current-logo {
  width: 46px;
  height: 46px;
}

.pantools-current-account h2 {
  margin: 0;
  overflow: hidden;
  color: #101828;
  font-size: 17px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pantools-current-account p {
  margin: 5px 0 0;
  color: #98a2b3;
  font-size: 13px;
}

.pantools-current-account em {
  align-self: start;
  padding: 4px 10px;
  border-radius: 5px;
  background: #fff5e8;
  color: #d98500;
  font-size: 12px;
  font-style: normal;
}

.pantools-current-storage {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 220px;
  color: #98a2b3;
  font-size: 13px;
}

.pantools-current-storage i {
  display: block;
  width: 160px;
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #eef2f7;
}

.pantools-shell .netdisk-pan-panelhost {
  min-height: calc(100vh - 94px);
  background: #f5f6f8;
}

.pantools-shell .netdisk-pan-panelhost.home {
  min-height: calc(100vh - 18px);
}

.pantools-shell .netdisk-pan-file-workspace {
  min-height: calc(100vh - 94px);
}

.pantools-shell .netdisk-pan-file-browser {
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.pantools-shell .netdisk-pan-file-head {
  padding: 18px 32px 14px;
  border-bottom: 0;
}

.pantools-shell .netdisk-pan-file-head span:first-child {
  display: none;
}

.pantools-shell .netdisk-pan-file-head h2 {
  font-size: 18px;
}

.pantools-shell .netdisk-pan-file-head p {
  font-size: 13px;
}

.pantools-shell .netdisk-file-breadcrumb {
  min-height: 46px;
  padding: 0 32px;
  border-bottom: 1px solid #eef2f7;
  font-size: 14px;
}

.pantools-shell .netdisk-pan-filetable th {
  height: 54px;
  background: #f5f7fa;
  color: #98a2b3;
  font-size: 15px;
}

.pantools-shell .netdisk-pan-filetable td {
  height: 58px;
  font-size: 14px;
}

.pantools-panel {
  min-height: 100%;
  padding: 24px;
  background: #fff;
}

.pantools-panel-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.pantools-panel-head span {
  display: block;
  color: #98a2b3;
  font-size: 12px;
  margin-bottom: 4px;
}

.pantools-panel-head h2 {
  margin: 0;
  color: #101828;
  font-size: 20px;
  line-height: 1.25;
}

.pantools-panel-head p {
  margin: 6px 0 0;
  color: #667085;
  font-size: 13px;
}

.pantools-tool-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 12px;
}

.pantools-tool-card {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  gap: 10px 12px;
  align-items: center;
  padding: 14px;
  border: 1px solid #e6edf7;
  border-radius: 10px;
  background: #fff;
  color: #101828;
  text-align: left;
  box-shadow: 0 10px 24px rgba(16, 24, 40, 0.04);
  cursor: pointer;
}

.pantools-tool-card:hover {
  border-color: #d6e0ee;
  transform: translateY(-1px);
  box-shadow: 0 14px 30px rgba(16, 24, 40, 0.07);
}

.pantools-tool-card span {
  grid-row: span 2;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: #eaf2ff;
  color: var(--blue);
}

.pantools-tool-card strong {
  font-size: 14px;
  line-height: 1.25;
}

.pantools-tool-card small {
  color: #667085;
  font-size: 12px;
  line-height: 1.35;
}

.pantools-tool-card em {
  align-self: start;
  grid-column: 3;
  grid-row: 1;
  padding: 3px 8px;
  border-radius: 999px;
  background: #eaf2ff;
  color: var(--blue);
  font-size: 11px;
  font-style: normal;
  font-weight: 700;
}

.pantools-empty-panel {
  display: grid;
  align-content: start;
}

.pantools-file-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  padding: 12px 14px;
  border-top: 1px solid #e6edf7;
  border-bottom: 1px solid #e6edf7;
  background: #fff;
}

.pantools-file-toolbar button {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}

.pantools-file-toolbar .svg-icon {
  width: 15px;
  height: 15px;
}

.pantools-file-toolbar .netdisk-file-search {
  margin-left: auto;
  min-width: 210px;
}

.pantools-account-trash,
.pantools-account-more {
  display: grid;
  place-items: center;
  width: 20px;
  min-width: 20px;
  height: 20px;
  padding: 0;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #98a2b3;
  cursor: pointer;
}

.pantools-account-trash .svg-icon,
.pantools-account-more .svg-icon {
  width: 15px;
  height: 15px;
}

.pantools-account-more .svg-icon {
  width: 11px;
  height: 11px;
  fill: currentColor;
  stroke-width: 0;
}

.pantools-account-trash:hover,
.pantools-account-trash:focus-visible,
.pantools-account-more:hover,
.pantools-account-more:focus-visible {
  background: #fff1f3;
  color: #ff4d4f;
}

.pantools-account-more:hover,
.pantools-account-more:focus-visible {
  background: #eef4ff;
  color: #3b6cff;
}

.pantools-account-action-menu {
  position: absolute;
  z-index: 20;
  top: 28px;
  right: 6px;
  display: none;
  width: 118px;
  padding: 5px;
  border: 1px solid #e4eaf3;
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 10px 26px rgba(16, 24, 40, 0.13);
}

.pantools-account-card.menu-open .pantools-account-action-menu {
  display: grid;
  gap: 2px;
}

.pantools-account-action-menu button {
  display: grid;
  grid-template-columns: 15px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
  width: 100%;
  min-height: 31px;
  padding: 4px 5px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: #344054;
  text-align: left;
  cursor: pointer;
}

.pantools-account-action-menu button:hover,
.pantools-account-action-menu button:focus-visible {
  background: #f3f7ff;
  color: #245ad8;
}

.pantools-account-action-menu button.danger:hover,
.pantools-account-action-menu button.danger:focus-visible {
  background: #fff1f3;
  color: #d92d20;
}

.pantools-account-action-menu .svg-icon {
  width: 14px;
  height: 14px;
  stroke-width: 1.8;
}

.pantools-account-action-menu span {
  display: grid;
  min-width: 0;
}

.pantools-account-action-menu b {
  font-size: 11px;
  font-weight: 500;
  line-height: 1.15;
}

.pantools-account-action-menu small {
  overflow: hidden;
  color: #98a2b3;
  font-size: 9px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pantools-modal-panel {
  width: min(760px, calc(100vw - 72px));
  border-radius: 14px;
  box-shadow: 0 24px 70px rgba(16, 24, 40, 0.22);
}

.pantools-upload-modal-panel {
  width: min(780px, calc(100vw - 72px));
  border: 1px solid #e6edf7;
  border-radius: 10px;
  box-shadow: 0 24px 70px rgba(16, 24, 40, 0.18);
}

.pantools-unbind-modal {
  background: rgba(16, 24, 40, 0.44);
}

.pantools-unbind-panel {
  width: min(760px, calc(100vw - 72px));
  overflow: hidden;
  border: 1px solid #e6edf7;
  border-radius: 14px;
  background: #fff;
}

.pantools-unbind-panel .modal-head {
  min-height: 72px;
  padding: 0 22px;
  border-bottom: 1px solid #e6edf7;
}

.pantools-unbind-panel .modal-head h2 {
  font-size: 20px;
  font-weight: 800;
}

.pantools-unbind-panel .icon-close {
  width: 44px;
  height: 44px;
  border: 1px solid #e6edf7;
  border-radius: 0;
  background: #f8fbff;
  color: #101828;
  font-size: 26px;
  line-height: 1;
}

.pantools-unbind-panel .pantools-modal-body {
  padding: 0;
}

.pantools-unbind-summary {
  display: grid;
  gap: 0;
}

.pantools-unbind-summary p {
  margin: 0;
  padding: 16px 22px 14px;
  color: #667085;
  font-size: 14px;
}

.pantools-unbind-alert {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 58px;
  border-radius: 0;
  background: #fff8e6;
  color: #d98500;
  font-size: 16px;
}

.pantools-unbind-alert .svg-icon {
  width: 22px;
  height: 22px;
}

.pantools-unbind-account {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 56px;
  margin: 0 22px;
  padding: 10px 14px;
  border: 1px solid #e6edf7;
  border-radius: 8px;
  background: #f8fbff;
}

.pantools-unbind-account strong,
.pantools-unbind-account small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pantools-unbind-account strong {
  color: #101828;
  font-size: 14px;
}

.pantools-unbind-account small {
  margin-top: 3px;
  color: #98a2b3;
  font-size: 12px;
}

.pantools-unbind-panel .modal-foot {
  justify-content: space-between;
  padding: 18px 22px 22px;
  border-top: 1px solid #eef2f7;
}

.pantools-unbind-panel .modal-foot button {
  min-width: 72px;
  min-height: 36px;
  border-radius: 6px;
}

.pantools-toast {
  position: fixed;
  top: 24px;
  left: 50%;
  z-index: 2000;
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 18px;
  border: 1px solid #cfe8dd;
  border-radius: 10px;
  background: #fff;
  color: #027a48;
  font-size: 14px;
  box-shadow: 0 16px 40px rgba(16, 24, 40, 0.14);
  opacity: 0;
  transform: translate(-50%, -8px);
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.pantools-toast.show {
  opacity: 1;
  transform: translate(-50%, 0);
}

.pantools-toast span {
  display: grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: #12b76a;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}

.pantools-toast.success,
.pantools-toast.success strong {
  color: #027a48 !important;
}

.pantools-modal-body {
  display: grid;
  gap: 14px;
  padding: 4px 0 2px;
}

.pantools-modal-field {
  display: grid;
  gap: 8px;
  color: #101828;
  font-size: 13px;
  font-weight: 600;
}

.pantools-modal-field input {
  height: 42px;
  border: 1px solid #d6e0ee;
  border-radius: 8px;
  padding: 0 12px;
  color: #101828;
  font-size: 14px;
}

.pantools-action-summary {
  display: grid;
  gap: 12px;
}

.pantools-action-summary p {
  margin: 0;
  color: #667085;
  font-size: 13px;
}

.pantools-action-summary h3 {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #101828;
  font-size: 15px;
}

.pantools-action-summary h3 span {
  display: inline-grid;
  place-items: center;
  min-width: 24px;
  height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  background: #eaf2ff;
  color: var(--blue);
  font-size: 12px;
}

.pantools-modal-list {
  max-height: 260px;
  overflow: auto;
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid #e6edf7;
  border-radius: 10px;
  background: #f8fbff;
}

.pantools-modal-list > div {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 38px;
  padding: 7px 8px;
  border-radius: 8px;
  background: #fff;
}

.pantools-modal-list strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
}

.pantools-modal-list small,
.pantools-modal-empty,
.pantools-upload-box p {
  color: #667085;
  font-size: 13px;
}

.pantools-modal-empty {
  padding: 18px;
  border: 1px dashed #d6e0ee;
  border-radius: 10px;
  text-align: center;
  background: #f8fbff;
}

.pantools-upload-box {
  display: grid;
  gap: 14px;
}

.pantools-upload-modal-layout {
  gap: 22px;
}

.pantools-upload-box > div:first-child {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px;
  border: 1px solid #e6edf7;
  border-radius: 10px;
  background: #f8fbff;
}

.pantools-upload-box span {
  color: #667085;
  font-size: 13px;
}

.pantools-upload-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.pantools-upload-actions button {
  min-height: 58px;
  border-radius: 10px;
  font-weight: 700;
}

.pantools-upload-target {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 70px;
  padding: 0 20px;
  border: 1px solid #e6edf7;
  border-radius: 8px;
  background: #fbfdff;
}

.pantools-upload-target strong {
  color: #101828;
  font-size: 16px;
  font-weight: 850;
}

.pantools-upload-target span {
  min-width: 0;
  color: #667085;
  font-size: 14px;
  text-align: right;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pantools-upload-list {
  display: grid;
  gap: 12px;
}

.pantools-upload-list > strong {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #101828;
  font-size: 16px;
  font-weight: 850;
}

.pantools-upload-list > strong span {
  color: #667085;
  font-size: 13px;
  font-weight: 750;
}

.pantools-upload-list .compact-result {
  min-height: 104px;
  max-height: 104px;
  resize: none;
  padding: 30px 18px;
  text-align: center;
  color: #667085;
  border: 1px solid #e0e7f2;
  border-radius: 8px;
  background: #fff;
}

.pantools-upload-card-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.pantools-upload-card {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  min-height: 118px;
  padding: 22px 24px;
  border: 1px solid #dfe7f3;
  border-radius: 10px;
  background: #fff;
  color: #101828;
  text-align: left;
  cursor: pointer;
}

.pantools-upload-card:hover {
  border-color: #c9d8ee;
  background: #fbfdff;
}

.pantools-upload-card i {
  width: 64px;
  height: 64px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: #eaf2ff;
  color: var(--blue);
}

.pantools-upload-card:nth-child(2) i {
  background: #fff4e4;
  color: #f59e0b;
}

.pantools-upload-card .svg-icon {
  width: 30px;
  height: 30px;
}

.pantools-upload-card span,
.pantools-upload-card strong,
.pantools-upload-card small {
  display: block;
}

.pantools-upload-card strong {
  margin-bottom: 7px;
  color: #101828;
  font-size: 17px;
  font-weight: 850;
}

.pantools-upload-card small {
  color: #98a2b3;
  font-size: 14px;
}

.pantools-share-filters {
  align-items: end;
}

.pantools-share-status {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 3px;
  border-radius: 9px;
  background: #f1f5fb;
  border: 1px solid #e6edf7;
}

.pantools-share-status button {
  min-height: 30px;
  padding: 0 14px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #667085;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}

.pantools-share-status button.active {
  background: var(--blue);
  color: #fff;
  box-shadow: 0 8px 18px rgba(23, 100, 255, 0.16);
}

.netdisk-my-shares-panel .data-table th,
.netdisk-my-shares-panel .data-table td {
  font-size: 12px;
  padding: 10px 9px;
  vertical-align: middle;
}

.netdisk-my-shares-panel .share-link-cell {
  min-width: 260px;
  height: 30px;
  border-radius: 7px;
  background: #f8fbff;
}

.netdisk-share-copy-one {
  min-height: 30px;
  padding: 0 10px;
  font-size: 12px;
}

/* Pantools final compact pass: keep all left columns small so the file area owns the screen. */
.sidebar {
  width: 178px;
}

.category-menu {
  padding: 8px 0;
}

.category-group {
  margin: 0 6px 8px 8px;
  border-radius: 8px;
}

.category-group::before {
  left: -4px;
  width: 7px;
}

.category-group-toggle {
  min-height: 40px;
  grid-template-columns: 24px minmax(0, 1fr) auto auto;
  gap: 5px;
  padding: 6px 6px 6px 8px;
}

.category-group-toggle strong {
  font-size: 13px;
}

.category-group-mark {
  width: 24px;
  height: 24px;
  border-radius: 7px;
  font-size: 13px;
}

.category-group-count,
.category-chevron {
  font-size: 11px;
}

.category-group-items {
  padding: 5px 0 3px 2px;
}

.category-group-items::before {
  left: 10px;
}

.category-link {
  width: calc(100% - 8px);
  height: 39px;
  gap: 8px;
  margin: 0 3px 3px;
  padding: 0 7px 0 11px;
  border-radius: 7px;
  font-size: 12px;
}

.category-link.active {
  box-shadow: inset 4px 0 0 var(--blue), 0 6px 14px rgba(23, 100, 255, 0.07);
}

.category-icon {
  width: 16px;
  height: 16px;
  flex-basis: 16px;
}

.category-icon .svg-icon {
  width: 14px;
  height: 14px;
}

.netdisk-pan-shell.pantools-shell {
  grid-template-columns: 64px 258px minmax(0, 1fr);
}

.pantools-shell .netdisk-pan-sidebar {
  width: 64px;
  padding: 14px 4px;
}

.pantools-shell .netdisk-pan-navgroup-flat {
  gap: 8px;
}

.pantools-shell .netdisk-pan-navitem {
  width: 54px;
  min-height: 58px;
  gap: 4px;
  padding: 7px 3px;
  border-radius: 9px;
}

.pantools-shell .netdisk-pan-navitem .netdisk-pan-index {
  width: 22px;
  height: 22px;
  border-radius: 7px;
}

.pantools-shell .netdisk-pan-navitem .svg-icon {
  width: 17px;
  height: 17px;
}

.pantools-shell .netdisk-pan-navitem b {
  font-size: 11px;
  line-height: 1.15;
}

.pantools-account-pool {
  padding: 16px 10px 10px;
}

.pantools-account-head {
  margin-bottom: 12px;
}

.pantools-account-head h2 {
  font-size: 16px;
}

.pantools-account-tabs {
  margin-bottom: 9px;
  padding: 3px;
}

.pantools-account-tabs button {
  height: 26px;
  min-width: 38px;
  padding: 0 8px;
  font-size: 12px;
}

.pantools-account-card {
  grid-template-columns: 36px minmax(0, 1fr) 24px;
  gap: 8px;
  min-height: 54px;
  padding: 7px 5px 7px 8px;
}

.pantools-account-logo {
  width: 34px;
  height: 34px;
  border-radius: 9px;
}

.pantools-account-info strong {
  font-size: 13px;
}

.pantools-account-info small {
  font-size: 10px;
}

.pantools-account-info i {
  width: 88px;
  height: 4px;
}

.pantools-account-trash {
  width: 24px;
  height: 24px;
}

.pantools-account-trash .svg-icon {
  width: 14px;
  height: 14px;
}

body.pantools-app-mode .titlebar {
  height: 30px;
  justify-content: space-between;
  padding: 0 8px 0 4px;
  background: #fff;
  border-bottom: 1px solid #e6edf7;
  box-shadow: none;
}

body.pantools-app-mode .titlebar .brand {
  display: flex;
}

body.pantools-app-mode .titlebar-actions {
  gap: 10px;
}

body.pantools-app-mode .titlebar-actions .icon-button,
body.pantools-app-mode .titlebar-actions .window-button {
  width: 30px;
  height: 30px;
  color: #64748b;
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

body.pantools-app-mode .layout {
  min-height: 0;
  height: calc(100vh - 24px);
}

body.pantools-app-mode .sidebar {
  display: flex;
  width: 132px;
  padding: 0 0 10px;
  background: #f7f8fb;
  border-right: 1px solid #d7e1ee;
}

body.pantools-app-mode .category-menu {
  padding: 8px 0;
}

body.pantools-app-mode .category-group {
  margin: 0 6px 8px;
  border-radius: 8px;
}

body.pantools-app-mode .category-group::before,
body.pantools-app-mode .category-group-items::before,
body.pantools-app-mode .category-group-count,
body.pantools-app-mode .category-chevron {
  display: none;
}

body.pantools-app-mode .category-group-toggle {
  min-height: 40px;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 6px;
  padding: 6px 8px;
}

body.pantools-app-mode .category-group-toggle strong {
  font-size: 13px;
}

body.pantools-app-mode .category-group-mark {
  width: 24px;
  height: 24px;
  border-radius: 7px;
  font-size: 13px;
}

body.pantools-app-mode .category-group-items {
  padding: 5px 0 4px;
}

body.pantools-app-mode .category-link {
  height: 38px;
  gap: 7px;
  margin: 0 4px 3px;
  padding: 0 8px;
  font-size: 12px;
}

body.pantools-app-mode .category-icon,
body.pantools-app-mode .category-icon .svg-icon {
  width: 15px;
  height: 15px;
}

body.pantools-app-mode .more-products {
  display: none;
}

body.pantools-app-mode .content {
  padding: 21px 0 0;
  overflow: hidden;
  background: #f4f7fb;
}

body.pantools-app-mode .notice-bar {
  min-height: 68px;
  margin-bottom: 23px;
}

body.pantools-app-mode .home-view {
  height: 100%;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

body.pantools-app-mode .notice-bar {
  min-height: 44px;
  margin: 0;
  border-width: 0 0 1px;
  border-radius: 0;
}

body.pantools-app-mode .tabs {
  display: none;
}

body.pantools-app-mode .tool-grid.netdisk-pan-grid {
  --panbox-workspace-bg: #f5f6f8;
  --panbox-border-soft: #dfe6ef;
  --panbox-top-shadow: 0 6px 14px rgba(15, 23, 42, 0.045);
  height: 100%;
  min-height: 0;
  padding: 0;
  overflow: hidden;
}

body.pantools-app-mode .tool-grid.netdisk-pan-grid .netdisk-pan-shell.pantools-shell {
  min-height: 100%;
  border: 0;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar,
body.pantools-app-mode .pantools-account-pool {
  border-right-color: #d7e1ee !important;
}

.pantools-add-account {
  min-height: 42px;
  font-size: 14px;
}

.pantools-shell .netdisk-pan-file-workspace {
  grid-template-columns: minmax(0, 1fr);
}

.pantools-shell .netdisk-pan-file-head {
  min-height: 56px;
  padding: 12px 20px 8px;
}

.pantools-shell .netdisk-pan-file-head h2 {
  font-size: 17px;
}

.pantools-file-toolbar {
  padding: 10px 12px;
  gap: 7px;
}

.pantools-file-toolbar button {
  min-height: 32px;
  padding: 0 10px;
  border-radius: 7px;
  font-size: 12px;
}

.pantools-shell .netdisk-file-breadcrumb {
  min-height: 38px;
  padding: 0 20px;
}

.pantools-shell .netdisk-pan-filetable th,
.pantools-shell .netdisk-pan-filetable td {
  height: 48px;
  padding: 8px 10px;
  font-size: 13px;
}

.pantools-shell .netdisk-pan-filetable th:nth-child(1) { width: 44px; }
.pantools-shell .netdisk-pan-filetable th:nth-child(2) { width: auto; }
.pantools-shell .netdisk-pan-filetable th:nth-child(3) { width: 140px; }
.pantools-shell .netdisk-pan-filetable th:nth-child(4) { width: 120px; }
.pantools-shell .netdisk-pan-filetable th:nth-child(5) { width: 110px; }
.pantools-shell .netdisk-pan-filetable th:nth-child(6) { width: 160px; }

.pantools-shell .netdisk-pan-filename {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.pantools-shell .netdisk-pan-filemark {
  flex: 0 0 auto;
}

.pantools-shell .netdisk-pan-more {
  width: auto;
  min-width: 28px;
}

.pantools-shell .netdisk-pantools-entry {
  place-items: center;
  padding: 24px 20px;
}

.pantools-shell .netdisk-pantools-entry-inner {
  width: min(860px, 100%);
  gap: 20px;
}

.pantools-shell .netdisk-pantools-entry h2 {
  font-size: 17px;
  font-weight: 800;
}

.pantools-shell .netdisk-pantools-capability-grid {
  grid-template-columns: repeat(3, 220px);
  gap: 14px;
}

.pantools-shell .netdisk-pantools-capability-grid article {
  width: 220px;
  min-height: 138px;
  padding: 20px 16px;
  border-radius: 8px;
}

.pantools-shell .netdisk-pantools-capability-grid article > span {
  width: 46px;
  height: 46px;
  border-radius: 10px;
}

body.pantools-app-mode .pantools-shell .netdisk-pantools-entry {
  place-items: center;
  padding: 20px 16px;
}

body.pantools-app-mode .pantools-shell .netdisk-pantools-entry-inner {
  width: min(760px, 100%);
  justify-items: center;
}

body.pantools-app-mode .pantools-shell .netdisk-pantools-capability-grid {
  grid-template-columns: repeat(3, minmax(0, 210px));
  justify-content: center;
  gap: 14px;
  width: 100%;
}

body.pantools-app-mode .pantools-shell .netdisk-pantools-capability-grid article {
  width: 100%;
  min-height: 136px;
}

body.pantools-app-mode .sidebar {
  flex: 0 0 132px;
  width: 132px;
  max-width: 132px;
  min-width: 132px;
}

body.pantools-app-mode .category-group-toggle,
body.pantools-app-mode .category-link {
  min-width: 0;
}

body.pantools-app-mode .category-group-toggle strong,
body.pantools-app-mode .category-link span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.pantools-app-mode .app .layout > .sidebar {
  flex: 0 0 154px;
  width: 154px;
  max-width: 154px;
  min-width: 154px;
  padding: 10px 7px 12px;
  background: #eef4ff;
  border-right: 1px solid #d6e0ee;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  width: auto;
  max-width: 140px;
  margin: 0 0 8px;
}

body.pantools-app-mode .app .layout > .sidebar .category-link,
body.pantools-app-mode .app .layout > .sidebar .category-group-toggle {
  width: calc(100% - 8px);
  min-height: 46px;
  padding: 6px 8px;
  gap: 7px;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon,
body.pantools-app-mode .app .layout > .sidebar .category-link-icon {
  width: 30px;
  height: 30px;
  border-radius: 9px;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle strong {
  white-space: nowrap;
  font-size: 13px;
  letter-spacing: 0;
}

body.pantools-app-mode .netdisk-pan-shell.pantools-shell {
  grid-template-columns: 54px 176px minmax(0, 1fr);
  background: linear-gradient(90deg, #fff 0 54px, #f8fafc 54px 230px, #f5f6f8 230px);
}

body.pantools-app-mode .pantools-account-pool {
  padding: 12px 8px 10px;
}

body.pantools-app-mode .pantools-account-list {
  gap: 6px;
}

body.pantools-app-mode .pantools-account-card {
  grid-template-columns: 32px minmax(0, 1fr) 22px;
  gap: 7px;
  min-height: 48px;
  padding: 6px 5px 6px 7px;
}

body.pantools-app-mode .pantools-account-logo {
  width: 30px;
  height: 30px;
  border-radius: 8px;
}

body.pantools-app-mode .pantools-account-card.active .pantools-account-logo,
body.pantools-app-mode .pantools-account-card:hover .pantools-account-logo {
  width: 30px;
  height: 30px;
  border-radius: 8px;
}

body.pantools-app-mode .pantools-account-info strong {
  font-size: 12px;
}

body.pantools-app-mode .pantools-account-info small {
  font-size: 10px;
}

body.pantools-app-mode .pantools-account-info i {
  width: 74px;
  height: 4px;
}

body.pantools-app-mode .pantools-account-trash {
  width: 22px;
  height: 22px;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-filemark {
  width: 24px;
  height: 24px;
  color: #f07800;
  background: transparent;
  border-radius: 0;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-filemark.file {
  color: #98a2b3;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-filemark .svg-icon {
  width: 22px;
  height: 22px;
  stroke-width: 2;
}

body.pantools-app-mode .pantools-currentbar {
  min-height: 68px;
  padding: 10px 18px;
}

body.pantools-app-mode .pantools-current-account {
  grid-template-columns: 42px minmax(0, auto) auto;
  gap: 10px;
}

body.pantools-app-mode .pantools-current-logo,
body.pantools-app-mode .pantools-current-logo img {
  width: 38px;
  height: 38px;
  border-radius: 9px;
}

body.pantools-app-mode .pantools-current-account h2 {
  font-size: 16px;
}

body.pantools-app-mode .pantools-current-account p {
  display: none;
}

body.pantools-app-mode .pantools-current-account em {
  align-self: center;
  padding: 3px 9px;
  border-radius: 5px;
  font-size: 12px;
}

body.pantools-app-mode .pantools-current-storage {
  min-width: 260px;
  font-size: 12px;
}

body.pantools-app-mode .pantools-current-storage i {
  width: 150px;
  height: 5px;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-file-head {
  display: none;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost {
  min-height: calc(100vh - 156px);
}

body.pantools-app-mode .pantools-file-toolbar {
  flex-wrap: wrap;
  gap: 8px;
  min-height: 52px;
  padding: 10px 12px;
  overflow: visible;
  border-top: 0;
}

body.pantools-app-mode .pantools-file-toolbar button {
  min-height: 32px;
  padding: 0 8px;
  border-radius: 7px;
  font-size: 13px;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-file-toolbar button .svg-icon {
  width: 14px;
  height: 14px;
}

body.pantools-app-mode .pantools-file-toolbar button:disabled {
  color: #98a2b3;
  background: #fff;
  border: 1px solid #e6edf7;
  opacity: 0.72;
  cursor: default;
}

body.pantools-app-mode .pantools-toolbar-sep {
  width: 1px;
  height: 28px;
  flex: 0 0 1px;
  margin: 0 1px;
  background: #e6edf7;
}

body.pantools-app-mode .danger-soft,
body.pantools-app-mode .pantools-row-actions .danger,
body.pantools-app-mode .pantools-account-trash,
body.pantools-app-mode .pantools-account-trash:hover,
body.pantools-app-mode .pantools-account-trash:focus-visible {
  color: var(--danger);
}

body.pantools-app-mode .danger-soft {
  background: #fff1f3;
  border: 1px solid #ffd2d6;
}

body.pantools-app-mode .pantools-row-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  width: 100%;
  opacity: 0;
  transition: opacity 0.12s ease;
}

body.pantools-app-mode .netdisk-pan-filetable tbody tr:hover .pantools-row-actions,
body.pantools-app-mode .netdisk-pan-filetable tbody tr:focus-within .pantools-row-actions {
  opacity: 1;
}

body.pantools-app-mode .pantools-row-actions button {
  padding: 0;
  color: var(--blue);
  background: transparent;
  font-size: 12px;
}

body.pantools-app-mode .pantools-row-actions button:nth-child(1) {
  color: #12a87a;
}

body.pantools-app-mode .pantools-row-actions button:nth-child(4) {
  color: #f07800;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-filetable th:nth-child(3) {
  width: 330px;
  text-align: right;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-filetable td:nth-child(3) {
  text-align: right;
}

body.pantools-app-mode .pantools-account-card.active {
  background: transparent;
  box-shadow: none;
}

body.pantools-app-mode .pantools-account-card.active::before {
  display: none;
}

body.pantools-app-mode .pantools-account-card.active .pantools-account-logo,
body.pantools-app-mode .pantools-account-card:hover .pantools-account-logo,
body.pantools-app-mode .pantools-account-logo,
body.pantools-app-mode .pantools-account-logo img {
  width: 30px;
  height: 30px;
  border-radius: 8px;
}

body.pantools-app-mode .pantools-unbind-panel {
  width: min(600px, calc(100vw - 56px));
  border-radius: 14px;
}

body.pantools-app-mode .pantools-unbind-panel .modal-head {
  min-height: 72px;
  padding: 0 32px;
  border-bottom: 0;
}

body.pantools-app-mode .pantools-unbind-panel .modal-head h2 {
  font-size: 18px;
}

body.pantools-app-mode .pantools-unbind-panel .icon-close {
  width: 34px;
  height: 34px;
  border: 0;
  background: transparent;
  color: #98a2b3;
  font-size: 26px;
}

body.pantools-app-mode .pantools-unbind-panel .pantools-modal-body {
  padding: 0 32px 24px;
}

body.pantools-app-mode .pantools-unbind-confirm {
  display: grid;
  justify-items: center;
  gap: 22px;
  padding: 0 0 8px;
  text-align: center;
}

body.pantools-app-mode .pantools-unbind-confirm > span {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  color: #d98500;
}

body.pantools-app-mode .pantools-unbind-confirm .svg-icon {
  width: 44px;
  height: 44px;
  stroke-width: 1.8;
}

body.pantools-app-mode .pantools-unbind-confirm p {
  margin: 0;
  color: #101828;
  font-size: 15px;
  line-height: 1.7;
}

body.pantools-app-mode .pantools-unbind-confirm strong {
  font-weight: 800;
}

body.pantools-app-mode .pantools-unbind-panel .modal-foot {
  justify-content: flex-end;
  gap: 12px;
  padding: 0 32px 30px;
  border-top: 0;
}

body.pantools-app-mode .pantools-unbind-panel .modal-foot button {
  min-width: 76px;
  min-height: 36px;
  border-radius: 7px;
}

body.pantools-app-mode .netdisk-pan-embedded {
  min-height: 100%;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  background: #f6f8fb;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

body.pantools-app-mode .netdisk-pan-embedded-head {
  min-height: 74px;
  padding: 16px 22px 12px;
  background: #fff;
  border-bottom: 1px solid #e6edf7;
}

body.pantools-app-mode .netdisk-pan-embedded-head span {
  color: #98a2b3;
  font-size: 13px;
}

body.pantools-app-mode .netdisk-pan-embedded-head h2 {
  margin: 4px 0 3px;
  color: #101828;
  font-size: 24px;
  line-height: 1.15;
}

body.pantools-app-mode .netdisk-pan-embedded-head p {
  color: #667085;
  font-size: 14px;
}

body.pantools-app-mode .netdisk-pan-embedded-toolbar {
  display: none;
}

body.pantools-app-mode .netdisk-pan-embedded-content {
  height: 100%;
  min-height: 0;
  padding: 0;
  overflow: auto;
  background: transparent;
}

body.pantools-app-mode .netdisk-dual-mode-workbench {
  min-height: 100%;
  height: auto;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 0;
  overflow: visible;
  background: #fff;
  border: 1px solid #dfe7f2;
  border-radius: 14px;
  box-shadow: 0 18px 50px rgba(16, 24, 40, 0.08);
}

body.pantools-app-mode .netdisk-mode-rail {
  gap: 16px;
  padding: 26px 22px;
  background: #f8fafc;
  border-right: 1px solid #e6edf7;
}

body.pantools-app-mode .netdisk-mode-rail > div:first-child span,
body.pantools-app-mode .netdisk-mode-rail > div:first-child p {
  color: #667085;
  font-size: 14px;
}

body.pantools-app-mode .netdisk-mode-rail h2 {
  margin: 5px 0 6px;
  font-size: 24px;
  line-height: 1.15;
}

body.pantools-app-mode .netdisk-mode-buttons {
  gap: 10px;
}

body.pantools-app-mode .netdisk-mode-buttons button {
  min-height: 78px;
  gap: 7px;
  padding: 16px 14px;
  border-radius: 10px;
  border-color: #dfe7f2;
}

body.pantools-app-mode .netdisk-mode-buttons button strong {
  font-size: 16px;
}

body.pantools-app-mode .netdisk-mode-buttons button span {
  color: #98a2b3;
  font-size: 13px;
  line-height: 1.55;
}

body.pantools-app-mode .netdisk-mode-buttons button.active {
  color: var(--blue);
  background: #eef5ff;
  border-color: #8fb8ff;
  box-shadow: inset 4px 0 var(--blue);
}

body.pantools-app-mode .netdisk-mode-content {
  padding: 24px 28px;
  overflow: visible;
  background: #fff;
}

body.pantools-app-mode .netdisk-mode-panel-content > .transfer-import-page,
body.pantools-app-mode .netdisk-inline-layer > .transfer-import-page {
  width: 100%;
  max-height: none;
  min-height: 0;
  gap: 18px;
  padding: 0;
  overflow: visible;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

body.pantools-app-mode .transfer-import-head {
  min-height: 48px;
}

body.pantools-app-mode .transfer-import-head span {
  font-size: 15px;
}

body.pantools-app-mode .transfer-import-head strong {
  font-size: 26px;
  line-height: 1.2;
}

body.pantools-app-mode .transfer-import-head-actions button,
body.pantools-app-mode .transfer-import-head-actions summary {
  min-height: 44px;
  padding: 0 18px;
  border-radius: 8px;
  font-size: 15px;
}

body.pantools-app-mode .transfer-import-targetbar,
body.pantools-app-mode .share-mode-context {
  gap: 14px;
  padding: 16px;
  background: #f8fbff;
  border: 1px solid #dbe7f7;
  border-radius: 10px;
}

body.pantools-app-mode .transfer-import-targetbar label,
body.pantools-app-mode .share-mode-context label {
  color: #344054;
  font-size: 14px;
}

body.pantools-app-mode .transfer-import-targetbar input,
body.pantools-app-mode .transfer-import-targetbar select,
body.pantools-app-mode .share-mode-context input,
body.pantools-app-mode .share-mode-context select,
body.pantools-app-mode .readonly-value {
  min-height: 48px;
  border-radius: 8px;
  font-size: 16px;
}

body.pantools-app-mode .transfer-import-body-grid {
  grid-template-columns: minmax(210px, 240px) minmax(0, 1fr);
  gap: 18px;
}

body.pantools-app-mode .transfer-import-simple-actions {
  gap: 14px;
  padding: 16px;
  background: #f8fbff;
  border: 1px solid #dbe7f7;
  border-radius: 10px;
}

body.pantools-app-mode .transfer-import-simple-actions button {
  min-height: 52px;
  border-radius: 9px;
  font-size: 16px;
}

body.pantools-app-mode .transfer-delay-control {
  min-height: 44px;
  font-size: 15px;
}

body.pantools-app-mode .transfer-import-editor-grid {
  gap: 16px;
}

body.pantools-app-mode .transfer-import-editor-grid h3 {
  font-size: 18px;
}

body.pantools-app-mode .transfer-import-input,
body.pantools-app-mode .compact-result {
  min-height: 330px;
  border-radius: 9px;
  font-size: 16px;
  line-height: 1.7;
}

body.pantools-app-mode .netdisk-operation-workbench {
  min-height: 100%;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 16px;
  background: #fff;
  border: 1px solid #dfe7f2;
  border-radius: 14px;
  box-shadow: 0 18px 50px rgba(16, 24, 40, 0.08);
}

body.pantools-app-mode .netdisk-operation-section {
  padding: 18px;
}

body.pantools-app-mode .netdisk-operation-section-head strong {
  font-size: 18px;
}

body.pantools-app-mode .netdisk-operation-section-head small {
  font-size: 13px;
}

.pantools-feature-modal {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: grid;
  place-items: center;
  padding: 28px;
  background: rgba(16, 24, 40, 0.42);
  backdrop-filter: blur(7px);
}

.pantools-feature-panel {
  width: min(720px, calc(100vw - 56px));
  max-height: min(720px, calc(100vh - 56px));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e6edf7;
  border-radius: 12px;
  box-shadow: 0 26px 70px rgba(16, 24, 40, 0.24);
}

.pantools-feature-head {
  min-height: 72px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 24px 28px 8px;
  background: #fff;
}

.pantools-feature-head span {
  display: block;
  color: #98a2b3;
  font-size: 13px;
}

.pantools-feature-head h2 {
  margin: 0;
  color: #101828;
  font-size: 20px;
  line-height: 1.2;
}

.pantools-feature-head p {
  display: none;
  margin: 0;
  color: #667085;
  font-size: 14px;
}

.pantools-feature-head .icon-close {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  color: #98a2b3;
  background: transparent;
  border: 0;
  font-size: 28px;
  line-height: 1;
}

.pantools-feature-toolbar {
  display: none;
}

.pantools-feature-content {
  min-height: 0;
  padding: 0 28px 26px;
  overflow: auto;
  background: #fff;
}

.pantools-feature-log {
  max-height: 160px;
  border-top: 1px solid #e6edf7;
}

body.pantools-app-mode .pantools-feature-panel .netdisk-dual-mode-workbench,
body.pantools-app-mode .pantools-feature-panel .netdisk-operation-workbench {
  min-height: 0;
  height: auto;
  box-shadow: none;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-input,
body.pantools-app-mode .pantools-feature-panel .compact-result {
  min-height: 260px;
}

.pantools-preserve-title {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-areas:
    "switch title"
    ". help";
  align-items: center;
  column-gap: 10px;
  row-gap: 8px;
  width: min(300px, calc(100% - 270px));
  margin: 4px 34px 0 auto;
  color: #101828;
  font-size: 14px;
}

.pantools-preserve-title input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.pantools-preserve-title > span {
  grid-area: switch;
  position: relative;
  width: 44px;
  height: 26px;
  border-radius: 999px;
  background: #cfd4dc;
}

.pantools-preserve-title > span::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(16, 24, 40, 0.18);
  transition: transform 0.22s cubic-bezier(0.2, 0.8, 0.2, 1), background 0.22s ease;
}

.pantools-preserve-title input:checked + span {
  background: var(--blue);
}

.pantools-preserve-title input:checked + span::after {
  transform: translateX(18px);
}

.pantools-preserve-title strong {
  grid-area: title;
  font-weight: 500;
  white-space: nowrap;
}

.pantools-preserve-title small {
  grid-area: help;
  color: #98a2b3;
  font-size: 12px;
  line-height: 1.45;
  min-width: 0;
  max-width: 100%;
  white-space: normal;
}

body.pantools-app-mode .pantools-feature-panel .netdisk-dual-mode-workbench {
  display: block;
  background: #fff;
  border: 0;
  border-radius: 0;
}

body.pantools-app-mode .pantools-feature-panel .netdisk-mode-rail {
  display: block;
  padding: 0 0 18px;
  background: transparent;
  border-right: 0;
}

body.pantools-app-mode .pantools-feature-panel .netdisk-mode-rail > div:first-child,
body.pantools-app-mode .pantools-feature-panel .netdisk-mode-rail > .secondary,
body.pantools-app-mode .pantools-feature-panel .netdisk-mode-rail > .feature-help {
  display: none;
}

body.pantools-app-mode .pantools-feature-panel .netdisk-mode-buttons {
  display: inline-flex;
  gap: 0;
  padding: 3px;
  background: #f0f2f5;
  border-radius: 7px;
}

body.pantools-app-mode .pantools-feature-panel .netdisk-mode-buttons button {
  min-height: 32px;
  min-width: 104px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  color: #475467;
  background: transparent;
  border: 0;
  border-radius: 6px;
  box-shadow: none;
}

body.pantools-app-mode .pantools-feature-panel .netdisk-mode-buttons button.active {
  color: #fff;
  background: var(--blue);
  box-shadow: 0 8px 18px rgba(23, 100, 255, 0.16);
}

body.pantools-app-mode .pantools-feature-panel .netdisk-mode-buttons button strong {
  font-size: 14px;
  font-weight: 500;
}

body.pantools-app-mode .pantools-feature-panel .netdisk-mode-buttons button span {
  display: none;
}

body.pantools-app-mode .pantools-feature-panel .netdisk-mode-content {
  padding: 0;
  background: #fff;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-head {
  display: none;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-targetbar {
  order: 4;
  grid-template-columns: 1fr;
  gap: 8px;
  padding: 0;
  background: transparent;
  border: 0;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-targetbar > div:first-child {
  display: none;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-targetbar label {
  margin: 8px 0 2px;
  color: #101828;
  font-size: 14px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-dir-control {
  grid-template-columns: minmax(0, 1fr) 150px;
  gap: 8px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-dir-control button {
  order: 2;
  min-height: 42px;
  border-radius: 7px;
  font-weight: 700;
}

body.pantools-app-mode .pantools-feature-panel .transfer-dir-control input {
  min-height: 42px;
  cursor: pointer;
  border-radius: 7px;
  font-size: 15px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-body-grid {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-editor-grid {
  display: block;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-editor-grid section:first-child h3,
body.pantools-app-mode .pantools-feature-panel .transfer-import-editor-grid section:nth-child(2) {
  display: none;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-input {
  width: 100%;
  min-height: 156px;
  padding: 12px;
  color: #667085;
  border: 1px solid #d6e0ee;
  border-radius: 7px;
  font-size: 14px;
  line-height: 1.8;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-template .transfer-import-editor-grid section:first-child {
  display: grid;
  gap: 0;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-template #textImportInput {
  min-height: 52px;
  margin-top: 0;
  border-top: 0;
  border-radius: 0 0 8px 8px;
  color: #667085;
}

body.pantools-app-mode .pantools-feature-panel .pantools-template-dropzone {
  width: 100%;
  min-height: 150px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 8px;
  padding: 24px;
  color: #475467;
  background: #f6f1ff;
  border: 2px dashed var(--blue);
  border-radius: 8px;
  box-shadow: none;
  cursor: pointer;
}

body.pantools-app-mode .pantools-feature-panel .pantools-template-dropzone.dragover,
body.pantools-app-mode .pantools-feature-panel .pantools-template-dropzone:hover {
  background: #f0f6ff;
  border-color: var(--blue-dark);
}

body.pantools-app-mode .pantools-feature-panel .pantools-template-dropzone i {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  color: #98a2b3;
}

body.pantools-app-mode .pantools-feature-panel .pantools-template-dropzone svg {
  width: 28px;
  height: 28px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-template-dropzone strong {
  font-size: 15px;
  font-weight: 500;
}

body.pantools-app-mode .pantools-feature-panel .pantools-template-dropzone small {
  color: #98a2b3;
  font-size: 12px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-simple-actions {
  order: 2;
  display: grid;
  grid-template-columns: 1fr 154px;
  gap: 12px;
  padding: 0;
  background: transparent;
  border: 0;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-page:not(.share-mode-page) .transfer-import-simple-actions::before {
  content: "其它选项";
  grid-column: 1 / -1;
  color: #101828;
  font-size: 16px;
  font-weight: 800;
  margin: 4px 0 2px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-simple-actions #textImportInlineState,
body.pantools-app-mode .pantools-feature-panel .transfer-import-simple-actions #textImportStopBtn,
body.pantools-app-mode .pantools-feature-panel .transfer-import-simple-actions #textImportCopyBtn {
  display: none;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-simple-actions button {
  min-height: 42px;
  border-radius: 7px;
  font-size: 14px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-simple-actions #textImportStartBtn {
  display: none;
}

body.pantools-app-mode .pantools-feature-panel #textImportStartBtn {
  grid-column: 2;
  grid-row: 4;
  min-height: 46px;
  align-self: end;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .share-mode-context,
body.pantools-app-mode .pantools-feature-panel .share-mode-page #netdiskOperationPreview,
body.pantools-app-mode .pantools-feature-panel .share-mode-page #netdiskPreviewOperation,
body.pantools-app-mode .pantools-feature-panel .share-mode-page #shareModeCopyBtn,
body.pantools-app-mode .pantools-feature-panel .share-mode-page #shareModeState,
body.pantools-app-mode .pantools-feature-panel .share-mode-page .transfer-delay-control {
  display: none;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .transfer-import-simple-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-top: 30px;
}

.share-mode-page .pantools-share-repeat-control {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  border: 1px solid #d6e0ee;
  border-radius: 8px;
  background: #fff;
  color: #475467;
  font-size: 14px;
}

.share-mode-page .pantools-share-repeat-control input {
  width: 72px;
  height: 34px;
  padding: 0 10px;
  border: 1px solid #d6e0ee;
  border-radius: 7px;
  background: #fff;
  color: #101828;
  font-size: 14px;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page #netdiskRunOperation {
  min-width: 140px;
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 22px;
  border-radius: 7px;
  box-shadow: 0 12px 26px rgba(23, 100, 255, 0.2);
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected {
  margin-top: 10px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head {
  min-height: 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head strong,
body.pantools-app-mode .pantools-feature-panel .pantools-share-options h3 {
  color: #101828;
  font-size: 16px;
  line-height: 1.25;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head strong span {
  min-width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  margin-left: 6px;
  color: #fff;
  background: var(--blue);
  border-radius: 999px;
  font-size: 12px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head .text-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #667085;
  background: transparent;
  border: 0;
  font-size: 13px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-list {
  display: grid;
  gap: 8px;
  margin-bottom: 22px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-list > div {
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 14px;
  background: #fafafa;
  border-radius: 6px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-list .netdisk-pan-filemark {
  width: 24px;
  height: 24px;
  border: 0;
  background: transparent;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-list strong {
  color: #101828;
  font-size: 15px;
  font-weight: 500;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-options {
  display: grid;
  gap: 8px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-options h3 {
  margin: 0 0 4px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-options label {
  min-height: 76px;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 20px;
  grid-template-areas:
    "icon title radio"
    "icon desc radio";
  align-items: center;
  column-gap: 12px;
  padding: 12px 16px;
  border: 1px solid #e6edf7;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-options label.active {
  background: #f6f1ff;
  border-color: var(--blue);
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-options label > span {
  grid-area: icon;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  color: #667085;
  background: #f5f6f8;
  border-radius: 8px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-options label.active > span {
  color: var(--blue);
  background: #eaf2ff;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-options input {
  grid-area: radio;
  width: 20px;
  height: 20px;
  appearance: none;
  border: 2px solid #d0d5dd;
  border-radius: 50%;
  background: #fff;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-options input:checked {
  border: 5px solid var(--blue);
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-options strong {
  grid-area: title;
  align-self: end;
  color: #101828;
  font-size: 15px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-options small {
  grid-area: desc;
  align-self: start;
  color: #98a2b3;
  font-size: 13px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control {
  min-height: 58px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 44px 66px auto 66px 24px;
  align-items: center;
  gap: 10px;
  padding: 0 14px;
  border: 1px solid #e6edf7;
  border-radius: 8px;
  background: #fff;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control:has(#textImportShareAfterTransfer) {
  grid-template-columns: 42px minmax(0, 1fr) 44px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control:has(#textImportShareAfterTransfer):has(input:checked) {
  background: #f6f1ff;
  border-color: var(--blue);
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control i {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  color: #667085;
  background: #f5f6f8;
  border-radius: 8px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control i svg {
  width: 20px;
  height: 20px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control b {
  display: grid;
  gap: 2px;
  font-weight: 400;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control strong {
  color: #101828;
  font-size: 15px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control small {
  color: #98a2b3;
  font-size: 13px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control input[type="checkbox"] {
  width: 44px;
  height: 26px;
  appearance: none;
  position: relative;
  border: 0;
  border-radius: 999px;
  background: #cfd4dc;
  cursor: pointer;
  transition: background 0.22s ease, box-shadow 0.22s ease;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control input[type="checkbox"]::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(16, 24, 40, 0.18);
  transition: transform 0.22s cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control input[type="checkbox"]:checked {
  background: var(--blue);
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control input[type="checkbox"]:checked::after {
  transform: translateX(18px);
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control input[type="number"] {
  width: 66px;
  height: 38px;
  padding: 0 10px;
  border: 1px solid #d6e0ee;
  border-radius: 7px;
  font-size: 14px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control:has(#textImportShareAfterTransfer) {
  grid-column: 1 / -1;
  grid-row: 2;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control:has(#textImportRandomDelay) {
  grid-column: 1 / -1;
  grid-row: 3;
}

body.pantools-app-mode .pantools-feature-panel .netdisk-transfer-folder-drawer {
  position: fixed;
  inset: 0;
  z-index: 130;
  width: auto;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(16, 24, 40, 0.48);
  border: 0;
  box-shadow: none;
  backdrop-filter: blur(6px);
}

body.pantools-app-mode .pantools-feature-panel .netdisk-transfer-folder-drawer.hidden {
  display: none;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel {
  width: min(640px, calc(100vw - 48px));
  max-height: min(720px, calc(100vh - 48px));
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
  overflow: hidden;
  padding: 28px 32px 24px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 28px 72px rgba(16, 24, 40, 0.28);
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-side-head {
  min-height: 38px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0 0 18px;
  border: 0;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-side-head strong {
  color: #101828;
  font-size: 20px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .icon-close {
  width: 32px;
  height: 32px;
  color: #98a2b3;
  background: transparent;
  border: 0;
  font-size: 26px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-drawer-path {
  min-height: 44px;
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 0 0 12px;
  border-bottom: 1px solid #e6edf7;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-drawer-path .text-button {
  color: #98a2b3;
  background: transparent;
  border: 0;
  font-size: 14px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-drawer-path strong {
  color: #101828;
  font-size: 16px;
  justify-self: start;
  text-align: left;
  font-weight: 400;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-folder-list {
  min-height: 300px;
  max-height: 410px;
  overflow: auto;
  padding: 16px 2px;
  text-align: left;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-folder-row {
  width: 100%;
  min-height: 46px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 48px;
  align-items: center;
  justify-content: stretch;
  justify-items: start;
  gap: 10px;
  padding: 0 12px;
  color: #101828;
  background: #fff;
  border: 0;
  border-radius: 7px;
  text-align: left;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-folder-row:hover {
  background: #f8fafc;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-folder-row strong {
  justify-self: start;
  text-align: left;
  font-weight: 400;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-folder-row .netdisk-pan-filemark {
  width: 22px;
  height: 22px;
  color: #ff8a00;
  background: transparent;
  border: 0;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-folder-row > span:last-child {
  justify-self: end;
  color: #667085;
  font-size: 14px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-drawer-foot {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 18px 0 0;
  border-top: 0;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-drawer-foot > div:first-child {
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
  background: #fafafa;
  border-radius: 7px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-drawer-foot > div:last-child {
  display: flex;
  gap: 10px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-drawer-foot button {
  min-width: 88px;
  min-height: 38px;
  border-radius: 7px;
}

/* Pantools PanFlow parity fixes: keep the original feature wiring, normalize only visuals/interactions. */
body.pantools-app-mode .titlebar {
  height: 30px;
  background: #fff;
  border-bottom: 1px solid #e6edf7;
  box-shadow: none;
}

body.pantools-app-mode .layout {
  height: calc(100vh - 24px);
}

body.pantools-app-mode .content {
  padding: 18px 24px 22px;
  overflow: auto;
  background: #f5f7fb;
}

body.pantools-app-mode .notice-bar {
  min-height: 46px;
  margin: 0 0 14px;
  padding: 0 18px;
  border: 1px solid #ffe2a8;
  border-radius: var(--radius-sm);
  background: #fff8df;
  box-shadow: 0 6px 18px rgba(16, 24, 40, 0.04);
}

body.pantools-app-mode .tool-grid.netdisk-pan-grid {
  height: calc(100% - 60px);
  padding: 0;
}

body.pantools-app-mode .tool-grid.netdisk-pan-grid .netdisk-pan-shell.pantools-shell {
  min-height: 100%;
  border: 1px solid #dfe7f2;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-body-grid {
  gap: 14px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-targetbar {
  order: 4;
  grid-template-columns: minmax(0, 1fr) 176px;
  align-items: end;
  gap: 8px;
  margin-top: -4px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-targetbar label {
  margin: 0 0 2px;
  font-size: 14px;
  line-height: 1.2;
}

body.pantools-app-mode .pantools-feature-panel .transfer-dir-control {
  position: relative;
  display: block;
  align-items: center;
  cursor: pointer;
}

body.pantools-app-mode .pantools-feature-panel .transfer-dir-control input {
  min-height: 40px;
  height: 40px;
  width: 100%;
  padding: 0 46px 0 14px;
  border: 1px solid #d6e0ee;
  border-radius: 7px;
  background: #fff;
  font-size: 15px;
  cursor: pointer;
}

body.pantools-app-mode .pantools-feature-panel .transfer-dir-control button {
  position: absolute;
  right: 5px;
  top: 50%;
  width: 30px;
  min-width: 30px;
  height: 30px;
  min-height: 30px;
  display: grid;
  place-items: center;
  padding: 0;
  color: #ff8a00;
  background: transparent;
  border: 0;
  border-radius: 6px;
  box-shadow: none;
  transform: translateY(-50%);
}

body.pantools-app-mode .pantools-feature-panel .transfer-dir-control button .svg-icon {
  width: 18px;
  height: 18px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-import-simple-actions {
  grid-template-columns: 1fr 154px;
  gap: 10px 12px;
}

body.pantools-app-mode .pantools-feature-panel #textImportStartBtn {
  grid-column: auto;
  grid-row: auto;
  width: 150px;
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  justify-self: end;
  align-self: end;
  margin: 0;
  gap: 8px;
  padding: 0 18px;
  border-radius: 7px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  box-shadow: 0 12px 24px rgba(23, 100, 255, 0.16);
}

body.pantools-app-mode .pantools-feature-panel #textImportStartBtn .svg-icon {
  width: 15px;
  height: 15px;
  stroke-width: 2;
  transform: translateY(1px);
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control {
  min-height: 58px;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 10px;
  padding: 0 14px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control:has(#textImportRandomDelay) {
  grid-template-columns: 42px minmax(0, 1fr) 52px auto 52px 24px;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control .hidden-setting {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control input[type="number"] {
  width: 52px;
  height: 32px;
  padding: 0 7px;
  color: #101828;
  border: 1px solid #d6e0ee;
  border-radius: 7px;
  background: #fff;
  font-size: 12px;
  font-weight: 400;
  text-align: center;
}

.panflow-switch {
  position: relative;
  width: 44px;
  height: 26px;
  display: inline-block;
  flex: 0 0 44px;
}

.panflow-switch input {
  position: absolute !important;
  inset: 0;
  width: 44px !important;
  height: 26px !important;
  margin: 0 !important;
  opacity: 0;
  pointer-events: auto;
  cursor: pointer;
  z-index: 2;
}

.panflow-switch em {
  position: absolute;
  inset: 0;
  display: block;
  border-radius: 999px;
  background: #cfd4dc;
  box-shadow: inset 0 0 0 1px rgba(16, 24, 40, 0.04);
  transition: background 0.22s ease, box-shadow 0.22s ease;
}

.panflow-switch em::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 2px 5px rgba(16, 24, 40, 0.18);
  transition: transform 0.22s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.panflow-switch input:checked + em {
  background: var(--blue);
  box-shadow: inset 0 0 0 1px rgba(23, 100, 255, 0.08);
}

.panflow-switch input:checked + em::after {
  transform: translateX(18px);
}

.pantools-preserve-title {
  grid-template-columns: 44px auto;
  grid-template-areas:
    "switch title"
    "switch desc";
  column-gap: 10px;
}

.pantools-preserve-title .panflow-switch {
  grid-area: switch;
}

.pantools-preserve-title > strong {
  grid-area: title;
}

.pantools-preserve-title > small {
  grid-area: desc;
}

.pantools-preserve-title > span::after,
body.pantools-app-mode .pantools-feature-panel .transfer-delay-control input[type="checkbox"]::after {
  content: none;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control input[type="checkbox"] {
  width: auto;
  height: auto;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control .panflow-switch input,
.pantools-preserve-title .panflow-switch input {
  width: 44px !important;
  height: 26px !important;
  pointer-events: auto;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control .panflow-switch,
.pantools-preserve-title .panflow-switch {
  position: relative !important;
  width: 44px !important;
  height: 26px !important;
  display: block !important;
  flex: 0 0 44px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control .panflow-switch input,
.pantools-preserve-title .panflow-switch input {
  all: unset !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  width: 44px !important;
  height: 26px !important;
  opacity: 0 !important;
  cursor: pointer !important;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control .panflow-switch input::after,
.pantools-preserve-title .panflow-switch input::after {
  content: none !important;
  display: none !important;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control .panflow-switch em,
.pantools-preserve-title .panflow-switch em {
  position: absolute !important;
  inset: 0 !important;
  width: 44px !important;
  height: 26px !important;
  display: block !important;
  border-radius: 999px !important;
  background: #cfd4dc !important;
  box-shadow: inset 0 0 0 1px rgba(16, 24, 40, 0.04) !important;
  transition: background 0.22s ease, box-shadow 0.22s ease !important;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control .panflow-switch em::after,
.pantools-preserve-title .panflow-switch em::after {
  content: "" !important;
  position: absolute !important;
  top: 3px !important;
  left: 3px !important;
  width: 20px !important;
  height: 20px !important;
  display: block !important;
  border-radius: 999px !important;
  background: #fff !important;
  box-shadow: 0 2px 5px rgba(16, 24, 40, 0.18) !important;
  transition: transform 0.22s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control .panflow-switch input:checked + em,
.pantools-preserve-title .panflow-switch input:checked + em {
  background: var(--blue) !important;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control .panflow-switch input:checked + em::after,
.pantools-preserve-title .panflow-switch input:checked + em::after {
  transform: translateX(18px) !important;
}

body.pantools-app-mode .pantools-feature-panel .transfer-delay-control input.hidden-setting,
body.pantools-app-mode .pantools-feature-panel .transfer-delay-control input.hidden-setting::after {
  display: none !important;
  content: none !important;
}

body.pantools-app-mode .pantools-feature-panel .panflow-toggle,
.pantools-preserve-title .panflow-toggle {
  position: relative;
  width: 44px;
  height: 26px;
  display: inline-block;
  flex: 0 0 44px;
  border-radius: 999px;
  background: #cfd4dc;
  box-shadow: inset 0 0 0 1px rgba(16, 24, 40, 0.04);
  cursor: pointer;
  contain: layout paint;
  transform: translateZ(0);
  touch-action: manipulation;
  transition: background-color 120ms ease-out, box-shadow 120ms ease-out;
}

body.pantools-app-mode .pantools-feature-panel .panflow-toggle > span,
.pantools-preserve-title .panflow-toggle > span {
  position: absolute;
  left: 3px;
  top: 3px;
  width: 20px;
  height: 20px;
  display: block;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 2px 5px rgba(16, 24, 40, 0.18);
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden;
  will-change: transform;
  transition: transform 120ms ease-out;
}

body.pantools-app-mode .pantools-feature-panel .panflow-toggle.checked,
.pantools-preserve-title .panflow-toggle.checked,
body.pantools-app-mode .pantools-feature-panel .panflow-toggle-input:checked + .panflow-toggle,
.pantools-preserve-title .panflow-toggle-input:checked + .panflow-toggle {
  background: var(--blue);
}

body.pantools-app-mode .pantools-feature-panel .panflow-toggle.checked > span,
.pantools-preserve-title .panflow-toggle.checked > span,
body.pantools-app-mode .pantools-feature-panel .panflow-toggle-input:checked + .panflow-toggle > span,
.pantools-preserve-title .panflow-toggle-input:checked + .panflow-toggle > span {
  transform: translate3d(18px, 0, 0);
}

body.pantools-app-mode .pantools-feature-panel .panflow-toggle-input,
.pantools-preserve-title .panflow-toggle-input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Keep the outer category column identical when pantools is selected; only the inner Pantools workspace is compact. */
body.pantools-app-mode .app .layout > .sidebar {
  flex: 0 0 212px;
  width: 212px;
  max-width: 212px;
  min-width: 212px;
  padding: 0 0 14px;
  background: #f7f8fb;
  border-right: 1px solid var(--line);
}

body.pantools-app-mode .app .layout > .sidebar .category-menu {
  padding: 8px 0;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  max-width: none;
  margin: 0 6px 8px 8px;
  border: 1px solid #e4e9f1;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: -4px 0 0 rgba(23, 100, 255, 0.05);
}

body.pantools-app-mode .app .layout > .sidebar .category-group::before,
body.pantools-app-mode .app .layout > .sidebar .category-group-items::before {
  display: block;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-count,
body.pantools-app-mode .app .layout > .sidebar .category-chevron {
  display: inline;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle {
  min-height: 40px;
  grid-template-columns: 24px minmax(0, 1fr) auto auto;
  gap: 5px;
  padding: 6px 6px 6px 8px;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle strong {
  font-size: 13px;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-mark {
  width: 24px;
  height: 24px;
  border-radius: 7px;
  font-size: 13px;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-items {
  padding: 5px 0 3px 2px;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-items::before {
  left: 10px;
}

body.pantools-app-mode .app .layout > .sidebar .category-link {
  width: calc(100% - 8px);
  height: 39px;
  min-height: 39px;
  gap: 8px;
  margin: 0 3px 3px;
  padding: 0 7px 0 11px;
  font-size: 12px;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon,
body.pantools-app-mode .app .layout > .sidebar .category-link-icon {
  width: 16px;
  height: 16px;
  border-radius: 0;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon .svg-icon {
  width: 14px;
  height: 14px;
}

/* Make hover clearly lighter than active so the outer category menu never looks double-selected. */
.category-menu .category-group .category-link:not(.active):hover,
body.pantools-app-mode .app .layout > .sidebar .category-menu .category-group .category-link:not(.active):hover {
  color: #526277;
  background: rgba(23, 100, 255, 0.035);
  box-shadow: none;
}

.category-menu .category-group:nth-child(2) .category-link:not(.active):hover,
body.pantools-app-mode .app .layout > .sidebar .category-menu .category-group:nth-child(2) .category-link:not(.active):hover {
  color: #526277;
  background: rgba(11, 143, 114, 0.035);
}

.category-menu .category-group:nth-child(3) .category-link:not(.active):hover,
body.pantools-app-mode .app .layout > .sidebar .category-menu .category-group:nth-child(3) .category-link:not(.active):hover {
  color: #526277;
  background: rgba(198, 112, 15, 0.04);
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-page {
  display: grid;
  gap: 18px;
  padding: 0 4px 4px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-target {
  display: grid;
  gap: 8px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-target > label,
body.pantools-app-mode .pantools-feature-panel .pantools-move-confirm {
  color: #101828;
  font-size: 15px;
  font-weight: 800;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-page .transfer-dir-control {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 56px;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-page .transfer-dir-control input[readonly] {
  height: 46px;
  padding: 0 14px;
  color: #101828;
  background: #fff;
  border: 1px solid #d6e0ee;
  border-radius: 8px;
  font-size: 16px;
  cursor: pointer;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-page .transfer-dir-control button {
  width: 56px;
  height: 46px;
  color: #f59e0b;
  background: #fff;
  border: 1px solid #d6e0ee;
  border-radius: 8px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-confirm {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 14px;
  font-weight: 700;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-page .compact-result {
  min-height: 160px;
  max-height: 220px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-actions {
  grid-template-columns: 118px 150px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-actions #netdiskRunOperation {
  width: 150px;
  height: 42px;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 16px;
  border-radius: 7px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-actions #netdiskRunOperation .svg-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  transform: translateY(1px);
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-actions #netdiskRunOperation:disabled {
  color: #fff;
  background: linear-gradient(90deg, #8fb5ff 0%, #a8c9ff 100%);
  border-color: transparent;
  opacity: 1;
  box-shadow: 0 14px 32px rgba(90, 127, 255, 0.18);
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-page {
  display: grid;
  gap: 14px;
  padding: 0 4px 4px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head strong {
  color: #101828;
  font-size: 16px;
  font-weight: 850;
}

body.pantools-app-mode .pantools-feature-panel .pantools-check {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #667085;
  font-size: 13px;
  font-weight: 700;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-options {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-empty-rule,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-rules-summary > div:last-child {
  min-height: 72px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  color: #98a2b3;
  border: 1px dashed #d6e0ee;
  border-radius: 8px;
  background: #fff;
}

body.pantools-app-mode .pantools-feature-panel #pantoolsRenameRuleSummary span {
  display: inline-flex;
  align-items: center;
  height: 30px;
  padding: 0 12px;
  color: var(--blue);
  background: #eaf2ff;
  border: 1px solid #cfe0ff;
  border-radius: 7px;
  font-size: 13px;
  font-weight: 800;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-preview .compact-result {
  min-height: 210px;
  max-height: 260px;
  border: 1px solid #d6e0ee;
  border-radius: 8px;
  background: #fff;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions {
  grid-template-columns: 240px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions #netdiskRunOperation {
  width: 240px;
  height: 62px;
  justify-content: center;
  color: #fff;
  background: var(--blue);
  border-color: var(--blue);
  border-radius: 10px;
  font-size: 18px;
  font-weight: 850;
  box-shadow: none;
}

.pantools-rule-modal {
  position: fixed;
  inset: 0;
  z-index: 70;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(16, 24, 40, 0.58);
  backdrop-filter: blur(5px);
}

.pantools-rule-panel {
  width: min(760px, calc(100vw - 48px));
  min-height: 540px;
  max-height: calc(100vh - 80px);
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
  gap: 0;
  padding: 26px 30px;
  color: #101828;
  background: #fff;
  border: 1px solid #e6edf7;
  border-radius: 14px;
  box-shadow: 0 28px 70px rgba(16, 24, 40, 0.24);
}

.pantools-rule-panel > header,
.pantools-rule-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.pantools-rule-panel > header {
  margin-bottom: 22px;
}

.pantools-rule-panel > header strong {
  font-size: 22px;
  font-weight: 900;
}

.pantools-rule-panel > header span {
  display: inline-flex;
  margin-left: 10px;
  padding: 6px 12px;
  color: #667085;
  background: #f2f4f7;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 700;
}

.pantools-rule-topbar {
  min-height: 42px;
  padding-bottom: 12px;
  color: #667085;
  border-bottom: 1px solid #e6edf7;
}

.pantools-rule-topbar > span {
  margin-right: auto;
  font-size: 16px;
  font-weight: 700;
}

.pantools-rule-topbar .text-button {
  color: #667085;
  background: transparent;
  border: 0;
  box-shadow: none;
  font-size: 15px;
}

.pantools-rule-topbar .text-button:disabled {
  color: #c0c6d2;
}

.pantools-rule-drop {
  overflow: hidden;
  margin: 12px 0;
  padding: 14px 16px;
  border: 1px solid #d6e0ee;
  border-radius: 8px;
  background: #fff;
  animation: pantoolsRuleDrop 150ms ease-out;
}

.pantools-rule-drop.hidden {
  display: none;
}

@keyframes pantoolsRuleDrop {
  from { opacity: 0; transform: translateY(-10px); max-height: 0; }
  to { opacity: 1; transform: translateY(0); max-height: 220px; }
}

.pantools-rule-drop > strong {
  display: block;
  margin-bottom: 12px;
  color: #667085;
  font-size: 15px;
}

.pantools-rule-type-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pantools-rule-type-grid button {
  min-height: 34px;
  padding: 0 13px;
  color: var(--blue);
  background: #f5f9ff;
  border: 1px solid #b8d1ff;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 800;
}

.pantools-rule-groups {
  display: grid;
  gap: 8px;
}

.pantools-rule-groups button {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 12px;
  color: #101828;
  background: #f8fafc;
  border: 1px solid #e6edf7;
  border-radius: 7px;
  font-weight: 800;
}

.pantools-rule-groups small {
  color: #98a2b3;
}

.pantools-rule-list {
  min-height: 260px;
  overflow: auto;
  padding: 18px 0;
}

.pantools-rule-empty {
  min-height: 120px;
  display: grid;
  place-items: center;
  color: #98a2b3;
  font-size: 16px;
  text-align: center;
}

.pantools-rule-item {
  display: grid;
  grid-template-columns: 126px minmax(0, 1fr) minmax(0, 1fr) 76px;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  padding: 10px;
  border: 1px solid #e6edf7;
  border-radius: 8px;
  background: #fff;
}

.pantools-rule-item strong {
  font-size: 14px;
  font-weight: 850;
}

.pantools-rule-item input {
  height: 38px;
  padding: 0 12px;
  color: #101828;
  border: 1px solid #d6e0ee;
  border-radius: 7px;
  background: #fff;
  font-size: 14px;
}

.pantools-rule-item input[type="hidden"] {
  display: none;
}

.pantools-rule-item .danger {
  height: 38px;
  color: #ff4d4f;
  background: #fff1f2;
  border: 1px solid #ffd6d9;
  border-radius: 7px;
  font-weight: 800;
}

.pantools-rule-panel > footer {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  padding-top: 14px;
}

.pantools-rule-panel > footer button {
  min-width: 74px;
  height: 40px;
}

body.pantools-app-mode .netdisk-pan-shell.pantools-shell {
  background: linear-gradient(90deg, #fff 0 54px, #f8fafc 54px 230px, #f5f6f8 230px);
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar {
  border-right: 1px solid #e6edf7;
  background: #fff;
}

body.pantools-app-mode .pantools-account-pool {
  border-left: 1px solid #e6edf7;
  background: #f8fafc;
}

/* Final Pantools parity pass: keep the outer category area as compact as other groups
   and make the inner workspace read as one white PanFlow-style surface. */
body.pantools-app-mode .app .layout > .sidebar {
  flex: 0 0 178px !important;
  width: 178px !important;
  min-width: 178px !important;
  max-width: 178px !important;
  padding: 8px 7px 12px !important;
  background: #f7f8fb !important;
  border-right: 1px solid var(--line) !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-menu {
  padding: 0 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  width: auto !important;
  max-width: 164px !important;
  margin: 0 0 8px 1px !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle,
body.pantools-app-mode .app .layout > .sidebar .category-link {
  width: calc(100% - 8px) !important;
  min-height: 46px !important;
  height: 46px !important;
  padding: 6px 8px !important;
  gap: 7px !important;
  font-size: 12px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-link span:last-child,
body.pantools-app-mode .app .layout > .sidebar .category-group-toggle strong {
  font-size: 13px !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon,
body.pantools-app-mode .app .layout > .sidebar .category-link-icon {
  width: 30px !important;
  height: 30px !important;
  border-radius: 9px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon .svg-icon {
  width: 16px !important;
  height: 16px !important;
}

body.pantools-app-mode .netdisk-pan-shell.pantools-shell {
  grid-template-columns: 54px 176px minmax(0, 1fr) !important;
  background: linear-gradient(90deg, #ffffff 0 54px, #ffffff 54px 230px, #f5f6f8 230px) !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar {
  background: #fff !important;
  border-right: 1px solid #e6edf7 !important;
}

body.pantools-app-mode .pantools-account-pool {
  background: #fff !important;
  border-left: 0 !important;
  border-right: 1px solid #e6edf7 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-main,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost,
body.pantools-app-mode .pantools-shell .netdisk-pan-file-workspace,
body.pantools-app-mode .pantools-shell .netdisk-pan-file-browser {
  background: #f5f6f8 !important;
}

body.pantools-app-mode .app .layout > .sidebar {
  flex-basis: 170px !important;
  width: 170px !important;
  min-width: 170px !important;
  max-width: 170px !important;
  padding: 8px 5px 10px !important;
  background: #f4f7fb !important;
  border-right: 1px solid #e6edf7 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  max-width: 160px !important;
  margin-bottom: 6px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle,
body.pantools-app-mode .app .layout > .sidebar .category-link {
  width: calc(100% - 4px) !important;
  min-height: 36px !important;
  height: 36px !important;
  margin: 0 2px 2px !important;
  padding: 4px 6px !important;
  gap: 5px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon,
body.pantools-app-mode .app .layout > .sidebar .category-link-icon {
  width: 22px !important;
  height: 22px !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon .svg-icon,
body.pantools-app-mode .app .layout > .sidebar .category-link-icon .svg-icon {
  width: 14px !important;
  height: 14px !important;
}

/* Rec 0028 final: pantools matches 内容采集工具 exactly for the shared chrome. */
body.pantools-app-mode .app .layout > .sidebar {
  flex: 0 0 178px !important;
  width: 178px !important;
  min-width: 178px !important;
  max-width: 178px !important;
  padding: 0 0 14px !important;
  background: transparent !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-menu {
  padding: 8px 0 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  width: auto !important;
  max-width: 164px !important;
  margin: 0 6px 8px 8px !important;
  border: 1px solid #dfe8f5 !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.95) !important;
  box-shadow: none !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle {
  min-height: 40px !important;
  height: auto !important;
  grid-template-columns: 24px minmax(0, 1fr) auto auto !important;
  gap: 5px !important;
  padding: 6px 6px 6px 8px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-link {
  width: calc(100% - 8px) !important;
  height: 39px !important;
  min-height: 39px !important;
  gap: 8px !important;
  margin: 0 3px 3px !important;
  padding: 0 7px 0 11px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
}

body.pantools-app-mode .notice-bar {
  color: #7a4b00 !important;
  background: #fff8df !important;
  border: 1px solid #ffe2a8 !important;
  border-left: 4px solid #f4b740 !important;
  border-radius: 6px !important;
}

body.pantools-app-mode .more-products {
  width: auto !important;
  height: 52px !important;
  display: block !important;
  margin: auto 16px 0 !important;
  padding: 1px 6px !important;
  color: #7a4b00 !important;
  background: #fff8df !important;
  border: 1px solid #ffe2a8 !important;
  border-radius: 2px !important;
  font-size: 16px !important;
  align-items: normal !important;
  justify-content: normal !important;
}

/* Rec 0029 shadow cleanup: pan2 category cards must not cast a shadow. */
body.pantools-app-mode .app .layout > .sidebar .category-group {
  box-shadow: none !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  width: auto !important;
  max-width: 164px !important;
  margin: 0 6px 8px 8px !important;
  border: 1px solid #dfe8f5 !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.95) !important;
  box-shadow: 0 8px 22px rgba(16, 24, 40, 0.055), -7px 0 0 rgba(23, 100, 255, 0.08) !important;
}

/* Rec 0028: pantools directly reuses the proven left menu and banner metrics. */
body.pantools-app-mode .app .layout > .sidebar {
  flex: 0 0 178px !important;
  width: 178px !important;
  min-width: 178px !important;
  max-width: 178px !important;
  padding: 0 0 14px !important;
  background: transparent !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-menu {
  padding: 0 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  width: auto !important;
  max-width: 164px !important;
  margin: 0 6px 8px 12px !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle {
  min-height: 40px !important;
  height: auto !important;
  grid-template-columns: 24px minmax(0, 1fr) auto auto !important;
  gap: 5px !important;
  padding: 6px 6px 6px 8px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-link {
  width: calc(100% - 8px) !important;
  height: 39px !important;
  min-height: 39px !important;
  gap: 8px !important;
  margin: 0 3px 3px !important;
  padding: 0 7px 0 11px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
}

body.pantools-app-mode .notice-bar {
  color: #7a4b00 !important;
  background: #fff8df !important;
  border: 1px solid #ffe2a8 !important;
  border-left: 4px solid #f4b740 !important;
  border-radius: 6px !important;
}

body.pantools-app-mode .more-products {
  width: auto !important;
  height: 52px !important;
  display: block !important;
  margin: auto 16px 0 !important;
  padding: 1px 6px !important;
  color: #7a4b00 !important;
  background: #fff8df !important;
  border: 1px solid #ffe2a8 !important;
  border-radius: 2px !important;
  font-size: 16px !important;
  align-items: normal !important;
  justify-content: normal !important;
}

/* Rec 0027: pantools also keeps the gold notice rail and bottom product entry. */
body.pantools-app-mode .notice-bar {
  color: #7a4b00 !important;
  background: #fff8df !important;
  border: 1px solid #ffe2a8 !important;
  border-left: 6px solid #f0b429 !important;
  border-radius: 6px 0 0 6px !important;
}

body.pantools-app-mode .more-products {
  width: calc(100% - 32px) !important;
  height: 52px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: auto 16px 0 !important;
  color: #7a4b00 !important;
  background: #fff8df !important;
  border: 1px solid #ffe2a8 !important;
  border-radius: 2px !important;
  font-size: 16px !important;
}

body.pantools-app-mode .more-products:hover {
  color: #9a5d00 !important;
  background: #fff4cc !important;
  border-color: #ffd58a !important;
}

/* Video 0026 parity: pantools keeps the same compact outer menu as other tools. */
body.pantools-app-mode .app .layout > .sidebar {
  flex: 0 0 154px !important;
  width: 154px !important;
  min-width: 154px !important;
  max-width: 154px !important;
  padding: 10px 7px 12px !important;
  background: #eef4ff !important;
  border-right: 1px solid #d6e0ee !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-menu {
  padding: 0 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  width: auto !important;
  max-width: 140px !important;
  margin: 0 0 8px !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle,
body.pantools-app-mode .app .layout > .sidebar .category-link {
  width: calc(100% - 8px) !important;
  min-height: 39px !important;
  height: 39px !important;
  margin: 0 4px 3px !important;
  padding: 0 7px 0 11px !important;
  gap: 8px !important;
  font-size: 12px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle {
  grid-template-columns: 24px minmax(0, 1fr) auto auto !important;
  padding: 6px 6px 6px 8px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-link span:last-child,
body.pantools-app-mode .app .layout > .sidebar .category-group-toggle strong {
  font-size: 12px !important;
  line-height: normal !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-mark {
  width: 24px !important;
  height: 24px !important;
  border-radius: 7px !important;
  font-size: 13px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon,
body.pantools-app-mode .app .layout > .sidebar .category-link-icon {
  width: 16px !important;
  height: 16px !important;
  flex-basis: 16px !important;
  border-radius: 0 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon .svg-icon,
body.pantools-app-mode .app .layout > .sidebar .category-link-icon .svg-icon {
  width: 14px !important;
  height: 14px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-link span:last-child,
body.pantools-app-mode .app .layout > .sidebar .category-group-toggle strong {
  font-size: 12px !important;
  line-height: 1.15 !important;
}

body.pantools-app-mode .category-group-items {
  padding: 3px 0 2px !important;
}

body.pantools-app-mode .netdisk-pan-shell.pantools-shell {
  grid-template-columns: 82px 300px minmax(0, 1fr) !important;
  background: linear-gradient(90deg, #ffffff 0 82px, #ffffff 82px 382px, #f5f6f8 382px) !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar,
body.pantools-app-mode .pantools-account-pool {
  background: #fff !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-main,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost,
body.pantools-app-mode .pantools-shell .netdisk-pan-file-workspace,
body.pantools-app-mode .pantools-shell .netdisk-pan-file-browser {
  background: #f5f6f8 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar {
  width: 82px !important;
  padding: 18px 5px 16px !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem {
  width: 70px !important;
  min-height: 60px !important;
}

body.pantools-app-mode .pantools-account-pool {
  padding: 18px 14px 14px !important;
}

body.pantools-app-mode .pantools-account-card {
  grid-template-columns: 42px minmax(0, 1fr) 28px !important;
  min-height: 62px !important;
  padding: 9px 8px 9px 10px !important;
}

body.pantools-app-mode .pantools-account-logo,
body.pantools-app-mode .pantools-account-logo img {
  width: 38px !important;
  height: 38px !important;
  border-radius: 10px !important;
}

body.pantools-app-mode .pantools-account-info strong {
  font-size: 14px !important;
}

body.pantools-app-mode .pantools-account-info i {
  width: 110px !important;
}

body.pantools-app-mode .pantools-copy-page {
  display: grid;
  gap: 22px;
  padding: 28px 32px 32px;
  background: #fff;
}

body.pantools-app-mode .pantools-copy-page .pantools-copy-target-inline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 224px;
  grid-template-areas:
    "field button"
    "targets targets";
  align-items: end;
  gap: 10px 48px;
}

body.pantools-app-mode .pantools-copy-target-field {
  grid-area: field;
  display: grid;
  gap: 8px;
}

body.pantools-app-mode .pantools-copy-page .transfer-dir-control {
  grid-template-columns: minmax(0, 1fr) 56px;
  height: 60px;
  border-radius: 8px;
}

body.pantools-app-mode .pantools-copy-page .transfer-dir-control input {
  height: 60px;
  padding: 0 18px;
  font-size: 16px;
}

body.pantools-app-mode .pantools-copy-page .transfer-dir-control button {
  height: 60px;
  color: #f07800;
  background: #fff;
  border-left: 0;
}

body.pantools-app-mode .pantools-copy-start {
  grid-area: button;
  min-height: 60px;
  min-width: 224px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: 0;
  border-radius: 8px;
  background: var(--blue);
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  box-shadow: 0 18px 36px rgba(23, 100, 255, 0.18);
}

body.pantools-app-mode .pantools-copy-start:hover:not(:disabled) {
  background: var(--blue-dark);
}

body.pantools-app-mode .pantools-copy-start:disabled {
  opacity: 0.58;
  cursor: not-allowed;
}

body.pantools-app-mode .pantools-copy-page #pantoolsCopyTargetList {
  grid-area: targets;
  margin: 4px 0 0;
}

body.pantools-app-mode .pantools-copy-page #netdiskOperationPreview,
body.pantools-app-mode .pantools-copy-page #netdiskPreviewOperation {
  display: none !important;
}

body.pantools-app-mode .pantools-copy-actions {
  display: block;
  min-height: 0;
  padding: 0;
  background: transparent;
  border: 0;
}

body.pantools-app-mode .pantools-copy-actions #pantoolsMoveState {
  color: #667085;
  font-size: 13px;
}

/* Final fix: selecting pantools must not resize the outer product category menu. */
body.pantools-app-mode .app .layout > .sidebar {
  flex: 0 0 212px !important;
  width: 212px !important;
  min-width: 212px !important;
  max-width: 212px !important;
  padding: 0 0 14px !important;
  background: #f7f8fb !important;
  border-right: 1px solid var(--line) !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-menu {
  padding: 12px 0 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  width: auto !important;
  max-width: none !important;
  margin: 0 6px 10px 12px !important;
  border: 1px solid #e4e9f1 !important;
  border-radius: 10px !important;
  background: rgba(255, 255, 255, 0.72) !important;
  box-shadow: -4px 0 0 rgba(23, 100, 255, 0.05) !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group::before,
body.pantools-app-mode .app .layout > .sidebar .category-group-items::before {
  display: block !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle {
  width: 100% !important;
  min-height: 48px !important;
  height: auto !important;
  grid-template-columns: 28px minmax(0, 1fr) auto auto !important;
  gap: 7px !important;
  margin: 0 !important;
  padding: 8px 8px !important;
  font-size: inherit !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle strong {
  font-size: 15px !important;
  line-height: 1.25 !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-mark {
  width: 28px !important;
  height: 28px !important;
  border-radius: 8px !important;
  font-size: inherit !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-count,
body.pantools-app-mode .app .layout > .sidebar .category-chevron {
  display: inline !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-items {
  padding: 7px 0 3px 5px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-link {
  width: calc(100% - 8px) !important;
  height: 48px !important;
  min-height: 48px !important;
  gap: 12px !important;
  margin: 0 4px 4px !important;
  padding: 0 10px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-link span:last-child {
  font-size: 13px !important;
  line-height: normal !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon,
body.pantools-app-mode .app .layout > .sidebar .category-link-icon {
  width: 19px !important;
  height: 19px !important;
  border-radius: 0 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon .svg-icon,
body.pantools-app-mode .app .layout > .sidebar .category-link-icon .svg-icon {
  width: 17px !important;
  height: 17px !important;
}

/* Final-final: pantools keeps the same outer menu width as 内容采集工具. */
body.pantools-app-mode .app .layout > .sidebar {
  flex: 0 0 178px !important;
  width: 178px !important;
  min-width: 178px !important;
  max-width: 178px !important;
  padding: 8px 7px 12px !important;
  background: #f7f8fb !important;
  border-right: 1px solid var(--line) !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-menu {
  padding: 0 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  width: auto !important;
  max-width: 164px !important;
  margin: 0 0 8px 1px !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle {
  min-height: 40px !important;
  height: auto !important;
  grid-template-columns: 24px minmax(0, 1fr) auto auto !important;
  gap: 5px !important;
  padding: 6px 6px 6px 8px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle strong {
  font-size: 13px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-mark {
  width: 24px !important;
  height: 24px !important;
  border-radius: 7px !important;
  font-size: 13px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-items {
  padding: 5px 0 3px 2px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-items::before {
  left: 10px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-link {
  width: calc(100% - 8px) !important;
  height: 39px !important;
  min-height: 39px !important;
  gap: 8px !important;
  margin: 0 3px 3px !important;
  padding: 0 7px 0 11px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-link span:last-child {
  font-size: 12px !important;
  line-height: normal !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon,
body.pantools-app-mode .app .layout > .sidebar .category-link-icon {
  width: 16px !important;
  height: 16px !important;
  flex-basis: 16px !important;
  border-radius: 0 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-icon .svg-icon,
body.pantools-app-mode .app .layout > .sidebar .category-link-icon .svg-icon {
  width: 14px !important;
  height: 14px !important;
}

/* Rec 0029 true final: pantools uses the exact same chrome metrics as 内容采集工具. */
body.pantools-app-mode .app .layout > .sidebar {
  flex: 0 0 178px !important;
  width: 178px !important;
  min-width: 178px !important;
  max-width: 178px !important;
  padding: 0 0 14px !important;
  background: transparent !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-menu {
  padding: 8px 0 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  width: auto !important;
  max-width: 164px !important;
  margin: 0 6px 8px 8px !important;
  border: 1px solid #dfe8f5 !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.95) !important;
  box-shadow: none !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle {
  min-height: 40px !important;
  height: auto !important;
  grid-template-columns: 24px minmax(0, 1fr) auto auto !important;
  gap: 5px !important;
  padding: 6px 6px 6px 8px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-link {
  width: calc(100% - 8px) !important;
  height: 39px !important;
  min-height: 39px !important;
  gap: 8px !important;
  margin: 0 3px 3px !important;
  padding: 0 7px 0 11px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
}

body.pantools-app-mode .notice-bar {
  color: #7a4b00 !important;
  background: #fff8df !important;
  border: 1px solid #ffe2a8 !important;
  border-left: 4px solid #f4b740 !important;
  border-radius: 6px !important;
}

body.pantools-app-mode .more-products {
  width: auto !important;
  height: 52px !important;
  display: block !important;
  margin: auto 16px 0 !important;
  padding: 1px 6px !important;
  color: #7a4b00 !important;
  background: #fff8df !important;
  border: 1px solid #ffe2a8 !important;
  border-radius: 2px !important;
  font-size: 16px !important;
  align-items: normal !important;
  justify-content: normal !important;
}

/* Rec 0030: remove every shadow-like effect from the pan2 left category area. */
body.pantools-app-mode .app .layout > .sidebar,
body.pantools-app-mode .app .layout > .sidebar .category-menu,
body.pantools-app-mode .app .layout > .sidebar .category-group,
body.pantools-app-mode .app .layout > .sidebar .category-group-toggle,
body.pantools-app-mode .app .layout > .sidebar .category-link,
body.pantools-app-mode .app .layout > .sidebar .category-link.active {
  box-shadow: none !important;
  filter: none !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group::before,
body.pantools-app-mode .app .layout > .sidebar .category-group::after,
body.pantools-app-mode .app .layout > .sidebar .category-group-items::before,
body.pantools-app-mode .app .layout > .sidebar .category-group-items::after,
body.pantools-app-mode .app .layout > .sidebar .category-link::before,
body.pantools-app-mode .app .layout > .sidebar .category-link::after {
  box-shadow: none !important;
  filter: none !important;
}

/* Rec 0030 visual cleanup: remove the outer card edge the user pointed at. */
body.pantools-app-mode .app .layout > .sidebar .category-group {
  border-color: transparent !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group::before,
body.pantools-app-mode .app .layout > .sidebar .category-group::after,
body.pantools-app-mode .app .layout > .sidebar .category-group-items::before,
body.pantools-app-mode .app .layout > .sidebar .category-group-items::after {
  display: none !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-items {
  border-top-color: transparent !important;
}

/* Rec 0031: pan2 category chrome must match the other categories. */
body.pantools-app-mode .app .layout > .sidebar .category-group {
  border: 1px solid #dfe8f5 !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.95) !important;
  box-shadow: 0 8px 22px rgba(16, 24, 40, 0.055), -7px 0 0 rgba(23, 100, 255, 0.08) !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group::before {
  display: block !important;
  box-shadow: none !important;
  filter: none !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-items {
  border-top-color: #edf0f5 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-items::before {
  display: block !important;
  box-shadow: none !important;
  filter: none !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-link.active {
  box-shadow: inset 4px 0 0 var(--blue), 0 6px 14px rgba(23, 100, 255, 0.07) !important;
}

/* Keep the upper and lower left-panel separators visually identical. */
body.pantools-app-mode .app .layout > .sidebar {
  border-right-color: #d7e1ee !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar,
body.pantools-app-mode .pantools-account-pool {
  border-right-color: #d7e1ee !important;
}

/* Pantools rename/upload reference parity layer. Scoped to the requested local UI only. */
body.pantools-app-mode .pantools-feature-panel:has(.pantools-rename-page) {
  width: min(897px, 100vw);
  max-height: none;
  display: block;
  overflow: visible;
  border-radius: 14px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-page {
  width: 100%;
  box-sizing: border-box;
  max-width: none;
  min-height: 800px;
  margin: 0 auto;
  padding: 34px 34px 24px;
  gap: 22px;
  border-radius: 14px;
  background: #fff;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected {
  display: grid;
  gap: 16px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head > strong {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #101828;
  font-size: 20px;
  font-weight: 900;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head > strong span {
  min-width: 28px;
  height: 28px;
  display: inline-grid;
  place-items: center;
  padding: 0 8px;
  border-radius: 999px;
  color: #fff;
  background: var(--blue);
  font-size: 15px;
  font-weight: 850;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-options {
  justify-content: flex-end;
  gap: 18px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-check {
  color: #667085;
  font-size: 16px;
  font-weight: 650;
}

body.pantools-app-mode .pantools-feature-panel .pantools-check input {
  width: 20px;
  height: 20px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-list {
  min-height: 58px;
  display: flex;
  align-items: center;
  padding: 0 20px;
  border: 0;
  border-radius: 8px;
  background: #fafafa;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-list > div {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #101828;
  font-size: 20px;
  background: transparent;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-list strong {
  font-size: 20px;
  font-weight: 500;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head {
  margin-bottom: 18px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head strong {
  font-size: 22px;
  font-weight: 900;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head .text-button {
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  white-space: nowrap;
  color: #667085;
  background: transparent;
  border: 0;
  box-shadow: none;
  font-size: 16px;
  font-weight: 650;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head .svg-icon {
  width: 18px;
  height: 18px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-empty-rule,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-rules-summary > div:last-child {
  min-height: 68px;
  justify-content: center;
  color: #98a2b3;
  border: 1px dashed #d6e0ee;
  border-radius: 8px;
  background: #fff;
  font-size: 20px;
  font-weight: 500;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-preview {
  display: grid;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-preview .compact-result {
  min-height: 424px;
  max-height: 424px;
  padding: 188px 24px 24px;
  color: #98a2b3;
  border: 1px solid #d6e0ee;
  border-radius: 8px;
  background: #fff;
  text-align: center;
  font-size: 20px;
  resize: none;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-confirm {
  margin-top: -6px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 198px;
  justify-items: end;
  align-items: center;
  gap: 16px;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions #pantoolsRenameState {
  grid-column: 1;
  justify-self: start;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions #netdiskRunOperation {
  grid-column: 2;
  width: 198px;
  height: 58px;
  min-height: 58px;
  border-radius: 8px;
  background: var(--blue);
  border-color: var(--blue);
  color: #fff;
  font-size: 18px;
  font-weight: 850;
  box-shadow: 0 18px 36px rgba(23, 100, 255, 0.16);
}

.pantools-upload-modal-panel {
  width: min(773px, 100vw);
  min-height: 660px;
  max-height: none;
  border-radius: 10px;
}

.pantools-upload-modal-panel .modal-head {
  min-height: 92px;
  padding: 0 30px;
  border-bottom: 0;
}

.pantools-upload-modal-panel .modal-head h2 {
  font-size: 28px;
  font-weight: 900;
}

.pantools-upload-modal-panel .icon-close {
  border: 0;
  background: transparent;
  color: #98a2b3;
  font-size: 32px;
}

.pantools-upload-modal-panel .pantools-modal-body {
  flex: 0 0 auto;
  padding: 0 31px;
}

.pantools-upload-modal-layout {
  gap: 24px;
}

.pantools-upload-section,
.pantools-upload-list {
  display: grid;
  gap: 14px;
}

.pantools-upload-section > strong,
.pantools-upload-list > strong {
  color: #101828;
  font-size: 22px;
  font-weight: 900;
}

.pantools-upload-target {
  justify-content: flex-start;
  min-height: 70px;
  padding: 0 20px;
  border: 1px solid #dfe7f3;
  border-radius: 8px;
  background: #fff;
}

.pantools-upload-target i {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  color: #f59e0b;
}

.pantools-upload-target .svg-icon {
  width: 22px;
  height: 22px;
}

.pantools-upload-target span {
  color: #101828;
  font-size: 20px;
  text-align: left;
}

.pantools-upload-list > strong span {
  color: #101828;
  font-size: 22px;
  font-weight: 900;
}

body.pantools-app-mode .pantools-upload-modal-panel .pantools-upload-list .compact-result {
  height: 104px;
  min-height: 104px;
  max-height: 104px;
  padding: 34px 18px;
  color: #98a2b3;
  border: 1px solid #dfe7f3;
  border-radius: 8px;
  background: #fff;
  font-size: 20px;
  text-align: center;
}

.pantools-upload-card-row {
  gap: 20px;
}

.pantools-upload-card {
  min-height: 118px;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 18px;
  padding: 22px 26px;
  border: 1px solid #dfe7f3;
  border-radius: 10px;
  background: #fff;
}

.pantools-upload-card i {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: #f0eaff;
  color: var(--blue);
}

.pantools-upload-card:nth-child(2) i {
  background: #fff4e4;
  color: #f59e0b;
}

.pantools-upload-card strong {
  color: #101828;
  font-size: 20px;
  font-weight: 900;
}

.pantools-upload-card small {
  color: #98a2b3;
  font-size: 16px;
}

.pantools-upload-modal-panel .modal-foot {
  margin-top: auto;
  justify-content: flex-end;
  gap: 18px;
  padding: 52px 31px 28px;
  border-top: 0;
}

.pantools-upload-modal-panel .modal-foot button {
  min-width: 78px;
  height: 48px;
  border-radius: 8px;
  font-size: 18px;
}

.pantools-upload-modal-panel .modal-foot .pantools-modal-primary {
  min-width: 136px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  white-space: nowrap;
  color: #fff !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
}

.pantools-delete-modal,
.pantools-download-modal {
  background: rgba(16, 24, 40, 0.46);
  backdrop-filter: blur(7px);
}

.pantools-delete-modal-panel {
  width: min(600px, calc(100vw - 64px));
  min-height: 416px;
  border-radius: 16px;
  background: #fff;
}

.pantools-download-modal-panel {
  width: min(780px, calc(100vw - 64px));
  min-height: 534px;
  border-radius: 16px;
  background: #fff;
}

.pantools-delete-modal-panel .modal-head,
.pantools-download-modal-panel .modal-head {
  min-height: 86px;
  padding: 0 36px;
  border-bottom: 0;
}

.pantools-delete-modal-panel .modal-head h2,
.pantools-download-modal-panel .modal-head h2 {
  color: #101828;
  font-size: 28px;
  font-weight: 900;
}

.pantools-delete-modal-panel .icon-close,
.pantools-download-modal-panel .icon-close {
  width: 36px;
  height: 36px;
  border: 0;
  background: transparent;
  color: #98a2b3;
  font-size: 34px;
  font-weight: 300;
}

.pantools-delete-modal-panel .pantools-modal-body,
.pantools-download-modal-panel .pantools-modal-body {
  padding: 0 36px;
}

.pantools-delete-confirm {
  display: grid;
  justify-items: center;
  gap: 22px;
}

.pantools-delete-warning {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  color: #d97706;
}

.pantools-delete-warning .svg-icon {
  width: 52px;
  height: 52px;
  stroke-width: 1.8;
}

.pantools-delete-confirm p {
  margin: 0;
  color: #101828;
  font-size: 20px;
  line-height: 1.5;
  text-align: center;
}

.pantools-delete-list,
.pantools-download-list {
  width: 100%;
  display: grid;
  gap: 0;
  overflow: hidden;
  border: 1px solid #e6edf7;
  border-radius: 8px;
  background: #fbfcfe;
}

.pantools-delete-list {
  min-height: 60px;
  border-color: transparent;
  background: #fafafa;
}

.pantools-file-list-item {
  min-height: 68px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 0 24px;
}

.pantools-file-list-item + .pantools-file-list-item {
  border-top: 1px solid #e6edf7;
}

.pantools-file-list-item strong {
  overflow: hidden;
  color: #475467;
  font-size: 20px;
  font-weight: 500;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pantools-delete-list .netdisk-pan-filemark,
.pantools-download-list .netdisk-pan-filemark {
  color: #f59e0b;
  background: transparent;
}

.pantools-delete-list .netdisk-pan-filemark.file,
.pantools-download-list .netdisk-pan-filemark.file {
  color: #98a2b3;
}

.pantools-delete-modal-panel .modal-foot,
.pantools-download-modal-panel .modal-foot {
  margin-top: auto;
  justify-content: flex-end;
  gap: 18px;
  padding: 54px 36px 30px;
  border-top: 0;
}

.pantools-delete-modal-panel .modal-foot button,
.pantools-download-modal-panel .modal-foot button {
  min-width: 78px;
  height: 48px;
  border-radius: 8px;
  font-size: 18px;
}

.pantools-delete-modal-panel .modal-foot .pantools-modal-primary {
  min-width: 116px;
  color: #ff4d4f;
  background: #fff;
  border-color: #d6e0ee;
}

.pantools-download-box {
  display: grid;
  gap: 28px;
}

.pantools-download-title {
  display: block;
  margin-bottom: -14px;
  color: #101828;
  font-size: 24px;
  font-weight: 900;
}

.pantools-download-dir {
  width: 100%;
  min-height: 72px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 0 20px;
  border: 1px solid #dfe7f3;
  border-radius: 8px;
  background: #fff;
  text-align: left;
}

.pantools-download-dir span {
  color: #f59e0b;
}

.pantools-download-dir strong {
  overflow: hidden;
  color: #98a2b3;
  font-size: 20px;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pantools-download-dir em {
  color: #475467;
  font-size: 18px;
  font-style: normal;
}

.pantools-download-note {
  min-height: 20px;
  margin: -12px 0 0;
  color: #667085;
  font-size: 13px;
}

.pantools-download-modal-panel .modal-foot .pantools-modal-primary {
  min-width: 140px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.pantools-download-modal-panel .modal-foot .pantools-modal-primary:disabled {
  color: #fff;
  background: #b9c8ff;
  border-color: #b9c8ff;
  box-shadow: none;
}

.pantools-rule-modal {
  background: rgba(16, 24, 40, 0.62);
  backdrop-filter: blur(7px);
}

.pantools-rule-panel {
  width: min(900px, 100vw);
  min-height: 644px;
  max-height: calc(100vh - 64px);
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
  padding: 35px 28px 20px;
  border-radius: 16px;
}

.pantools-rule-panel > header {
  margin-bottom: 28px;
}

.pantools-rule-panel > header strong {
  font-size: 28px;
  font-weight: 900;
}

.pantools-rule-panel > header span {
  margin-left: 12px;
  padding: 9px 14px;
  border-radius: 6px;
  font-size: 17px;
  font-weight: 500;
}

.pantools-rule-panel > header .icon-close {
  border: 0;
  background: transparent;
  color: #98a2b3;
  font-size: 34px;
}

.pantools-rule-topbar {
  min-height: 42px;
  padding-bottom: 14px;
}

.pantools-rule-topbar > span,
.pantools-rule-topbar .text-button {
  font-size: 18px;
  font-weight: 500;
}

.pantools-rule-drop {
  margin: 14px 0 26px;
  padding: 16px 19px 12px;
  border: 1px solid #dfe7f3;
  border-radius: 8px;
  background: #fff;
}

.pantools-rule-drop > strong {
  margin-bottom: 15px;
  color: #667085;
  font-size: 17px;
  font-weight: 500;
}

.pantools-rule-type-grid {
  gap: 9px;
}

.pantools-rule-type-grid button {
  min-height: 34px;
  padding: 0 13px;
  border-radius: 6px;
  font-size: 15px;
  font-weight: 750;
}

.pantools-rule-type-grid button:nth-child(1) { color: #9a6500; background: #fff8e6; border-color: #f59e0b; }
.pantools-rule-type-grid button:nth-child(2) { color: #087443; background: #ecfdf3; border-color: #12b76a; }
.pantools-rule-type-grid button:nth-child(3) { color: #0f5fb5; background: #eff8ff; border-color: #2e90fa; }
.pantools-rule-type-grid button:nth-child(4) { color: #b42318; background: #fff1f3; border-color: #f97066; }
.pantools-rule-type-grid button:nth-child(5) { color: #b42354; background: #fff1f6; border-color: #f670c7; }
.pantools-rule-type-grid button:nth-child(6) { color: #4e3ab8; background: #f4f1ff; border-color: #7a5af8; }
.pantools-rule-type-grid button:nth-child(7) { color: #3b7a13; background: #f3fee7; border-color: #65a30d; }

.pantools-rule-groups {
  min-height: 100px;
  border-radius: 8px;
}

.pantools-rule-groups .pantools-rule-empty {
  min-height: 74px;
}

.pantools-rule-list {
  min-height: 310px;
  padding: 24px 0 0;
}

.pantools-rule-empty {
  min-height: 150px;
  color: #98a2b3;
  font-size: 20px;
}

.pantools-rule-panel > footer {
  gap: 18px;
  padding-top: 18px;
}

.pantools-rule-panel > footer button {
  min-width: 74px;
  height: 48px;
  border-radius: 8px;
  font-size: 18px;
}

.pantools-rule-panel > footer .primary {
  min-width: 78px;
  color: #fff !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
}

/* Pantools final local parity locks: rename/upload/rule dialogs only. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename {
  z-index: 120 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head {
  min-height: 86px !important;
  align-items: center !important;
  padding: 0 34px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head p {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head h2 {
  font-size: 28px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
}

.pantools-action-modal:has(.pantools-upload-modal-panel) {
  z-index: 220 !important;
}

.pantools-rule-modal {
  z-index: 230 !important;
}

body.pantools-app-mode .pantools-feature-panel:has(.pantools-rename-page) {
  width: min(897px, 100vw) !important;
  overflow: visible !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-page {
  min-height: 800px !important;
  padding: 34px 34px 24px !important;
  gap: 22px !important;
  background: #fff !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head,
.pantools-rule-panel > header,
.pantools-rule-topbar,
.pantools-upload-modal-panel .modal-head,
.pantools-upload-modal-panel .modal-foot {
  display: flex !important;
  align-items: center !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head {
  justify-content: space-between !important;
  gap: 24px !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head > strong {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  white-space: nowrap !important;
  font-size: 20px !important;
  font-weight: 900 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-options {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-check {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  white-space: nowrap !important;
  color: #667085 !important;
  font-size: 16px !important;
  font-weight: 650 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-check input {
  width: 20px !important;
  height: 20px !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-list {
  min-height: 58px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 20px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #fafafa !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head {
  justify-content: space-between !important;
  gap: 16px !important;
  margin-bottom: 18px !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head strong {
  white-space: nowrap !important;
  color: #101828 !important;
  font-size: 22px !important;
  font-weight: 900 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head .text-button,
.pantools-rule-topbar .text-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head .text-button {
  min-height: 30px !important;
  color: #667085 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 16px !important;
  font-weight: 650 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-empty-rule,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-rules-summary > div:last-child {
  min-height: 68px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #98a2b3 !important;
  border: 1px dashed #d6e0ee !important;
  border-radius: 8px !important;
  background: #fff !important;
  font-size: 20px !important;
  font-weight: 500 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-preview .compact-result {
  min-height: 424px !important;
  max-height: 424px !important;
  padding: 188px 24px 24px !important;
  color: #98a2b3 !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 8px !important;
  background: #fff !important;
  text-align: center !important;
  font-size: 20px !important;
  resize: none !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-preview {
  position: relative !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-preview.pantools-preview-empty .compact-result {
  color: transparent !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-preview.pantools-preview-empty::after {
  content: "配置规则后点击「预览效果」查看结果";
  position: absolute;
  left: 50%;
  top: 58%;
  transform: translate(-50%, -50%);
  color: #98a2b3;
  font-size: 20px;
  font-weight: 500;
  pointer-events: none;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 198px !important;
  align-items: center !important;
  justify-items: end !important;
  gap: 16px !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions #netdiskRunOperation {
  grid-column: 2 !important;
  width: 198px !important;
  height: 58px !important;
  min-height: 58px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
  color: #fff !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
  border-radius: 8px !important;
  font-size: 18px !important;
  font-weight: 850 !important;
  box-shadow: 0 18px 36px rgba(23, 100, 255, 0.16) !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions #netdiskRunOperation .svg-icon,
.pantools-upload-modal-panel .pantools-modal-primary .svg-icon {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
}

.pantools-upload-modal-panel {
  width: min(773px, 100vw) !important;
  min-height: 660px !important;
  border-radius: 10px !important;
}

.pantools-upload-modal-panel .modal-head {
  min-height: 92px !important;
  justify-content: space-between !important;
  padding: 0 30px !important;
  border-bottom: 0 !important;
}

.pantools-upload-modal-panel .modal-head h2 {
  color: #101828 !important;
  font-size: 28px !important;
  font-weight: 900 !important;
}

.pantools-upload-modal-panel .icon-close {
  border: 0 !important;
  background: transparent !important;
  color: #98a2b3 !important;
  font-size: 32px !important;
}

.pantools-upload-modal-panel .pantools-modal-body {
  flex: 0 0 auto !important;
  padding: 0 31px !important;
}

.pantools-upload-modal-layout {
  gap: 24px !important;
}

.pantools-upload-section,
.pantools-upload-list {
  display: grid !important;
  gap: 14px !important;
}

.pantools-upload-section > strong,
.pantools-upload-list > strong {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  color: #101828 !important;
  font-size: 22px !important;
  font-weight: 900 !important;
}

.pantools-upload-target {
  min-height: 70px !important;
  justify-content: flex-start !important;
  padding: 0 20px !important;
  border: 1px solid #dfe7f3 !important;
  border-radius: 8px !important;
  background: #fff !important;
}

body.pantools-app-mode .pantools-upload-modal-panel .pantools-upload-list .compact-result {
  height: 104px !important;
  min-height: 104px !important;
  max-height: 104px !important;
  padding: 34px 18px !important;
  color: #98a2b3 !important;
  border: 1px solid #dfe7f3 !important;
  border-radius: 8px !important;
  background: #fff !important;
  font-size: 20px !important;
  text-align: center !important;
  resize: none !important;
}

.pantools-upload-card-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
}

.pantools-upload-card {
  min-height: 118px !important;
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 18px !important;
  padding: 22px 26px !important;
  border: 1px solid #dfe7f3 !important;
  border-radius: 10px !important;
  background: #fff !important;
}

.pantools-upload-card i {
  width: 64px !important;
  height: 64px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 14px !important;
  color: #1764ff !important;
  background: #f0eaff !important;
}

.pantools-upload-card:nth-child(2) i {
  color: #f59e0b !important;
  background: #fff4e4 !important;
}

.pantools-upload-card strong {
  color: #101828 !important;
  font-size: 20px !important;
  font-weight: 900 !important;
}

.pantools-upload-card small {
  color: #98a2b3 !important;
  font-size: 16px !important;
}

.pantools-upload-modal-panel .modal-foot {
  margin-top: auto !important;
  justify-content: flex-end !important;
  gap: 18px !important;
  padding: 52px 31px 28px !important;
  border-top: 0 !important;
}

.pantools-upload-modal-panel .modal-foot button {
  min-width: 78px !important;
  height: 48px !important;
  border-radius: 8px !important;
  font-size: 18px !important;
}

.pantools-upload-modal-panel .modal-foot .pantools-modal-primary {
  min-width: 136px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
  color: #fff !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
}

.pantools-rule-modal {
  background: rgba(16, 24, 40, 0.62) !important;
  backdrop-filter: blur(7px) !important;
}

.pantools-rule-panel {
  width: min(900px, 100vw) !important;
  min-height: 644px !important;
  max-height: calc(100vh - 64px) !important;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto !important;
  padding: 35px 28px 20px !important;
  border-radius: 16px !important;
}

.pantools-rule-panel > header {
  justify-content: space-between !important;
  margin-bottom: 28px !important;
}

.pantools-rule-panel > header strong {
  color: #101828 !important;
  font-size: 28px !important;
  font-weight: 900 !important;
}

.pantools-rule-panel > header span {
  margin-left: 12px !important;
  padding: 9px 14px !important;
  border-radius: 6px !important;
  font-size: 17px !important;
  font-weight: 500 !important;
}

.pantools-rule-topbar {
  min-height: 42px !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding-bottom: 14px !important;
}

.pantools-rule-topbar > span,
.pantools-rule-topbar .text-button {
  white-space: nowrap !important;
  font-size: 18px !important;
  font-weight: 500 !important;
}

.pantools-rule-drop {
  margin: 14px 0 26px !important;
  padding: 16px 19px 12px !important;
  border: 1px solid #dfe7f3 !important;
  border-radius: 8px !important;
  background: #fff !important;
}

.pantools-rule-type-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
}

.pantools-rule-type-grid button {
  min-height: 34px !important;
  padding: 0 13px !important;
  border-radius: 6px !important;
  font-size: 15px !important;
  font-weight: 750 !important;
}

.pantools-rule-list {
  min-height: 310px !important;
  padding: 24px 0 0 !important;
}

.pantools-rule-empty {
  min-height: 150px !important;
  display: grid !important;
  place-items: center !important;
  color: #98a2b3 !important;
  font-size: 20px !important;
}

.pantools-rule-panel > footer {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 18px !important;
  padding-top: 18px !important;
}

.pantools-rule-panel > footer button {
  min-width: 74px !important;
  height: 48px !important;
  border-radius: 8px !important;
  font-size: 18px !important;
}

.pantools-rule-panel > footer .primary {
  min-width: 78px !important;
  color: #fff !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
}

/* 2026-08-10 strict local correction: PanFlow rename/upload parity.
   Scope is intentionally limited to batch rename feature modal, upload modal,
   and rename rule dialog. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-panel {
  width: min(897px, calc(100vw - 48px)) !important;
  max-height: calc(100vh - 48px) !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  background: #fff !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head {
  min-height: 84px !important;
  padding: 32px 34px 8px !important;
  border-bottom: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head p,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-toolbar {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head h2 {
  margin: 0 !important;
  color: #101828 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head .icon-close {
  width: 32px !important;
  height: 32px !important;
  border: 0 !important;
  background: transparent !important;
  color: #98a2b3 !important;
  font-size: 30px !important;
  line-height: 1 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-content {
  padding: 0 !important;
  overflow: visible !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-page {
  position: relative !important;
  min-height: 0 !important;
  padding: 0 34px 96px !important;
  gap: 18px !important;
  background: #fff !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head > strong {
  font-size: 18px !important;
  line-height: 26px !important;
  font-weight: 700 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head > strong span {
  min-width: 28px !important;
  height: 28px !important;
  padding: 0 8px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-check {
  font-size: 15px !important;
  line-height: 22px !important;
  font-weight: 500 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-check input {
  width: 18px !important;
  height: 18px !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-list strong {
  font-size: 16px !important;
  line-height: 24px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head {
  margin-bottom: 10px !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head strong {
  font-size: 18px !important;
  line-height: 26px !important;
  font-weight: 700 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head .text-button {
  min-height: 24px !important;
  gap: 5px !important;
  color: #667085 !important;
  font-size: 14px !important;
  line-height: 22px !important;
  font-weight: 500 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head .svg-icon {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-empty-rule,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-rules-summary > div:last-child {
  min-height: 68px !important;
  font-size: 15px !important;
  line-height: 22px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-preview .compact-result {
  min-height: 260px !important;
  max-height: 260px !important;
  height: 260px !important;
  padding: 0 24px !important;
  font-size: 16px !important;
  line-height: 24px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-preview.pantools-preview-empty .compact-result::placeholder {
  color: transparent !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-preview.pantools-preview-empty::after {
  top: 55% !important;
  color: #98a2b3 !important;
  font-size: 16px !important;
  line-height: 24px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-move-confirm {
  margin-top: 0 !important;
  color: #101828 !important;
  font-size: 15px !important;
  line-height: 22px !important;
  font-weight: 600 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions {
  display: flex !important;
  width: 100% !important;
  justify-self: stretch !important;
  align-self: stretch !important;
  justify-content: flex-end !important;
  align-items: center !important;
  min-height: 56px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions #pantoolsRenameState {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions #netdiskRunOperation {
  position: absolute !important;
  right: 34px !important;
  bottom: 24px !important;
  width: 198px !important;
  height: 56px !important;
  min-height: 56px !important;
  font-size: 18px !important;
  line-height: 24px !important;
  font-weight: 700 !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions #netdiskRunOperation:disabled {
  width: 198px !important;
  height: 56px !important;
  min-height: 56px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
  color: #fff !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
  border-radius: 8px !important;
  box-shadow: 0 18px 36px rgba(23, 100, 255, 0.12) !important;
  opacity: 0.58 !important;
  cursor: not-allowed !important;
}

.pantools-upload-modal-panel .modal-foot .pantools-modal-primary,
.pantools-upload-modal-panel .modal-foot .pantools-modal-primary span,
.pantools-upload-modal-panel .modal-foot .pantools-modal-primary .svg-icon {
  display: inline-flex !important;
  align-items: center !important;
  vertical-align: middle !important;
}

.pantools-upload-modal-panel .modal-foot .pantools-modal-primary {
  flex-direction: row !important;
  gap: 8px !important;
  white-space: nowrap !important;
}

.pantools-rule-type-grid button {
  min-height: 32px !important;
  padding: 0 12px !important;
  font-size: 14px !important;
  line-height: 20px !important;
  font-weight: 600 !important;
}

/* Pantools my shares local structure: match PanFlow layout without copying its color palette. */
.pantools-feature-panel:has(.pantools-my-shares-workbench) {
  width: min(1680px, calc(100vw - 56px)) !important;
  height: min(1080px, calc(100vh - 56px)) !important;
  max-height: min(1080px, calc(100vh - 56px)) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  border-radius: 10px !important;
}

.pantools-feature-panel:has(.pantools-my-shares-workbench) .pantools-feature-head,
.pantools-feature-panel:has(.pantools-my-shares-workbench) .pantools-feature-log {
  display: none !important;
}

.pantools-feature-panel:has(.pantools-my-shares-workbench) .pantools-feature-content {
  padding: 0 !important;
  overflow: hidden !important;
}

.pantools-my-shares-workbench {
  display: grid !important;
  grid-template-columns: 318px minmax(0, 1fr) !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #f7faff !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.pantools-my-shares-account-pane {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  min-width: 0 !important;
  padding: 22px 16px 20px !important;
  background: #fff !important;
  border-right: 1px solid #e6edf7 !important;
}

.pantools-my-shares-account-title {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  color: #101828 !important;
}

.pantools-my-shares-account-title strong {
  font-size: 20px !important;
  line-height: 28px !important;
  font-weight: 900 !important;
}

.pantools-my-shares-account-title span {
  min-width: 24px !important;
  height: 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  color: #1764ff !important;
  background: #eaf2ff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

.pantools-my-shares-provider-tabs,
.pantools-my-shares-filter-row .pantools-share-status {
  display: inline-flex !important;
  align-items: center !important;
  width: max-content !important;
  gap: 2px !important;
  padding: 3px !important;
  border-radius: 8px !important;
  border: 1px solid #e6edf7 !important;
  background: #eef3fa !important;
}

.pantools-my-shares-provider-tabs button,
.pantools-my-shares-filter-row .pantools-share-status button {
  min-width: 52px !important;
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 7px !important;
  background: transparent !important;
  color: #667085 !important;
  font-size: 15px !important;
  line-height: 20px !important;
  font-weight: 600 !important;
}

.pantools-my-shares-provider-tabs button.active,
.pantools-my-shares-filter-row .pantools-share-status button.active {
  color: #fff !important;
  background: #1764ff !important;
  box-shadow: 0 10px 22px rgba(23, 100, 255, 0.16) !important;
}

.pantools-my-shares-account-card {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 56px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 78px !important;
  width: 100% !important;
  padding: 12px 14px !important;
  border: 0 !important;
  border-radius: 8px !important;
  text-align: left !important;
  background: #eaf2ff !important;
  color: #101828 !important;
  cursor: default !important;
}

.pantools-my-shares-account-card::before {
  content: "" !important;
  position: absolute !important;
  left: -16px !important;
  top: 18px !important;
  width: 4px !important;
  height: 42px !important;
  border-radius: 999px !important;
  background: #1764ff !important;
}

.pantools-my-shares-account-logo,
.pantools-my-shares-top-logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 8px !important;
  color: #1764ff !important;
  background: #fff !important;
  border: 1px solid #e6edf7 !important;
}

.pantools-my-shares-account-logo .svg-icon,
.pantools-my-shares-top-logo .svg-icon {
  width: 28px !important;
  height: 28px !important;
}

.pantools-my-shares-account-card strong {
  display: block !important;
  overflow: hidden !important;
  color: #101828 !important;
  font-size: 17px !important;
  line-height: 24px !important;
  font-weight: 850 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pantools-my-shares-account-card small {
  display: inline-flex !important;
  width: max-content !important;
  margin-top: 4px !important;
  padding: 2px 7px !important;
  border-radius: 5px !important;
  color: #1764ff !important;
  background: #dceaff !important;
  font-size: 12px !important;
  line-height: 16px !important;
  font-weight: 700 !important;
}

.pantools-my-shares-account-meta {
  display: flex !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  color: #98a2b3 !important;
  font-size: 13px !important;
}

.pantools-my-shares-main {
  min-width: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
}

.pantools-my-shares-topbar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 74px !important;
  padding: 10px 30px !important;
  border-bottom: 1px solid #e6edf7 !important;
  background: #fff !important;
}

.pantools-my-shares-current-account {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: 0 !important;
}

.pantools-my-shares-current-account strong {
  display: block !important;
  color: #101828 !important;
  font-size: 18px !important;
  line-height: 24px !important;
  font-weight: 850 !important;
}

.pantools-my-shares-current-account small {
  display: block !important;
  margin-top: 4px !important;
  color: #98a2b3 !important;
  font-size: 13px !important;
  line-height: 18px !important;
}

.pantools-my-shares-top-actions,
.pantools-my-shares-commandbar {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.pantools-my-shares-filter-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 64px !important;
  padding: 10px 30px 8px !important;
  background: #fff !important;
}

.pantools-my-shares-date-field,
.pantools-my-shares-keyword {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  height: 40px !important;
  padding: 0 12px !important;
  border: 1px solid #dbe4f0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: #667085 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

.pantools-my-shares-date-field input,
.pantools-my-shares-keyword input,
.pantools-my-shares-filter-row select {
  height: 32px !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: #667085 !important;
  font-size: 14px !important;
}

.pantools-my-shares-keyword {
  min-width: 260px !important;
  margin-left: auto !important;
}

.pantools-my-shares-filter-row select {
  display: none !important;
}

.pantools-my-shares-date-sep {
  color: #98a2b3 !important;
}

.pantools-my-shares-commandbar {
  min-height: 58px !important;
  padding: 8px 30px 10px !important;
  border-bottom: 1px solid #eef2f7 !important;
  background: #fff !important;
  flex-wrap: nowrap !important;
  overflow: hidden !important;
}

.pantools-my-shares-commandbar button,
.pantools-my-shares-top-actions button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 14px !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  line-height: 20px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

.pantools-my-shares-commandbar button .svg-icon {
  width: 17px !important;
  height: 17px !important;
}

.pantools-my-shares-commandbar button:disabled {
  opacity: 0.45 !important;
  cursor: not-allowed !important;
}

.pantools-my-shares-pager {
  display: none !important;
}

.pantools-my-shares-pager.is-visible {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-left: auto !important;
}

.pantools-my-shares-check,
.pantools-hidden-control {
  display: none !important;
  align-items: center !important;
  gap: 6px !important;
  color: #667085 !important;
  font-size: 13px !important;
}

.pantools-my-shares-table {
  max-height: none !important;
  height: calc(100vh - 280px) !important;
  overflow-x: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
}

.pantools-my-shares-table .data-table {
  min-width: 1380px !important;
  table-layout: fixed !important;
  font-size: 13px !important;
}

.pantools-my-shares-table .data-table th {
  height: 42px !important;
  padding: 0 12px !important;
  color: #98a2b3 !important;
  background: #f6f8fb !important;
  border-bottom: 1px solid #e6edf7 !important;
  font-size: 14px !important;
  line-height: 20px !important;
  font-weight: 600 !important;
}

.pantools-my-shares-table .share-sort-head {
  width: 100% !important;
  height: 30px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font: inherit !important;
  line-height: inherit !important;
  cursor: pointer !important;
}

.pantools-my-shares-table .share-sort-head:hover,
.pantools-my-shares-table .share-sort-head.active {
  color: #2563eb !important;
}

.pantools-my-shares-table .share-sort-head span {
  min-width: 12px !important;
  color: #98a2b3 !important;
  font-size: 12px !important;
  line-height: 1 !important;
}

.pantools-my-shares-table .share-sort-head.active span {
  color: #2563eb !important;
}

.pantools-my-shares-table .data-table td {
  height: 48px !important;
  padding: 0 12px !important;
  color: #667085 !important;
  border-bottom: 1px solid #eef2f7 !important;
  font-size: 13px !important;
  line-height: 20px !important;
  font-weight: 500 !important;
  vertical-align: middle !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pantools-my-shares-table .data-table th:first-child,
.pantools-my-shares-table .data-table td:first-child {
  width: 54px !important;
  text-align: center !important;
}

.pantools-my-shares-table .data-table th:nth-child(2),
.pantools-my-shares-table .data-table td:nth-child(2) {
  width: 24% !important;
}

.pantools-my-shares-table .data-table th:nth-child(3),
.pantools-my-shares-table .data-table td:nth-child(3) {
  width: 28% !important;
}

.pantools-my-shares-table .data-table th:nth-child(4),
.pantools-my-shares-table .data-table td:nth-child(4),
.pantools-my-shares-table .data-table th:nth-child(5),
.pantools-my-shares-table .data-table td:nth-child(5),
.pantools-my-shares-table .data-table th:nth-child(9),
.pantools-my-shares-table .data-table td:nth-child(9) {
  width: 9% !important;
  text-align: center !important;
}

.pantools-my-shares-table .data-table th:nth-child(6),
.pantools-my-shares-table .data-table td:nth-child(6),
.pantools-my-shares-table .data-table th:nth-child(7),
.pantools-my-shares-table .data-table td:nth-child(7),
.pantools-my-shares-table .data-table th:nth-child(8),
.pantools-my-shares-table .data-table td:nth-child(8) {
  width: 7% !important;
  text-align: center !important;
}

.pantools-my-shares-table .data-table th:nth-child(10),
.pantools-my-shares-table .data-table td:nth-child(10) {
  width: 7% !important;
}

.pantools-share-file-name {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  color: #344054 !important;
  font-size: 14px !important;
  line-height: 22px !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
}

.pantools-share-file-text {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pantools-share-file-name .netdisk-pan-filemark {
  width: 20px !important;
  height: 20px !important;
  color: #98a2b3 !important;
  background: transparent !important;
}

.pantools-my-shares-table .share-link-cell {
  display: block !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #667085 !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 13px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pantools-share-expire-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 30px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  color: #10a574 !important;
  background: #e8fbf3 !important;
  font-size: 13px !important;
  line-height: 20px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

.pantools-share-expire-badge.is-invalid {
  color: #dc2626 !important;
  background: #fef2f2 !important;
}

.pantools-share-state-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 28px !important;
  min-width: 58px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  line-height: 20px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

.pantools-share-state-badge.is-valid {
  color: #2563eb !important;
  background: #eff6ff !important;
}

.pantools-share-state-badge.is-invalid {
  color: #dc2626 !important;
  background: #fef2f2 !important;
}

.pantools-my-shares-table .netdisk-share-copy-one {
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 10px !important;
  font-size: 13px !important;
  line-height: 20px !important;
  font-weight: 600 !important;
}

/* Pantools real "我的分享" page. Scope is the embedded Pantools module, not the same-key feature modal. */
.pantools-feature-panel:has(.pantools-my-shares-workbench) {
  width: min(980px, calc(100vw - 80px)) !important;
  height: auto !important;
  max-height: calc(100vh - 80px) !important;
  grid-template-rows: auto auto minmax(0, 1fr) auto !important;
}

.pantools-feature-panel:has(.pantools-my-shares-workbench) .pantools-feature-head {
  display: flex !important;
}

.pantools-feature-panel:has(.pantools-my-shares-workbench) .pantools-feature-log {
  display: grid !important;
}

body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) {
  padding: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .netdisk-pan-embedded:has(.pantools-my-shares-workbench) {
  grid-template-rows: minmax(0, 1fr) !important;
}

body.pantools-app-mode .netdisk-pan-embedded:has(.pantools-my-shares-workbench) > .netdisk-pan-embedded-head,
body.pantools-app-mode .netdisk-pan-embedded:has(.pantools-my-shares-workbench) > .netdisk-pan-embedded-log {
  display: none !important;
}

body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-workbench {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  height: 100% !important;
  min-height: 0 !important;
  background: #fff !important;
}

body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-main {
  display: grid !important;
  grid-template-rows: auto auto minmax(0, 1fr) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-filter-row {
  min-height: 66px !important;
  padding: 12px 30px 10px !important;
  border-bottom: 0 !important;
}

body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-commandbar {
  min-height: 60px !important;
  padding: 8px 30px 12px !important;
  border-bottom: 1px solid #eef2f7 !important;
}

body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-commandbar button {
  height: 38px !important;
  min-height: 38px !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-table {
  height: 100% !important;
  min-height: 0 !important;
  overflow: auto !important;
  border-top: 0 !important;
}

/* 2026-08-10 local correction: PanTools primary execution buttons keep the
   same solid Baida blue as the upload modal, including disabled state. */
body.pantools-app-mode .pantools-copy-start,
body.pantools-app-mode .pantools-copy-start:disabled,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions #netdiskRunOperation:disabled,
.pantools-download-modal-panel .modal-foot .pantools-modal-primary,
.pantools-download-modal-panel .modal-foot .pantools-modal-primary:disabled {
  color: #fff !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
  opacity: 1 !important;
}

body.pantools-app-mode .pantools-copy-start:disabled,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-actions #netdiskRunOperation:disabled,
.pantools-download-modal-panel .modal-foot .pantools-modal-primary:disabled {
  cursor: not-allowed !important;
  box-shadow: 0 18px 36px rgba(23, 100, 255, 0.16) !important;
}

/* Global titlebar brand override: all categories use the compact edge brand. */
.titlebar,
body.pantools-app-mode .titlebar {
  height: 24px !important;
  padding: 0 8px 0 4px !important;
  color: #101828 !important;
  background: linear-gradient(90deg, #f4f6f8 0, #f7f9fb 84px, #ffffff 168px, #ffffff 100%) !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

.titlebar .brand,
body.pantools-app-mode .titlebar .brand {
  gap: 5px !important;
}

.titlebar .brand-mark,
body.pantools-app-mode .titlebar .brand-mark {
  width: 14px !important;
  height: 14px !important;
  overflow: hidden !important;
  border: 1px solid #e6edf7 !important;
  border-radius: 4px !important;
  background: #f8fafc !important;
  box-shadow: none !important;
}

.titlebar .brand-avatar,
body.pantools-app-mode .titlebar .brand-avatar {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
}

.titlebar .brand strong,
body.pantools-app-mode .titlebar .brand strong {
  color: #101828 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

.titlebar .brand span,
body.pantools-app-mode .titlebar .brand span {
  display: none !important;
}

.titlebar-actions .icon-button,
.titlebar-actions .window-button,
body.pantools-app-mode .titlebar-actions .icon-button,
body.pantools-app-mode .titlebar-actions .window-button {
  width: 24px !important;
  height: 24px !important;
  color: #64748b !important;
}

.titlebar-actions,
body.pantools-app-mode .titlebar-actions {
  height: 24px !important;
  align-items: stretch !important;
  gap: 1px !important;
  padding-right: 2px !important;
}

.titlebar-actions .window-button,
body.pantools-app-mode .titlebar-actions .window-button {
  position: relative !important;
  width: 34px !important;
  height: 24px !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  color: #5f7189 !important;
  background: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  transition: background-color 140ms ease, color 140ms ease !important;
}

.titlebar-actions .window-button::before,
.titlebar-actions .window-button::after,
body.pantools-app-mode .titlebar-actions .window-button::before,
body.pantools-app-mode .titlebar-actions .window-button::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  pointer-events: none !important;
}

.titlebar-actions #minimizeBtn::before,
body.pantools-app-mode .titlebar-actions #minimizeBtn::before {
  width: 9px !important;
  height: 1.5px !important;
  background: currentColor !important;
  border-radius: 999px !important;
  transform: translate(-50%, 2px) !important;
}

.titlebar-actions #maximizeBtn::before,
body.pantools-app-mode .titlebar-actions #maximizeBtn::before {
  width: 9px !important;
  height: 9px !important;
  border: 1.5px solid currentColor !important;
  border-radius: 1px !important;
  transform: translate(-50%, -50%) !important;
}

body.window-is-maximized .titlebar-actions #maximizeBtn::before,
body.pantools-app-mode.window-is-maximized .titlebar-actions #maximizeBtn::before {
  width: 8px !important;
  height: 8px !important;
  background: #ffffff !important;
  transform: translate(-36%, -64%) !important;
}

body.window-is-maximized .titlebar-actions #maximizeBtn::after,
body.pantools-app-mode.window-is-maximized .titlebar-actions #maximizeBtn::after {
  width: 8px !important;
  height: 8px !important;
  border: 1.5px solid currentColor !important;
  border-radius: 1px !important;
  background: transparent !important;
  transform: translate(-64%, -36%) !important;
}

.titlebar-actions #closeBtn::before,
.titlebar-actions #closeBtn::after,
body.pantools-app-mode .titlebar-actions #closeBtn::before,
body.pantools-app-mode .titlebar-actions #closeBtn::after {
  width: 11px !important;
  height: 1.5px !important;
  background: currentColor !important;
  border-radius: 999px !important;
  transform-origin: center !important;
}

.titlebar-actions #closeBtn::before,
body.pantools-app-mode .titlebar-actions #closeBtn::before {
  transform: translate(-50%, -50%) rotate(45deg) !important;
}

.titlebar-actions #closeBtn::after,
body.pantools-app-mode .titlebar-actions #closeBtn::after {
  transform: translate(-50%, -50%) rotate(-45deg) !important;
}

.titlebar-actions .window-button:hover,
body.pantools-app-mode .titlebar-actions .window-button:hover {
  color: #304156 !important;
  background: #eef3f8 !important;
}

.titlebar-actions .window-button.close:hover,
body.pantools-app-mode .titlebar-actions .window-button.close:hover {
  color: #d92d20 !important;
  background: #fee4e2 !important;
}

.panbox-close-choice-modal,
.panbox-closing-overlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  background: rgba(17, 24, 39, 0.43);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.panbox-close-choice-card {
  width: 480px;
  max-width: calc(100vw - 56px);
  display: grid;
  gap: 22px;
  padding: 30px 34px 28px;
  color: #172033;
  background: #ffffff;
  border: 1px solid #e5eaf2;
  border-radius: 16px;
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.24);
}

.panbox-close-choice-card h2 {
  margin: 0 0 6px;
  color: #172033;
  font-size: 20px;
  line-height: 1.35;
  font-weight: 800;
  letter-spacing: 0;
}

.panbox-close-choice-option {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #27364c;
  font-size: 16px;
  line-height: 1.35;
}

.panbox-close-choice-option input,
.panbox-close-choice-remember input {
  width: 22px;
  height: 22px;
  margin: 0;
  accent-color: #6f5cff;
}

.panbox-close-choice-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 6px;
}

.panbox-close-choice-remember {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #667085;
  font-size: 15px;
  line-height: 1.3;
}

.panbox-close-choice-foot > div {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.panbox-close-choice-cancel,
.panbox-close-choice-confirm {
  height: 38px;
  min-width: 78px;
  padding: 0 18px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 700;
}

.panbox-close-choice-cancel {
  color: #536077;
  background: #ffffff;
  border: 1px solid #dbe3ee;
}

.panbox-close-choice-cancel:hover {
  color: #27364c;
  background: #f6f8fb;
}

.panbox-close-choice-confirm {
  color: #ffffff;
  background: #1764ff;
  border: 1px solid #1764ff;
  box-shadow: 0 10px 22px rgba(23, 100, 255, 0.22);
}

.panbox-close-choice-confirm:hover {
  background: #0f4fd1;
  border-color: #0f4fd1;
}

.panbox-closing-overlay {
  background: rgba(244, 246, 249, 0.72);
}

.panbox-closing-card {
  min-width: 210px;
  min-height: 130px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 18px;
  padding: 30px 42px;
  color: #536077;
}

.panbox-closing-spinner {
  width: 36px;
  height: 36px;
  border: 3px solid rgba(23, 100, 255, 0.18);
  border-top-color: #1764ff;
  border-radius: 50%;
  animation: panbox-closing-spin 780ms linear infinite;
}

.panbox-closing-card strong {
  color: #536077;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 500;
}

@keyframes panbox-closing-spin {
  to { transform: rotate(360deg); }
}

/* Sidebar avatar and restored tool-card layout; only title font follows reference. */
.sidebar-avatar {
  width: 78px !important;
  height: 78px !important;
  display: grid !important;
  place-items: center !important;
  margin: 12px auto 8px !important;
  background: transparent !important;
}

.sidebar-avatar img {
  width: 58px !important;
  height: 58px !important;
  display: block !important;
  object-fit: cover !important;
  border-radius: 10px !important;
}

.tool-grid:not(.netdisk-pan-grid) {
  grid-template-columns: repeat(3, minmax(310px, 1fr)) !important;
  gap: 22px 28px !important;
  padding: 18px 28px 32px !important;
}

.tool-grid:not(.netdisk-pan-grid) .tool-card {
  width: auto !important;
  min-height: 118px !important;
  height: auto !important;
  display: flex !important;
  flex-direction: row !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 20px !important;
  padding: 20px 24px !important;
  border-radius: 2px !important;
  text-align: left !important;
}

.tool-grid:not(.netdisk-pan-grid) .tool-icon {
  width: 58px !important;
  height: 58px !important;
  border-radius: 8px !important;
  font-size: 28px !important;
}

.tool-grid:not(.netdisk-pan-grid) .tool-copy {
  min-width: 0 !important;
  width: 100% !important;
}

.tool-grid:not(.netdisk-pan-grid) .tool-copy strong {
  margin: 0 0 10px !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  text-align: left !important;
}

.tool-grid:not(.netdisk-pan-grid) .tool-copy small {
  display: block !important;
}

.tool-grid:not(.netdisk-pan-grid) .status-badge {
  display: inline-flex !important;
}

body.pantools-app-mode .pantools-file-toolbar {
  min-height: 44px !important;
  padding: 6px 10px !important;
  gap: 8px !important;
}

body.pantools-app-mode .pantools-file-toolbar button {
  min-height: 32px !important;
  height: 32px !important;
  padding: 0 10px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  line-height: 32px !important;
}

body.pantools-app-mode .pantools-file-toolbar button .svg-icon {
  width: 14px !important;
  height: 14px !important;
}

body.pantools-app-mode .app .layout > .sidebar {
  min-height: calc(100vh - 24px) !important;
  height: calc(100vh - 24px) !important;
  align-self: stretch !important;
}

body.pantools-app-mode .app .layout {
  min-height: calc(100vh - 24px) !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-menu {
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

body.pantools-app-mode .more-products {
  flex: 0 0 auto !important;
  margin: 14px 16px 10px !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-filetable th:nth-child(3) {
  width: 330px !important;
  text-align: left !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-filetable td:nth-child(3) {
  text-align: left !important;
}

body.pantools-app-mode .pantools-row-actions {
  justify-content: flex-start !important;
}

/* Pantools final height lock: prevent bottom blank space and jumpy dual scrolling. */
body.pantools-app-mode .tool-view:has(.tool-grid.netdisk-pan-grid),
body.pantools-app-mode .tool-view:has(.tool-grid.netdisk-pan-grid) .work-panel,
body.pantools-app-mode .tool-view:has(.tool-grid.netdisk-pan-grid) .tool-content {
  min-height: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .tool-grid.netdisk-pan-grid {
  height: calc(100vh - 154px) !important;
  min-height: 0 !important;
  max-height: calc(100vh - 154px) !important;
  overflow: hidden !important;
}

body.pantools-app-mode .tool-grid.netdisk-pan-grid .netdisk-pan-shell.pantools-shell {
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar,
body.pantools-app-mode .pantools-account-pool,
body.pantools-app-mode .pantools-shell .netdisk-pan-main,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost,
body.pantools-app-mode .pantools-shell .netdisk-pan-file-workspace,
body.pantools-app-mode .pantools-shell .netdisk-pan-file-browser {
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-account-pool {
  display: flex !important;
  flex-direction: column !important;
  padding-bottom: 62px !important;
}

body.pantools-app-mode .pantools-account-list {
  min-height: 0 !important;
  overflow: auto !important;
}

body.pantools-app-mode .pantools-add-account {
  flex: 0 0 auto !important;
  position: absolute !important;
  left: 8px !important;
  bottom: 10px !important;
  margin-top: 0 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-file-browser {
  grid-template-rows: auto auto minmax(0, 1fr) 34px !important;
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-filetable {
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: auto !important;
  background: #fff !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-filetable table {
  min-height: 0 !important;
  background: #fff !important;
}

/* Pantools font pass: toolbar buttons 16px, my-shares table 12px. */
body.pantools-app-mode .pantools-file-toolbar button,
body.pantools-app-mode .panflow-file-toolbar button,
body.pantools-app-mode .panflow-share-toolbar button {
  font-size: 16px !important;
  line-height: 1 !important;
}

body.pantools-app-mode .panflow-share-table table,
body.pantools-app-mode .panflow-share-table th,
body.pantools-app-mode .panflow-share-table td,
body.pantools-app-mode .panflow-share-table .share-link-cell,
body.pantools-app-mode .panflow-share-table .panflow-share-name,
body.pantools-app-mode .panflow-share-table .panflow-status,
body.pantools-app-mode .panflow-share-table .panflow-link-copy {
  font-size: 12px !important;
  line-height: 1.35 !important;
}

/* Pantools file bottom status: match left status copy from reference. */
body.pantools-app-mode .pantools-shell .pantools-file-statusbar {
  min-height: 34px !important;
  height: 34px !important;
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  padding: 0 22px !important;
  border-top: 1px solid #e6edf7 !important;
  background: #f8fafc !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

body.pantools-app-mode .pantools-shell .pantools-file-status-selected {
  color: #1764ff !important;
}

body.pantools-app-mode .pantools-shell .pantools-file-status-loaded {
  color: #10a878 !important;
}

/* Pantools file toolbar and table refinement. */
body.pantools-app-mode .pantools-file-toolbar button {
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 12px !important;
  border: 1px solid #dfe7f2 !important;
  border-radius: 7px !important;
  background: #ffffff !important;
  color: #536177 !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 1 !important;
  gap: 6px !important;
}

body.pantools-app-mode .pantools-file-toolbar button .svg-icon {
  width: 13px !important;
  height: 13px !important;
}

body.pantools-app-mode .pantools-file-toolbar button[data-pantools-file-action="transfer"] {
  color: #ffffff !important;
  border-color: #1764ff !important;
  background: #1764ff !important;
  box-shadow: 0 10px 20px rgba(23, 100, 255, 0.16) !important;
}

body.pantools-app-mode .pantools-file-toolbar button[data-pantools-file-action="share"] {
  color: #ffffff !important;
  border-color: #10a878 !important;
  background: #10a878 !important;
  box-shadow: 0 10px 20px rgba(16, 168, 120, 0.14) !important;
}

body.pantools-app-mode .pantools-file-toolbar button[data-pantools-file-action="delete"] {
  color: #ff4d4f !important;
  border-color: #ffd2d6 !important;
  background: #ffffff !important;
}

body.pantools-app-mode .pantools-file-toolbar button:disabled {
  color: #98a2b3 !important;
  border-color: #e6edf7 !important;
  background: #ffffff !important;
  opacity: 0.72 !important;
  box-shadow: none !important;
}

/* Pantools toolbar icon-only actions: compact left controls with hover hints. */
body.pantools-app-mode .pantools-file-toolbar .pantools-icon-only-action,
body.pantools-app-mode .pantools-file-toolbar .pantools-icon-only-action:disabled {
  position: relative !important;
  width: 34px !important;
  min-width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 !important;
  border-radius: 8px !important;
  border: 1px solid #bfd7ff !important;
  background: #eaf2ff !important;
  color: #1764ff !important;
  opacity: 1 !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
}

body.pantools-app-mode .pantools-file-toolbar .pantools-icon-only-action .svg-icon {
  width: 15px !important;
  height: 15px !important;
  flex: 0 0 15px !important;
}

body.pantools-app-mode .pantools-file-toolbar .pantools-icon-only-action:hover {
  border-color: #9fc3ff !important;
  background: #dcebff !important;
}

body.pantools-app-mode .pantools-file-toolbar .pantools-icon-only-action::after {
  content: attr(data-tooltip);
  position: absolute;
  left: 50%;
  bottom: calc(100% + 8px);
  z-index: 120;
  transform: translateX(-50%) translateY(2px);
  height: 26px;
  padding: 0 9px;
  border: 1px solid #dfe7f2;
  border-radius: 6px;
  background: #ffffff;
  color: #344054;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.10);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  line-height: 1;
  font-weight: 400;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.12s ease, transform 0.12s ease;
  display: none !important;
}

body.pantools-app-mode .pantools-file-toolbar .pantools-icon-only-action:hover::after,
body.pantools-app-mode .pantools-file-toolbar .pantools-icon-only-action:focus-visible::after {
  opacity: 1;
  transform: translateX(-50%);
  display: none !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-filetable th,
body.pantools-app-mode .pantools-shell .netdisk-pan-filetable td,
body.pantools-app-mode .pantools-shell .netdisk-pan-filename,
body.pantools-app-mode .pantools-row-actions button {
  font-size: 11px !important;
  line-height: 1.35 !important;
}

/* Pantools font weight refinement: keep compact text light and precise. */
body.pantools-app-mode .pantools-file-toolbar button,
body.pantools-app-mode .pantools-row-actions button,
body.pantools-app-mode .pantools-shell .netdisk-pan-navitem b {
  font-weight: 400 !important;
}

/* Baida typography refinement: cards, categories, compact actions and tips stay light. */
.category-group-toggle,
.category-group-toggle strong,
.category-link,
.category-link span,
.category-group-count,
.tool-card,
.tool-card strong,
.tool-card h3,
.tool-copy strong,
.feature-card,
.feature-card strong,
.capability-card,
.capability-card strong,
.secondary,
.text-button,
.help-button,
.compact-help-button,
.feature-help-trigger,
.tutorial-cta,
.tutorial-cta em,
body.pantools-app-mode .pantools-add-account,
body.pantools-app-mode .pantools-add-account *,
body.pantools-app-mode .pantools-shell .pantools-file-statusbar,
body.pantools-app-mode .pantools-shell .pantools-file-statusbar *,
body.pantools-app-mode .pantools-account-card,
body.pantools-app-mode .pantools-account-card *,
body.pantools-app-mode .pantools-account-list strong,
body.pantools-app-mode .pantools-shell .netdisk-pan-navitem,
body.pantools-app-mode .pantools-shell .netdisk-pan-navitem *,
body.pantools-app-mode .panflow-share-toolbar button,
body.pantools-app-mode .panflow-file-toolbar button,
body.pantools-app-mode .panflow-segment button,
body.pantools-app-mode .netdisk-record-commandbar button,
body.pantools-app-mode .netdisk-record-commandbar label,
body.pantools-app-mode .pantools-file-toolbar button,
body.pantools-app-mode .pantools-row-actions button,
.tool-header .primary,
.tool-header .secondary,
.tool-title h1 {
  font-weight: 400 !important;
}

body.pantools-app-mode .panflow-share-toolbar button,
body.pantools-app-mode .panflow-file-toolbar button,
body.pantools-app-mode .panflow-segment button,
body.pantools-app-mode .netdisk-record-commandbar button {
  font-size: 13px !important;
  line-height: 1 !important;
}

body.pantools-app-mode .panflow-share-table,
body.pantools-app-mode .panflow-share-table *,
body.pantools-app-mode .shares-table,
body.pantools-app-mode .shares-table *,
body.pantools-app-mode .netdisk-shares-grid,
body.pantools-app-mode .netdisk-shares-grid *,
body.pantools-app-mode .netdisk-record-list,
body.pantools-app-mode .netdisk-record-list * {
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
}

.tutorial-cta,
.tutorial-cta.gold-tutorial {
  border-color: #a7e3d2 !important;
  border-left-color: #10a878 !important;
  background: #e9fbf4 !important;
  color: #067647 !important;
  box-shadow: none !important;
}

.tutorial-cta:hover,
.tutorial-cta.gold-tutorial:hover {
  border-color: #7ed8bf !important;
  background: #ddf7ec !important;
  color: #045f3a !important;
}

.tutorial-cta em,
.tutorial-cta.gold-tutorial em {
  background: #10a878 !important;
  color: #ffffff !important;
  font-weight: 400 !important;
  box-shadow: 0 2px 8px rgba(16, 168, 120, 0.16) !important;
}

.feature-help-trigger,
.text-button.help-button,
.compact-help-button,
#formatHelpBtn,
#splitMergeHelpBtn,
#pptMockupHelpBtn,
#netdiskShareHelpBtn,
#youtubeHelpBtn,
#netdiskPanLoginHelp,
#wechatVoiceRootHelpBtn,
#wechatVoiceAudioHelpBtn,
#wechatVoiceFfmpegHelpBtn,
#desktopProviderPathHelpBtn {
  border-color: #a7e3d2 !important;
  background: #e9fbf4 !important;
  color: #067647 !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

.feature-help-trigger:hover,
.text-button.help-button:hover,
.compact-help-button:hover,
#formatHelpBtn:hover,
#splitMergeHelpBtn:hover,
#pptMockupHelpBtn:hover,
#netdiskShareHelpBtn:hover,
#youtubeHelpBtn:hover,
#netdiskPanLoginHelp:hover,
#wechatVoiceRootHelpBtn:hover,
#wechatVoiceAudioHelpBtn:hover,
#wechatVoiceFfmpegHelpBtn:hover,
#desktopProviderPathHelpBtn:hover {
  border-color: #7ed8bf !important;
  background: #ddf7ec !important;
  color: #045f3a !important;
}

/* Tutorial buttons and four-step detail preview: teal, compact and never bold. */
.tutorial-cta,
.tutorial-cta *,
.tool-header-tutorial,
.tool-header-tutorial *,
button[data-open-tool-tutorial],
button[data-open-tool-tutorial] * {
  border-color: #a7e3d2 !important;
  border-left-color: #10a878 !important;
  background-color: #e9fbf4 !important;
  color: #067647 !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

.tutorial-cta:hover,
.tutorial-cta:hover *,
.tool-header-tutorial:hover,
.tool-header-tutorial:hover *,
button[data-open-tool-tutorial]:hover,
button[data-open-tool-tutorial]:hover * {
  border-color: #7ed8bf !important;
  background-color: #ddf7ec !important;
  color: #045f3a !important;
}

.tutorial-cta em,
.tool-header-tutorial em,
button[data-open-tool-tutorial] em {
  background: #10a878 !important;
  color: #ffffff !important;
}

.format-four-step-workbench b,
.format-four-step-workbench strong,
.format-four-step-workbench h1,
.format-four-step-workbench h2,
.format-four-step-workbench h3,
.format-four-step-workbench label,
.format-four-step-workbench .word-replace-step-head span,
.format-four-step-workbench .word-replace-step-head em,
.format-four-step-workbench .office-side-head,
.format-four-step-workbench .office-side-head *,
.format-four-step-workbench .office-preview-card,
.format-four-step-workbench .office-preview-card *,
.format-four-step-workbench .word-replace-risk-card,
.format-four-step-workbench .word-replace-risk-card *,
.format-four-step-workbench .office-progress-card,
.format-four-step-workbench .office-progress-card *,
.format-four-step-workbench .tool-page-log-panel,
.format-four-step-workbench .tool-page-log-panel *,
.tool-view:has(.format-four-step-workbench) .tool-title h1,
.tool-view:has(.format-four-step-workbench) .tool-title button,
.tool-view:has(.format-four-step-workbench) .toolbar button {
  font-weight: 400 !important;
}

.tutorial-guide-link,
.tutorial-guide-link.gold-tutorial,
.tutorial-guide-link.gold-tutorial > span:not(.tutorial-guide-badge) {
  border-color: #a7e3d2 !important;
  border-left-color: #10a878 !important;
  background: #e9fbf4 !important;
  color: #067647 !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

.tutorial-guide-link:hover,
.tutorial-guide-link.gold-tutorial:hover,
.tutorial-guide-link.gold-tutorial:hover > span:not(.tutorial-guide-badge) {
  border-color: #7ed8bf !important;
  background: #ddf7ec !important;
  color: #045f3a !important;
}

.tutorial-guide-link .tutorial-guide-badge,
.tutorial-guide-link.gold-tutorial .tutorial-guide-badge {
  background: #10a878 !important;
  color: #ffffff !important;
  font-weight: 400 !important;
  box-shadow: 0 2px 8px rgba(16, 168, 120, 0.16) !important;
}

/* Compact Pantools account cards and keep detail action text light. */
body.pantools-app-mode .pantools-account-list,
body.pantools-app-mode .panflow-account-list {
  gap: 8px !important;
  justify-items: start !important;
  padding-right: 0 !important;
  overflow-x: hidden !important;
}

body.pantools-app-mode .pantools-account-card,
body.pantools-app-mode .panflow-account-card {
  min-height: 64px !important;
  width: 250px !important;
  max-width: 100% !important;
  grid-template-columns: 40px 168px 20px !important;
  gap: 8px !important;
  padding: 9px 7px !important;
}

body.pantools-app-mode .pantools-account-card .panflow-provider-logo,
body.pantools-app-mode .panflow-account-card .panflow-provider-logo {
  width: 40px !important;
  height: 40px !important;
}

body.pantools-app-mode .pantools-account-card .panflow-account-copy,
body.pantools-app-mode .panflow-account-card .panflow-account-copy {
  gap: 3px !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-info {
  width: 168px !important;
  gap: 3px !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-info i {
  width: 100% !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-trash {
  align-self: center !important;
  justify-self: center !important;
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  padding: 0 !important;
  color: #cf8d93 !important;
  background: transparent !important;
  transition: color 0.12s ease, background-color 0.12s ease !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-trash:hover,
body.pantools-app-mode .pantools-account-card .pantools-account-trash:focus-visible {
  color: #ff4d4f !important;
  background: rgba(255, 77, 79, 0.08) !important;
}

body.pantools-app-mode .pantools-account-card [data-panflow-account-delete],
body.pantools-app-mode .panflow-account-card [data-panflow-account-delete],
body.pantools-app-mode .pantools-account-card .danger,
body.pantools-app-mode .panflow-account-card .danger {
  justify-self: end !important;
  width: 20px !important;
  min-width: 20px !important;
  padding: 0 !important;
}

.back-button,
.tool-view .back-button,
.tool-title .back-button,
.tool-view:has(.format-four-step-workbench) .back-button,
.tool-view:has(.format-four-step-workbench) #formatRunBtn,
.tool-view:has(.format-four-step-workbench) #splitMergeRunBtn,
.tool-view:has(.format-four-step-workbench) .toolbar .primary,
.tool-view:has(.format-four-step-workbench) .toolbar button,
.utility-tray-head,
.utility-tray-head *,
.office-main-tray-head,
.office-main-tray-head *,
.word-replace-preview-step .office-main-tray-head,
.word-replace-preview-step .office-main-tray-head *,
.format-convert-result-step .utility-preview-tray,
.format-convert-result-step .utility-preview-tray *,
.split-merge-result-step .utility-preview-tray,
.split-merge-result-step .utility-preview-tray * {
  font-weight: 400 !important;
}

/* Account card compact correction: remove the unused middle space without horizontal overflow. */
.pantools-account-list {
  justify-items: start !important;
  overflow-x: hidden !important;
}

.pantools-account-card {
  width: 250px !important;
  max-width: 100% !important;
  grid-template-columns: 40px 168px 20px !important;
  gap: 8px !important;
  min-height: 64px !important;
  padding: 9px 7px !important;
}

.pantools-account-card .pantools-account-logo {
  width: 38px !important;
  height: 38px !important;
}

.pantools-account-card .pantools-account-info {
  width: 168px !important;
  gap: 3px !important;
}

.pantools-account-card .pantools-account-info i {
  width: 100% !important;
}

.pantools-account-card .pantools-account-trash {
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  padding: 0 !important;
}

.pantools-add-account,
body.pantools-app-mode .pantools-add-account {
  width: 250px !important;
  max-width: 100% !important;
  justify-self: start !important;
}

/* Pantools account rail final pass: keep the rail compact without clipping labels. */
body.pantools-app-mode .netdisk-pan-shell.pantools-shell {
  grid-template-columns: 72px 216px minmax(0, 1fr) !important;
}

body.pantools-app-mode .pantools-account-pool {
  padding: 12px 9px 62px !important;
}

body.pantools-app-mode .pantools-account-tabs {
  max-width: 200px !important;
  padding: 3px !important;
}

body.pantools-app-mode .pantools-account-tabs button {
  height: 27px !important;
  min-width: 39px !important;
  padding: 0 7px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-account-card {
  width: calc(100% - 2px) !important;
  grid-template-columns: 34px minmax(0, 1fr) 18px !important;
  gap: 7px !important;
  padding: 8px 9px 8px 6px !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-logo {
  width: 32px !important;
  height: 32px !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-info {
  width: auto !important;
  min-width: 0 !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-info strong {
  font-size: 13px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-info i {
  width: 100% !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-trash {
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  justify-self: end !important;
}

/* Final account action menu pass: the rail uses a tiny more trigger, not a visible delete strip. */
body.pantools-app-mode .pantools-account-card .pantools-account-more {
  position: relative !important;
  align-self: center !important;
  justify-self: end !important;
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 5px !important;
  background: transparent !important;
  color: #667085 !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-more:hover,
body.pantools-app-mode .pantools-account-card .pantools-account-more:focus-visible,
body.pantools-app-mode .pantools-account-card.menu-open .pantools-account-more {
  background: #eef4ff !important;
  color: #3b6cff !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-more .svg-icon {
  display: none !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-more::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 2px !important;
  height: 2px !important;
  margin: -1px 0 0 -1px !important;
  border-radius: 50% !important;
  background: currentColor !important;
  box-shadow: 0 -5px 0 currentColor, 0 5px 0 currentColor !important;
  opacity: .95 !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-action-menu {
  top: 27px !important;
  right: 6px !important;
  width: 124px !important;
  padding: 5px !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-action-menu button {
  grid-template-columns: 15px minmax(0, 1fr) !important;
  justify-self: stretch !important;
  width: 100% !important;
  min-height: 31px !important;
  padding: 4px 5px !important;
  border: 0 !important;
  border-radius: 5px !important;
  background: transparent !important;
}

body.pantools-app-mode .pantools-account-card .pantools-account-action-menu button.danger {
  color: #b42318 !important;
}

body.pantools-app-mode .pantools-account-ip-panel {
  width: min(360px, calc(100vw - 72px)) !important;
  border-radius: 10px !important;
}

body.pantools-app-mode .pantools-account-ip-box {
  display: grid !important;
  gap: 10px !important;
}

body.pantools-app-mode .pantools-proxy-title {
  display: grid !important;
  grid-template-columns: 18px 1fr !important;
  align-items: center !important;
  gap: 3px 7px !important;
  color: #344054 !important;
}

body.pantools-app-mode .pantools-proxy-title .svg-icon {
  width: 15px !important;
  height: 15px !important;
  color: #336dff !important;
}

body.pantools-app-mode .pantools-proxy-title small {
  grid-column: 2 !important;
  color: #667085 !important;
}

body.pantools-app-mode .pantools-proxy-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
}

body.pantools-app-mode .pantools-account-ip-box label {
  display: grid !important;
  gap: 5px !important;
}

body.pantools-app-mode .pantools-account-ip-box label > span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #344054 !important;
  font-size: 11px !important;
}

body.pantools-app-mode .pantools-account-ip-box label.wide,
body.pantools-app-mode .pantools-account-ip-box label.full {
  grid-column: 1 / -1 !important;
}

body.pantools-app-mode .pantools-account-ip-box input,
body.pantools-app-mode .pantools-account-ip-box select {
  width: 100% !important;
  height: 31px !important;
  padding: 0 9px !important;
  border: 1px solid #d8e4f7 !important;
  border-radius: 7px !important;
  color: #1f2937 !important;
  background: #fff !important;
  font-size: 12px !important;
  outline: none !important;
}

body.pantools-app-mode .pantools-account-ip-box input:focus,
body.pantools-app-mode .pantools-account-ip-box select:focus {
  border-color: #8db7ff !important;
  box-shadow: 0 0 0 2px rgba(23, 100, 255, 0.10) !important;
}

body.pantools-app-mode .pantools-account-ip-box small {
  color: #667085 !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}

body.pantools-app-mode .pantools-account-card.active {
  border: 1px solid #8db7ff !important;
  background: linear-gradient(90deg, #eef5ff 0%, #f8fbff 100%) !important;
  box-shadow: 0 5px 14px rgba(31, 102, 255, 0.08) !important;
}

body.pantools-app-mode .pantools-account-card.active .pantools-account-info strong {
  color: #172033 !important;
}

body.pantools-app-mode .pantools-account-card.active .pantools-account-logo {
  border-color: #b9d1ff !important;
}

body.pantools-app-mode .pantools-add-account {
  width: 206px !important;
  left: 9px !important;
  font-weight: 400 !important;
}

.netdisk-mount-panel h2,
.netdisk-mount-panel h3,
.netdisk-mount-panel strong,
.netdisk-mount-panel .primary,
.netdisk-mount-panel .secondary,
.netdisk-mount-panel .text-button,
.netdisk-mount-status {
  font-weight: 400 !important;
}

/* Pantools netdisk modal refinement: consistent smaller dialogs, lighter text. */
body.pantools-app-mode .pantools-feature-modal .pantools-feature-panel,
body.pantools-app-mode .pantools-action-modal .pantools-modal-panel,
body.pantools-app-mode .pantools-upload-modal-panel,
body.pantools-app-mode .pantools-download-modal-panel,
body.pantools-app-mode .pantools-delete-modal-panel,
body.pantools-app-mode .pantools-unbind-panel,
body.pantools-app-mode .modal-panel:has(.modal-create-folder) {
  border-radius: 12px !important;
  box-shadow: 0 18px 46px rgba(16, 24, 40, 0.20) !important;
}

body.pantools-app-mode .pantools-feature-panel:has(.pantools-rename-page) {
  width: min(760px, calc(100vw - 72px)) !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-page {
  min-height: 620px !important;
  padding: 24px 28px 22px !important;
  gap: 14px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head {
  min-height: 64px !important;
  padding: 0 28px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head h2,
body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head > strong,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head strong,
body.pantools-app-mode .pantools-upload-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-download-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-delete-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-unbind-panel .modal-head h2,
body.pantools-app-mode .modal-panel h2,
body.pantools-app-mode .modal-panel h3,
body.pantools-app-mode .confirm-line,
body.pantools-app-mode .confirm-line *,
body.pantools-app-mode .pantools-modal-body strong,
body.pantools-app-mode .pantools-modal-body b,
body.pantools-app-mode .pantools-modal-body label,
body.pantools-app-mode .pantools-modal-body p,
body.pantools-app-mode .modal-foot button,
body.pantools-app-mode .modal-foot button *,
body.pantools-app-mode .pantools-modal-primary,
body.pantools-app-mode .pantools-modal-primary *,
body.pantools-app-mode #netdiskRunOperation,
body.pantools-app-mode #netdiskRunOperation *,
body.pantools-app-mode #netdiskOperationPreviewBtn,
body.pantools-app-mode #netdiskOperationPreviewBtn *,
body.pantools-app-mode #netdiskDestructiveConfirm,
body.pantools-app-mode .pantools-check,
body.pantools-app-mode .pantools-check * {
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head h2,
body.pantools-app-mode .pantools-upload-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-download-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-delete-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-unbind-panel .modal-head h2 {
  font-size: 22px !important;
  line-height: 1.22 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-head > strong,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-section-head strong,
body.pantools-app-mode .pantools-upload-section > strong,
body.pantools-app-mode .pantools-upload-list > strong,
body.pantools-app-mode .pantools-download-title {
  font-size: 17px !important;
  line-height: 1.3 !important;
}

body.pantools-app-mode .pantools-upload-modal-panel,
body.pantools-app-mode .pantools-download-modal-panel {
  width: min(680px, calc(100vw - 72px)) !important;
  min-height: 470px !important;
}

body.pantools-app-mode .pantools-delete-modal-panel,
body.pantools-app-mode .pantools-unbind-panel {
  width: min(520px, calc(100vw - 72px)) !important;
  min-height: 330px !important;
}

body.pantools-app-mode .pantools-upload-modal-panel .modal-head,
body.pantools-app-mode .pantools-download-modal-panel .modal-head,
body.pantools-app-mode .pantools-delete-modal-panel .modal-head,
body.pantools-app-mode .pantools-unbind-panel .modal-head {
  min-height: 62px !important;
  padding: 0 26px !important;
}

body.pantools-app-mode .pantools-upload-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-download-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-delete-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-unbind-panel .pantools-modal-body {
  padding: 0 26px !important;
}

body.pantools-app-mode .pantools-upload-modal-layout,
body.pantools-app-mode .pantools-download-box,
body.pantools-app-mode .pantools-delete-confirm {
  gap: 16px !important;
}

body.pantools-app-mode .pantools-upload-target,
body.pantools-app-mode .pantools-download-dir,
body.pantools-app-mode .pantools-delete-list,
body.pantools-app-mode .pantools-download-list,
body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-list,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-empty-rule,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-rules-summary > div:last-child {
  min-height: 48px !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .pantools-file-list-item {
  min-height: 48px !important;
  grid-template-columns: 20px minmax(0, 1fr) !important;
  gap: 8px !important;
  padding: 0 16px !important;
}

body.pantools-app-mode .pantools-file-list-item strong,
body.pantools-app-mode .pantools-download-dir strong,
body.pantools-app-mode .pantools-download-dir em,
body.pantools-app-mode .pantools-modal-empty,
body.pantools-app-mode .pantools-upload-card strong,
body.pantools-app-mode .pantools-upload-card small,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-empty-rule,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-rules-summary > div:last-child {
  font-size: 14px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-upload-card-row {
  gap: 12px !important;
}

body.pantools-app-mode .pantools-upload-card {
  min-height: 82px !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  gap: 12px !important;
  padding: 16px 18px !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .pantools-upload-card i {
  width: 44px !important;
  height: 44px !important;
  border-radius: 10px !important;
}

body.pantools-app-mode .pantools-upload-card .svg-icon,
body.pantools-app-mode .pantools-download-dir .svg-icon,
body.pantools-app-mode .pantools-file-list-item .svg-icon {
  width: 18px !important;
  height: 18px !important;
}

body.pantools-app-mode .pantools-delete-warning,
body.pantools-app-mode .pantools-delete-warning .svg-icon {
  width: 38px !important;
  height: 38px !important;
}

body.pantools-app-mode .pantools-delete-confirm p {
  font-size: 16px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-upload-modal-panel .modal-foot,
body.pantools-app-mode .pantools-download-modal-panel .modal-foot,
body.pantools-app-mode .pantools-delete-modal-panel .modal-foot,
body.pantools-app-mode .pantools-unbind-panel .modal-foot {
  gap: 12px !important;
  padding: 24px 26px 22px !important;
}

body.pantools-app-mode .pantools-upload-modal-panel .modal-foot button,
body.pantools-app-mode .pantools-download-modal-panel .modal-foot button,
body.pantools-app-mode .pantools-delete-modal-panel .modal-foot button,
body.pantools-app-mode .pantools-unbind-panel .modal-foot button,
body.pantools-app-mode #netdiskRunOperation,
body.pantools-app-mode #netdiskOperationPreviewBtn {
  min-width: 88px !important;
  height: 40px !important;
  border-radius: 7px !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode #netdiskRunOperation,
body.pantools-app-mode #netdiskRunOperation:disabled,
body.pantools-app-mode .pantools-download-modal-panel .modal-foot .pantools-modal-primary,
body.pantools-app-mode .pantools-download-modal-panel .modal-foot .pantools-modal-primary:disabled,
body.pantools-app-mode .pantools-upload-modal-panel .modal-foot .pantools-modal-primary,
body.pantools-app-mode .pantools-upload-modal-panel .modal-foot .pantools-modal-primary:disabled {
  color: #fff !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
  box-shadow: 0 10px 24px rgba(23, 100, 255, 0.18) !important;
  opacity: 1 !important;
}

body.pantools-app-mode .pantools-upload-modal-panel .icon-close,
body.pantools-app-mode .pantools-download-modal-panel .icon-close,
body.pantools-app-mode .pantools-delete-modal-panel .icon-close,
body.pantools-app-mode .pantools-unbind-panel .icon-close,
body.pantools-app-mode .pantools-feature-modal .icon-close {
  width: 30px !important;
  height: 30px !important;
  font-size: 24px !important;
}

/* Pantools modal final tuning: benchmark against the compact rename dialog. */
body.pantools-app-mode .pantools-feature-modal,
body.pantools-app-mode .pantools-action-modal {
  align-items: center !important;
  justify-content: center !important;
}

body.pantools-app-mode .pantools-feature-modal .pantools-feature-panel,
body.pantools-app-mode .pantools-action-modal .pantools-modal-panel {
  width: min(900px, calc(100vw - 96px)) !important;
  max-height: calc(100vh - 96px) !important;
  border-radius: 12px !important;
}

body.pantools-app-mode .pantools-feature-modal *,
body.pantools-app-mode .pantools-action-modal *,
body.pantools-app-mode .pantools-upload-modal-panel *,
body.pantools-app-mode .pantools-download-modal-panel *,
body.pantools-app-mode .pantools-delete-modal-panel *,
body.pantools-app-mode .pantools-unbind-panel * {
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal h2,
body.pantools-app-mode .pantools-action-modal h2,
body.pantools-app-mode .pantools-upload-modal-panel h2,
body.pantools-app-mode .pantools-download-modal-panel h2,
body.pantools-app-mode .pantools-delete-modal-panel h2,
body.pantools-app-mode .pantools-unbind-panel h2 {
  font-size: 20px !important;
  line-height: 1.25 !important;
}

body.pantools-app-mode .pantools-feature-modal strong,
body.pantools-app-mode .pantools-action-modal strong,
body.pantools-app-mode .pantools-feature-modal label,
body.pantools-app-mode .pantools-action-modal label {
  font-size: 15px !important;
  line-height: 1.35 !important;
}

body.pantools-app-mode .pantools-feature-head,
body.pantools-app-mode .pantools-modal-head {
  min-height: 58px !important;
  padding: 0 24px !important;
}

body.pantools-app-mode .pantools-share-option,
body.pantools-app-mode .pantools-modal-card,
body.pantools-app-mode .pantools-modal-list,
body.pantools-app-mode .pantools-modal-empty {
  min-height: 56px !important;
  border-radius: 8px !important;
}

body.pantools-app-mode #netdiskRunOperation,
body.pantools-app-mode #netdiskRunOperation:disabled,
body.pantools-app-mode .pantools-modal-primary,
body.pantools-app-mode .pantools-modal-primary:disabled {
  color: #fff !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
  opacity: 1 !important;
  font-weight: 400 !important;
}

/* Pantools modal equal-size pass: same frame, compact content, inline icons. */
body.pantools-app-mode .pantools-feature-modal .pantools-feature-panel,
body.pantools-app-mode .pantools-action-modal .pantools-modal-panel,
body.pantools-app-mode .pantools-upload-modal-panel,
body.pantools-app-mode .pantools-download-modal-panel,
body.pantools-app-mode .pantools-delete-modal-panel,
body.pantools-app-mode .pantools-unbind-panel {
  width: min(900px, calc(100vw - 96px)) !important;
  height: min(560px, calc(100vh - 96px)) !important;
  min-height: 0 !important;
  max-height: calc(100vh - 96px) !important;
  display: grid !important;
  grid-template-rows: 58px minmax(0, 1fr) 64px !important;
  overflow: hidden !important;
  border-radius: 12px !important;
}

body.pantools-app-mode .pantools-feature-head,
body.pantools-app-mode .pantools-upload-modal-panel .modal-head,
body.pantools-app-mode .pantools-download-modal-panel .modal-head,
body.pantools-app-mode .pantools-delete-modal-panel .modal-head,
body.pantools-app-mode .pantools-unbind-panel .modal-head,
body.pantools-app-mode .pantools-action-modal .modal-head {
  min-height: 58px !important;
  height: 58px !important;
  padding: 0 24px !important;
  align-items: center !important;
}

body.pantools-app-mode .pantools-feature-head p,
body.pantools-app-mode .pantools-feature-toolbar {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-content,
body.pantools-app-mode .pantools-action-modal .pantools-modal-body,
body.pantools-app-mode .pantools-upload-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-download-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-delete-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-unbind-panel .pantools-modal-body {
  padding: 18px 28px !important;
  overflow: auto !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-rename-page,
body.pantools-app-mode .pantools-upload-modal-layout,
body.pantools-app-mode .pantools-download-box,
body.pantools-app-mode .pantools-delete-confirm {
  min-height: 0 !important;
  gap: 12px !important;
  padding: 0 !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-share-selected-list,
body.pantools-app-mode .pantools-upload-target,
body.pantools-app-mode .pantools-download-dir,
body.pantools-app-mode .pantools-delete-list,
body.pantools-app-mode .pantools-download-list,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-empty-rule,
body.pantools-app-mode .pantools-feature-panel .pantools-rename-rules-summary > div:last-child {
  min-height: 42px !important;
  padding: 0 14px !important;
}

body.pantools-app-mode .modal-foot,
body.pantools-app-mode .pantools-upload-modal-panel .modal-foot,
body.pantools-app-mode .pantools-download-modal-panel .modal-foot,
body.pantools-app-mode .pantools-delete-modal-panel .modal-foot,
body.pantools-app-mode .pantools-unbind-panel .modal-foot,
body.pantools-app-mode .pantools-feature-panel > .modal-foot {
  height: 64px !important;
  padding: 0 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
}

body.pantools-app-mode .pantools-feature-modal button,
body.pantools-app-mode .pantools-action-modal button,
body.pantools-app-mode .pantools-upload-modal-panel button,
body.pantools-app-mode .pantools-download-modal-panel button,
body.pantools-app-mode .pantools-delete-modal-panel button,
body.pantools-app-mode .pantools-unbind-panel button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-feature-modal button .svg-icon,
body.pantools-app-mode .pantools-action-modal button .svg-icon,
body.pantools-app-mode .pantools-upload-modal-panel button .svg-icon,
body.pantools-app-mode .pantools-download-modal-panel button .svg-icon,
body.pantools-app-mode .pantools-delete-modal-panel button .svg-icon,
body.pantools-app-mode .pantools-unbind-panel button .svg-icon {
  width: 15px !important;
  height: 15px !important;
  flex: 0 0 auto !important;
}

body.pantools-app-mode .pantools-upload-card-row {
  gap: 10px !important;
}

body.pantools-app-mode .pantools-upload-card,
body.pantools-app-mode .pantools-share-options label {
  min-height: 54px !important;
  padding: 10px 14px !important;
  display: grid !important;
  align-items: center !important;
}

/* Pantools final approved six-modal pass, 2026-08-11. Scoped to the six dialogs only. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename,
body.pantools-app-mode .pantools-action-modal.pantools-upload-modal,
body.pantools-app-mode .pantools-action-modal.pantools-download-modal,
body.pantools-app-mode .pantools-action-modal:has(.pantools-new-folder-modal-panel) {
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-panel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-panel {
  width: 500px !important;
  height: 600px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-panel {
  width: 600px !important;
  height: 700px !important;
}

body.pantools-app-mode .pantools-upload-modal-panel {
  width: 500px !important;
  height: 600px !important;
}

body.pantools-app-mode .pantools-download-modal-panel,
body.pantools-app-mode .pantools-new-folder-modal-panel {
  width: 500px !important;
  height: 350px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-panel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-panel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-panel,
body.pantools-app-mode .pantools-upload-modal-panel,
body.pantools-app-mode .pantools-download-modal-panel,
body.pantools-app-mode .pantools-new-folder-modal-panel {
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: calc(100vw - 48px) !important;
  max-height: calc(100vh - 48px) !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 18px 46px rgba(15, 23, 42, 0.18) !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-rows: 58px minmax(0, 1fr) 64px !important;
  color: #0f172a !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-head,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-head,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head,
body.pantools-app-mode .pantools-upload-modal-panel .modal-head,
body.pantools-app-mode .pantools-download-modal-panel .modal-head,
body.pantools-app-mode .pantools-new-folder-modal-panel .modal-head {
  height: 58px !important;
  min-height: 58px !important;
  padding: 0 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  border-bottom: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-head > div,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-head > div,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head > div {
  display: block !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-head span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-head p,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-head span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-head p,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head p,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-toolbar,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-toolbar,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-toolbar {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-head h2,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-head h2,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head h2,
body.pantools-app-mode .pantools-upload-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-download-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-new-folder-modal-panel .modal-head h2 {
  margin: 0 !important;
  color: #0f172a !important;
  font-size: 18px !important;
  line-height: 24px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .icon-close,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .icon-close,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .icon-close,
body.pantools-app-mode .pantools-upload-modal-panel .icon-close,
body.pantools-app-mode .pantools-download-modal-panel .icon-close,
body.pantools-app-mode .pantools-new-folder-modal-panel .icon-close {
  width: 28px !important;
  height: 28px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #94a3b8 !important;
  font-size: 24px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-content,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-content,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-content,
body.pantools-app-mode .pantools-upload-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-download-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-new-folder-modal-panel .pantools-modal-body {
  padding: 4px 20px 14px !important;
  overflow: hidden !important;
  color: #0f172a !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-copy-page,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-page,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-page {
  height: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
  display: grid !important;
  gap: 12px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-copy-page,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-page {
  grid-template-rows: auto auto auto minmax(0, 1fr) auto !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-page {
  grid-template-rows: auto auto minmax(0, 1fr) auto auto !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-head,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-head,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-head {
  min-height: 28px !important;
  align-items: center !important;
  gap: 12px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-head strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-head strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-head strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy label,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move label,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename label,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-section-head strong,
body.pantools-app-mode .pantools-download-title,
body.pantools-app-mode .pantools-upload-section > strong,
body.pantools-app-mode .pantools-upload-list > strong,
body.pantools-app-mode .pantools-new-folder-field > span {
  color: #0f172a !important;
  font-size: 13px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-head strong span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-head strong span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-head strong span {
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  font-size: 12px !important;
  line-height: 22px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-list,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-list,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-list,
body.pantools-app-mode .pantools-download-list,
body.pantools-app-mode .pantools-upload-target,
body.pantools-app-mode .pantools-download-dir,
body.pantools-app-mode .pantools-new-folder-field input {
  min-height: 38px !important;
  border-radius: 7px !important;
  border: 1px solid #dbe5f4 !important;
  background: #fbfdff !important;
  padding: 0 12px !important;
  font-size: 13px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
  color: #0f172a !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-file-list-item,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-file-list-item,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-file-list-item,
body.pantools-app-mode .pantools-download-list .pantools-file-list-item {
  min-height: 36px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename strong,
body.pantools-app-mode .pantools-upload-modal-panel strong,
body.pantools-app-mode .pantools-download-modal-panel strong,
body.pantools-app-mode .pantools-new-folder-modal-panel strong {
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy small,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move small,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename small,
body.pantools-app-mode .pantools-upload-modal-panel small,
body.pantools-app-mode .pantools-download-modal-panel small,
body.pantools-app-mode .pantools-new-folder-modal-panel small,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy #pantoolsMoveState,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move #pantoolsMoveState,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename #pantoolsRenameState,
body.pantools-app-mode .pantools-download-note {
  color: #94a3b8 !important;
  font-size: 12px !important;
  line-height: 18px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .transfer-dir-control,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .transfer-dir-control {
  height: 40px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 42px !important;
  gap: 6px !important;
  border: 0 !important;
  background: transparent !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .transfer-dir-control input[readonly],
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .transfer-dir-control input[readonly] {
  height: 40px !important;
  border-radius: 7px !important;
  border: 1px solid #dbe5f4 !important;
  background: #fff !important;
  padding: 0 12px !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .transfer-dir-control button,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .transfer-dir-control button {
  width: 42px !important;
  min-width: 42px !important;
  height: 40px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-empty-rule {
  min-height: 42px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 13px !important;
  color: #94a3b8 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-preview {
  min-height: 0 !important;
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename #netdiskOperationPreview {
  min-height: 0 !important;
  height: 100% !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-preview-empty #netdiskOperationPreview::placeholder {
  color: transparent !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-preview-empty {
  position: relative !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-preview-empty::after {
  content: "配置规则后点击「预览效果」查看结果";
  position: absolute;
  inset: 42px 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #94a3b8;
  font-size: 13px;
  line-height: 20px;
  font-weight: 400;
  pointer-events: none;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .transfer-import-simple-actions,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .transfer-import-simple-actions,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .transfer-import-simple-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  min-height: 44px !important;
}

body.pantools-app-mode .pantools-upload-modal-panel .pantools-upload-modal-layout {
  height: 100% !important;
  display: grid !important;
  grid-template-rows: auto minmax(84px, auto) auto !important;
  gap: 14px !important;
  padding: 0 !important;
}

body.pantools-app-mode .pantools-upload-modal-panel .pantools-upload-section,
body.pantools-app-mode .pantools-upload-modal-panel .pantools-upload-list {
  display: grid !important;
  gap: 8px !important;
}

body.pantools-app-mode .pantools-upload-modal-panel .pantools-upload-list .compact-result {
  min-height: 84px !important;
  height: 84px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  resize: none !important;
}

body.pantools-app-mode .pantools-upload-card-row {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}

body.pantools-app-mode .pantools-upload-card {
  min-height: 58px !important;
  height: 58px !important;
  padding: 8px 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .pantools-upload-card i {
  width: 36px !important;
  height: 36px !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .pantools-upload-card span {
  gap: 1px !important;
}

body.pantools-app-mode .pantools-download-box {
  height: 100% !important;
  display: grid !important;
  grid-template-rows: auto 38px auto 38px 18px !important;
  align-content: start !important;
  gap: 10px !important;
  padding: 0 !important;
}

body.pantools-app-mode .pantools-download-list {
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-download-dir {
  width: 100% !important;
  height: 38px !important;
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 8px !important;
}

body.pantools-app-mode .pantools-download-dir em {
  color: #0f172a !important;
  font-size: 12px !important;
  font-style: normal !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-new-folder-field {
  height: 100% !important;
  display: grid !important;
  grid-template-rows: auto 38px auto !important;
  align-content: start !important;
  gap: 12px !important;
  margin: 0 !important;
}

body.pantools-app-mode .pantools-new-folder-field input {
  width: 100% !important;
  height: 38px !important;
}

body.pantools-app-mode .pantools-new-folder-field small {
  text-align: center !important;
}

body.pantools-app-mode .pantools-upload-modal-panel .modal-foot,
body.pantools-app-mode .pantools-download-modal-panel .modal-foot,
body.pantools-app-mode .pantools-new-folder-modal-panel .modal-foot {
  height: 64px !important;
  padding: 0 20px !important;
  border-top: 1px solid #e8eef7 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy button,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move button,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename button,
body.pantools-app-mode .pantools-upload-modal-panel button,
body.pantools-app-mode .pantools-download-modal-panel button,
body.pantools-app-mode .pantools-new-folder-modal-panel button {
  min-height: 34px !important;
  padding: 0 14px !important;
  border-radius: 7px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  font-size: 13px !important;
  line-height: 18px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .primary,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .primary,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .primary,
body.pantools-app-mode .pantools-upload-modal-panel .pantools-modal-primary,
body.pantools-app-mode .pantools-download-modal-panel .pantools-modal-primary,
body.pantools-app-mode .pantools-new-folder-modal-panel .pantools-modal-primary {
  min-width: 112px !important;
  height: 38px !important;
  color: #fff !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
  box-shadow: 0 12px 24px rgba(23, 100, 255, 0.16) !important;
  opacity: 1 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .primary:disabled,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .primary:disabled,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .primary:disabled,
body.pantools-app-mode .pantools-upload-modal-panel .pantools-modal-primary:disabled,
body.pantools-app-mode .pantools-download-modal-panel .pantools-modal-primary:disabled,
body.pantools-app-mode .pantools-new-folder-modal-panel .pantools-modal-primary:disabled {
  color: #fff !important;
  background: #8fb6ff !important;
  border-color: #8fb6ff !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .secondary,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .secondary,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .secondary,
body.pantools-app-mode .pantools-upload-modal-panel .secondary,
body.pantools-app-mode .pantools-download-modal-panel .secondary,
body.pantools-app-mode .pantools-new-folder-modal-panel .secondary {
  color: #1764ff !important;
  background: #edf5ff !important;
  border-color: #cfe0ff !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .svg-icon,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .svg-icon,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .svg-icon,
body.pantools-app-mode .pantools-upload-modal-panel .svg-icon,
body.pantools-app-mode .pantools-download-modal-panel .svg-icon,
body.pantools-app-mode .pantools-new-folder-modal-panel .svg-icon {
  width: 14px !important;
  height: 14px !important;
  flex: 0 0 14px !important;
  stroke-width: 2 !important;
}

/* Pantools six-modal lock: higher specificity than previous audit overrides. */
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel {
  width: 500px !important;
  height: 600px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel {
  width: 500px !important;
  height: 350px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel {
  min-width: 0 !important;
  max-width: calc(100vw - 48px) !important;
  max-height: calc(100vh - 48px) !important;
  grid-template-rows: 58px minmax(0, 1fr) 64px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-head,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .modal-head,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-head,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-foot,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .modal-foot,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-foot {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .pantools-modal-body {
  padding: 4px 20px 14px !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-card-row {
  grid-template-columns: 1fr !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-download-box {
  grid-template-rows: auto 38px auto 38px auto !important;
  gap: 10px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-download-list,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-download-dir,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .pantools-new-folder-field input {
  height: 38px !important;
  min-height: 38px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .pantools-new-folder-field {
  grid-template-rows: auto 38px auto !important;
  gap: 12px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-preview-empty textarea#netdiskOperationPreview::placeholder {
  color: transparent !important;
  opacity: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-preview-empty::after {
  z-index: 3 !important;
}

/* Pantools copy/move/rename final geometry corrections. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-copy-page,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-page {
  grid-template-rows: auto auto auto minmax(0, 1fr) 44px !important;
  gap: 12px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-target,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-target {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .transfer-dir-control,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .transfer-dir-control {
  width: 100% !important;
  grid-template-columns: minmax(0, 1fr) 50px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy #pantoolsCopyTargetList {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy #netdiskOperationPreview,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move #netdiskOperationPreview {
  min-height: 0 !important;
  height: 100% !important;
  border: 1px solid #dbe5f4 !important;
  border-radius: 7px !important;
  background: #fff !important;
  color: #94a3b8 !important;
  text-align: center !important;
  font-size: 13px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
  resize: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding-top: 54px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy #netdiskOperationPreview::placeholder,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move #netdiskOperationPreview::placeholder {
  color: #94a3b8 !important;
  opacity: 1 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 82px 120px !important;
  align-items: center !important;
  justify-content: stretch !important;
  justify-items: stretch !important;
  gap: 8px !important;
  min-height: 44px !important;
  padding: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #pantoolsMoveState,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #pantoolsMoveState {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions .primary,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions .primary {
  width: 120px !important;
  min-width: 120px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions .secondary,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions .secondary {
  width: 82px !important;
  min-width: 82px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #pantoolsOperationCancel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #pantoolsOperationCancel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #netdiskRunOperation {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  grid-row: auto !important;
  margin: 0 !important;
  align-self: center !important;
  justify-self: stretch !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #pantoolsOperationCancel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #pantoolsOperationCancel {
  grid-column: 2 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #netdiskRunOperation {
  grid-column: 3 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-preview.pantools-preview-empty::after {
  content: "配置规则后点击「预览效果」查看结果" !important;
  position: absolute !important;
  inset: 42px 0 0 0 !important;
  left: 0 !important;
  top: 42px !important;
  transform: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #94a3b8 !important;
  font-size: 13px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
  white-space: normal !important;
  pointer-events: none !important;
  z-index: 5 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 98px 136px !important;
  gap: 8px !important;
  align-items: center !important;
  justify-items: stretch !important;
  min-height: 44px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #pantoolsRenameState {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskPreviewOperationBottom,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskRunOperation {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  margin: 0 !important;
  grid-row: auto !important;
  align-self: center !important;
  justify-self: stretch !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskPreviewOperationBottom {
  grid-column: 2 !important;
  width: 98px !important;
  min-width: 98px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskRunOperation {
  grid-column: 3 !important;
  width: 136px !important;
  min-width: 136px !important;
}

/* Pantools strict one-to-one reference pass, 2026-08-11. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-panel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-panel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-panel,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel {
  position: relative !important;
  display: block !important;
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  border-radius: 12px !important;
  color: #101828 !important;
  font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-panel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-panel {
  width: 500px !important;
  height: 600px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-panel {
  width: 600px !important;
  height: 700px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel {
  width: 500px !important;
  height: 600px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel {
  width: 500px !important;
  height: 350px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-head,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-head,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-head,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .modal-head,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-head {
  position: absolute !important;
  inset: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  display: block !important;
  background: transparent !important;
  z-index: 5 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-head > div,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-head > div,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head > div {
  display: block !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-head span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-head p,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-head span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-head p,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head p,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-toolbar,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-toolbar,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-toolbar,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-log,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-log,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-log {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-head h2,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-head h2 {
  position: absolute !important;
  top: 32px !important;
  left: 32px !important;
  margin: 0 !important;
  color: #101828 !important;
  font-size: 24px !important;
  line-height: 1.16 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head h2 {
  position: absolute !important;
  top: 34px !important;
  left: 36px !important;
  margin: 0 !important;
  color: #101828 !important;
  font-size: 24px !important;
  line-height: 1.16 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-head h2 {
  position: absolute !important;
  top: 28px !important;
  left: 30px !important;
  margin: 0 !important;
  color: #101828 !important;
  font-size: 22px !important;
  line-height: 1.16 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .icon-close,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .icon-close {
  position: absolute !important;
  top: 27px !important;
  right: 32px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .icon-close {
  position: absolute !important;
  top: 29px !important;
  right: 36px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .icon-close,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .icon-close,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .icon-close {
  position: absolute !important;
  top: 23px !important;
  right: 30px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .icon-close,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .icon-close,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .icon-close,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .icon-close,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .icon-close,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .icon-close {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  border: 0 !important;
  display: grid !important;
  place-items: center !important;
  background: transparent !important;
  color: #98a2b3 !important;
  font-size: 26px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-content,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-content {
  position: absolute !important;
  left: 32px !important;
  right: 32px !important;
  top: 96px !important;
  bottom: 78px !important;
  padding: 0 !important;
  overflow: visible !important;
  display: block !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-content {
  position: absolute !important;
  left: 36px !important;
  right: 36px !important;
  top: 98px !important;
  bottom: 78px !important;
  padding: 0 !important;
  overflow: visible !important;
  display: block !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-modal-body,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .pantools-modal-body {
  position: absolute !important;
  left: 30px !important;
  right: 30px !important;
  top: 86px !important;
  bottom: 68px !important;
  padding: 0 !important;
  overflow: hidden !important;
  display: block !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-copy-page,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-page,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-page {
  position: relative !important;
  display: block !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-rules-summary {
  margin: 0 0 22px !important;
  padding: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-head,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-head,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-head,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-section-head {
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 11px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  color: #101828 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-head strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-head strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-head strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-section-head strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-copy-target-field label,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-copy-target-field label {
  margin: 0 !important;
  color: #101828 !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-head small,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-head small {
  color: #98a2b3 !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-head strong span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-head strong span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-head strong span {
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  border-radius: 999px !important;
  background: #1764ff !important;
  color: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 13px !important;
  line-height: 24px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-list,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-list,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-list {
  width: 100% !important;
  height: 50px !important;
  min-height: 50px !important;
  padding: 0 14px !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
  background: #fafafa !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  overflow: hidden !important;
  color: #344054 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-list *,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-list *,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-list * {
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .netdisk-pan-filemark,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .netdisk-pan-filemark,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .netdisk-pan-filemark,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .netdisk-pan-filemark,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .netdisk-pan-filemark {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  color: #f59a00 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-target,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-target {
  margin: 0 0 22px !important;
  padding: 0 !important;
  display: block !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-copy-target-field,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-copy-target-field {
  display: block !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-copy-target-field label,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-copy-target-field label {
  display: block !important;
  margin-bottom: 11px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .transfer-dir-control,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .transfer-dir-control {
  width: 100% !important;
  height: 50px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 50px !important;
  gap: 10px !important;
  border: 0 !important;
  background: transparent !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .transfer-dir-control input[readonly],
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .transfer-dir-control input[readonly] {
  width: 100% !important;
  height: 50px !important;
  padding: 0 14px !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 8px !important;
  color: #344054 !important;
  background: #fff !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .transfer-dir-control button,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .transfer-dir-control button {
  width: 50px !important;
  min-width: 50px !important;
  height: 50px !important;
  padding: 0 !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 8px !important;
  color: #f59a00 !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-confirm,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-confirm,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-move-confirm {
  margin: 0 0 22px !important;
  padding: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #101828 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-confirm input,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-confirm input,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-move-confirm input {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  margin: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy #netdiskOperationPreview,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move #netdiskOperationPreview {
  width: 100% !important;
  height: 118px !important;
  min-height: 118px !important;
  max-height: 118px !important;
  padding: 44px 14px 14px !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 8px !important;
  background: #fff !important;
  resize: none !important;
  text-align: center !important;
  color: #98a2b3 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions {
  position: absolute !important;
  left: -32px !important;
  right: -32px !important;
  bottom: -78px !important;
  height: 78px !important;
  padding: 0 32px !important;
  border-top: 1px solid #e6edf7 !important;
  background: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  min-height: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions {
  left: -36px !important;
  right: -36px !important;
  padding: 0 36px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #pantoolsMoveState,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #pantoolsMoveState,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #pantoolsRenameState {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions button,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions button,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions button,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-foot button,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .modal-foot button,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-foot button {
  position: static !important;
  transform: none !important;
  height: 44px !important;
  min-height: 44px !important;
  min-width: 82px !important;
  padding: 0 18px !important;
  border-radius: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  font-size: 15px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  font-family: inherit !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions .secondary,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions .secondary,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions .secondary,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-foot .secondary,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .modal-foot .secondary,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-foot .secondary {
  color: #1764ff !important;
  background: #eaf2ff !important;
  border: 1px solid #bfd7ff !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions .primary,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions .primary,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions .primary,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-foot .pantools-modal-primary,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .modal-foot .pantools-modal-primary,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-foot .pantools-modal-primary {
  color: #fff !important;
  background: #1764ff !important;
  border: 1px solid #1764ff !important;
  box-shadow: 0 12px 24px rgba(23, 100, 255, 0.14) !important;
  opacity: 1 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions .primary:disabled,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions .primary:disabled,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions .primary:disabled,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-foot .pantools-modal-primary:disabled,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .modal-foot .pantools-modal-primary:disabled,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-foot .pantools-modal-primary:disabled {
  color: #fff !important;
  background: #9ec1ff !important;
  border-color: #9ec1ff !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-options {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-options label,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-section-head .text-button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #667085 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-options input {
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-empty-rule {
  height: 70px !important;
  min-height: 70px !important;
  padding: 0 14px !important;
  border: 1px dashed #d6e0ee !important;
  border-radius: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #98a2b3 !important;
  background: #fff !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-preview {
  position: relative !important;
  height: 210px !important;
  min-height: 210px !important;
  max-height: 210px !important;
  margin: 0 0 22px !important;
  padding: 14px !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 8px !important;
  background: #fff !important;
  display: block !important;
  color: #101828 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-preview .pantools-rename-section-head {
  margin: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-preview .pantools-rename-section-head strong {
  font-size: 15px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename #netdiskOperationPreview {
  position: absolute !important;
  left: 14px !important;
  right: 14px !important;
  top: 44px !important;
  bottom: 14px !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  resize: none !important;
  color: #344054 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-preview-empty::after {
  content: "配置规则后点击「预览效果」查看结果" !important;
  position: absolute !important;
  inset: 44px 14px 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #98a2b3 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  text-align: center !important;
  pointer-events: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename #netdiskPreviewOperationBottom {
  min-width: 98px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename #netdiskRunOperation {
  min-width: 136px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #pantoolsOperationCancel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #pantoolsOperationCancel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskPreviewOperationBottom,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskRunOperation {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  grid-column: auto !important;
  grid-row: auto !important;
  align-self: center !important;
  justify-self: auto !important;
  margin: 0 !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #pantoolsOperationCancel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #pantoolsOperationCancel {
  width: 82px !important;
  min-width: 82px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #netdiskRunOperation {
  width: 120px !important;
  min-width: 120px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskPreviewOperationBottom {
  width: 98px !important;
  min-width: 98px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskRunOperation {
  width: 136px !important;
  min-width: 136px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-foot,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .modal-foot,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-foot {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 68px !important;
  padding: 0 30px !important;
  border-top: 1px solid #e6edf7 !important;
  background: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-foot button,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .modal-foot button,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-foot button {
  height: 42px !important;
  min-height: 42px !important;
  min-width: 76px !important;
  font-size: 14px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-modal-layout,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-download-box,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .pantools-new-folder-field {
  display: block !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-section,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-list,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-download-title,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .pantools-new-folder-field > span {
  display: block !important;
  margin: 0 0 12px !important;
  color: #101828 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-section,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-list {
  margin-bottom: 18px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-download-list,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-download-dir,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-target,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .pantools-new-folder-field input {
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 0 18px !important;
  padding: 0 14px !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: #344054 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-download-list {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-download-dir {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 8px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-download-dir em {
  margin-left: auto !important;
  color: #344054 !important;
  font-style: normal !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel .pantools-download-note {
  margin: -10px 0 0 !important;
  color: #98a2b3 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  text-align: center !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-list .compact-result {
  width: 100% !important;
  height: 74px !important;
  min-height: 74px !important;
  margin: 0 !important;
  padding: 24px 14px 14px !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 8px !important;
  resize: none !important;
  text-align: center !important;
  color: #98a2b3 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-card-row {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
  margin-top: 4px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-card {
  width: 100% !important;
  height: 74px !important;
  min-height: 74px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  overflow: hidden !important;
  background: #fff !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-card i {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  border-radius: 10px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-card strong {
  display: block !important;
  margin: 0 !important;
  color: #101828 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-card small {
  display: block !important;
  margin-top: 5px !important;
  color: #98a2b3 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-head h2 {
  top: 32px !important;
  left: 32px !important;
  font-size: 24px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .icon-close {
  top: 27px !important;
  right: 32px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-modal-body {
  left: 32px !important;
  right: 32px !important;
  top: 96px !important;
  bottom: 78px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-foot {
  height: 78px !important;
  padding: 0 32px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .modal-foot button {
  height: 44px !important;
  min-height: 44px !important;
  min-width: 82px !important;
  font-size: 15px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-section,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-list {
  margin-bottom: 22px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-section > strong,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-list > strong {
  margin: 0 0 11px !important;
  font-size: 16px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-target {
  height: 50px !important;
  min-height: 50px !important;
  margin: 0 !important;
  font-size: 15px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-list .compact-result {
  height: 74px !important;
  min-height: 74px !important;
  padding: 25px 14px 14px !important;
  font-size: 15px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-card-row {
  grid-template-columns: 1fr !important;
  gap: 12px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-card {
  height: 78px !important;
  min-height: 78px !important;
  padding: 0 16px !important;
  gap: 13px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-card i {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-card strong {
  font-size: 15px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-card small {
  font-size: 13px !important;
}

/* Pantools approved follow-up: upload list title and delete dialog preview lock. */
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-list > strong {
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

/* Pantools upload dialog approved small labels: match the compact download list scale. */
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-target,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-target span,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-list > strong,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-list > strong span,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel #pantoolsUploadCount {
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal.pantools-delete-modal {
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel {
  position: relative !important;
  display: block !important;
  width: 500px !important;
  height: 350px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: calc(100vw - 48px) !important;
  max-height: calc(100vh - 48px) !important;
  overflow: hidden !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #101828 !important;
  box-shadow: 0 18px 46px rgba(15, 23, 42, 0.18) !important;
  font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .modal-head {
  position: absolute !important;
  inset: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  display: block !important;
  background: transparent !important;
  z-index: 5 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .modal-head h2 {
  position: absolute !important;
  top: 28px !important;
  left: 30px !important;
  margin: 0 !important;
  color: #101828 !important;
  font-size: 22px !important;
  line-height: 1.16 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .icon-close {
  position: absolute !important;
  top: 23px !important;
  right: 30px !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  border: 0 !important;
  display: grid !important;
  place-items: center !important;
  background: transparent !important;
  color: #98a2b3 !important;
  font-size: 26px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .pantools-modal-body {
  position: absolute !important;
  left: 30px !important;
  right: 30px !important;
  top: 82px !important;
  bottom: 68px !important;
  padding: 0 !important;
  overflow: hidden !important;
  display: block !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .pantools-delete-confirm {
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .pantools-delete-warning {
  width: 42px !important;
  height: 42px !important;
  margin: 0 auto 18px !important;
  display: grid !important;
  place-items: center !important;
  color: #d97706 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .pantools-delete-warning .svg-icon {
  width: 42px !important;
  height: 42px !important;
  stroke-width: 2 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .pantools-delete-confirm p {
  margin: 0 0 20px !important;
  color: #101828 !important;
  text-align: center !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .pantools-delete-confirm p strong {
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .pantools-delete-list {
  width: 100% !important;
  height: 50px !important;
  min-height: 50px !important;
  padding: 0 14px !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  overflow: hidden !important;
  background: #fafafa !important;
  color: #344054 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .pantools-delete-list .pantools-file-list-item {
  width: 100% !important;
  min-height: 0 !important;
  height: 50px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  border: 0 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .pantools-delete-list .netdisk-pan-filemark {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  color: #f59a00 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .pantools-delete-list strong {
  color: #344054 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .modal-foot {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 68px !important;
  padding: 0 30px !important;
  border-top: 1px solid #e6edf7 !important;
  background: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .modal-foot button {
  height: 42px !important;
  min-height: 42px !important;
  min-width: 76px !important;
  padding: 0 18px !important;
  border-radius: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .modal-foot .secondary {
  color: #1764ff !important;
  background: #eaf2ff !important;
  border: 1px solid #bfd7ff !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .modal-foot .pantools-modal-primary {
  min-width: 102px !important;
  color: #fff !important;
  background: #ff4d4f !important;
  border: 1px solid #ff4d4f !important;
  box-shadow: 0 12px 24px rgba(255, 77, 79, 0.12) !important;
  opacity: 1 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-delete-modal-panel .modal-foot .pantools-modal-primary .svg-icon {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions {
  position: absolute !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #pantoolsOperationCancel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #pantoolsOperationCancel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskPreviewOperationBottom,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskRunOperation {
  position: absolute !important;
  top: 17px !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  margin: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #pantoolsOperationCancel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #pantoolsOperationCancel {
  right: 164px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #netdiskRunOperation {
  right: 32px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskPreviewOperationBottom {
  right: 182px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskRunOperation {
  right: 36px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-feature-panel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-feature-panel {
  width: 615px !important;
  height: 760px !important;
  max-width: 615px !important;
  max-height: 760px !important;
  border: 0 !important;
  outline: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-feature-content,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-feature-content {
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-current-storage i,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-current-storage i,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .account-storage-meter,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .account-storage-meter {
  display: none !important;
}

body.pantools-app-mode .netdisk-pan-shell.pantools-shell {
  grid-template-columns: 74px 206px minmax(0, 1fr) !important;
  background: linear-gradient(90deg, #ffffff 0 74px, #ffffff 74px 280px, #f5f6f8 280px) !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar {
  width: 74px !important;
  padding-left: 5px !important;
  padding-right: 5px !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.96) 0%, rgba(255,255,255,0.9) 56%, rgba(247,250,255,0.92) 100%),
    radial-gradient(circle at 50% 76%, rgba(23,100,255,0.12), rgba(23,100,255,0) 62%) !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem {
  width: 64px !important;
  min-width: 64px !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-brand {
  width: 64px !important;
  min-height: 104px !important;
  margin: 0 0 8px !important;
  padding: 18px 0 12px !important;
  display: grid !important;
  place-items: center !important;
  gap: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-brand > span {
  width: 48px !important;
  height: 48px !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-brand img {
  width: 48px !important;
  height: 48px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 10px 18px rgba(23, 100, 255, 0.16)) !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-brand > div {
  display: none !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-brand::after {
  content: "" !important;
  width: 48px !important;
  height: 1px !important;
  margin-top: 18px !important;
  background: #d9e0ea !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar-bottom {
  position: relative !important;
  z-index: 1 !important;
  width: 64px !important;
  margin-top: auto !important;
  padding: 0 0 10px !important;
  display: grid !important;
  justify-items: center !important;
  gap: 6px !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar-art {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar-art img {
  width: 54px !important;
  height: 54px !important;
  margin-bottom: 22px !important;
  object-fit: contain !important;
  filter: saturate(0.92) drop-shadow(0 10px 18px rgba(23,100,255,0.16)) !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar-divider {
  width: 48px !important;
  height: 1px !important;
  margin: 0 0 8px !important;
  background: #d9e0ea !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar::after {
  content: "" !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  background: #dce4ef !important;
  pointer-events: none !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-side-action {
  width: 64px !important;
  min-height: 56px !important;
  display: grid !important;
  place-items: center !important;
  gap: 4px !important;
  padding: 5px 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: #667085 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-side-action:hover {
  color: #1764ff !important;
  background: #eaf2ff !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-side-action svg {
  width: 22px !important;
  height: 22px !important;
  stroke-width: 2 !important;
}

.panbox-contact-modal {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.panbox-contact-modal.open {
  display: flex;
}

.panbox-contact-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(16, 24, 40, 0.48);
  backdrop-filter: blur(5px);
}

.panbox-contact-dialog {
  position: relative;
  z-index: 1;
  width: min(560px, 100%);
  max-height: calc(100vh - 48px);
  overflow: auto;
  padding: 26px 32px 32px;
  border: 1px solid #e6edf7;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 22px 58px rgba(16, 24, 40, 0.24);
}

.panbox-contact-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 22px;
}

.panbox-contact-head h2,
.panbox-contact-developer h3 {
  margin: 0;
  color: #101828;
  font-size: 20px;
  line-height: 1.3;
  font-weight: 400;
}

.panbox-contact-close {
  width: 36px;
  min-height: 36px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #98a2b3;
  font-size: 28px;
  line-height: 1;
}

.panbox-contact-close:hover {
  background: #f4f7fb;
  color: #101828;
}

.panbox-contact-product,
.panbox-contact-developer {
  border: 1px solid #e6edf7;
  border-radius: 10px;
  background: #fff;
}

.panbox-contact-product {
  min-height: 150px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 16px;
  padding: 20px;
  text-align: center;
}

.panbox-contact-avatar {
  width: 76px;
  height: 76px;
  border-radius: 16px;
  object-fit: cover;
  border: 1px solid #dbeafe;
}

.panbox-contact-product strong {
  color: #1764ff;
  font-size: 26px;
  line-height: 1.15;
  font-weight: 400;
}

.panbox-contact-product span,
.panbox-contact-developer p,
.panbox-contact-grid span,
.panbox-copy-status {
  color: #667085;
  font-size: 14px;
}

.panbox-contact-developer {
  padding: 22px 26px;
  text-align: center;
}

.panbox-contact-developer p {
  margin: 6px 0 18px;
}

.panbox-contact-grid {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  max-width: 380px;
  margin: 0 auto;
  text-align: left;
}

.panbox-contact-grid strong {
  min-width: 0;
  overflow: hidden;
  color: #101828;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 400;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.panbox-copy-wechat {
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid #a7e3d2;
  border-radius: 8px;
  background: #e9fbf4;
  color: #10a878;
  font-size: 13px;
  white-space: nowrap;
}

.panbox-copy-wechat:hover {
  background: #10a878;
  border-color: #10a878;
  color: #fff;
}

.panbox-contact-note {
  max-width: 380px;
  margin: 16px auto 0;
  color: #10a878;
  font-size: 14px;
  line-height: 1.45;
  text-align: left;
}

.panbox-copy-status {
  min-height: 20px;
  margin: 10px 0 0;
}

body.pantools-app-mode .pantools-tool-category-pool {
  width: 100% !important;
  padding: 16px 12px !important;
  background: #fff !important;
  border-right: 1px solid #e6edf7 !important;
}

body.pantools-app-mode .pantools-tool-category-pool .pantools-account-head {
  margin-bottom: 22px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-selected-list .netdisk-pan-filemark.folder {
  color: #ff8a00 !important;
  background: transparent !important;
  opacity: 1 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-selected-list .netdisk-pan-filemark.folder .svg-icon,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-selected-list .netdisk-pan-filemark.folder svg {
  color: #ff8a00 !important;
  stroke: #ff8a00 !important;
  opacity: 1 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-feature-panel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-feature-panel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-panel,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-upload-modal-panel,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-download-modal-panel,
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel {
  border: 0 !important;
  outline: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions {
  left: -32px !important;
  right: -32px !important;
  width: auto !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions {
  left: -36px !important;
  right: -36px !important;
  width: auto !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #pantoolsOperationCancel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #pantoolsOperationCancel,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-move-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-move-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskPreviewOperationBottom,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-actions #netdiskRunOperation {
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 0 18px !important;
  border-radius: 8px !important;
  font-size: 15px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

/* Pantools ad cleanup: one-to-one modal from the accepted reference. */
body.pantools-app-mode .pantools-file-toolbar .pantools-ad-cleanup-toolbar-btn {
  color: #536177 !important;
  background: #ffffff !important;
  border-color: #dfe7f2 !important;
}

body.pantools-app-mode .pantools-file-toolbar .pantools-ad-cleanup-toolbar-btn .svg-icon {
  color: #536177 !important;
  stroke: #536177 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-modal {
  align-items: center !important;
  justify-content: center !important;
  background: rgba(16, 24, 40, 0.06) !important;
}

body.pantools-app-mode .pantools-action-modal .pantools-ad-cleanup-panel,
body.pantools-app-mode .pantools-ad-cleanup-panel {
  position: relative !important;
  width: 897px !important;
  height: 1050px !important;
  max-width: calc(100vw - 32px) !important;
  max-height: calc(100vh - 32px) !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 16px !important;
  box-shadow: 0 18px 54px rgba(16, 24, 40, 0.18) !important;
}

body.pantools-app-mode .pantools-ad-cleanup-panel .icon-close {
  position: absolute !important;
  top: 34px !important;
  right: 38px !important;
  width: 32px !important;
  height: 32px !important;
  color: #98a2b3 !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 34px !important;
  font-weight: 300 !important;
  line-height: 1 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-head {
  padding: 40px 32px 0 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-head h2 {
  margin: 0 !important;
  color: #101828 !important;
  font-size: 26px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin: 44px 33px 0 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head > div {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head strong {
  color: #101828 !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head > div span {
  width: 26px !important;
  height: 26px !important;
  display: grid !important;
  place-items: center !important;
  color: #ffffff !important;
  background: #1764ff !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-settings {
  height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-right: 15px !important;
  color: #475467 !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 18px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-settings .svg-icon {
  width: 18px !important;
  height: 18px !important;
  color: #667085 !important;
  stroke: #667085 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source {
  height: 56px !important;
  display: flex !important;
  align-items: center !important;
  gap: 13px !important;
  margin: 14px 33px 0 !important;
  padding: 0 18px !important;
  background: #fafafa !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source .svg-icon {
  width: 22px !important;
  height: 22px !important;
  color: #f07800 !important;
  stroke: #f07800 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source strong {
  color: #101828 !important;
  font-size: 19px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-results {
  position: relative !important;
  height: 684px !important;
  margin: 18px 32px 0 !important;
  background: #ffffff !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-results h3 {
  margin: 26px 0 0 18px !important;
  color: #101828 !important;
  font-size: 21px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-result-body {
  position: absolute !important;
  inset: 70px 18px 18px !important;
  overflow: auto !important;
}

body.pantools-app-mode .pantools-ad-cleanup-empty {
  position: absolute !important;
  top: 281px !important;
  left: 0 !important;
  right: 0 !important;
  color: #98a2b3 !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  text-align: center !important;
}

body.pantools-app-mode .pantools-ad-cleanup-empty.is-error {
  color: #d92d20 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-list {
  display: grid !important;
}

body.pantools-app-mode .pantools-ad-cleanup-row {
  min-height: 48px !important;
  display: grid !important;
  grid-template-columns: 24px 28px minmax(0, 1fr) minmax(160px, 260px) !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 7px 0 !important;
  border-bottom: 1px solid #edf2f8 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-row strong {
  overflow: hidden !important;
  color: #344054 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-ad-cleanup-row small {
  overflow: hidden !important;
  color: #98a2b3 !important;
  font-size: 13px !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-ad-cleanup-foot {
  position: absolute !important;
  right: 32px !important;
  bottom: 37px !important;
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-delete,
body.pantools-app-mode .pantools-ad-cleanup-scan {
  height: 58px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 0 30px !important;
  border-radius: 8px !important;
  font-size: 20px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-delete {
  width: 180px !important;
  color: #f59a9a !important;
  background: #ffffff !important;
  border: 1px solid #edf2f8 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-delete .svg-icon {
  color: #f59a9a !important;
  stroke: #f59a9a !important;
}

body.pantools-app-mode .pantools-ad-cleanup-delete:disabled {
  cursor: not-allowed !important;
  opacity: 1 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-scan {
  width: 177px !important;
  color: #ffffff !important;
  background: #1764ff !important;
  border: 1px solid #1764ff !important;
  box-shadow: 8px 8px 22px rgba(23, 100, 255, 0.16) !important;
}

body.pantools-app-mode .pantools-ad-cleanup-scan .svg-icon {
  width: 24px !important;
  height: 24px !important;
  color: #ffffff !important;
  stroke: #ffffff !important;
}

/* PanBox ad cleanup modal: match batch move geometry and keep actions off the result border. */
body.pantools-app-mode .pantools-action-modal .pantools-ad-cleanup-panel,
body.pantools-app-mode .pantools-ad-cleanup-panel {
  width: 900px !important;
  height: 918px !important;
  max-width: calc(100vw - 32px) !important;
  max-height: calc(100vh - 32px) !important;
  display: grid !important;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto !important;
  gap: 18px !important;
  padding: 40px 36px 37px !important;
  border-radius: 16px !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-ad-cleanup-panel .icon-close {
  top: 34px !important;
  right: 36px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-head {
  padding: 0 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-head h2 {
  font-size: 26px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head {
  margin: 40px 0 0 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head strong {
  font-size: 20px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head > div span {
  width: 25px !important;
  height: 25px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-settings {
  margin-right: 0 !important;
  font-size: 18px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source {
  height: 56px !important;
  margin: 0 !important;
  padding: 0 18px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source strong {
  font-size: 19px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-results {
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-results h3 {
  margin: 26px 0 0 18px !important;
  font-size: 21px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-result-body {
  inset: 60px 18px 18px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-empty {
  top: 50% !important;
  transform: translateY(-50%) !important;
  font-size: 18px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow {
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  width: 470px !important;
  max-width: calc(100% - 48px) !important;
  transform: translate(-50%, -50%) !important;
  display: grid !important;
  gap: 20px !important;
  color: #101828 !important;
  text-align: left !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow > strong {
  color: #101828 !important;
  font-size: 17px !important;
  line-height: 22px !important;
  font-weight: 600 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow ol {
  display: grid !important;
  gap: 17px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow li {
  display: grid !important;
  grid-template-columns: 32px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 13px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow li > span {
  width: 32px !important;
  height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  color: #1764ff !important;
  background: #eaf2ff !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow b {
  display: block !important;
  color: #475467 !important;
  font-size: 16px !important;
  line-height: 22px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow small {
  display: block !important;
  margin-top: 5px !important;
  color: #98a2b3 !important;
  font-size: 15px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-settings-modal {
  background: rgba(16, 24, 40, 0.38) !important;
}

body.pantools-app-mode .pantools-ad-settings-panel {
  position: relative !important;
  width: 720px !important;
  max-width: calc(100vw - 32px) !important;
  max-height: calc(100vh - 32px) !important;
  display: grid !important;
  gap: 24px !important;
  padding: 34px 36px 28px !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 24px 58px rgba(16, 24, 40, 0.22) !important;
  overflow: auto !important;
}

body.pantools-app-mode .pantools-ad-settings-panel .icon-close {
  position: absolute !important;
  top: 32px !important;
  right: 34px !important;
  width: 30px !important;
  height: 30px !important;
  border: 0 !important;
  background: transparent !important;
  color: #98a2b3 !important;
  font-size: 30px !important;
  line-height: 1 !important;
}

body.pantools-app-mode .pantools-ad-settings-panel header h2 {
  margin: 0 !important;
  color: #101828 !important;
  font-size: 20px !important;
  line-height: 26px !important;
  font-weight: 600 !important;
}

body.pantools-app-mode .pantools-ad-settings-group {
  display: grid !important;
  gap: 12px !important;
}

body.pantools-app-mode .pantools-ad-settings-group > strong {
  color: #101828 !important;
  font-size: 17px !important;
  line-height: 22px !important;
  font-weight: 600 !important;
}

body.pantools-app-mode .pantools-ad-settings-group input[type="text"],
body.pantools-app-mode .pantools-ad-settings-group > input {
  width: 100% !important;
  height: 40px !important;
  padding: 0 12px !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 7px !important;
  color: #101828 !important;
  background: #fff !important;
  font-size: 15px !important;
}

body.pantools-app-mode .pantools-ad-settings-tags {
  min-height: 78px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-content: flex-start !important;
  gap: 8px !important;
  padding: 12px !important;
  border: 1px dashed #dbe5f4 !important;
  border-radius: 8px !important;
  background: #fbfdff !important;
}

body.pantools-app-mode .pantools-ad-settings-tags button {
  height: 28px !important;
  padding: 0 10px !important;
  border: 0 !important;
  border-radius: 5px !important;
  color: #1764ff !important;
  background: #eaf2ff !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-settings-options {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

body.pantools-app-mode .pantools-ad-settings-options label {
  min-height: 104px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 42px !important;
  gap: 10px !important;
  align-items: start !important;
  padding: 18px 16px !important;
  border-radius: 8px !important;
  background: #fafafa !important;
}

body.pantools-app-mode .pantools-ad-settings-options b {
  display: block !important;
  color: #101828 !important;
  font-size: 16px !important;
  line-height: 22px !important;
  font-weight: 600 !important;
}

body.pantools-app-mode .pantools-ad-settings-options small {
  display: block !important;
  margin-top: 8px !important;
  color: #98a2b3 !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

body.pantools-app-mode .pantools-ad-settings-options input {
  width: 42px !important;
  height: 24px !important;
  accent-color: #1764ff !important;
}

body.pantools-app-mode .pantools-ad-settings-panel footer {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  margin-top: 4px !important;
}

body.pantools-app-mode .pantools-ad-settings-panel footer button {
  height: 42px !important;
  min-width: 92px !important;
  padding: 0 18px !important;
  border-radius: 7px !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-settings-panel footer .primary {
  color: #fff !important;
  background: #1764ff !important;
  border: 1px solid #1764ff !important;
}

body.pantools-app-mode .pantools-ad-settings-panel footer .secondary {
  min-width: 74px !important;
  color: #475467 !important;
  background: #ffffff !important;
  border: 1px solid #d6e0ee !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-ad-cleanup-foot {
  position: static !important;
  inset: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 180px 177px !important;
  align-items: center !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-delete,
body.pantools-app-mode .pantools-ad-cleanup-scan {
  height: 58px !important;
  min-width: 0 !important;
  padding: 0 30px !important;
  border-radius: 8px !important;
  font-size: 20px !important;
  gap: 10px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-delete {
  grid-column: 2 !important;
  width: 180px !important;
  color: #f59a9a !important;
  background: #ffffff !important;
  border: 1px solid #edf2f8 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-scan {
  grid-column: 3 !important;
  width: 177px !important;
  color: #ffffff !important;
  background: #1764ff !important;
  border: 1px solid #1764ff !important;
  box-shadow: 8px 8px 22px rgba(23, 100, 255, 0.16) !important;
}

body.pantools-app-mode .pantools-ad-cleanup-delete .svg-icon,
body.pantools-app-mode .pantools-ad-cleanup-scan .svg-icon {
  width: 24px !important;
  height: 24px !important;
}

body.pantools-app-mode .pantools-accept-page {
  min-height: calc(100vh - 176px);
  color: #061737;
  background: #f5f9ff;
}

body.pantools-app-mode .pantools-accept-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 150px;
  padding: 24px 36px 22px;
  background: #ffffff;
  border-bottom: 1px solid #edf2f8;
}

body.pantools-app-mode .pantools-accept-head span {
  display: block;
  margin-bottom: 8px;
  color: #6d7f9d;
  font-size: 16px;
  font-weight: 500;
}

body.pantools-app-mode .pantools-accept-head h2 {
  margin: 0 0 10px;
  color: #061737;
  font-size: 32px;
  line-height: 1.1;
  font-weight: 800;
}

body.pantools-app-mode .pantools-accept-head p {
  margin: 0;
  color: #5d6f8e;
  font-size: 16px;
  line-height: 1.7;
}

body.pantools-app-mode .pantools-accept-badge {
  display: inline-flex !important;
  align-items: center;
  height: 28px;
  margin-left: 10px !important;
  padding: 0 13px;
  border-radius: 8px;
  color: #1764ff !important;
  background: #eaf2ff;
  font-size: 15px !important;
  font-weight: 700 !important;
}

body.pantools-app-mode .pantools-accept-account {
  display: flex;
  align-items: center;
  gap: 14px;
  color: #526684;
  font-size: 14px;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-accept-account label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

body.pantools-app-mode .pantools-accept-account select {
  min-width: 88px;
  height: 36px;
  padding: 0 30px 0 14px;
  border: 1px solid #dfe7f2;
  border-radius: 8px;
  color: #071833;
  background: #ffffff;
  font-size: 14px;
  font-weight: 700;
}

body.pantools-app-mode .pantools-accept-account em {
  display: inline-flex;
  align-items: center;
  height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  color: #00ad59;
  background: #d9f8e8;
  font-style: normal;
  font-size: 14px;
  font-weight: 800;
}

body.pantools-app-mode .pantools-accept-account em.empty {
  color: #98a2b3;
  background: #f2f4f7;
}

body.pantools-app-mode .pantools-accept-grid {
  display: grid;
  grid-template-columns: 770px minmax(0, 1fr);
  gap: 24px;
  padding: 30px 36px;
  min-height: 1120px;
}

body.pantools-app-mode .pantools-accept-card {
  border: 1px solid #e4ebf5;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 42px rgba(56, 77, 111, 0.06);
}

body.pantools-app-mode .pantools-accept-card header {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 72px;
  padding: 20px 24px 10px;
}

body.pantools-app-mode .pantools-accept-card header > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 52px;
  width: 52px;
  height: 52px;
  border-radius: 12px;
  color: #1764ff;
  background: #edf4ff;
}

body.pantools-app-mode .pantools-accept-card strong {
  display: block;
  color: #061737;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 800;
}

body.pantools-app-mode .pantools-accept-card small {
  display: block;
  margin-top: 8px;
  color: #627493;
  font-size: 15px;
  line-height: 1.5;
}

body.pantools-app-mode .pantools-accept-card textarea,
body.pantools-app-mode .pantools-accept-card input,
body.pantools-app-mode .pantools-accept-card select {
  border: 1px solid #dfe7f2;
  border-radius: 8px;
  color: #061737;
  background: #ffffff;
  font-size: 15px;
  outline: none;
}

body.pantools-app-mode .pantools-accept-card textarea {
  width: 100%;
  min-height: 210px;
  padding: 18px;
  resize: vertical;
}

body.pantools-app-mode .pantools-accept-card input,
body.pantools-app-mode .pantools-accept-card select {
  height: 44px;
  padding: 0 14px;
}

body.pantools-app-mode .pantools-accept-card label {
  display: grid;
  gap: 10px;
  color: #061737;
  font-size: 15px;
  font-weight: 700;
}

body.pantools-app-mode .pantools-accept-card button.primary,
body.pantools-app-mode .pantools-accept-card button.secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 104px;
  height: 44px;
  padding: 0 18px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 700;
}

body.pantools-app-mode .pantools-accept-card button.primary {
  color: #ffffff;
  background: #1764ff;
  border: 1px solid #1764ff;
}

body.pantools-app-mode .pantools-accept-card button.secondary {
  color: #1764ff;
  background: #ffffff;
  border: 1px solid #d8e5f6;
}

body.pantools-app-mode .accept-file-row,
body.pantools-app-mode .accept-setting-row,
body.pantools-app-mode .accept-two,
body.pantools-app-mode .upload-pickers,
body.pantools-app-mode .upload-settings {
  display: grid;
  gap: 14px;
  padding: 0 24px 20px;
}

body.pantools-app-mode .accept-file-row {
  grid-template-columns: minmax(0, 1fr) 120px 120px;
}

body.pantools-app-mode .accept-setting-row,
body.pantools-app-mode .upload-settings {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.pantools-app-mode .accept-two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.pantools-app-mode .accept-action-row,
body.pantools-app-mode .upload-actions,
body.pantools-app-mode .accept-bottom-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 0 24px 24px;
}

body.pantools-app-mode .accept-action-row span,
body.pantools-app-mode .upload-actions span {
  color: #536987;
  font-size: 15px;
}

body.pantools-app-mode .accept-head-actions,
body.pantools-app-mode .pantools-share-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-left: auto;
}

body.pantools-app-mode .accept-head-actions > button,
body.pantools-app-mode .pantools-share-actions > button {
  flex: 0 0 auto;
  min-width: 88px !important;
  height: 38px !important;
  padding: 0 14px !important;
  font-size: 13px !important;
}

body.pantools-app-mode .accept-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  padding: 0 24px 20px;
}

body.pantools-app-mode .accept-metrics.four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.pantools-app-mode .accept-metrics div {
  min-height: 88px;
  padding: 18px;
  border-radius: 8px;
  background: #f5f9ff;
  border: 1px solid #e4ebf5;
}

body.pantools-app-mode .accept-metrics b {
  display: block;
  color: #1764ff;
  font-size: 28px;
  line-height: 1;
}

body.pantools-app-mode .accept-metrics span {
  display: block;
  margin-top: 12px;
  color: #627493;
  font-size: 14px;
}

body.pantools-app-mode .accept-table {
  width: calc(100% - 48px);
  margin: 0 24px 24px;
  border-collapse: collapse;
  font-size: 15px;
}

body.pantools-app-mode .accept-table table {
  width: 100%;
  border-collapse: collapse;
}

body.pantools-app-mode .accept-table th,
body.pantools-app-mode .accept-table td {
  height: 48px;
  padding: 0 12px;
  border-bottom: 1px solid #edf2f8;
  color: #061737;
  text-align: left;
}

body.pantools-app-mode .accept-table th {
  color: #516783;
  font-weight: 700;
}

body.pantools-app-mode .accept-empty,
body.pantools-app-mode .daily-empty,
body.pantools-app-mode .upload-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 180px;
  margin: 0 24px 24px;
  border: 1px dashed #cfe0f5;
  border-radius: 8px;
  color: #6b7d99;
  background: #f7fbff;
  text-align: center;
}

body.pantools-app-mode .accept-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

body.pantools-app-mode .link-check .link-input {
  min-height: 1060px;
}

body.pantools-app-mode .link-result {
  min-height: 1060px;
}

body.pantools-app-mode .link-check .link-input textarea {
  min-height: 650px;
}

body.pantools-app-mode .link-result .big-empty {
  min-height: 690px;
}

body.pantools-app-mode .link-result .accept-empty {
  min-height: 690px;
}

body.pantools-app-mode .article-link-replace-page {
  display: grid;
  gap: 30px;
  padding: 24px 36px 30px;
  background: #f5f9ff;
  min-height: 1120px;
}

body.pantools-app-mode .article-replace-intro {
  display: grid;
  gap: 6px;
}

body.pantools-app-mode .article-replace-intro h3,
body.pantools-app-mode .article-settings-card h3,
body.pantools-app-mode .article-result-card h3 {
  margin: 0;
  color: #061737;
  font-size: 24px;
  line-height: 1.2;
  font-weight: 800;
}

body.pantools-app-mode .article-replace-intro p,
body.pantools-app-mode .article-settings-card p,
body.pantools-app-mode .article-result-card p {
  margin: 0;
  color: #617391;
  font-size: 15px;
  line-height: 1.55;
}

body.pantools-app-mode .article-replace-intro span {
  margin-top: 6px;
  color: #061737;
  font-size: 15px;
  font-weight: 800;
}

body.pantools-app-mode .article-replace-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 560px;
  gap: 24px;
}

body.pantools-app-mode .article-source-card {
  position: relative;
  min-height: 420px;
  padding: 0;
  overflow: hidden;
}

body.pantools-app-mode .article-source-card textarea {
  width: calc(100% - 48px);
  min-height: 344px;
  margin: 24px 24px 0;
  color: transparent;
  cursor: pointer;
}

body.pantools-app-mode .article-source-empty {
  position: absolute;
  left: 24px;
  right: 24px;
  top: 24px;
  min-height: 344px;
  padding-top: 18px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 8px;
  color: #617391;
  background: transparent;
  text-align: center;
  pointer-events: auto;
  cursor: pointer;
}

body.pantools-app-mode .article-source-empty span {
  width: 64px;
  height: 64px;
  margin-bottom: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  color: #1764ff;
  background: #eaf2ff;
}

body.pantools-app-mode .article-source-empty strong {
  color: #617391;
  font-size: 15px;
  font-weight: 700;
}

body.pantools-app-mode .article-source-empty p {
  margin: 20px 0 0;
  color: #607492;
  font-size: 15px;
  line-height: 1.5;
}

body.pantools-app-mode .article-source-card footer {
  height: 56px;
  margin: 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #edf2f8;
  color: #7b8ca7;
  font-size: 14px;
}

body.pantools-app-mode .article-source-card footer em {
  color: #7b8ca7;
  font-style: normal;
}

body.pantools-app-mode .article-settings-card {
  padding: 30px 28px;
  display: grid;
  align-content: start;
  gap: 24px;
  background: #f7fbff;
}

body.pantools-app-mode .article-settings-card label {
  gap: 12px;
}

body.pantools-app-mode .article-settings-card input,
body.pantools-app-mode .article-settings-card select {
  width: 100%;
}

body.pantools-app-mode .article-path-field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 62px;
  gap: 8px;
}

body.pantools-app-mode .article-path-field button {
  height: 44px;
  border: 1px solid #dfe7f2;
  border-radius: 8px;
  color: #061737;
  background: #ffffff;
  font-size: 14px;
}

body.pantools-app-mode .article-two-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

body.pantools-app-mode .article-replace-actions {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
}

body.pantools-app-mode .article-replace-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 50px;
  border-radius: 8px;
  color: #ffffff;
  background: #1764ff;
  border: 1px solid #1764ff;
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
}

body.pantools-app-mode .article-replace-actions button svg {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  display: block;
}

body.pantools-app-mode .article-result-card {
  min-height: 480px;
  padding: 28px 24px 20px;
}

body.pantools-app-mode .article-result-card > p {
  margin-top: 8px;
}

body.pantools-app-mode .article-result-table {
  width: 100%;
  margin: 22px 0 0;
  border: 1px solid #e4ebf5;
  border-radius: 8px;
  overflow: hidden;
}

body.pantools-app-mode .article-pending {
  display: inline-flex;
  align-items: center;
  height: 28px;
  padding: 0 12px;
  border: 1px solid #ffd58a;
  border-radius: 8px;
  color: #f07800;
  background: #fff6d8;
  font-size: 13px;
  font-weight: 700;
}

body.pantools-app-mode .stats {
  grid-template-columns: 660px minmax(0, 1fr);
}

body.pantools-app-mode .stats-right {
  display: grid;
  gap: 24px;
  grid-template-rows: 700px 420px;
}

body.pantools-app-mode .stats-query {
  min-height: 1144px;
}

body.pantools-app-mode .stats-result {
  min-height: 700px;
}

body.pantools-app-mode .stats-daily {
  min-height: 420px;
}

body.pantools-app-mode .skeleton {
  height: 14px;
  margin: 0 24px 16px;
  border-radius: 999px;
  background: linear-gradient(90deg, #eef4fb, #f8fbff, #eef4fb);
}

body.pantools-app-mode .accept-table.skeleton {
  width: auto;
  height: auto;
  margin: 0 24px 24px;
  border: 1px solid #e4ebf5;
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
}

body.pantools-app-mode .accept-table.skeleton table {
  width: 100%;
  border-collapse: collapse;
}

body.pantools-app-mode .accept-table.skeleton th {
  height: 48px;
  padding: 0 18px;
  color: #6a7c96;
  background: #f5f9ff;
  border-bottom: 1px solid #edf2f8;
}

body.pantools-app-mode .accept-table.skeleton td {
  height: 50px;
  padding: 0 18px;
  border-bottom: 1px solid #edf2f8;
}

body.pantools-app-mode .accept-table.skeleton i {
  display: block;
  height: 14px;
  border-radius: 999px;
  background: #eef4fb;
}

body.pantools-app-mode .accept-table.skeleton td:first-child i {
  width: 82%;
}

body.pantools-app-mode .accept-table.skeleton small {
  display: block;
  height: 54px;
  padding-top: 20px;
  color: #8a9ab3;
  text-align: center;
}

body.pantools-app-mode .stats-query button.wide {
  width: calc(100% - 48px);
  margin: 0 24px 18px;
}

body.pantools-app-mode .stats-query > label {
  padding: 10px 24px 8px;
}

body.pantools-app-mode .stats-query > textarea {
  width: calc(100% - 48px);
  min-height: 565px;
  margin: 0 24px 0;
}

body.pantools-app-mode .stats-query .accept-info {
  min-height: 56px;
  margin: 0 24px 34px;
  padding: 0 18px;
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px solid #e4ebf5;
  border-radius: 8px;
  color: #617391;
  background: #f7fbff;
}

body.pantools-app-mode .cleanup-page,
body.pantools-app-mode .upload-page {
  margin: 8px 36px 30px;
  min-height: 1140px;
}

body.pantools-app-mode .cleanup-grid {
  display: grid;
  grid-template-columns: 180px 250px 180px 180px minmax(260px, 1fr);
  gap: 14px;
  padding: 0 24px 20px;
}

body.pantools-app-mode .cleanup-grid .accept-info {
  min-height: 52px;
  padding: 0 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid #e4ebf5;
  border-radius: 8px;
  color: #617391;
  background: #f7fbff;
}

body.pantools-app-mode .cleanup-confirm {
  display: flex !important;
  align-items: center;
  gap: 10px !important;
  padding: 0 24px 22px;
  color: #526684 !important;
  font-weight: 500 !important;
}

body.pantools-app-mode .cleanup-confirm input {
  width: 18px;
  height: 18px;
}

body.pantools-app-mode .usage {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  align-items: center;
  gap: 22px;
  margin: 0 24px 24px;
  padding: 18px;
  border-radius: 8px;
  background: #f6f9fe;
  border: 1px solid #e4ebf5;
  color: #526684;
  font-size: 15px;
}

body.pantools-app-mode .usage b {
  color: #061737;
  font-size: 16px;
}

body.pantools-app-mode .usage div {
  height: 10px;
  border-radius: 999px;
  background: #dce8f7;
  overflow: hidden;
}

body.pantools-app-mode .usage i {
  display: block;
  width: 63%;
  height: 100%;
  border-radius: inherit;
  background: #1764ff;
}

body.pantools-app-mode .cleanup-table {
  margin-top: 6px;
  min-height: 760px;
  border: 1px solid #e4ebf5;
  border-radius: 8px;
  overflow: hidden;
}

body.pantools-app-mode .cleanup-table th {
  background: #f5f9ff;
}

body.pantools-app-mode .cleanup-table td {
  height: 58px;
}

body.pantools-app-mode .cleanup-table i {
  display: block;
  height: 14px;
  border-radius: 999px;
  background: #eef4fb;
}

body.pantools-app-mode .cleanup-table .table-foot {
  height: 380px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding-bottom: 16px;
  color: #8a9ab3;
}

body.pantools-app-mode .accept-bottom-actions > button {
  flex: 1 1 0;
}

body.pantools-app-mode .accept-bottom-actions.compact-actions {
  justify-content: flex-start;
}

body.pantools-app-mode .accept-bottom-actions.compact-actions > button {
  flex: 0 0 auto;
  min-width: 92px;
  padding: 0 18px;
}

body.pantools-app-mode .upload-target-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 58px;
  margin: 0 24px 22px;
  padding: 0 22px;
  border: 1px solid #e4ebf5;
  border-radius: 8px;
  color: #627493;
  background: #f5f9ff;
  font-size: 15px;
  font-weight: 700;
}

body.pantools-app-mode .upload-target-row b {
  color: #061737;
  font-size: 18px;
}

body.pantools-app-mode .upload-source-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 24px 16px;
  color: #061737;
  font-size: 16px;
  font-weight: 800;
}

body.pantools-app-mode .upload-source-box {
  position: relative;
  margin: 0 24px 26px;
  border: 1px solid #dfe7f2;
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
}

body.pantools-app-mode .upload-source-box textarea {
  width: 100%;
  min-height: 700px;
  border: 0;
  resize: none;
}

body.pantools-app-mode .upload-source-box .upload-empty {
  position: absolute;
  inset: 72px 0 0;
  margin: 0;
  min-height: 0;
  border: 0;
  background: transparent;
  pointer-events: none;
}

body.pantools-app-mode .upload-pickers {
  grid-template-columns: 210px 190px minmax(0, 460px);
  padding-bottom: 10px;
}

body.pantools-app-mode .upload-settings {
  grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(0, 420px);
  border-top: 1px solid #edf2f8;
  margin: 2px 24px 0;
  padding: 14px 0 12px;
}

body.pantools-app-mode .upload-actions {
  margin: 0 24px 22px;
  padding: 0;
}

/* Five-tool acceptance pass: only lock content inside the right feature pane. */
body.pantools-app-mode .pantools-accept-page {
  height: 1308px !important;
  min-height: 1308px !important;
  max-height: 1308px !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-accept-head {
  height: 150px !important;
  min-height: 150px !important;
  max-height: 150px !important;
  padding: 24px 36px 22px !important;
}

body.pantools-app-mode .article-link-replace-page {
  min-height: 1158px !important;
  height: 1158px !important;
  padding: 0 56px 30px !important;
  gap: 0 !important;
}

body.pantools-app-mode .article-replace-grid {
  grid-template-columns: 1106px 556px !important;
  gap: 24px !important;
}

body.pantools-app-mode .article-source-card {
  min-height: 420px !important;
  height: 420px !important;
}

body.pantools-app-mode .article-settings-card {
  min-height: 424px !important;
  height: 424px !important;
  padding: 30px 28px !important;
}

body.pantools-app-mode .article-replace-actions {
  grid-template-columns: 176px minmax(0, 1fr) !important;
  gap: 18px !important;
}

body.pantools-app-mode .article-result-card {
  min-height: 360px !important;
  height: 360px !important;
  padding: 28px 24px 20px !important;
}

body.pantools-app-mode .cleanup-page,
body.pantools-app-mode .upload-page {
  margin: 16px 36px 30px !important;
  min-height: 1128px !important;
  height: 1128px !important;
}

body.pantools-app-mode .cleanup-page > header,
body.pantools-app-mode .upload-page > header {
  min-height: 112px !important;
  height: 112px !important;
  padding: 28px 24px 18px !important;
}

body.pantools-app-mode .upload-page > header {
  min-height: 120px !important;
  height: 120px !important;
}

body.pantools-app-mode .cleanup-confirm {
  padding-bottom: 97px !important;
}

body.pantools-app-mode .cleanup-page .usage {
  height: 62px !important;
  margin-bottom: 48px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.pantools-app-mode .upload-target-row {
  height: 60px !important;
}

body.pantools-app-mode .upload-source-box textarea {
  min-height: 462px !important;
  height: 462px !important;
}

body.pantools-app-mode .upload-source-box .upload-empty {
  inset: 70px 0 0 !important;
}

body.pantools-app-mode .cleanup-table {
  min-height: 470px !important;
}

body.pantools-app-mode .cleanup-table .table-foot {
  height: 160px !important;
}

body.pantools-app-mode .pantools-share-data-center {
  display: grid;
  grid-template-rows: 342px minmax(0, 1fr);
  gap: 14px;
  min-height: calc(100vh - 326px);
  padding: 0 28px 28px;
  background: #f4f7fb;
}

body.pantools-app-mode .pantools-share-snapshot-card,
body.pantools-app-mode .pantools-share-result-card {
  min-width: 0;
  border: 1px solid #e6edf7;
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
}

body.pantools-app-mode .pantools-share-snapshot-card {
  padding: 18px;
}

body.pantools-app-mode .pantools-share-snapshot-head,
body.pantools-app-mode .pantools-share-result-card > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

body.pantools-app-mode .pantools-share-snapshot-head strong,
body.pantools-app-mode .pantools-share-result-card > header strong {
  color: #101828;
  font-size: 20px;
  line-height: 28px;
  font-weight: 800;
}

body.pantools-app-mode .pantools-share-snapshot-head span,
body.pantools-app-mode .pantools-share-result-card > header span,
body.pantools-app-mode .pantools-share-snapshot-list,
body.pantools-app-mode .pantools-share-result-card > footer {
  color: #667085;
  font-size: 14px;
}

body.pantools-app-mode .pantools-share-pull-row {
  display: grid;
  grid-template-columns: 112px max-content minmax(120px, 1fr);
  align-items: center;
  gap: 12px;
  margin-top: 18px;
}

body.pantools-app-mode .pantools-share-pull-row button.primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 38px;
  line-height: 1;
}

body.pantools-app-mode .pantools-share-pull-row button.primary svg {
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  display: block;
}

body.pantools-app-mode .pantools-share-status-item {
  color: #667085;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-share-compare-row {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) 76px 190px;
  align-items: end;
  gap: 10px;
  margin-top: 14px;
}

body.pantools-app-mode .pantools-share-compare-row label {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  color: #344054;
  font-size: 14px;
}

body.pantools-app-mode .pantools-share-compare-row select,
body.pantools-app-mode .pantools-share-compare-row button,
body.pantools-app-mode .pantools-share-pull-row button {
  height: 38px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
}

body.pantools-app-mode .pantools-share-metrics {
  display: grid;
  grid-template-columns: minmax(118px, 1.2fr) repeat(5, minmax(86px, 1fr)) minmax(104px, 1fr) minmax(98px, .95fr);
  gap: 10px;
  margin-top: 16px;
}

body.pantools-app-mode .pantools-share-metric {
  min-width: 0;
  height: 52px;
  padding: 0 8px;
  border: 1px solid #e6edf7;
  border-radius: 8px;
  background: #fbfcff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-share-metric span {
  color: #344054;
  font-size: 14px;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.pantools-app-mode .pantools-share-metric strong {
  color: #1d2939;
  font-size: 21px;
  font-weight: 800;
}

body.pantools-app-mode .pantools-share-metric strong.up,
body.pantools-app-mode .pantools-share-table .up {
  color: #ef4444;
}

body.pantools-app-mode .pantools-share-metric strong.down,
body.pantools-app-mode .pantools-share-table .down {
  color: #059669;
}

body.pantools-app-mode .pantools-share-metric strong.blue {
  color: #1764ff;
}

body.pantools-app-mode .pantools-share-metric strong.warn {
  color: #f59e0b;
}

body.pantools-app-mode .pantools-share-metric:last-child {
  gap: 4px;
  padding: 0 6px;
}

body.pantools-app-mode .pantools-share-metric:last-child span {
  font-size: 12px;
}

body.pantools-app-mode .pantools-share-metric:last-child strong {
  font-size: 18px;
}

body.pantools-app-mode .pantools-share-snapshot-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #e6edf7;
}

body.pantools-app-mode .pantools-share-snapshot-list p {
  margin: 0;
  color: #475467;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-share-result-card {
  display: grid;
  grid-template-rows: 58px minmax(0, 1fr) 42px;
}

body.pantools-app-mode .pantools-share-result-card > header {
  padding: 0 18px;
  border-bottom: 1px solid #e6edf7;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-drawer-path.is-root {
  grid-template-columns: minmax(0, 1fr) auto;
}

body.pantools-app-mode .pantools-share-result-card > header > div {
  display: flex;
  align-items: center;
  gap: 8px;
}

body.pantools-app-mode .pantools-share-result-card > header button {
  height: 30px;
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: 7px;
  color: #667085;
  background: transparent;
  font-weight: 700;
}

body.pantools-app-mode .pantools-share-result-card > header button.active {
  color: #1764ff;
  background: #eaf2ff;
  border-color: #c9dcff;
}

body.pantools-app-mode .pantools-share-table {
  min-height: 0;
  overflow: auto;
}

body.pantools-app-mode .pantools-share-table table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

body.pantools-app-mode .pantools-share-table th,
body.pantools-app-mode .pantools-share-table td {
  height: 45px;
  padding: 0 14px;
  border-bottom: 1px solid #edf2f8;
  color: #101828;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-share-table th {
  height: 42px;
  background: #fbfcff;
  font-weight: 800;
}

body.pantools-app-mode .pantools-share-table th:first-child {
  width: 34%;
}

body.pantools-app-mode .pantools-share-change {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 46px;
  height: 24px;
  padding: 0 10px;
  border-radius: 12px;
  color: #475467;
  background: #f2f4f7;
  font-weight: 700;
}

body.pantools-app-mode .pantools-share-change.up {
  color: #ef4444;
  background: #fff1f2;
}

body.pantools-app-mode .pantools-share-change.down {
  color: #059669;
  background: #ecfdf5;
}

body.pantools-app-mode .pantools-share-table tr.empty td {
  height: 190px;
  text-align: center;
}

body.pantools-app-mode .pantools-share-table tr.empty div {
  color: #667085;
}

body.pantools-app-mode .pantools-share-table .linklike {
  border: 0;
  background: transparent;
  color: #1764ff;
  font-weight: 700;
}

body.pantools-app-mode .pantools-share-result-card > footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 0 18px;
  border-top: 1px solid #e6edf7;
  background: #fbfcff;
}

body.pantools-app-mode .pantools-share-result-card > footer span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Six accepted tool pages: consume the real right pane, never the window. */
body.pantools-app-mode .pantools-accept-page {
  display: grid !important;
  grid-template-rows: 150px minmax(0, 1fr) !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-main {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.embedded {
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
  background: #f5f6f8 !important;
}

body.pantools-app-mode .pantools-accept-head {
  height: 150px !important;
  min-height: 150px !important;
  max-height: 150px !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-accept-grid,
body.pantools-app-mode .article-link-replace-page,
body.pantools-app-mode .pantools-share-data-center,
body.pantools-app-mode .cleanup-page,
body.pantools-app-mode .upload-page {
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-accept-grid {
  padding: 28px 36px 30px !important;
  gap: 24px !important;
  align-items: stretch !important;
}

body.pantools-app-mode .pantools-accept-card,
body.pantools-app-mode .link-input,
body.pantools-app-mode .link-result,
body.pantools-app-mode .article-source-card,
body.pantools-app-mode .article-settings-card,
body.pantools-app-mode .article-result-card,
body.pantools-app-mode .stats-query,
body.pantools-app-mode .stats-result,
body.pantools-app-mode .stats-daily,
body.pantools-app-mode .cleanup-table,
body.pantools-app-mode .upload-source-box {
  min-height: 0 !important;
  max-height: none !important;
}

body.pantools-app-mode .pantools-accept-grid.link-check {
  grid-template-columns: minmax(420px, 0.4fr) minmax(0, 0.6fr) !important;
}

body.pantools-app-mode .link-check .link-input {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) auto auto auto !important;
  height: 100% !important;
  padding-bottom: 34px !important;
  gap: 12px !important;
}

body.pantools-app-mode .link-check .link-input textarea {
  height: 100% !important;
  min-height: 0 !important;
  resize: none !important;
}

body.pantools-app-mode .link-result {
  display: grid !important;
  grid-template-rows: auto auto minmax(0, 1fr) !important;
  height: 100% !important;
  padding-bottom: 34px !important;
  gap: 12px !important;
}

body.pantools-app-mode .link-result .big-empty,
body.pantools-app-mode .link-result .accept-empty {
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .article-link-replace-page {
  display: grid !important;
  grid-template-rows: auto minmax(390px, 0.9fr) auto minmax(300px, 0.8fr) !important;
  padding: 28px 36px 30px !important;
  gap: 18px !important;
}

body.pantools-app-mode .article-replace-grid {
  grid-template-columns: minmax(0, 1fr) 520px !important;
  gap: 24px !important;
  min-height: 0 !important;
}

body.pantools-app-mode .article-source-card {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) 56px !important;
  height: 100% !important;
  min-height: 0 !important;
}

body.pantools-app-mode .article-source-card textarea {
  height: 100% !important;
  min-height: 0 !important;
  margin: 24px 24px 0 !important;
  resize: none !important;
}

body.pantools-app-mode .article-source-empty {
  top: 24px !important;
  bottom: 56px !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 22px !important;
  overflow: hidden !important;
}

body.pantools-app-mode .article-source-empty span {
  width: 60px !important;
  height: 60px !important;
  margin-bottom: 12px !important;
  flex: 0 0 60px !important;
}

body.pantools-app-mode .article-source-empty p {
  margin-top: 14px !important;
  line-height: 1.45 !important;
}

body.pantools-app-mode .article-source-card footer {
  grid-row: 2 !important;
  height: 56px !important;
  margin: 0 24px !important;
  position: relative !important;
  z-index: 2 !important;
  background: #ffffff !important;
}

body.pantools-app-mode .article-settings-card {
  height: 100% !important;
  min-height: 0 !important;
  padding: 28px 28px 24px !important;
  gap: 18px !important;
  overflow: hidden !important;
}

body.pantools-app-mode .article-settings-card h3 {
  font-size: 22px !important;
}

body.pantools-app-mode .article-settings-card p {
  font-size: 14px !important;
}

body.pantools-app-mode .article-settings-card label {
  gap: 8px !important;
}

body.pantools-app-mode .article-settings-card input,
body.pantools-app-mode .article-settings-card select,
body.pantools-app-mode .article-path-field button {
  height: 40px !important;
}

body.pantools-app-mode .article-result-card {
  display: grid !important;
  grid-template-rows: auto auto minmax(0, 1fr) !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 28px 28px 24px !important;
}

body.pantools-app-mode .article-result-table {
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  width: 100% !important;
}

body.pantools-app-mode .stats {
  grid-template-columns: minmax(560px, 0.54fr) minmax(0, 0.46fr) !important;
  align-items: stretch !important;
  min-height: 0 !important;
}

body.pantools-app-mode .stats-query {
  display: grid !important;
  grid-template-rows: auto auto auto auto auto minmax(0, 1fr) auto auto !important;
  height: 100% !important;
  min-height: 0 !important;
}

body.pantools-app-mode .stats-query > textarea {
  height: 100% !important;
  min-height: 0 !important;
  resize: none !important;
}

body.pantools-app-mode .stats-right {
  grid-template-rows: minmax(0, 1fr) minmax(160px, 0.55fr) !important;
  height: 100% !important;
  min-height: 0 !important;
}

body.pantools-app-mode .stats-result,
body.pantools-app-mode .stats-daily {
  height: 100% !important;
  min-height: 0 !important;
}

body.pantools-app-mode .stats-result {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) auto auto !important;
}

body.pantools-app-mode .stats-result .accept-table {
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .stats-daily {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
}

body.pantools-app-mode .daily-empty {
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 24px 24px !important;
}

body.pantools-app-mode .pantools-share-data-center {
  grid-template-rows: 300px minmax(0, 1fr) !important;
  padding: 28px 28px 30px !important;
}

body.pantools-app-mode .pantools-share-result-card,
body.pantools-app-mode .pantools-share-table-wrap {
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .cleanup-page {
  display: grid !important;
  grid-template-rows: auto auto auto auto minmax(0, 1fr) !important;
  align-self: stretch !important;
  height: auto !important;
  margin: 28px 36px 30px !important;
  gap: 20px !important;
}

body.pantools-app-mode .cleanup-page > header,
body.pantools-app-mode .upload-page > header {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 0 !important;
}

body.pantools-app-mode .cleanup-confirm {
  padding-bottom: 0 !important;
}

body.pantools-app-mode .cleanup-page .usage {
  height: auto !important;
  margin-bottom: 0 !important;
}

body.pantools-app-mode .cleanup-table {
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .cleanup-table .table-foot {
  height: auto !important;
  min-height: 0 !important;
}

body.pantools-app-mode .upload-page {
  display: grid !important;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto auto auto !important;
  align-self: stretch !important;
  height: auto !important;
  margin: 28px 36px 30px !important;
  gap: 12px !important;
}

body.pantools-app-mode .upload-source-box {
  display: grid !important;
  height: 100% !important;
  min-height: 0 !important;
}

body.pantools-app-mode .upload-source-box textarea {
  height: 100% !important;
  min-height: 0 !important;
  resize: none !important;
}

/* Six accepted tool pages: quieter typography for a refined utility feel. */
body.pantools-app-mode .pantools-accept-head span,
body.pantools-app-mode .article-replace-intro p,
body.pantools-app-mode .pantools-accept-card small,
body.pantools-app-mode .pantools-share-snapshot-head span,
body.pantools-app-mode .cleanup-page > header p,
body.pantools-app-mode .upload-page > header p,
body.pantools-app-mode .cleanup-confirm,
body.pantools-app-mode .cleanup-page .usage,
body.pantools-app-mode .table-foot,
body.pantools-app-mode .article-source-card footer,
body.pantools-app-mode .accept-action-row span,
body.pantools-app-mode .upload-actions span {
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-accept-head h2,
body.pantools-app-mode .cleanup-page > header h2,
body.pantools-app-mode .upload-page > header h2 {
  font-size: 30px !important;
  font-weight: 650 !important;
  line-height: 1.16 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .article-replace-intro h3,
body.pantools-app-mode .article-settings-card h3,
body.pantools-app-mode .article-result-card h3,
body.pantools-app-mode .pantools-share-snapshot-head strong,
body.pantools-app-mode .pantools-share-result-head strong,
body.pantools-app-mode .cleanup-page .usage strong {
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .article-replace-intro h3,
body.pantools-app-mode .article-settings-card h3,
body.pantools-app-mode .article-result-card h3 {
  font-size: 22px !important;
}

body.pantools-app-mode .pantools-accept-card strong,
body.pantools-app-mode .accept-empty strong,
body.pantools-app-mode .upload-empty strong,
body.pantools-app-mode .daily-empty strong {
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-accept-card header strong {
  font-size: 20px !important;
}

body.pantools-app-mode .pantools-accept-card label,
body.pantools-app-mode .article-replace-intro span,
body.pantools-app-mode .pantools-share-compare-row label,
body.pantools-app-mode .cleanup-page label,
body.pantools-app-mode .upload-page label {
  font-weight: 500 !important;
  color: #1d2939 !important;
}

body.pantools-app-mode .pantools-accept-card button.primary,
body.pantools-app-mode .pantools-accept-card button.secondary,
body.pantools-app-mode .article-replace-actions button,
body.pantools-app-mode .pantools-share-data-center button,
body.pantools-app-mode .cleanup-page button,
body.pantools-app-mode .upload-page button {
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-accept-account select,
body.pantools-app-mode .pantools-accept-account em {
  font-weight: 500 !important;
}

body.pantools-app-mode .accept-table th,
body.pantools-app-mode .pantools-share-table th,
body.pantools-app-mode .cleanup-table th,
body.pantools-app-mode .upload-page th {
  font-weight: 500 !important;
  color: #475467 !important;
}

body.pantools-app-mode .accept-table td,
body.pantools-app-mode .pantools-share-table td,
body.pantools-app-mode .cleanup-table td,
body.pantools-app-mode .upload-page td {
  font-weight: 400 !important;
}

/* Six accepted tool pages: compact desktop-tool font scale. */
body.pantools-app-mode .pantools-accept-head h2,
body.pantools-app-mode .cleanup-page > header h2,
body.pantools-app-mode .upload-page > header h2 {
  font-size: 28px !important;
  line-height: 1.18 !important;
}

body.pantools-app-mode .pantools-accept-head span {
  font-size: 13px !important;
  margin-bottom: 6px !important;
}

body.pantools-app-mode .pantools-accept-head p,
body.pantools-app-mode .cleanup-page > header p,
body.pantools-app-mode .upload-page > header p {
  font-size: 14px !important;
  line-height: 1.55 !important;
}

body.pantools-app-mode .pantools-accept-account,
body.pantools-app-mode .pantools-accept-account select,
body.pantools-app-mode .pantools-accept-account em {
  font-size: 13px !important;
}

body.pantools-app-mode .article-replace-intro h3,
body.pantools-app-mode .article-settings-card h3,
body.pantools-app-mode .article-result-card h3,
body.pantools-app-mode .pantools-share-snapshot-head strong,
body.pantools-app-mode .pantools-share-result-head strong,
body.pantools-app-mode .cleanup-page .usage strong {
  font-size: 19px !important;
  line-height: 1.25 !important;
}

body.pantools-app-mode .pantools-accept-card header {
  min-height: 64px !important;
}

body.pantools-app-mode .pantools-accept-card header > span {
  flex-basis: 44px !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 10px !important;
}

body.pantools-app-mode .pantools-accept-card header strong,
body.pantools-app-mode .accept-empty strong,
body.pantools-app-mode .upload-empty strong,
body.pantools-app-mode .daily-empty strong {
  font-size: 17px !important;
  line-height: 1.28 !important;
}

body.pantools-app-mode .pantools-accept-card small,
body.pantools-app-mode .article-replace-intro p,
body.pantools-app-mode .article-settings-card p,
body.pantools-app-mode .article-result-card p,
body.pantools-app-mode .pantools-share-snapshot-head span,
body.pantools-app-mode .pantools-share-status-item,
body.pantools-app-mode .table-foot,
body.pantools-app-mode .article-source-card footer,
body.pantools-app-mode .accept-action-row span,
body.pantools-app-mode .upload-actions span {
  font-size: 13px !important;
  line-height: 1.45 !important;
}

body.pantools-app-mode .pantools-accept-card label,
body.pantools-app-mode .article-replace-intro span,
body.pantools-app-mode .pantools-share-compare-row label,
body.pantools-app-mode .cleanup-page label,
body.pantools-app-mode .upload-page label {
  font-size: 13px !important;
  line-height: 1.35 !important;
}

body.pantools-app-mode .pantools-accept-card textarea,
body.pantools-app-mode .pantools-accept-card input,
body.pantools-app-mode .pantools-accept-card select,
body.pantools-app-mode .cleanup-page input,
body.pantools-app-mode .cleanup-page select,
body.pantools-app-mode .upload-page input,
body.pantools-app-mode .upload-page select,
body.pantools-app-mode .upload-page textarea {
  font-size: 13px !important;
}

body.pantools-app-mode .pantools-accept-card input,
body.pantools-app-mode .pantools-accept-card select,
body.pantools-app-mode .cleanup-page input,
body.pantools-app-mode .cleanup-page select,
body.pantools-app-mode .upload-page input,
body.pantools-app-mode .upload-page select {
  height: 38px !important;
}

body.pantools-app-mode .pantools-accept-card button.primary,
body.pantools-app-mode .pantools-accept-card button.secondary,
body.pantools-app-mode .article-replace-actions button,
body.pantools-app-mode .pantools-share-data-center button,
body.pantools-app-mode .cleanup-page button,
body.pantools-app-mode .upload-page button {
  height: 38px !important;
  min-width: 86px !important;
  padding: 0 14px !important;
  font-size: 13px !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .accept-table,
body.pantools-app-mode .pantools-share-table,
body.pantools-app-mode .cleanup-table,
body.pantools-app-mode .upload-page table {
  font-size: 13px !important;
}

body.pantools-app-mode .accept-table th,
body.pantools-app-mode .accept-table td,
body.pantools-app-mode .pantools-share-table th,
body.pantools-app-mode .pantools-share-table td,
body.pantools-app-mode .cleanup-table th,
body.pantools-app-mode .cleanup-table td,
body.pantools-app-mode .upload-page th,
body.pantools-app-mode .upload-page td {
  height: 42px !important;
  font-size: 13px !important;
}

body.pantools-app-mode .accept-metrics div,
body.pantools-app-mode .pantools-share-metric {
  min-height: 72px !important;
  padding: 14px 16px !important;
}

body.pantools-app-mode .accept-metrics small,
body.pantools-app-mode .pantools-share-metric span {
  font-size: 12px !important;
}

body.pantools-app-mode .accept-metrics strong,
body.pantools-app-mode .accept-metrics b,
body.pantools-app-mode .pantools-share-metric strong {
  font-size: 22px !important;
  line-height: 1.1 !important;
}

/* Six accepted tool pages: match the calmer netdisk-file typography scale. */
body.pantools-app-mode .pantools-accept-head h2,
body.pantools-app-mode .cleanup-page > header h2,
body.pantools-app-mode .upload-page > header h2 {
  font-size: 24px !important;
  font-weight: 600 !important;
  line-height: 1.22 !important;
}

body.pantools-app-mode .pantools-accept-head span {
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #7b8aa3 !important;
}

body.pantools-app-mode .pantools-accept-head p,
body.pantools-app-mode .cleanup-page > header p,
body.pantools-app-mode .upload-page > header p,
body.pantools-app-mode .article-replace-intro p {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  color: #53657f !important;
}

body.pantools-app-mode .article-replace-intro h3,
body.pantools-app-mode .article-settings-card h3,
body.pantools-app-mode .article-result-card h3,
body.pantools-app-mode .pantools-share-snapshot-head strong,
body.pantools-app-mode .pantools-share-result-head strong,
body.pantools-app-mode .cleanup-page .usage strong,
body.pantools-app-mode .upload-source-head,
body.pantools-app-mode .upload-target-row strong {
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.32 !important;
}

body.pantools-app-mode .pantools-accept-card header {
  min-height: 52px !important;
}

body.pantools-app-mode .pantools-accept-card header > span {
  flex-basis: 36px !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .pantools-accept-card header svg,
body.pantools-app-mode .article-settings-card svg,
body.pantools-app-mode .cleanup-page svg,
body.pantools-app-mode .upload-page svg {
  width: 16px !important;
  height: 16px !important;
}

body.pantools-app-mode .pantools-accept-card header strong,
body.pantools-app-mode .accept-empty strong,
body.pantools-app-mode .upload-empty strong,
body.pantools-app-mode .daily-empty strong {
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

body.pantools-app-mode .article-settings-card label,
body.pantools-app-mode .pantools-accept-card label,
body.pantools-app-mode .pantools-share-compare-row label,
body.pantools-app-mode .cleanup-page label,
body.pantools-app-mode .upload-page label,
body.pantools-app-mode .accept-table th,
body.pantools-app-mode .pantools-share-table th,
body.pantools-app-mode .cleanup-table th,
body.pantools-app-mode .upload-page th {
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #475467 !important;
}

body.pantools-app-mode .pantools-accept-card small,
body.pantools-app-mode .article-settings-card p,
body.pantools-app-mode .article-result-card p,
body.pantools-app-mode .pantools-share-snapshot-head span,
body.pantools-app-mode .pantools-share-status-item,
body.pantools-app-mode .table-foot,
body.pantools-app-mode .article-source-card footer,
body.pantools-app-mode .accept-action-row span,
body.pantools-app-mode .upload-actions span,
body.pantools-app-mode .accept-table td,
body.pantools-app-mode .pantools-share-table td,
body.pantools-app-mode .cleanup-table td,
body.pantools-app-mode .upload-page td {
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

body.pantools-app-mode .pantools-accept-card textarea,
body.pantools-app-mode .pantools-accept-card input,
body.pantools-app-mode .pantools-accept-card select,
body.pantools-app-mode .cleanup-page input,
body.pantools-app-mode .cleanup-page select,
body.pantools-app-mode .upload-page input,
body.pantools-app-mode .upload-page select,
body.pantools-app-mode .upload-page textarea,
body.pantools-app-mode .pantools-accept-account,
body.pantools-app-mode .pantools-accept-account select,
body.pantools-app-mode .pantools-accept-account em {
  font-size: 12px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-accept-account select,
body.pantools-app-mode .pantools-accept-card input,
body.pantools-app-mode .pantools-accept-card select,
body.pantools-app-mode .cleanup-page input,
body.pantools-app-mode .cleanup-page select,
body.pantools-app-mode .upload-page input,
body.pantools-app-mode .upload-page select {
  height: 34px !important;
}

body.pantools-app-mode .pantools-accept-card button.primary,
body.pantools-app-mode .pantools-accept-card button.secondary,
body.pantools-app-mode .article-replace-actions button,
body.pantools-app-mode .pantools-share-data-center button,
body.pantools-app-mode .cleanup-page button,
body.pantools-app-mode .upload-page button {
  height: 34px !important;
  min-width: 76px !important;
  padding: 0 12px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
}

body.pantools-app-mode .accept-table th,
body.pantools-app-mode .accept-table td,
body.pantools-app-mode .pantools-share-table th,
body.pantools-app-mode .pantools-share-table td,
body.pantools-app-mode .cleanup-table th,
body.pantools-app-mode .cleanup-table td,
body.pantools-app-mode .upload-page th,
body.pantools-app-mode .upload-page td {
  height: 38px !important;
}

body.pantools-app-mode .accept-metrics div,
body.pantools-app-mode .pantools-share-metric {
  min-height: 60px !important;
  padding: 11px 14px !important;
}

body.pantools-app-mode .accept-metrics small,
body.pantools-app-mode .pantools-share-metric span {
  font-size: 11px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .accept-metrics strong,
body.pantools-app-mode .accept-metrics b,
body.pantools-app-mode .pantools-share-metric strong {
  font-size: 18px !important;
  font-weight: 600 !important;
}

/* Keep table empty states readable after the compact typography pass. */
body.pantools-app-mode .accept-table.big-empty td,
body.pantools-app-mode .link-result .accept-table.big-empty td {
  height: auto !important;
  padding: 0 !important;
  border-bottom: 0 !important;
}

body.pantools-app-mode .accept-table.big-empty .accept-empty,
body.pantools-app-mode .link-result .accept-table.big-empty .accept-empty {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 300px !important;
  margin: 0 !important;
  border: 0 !important;
  border-top: 1px solid #edf2f8 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  color: #667085 !important;
}

body.pantools-app-mode .accept-table.big-empty .accept-empty svg {
  width: 18px !important;
  height: 18px !important;
  color: #8ea0b8 !important;
}

body.pantools-app-mode .accept-table.big-empty .accept-empty strong {
  display: block !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  color: #101828 !important;
}

body.pantools-app-mode .accept-table.big-empty .accept-empty small {
  display: block !important;
  max-width: 320px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  color: #7b8aa3 !important;
}

/* Pantools final containment pass: real app viewport owns the height; inner fields eat spare space. */
body.pantools-app-mode .pantools-shell,
body.pantools-app-mode .pantools-shell *,
body.pantools-app-mode .pantools-accept-page,
body.pantools-app-mode .pantools-accept-page * {
  box-sizing: border-box !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.embedded,
body.pantools-app-mode .pantools-shell .netdisk-pan-file-workspace,
body.pantools-app-mode .pantools-shell .netdisk-pan-file-browser {
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-accept-page {
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-accept-head {
  min-height: 118px !important;
  height: auto !important;
  padding: 22px 36px 20px !important;
}

body.pantools-app-mode .pantools-accept-grid,
body.pantools-app-mode .article-link-replace-page,
body.pantools-app-mode .pantools-share-data-center,
body.pantools-app-mode .cleanup-page,
body.pantools-app-mode .upload-page {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-accept-grid {
  padding: 24px 36px 28px !important;
}

body.pantools-app-mode .pantools-accept-card,
body.pantools-app-mode .link-input,
body.pantools-app-mode .link-result,
body.pantools-app-mode .article-source-card,
body.pantools-app-mode .article-settings-card,
body.pantools-app-mode .article-result-card,
body.pantools-app-mode .stats-query,
body.pantools-app-mode .stats-result,
body.pantools-app-mode .stats-daily,
body.pantools-app-mode .cleanup-table,
body.pantools-app-mode .upload-source-box,
body.pantools-app-mode .pantools-share-snapshot-card,
body.pantools-app-mode .pantools-share-result-card {
  min-width: 0 !important;
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-accept-grid.link-check {
  grid-template-columns: minmax(0, 0.4fr) minmax(0, 0.6fr) !important;
}

body.pantools-app-mode .link-check .link-input,
body.pantools-app-mode .link-result {
  height: 100% !important;
  min-height: 0 !important;
}

body.pantools-app-mode .link-check .link-input textarea,
body.pantools-app-mode .stats-query textarea,
body.pantools-app-mode .upload-source-box textarea {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  resize: none !important;
}

body.pantools-app-mode .link-result .accept-table,
body.pantools-app-mode .stats-result .accept-table,
body.pantools-app-mode .article-result-table,
body.pantools-app-mode .pantools-share-table,
body.pantools-app-mode .pantools-share-table-wrap,
body.pantools-app-mode .cleanup-table .table-body,
body.pantools-app-mode .upload-table-wrap {
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

body.pantools-app-mode .link-result .accept-table:not(.big-empty) {
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.pantools-app-mode .link-result .accept-table:not(.big-empty) table {
  table-layout: fixed !important;
}

body.pantools-app-mode .link-result .accept-table:not(.big-empty) th:nth-child(1) {
  width: 12%;
}

body.pantools-app-mode .link-result .accept-table:not(.big-empty) th:nth-child(2) {
  width: 12%;
}

body.pantools-app-mode .link-result .accept-table:not(.big-empty) th:nth-child(3) {
  width: 22%;
}

body.pantools-app-mode .link-result .accept-table:not(.big-empty) td:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.pantools-app-mode .accept-table.big-empty,
body.pantools-app-mode .link-result .accept-table.big-empty {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) !important;
}

body.pantools-app-mode .accept-table.big-empty table,
body.pantools-app-mode .link-result .accept-table.big-empty table,
body.pantools-app-mode .article-result-table table,
body.pantools-app-mode .stats-result .accept-table table {
  height: 100% !important;
}

body.pantools-app-mode .accept-table.big-empty tbody,
body.pantools-app-mode .link-result .accept-table.big-empty tbody,
body.pantools-app-mode .accept-table.big-empty tr,
body.pantools-app-mode .link-result .accept-table.big-empty tr,
body.pantools-app-mode .accept-table.big-empty td,
body.pantools-app-mode .link-result .accept-table.big-empty td {
  height: 100% !important;
}

body.pantools-app-mode .accept-table.big-empty .accept-empty,
body.pantools-app-mode .link-result .accept-table.big-empty .accept-empty,
body.pantools-app-mode .daily-empty,
body.pantools-app-mode .upload-empty {
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .article-link-replace-page {
  grid-template-rows: auto minmax(0, 1fr) auto minmax(0, 0.62fr) !important;
  padding: 24px 36px 28px !important;
  gap: 16px !important;
}

body.pantools-app-mode .article-replace-grid {
  min-height: 0 !important;
  align-items: stretch !important;
}

body.pantools-app-mode .article-source-card {
  grid-template-rows: minmax(0, 1fr) 48px !important;
}

body.pantools-app-mode .article-source-card textarea {
  width: calc(100% - 48px) !important;
  height: calc(100% - 24px) !important;
  min-height: 0 !important;
}

body.pantools-app-mode .article-source-empty {
  bottom: 48px !important;
}

body.pantools-app-mode .article-source-card footer {
  height: 48px !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .article-source-card footer span,
body.pantools-app-mode .article-source-card footer em {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .article-replace-actions {
  min-width: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .article-result-card {
  grid-template-rows: auto auto minmax(0, 1fr) !important;
}

body.pantools-app-mode .article-result-card > p {
  margin-bottom: 12px !important;
}

body.pantools-app-mode .stats,
body.pantools-app-mode .stats-right {
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .stats-query {
  grid-template-rows: auto auto auto auto auto minmax(0, 1fr) auto auto !important;
}

body.pantools-app-mode .stats-result {
  grid-template-rows: auto minmax(0, 1fr) auto !important;
}

body.pantools-app-mode .stats-result .accept-metrics {
  margin-bottom: 0 !important;
}

body.pantools-app-mode .stats-daily {
  grid-template-rows: auto minmax(0, 1fr) !important;
}

body.pantools-app-mode .pantools-share-data-center {
  grid-template-rows: minmax(0, 0.46fr) minmax(0, 0.54fr) !important;
  padding: 24px 28px 28px !important;
  gap: 18px !important;
}

body.pantools-app-mode .cleanup-page,
body.pantools-app-mode .upload-page {
  width: auto !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  margin: 24px 36px 28px !important;
  align-self: stretch !important;
  justify-self: stretch !important;
}

body.pantools-app-mode .pantools-account-pool > .pantools-add-account {
  left: 9px !important;
  right: 9px !important;
  width: auto !important;
  max-width: calc(100% - 18px) !important;
  min-width: 0 !important;
}

/* Pantools file pages must keep the selected-account bar at the top. */
body.pantools-app-mode .pantools-shell .netdisk-pan-main:has(> .pantools-currentbar) {
  display: grid !important;
  grid-template-rows: 68px minmax(0, 1fr) !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-shell .pantools-currentbar {
  grid-row: 1 !important;
  height: 68px !important;
  min-height: 68px !important;
  max-height: 68px !important;
  align-self: start !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-main:has(> .pantools-currentbar) > .netdisk-pan-panelhost {
  grid-row: 2 !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

/* Pantools batch share compact action area. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page {
  padding-top: 18px !important;
  transform: translateY(-16px);
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .transfer-import-simple-actions {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  margin-top: 8px !important;
  align-items: start !important;
  justify-content: start !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-repeat-control {
  justify-self: start !important;
  min-height: 40px !important;
  gap: 8px !important;
  padding: 0 10px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-repeat-control input {
  width: 52px !important;
  height: 30px !important;
  padding: 0 8px !important;
  border-radius: 7px !important;
  font-size: 14px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share #shareModeExportTableBtn {
  width: 118px !important;
  min-width: 118px !important;
  height: 40px !important;
  min-height: 40px !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #1764ff !important;
  background: #eaf2ff !important;
  border: 1px solid #bfd7ff !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share #netdiskRunOperation .svg-icon,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share #shareModeExportTableBtn .svg-icon {
  width: 15px !important;
  height: 15px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share #shareModeState {
  display: none !important;
}

/* Batch share local controls: compact, left aligned, no footer-like blocks. */
body.pantools-app-mode .share-mode-page .pantools-share-actions,
body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-actions,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-actions {
  width: 100% !important;
  max-width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  justify-content: start !important;
  justify-items: start !important;
  align-items: start !important;
  align-self: start !important;
  gap: 10px !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.pantools-app-mode .share-mode-page .pantools-share-field-grid,
body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-field-grid,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-field-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
}

body.pantools-app-mode .share-mode-page .pantools-share-action-grid,
body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-action-grid,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-action-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 112px) !important;
  justify-content: start !important;
  justify-items: stretch !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
}

body.pantools-app-mode .share-mode-page .pantools-share-actions .pantools-share-repeat-control,
body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-actions .pantools-share-repeat-control,
body.pantools-app-mode .share-mode-page .pantools-share-actions .pantools-share-code-control,
body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-actions .pantools-share-code-control {
  width: auto !important;
  min-width: 0 !important;
  min-height: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  padding: 0 9px !important;
  border-radius: 8px !important;
  color: #475467 !important;
  background: #fff !important;
  border: 1px solid #d6e0ee !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

body.pantools-app-mode .share-mode-page .pantools-share-actions .pantools-share-repeat-control span {
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .share-mode-page .pantools-share-actions .pantools-share-repeat-control input,
body.pantools-app-mode .share-mode-page .pantools-share-actions .pantools-share-code-control input {
  width: 48px !important;
  min-width: 48px !important;
  height: 28px !important;
  min-height: 28px !important;
  padding: 0 7px !important;
  border-radius: 7px !important;
  border: 1px solid #d6e0ee !important;
  color: #101828 !important;
  background: #fff !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 28px !important;
}

body.pantools-app-mode .share-mode-page .pantools-share-actions #netdiskRunOperation,
body.pantools-app-mode .share-mode-page .pantools-share-actions #netdiskRunOperation:disabled,
body.pantools-app-mode .share-mode-page .pantools-share-actions #shareModeImportRepeatBtn,
body.pantools-app-mode .share-mode-page .pantools-share-actions #shareModeExportTableBtn,
body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-actions #netdiskRunOperation:disabled,
body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-actions #shareModeImportRepeatBtn,
body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-actions #shareModeExportTableBtn {
  width: 112px !important;
  min-width: 112px !important;
  max-width: 112px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  padding: 0 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  border-radius: 8px !important;
  color: #1764ff !important;
  background: #eaf2ff !important;
  border: 1px solid #bfd7ff !important;
  box-shadow: none !important;
  opacity: 1 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .share-mode-page .pantools-share-actions #netdiskRunOperation .svg-icon,
body.pantools-app-mode .share-mode-page .pantools-share-actions #shareModeExportTableBtn .svg-icon {
  width: 14px !important;
  height: 14px !important;
  flex: 0 0 auto !important;
}

body.pantools-app-mode .share-mode-page .pantools-share-actions .pantools-share-state {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page {
  gap: 10px !important;
  padding-top: 0 !important;
}

body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page {
  gap: 10px !important;
  padding-top: 0 !important;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-selected,
body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page .pantools-share-selected {
  margin-top: 0 !important;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-selected-head,
body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page .pantools-share-selected-head {
  min-height: 26px !important;
  margin-bottom: 6px !important;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-selected-list,
body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page .pantools-share-selected-list {
  gap: 6px !important;
  margin-bottom: 12px !important;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-selected-list > div,
body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page .pantools-share-selected-list > div {
  min-height: 40px !important;
  padding: 0 12px !important;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-options,
body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page .pantools-share-options {
  gap: 6px !important;
  align-content: start !important;
  align-items: start !important;
  grid-auto-rows: 54px !important;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-options h3,
body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page .pantools-share-options h3 {
  margin: 0 !important;
  font-size: 14px !important;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-options label,
body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page .pantools-share-options label {
  height: 54px !important;
  min-height: 54px !important;
  max-height: 54px !important;
  grid-template-columns: 36px minmax(0, 1fr) 18px !important;
  column-gap: 10px !important;
  padding: 8px 12px !important;
  align-self: start !important;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-options label > span,
body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page .pantools-share-options label > span {
  width: 32px !important;
  height: 32px !important;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-options input,
body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page .pantools-share-options input {
  width: 18px !important;
  height: 18px !important;
}

body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-options strong,
body.pantools-app-mode .pantools-feature-panel .share-mode-page .pantools-share-options small,
body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page .pantools-share-options strong,
body.pantools-app-mode .netdisk-mode-panel-content > .share-mode-page .pantools-share-options small {
  font-size: 13px !important;
}

/* Pantools left entry cleanup: keep only the netdisk category card. */
.more-products,
body.pantools-app-mode .more-products {
  display: none !important;
}

body.pantools-app-mode .notice-bar {
  display: none !important;
}

body.pantools-app-mode .content {
  padding-top: 0 !important;
}

/* PanBox batch share: smaller, denser modal refinement. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share {
  padding: 22px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-feature-panel {
  width: 590px !important;
  height: 730px !important;
  max-width: min(590px, calc(100vw - 44px)) !important;
  max-height: min(730px, calc(100vh - 44px)) !important;
  border-radius: 12px !important;
  box-shadow: 0 22px 58px rgba(16, 24, 40, 0.2) !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-feature-head {
  min-height: 58px !important;
  padding: 18px 24px 4px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-feature-head span {
  font-size: 12px !important;
  line-height: 18px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-feature-head h2 {
  font-size: 20px !important;
  line-height: 24px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-feature-head .icon-close {
  width: 28px !important;
  height: 28px !important;
  font-size: 26px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-feature-content {
  padding: 0 26px 24px !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page {
  gap: 10px !important;
  padding-top: 0 !important;
  transform: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .netdisk-mode-buttons {
  gap: 6px !important;
  margin-bottom: 4px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .netdisk-mode-buttons button {
  height: 36px !important;
  min-height: 36px !important;
  padding: 0 16px !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  line-height: 1 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-selected {
  margin-top: 2px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-selected-head {
  min-height: 24px !important;
  margin-bottom: 6px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-selected-head > strong {
  font-size: 15px !important;
  line-height: 24px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-selected-head > strong span {
  width: 24px !important;
  height: 24px !important;
  font-size: 13px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-selected-list {
  gap: 5px !important;
  margin-bottom: 10px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-selected-list > div {
  min-height: 40px !important;
  padding: 0 13px !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-selected-list .netdisk-pan-filemark {
  width: 22px !important;
  height: 22px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-selected-list strong {
  font-size: 14px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-options {
  gap: 8px !important;
  grid-auto-rows: 58px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-options h3 {
  margin: 0 0 2px !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-options label {
  height: 58px !important;
  min-height: 58px !important;
  max-height: 58px !important;
  grid-template-columns: 34px minmax(0, 1fr) 18px !important;
  column-gap: 10px !important;
  padding: 9px 12px !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-options label > span {
  width: 32px !important;
  height: 32px !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-options label > span .svg-icon {
  width: 16px !important;
  height: 16px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-options input {
  width: 18px !important;
  height: 18px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-options strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-options small {
  font-size: 13px !important;
  line-height: 18px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions {
  grid-template-columns: auto auto 108px 108px 108px !important;
  gap: 8px !important;
  margin-top: 8px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions .pantools-share-repeat-control,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions .pantools-share-code-control {
  width: auto !important;
  min-width: 0 !important;
  height: 36px !important;
  min-height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  padding: 0 9px !important;
  border-radius: 7px !important;
  color: #475467 !important;
  background: #fff !important;
  border: 1px solid #d6e0ee !important;
  box-shadow: none !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions .pantools-share-repeat-control span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions .pantools-share-code-control span {
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions .pantools-share-repeat-control input,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions .pantools-share-code-control input {
  width: 46px !important;
  min-width: 46px !important;
  height: 26px !important;
  min-height: 26px !important;
  padding: 0 7px !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 7px !important;
  color: #101828 !important;
  background: #fff !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 26px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions .pantools-share-code-control input {
  width: 56px !important;
  min-width: 56px !important;
  text-align: center !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions #netdiskRunOperation:disabled,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions #shareModeImportRepeatBtn,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions #shareModeExportTableBtn {
  width: 108px !important;
  min-width: 108px !important;
  max-width: 108px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  padding: 0 11px !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  gap: 6px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions #netdiskRunOperation .svg-icon,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions #shareModeExportTableBtn .svg-icon {
  width: 13px !important;
  height: 13px !important;
}

body.pantools-app-mode .pantools-provider-account-empty {
  min-height: 240px !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  color: #98a2b3 !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 14px !important;
  line-height: 20px !important;
  text-align: center !important;
  transform: translateY(-18px) !important;
}

body.pantools-app-mode .pantools-provider-account-empty strong {
  color: #98a2b3 !important;
  font-size: 14px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-provider-account-empty span {
  color: #98a2b3 !important;
  font-size: 14px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-account-list:has(.pantools-provider-account-empty) {
  flex: 1 1 auto !important;
  min-height: 320px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.pantools-app-mode .pantools-share-progress {
  width: 100% !important;
  display: grid !important;
  gap: 6px !important;
  padding: 8px 10px !important;
  border: 1px solid #dbeafe !important;
  border-radius: 8px !important;
  background: #f8fbff !important;
}

body.pantools-app-mode .pantools-share-progress[hidden] {
  display: none !important;
}

body.pantools-app-mode .pantools-share-progress-head,
body.pantools-app-mode .pantools-share-progress-meta {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  color: #667085 !important;
  font-size: 12px !important;
  line-height: 18px !important;
}

body.pantools-app-mode .pantools-share-progress-head strong {
  color: #1764ff !important;
  font-size: 13px !important;
  line-height: 18px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-share-progress-bar {
  height: 6px !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: #e6edf7 !important;
}

body.pantools-app-mode .pantools-share-progress-bar i {
  display: block !important;
  width: 0;
  height: 100% !important;
  border-radius: inherit !important;
  background: #1764ff !important;
  transition: width 0.22s ease !important;
}

body.pantools-app-mode .pantools-share-progress-meta span:last-child {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  text-align: right !important;
}

.pantools-share-task-center {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 42px 28px !important;
  background: rgba(16, 24, 40, 0.38) !important;
  backdrop-filter: blur(2px) !important;
}

.pantools-share-task-panel {
  width: min(1180px, calc(100vw - 56px)) !important;
  min-height: 420px !important;
  max-height: calc(100vh - 84px) !important;
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  background: #fff !important;
  border: 1px solid #e6edf7 !important;
  box-shadow: 0 28px 70px rgba(16, 24, 40, 0.22) !important;
}

.pantools-share-task-panel > header {
  min-height: 62px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 0 18px !important;
  border-bottom: 1px solid #e6edf7 !important;
}

.pantools-share-task-panel > header > strong {
  color: #101828 !important;
  font-size: 16px !important;
  line-height: 22px !important;
  font-weight: 600 !important;
}

.pantools-share-task-panel > header > div {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.pantools-share-task-panel button {
  height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  padding: 0 10px !important;
  border-radius: 7px !important;
  border: 1px solid #d6e0ee !important;
  background: #fff !important;
  color: #475467 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
}

.pantools-share-task-panel button.active {
  color: #1764ff !important;
  background: #eaf2ff !important;
  border-color: #bfd7ff !important;
}

.pantools-share-task-panel button .svg-icon {
  width: 14px !important;
  height: 14px !important;
}

.pantools-share-task-panel > main {
  overflow: auto !important;
  padding: 14px !important;
  background: #fff !important;
}

.pantools-share-task-provider {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  color: #667085 !important;
  font-size: 13px !important;
  line-height: 18px !important;
  margin: 2px 2px 14px !important;
}

.pantools-share-task-card {
  border: 1px solid #e6edf7 !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(16, 24, 40, 0.06) !important;
}

.pantools-share-task-row {
  min-height: 54px !important;
  display: grid !important;
  grid-template-columns: 24px 80px 72px 44px minmax(180px, 280px) 50px 58px 52px 52px 70px 120px auto !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 0 14px !important;
  color: #475467 !important;
  font-size: 13px !important;
  line-height: 18px !important;
}

.pantools-share-task-toggle {
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #101828 !important;
  font-size: 18px !important;
}

.pantools-share-task-row > strong {
  color: #101828 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

.pantools-share-task-row > i {
  height: 6px !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: #e6edf7 !important;
}

.pantools-share-task-row > i > b {
  display: block !important;
  height: 100% !important;
  border-radius: inherit !important;
  background: #1764ff !important;
}

.pantools-share-task-row > em {
  width: fit-content !important;
  padding: 3px 8px !important;
  border-radius: 7px !important;
  color: #067647 !important;
  background: #dff8ec !important;
  font-style: normal !important;
  font-size: 12px !important;
}

.pantools-share-task-row > em.running {
  color: #1764ff !important;
  background: #eaf2ff !important;
}

.pantools-share-task-row > small {
  color: #667085 !important;
  font-size: 12px !important;
  white-space: nowrap !important;
}

.pantools-share-task-row > small:nth-last-child(2) {
  color: #b65d00 !important;
}

.pantools-share-task-row > div {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}

.pantools-share-task-detail {
  display: none !important;
  margin: 0 36px 14px 36px !important;
  overflow: hidden !important;
  border: 1px solid #e6edf7 !important;
  border-radius: 8px !important;
  background: #fff !important;
}

.pantools-share-task-card.expanded .pantools-share-task-detail {
  display: block !important;
}

.pantools-share-task-tabs {
  display: flex !important;
  gap: 8px !important;
  padding: 10px 12px !important;
  background: #fffdf8 !important;
  border-bottom: 1px solid #e6edf7 !important;
}

.pantools-share-task-tabs span {
  min-height: 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  border: 1px solid #d6e0ee !important;
  color: #667085 !important;
  background: #fff !important;
  font-size: 12px !important;
}

.pantools-share-task-tabs span:first-child {
  color: #d92d20 !important;
  border-color: #ffd2d6 !important;
  background: #fff5f5 !important;
}

.pantools-share-task-table table {
  width: 100% !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
}

.pantools-share-task-table th,
.pantools-share-task-table td {
  height: 48px !important;
  padding: 0 12px !important;
  border-bottom: 1px solid #edf2f8 !important;
  color: #667085 !important;
  font-size: 12px !important;
  line-height: 18px !important;
  text-align: left !important;
}

.pantools-share-task-table th:nth-child(1),
.pantools-share-task-table td:nth-child(1) {
  width: 30% !important;
}

.pantools-share-task-table th:nth-child(3),
.pantools-share-task-table td:nth-child(3) {
  width: 90px !important;
}

.pantools-share-task-table th:nth-child(4),
.pantools-share-task-table td:nth-child(4) {
  width: 72px !important;
  text-align: center !important;
}

.pantools-share-task-table td strong {
  color: #101828 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

.pantools-share-task-table td span {
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pantools-share-task-table em {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 22px !important;
  padding: 0 8px !important;
  border-radius: 999px !important;
  font-style: normal !important;
  font-size: 12px !important;
}

.pantools-share-task-table em.ok {
  color: #067647 !important;
  background: #dff8ec !important;
}

.pantools-share-task-table em.bad {
  color: #d92d20 !important;
  background: #fff1f1 !important;
}

.pantools-share-task-table em.pending {
  color: #667085 !important;
  background: #f2f4f7 !important;
}

.pantools-share-task-table .icon-only {
  width: 28px !important;
  min-width: 28px !important;
  height: 28px !important;
  padding: 0 !important;
}

.pantools-share-task-empty,
.pantools-share-task-table-empty {
  display: grid !important;
  place-items: center !important;
  gap: 8px !important;
  min-height: 120px !important;
  color: #667085 !important;
  text-align: center !important;
}

.pantools-share-task-history-list {
  display: grid !important;
  gap: 10px !important;
}

.pantools-share-task-history-list > div {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 12px 14px !important;
  border: 1px solid #e6edf7 !important;
  border-radius: 8px !important;
}

/* PanBox netdisk task center: PanFlow-like standalone popup. */
.pantools-share-task-center {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9999 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  padding: 0 0 64px 322px !important;
  background: transparent !important;
  backdrop-filter: none !important;
  pointer-events: none !important;
}

.pantools-share-task-panel {
  width: clamp(920px, 66vw, 1680px) !important;
  height: clamp(420px, 47vh, 720px) !important;
  min-height: 0 !important;
  max-height: none !important;
  display: grid !important;
  grid-template-rows: 64px minmax(0, 1fr) !important;
  overflow: hidden !important;
  border: 1px solid #e5e9f1 !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(16, 24, 40, 0.08) !important;
  transition: height .18s ease !important;
  pointer-events: auto !important;
}

@media (max-width: 960px), (max-height: 468px) {
  .pantools-share-task-center {
    padding: 12px !important;
  }

  .pantools-share-task-panel {
    width: calc(100vw - 24px) !important;
    height: calc(100vh - 24px) !important;
  }
}

.pantools-share-task-center.collapsed .pantools-share-task-panel {
  width: min(430px, calc(100vw - 32px)) !important;
  height: 50px !important;
  grid-template-rows: 50px 0 !important;
}

.pantools-share-task-center.collapsed {
  align-items: flex-end !important;
  justify-content: flex-end !important;
  padding: 0 16px 16px 0 !important;
  background: transparent !important;
  backdrop-filter: none !important;
  pointer-events: none !important;
}

.pantools-share-task-center.collapsed .pantools-share-task-panel {
  border-radius: 9px !important;
  border-bottom: 1px solid #e5e9f1 !important;
  box-shadow: 0 10px 26px rgba(16, 24, 40, 0.14) !important;
  pointer-events: auto !important;
}

.pantools-share-task-center.collapsed .pantools-share-task-panel > header {
  min-height: 50px !important;
  height: 50px !important;
  gap: 8px !important;
  padding: 0 9px 0 12px !important;
  border-bottom: 0 !important;
}

.pantools-share-task-center.collapsed .pantools-share-task-panel > header > strong {
  font-size: 14px !important;
  line-height: 20px !important;
}

.pantools-share-task-center.collapsed .pantools-share-task-panel > header > div {
  gap: 4px !important;
}

.pantools-share-task-center.collapsed .pantools-share-task-panel button {
  height: 30px !important;
  gap: 4px !important;
  padding: 0 8px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
}

.pantools-share-task-center.collapsed [data-pantools-clear-done] {
  display: none !important;
}

.pantools-share-task-center.collapsed .pantools-share-task-panel > main {
  overflow: hidden !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.pantools-share-task-panel > header {
  min-height: 64px !important;
  height: 64px !important;
  padding: 0 16px !important;
  border-bottom: 1px solid #e5e9f1 !important;
}

.pantools-share-task-panel > header > strong {
  color: #171b28 !important;
  font-size: 16px !important;
  line-height: 22px !important;
  font-weight: 400 !important;
}

.pantools-share-task-panel > header > div {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}

.pantools-share-task-panel button {
  height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  padding: 0 10px !important;
  border: 1px solid #e5e9f1 !important;
  border-radius: 8px !important;
  color: #4b5568 !important;
  background: #fff !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
}

.pantools-share-task-panel button.active {
  color: #2563eb !important;
  background: #eaf1ff !important;
  border-color: #bfd3ff !important;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.08) !important;
}

.pantools-share-task-panel button.hidden {
  display: none !important;
}

.pantools-share-task-panel button .svg-icon,
.pantools-share-task-panel .svg-icon {
  width: 14px !important;
  height: 14px !important;
  flex: 0 0 auto !important;
  stroke-width: 2 !important;
}

.pantools-share-task-panel [data-pantools-share-close] {
  width: 32px !important;
  min-width: 32px !important;
  padding: 0 !important;
  color: #7b8496 !important;
}

.pantools-share-task-panel [data-pantools-share-close]:hover {
  color: #1764ff !important;
  background: #f4f8ff !important;
  border-color: #bfd7ff !important;
}

.pantools-share-task-panel .svg-icon.inline {
  width: 15px !important;
  height: 15px !important;
  vertical-align: -3px !important;
}

.pantools-share-task-panel > main {
  overflow: auto !important;
  padding: 12px 10px 16px !important;
  background: #fff !important;
}

.pantools-share-task-provider {
  height: 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin: 0 12px 6px !important;
  color: #596276 !important;
  font-size: 14px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
}

.pantools-share-task-list {
  display: grid !important;
  gap: 10px !important;
}

.pantools-share-task-card {
  border: 1px solid #e5e9f1 !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(37, 99, 235, 0.04) !important;
}

.pantools-share-task-row {
  min-height: 60px !important;
  display: grid !important;
  grid-template-columns: 24px 100px 100px 70px minmax(160px, 1fr) 46px 52px 52px 48px 64px auto !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 0 16px !important;
  color: #596276 !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

.pantools-share-task-toggle {
  width: 22px !important;
  min-width: 22px !important;
  height: 22px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #171b28 !important;
}

.pantools-share-task-row > strong {
  color: #1f2433 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
}

.pantools-share-task-row > span {
  color: #98a2b8 !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.pantools-share-task-row > span.pantools-share-task-count {
  overflow: visible !important;
  text-align: center !important;
  text-overflow: clip !important;
  font-variant-numeric: tabular-nums !important;
}

.pantools-share-task-row > i {
  height: 6px !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: #e6e6e8 !important;
}

.pantools-share-task-row > i > b {
  display: block !important;
  height: 100% !important;
  border-radius: inherit !important;
  background: #2563eb !important;
}

.pantools-share-task-row > em {
  width: fit-content !important;
  height: 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 8px !important;
  border-radius: 7px !important;
  color: #079669 !important;
  background: #dff7ef !important;
  font-style: normal !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
}

.pantools-share-task-row > em.running {
  color: #2563eb !important;
  background: #eaf1ff !important;
}

.pantools-share-task-row > small {
  color: #667085 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
}

.pantools-share-task-row > small.success { color: #079669 !important; }
.pantools-share-task-row > small.fail { color: #8892a7 !important; }
.pantools-share-task-row > small.pending { color: #a85b00 !important; }

.pantools-share-task-row > div {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
}

.pantools-share-task-row .danger-text {
  color: #d92d20 !important;
}

.pantools-share-task-detail {
  display: none !important;
  margin: 0 20px 14px 42px !important;
  overflow: hidden !important;
  border: 1px solid #e5e9f1 !important;
  border-radius: 8px !important;
  background: #fff !important;
}

.pantools-share-task-card.expanded .pantools-share-task-detail {
  display: block !important;
}

.pantools-share-task-tabs {
  display: flex !important;
  gap: 8px !important;
  padding: 10px 14px !important;
  background: #fff !important;
  border-bottom: 1px solid #edf1f7 !important;
}

.pantools-share-task-tabs span {
  min-height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  border: 1px solid #d8dee9 !important;
  color: #596378 !important;
  background: #fff !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

.pantools-share-task-tabs span:first-child {
  color: #bf2e25 !important;
  border-color: #f0c9c4 !important;
  background: #fff7f6 !important;
}

.pantools-share-task-table table {
  width: 100% !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
}

.pantools-share-task-table th,
.pantools-share-task-table td {
  height: 52px !important;
  padding: 0 14px !important;
  overflow: hidden !important;
  border-bottom: 1px solid #edf1f7 !important;
  color: #9aa4b8 !important;
  font-size: 13px !important;
  line-height: 20px !important;
  text-align: left !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pantools-share-task-table th {
  height: 38px !important;
  background: linear-gradient(90deg, #f3f7fa, #fafafa) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

.pantools-share-task-table th:nth-child(1),
.pantools-share-task-table td:nth-child(1) {
  width: 28% !important;
}

.pantools-share-task-table th:nth-child(3),
.pantools-share-task-table td:nth-child(3) {
  width: 120px !important;
}

.pantools-share-task-table th:nth-child(4),
.pantools-share-task-table td:nth-child(4) {
  width: 100px !important;
  text-align: center !important;
}

.pantools-share-task-table td strong {
  color: #1f2433 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

.pantools-share-task-table td span {
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pantools-share-task-table em {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  font-style: normal !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}

.pantools-share-task-table em.ok {
  color: #079669 !important;
  background: #dff7ef !important;
}

.pantools-share-task-table em.bad {
  color: #d92d20 !important;
  background: #fff1f1 !important;
}

.pantools-share-task-table em.pending {
  color: #667085 !important;
  background: #f2f4f7 !important;
}

.pantools-share-task-table .icon-only {
  width: 40px !important;
  min-width: 40px !important;
  height: 36px !important;
  padding: 0 !important;
}

.pantools-share-task-empty,
.pantools-share-task-table-empty {
  display: grid !important;
  place-items: center !important;
  gap: 8px !important;
  min-height: 160px !important;
  color: #667085 !important;
  text-align: center !important;
  font-weight: 400 !important;
}

.pantools-share-task-empty {
  width: 296px !important;
  min-height: 166px !important;
  margin: 10px auto 0 !important;
  border: 1px dashed #bfd3ff !important;
  border-radius: 14px !important;
  background: radial-gradient(circle at 14% 0, rgba(37, 99, 235, .08), transparent 30%), #fff !important;
}

.pantools-share-task-empty strong,
.pantools-share-task-table-empty strong {
  color: #171b28 !important;
  font-size: 22px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-share-task-panel {
  width: clamp(960px, 74vw, 1680px) !important;
}

body.pantools-app-mode .pantools-share-task-row {
  grid-template-columns: 26px minmax(112px, 160px) 82px 82px minmax(180px, 1fr) 52px 60px 64px 58px 78px minmax(88px, auto) !important;
  gap: 8px !important;
  cursor: pointer !important;
}

body.pantools-app-mode .pantools-share-task-toggle {
  pointer-events: auto !important;
  border: 1px solid #dfe7f3 !important;
  background: #fff !important;
  color: #2563eb !important;
}

body.pantools-app-mode .pantools-share-task-row > strong {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

body.pantools-app-mode .pantools-share-task-row > i {
  min-width: 0 !important;
}

body.pantools-app-mode .pantools-share-task-row > em {
  justify-self: start !important;
}

body.pantools-app-mode .pantools-share-task-row > small {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

body.pantools-app-mode .pantools-share-task-row > div {
  min-width: 0 !important;
}

body.pantools-app-mode .pantools-share-task-provider {
  padding-right: 4px !important;
}

/* PanBox batch rename typography: match the batch copy modal. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-feature-head h2 {
  color: #101828 !important;
  font-size: 24px !important;
  line-height: 28px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-head strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-section-head strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-preview h3 {
  color: #101828 !important;
  font-size: 16px !important;
  line-height: 22px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-head .pantools-check {
  color: #98a2b3 !important;
  font-size: 13px !important;
  line-height: 18px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-head .pantools-check input {
  width: 17px !important;
  height: 17px !important;
  margin: 0 6px 0 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-list,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-list *,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-empty-rule,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-rules-summary > div:last-child,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-rename-preview .compact-result,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-move-confirm {
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

/* PanBox file toolbar delete button: clean white danger style. */
body.pantools-app-mode .pantools-file-toolbar button[data-pantools-file-action="delete"],
body.pantools-app-mode .pantools-file-toolbar button[data-pantools-file-action="delete"]:hover,
body.pantools-app-mode .pantools-file-toolbar button[data-pantools-file-action="delete"]:focus {
  color: #d92d20 !important;
  background: #ffffff !important;
  border: 1px solid #ead9d9 !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-file-toolbar button[data-pantools-file-action="delete"] .svg-icon {
  color: #d92d20 !important;
  stroke: #d92d20 !important;
}

/* PanBox modal titles: keep large operation titles compact like batch transfer. */
body.pantools-app-mode .pantools-feature-modal .pantools-feature-head h2,
body.pantools-app-mode .pantools-action-modal .modal-head h2,
body.pantools-app-mode .pantools-upload-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-download-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-delete-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-new-folder-modal-panel .modal-head h2,
body.pantools-app-mode .pantools-unbind-panel .modal-head h2 {
  color: #101828 !important;
  font-size: 20px !important;
  line-height: 26px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

/* PanBox operation modal section typography: match the compact ad-cleanup reference. */
body.pantools-app-mode .pantools-action-modal .pantools-ad-cleanup-source-head strong,
body.pantools-app-mode .pantools-action-modal .pantools-ad-cleanup-settings,
body.pantools-app-mode .pantools-action-modal .pantools-ad-cleanup-results h3,
body.pantools-app-mode .pantools-action-modal .pantools-share-selected-head > strong,
body.pantools-app-mode .pantools-action-modal .pantools-move-section-title,
body.pantools-app-mode .pantools-action-modal .pantools-rename-section-head strong,
body.pantools-app-mode .pantools-feature-modal .pantools-share-selected-head > strong,
body.pantools-app-mode .pantools-feature-modal .pantools-share-options h3,
body.pantools-app-mode .pantools-feature-modal .pantools-rename-section-head strong,
body.pantools-app-mode .pantools-feature-modal .pantools-rename-preview h3 {
  color: #101828 !important;
  font-size: 16px !important;
  line-height: 22px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-action-modal .pantools-ad-cleanup-source strong,
body.pantools-app-mode .pantools-action-modal .pantools-share-selected-list strong,
body.pantools-app-mode .pantools-feature-modal .pantools-share-selected-list strong {
  color: #101828 !important;
  font-size: 16px !important;
  line-height: 22px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-action-modal .pantools-ad-cleanup-source-head > div span,
body.pantools-app-mode .pantools-feature-modal .pantools-share-selected-head > strong span {
  font-size: 13px !important;
  font-weight: 600 !important;
}

body.pantools-app-mode .app .layout > .sidebar {
  flex: 0 0 266px !important;
  width: 266px !important;
  max-width: 266px !important;
  min-width: 266px !important;
  padding: 24px 8px 12px !important;
  background: #f4f7fb !important;
}

body.pantools-app-mode .app .layout > .sidebar .sidebar-avatar {
  display: none !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-menu {
  width: 100% !important;
  padding: 0 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group::before {
  display: block !important;
  left: -8px !important;
  top: 10px !important;
  bottom: 10px !important;
  width: 6px !important;
  border-radius: 0 6px 6px 0 !important;
  background: #9cc5ff !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle {
  width: 100% !important;
  min-height: 62px !important;
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) auto auto !important;
  gap: 10px !important;
  padding: 0 12px !important;
  border: 1px solid #dbe5f4 !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: 0 10px 24px rgba(16, 24, 40, 0.06) !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-mark {
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
  background: #1764ff !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 500 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-toggle strong {
  color: #101828 !important;
  font-size: 18px !important;
  font-weight: 500 !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-count,
body.pantools-app-mode .app .layout > .sidebar .category-chevron {
  display: inline-flex !important;
  color: #667085 !important;
  font-size: 14px !important;
}

body.pantools-app-mode .app .layout > .sidebar .category-group-items {
  display: none !important;
}

/* Pantools shell must sit tight against the app edges after removing the first-level category rail. */
body.pantools-app-mode .layout,
body.pantools-app-mode .content,
body.pantools-app-mode .home-view,
body.pantools-app-mode .tool-grid.netdisk-pan-grid,
body.pantools-app-mode .tool-grid.netdisk-pan-grid .netdisk-pan-shell.pantools-shell {
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

body.pantools-app-mode .layout {
  height: calc(100vh - 30px) !important;
  min-height: 0 !important;
}

body.pantools-app-mode .content,
body.pantools-app-mode .home-view,
body.pantools-app-mode .tool-grid.netdisk-pan-grid {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
}

body.pantools-app-mode .tool-grid.netdisk-pan-grid .netdisk-pan-shell.pantools-shell {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* My shares filters: match the compact command buttons. */
body.pantools-app-mode .pantools-my-shares-filter-row {
  min-height: 52px !important;
  height: 52px !important;
  gap: 8px !important;
  padding: 8px 18px !important;
}

body.pantools-app-mode .pantools-my-shares-filter-row .pantools-share-status {
  height: 36px !important;
  padding: 2px !important;
  gap: 2px !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .pantools-my-shares-filter-row .pantools-share-status button {
  min-width: 58px !important;
  height: 32px !important;
  min-height: 32px !important;
  padding: 0 12px !important;
  border-radius: 7px !important;
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 500 !important;
}

body.pantools-app-mode .pantools-my-shares-date-field,
body.pantools-app-mode .pantools-my-shares-keyword {
  height: 36px !important;
  min-height: 36px !important;
  gap: 8px !important;
  padding: 0 10px !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-my-shares-date-field input,
body.pantools-app-mode .pantools-my-shares-keyword input {
  height: 30px !important;
  min-height: 30px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-my-shares-date-field {
  min-width: 200px !important;
}

body.pantools-app-mode .pantools-my-shares-keyword {
  min-width: 300px !important;
}

/* Pantools workspace after removing only the outer product category column. */
body.pantools-app-mode .netdisk-pan-shell.pantools-shell {
  grid-template-columns: 72px 216px minmax(0, 1fr) !important;
}

body.pantools-app-mode .pantools-shell > .netdisk-pan-main {
  width: 100% !important;
  min-width: 0 !important;
  background: #f5f6f8 !important;
}

/* PanBox final edge lock: the workspace replaces the removed outer product rail. */
body.pantools-app-mode .app,
body.pantools-app-mode .layout,
body.pantools-app-mode .content,
body.pantools-app-mode .content > .home-view:not(.hidden),
body.pantools-app-mode #toolGrid.tool-grid.netdisk-pan-grid,
body.pantools-app-mode #toolGrid.tool-grid.netdisk-pan-grid > .netdisk-pan-shell.pantools-shell {
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

body.pantools-app-mode .layout {
  height: calc(100vh - 24px) !important;
  min-height: 0 !important;
}

body.pantools-app-mode .content,
body.pantools-app-mode .content > .home-view:not(.hidden) {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

body.pantools-app-mode .content > .home-view:not(.hidden) {
  display: flex !important;
  flex-direction: column !important;
}

body.pantools-app-mode #toolGrid.tool-grid.netdisk-pan-grid {
  flex: 1 1 auto !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

body.pantools-app-mode #toolGrid.tool-grid.netdisk-pan-grid > .netdisk-pan-shell.pantools-shell {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  border: 0 !important;
  box-shadow: none !important;
  grid-template-columns: 72px 216px minmax(0, 1fr) !important;
  background: linear-gradient(90deg, #ffffff 0 72px, #f5f6f8 72px 100%) !important;
}

/* PanBox my-shares top controls: same compact visual rhythm as the command bar. */
body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-filter-row {
  min-height: 52px !important;
  height: 52px !important;
  gap: 8px !important;
  padding: 8px 18px !important;
}

body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-commandbar {
  min-height: 54px !important;
  height: 54px !important;
  gap: 8px !important;
  padding: 8px 18px !important;
}

body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-filter-row .pantools-share-status {
  height: 36px !important;
  padding: 2px !important;
  gap: 2px !important;
  border-radius: 8px !important;
}

body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-filter-row .pantools-share-status button {
  min-width: 58px !important;
  height: 32px !important;
  min-height: 32px !important;
  padding: 0 12px !important;
  border-radius: 7px !important;
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 500 !important;
}

body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-date-field,
body.pantools-app-mode .netdisk-pan-embedded-content .pantools-my-shares-keyword {
  height: 36px !important;
  min-height: 36px !important;
  gap: 8px !important;
  padding: 0 10px !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-toast.show,
.pantools-toast.show {
  opacity: 1 !important;
  transform: translate(-50%, 0) !important;
}

/* PanBox final modal matching: ad cleanup compact reference, cookie mount blue, and unbind compact confirm. */
body.pantools-app-mode .pantools-ad-cleanup-modal {
  align-items: center !important;
  justify-content: center !important;
  background: rgba(16, 24, 40, 0.46) !important;
  backdrop-filter: blur(8px) !important;
}

body.pantools-app-mode .pantools-action-modal .pantools-ad-cleanup-panel,
body.pantools-app-mode .pantools-ad-cleanup-panel {
  width: 900px !important;
  height: 918px !important;
  max-width: calc(100vw - 48px) !important;
  max-height: calc(100vh - 48px) !important;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto !important;
  gap: 18px !important;
  padding: 40px 36px 37px !important;
  border-radius: 16px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-head h2 {
  font-size: 26px !important;
  line-height: 1 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head {
  margin: 40px 0 0 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head strong {
  font-size: 20px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-settings {
  font-size: 18px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source {
  height: 56px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source strong {
  font-size: 19px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-results h3 {
  font-size: 21px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow {
  width: 470px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow li > span {
  color: #1764ff !important;
  background: #eaf2ff !important;
}

body.pantools-app-mode .pantools-ad-cleanup-foot {
  grid-template-columns: minmax(0, 1fr) 180px 177px !important;
  gap: 18px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-delete,
body.pantools-app-mode .pantools-ad-cleanup-scan {
  height: 58px !important;
  padding: 0 30px !important;
  font-size: 20px !important;
  gap: 10px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-delete {
  width: 180px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-scan {
  width: 177px !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
  box-shadow: 8px 8px 22px rgba(23, 100, 255, 0.16) !important;
}

body.pantools-app-mode .pantools-ad-cleanup-scan .svg-icon,
body.pantools-app-mode .pantools-ad-cleanup-delete .svg-icon {
  width: 24px !important;
  height: 24px !important;
}

body.pantools-app-mode .netdisk-mount-provider.active,
body.pantools-app-mode .netdisk-mount-provider:hover {
  color: #1764ff !important;
  background: #eaf2ff !important;
  border-color: #bfd7ff !important;
  box-shadow: 0 0 0 3px rgba(23, 100, 255, 0.14) !important;
}

body.pantools-app-mode .netdisk-mount-cookie-mode {
  color: #1764ff !important;
  background: #eaf2ff !important;
  border-color: #bfd7ff !important;
}

body.pantools-app-mode .netdisk-mount-panel .modal-foot .primary,
body.pantools-app-mode .netdisk-mount-panel .modal-foot .primary:hover {
  background: #1764ff !important;
  border-color: #1764ff !important;
  box-shadow: 0 12px 24px rgba(23, 100, 255, 0.18) !important;
}

body.pantools-app-mode .pantools-unbind-modal {
  align-items: center !important;
  justify-content: center !important;
  background: rgba(16, 24, 40, 0.46) !important;
  backdrop-filter: blur(8px) !important;
}

body.pantools-app-mode .pantools-action-modal .pantools-unbind-panel,
body.pantools-app-mode .pantools-unbind-panel {
  width: 600px !important;
  height: 338px !important;
  max-width: calc(100vw - 48px) !important;
  max-height: calc(100vh - 48px) !important;
  display: grid !important;
  grid-template-rows: 78px minmax(0, 1fr) 76px !important;
  padding: 0 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 24px 58px rgba(16, 24, 40, 0.28) !important;
}

body.pantools-app-mode .pantools-unbind-panel .modal-head {
  min-height: 78px !important;
  padding: 0 34px !important;
  border-bottom: 0 !important;
}

body.pantools-app-mode .pantools-unbind-panel .modal-head h2 {
  font-size: 20px !important;
  line-height: 26px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-unbind-panel .icon-close {
  width: 30px !important;
  height: 30px !important;
  font-size: 30px !important;
}

body.pantools-app-mode .pantools-unbind-panel .pantools-modal-body {
  display: grid !important;
  place-items: center !important;
  padding: 0 34px !important;
}

body.pantools-app-mode .pantools-unbind-confirm {
  gap: 26px !important;
  padding: 0 !important;
}

body.pantools-app-mode .pantools-unbind-confirm > span {
  width: 56px !important;
  height: 56px !important;
}

body.pantools-app-mode .pantools-unbind-confirm .svg-icon {
  width: 52px !important;
  height: 52px !important;
}

body.pantools-app-mode .pantools-unbind-confirm p {
  font-size: 16px !important;
  line-height: 1.45 !important;
}

body.pantools-app-mode .pantools-unbind-confirm strong {
  font-weight: 700 !important;
}

body.pantools-app-mode .pantools-unbind-panel .modal-foot {
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 16px !important;
  padding: 0 36px 30px !important;
  border-top: 0 !important;
}

body.pantools-app-mode .pantools-unbind-panel .modal-foot button {
  width: auto !important;
  min-width: 86px !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 20px !important;
  border-radius: 7px !important;
  font-size: 16px !important;
}

body.pantools-app-mode .pantools-unbind-panel .modal-foot .secondary {
  color: #475467 !important;
  background: #ffffff !important;
  border: 1px solid #d6e0ee !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-unbind-panel .modal-foot .danger-soft {
  color: #ff4d4f !important;
  background: #ffffff !important;
  border: 1px solid #ffd2d6 !important;
  box-shadow: none !important;
}

/* Match the reference's physical scale on PanBox's 125%-150% Windows display scale. */
body.pantools-app-mode .pantools-action-modal .pantools-ad-cleanup-panel,
body.pantools-app-mode .pantools-ad-cleanup-panel {
  width: 600px !important;
  height: 612px !important;
  max-width: calc(100vw - 32px) !important;
  max-height: calc(100vh - 32px) !important;
  gap: 12px !important;
  padding: 27px 24px 25px !important;
  border-radius: 11px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-panel .icon-close {
  top: 21px !important;
  right: 24px !important;
  width: 22px !important;
  height: 22px !important;
  font-size: 23px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-head h2 {
  font-size: 18px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head {
  margin: 27px 0 0 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head strong {
  font-size: 14px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head > div {
  gap: 5px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source-head > div span {
  width: 17px !important;
  height: 17px !important;
  font-size: 10px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-settings {
  height: 23px !important;
  gap: 5px !important;
  font-size: 12px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-settings .svg-icon {
  width: 12px !important;
  height: 12px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source {
  height: 37px !important;
  gap: 9px !important;
  padding: 0 12px !important;
  border-radius: 5px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source .svg-icon {
  width: 15px !important;
  height: 15px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-source strong {
  font-size: 13px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-results {
  border-radius: 5px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-results h3 {
  margin: 17px 0 0 12px !important;
  font-size: 14px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-result-body {
  inset: 40px 12px 12px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-empty {
  font-size: 12px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow {
  width: 313px !important;
  max-width: calc(100% - 32px) !important;
  gap: 13px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow > strong {
  font-size: 12px !important;
  line-height: 15px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow ol {
  gap: 11px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow li {
  grid-template-columns: 21px minmax(0, 1fr) !important;
  gap: 9px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow li > span {
  width: 21px !important;
  height: 21px !important;
  font-size: 11px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow b {
  font-size: 11px !important;
  line-height: 15px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-flow small {
  margin-top: 3px !important;
  font-size: 10px !important;
  line-height: 13px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-foot {
  grid-template-columns: minmax(0, 1fr) 120px 118px !important;
  gap: 12px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-delete,
body.pantools-app-mode .pantools-ad-cleanup-scan {
  height: 39px !important;
  padding: 0 20px !important;
  border-radius: 5px !important;
  font-size: 13px !important;
  gap: 7px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-delete {
  width: 120px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-scan {
  width: 118px !important;
}

body.pantools-app-mode .pantools-ad-cleanup-scan .svg-icon,
body.pantools-app-mode .pantools-ad-cleanup-delete .svg-icon {
  width: 16px !important;
  height: 16px !important;
}

body.pantools-app-mode .pantools-account-head {
  flex-wrap: nowrap !important;
  gap: 7px !important;
  padding: 0 1px !important;
}

body.pantools-app-mode .pantools-account-head h2,
body.pantools-app-mode .pantools-account-head > span {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-privacy-toggle {
  min-width: 72px !important;
  height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  margin-left: auto !important;
  padding: 0 8px !important;
  color: #1764ff !important;
  background: #f4f8ff !important;
  border: 1px solid #bfd7ff !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-privacy-toggle:hover,
body.pantools-app-mode .pantools-privacy-toggle.active {
  color: #ffffff !important;
  background: #1764ff !important;
  border-color: #1764ff !important;
}

body.pantools-app-mode .pantools-privacy-toggle b {
  font-size: inherit !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-privacy-toggle .svg-icon {
  width: 13px !important;
  height: 13px !important;
}

body.pantools-app-mode .pantools-account-info .pantools-account-space {
  max-width: 132px !important;
  overflow: hidden !important;
  padding: 0 !important;
  color: #667085 !important;
  background: transparent !important;
  border-radius: 0 !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-account-logo:has(.pantools-provider-logo-baidu),
body.pantools-app-mode .pantools-current-logo:has(.pantools-provider-logo-baidu) {
  overflow: hidden !important;
  background: #ffffff !important;
  border-radius: 50% !important;
}

body.pantools-app-mode .pantools-account-logo .pantools-provider-logo-baidu,
body.pantools-app-mode .pantools-current-logo .pantools-provider-logo-baidu {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  transform: scale(2.25) !important;
  transform-origin: center !important;
}

/* Keep the ad-cleanup settings dialog at the same scale as its parent dialog. */
body.pantools-app-mode .pantools-ad-settings-panel {
  width: 600px !important;
  height: 612px !important;
  max-width: calc(100vw - 32px) !important;
  max-height: calc(100vh - 32px) !important;
  grid-template-rows: auto auto auto auto minmax(36px, 1fr) !important;
  gap: 14px !important;
  padding: 27px 24px 25px !important;
  border-radius: 11px !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-ad-settings-panel,
body.pantools-app-mode .pantools-ad-settings-panel h2,
body.pantools-app-mode .pantools-ad-settings-panel strong,
body.pantools-app-mode .pantools-ad-settings-panel b,
body.pantools-app-mode .pantools-ad-settings-panel button,
body.pantools-app-mode .pantools-ad-settings-panel label {
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-settings-panel .icon-close {
  top: 21px !important;
  right: 24px !important;
  width: 22px !important;
  height: 22px !important;
  font-size: 23px !important;
  font-weight: 300 !important;
}

body.pantools-app-mode .pantools-ad-settings-panel header h2 {
  font-size: 18px !important;
  line-height: 22px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-settings-group {
  gap: 8px !important;
}

body.pantools-app-mode .pantools-ad-settings-group > strong {
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-settings-group input[type="text"],
body.pantools-app-mode .pantools-ad-settings-group > input {
  height: 32px !important;
  padding: 0 10px !important;
  border-radius: 5px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-settings-tags {
  min-height: 62px !important;
  max-height: 96px !important;
  gap: 6px !important;
  padding: 8px !important;
  border-radius: 5px !important;
  overflow: auto !important;
}

body.pantools-app-mode #pantoolsAdKeywordTags .pantools-ad-settings-tags {
  min-height: 86px !important;
}

body.pantools-app-mode .pantools-ad-settings-tags button {
  height: 22px !important;
  padding: 0 7px !important;
  border-radius: 4px !important;
  font-size: 11px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-settings-options {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

body.pantools-app-mode .pantools-ad-settings-options label {
  min-height: 78px !important;
  grid-template-columns: minmax(0, 1fr) 18px !important;
  gap: 6px !important;
  padding: 12px 10px !important;
  border-radius: 5px !important;
}

body.pantools-app-mode .pantools-ad-settings-options b {
  font-size: 12px !important;
  line-height: 16px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-settings-options small {
  margin-top: 5px !important;
  font-size: 10px !important;
  line-height: 14px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-settings-options input {
  width: 16px !important;
  height: 16px !important;
}

body.pantools-app-mode .pantools-ad-settings-panel footer {
  align-self: end !important;
  gap: 8px !important;
  margin-top: 0 !important;
}

body.pantools-app-mode .pantools-ad-settings-panel footer button {
  height: 36px !important;
  min-width: 78px !important;
  padding: 0 14px !important;
  border-radius: 5px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-ad-settings-panel footer .secondary {
  min-width: 58px !important;
}

body.pantools-app-mode .pantools-account-logo:has(.pantools-provider-logo-quark),
body.pantools-app-mode .pantools-current-logo:has(.pantools-provider-logo-quark) {
  overflow: hidden !important;
  background: #ffffff !important;
  border-radius: 50% !important;
}

body.pantools-app-mode .pantools-account-logo .pantools-provider-logo-quark,
body.pantools-app-mode .pantools-current-logo .pantools-provider-logo-quark {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  transform: scale(1.18) !important;
  transform-origin: center !important;
}

/* Account rail: show complete capacity data and keep Add Account after the list. */
body.pantools-app-mode .pantools-account-pool {
  padding-bottom: 12px !important;
}

body.pantools-app-mode .pantools-account-list {
  flex: 0 1 auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.pantools-app-mode .pantools-account-capacity {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 5px !important;
  width: 100% !important;
  min-width: 0 !important;
}

body.pantools-app-mode .pantools-account-info .pantools-account-space,
body.pantools-app-mode .pantools-account-info .pantools-account-free {
  min-width: 0 !important;
  max-width: none !important;
  overflow: hidden !important;
  padding: 0 !important;
  color: #667085 !important;
  background: transparent !important;
  border-radius: 0 !important;
  font-size: 9px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-account-info .pantools-account-free {
  flex: 0 0 auto !important;
  color: #98a2b3 !important;
}

body.pantools-app-mode .pantools-account-pool > .pantools-add-account {
  position: static !important;
  inset: auto !important;
  flex: 0 0 34px !important;
  align-self: stretch !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 34px !important;
  height: 34px !important;
  margin: 50px 0 0 !important;
  padding: 0 12px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  box-shadow: 0 8px 20px rgba(23, 100, 255, 0.16) !important;
}

body.pantools-app-mode .pantools-account-pool > .pantools-add-account .svg-icon {
  width: 14px !important;
  height: 14px !important;
  stroke-width: 1.8 !important;
}

body.pantools-app-mode .pantools-account-card {
  position: relative !important;
  cursor: grab !important;
}

body.pantools-app-mode .pantools-account-card:active {
  cursor: grabbing !important;
}

body.pantools-app-mode .pantools-account-card.dragging {
  opacity: .58 !important;
  transform: scale(.985) !important;
}

body.pantools-app-mode .pantools-account-card.drop-before::after,
body.pantools-app-mode .pantools-account-card.drop-after::after {
  content: "" !important;
  position: absolute !important;
  left: 8px !important;
  right: 8px !important;
  height: 2px !important;
  border-radius: 99px !important;
  background: #2563eb !important;
}

body.pantools-app-mode .pantools-account-card.drop-before::after {
  top: -5px !important;
}

body.pantools-app-mode .pantools-account-card.drop-after::after {
  bottom: -5px !important;
}

body.pantools-app-mode .pantools-account-remark-editor {
  display: none !important;
  grid-column: 1 / -1 !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 6px !important;
  width: 100% !important;
  padding-top: 8px !important;
}

body.pantools-app-mode .pantools-account-card.remark-open .pantools-account-remark-editor {
  display: grid !important;
}

body.pantools-app-mode .pantools-account-remark-editor textarea {
  width: 100% !important;
  min-width: 0 !important;
  height: 96px !important;
  padding: 7px 8px !important;
  resize: vertical !important;
  border: 1px solid #cfe0ff !important;
  border-radius: 7px !important;
  color: #1f2433 !important;
  background: #fff !important;
  font-size: 9px !important;
  line-height: 1.45 !important;
  outline: none !important;
}

body.pantools-app-mode .pantools-account-remark-editor button {
  align-self: end !important;
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 10px !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .pantools-account-remark-editor small {
  grid-column: 1 / 3 !important;
  color: #98a2b3 !important;
  font-size: 10px !important;
  line-height: 1.45 !important;
}

/* Refine import, share actions, operation previews and the empty account rail. */
body.pantools-app-mode .transfer-import-template-data {
  grid-template-columns: minmax(0, 1fr) !important;
}

body.pantools-app-mode .transfer-import-template-data > section {
  min-width: 0 !important;
}

body.pantools-app-mode .transfer-import-template-data [hidden] {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 126px 134px repeat(3, minmax(0, 1fr)) !important;
  align-items: center !important;
  width: 100% !important;
  gap: 7px !important;
  margin-top: 8px !important;
  overflow: visible !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions > button {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  padding: 0 8px !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions .pantools-share-state {
  display: none !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy #netdiskOperationPreview,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move #netdiskOperationPreview {
  padding: 14px !important;
  color: #475467 !important;
  background: #fbfcfe !important;
  text-align: left !important;
  font-size: 12px !important;
  line-height: 20px !important;
}

body.pantools-app-mode .pantools-account-list:has(.pantools-provider-account-empty) {
  flex: 0 0 150px !important;
  min-height: 150px !important;
  max-height: 150px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.pantools-app-mode .pantools-provider-account-empty {
  min-height: 150px !important;
  height: 150px !important;
  transform: none !important;
}

body.pantools-app-mode .pantools-account-list:has(.pantools-provider-account-empty) + .pantools-add-account {
  margin-top: 50px !important;
}

/* PanBox 2026-08-27: fast folder pickers and compact batch dialogs. */
body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-head h2 {
  top: 28px !important;
  left: 30px !important;
  font-size: 16px !important;
  line-height: 22px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .pantools-new-folder-field > span {
  font-size: 13px !important;
  line-height: 18px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .pantools-new-folder-field input {
  min-height: 38px !important;
  height: 38px !important;
  padding: 0 12px !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .pantools-new-folder-field small {
  font-size: 11px !important;
  line-height: 17px !important;
  font-weight: 400 !important;
  text-align: left !important;
}

body.pantools-app-mode .pantools-action-modal .modal-panel.pantools-new-folder-modal-panel .modal-foot button {
  min-height: 36px !important;
  height: 36px !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-feature-head {
  min-height: 86px !important;
  padding-top: 18px !important;
  padding-bottom: 12px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-feature-head {
  min-height: 58px !important;
  padding-top: 18px !important;
  padding-bottom: 4px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-feature-head h2,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-feature-head h2 {
  margin: 0 !important;
  font-size: 20px !important;
  line-height: 24px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-feature-head h2 {
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-preserve-title strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-preserve-title small {
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-preserve-title {
  align-self: start !important;
  width: 286px !important;
  max-width: 286px !important;
  margin: 0 36px 0 auto !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-preserve-title small {
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-drawer-path.is-root,
body.pantools-app-mode .netdisk-file-drawer-path.is-root {
  grid-template-columns: minmax(0, 1fr) auto !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-folder-list,
body.pantools-app-mode .netdisk-file-side-panel .netdisk-file-folder-list,
body.pantools-app-mode .netdisk-operation-side-panel .netdisk-file-folder-list {
  display: block !important;
  text-align: left !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-folder-row,
body.pantools-app-mode .netdisk-file-side-panel .netdisk-file-folder-row,
body.pantools-app-mode .netdisk-operation-side-panel .netdisk-file-folder-row {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) 48px !important;
  align-items: center !important;
  justify-items: start !important;
  text-align: left !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-folder-row strong,
body.pantools-app-mode .netdisk-file-side-panel .netdisk-file-folder-row strong,
body.pantools-app-mode .netdisk-operation-side-panel .netdisk-file-folder-row strong {
  justify-self: start !important;
  min-width: 0 !important;
  font-weight: 400 !important;
  text-align: left !important;
}

body.pantools-app-mode .pantools-feature-panel .pantools-folder-picker-panel .netdisk-file-folder-row > span:last-child,
body.pantools-app-mode .netdisk-file-side-panel .netdisk-file-folder-row > span:last-child,
body.pantools-app-mode .netdisk-operation-side-panel .netdisk-file-folder-row > span:last-child {
  justify-self: end !important;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-drawer-path button,
body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-create-row button,
body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-drawer-foot button {
  font-size: 13px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-panel .panflow-toggle,
body.pantools-app-mode .pantools-preserve-title .panflow-toggle {
  transition: background-color 160ms cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 160ms ease-out !important;
}

body.pantools-app-mode .pantools-feature-panel .panflow-toggle > span,
body.pantools-app-mode .pantools-preserve-title .panflow-toggle > span {
  transition: transform 160ms cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  justify-items: start !important;
  gap: 10px !important;
  margin-top: 10px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-field-grid,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-action-grid {
  width: 100% !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-action-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 112px) !important;
  justify-content: start !important;
  justify-items: stretch !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-field-grid > label,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-action-grid > button {
  width: 112px !important;
  min-width: 0 !important;
  max-width: 112px !important;
  height: 36px !important;
  min-height: 36px !important;
  margin: 0 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-action-grid > button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 0 10px !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .pantools-share-action-grid .svg-icon {
  width: 14px !important;
  height: 14px !important;
}

body.pantools-app-mode [data-pantools-file-action="refresh"].is-loading .svg-icon {
  animation: pantools-refresh-spin 700ms linear infinite;
}

@keyframes pantools-refresh-spin {
  to { transform: rotate(360deg); }
}

/* PanBox 2026-08-27: compact rename rule configuration dialog. */
body.pantools-app-mode .pantools-rule-modal {
  padding: 22px !important;
}

body.pantools-app-mode .pantools-rule-panel {
  width: min(600px, calc(100vw - 44px)) !important;
  height: min(560px, calc(100vh - 44px)) !important;
  min-height: 0 !important;
  max-height: calc(100vh - 44px) !important;
  grid-template-rows: 54px 40px auto minmax(0, 1fr) 54px !important;
  padding: 0 !important;
  border-radius: 10px !important;
}

body.pantools-app-mode .pantools-rule-panel > header {
  grid-row: 1 !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 0 24px !important;
}

body.pantools-app-mode .pantools-rule-panel > header strong {
  font-size: 18px !important;
  line-height: 24px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-rule-panel > header span {
  margin-left: 8px !important;
  padding: 5px 9px !important;
  font-size: 12px !important;
  line-height: 18px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-rule-topbar {
  grid-row: 2 !important;
  min-height: 40px !important;
  gap: 12px !important;
  padding: 0 24px 8px !important;
}

body.pantools-app-mode .pantools-rule-topbar > span {
  margin-right: auto !important;
}

body.pantools-app-mode .pantools-rule-topbar > span,
body.pantools-app-mode .pantools-rule-topbar .text-button {
  font-size: 12px !important;
  line-height: 18px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-rule-drop {
  grid-row: 3 !important;
  margin: 0 24px 10px !important;
  padding: 11px 12px !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .pantools-rule-drop > strong {
  font-size: 12px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-rule-type-grid {
  gap: 7px !important;
  margin-top: 8px !important;
}

body.pantools-app-mode .pantools-rule-type-grid button {
  min-height: 30px !important;
  height: 30px !important;
  padding: 0 10px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-rule-list {
  grid-row: 4 !important;
  min-height: 0 !important;
  margin: 0 24px !important;
  padding: 12px 0 !important;
  overflow: auto !important;
}

body.pantools-app-mode .pantools-rule-empty {
  min-height: 120px !important;
  font-size: 13px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-rule-panel .netdisk-rule-row,
body.pantools-app-mode .pantools-rule-panel .netdisk-rule-row input,
body.pantools-app-mode .pantools-rule-panel .netdisk-rule-row select,
body.pantools-app-mode .pantools-rule-groups button {
  font-size: 12px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-rule-panel > footer {
  grid-row: 5 !important;
  min-height: 54px !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 9px 24px !important;
}

body.pantools-app-mode .pantools-rule-panel > footer button {
  min-width: 70px !important;
  height: 36px !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}
/* Yijia Netdisk Assistant: accepted original ultra-light gray navigation rail. */
body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar {
  background: linear-gradient(180deg, #fbfcfd 0%, #f8fafb 50%, #f4f6f8 100%) !important;
  color: #5f6f86 !important;
  border-right-color: #e5eaf0 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar::after {
  background: #e1e7ee !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-brand::after,
body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar-divider {
  background: #dfe5ec !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-brand > span {
  background: rgba(255, 255, 255, 0.72) !important;
  box-shadow: inset 0 0 0 1px rgba(218, 225, 233, 0.85) !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action {
  color: #5f6f86 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem b,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action span,
body.pantools-app-mode .pantools-shell .netdisk-pan-navitem .netdisk-pan-index {
  color: inherit !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem:hover,
body.pantools-app-mode .pantools-shell .netdisk-pan-navitem:focus-visible,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action:hover,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action:focus-visible {
  color: #344054 !important;
  background: rgba(255, 255, 255, 0.78) !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem.active {
  color: #1764ff !important;
  background: #ffffff !important;
  box-shadow: inset 4px 0 0 #1764ff, 0 7px 16px rgba(74, 92, 120, 0.12) !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem.active .netdisk-pan-index {
  color: #1764ff !important;
  background: #eaf2ff !important;
}

/* Restore the accepted compact batch-share controls. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .transfer-import-simple-actions.pantools-share-actions {
  display: grid !important;
  grid-template-rows: 36px 36px !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 500px !important;
  max-width: calc(100% - 4px) !important;
  min-width: 0 !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-actions > .pantools-share-field-grid,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-actions > .pantools-share-action-grid {
  display: contents !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-repeat-control {
  grid-column: 1 / 4 !important;
  grid-row: 1 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-code-control {
  grid-column: 4 / 7 !important;
  grid-row: 1 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-field-grid > label {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 58px !important;
  align-items: center !important;
  gap: 8px !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 36px !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 0 8px 0 11px !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 7px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-field-grid > label span {
  min-width: 0 !important;
  color: #475467 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 18px !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page input#pantoolsShareRepeatCount,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page input#pantoolsShareExtractCode {
  justify-self: end !important;
  width: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  height: 26px !important;
  min-height: 26px !important;
  margin: 0 !important;
  padding: 0 6px !important;
  border: 1px solid #d6e0ee !important;
  border-radius: 7px !important;
  background: #ffffff !important;
  color: #101828 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 26px !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-action-grid > button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  margin: 0 !important;
  padding: 0 10px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 18px !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page #netdiskPreviewOperation {
  grid-column: 1 / 3 !important;
  grid-row: 2 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page #netdiskRunOperation {
  grid-column: 3 / 5 !important;
  grid-row: 2 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page #shareModeExportTableBtn {
  grid-column: 5 / 7 !important;
  grid-row: 2 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-action-grid .svg-icon {
  width: 14px !important;
  height: 14px !important;
  flex: 0 0 14px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page #shareModeState {
  display: none !important;
}

/* Final batch-share action alignment: left aligned, symmetric and never stretched apart. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .transfer-import-simple-actions.pantools-share-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  justify-items: start !important;
  align-items: start !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 12px 0 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-actions > .pantools-share-field-grid,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-actions > .pantools-share-action-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-repeat-control,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-code-control {
  grid-column: auto !important;
  grid-row: auto !important;
  width: 154px !important;
  min-width: 154px !important;
  max-width: 154px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-action-grid > button,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page #netdiskPreviewOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page #shareModeExportTableBtn {
  grid-column: auto !important;
  grid-row: auto !important;
  width: 112px !important;
  min-width: 112px !important;
  max-width: 112px !important;
}

/* Final transfer-title switch layout: keep helper copy clear of the close button. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-feature-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 352px 28px !important;
  align-items: start !important;
  gap: 12px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-feature-head > div {
  min-width: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-preserve-title {
  width: 352px !important;
  max-width: 352px !important;
  min-width: 0 !important;
  margin: 0 !important;
  align-self: start !important;
  grid-template-columns: 30px minmax(0, 1fr) !important;
  grid-template-areas:
    "switch title"
    "switch desc" !important;
  column-gap: 10px !important;
  row-gap: 4px !important;
  align-items: center !important;
  overflow: visible !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-preserve-title .panflow-toggle {
  width: 30px !important;
  height: 18px !important;
  flex: 0 0 30px !important;
  align-self: center !important;
  justify-self: center !important;
  margin-top: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-preserve-title .panflow-toggle > span {
  left: 2px !important;
  top: 2px !important;
  width: 14px !important;
  height: 14px !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-preserve-title .panflow-toggle.checked > span,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-preserve-title .panflow-toggle-input:checked + .panflow-toggle > span {
  transform: translate3d(12px, 0, 0) !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-preserve-title strong {
  min-width: 0 !important;
  font-size: 14px !important;
  line-height: 18px !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-preserve-title small {
  min-width: 0 !important;
  max-width: 100% !important;
  font-size: 11px !important;
  line-height: 16px !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-bulk-drive-transfer .pantools-feature-head .icon-close {
  justify-self: end !important;
  width: 28px !important;
  height: 28px !important;
  font-size: 24px !important;
}

/* Keep multi-selected folders readable in move, copy and rename dialogs. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-list,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-list,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-list {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  height: 50px !important;
  min-height: 50px !important;
  padding: 0 14px !important;
  overflow-x: hidden !important;
  overflow-y: hidden !important;
  white-space: nowrap !important;
  border-radius: 8px !important;
  background: #fafafa !important;
  box-sizing: border-box !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-list > div,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-list > div,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-list > div {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 36px !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-copy .pantools-share-selected-list > div strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-move .pantools-share-selected-list > div strong,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-rename .pantools-share-selected-list > div strong {
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  writing-mode: horizontal-tb !important;
  font-size: 14px !important;
  line-height: 20px !important;
  font-weight: 400 !important;
}

body.pantools-app-mode .pantools-group-transfer-page,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) {
  position: relative;
  display: block;
  height: 100%;
  min-height: 0;
  background: transparent;
  overflow: hidden;
}

body.pantools-app-mode .pantools-group-transfer-page::after,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench::after,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench)::after {
  content: none !important;
  display: none !important;
}

body.pantools-app-mode .pantools-group-transfer-shell,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench > .netdisk-pan-file-workspace,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) > .pantools-my-shares-workbench {
  min-width: 0;
  height: 100%;
  min-height: 0;
  overflow: hidden;
  color: #101828;
  background: transparent;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-file-browser,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-main {
  min-height: 0 !important;
  background: transparent !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .pantools-file-toolbar,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-file-breadcrumb,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .pantools-file-statusbar,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-filter-row,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-commandbar {
  background-color: #ffffff !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table {
  background-color: var(--panbox-workspace-bg) !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable table,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable thead,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable tbody,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable tr,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable th,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable td,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table thead,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table tbody,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table tr,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table th,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table td {
  background-color: #ffffff !important;
}

body.pantools-app-mode .pantools-group-transfer-head {
  position: relative;
  z-index: 3;
  height: 74px;
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 12px 26px;
  border-bottom: 1px solid var(--panbox-border-soft);
  background: #ffffff;
  box-shadow: var(--panbox-top-shadow);
}

body.pantools-app-mode .pantools-group-transfer-head h2 {
  margin: 0;
  color: #101828;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: 0;
}

body.pantools-app-mode .pantools-group-transfer-head p {
  margin: 5px 0 0;
  color: #667085;
  font-size: 13px;
  line-height: 1.3;
}

body.pantools-app-mode .pantools-group-top-status {
  min-width: 270px;
  height: 34px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  overflow: hidden;
  border: 1px solid #d8e3f2;
  border-radius: 999px;
  background: #ffffff;
}

body.pantools-app-mode .pantools-group-top-status span {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 12px;
  border-right: 1px solid #dfe8f5;
  color: #344054;
  font-size: 12px;
  line-height: 1;
}

body.pantools-app-mode .pantools-group-top-status span:last-child {
  border-right: 0;
}

body.pantools-app-mode .pantools-group-top-status b {
  color: #344054;
  font-weight: 700;
}

body.pantools-app-mode .pantools-group-top-status em {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #12a782;
  font-style: normal;
  font-weight: 700;
}

body.pantools-app-mode .pantools-group-top-status em::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: #12b886;
}

body.pantools-app-mode .pantools-group-top-status span.empty b,
body.pantools-app-mode .pantools-group-top-status span.empty em {
  color: #98a2b3;
}

body.pantools-app-mode .pantools-group-top-status span.empty em::before {
  background: #cbd5e1;
}

body.pantools-app-mode .pantools-group-account-strip {
  position: relative;
  z-index: 2;
  box-sizing: border-box;
  width: var(--pantools-group-strip-width);
  max-width: calc(100% - 52px);
  display: grid;
  grid-template-columns: repeat(3, 228px);
  justify-content: start;
  justify-items: center;
  gap: 4px;
  margin: 16px 26px;
  padding: 16px;
  border: 1px solid #d8e5f6;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: none;
}

body.pantools-app-mode .pantools-group-account-card {
  width: 228px;
  min-height: 88px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  justify-items: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.pantools-app-mode .pantools-group-account-main {
  min-width: 0;
  width: 188px;
  max-width: 188px;
  display: grid;
  gap: 7px;
}

body.pantools-app-mode .pantools-group-account-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body.pantools-app-mode .pantools-group-account-title strong {
  min-width: 0;
  color: #101828;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 400;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.pantools-app-mode .pantools-group-account-title small {
  flex: 0 0 auto;
  height: 22px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  border-radius: 999px;
  color: #1764ff;
  background: #eaf2ff;
  font-size: 12px;
  font-weight: 500;
}

body.pantools-app-mode .pantools-group-account-card select,
body.pantools-app-mode .pantools-group-path-row input {
  width: 100%;
  height: 34px;
  border: 1px solid #d4e0f0;
  border-radius: 7px;
  color: #101828;
  background: #ffffff;
  font-size: 13px;
  outline: none;
  box-shadow: none;
}

body.pantools-app-mode .pantools-group-account-card select {
  padding: 0 34px 0 12px;
}

body.pantools-app-mode .pantools-group-path-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px;
  gap: 8px;
}

body.pantools-app-mode .pantools-group-path-row input {
  padding: 0 12px;
}

body.pantools-app-mode .pantools-group-path-row button {
  width: 40px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #cfdced;
  border-radius: 7px;
  color: #ff8a00;
  background: #ffffff;
}

body.pantools-app-mode .pantools-group-path-row button .svg-icon {
  width: 19px;
  height: 19px;
}

body.pantools-app-mode .pantools-group-workbench {
  width: var(--pantools-group-strip-width);
  max-width: calc(100% - 52px);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0 26px;
  padding: 14px 0 18px;
  background: transparent;
}

body.pantools-app-mode .pantools-group-editor-card {
  min-width: 0;
  display: grid;
  gap: 8px;
}

body.pantools-app-mode .pantools-group-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 4px;
}

body.pantools-app-mode .pantools-group-section-head strong {
  color: #101828;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 800;
}

body.pantools-app-mode .pantools-group-section-head span {
  color: #667085;
  font-size: 11px;
  line-height: 1.2;
  white-space: normal;
}

body.pantools-app-mode .pantools-link-check-page {
  min-height: calc(100vh - 84px);
  background: #fff;
}

body.pantools-app-mode .pantools-link-check-shell {
  min-height: calc(100vh - 84px);
  display: grid;
  grid-template-rows: 92px 52px minmax(0, 1fr) 30px;
  color: #172033;
  background: #fff;
}

body.pantools-app-mode .pantools-link-check-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-width: 0;
  padding: 0 24px;
  border-bottom: 1px solid #e4eaf2;
}

body.pantools-app-mode .pantools-link-check-title span {
  display: block;
  margin-bottom: 4px;
  color: #8b97aa;
  font-size: 13px;
  line-height: 1.3;
}

body.pantools-app-mode .pantools-link-check-title h2 {
  margin: 0 0 4px;
  color: #172033;
  font-size: 26px;
  line-height: 1.15;
  font-weight: 500;
}

body.pantools-app-mode .pantools-link-check-title p {
  margin: 0;
  color: #7c889d;
  font-size: 14px;
  line-height: 1.35;
}

body.pantools-app-mode .pantools-link-check-commandbar {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 24px;
  border-bottom: 1px solid #e4eaf2;
  background: #fbfcfe;
}

body.pantools-app-mode .pantools-link-check-commandbar > span {
  margin-left: auto;
  color: #8b97aa;
  font-size: 14px;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-link-check-commandbar button,
body.pantools-app-mode .pantools-link-check-settings button,
body.pantools-app-mode .pantools-link-check-export button {
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 14px;
  border-radius: 7px;
  font-size: 15px;
  font-weight: 500;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-link-check-commandbar button.primary {
  color: #fff;
  background: #1764ff;
  border: 1px solid #1764ff;
  box-shadow: 0 6px 14px rgba(23, 100, 255, 0.14);
}

body.pantools-app-mode .pantools-link-check-commandbar button.secondary,
body.pantools-app-mode .pantools-link-check-settings button.secondary,
body.pantools-app-mode .pantools-link-check-export button.secondary {
  color: #536077;
  background: #fff;
  border: 1px solid #dbe3ee;
}

body.pantools-app-mode .pantools-link-check-commandbar button.danger {
  color: #ef4d59;
  border-color: #ffd0d4;
}

body.pantools-app-mode .pantools-link-check-commandbar .svg-icon,
body.pantools-app-mode .pantools-link-check-settings .svg-icon,
body.pantools-app-mode .pantools-link-check-export .svg-icon {
  width: 16px;
  height: 16px;
  stroke-width: 1.8;
}

body.pantools-app-mode .pantools-link-check-workarea {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(380px, 39%) minmax(0, 1fr);
  overflow: hidden;
}

body.pantools-app-mode .pantools-link-check-input-pane {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: 58px minmax(0, 1fr) 84px;
  border-right: 1px solid #e4eaf2;
}

body.pantools-app-mode .pantools-link-check-result-pane {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: 58px 60px minmax(0, 1fr);
}

body.pantools-app-mode .pantools-link-check-pane-head {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 0 24px;
  border-bottom: 1px solid #e4eaf2;
}

body.pantools-app-mode .pantools-link-check-result-pane > .pantools-link-check-pane-head {
  justify-content: space-between;
}

body.pantools-app-mode .pantools-link-check-pane-head > span,
body.pantools-app-mode .pantools-link-check-result-title > span {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #1764ff;
  background: #edf4ff;
  border-radius: 7px;
}

body.pantools-app-mode .pantools-link-check-pane-head .svg-icon {
  width: 18px;
  height: 18px;
  stroke-width: 1.8;
}

body.pantools-app-mode .pantools-link-check-pane-head strong {
  display: block;
  color: #172033;
  font-size: 17px;
  line-height: 1.2;
  font-weight: 500;
}

body.pantools-app-mode .pantools-link-check-pane-head small {
  display: block;
  margin-top: 4px;
  color: #98a2b3;
  font-size: 13px;
  line-height: 1.3;
}

body.pantools-app-mode .pantools-link-check-result-title {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
}

body.pantools-app-mode .pantools-link-check-export {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

body.pantools-app-mode .pantools-link-check-editor {
  position: relative;
  min-height: 0;
  background: #fff;
  border-top: 0;
}

body.pantools-app-mode .pantools-link-check-editor textarea {
  width: 100%;
  height: 100%;
  min-height: 0;
  resize: none;
  padding: 20px 18px 20px 56px;
  color: #344054;
  background: transparent;
  border: 0;
  outline: 0;
  font: 15px/1.85 Consolas, "Microsoft YaHei UI", sans-serif;
}

body.pantools-app-mode .pantools-link-check-editor textarea::placeholder {
  color: #a3adbd;
}

body.pantools-app-mode .pantools-link-check-gutter {
  position: absolute;
  inset: 0 auto 0 0;
  width: 44px;
  padding-top: 21px;
  color: #b1bac8;
  background: #fafbfc;
  border-right: 1px solid #edf1f6;
  font: 13px/1 Consolas, monospace;
  text-align: center;
  pointer-events: none;
}

body.pantools-app-mode .pantools-link-check-settings {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: end;
  gap: 12px;
  padding: 12px 20px 16px;
  background: #fbfcfe;
  border-top: 1px solid #e4eaf2;
}

body.pantools-app-mode .pantools-link-check-settings label {
  display: grid;
  gap: 7px;
  color: #68758a;
  font-size: 13px;
  font-weight: 500;
}

body.pantools-app-mode .pantools-link-check-settings input {
  width: 100%;
  height: 36px;
  padding: 0 11px;
  color: #344054;
  background: #fff;
  border: 1px solid #dbe3ee;
  border-radius: 7px;
  outline: 0;
  font-size: 14px;
}

body.pantools-app-mode .pantools-link-check-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid #e4eaf2;
  background: #fbfcfe;
}

body.pantools-app-mode .pantools-link-check-metrics > div {
  min-width: 0;
  display: grid;
  grid-template-columns: 9px minmax(0, 1fr);
  grid-template-areas: "dot label" "dot number";
  align-content: center;
  column-gap: 12px;
  padding: 0 20px;
  border-right: 1px solid #e4eaf2;
}

body.pantools-app-mode .pantools-link-check-metrics > div:last-child {
  border-right: 0;
}

body.pantools-app-mode .pantools-link-check-metrics i {
  grid-area: dot;
  width: 8px;
  height: 8px;
  align-self: center;
  border-radius: 999px;
  background: #aab3c1;
}

body.pantools-app-mode .pantools-link-check-metrics .valid i {
  background: #08a873;
}

body.pantools-app-mode .pantools-link-check-metrics .invalid i {
  background: #ef4d59;
}

body.pantools-app-mode .pantools-link-check-metrics .failed i {
  background: #e28a16;
}

body.pantools-app-mode .pantools-link-check-metrics span {
  grid-area: label;
  color: #8b97aa;
  font-size: 12px;
}

body.pantools-app-mode .pantools-link-check-metrics strong {
  grid-area: number;
  margin-top: 2px;
  color: #263249;
  font-size: 20px;
  line-height: 1;
  font-weight: 400;
}

body.pantools-app-mode .pantools-link-check-table {
  position: relative;
  width: 100%;
  min-width: 0;
  min-height: 0;
  margin: 0;
  overflow: auto;
  border: 0;
}

body.pantools-app-mode .pantools-link-check-table table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

body.pantools-app-mode .pantools-link-check-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  height: 40px;
  padding: 0 16px;
  color: #8b97aa;
  background: #f5f7fa;
  border-bottom: 1px solid #e4eaf2;
  font-size: 13px;
  font-weight: 400;
  text-align: left;
}

body.pantools-app-mode .pantools-link-check-table td {
  height: 50px;
  padding: 0 16px;
  color: #445168;
  border-bottom: 1px solid #edf1f6;
  font-size: 14px;
}

body.pantools-app-mode .pantools-link-check-table .table-url {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

body.pantools-app-mode .pantools-link-check-table.big-empty table,
body.pantools-app-mode .pantools-link-check-table.big-empty tbody,
body.pantools-app-mode .pantools-link-check-table.big-empty tr,
body.pantools-app-mode .pantools-link-check-table.big-empty td {
  height: 100%;
}

body.pantools-app-mode .pantools-link-check-table .accept-empty {
  min-height: 440px;
  display: grid;
  place-content: center;
  justify-items: center;
  color: #96a1b3;
  text-align: center;
}

body.pantools-app-mode .pantools-link-check-table .accept-empty .svg-icon {
  width: 36px;
  height: 36px;
  margin-bottom: 14px;
  color: #a9b9ce;
  stroke-width: 1.5;
}

body.pantools-app-mode .pantools-link-check-table .accept-empty strong {
  margin-bottom: 6px;
  color: #617088;
  font-size: 17px;
  font-weight: 400;
}

body.pantools-app-mode .pantools-link-check-table .accept-empty small {
  color: #98a2b3;
  font-size: 13px;
}

body.pantools-app-mode .pantools-link-check-statusbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 22px;
  color: #8b97aa;
  background: #f7f9fc;
  border-top: 1px solid #e4eaf2;
  font-size: 13px;
}

body.pantools-app-mode .pantools-link-check-statusbar .ready {
  color: #07825d;
}

body.pantools-app-mode .pantools-link-check-table .table-mini-copy {
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #536077;
  background: #fff;
  border: 1px solid #dbe3ee;
  border-radius: 6px;
}

body.pantools-app-mode .pantools-link-check-table .table-mini-copy .svg-icon {
  width: 15px;
  height: 15px;
}

body.pantools-app-mode .pantools-group-editor-card textarea {
  width: 100%;
  height: 360px;
  min-height: 360px;
  padding: 13px;
  border: 1px solid #c8dcff;
  border-radius: 8px;
  color: #344054;
  background: linear-gradient(#ffffff, #ffffff) padding-box,
    linear-gradient(135deg, rgba(23, 100, 255, 0.48), rgba(20, 184, 166, 0.22)) border-box;
  font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
  font-size: 13px;
  line-height: 1.55;
  resize: vertical;
  outline: none;
  box-shadow: 0 1px 0 rgba(23, 100, 255, 0.04), 0 0 0 3px rgba(23, 100, 255, 0.035);
}

body.pantools-app-mode .pantools-group-editor-card textarea:focus {
  border-color: #1764ff;
  box-shadow: 0 0 0 3px rgba(23, 100, 255, 0.1), 0 10px 26px rgba(23, 100, 255, 0.05);
}

body.pantools-app-mode .pantools-group-summary-row {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

body.pantools-app-mode .pantools-group-summary-box {
  height: 40px;
  min-width: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 0 13px;
  border: 1px solid #d8e5f6;
  border-radius: 8px;
  color: #344054;
  background: #fbfdff;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-group-summary-box > span {
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  display: grid;
  place-items: center;
  border-radius: 7px;
  color: #1764ff;
  background: #eaf2ff;
}

body.pantools-app-mode .pantools-group-summary-box > span .svg-icon {
  width: 16px;
  height: 16px;
}

body.pantools-app-mode .pantools-group-summary-box strong {
  min-width: 0;
  color: #344054;
  font-size: 14px;
  line-height: 1;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.pantools-app-mode .pantools-group-summary-box.provider {
  justify-content: center;
  gap: 8px;
}

body.pantools-app-mode .pantools-group-summary-box.provider strong b {
  color: #14a889;
  font-size: 14px;
  font-weight: 800;
}

body.pantools-app-mode .pantools-group-summary-box.provider .pantools-group-preview-logo {
  width: 22px;
  height: 22px;
  flex-basis: 22px;
  background: transparent;
  border-radius: 0;
}

body.pantools-app-mode .pantools-group-preview-logo .pantools-provider-logo-image {
  width: 21px !important;
  height: 21px !important;
  object-fit: contain;
}

body.pantools-app-mode .pantools-group-preview-logo .pantools-provider-logo-baidu {
  transform: scale(1.2);
}

body.pantools-app-mode .pantools-group-foot {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  min-height: 48px;
}

body.pantools-app-mode .pantools-group-foot > span {
  min-width: 0;
  color: #667085;
  font-size: 13px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: right;
}

body.pantools-app-mode .pantools-group-foot > div {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
}

body.pantools-app-mode .pantools-group-foot button {
  height: 40px;
  min-width: 112px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 18px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 800;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-group-foot button.primary {
  color: #ffffff;
  border: 1px solid #1764ff;
  background: #1764ff;
}

body.pantools-app-mode .pantools-group-foot button.secondary {
  color: #1764ff;
  border: 1px solid #d8e5f6;
  background: #ffffff;
}

body.pantools-app-mode .pantools-group-foot button.danger {
  color: #ff6670;
  border-color: #ffd3d6;
  background: #fff8f8;
}

body.pantools-app-mode .pantools-group-foot button:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

body.pantools-app-mode .pantools-group-transfer-page .netdisk-transfer-folder-drawer {
  position: fixed;
  inset: 0;
  z-index: 130;
  width: auto;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(16, 24, 40, 0.48);
  border: 0;
  box-shadow: none;
  backdrop-filter: blur(6px);
}

body.pantools-app-mode .pantools-group-transfer-page .netdisk-transfer-folder-drawer.hidden {
  display: none;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel {
  width: min(640px, calc(100vw - 48px));
  max-height: min(720px, calc(100vh - 48px));
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
  overflow: hidden;
  padding: 28px 32px 24px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 28px 72px rgba(16, 24, 40, 0.28);
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-side-head {
  min-height: 38px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0 0 18px;
  border: 0;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-side-head strong {
  color: #101828;
  font-size: 20px;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .icon-close {
  width: 32px;
  height: 32px;
  color: #98a2b3;
  background: transparent;
  border: 0;
  font-size: 26px;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-drawer-path {
  min-height: 44px;
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 0 0 12px;
  border-bottom: 1px solid #e6edf7;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-drawer-path.is-root {
  grid-template-columns: minmax(0, 1fr) auto;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-drawer-path .text-button {
  color: #98a2b3;
  background: transparent;
  border: 0;
  font-size: 14px;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-drawer-path strong {
  color: #101828;
  font-size: 16px;
  justify-self: start;
  text-align: left;
  font-weight: 400;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-folder-list {
  min-height: 300px;
  max-height: 410px;
  overflow: auto;
  padding: 16px 2px;
  text-align: left;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-folder-row {
  width: 100%;
  min-height: 46px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 48px;
  align-items: center;
  justify-content: stretch;
  justify-items: start;
  gap: 10px;
  padding: 0 12px;
  color: #101828;
  background: #fff;
  border: 0;
  border-radius: 7px;
  text-align: left;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-folder-row:hover {
  background: #f8fafc;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-folder-row strong {
  justify-self: start;
  text-align: left;
  font-weight: 400;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-folder-row .netdisk-pan-filemark {
  width: 22px;
  height: 22px;
  color: #ff8a00;
  background: transparent;
  border: 0;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-folder-row > span:last-child {
  justify-self: end;
  color: #667085;
  font-size: 14px;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-drawer-foot {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 18px 0 0;
  border-top: 0;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-drawer-foot > div:first-child {
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
  background: #fafafa;
  border-radius: 7px;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-drawer-foot > div:last-child {
  display: flex;
  gap: 10px;
}

body.pantools-app-mode .pantools-group-transfer-page .pantools-folder-picker-panel .netdisk-file-drawer-foot button {
  min-width: 88px;
  min-height: 38px;
  border-radius: 7px;
}

body.pantools-app-mode .pantools-my-shares-table,
body.pantools-app-mode .pantools-my-shares-table .data-table,
body.pantools-app-mode .pantools-my-shares-table .data-table thead,
body.pantools-app-mode .pantools-my-shares-table .data-table tbody,
body.pantools-app-mode .pantools-my-shares-table .data-table tr,
body.pantools-app-mode .pantools-my-shares-table .data-table th,
body.pantools-app-mode .pantools-my-shares-table .data-table td {
  box-shadow: none !important;
  filter: none !important;
}

body.pantools-app-mode .pantools-my-shares-table .data-table th {
  position: static !important;
  z-index: auto !important;
  border-bottom: 1px solid #e6edf7 !important;
}

/* PanBox - accepted article link replacement page */
body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page {
  position: relative;
  display: block;
  height: 100%;
  min-height: 0;
  padding: 0;
  overflow: hidden;
  background: transparent;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page::after {
  content: none !important;
  display: none !important;
}

body.pantools-app-mode .pantools-article-shell,
body.pantools-app-mode .pantools-article-shell * {
  box-sizing: border-box;
}

body.pantools-app-mode .pantools-article-shell {
  min-width: 0;
  height: 100%;
  min-height: 0;
  overflow: hidden;
  color: #0f1f3a;
  background: transparent;
  position: relative;
}

body.pantools-app-mode .pantools-article-head {
  position: relative;
  z-index: 3;
  min-width: 0;
  height: 74px;
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 12px 26px;
  border-bottom: 1px solid var(--panbox-border-soft);
  background: #ffffff;
  box-shadow: var(--panbox-top-shadow);
}

body.pantools-app-mode .pantools-article-head h2 {
  margin: 0;
  color: #101828;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: 0;
}

body.pantools-app-mode .pantools-article-head p {
  margin: 5px 0 0;
  color: #667085;
  font-size: 13px;
  line-height: 1.3;
}

body.pantools-app-mode .pantools-article-shell .pantools-group-account-title strong {
  font-weight: 400;
}

body.pantools-app-mode .pantools-folder-picker-panel {
  width: min(640px, calc(100vw - 48px));
  max-height: min(720px, calc(100vh - 48px));
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
  overflow: hidden;
  padding: 28px 32px 24px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 28px 72px rgba(16, 24, 40, 0.28);
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-side-head {
  min-height: 38px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0 0 18px;
  border: 0;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-side-head strong {
  color: #101828;
  font-size: 20px;
}

body.pantools-app-mode .pantools-folder-picker-panel .icon-close {
  width: 32px;
  height: 32px;
  color: #98a2b3;
  background: transparent;
  border: 0;
  font-size: 26px;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-drawer-path {
  min-height: 44px;
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 0 0 12px;
  border-bottom: 1px solid #e6edf7;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-drawer-path.is-root {
  grid-template-columns: minmax(0, 1fr) auto;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-drawer-path .text-button {
  color: #98a2b3;
  background: transparent;
  border: 0;
  font-size: 14px;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-drawer-path strong {
  color: #101828;
  font-size: 16px;
  justify-self: start;
  text-align: left;
  font-weight: 400;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-folder-list {
  min-height: 300px;
  max-height: 410px;
  overflow: auto;
  padding: 16px 2px;
  text-align: left;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-folder-row {
  width: 100%;
  min-height: 46px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 48px;
  align-items: center;
  justify-content: stretch;
  justify-items: start;
  gap: 10px;
  padding: 0 12px;
  color: #101828;
  background: #fff;
  border: 0;
  border-radius: 7px;
  text-align: left;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-folder-row:hover {
  background: #f8fafc;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-folder-row strong {
  justify-self: start;
  overflow: hidden;
  color: #101828;
  font-size: 14px;
  font-weight: 400;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-folder-row .netdisk-pan-filemark {
  width: 22px;
  height: 22px;
  color: #ff8a00;
  background: transparent;
  border: 0;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-folder-row > span:last-child {
  justify-self: end;
  color: #667085;
  font-size: 14px;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-drawer-foot {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 18px 0 0;
  border-top: 0;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-drawer-foot > div:first-child {
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
  background: #fafafa;
  border-radius: 7px;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-drawer-foot > div:last-child {
  display: flex;
  gap: 10px;
}

body.pantools-app-mode .pantools-folder-picker-panel .netdisk-file-drawer-foot button {
  min-width: 88px;
  min-height: 38px;
  border-radius: 7px;
}

body.pantools-app-mode .pantools-article-dir-row input {
  width: 100%;
  height: 36px;
  min-width: 0;
  border: 1px solid #d7e3f4;
  border-radius: 7px;
  background: #fff;
  color: #173052;
  font-size: 15px;
  padding: 0 12px;
  outline: none;
}

body.pantools-app-mode .pantools-article-dir-row input:focus {
  border-color: #6a9dff;
  box-shadow: 0 0 0 3px rgba(33, 101, 255, 0.08);
}

body.pantools-app-mode .pantools-article-dir-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px;
  gap: 8px;
  margin-top: 8px;
}

body.pantools-app-mode .pantools-article-dir-row button,
body.pantools-app-mode .pantools-article-field-with-button button {
  width: 42px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #cfdced;
  border-radius: 8px;
  background: #fff;
  color: #ff8a00;
  cursor: pointer;
}

body.pantools-app-mode .pantools-article-dir-row button svg,
body.pantools-app-mode .pantools-article-field-with-button button svg {
  width: 19px;
  height: 19px;
}

body.pantools-app-mode .pantools-article-workarea {
  min-height: 0;
  height: 382px;
  display: grid;
  grid-template-columns: minmax(360px, 42%) minmax(420px, 1fr);
  border-bottom: 1px solid #dbe4f2;
}

body.pantools-app-mode .pantools-article-source-pane,
body.pantools-app-mode .pantools-article-settings-pane {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: 64px minmax(0, 1fr);
  background: #fff;
}

body.pantools-app-mode .pantools-article-source-pane {
  border-right: 1px solid #dbe4f2;
}

body.pantools-app-mode .pantools-article-settings-pane {
  background: #fbfcff;
}

body.pantools-app-mode .pantools-article-pane-head {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 0 28px;
  border-bottom: 1px solid #dbe4f2;
  background: #fff;
}

body.pantools-app-mode .pantools-article-pane-head > div {
  min-width: 0;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  grid-template-rows: auto auto;
  column-gap: 12px;
  align-items: center;
}

body.pantools-app-mode .pantools-article-pane-head > div > span {
  grid-row: 1 / 3;
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: #edf4ff;
  color: #2165ff;
}

body.pantools-app-mode .pantools-article-pane-head > div > span svg {
  width: 20px;
  height: 20px;
}

body.pantools-app-mode .pantools-article-pane-head strong {
  color: #071834;
  font-size: 19px;
  line-height: 1.2;
  font-weight: 500;
}

body.pantools-app-mode .pantools-article-pane-head small {
  color: #8492aa;
  font-size: 13px;
  line-height: 1.35;
}

body.pantools-app-mode .pantools-article-pane-head .icon-only {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #d7e3f4;
  border-radius: 7px;
  background: #fff;
  color: #60708a;
  cursor: pointer;
}

body.pantools-app-mode .pantools-article-source-body {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  align-content: start;
  gap: 14px;
  padding: 18px 28px 0;
}

body.pantools-app-mode .pantools-article-drop {
  width: 100%;
  height: 132px;
  justify-self: stretch;
  align-self: start;
  margin-top: 0;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 0 28px;
  border: 1px dashed #2165ff;
  border-radius: 8px;
  background: #f4f8ff;
  color: #173052;
  text-align: left;
  cursor: pointer;
}

body.pantools-app-mode .pantools-article-action-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

body.pantools-app-mode .pantools-article-action-row button {
  height: 38px;
  min-width: 118px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 16px;
  border-radius: 7px;
  border: 1px solid #d6e2f2;
  background: #fff;
  color: #40516d;
  font-size: 15px;
  cursor: pointer;
}

body.pantools-app-mode .pantools-article-action-row button.primary {
  border-color: #2165ff;
  background: #2165ff;
  color: #fff;
  box-shadow: 0 10px 24px rgba(33, 101, 255, 0.18);
}

body.pantools-app-mode .pantools-article-action-row button.danger {
  color: #ff8d94;
  border-color: #ffe2e5;
  background: #fff;
}

body.pantools-app-mode .pantools-article-action-row button:disabled {
  opacity: 0.52;
  cursor: default;
  box-shadow: none;
}

body.pantools-app-mode .pantools-article-action-row svg {
  width: 16px;
  height: 16px;
}

body.pantools-app-mode .pantools-article-drop span:first-child {
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: #fff;
  color: #2165ff;
}

body.pantools-app-mode .pantools-article-drop strong {
  display: block;
  margin-bottom: 6px;
  font-size: 16px;
  font-weight: 500;
  color: #173052;
}

body.pantools-app-mode .pantools-article-drop small {
  display: block;
  font-size: 13px;
  line-height: 1.35;
  color: #76859d;
}

body.pantools-app-mode .pantools-article-drop > svg {
  width: 20px;
  height: 20px;
  color: #8492aa;
}

body.pantools-app-mode .pantools-article-settings-grid {
  align-self: start;
  display: grid;
  grid-template-columns: repeat(2, 265px);
  gap: 18px 24px;
  padding: 26px 30px;
}

body.pantools-app-mode .pantools-article-settings-grid label {
  min-width: 0;
  display: grid;
  gap: 8px;
  color: #314160;
  font-size: 14px;
}

body.pantools-app-mode .pantools-article-settings-grid input,
body.pantools-app-mode .pantools-article-settings-grid select {
  width: 100%;
  height: 44px;
  border: 1px solid #d7e3f4;
  border-radius: 7px;
  background: #fff;
  color: #173052;
  font-size: 15px;
  padding: 0 14px;
  outline: none;
}

body.pantools-app-mode .pantools-article-field-with-button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px;
  gap: 8px;
}

body.pantools-app-mode .pantools-article-field-with-button input {
  width: 100%;
  height: 36px;
  border: 1px solid #cfdced;
  border-radius: 8px;
  color: #101828;
  font-size: 13px;
  padding: 0 12px;
}

body.pantools-app-mode .pantools-article-range {
  width: 265px;
  display: grid;
  grid-template-columns: 78px 22px 78px auto;
  align-items: center;
  gap: 8px;
}

body.pantools-app-mode .pantools-article-range input {
  width: 78px;
  text-align: center;
}

body.pantools-app-mode .pantools-article-range span,
body.pantools-app-mode .pantools-article-range em {
  color: #60708a;
  font-style: normal;
  text-align: center;
}

body.pantools-app-mode .pantools-article-task-drawer {
  position: fixed;
  right: 22px;
  bottom: 72px;
  z-index: 55;
  width: min(760px, calc(100vw - 360px));
  max-height: min(520px, calc(100vh - 160px));
  display: none;
  grid-template-rows: auto auto minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid #d7e3f4;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(26, 45, 82, 0.18);
}

body.pantools-app-mode .pantools-article-task-drawer.show {
  display: grid;
}

body.pantools-app-mode .pantools-article-task-drawer > header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 16px 18px;
  border-bottom: 1px solid #e5ecf7;
}

body.pantools-app-mode .pantools-article-task-drawer > header strong {
  display: block;
  margin-bottom: 4px;
  font-size: 17px;
  font-weight: 500;
  color: #071834;
}

body.pantools-app-mode .pantools-article-task-drawer > header span {
  font-size: 13px;
  color: #8492aa;
}

body.pantools-app-mode .pantools-article-task-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 14px 18px;
  background: #fbfdff;
  border-bottom: 1px solid #e5ecf7;
}

body.pantools-app-mode .pantools-article-task-step {
  min-width: 0;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  padding: 10px;
  border: 1px solid #e1e9f6;
  border-radius: 8px;
  background: #fff;
}

body.pantools-app-mode .pantools-article-task-step i {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #edf4ff;
  color: #2165ff;
  font-style: normal;
  font-size: 13px;
}

body.pantools-app-mode .pantools-article-task-step strong,
body.pantools-app-mode .pantools-article-task-step span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-article-task-step strong {
  font-size: 13px;
  font-weight: 500;
  color: #1c2c46;
}

body.pantools-app-mode .pantools-article-task-step span {
  margin-top: 3px;
  font-size: 12px;
  color: #8492aa;
}

body.pantools-app-mode .pantools-article-task-step.done i,
body.pantools-app-mode .pantools-article-tag.done {
  background: #ddf8ef;
  color: #08a678;
}

body.pantools-app-mode .pantools-article-task-step.running i {
  background: #2165ff;
  color: #fff;
}

body.pantools-app-mode .pantools-article-task-step.paused i,
body.pantools-app-mode .pantools-article-tag.paused {
  background: #fff1d8;
  color: #d98200;
}

body.pantools-app-mode .pantools-article-task-step.failed i,
body.pantools-app-mode .pantools-article-tag.failed {
  background: #ffe8eb;
  color: #e14b5a;
}

body.pantools-app-mode .pantools-article-task-table {
  min-height: 0;
  overflow: auto;
}

body.pantools-app-mode .pantools-article-task-table table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

body.pantools-app-mode .pantools-article-task-table th,
body.pantools-app-mode .pantools-article-task-table td {
  height: 42px;
  padding: 0 14px;
  border-bottom: 1px solid #eef2f8;
  text-align: left;
  font-size: 13px;
  color: #43536d;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.pantools-app-mode .pantools-article-task-table th {
  background: #f6f9fd;
  color: #7d8ba2;
  font-weight: 500;
}

body.pantools-app-mode .pantools-article-tag {
  display: inline-flex;
  align-items: center;
  height: 24px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 12px;
}

body.pantools-app-mode .pantools-article-tag.pending {
  background: #fff6e8;
  color: #d98200;
}

@media (max-width: 1220px) {
  body.pantools-app-mode .pantools-group-summary-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* PanBox main rail: keep every primary item aligned with the refined purple active state. */
body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar {
  width: 74px !important;
  padding: 18px 5px 16px !important;
  align-items: center !important;
  background: linear-gradient(180deg, #fbfcfd 0%, #f8fafb 50%, #f4f6f8 100%) !important;
  border-right: 1px solid #e5eaf0 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navgroup-flat {
  width: 64px !important;
  display: grid !important;
  justify-items: center !important;
  gap: 14px !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action {
  width: 64px !important;
  min-width: 64px !important;
  min-height: 58px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  justify-items: center !important;
  align-content: center !important;
  gap: 5px !important;
  padding: 6px 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #5f6f86 !important;
  text-align: center !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem b,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action span {
  color: inherit !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem .netdisk-pan-index {
  width: 24px !important;
  height: 24px !important;
  display: grid !important;
  place-items: center !important;
  color: inherit !important;
  background: transparent !important;
  border-radius: 7px !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem .svg-icon,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action svg {
  width: 22px !important;
  height: 22px !important;
  stroke-width: 2 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem:hover,
body.pantools-app-mode .pantools-shell .netdisk-pan-navitem:focus-visible,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action:hover,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action:focus-visible {
  color: #344054 !important;
  background: rgba(255, 255, 255, 0.78) !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem.active {
  color: #1764ff !important;
  background: #f0eaff !important;
  box-shadow: inset 4px 0 0 #7b61ff !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem.active .netdisk-pan-index {
  color: #1764ff !important;
  background: transparent !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar-bottom {
  width: 64px !important;
  display: grid !important;
  justify-items: center !important;
  gap: 14px !important;
}

/* PanBox accepted interaction polish: thin blue focus, compact blue active marks, unified account frame. */
body.pantools-app-mode input:focus,
body.pantools-app-mode select:focus,
body.pantools-app-mode textarea:focus,
body.pantools-app-mode .pantools-group-account-card select:focus,
body.pantools-app-mode .pantools-group-path-row input:focus,
body.pantools-app-mode .pantools-article-dir-row input:focus,
body.pantools-app-mode .pantools-article-settings-grid input:focus,
body.pantools-app-mode .pantools-article-settings-grid select:focus,
body.pantools-app-mode .pantools-article-field-with-button input:focus {
  border-color: #b8d4ff !important;
  box-shadow: 0 0 0 1px rgba(23, 100, 255, 0.12) !important;
  outline: none !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action,
body.pantools-app-mode .pantools-tool-category-item {
  position: relative !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem.active,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action.active {
  color: #1764ff !important;
  background: #eef5ff !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem.active::before,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action.active::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  width: 3px !important;
  height: 16px !important;
  border-radius: 999px !important;
  background: #1764ff !important;
  transform: translateY(-50%) !important;
}

body.pantools-app-mode .pantools-tool-category-item.active {
  color: #1764ff !important;
  background: #eaf2ff !important;
  box-shadow: none !important;
}

body.pantools-app-mode .pantools-tool-category-item.active::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  width: 3px !important;
  height: 18px !important;
  border-radius: 999px !important;
  background: #1764ff !important;
  transform: translateY(-50%) !important;
}

/* PanBox main rail compact pass: 2px smaller text/icons and tighter vertical rhythm. */
body.pantools-app-mode .pantools-shell .netdisk-pan-navgroup-flat,
body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar-bottom {
  gap: 10px !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action {
  min-height: 54px !important;
  gap: 3px !important;
  padding: 5px 0 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem b,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action span {
  font-size: 10px !important;
  line-height: 1.12 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem .svg-icon,
body.pantools-app-mode .pantools-shell .netdisk-pan-side-action svg {
  width: 20px !important;
  height: 20px !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-navitem .netdisk-pan-index {
  width: 22px !important;
  height: 22px !important;
}

/* PanBox main rail top spacing: reduce the avatar-to-first-nav gap. */
body.pantools-app-mode .pantools-shell .netdisk-pan-brand {
  min-height: 88px !important;
  margin-bottom: 2px !important;
  padding: 14px 0 6px !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-brand::after {
  margin-top: 10px !important;
}

/* PanBox shared workspace template. */
body.pantools-app-mode {
  --panbox-workspace-bg: #f5f6f8;
  --panbox-workspace-bottom: 36px;
  --panbox-workspace-line: #d3dbe6;
  --pantools-group-strip-width: 726px;
  --panbox-template-left: 26px;
  --panbox-template-divider-gap: 20px;
}

body.pantools-app-mode .tool-view:has(#toolGrid.tool-grid.netdisk-pan-grid),
body.pantools-app-mode .tool-view:has(#toolGrid.tool-grid.netdisk-pan-grid) .work-panel,
body.pantools-app-mode .tool-view:has(#toolGrid.tool-grid.netdisk-pan-grid) .tool-content,
body.pantools-app-mode #toolGrid.tool-grid.netdisk-pan-grid {
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

body.pantools-app-mode #toolGrid.tool-grid.netdisk-pan-grid > .netdisk-pan-shell.pantools-shell {
  gap: 0 !important;
  background: #f5f6f8 !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-sidebar,
body.pantools-app-mode .pantools-account-pool {
  background-color: #ffffff !important;
}

body.pantools-app-mode .pantools-shell > .netdisk-pan-main {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  position: relative !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border-left: 0 !important;
  overflow: hidden !important;
  background:
    linear-gradient(
      to bottom,
      var(--panbox-workspace-bg) 0,
      var(--panbox-workspace-bg) calc(100% - var(--panbox-workspace-bottom) - 1px),
      var(--panbox-workspace-line) calc(100% - var(--panbox-workspace-bottom) - 1px),
      var(--panbox-workspace-line) calc(100% - var(--panbox-workspace-bottom)),
      #ffffff calc(100% - var(--panbox-workspace-bottom)),
      #ffffff 100%
    ) 0 0 / 100% 100% no-repeat,
    var(--panbox-workspace-bg) !important;
}

body.pantools-app-mode .pantools-shell > .netdisk-pan-main:has(> .pantools-currentbar) {
  display: grid !important;
  grid-template-rows: 68px minmax(0, 1fr) !important;
  position: relative !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border-left: 0 !important;
  overflow: hidden !important;
  background:
    linear-gradient(
      to bottom,
      var(--panbox-workspace-bg) 0,
      var(--panbox-workspace-bg) calc(100% - var(--panbox-workspace-bottom) - 1px),
      var(--panbox-workspace-line) calc(100% - var(--panbox-workspace-bottom) - 1px),
      var(--panbox-workspace-line) calc(100% - var(--panbox-workspace-bottom)),
      #ffffff calc(100% - var(--panbox-workspace-bottom)),
      #ffffff 100%
    ) 0 0 / 100% 100% no-repeat,
    var(--panbox-workspace-bg) !important;
}

body.pantools-app-mode .pantools-shell > .netdisk-pan-main::after {
  content: none !important;
  display: none !important;
}

body.pantools-app-mode .pantools-shell > .netdisk-pan-main > * {
  position: relative !important;
  z-index: 1 !important;
  min-height: 0 !important;
}

body.pantools-app-mode .pantools-shell > .netdisk-pan-main > .panbox-version-badge {
  position: absolute !important;
  right: 24px !important;
  bottom: 0 !important;
  z-index: 4 !important;
}

body.pantools-app-mode .pantools-shell > .netdisk-pan-main > .pantools-currentbar {
  grid-row: 1 !important;
}

body.pantools-app-mode .pantools-shell > .netdisk-pan-main > .netdisk-pan-panelhost {
  grid-row: 2 !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
  background: transparent !important;
  background-color: transparent !important;
}

body.pantools-app-mode .pantools-shell .pantools-currentbar,
body.pantools-app-mode .pantools-group-transfer-head,
body.pantools-app-mode .pantools-file-toolbar,
body.pantools-app-mode .netdisk-file-breadcrumb,
body.pantools-app-mode .pantools-file-statusbar,
body.pantools-app-mode .netdisk-pan-embedded-head,
body.pantools-app-mode .netdisk-pan-embedded-log,
body.pantools-app-mode .pantools-my-shares-filter-row,
body.pantools-app-mode .pantools-my-shares-commandbar {
  position: relative !important;
  z-index: 2 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.embedded,
body.pantools-app-mode .pantools-group-transfer-page,
body.pantools-app-mode .netdisk-pan-embedded,
body.pantools-app-mode .netdisk-pan-embedded-content,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench),
body.pantools-app-mode .pantools-my-shares-workbench,
body.pantools-app-mode .netdisk-pan-file-workspace,
body.pantools-app-mode .netdisk-pan-file-browser {
  background: transparent !important;
  background-color: transparent !important;
}

body.pantools-app-mode .pantools-group-transfer-page,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) {
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.pantools-app-mode .pantools-group-transfer-shell,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench > .netdisk-pan-file-workspace,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) > .pantools-my-shares-workbench {
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  background-color: transparent !important;
}

body.pantools-app-mode .pantools-group-transfer-shell {
  position: relative !important;
}

body.pantools-app-mode .pantools-shell > .netdisk-pan-main::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: var(--panbox-workspace-bottom);
  left: min(
    calc(var(--panbox-template-left) + var(--pantools-group-strip-width) + var(--panbox-template-divider-gap)),
    calc(100% - 36px)
  );
  width: 0.5px;
  background: #e8edf4;
  pointer-events: none;
  z-index: 0;
}

body.pantools-app-mode .pantools-group-side-empty {
  position: absolute;
  top: 74px;
  right: 0;
  bottom: var(--panbox-workspace-bottom);
  left: min(
    calc(var(--panbox-template-left) + var(--pantools-group-strip-width) + var(--panbox-template-divider-gap) + 1px),
    calc(100% - 35px)
  );
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 0 24px;
  pointer-events: none;
  color: #98a2b3;
  text-align: center;
}

body.pantools-app-mode .pantools-group-side-empty span {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  margin-bottom: 10px;
  color: #98a2b3;
}

body.pantools-app-mode .pantools-group-side-empty .svg-icon {
  width: 40px;
  height: 40px;
  stroke-width: 1.7;
}

body.pantools-app-mode .pantools-group-side-empty strong {
  color: #536077;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 400;
}

body.pantools-app-mode .pantools-group-side-empty small {
  margin-top: 8px;
  color: #98a2b3;
  font-size: 13px;
  line-height: 1.4;
}

body.pantools-app-mode .panbox-version-badge {
  height: var(--panbox-workspace-bottom);
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  color: #7a3e00;
  font-size: 11px;
  line-height: 1;
  white-space: nowrap;
  pointer-events: none;
}

body.pantools-app-mode .panbox-version-badge span {
  height: 28px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0 12px;
  border-radius: 8px;
  color: #7a3e00;
  background: #fff0d7;
}

body.pantools-app-mode .panbox-version-badge i {
  width: 7px;
  height: 7px;
  display: inline-block;
  border-radius: 999px;
  background: #d7a257;
  animation: panbox-version-dot-pulse 1.45s ease-in-out infinite;
}

body.pantools-app-mode .panbox-version-badge em {
  color: #7a3e00;
  font-style: normal;
}

@keyframes panbox-version-dot-pulse {
  0%,
  100% {
    opacity: 0.35;
    transform: scale(0.86);
  }
  50% {
    opacity: 1;
    transform: scale(1);
  }
}

/* My netdisk: let the shared template draw the bottom strip; place status text on it. */
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .pantools-file-statusbar {
  height: var(--panbox-workspace-bottom) !important;
  min-height: var(--panbox-workspace-bottom) !important;
  padding: 0 30px !important;
  border-top: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
}

body.pantools-app-mode .pantools-group-account-strip,
body.pantools-app-mode .pantools-group-account-card,
body.pantools-app-mode .pantools-group-editor-card textarea,
body.pantools-app-mode .pantools-group-summary-card,
body.pantools-app-mode .pantools-group-action-row button,
body.pantools-app-mode .netdisk-pan-filetable thead,
body.pantools-app-mode .netdisk-pan-filetable th,
body.pantools-app-mode .pantools-my-shares-table .data-table thead,
body.pantools-app-mode .pantools-my-shares-table .data-table th,
body.pantools-app-mode input,
body.pantools-app-mode select,
body.pantools-app-mode textarea {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable table,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable thead,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable tbody,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable tr,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable th,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable td,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-main,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-filter-row,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-commandbar,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table thead,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table tbody,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table tr,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table th,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table td {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

/* My shares: keep the shared workspace template's bottom white strip visible. */
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) > .pantools-my-shares-workbench {
  height: calc(100% - var(--panbox-workspace-bottom)) !important;
  max-height: calc(100% - var(--panbox-workspace-bottom)) !important;
}

/* My netdisk: the file table header uses the accepted light gray strip. */
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable thead,
body.pantools-app-mode .pantools-shell .netdisk-pan-panelhost.file-workbench .netdisk-pan-filetable th {
  background: #f7f9fc !important;
  background-color: #f7f9fc !important;
}

/* My shares: show the accepted light gray table surface behind share rows. */
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table tbody,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table tr,
body.pantools-app-mode .netdisk-pan-embedded-content:has(.pantools-my-shares-workbench) .pantools-my-shares-table .data-table td {
  background: #f7f9fc !important;
  background-color: #f7f9fc !important;
}
/* Article link replacement: accepted compact left workbench with shared template divider. */
body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-shell {
  position: relative !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-group-account-strip {
  width: var(--pantools-group-strip-width) !important;
  max-width: calc(100% - 52px) !important;
  margin: 16px 26px 0 !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-workarea {
  width: var(--pantools-group-strip-width) !important;
  max-width: calc(100% - 52px) !important;
  height: auto !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 20px 26px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-source-pane,
body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-settings-pane {
  min-width: 0 !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-rows: auto 160px !important;
  gap: 8px !important;
  border: 0 !important;
  background: transparent !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-pane-head {
  min-width: 0 !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 12px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-pane-head > div {
  min-width: 0 !important;
  display: block !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-pane-head strong {
  display: block !important;
  color: #101828 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-pane-head small,
body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page #articleReplaceInlineState {
  display: block !important;
  margin-top: 3px !important;
  color: #667085 !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page #articleReplaceInlineState {
  margin: 0 0 1px !important;
  color: #64748b !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-source-body,
body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-settings-grid {
  height: 160px !important;
  min-height: 160px !important;
  overflow: hidden !important;
  border: 1px solid #bad2ff !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  box-shadow: 0 4px 12px rgba(23, 100, 255, 0.08) !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-source-body {
  display: block !important;
  padding: 10px 12px 12px !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-drop {
  width: 100% !important;
  height: 131px !important;
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  border: 1px dashed #1764ff !important;
  border-radius: 7px !important;
  background: #f7fbff !important;
  color: #10213f !important;
  text-align: left !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-drop span:first-child {
  width: 44px !important;
  height: 44px !important;
  border-radius: 8px !important;
  background: #eef5ff !important;
  color: #1764ff !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-drop strong {
  margin: 0 0 4px !important;
  color: #10213f !important;
  font-size: 14px !important;
  line-height: 18px !important;
  font-weight: 800 !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-drop small {
  color: #6d7d95 !important;
  font-size: 12px !important;
  line-height: 16px !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-drop > svg {
  width: 18px !important;
  height: 18px !important;
  color: #6e7d92 !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-settings-grid {
  align-self: auto !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-content: start !important;
  gap: 14px !important;
  padding: 14px !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-settings-grid label {
  min-width: 0 !important;
  display: grid !important;
  gap: 7px !important;
  color: #30415e !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-settings-grid input,
body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-settings-grid select {
  height: 34px !important;
  border: 1px solid #cbdcf4 !important;
  border-radius: 7px !important;
  background: #ffffff !important;
  color: #10213f !important;
  font-size: 13px !important;
  padding: 0 11px !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-field-with-button {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 38px !important;
  gap: 8px !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-field-with-button button {
  width: 38px !important;
  height: 34px !important;
  border: 1px solid #cbdcf4 !important;
  border-radius: 7px !important;
  background: #ffffff !important;
  color: #ff7a00 !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-field-with-button button svg {
  width: 17px !important;
  height: 17px !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-foot {
  width: var(--pantools-group-strip-width) !important;
  max-width: calc(100% - 52px) !important;
  margin: 12px 26px 0 !important;
  padding: 0 !important;
  min-height: 40px !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-side-empty {
  position: absolute !important;
  top: 74px !important;
  right: 0 !important;
  bottom: var(--panbox-workspace-bottom) !important;
  left: min(
    calc(var(--panbox-template-left) + var(--pantools-group-strip-width) + var(--panbox-template-divider-gap) + 1px),
    calc(100% - 35px)
  ) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  padding: 0 24px !important;
  pointer-events: none !important;
  color: #98a2b3 !important;
  text-align: center !important;
}

body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-task-drawer,
body.pantools-app-mode .pantools-accept-page.pantools-article-replace-page .pantools-article-task-drawer.show {
  display: none !important;
}

/* PanBox upload modal polish and transfer task saved-path column. */
.pantools-upload-modal-panel {
  width: min(640px, calc(100vw - 72px)) !important;
}

.pantools-upload-modal-layout {
  gap: 14px !important;
}

.pantools-upload-target {
  min-height: 50px !important;
  padding: 0 16px !important;
  justify-content: flex-start !important;
}

.pantools-upload-target i {
  flex: 0 0 auto !important;
  color: #ff9f1c !important;
}

.pantools-upload-target span {
  display: none !important;
}

.pantools-upload-target em {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #101828 !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 700 !important;
}

.pantools-upload-target b,
.pantools-upload-target small {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pantools-upload-target b {
  color: #101828 !important;
  font-size: 14px !important;
}

.pantools-upload-target small {
  color: #8a96ad !important;
  font-size: 12px !important;
}

.pantools-upload-list {
  gap: 8px !important;
}

.pantools-upload-list .compact-result {
  min-height: 74px !important;
  max-height: 96px !important;
  padding: 10px 12px !important;
  text-align: left !important;
  line-height: 1.55 !important;
  color: #344054 !important;
  font-size: 13px !important;
  background:
    linear-gradient(#ffffff, #ffffff) padding-box,
    linear-gradient(135deg, #d9e7ff, #efe4ff) border-box !important;
  border: 1px solid transparent !important;
}

.pantools-upload-hint {
  min-height: 22px !important;
  color: #8a96ad !important;
  font-size: 12px !important;
}

.pantools-upload-card-row {
  gap: 10px !important;
}

.pantools-upload-card {
  min-height: 72px !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  gap: 12px !important;
  padding: 12px 14px !important;
}

.pantools-upload-card i {
  width: 44px !important;
  height: 44px !important;
  border-radius: 10px !important;
}

.pantools-upload-card .svg-icon {
  width: 22px !important;
  height: 22px !important;
}

.pantools-upload-card strong {
  margin-bottom: 4px !important;
  font-size: 15px !important;
}

.pantools-upload-card small {
  font-size: 12px !important;
}

.pantools-upload-status {
  min-height: 34px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 12px !important;
  border: 1px solid #e6edf7 !important;
  border-radius: 8px !important;
  background: #f8fbff !important;
  color: #667085 !important;
  font-size: 13px !important;
}

.pantools-upload-status[data-type="running"] {
  border-color: #b9d4ff !important;
  background: #eff6ff !important;
  color: #175cd3 !important;
}

.pantools-upload-status[data-type="success"] {
  border-color: #bfe8d4 !important;
  background: #ecfdf3 !important;
  color: #027a48 !important;
}

.pantools-upload-status[data-type="warn"],
.pantools-upload-status[data-type="error"] {
  border-color: #fed7aa !important;
  background: #fff7ed !important;
  color: #b45309 !important;
}

.pantools-share-task-table th:nth-child(3),
.pantools-share-task-table td:nth-child(3) {
  max-width: 260px;
}

.pantools-task-save-path {
  display: inline-block !important;
  max-width: 260px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #475467 !important;
}

.netdisk-pan-filetable tr[draggable="true"] {
  cursor: grab;
}

.netdisk-pan-filetable tr.is-dragging {
  opacity: 0.58;
}

.netdisk-pan-filetable tr.is-drop-target {
  outline: 2px solid #2f6bff;
  outline-offset: -2px;
  background: #eef5ff !important;
}

.netdisk-pan-filetable tr.is-drop-target .netdisk-pan-filename {
  color: #175cd3;
  font-weight: 700;
}

.pantools-action-modal .modal-panel.pantools-upload-modal-panel {
  width: min(640px, calc(100vw - 72px)) !important;
}

.pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-target {
  min-height: 50px !important;
  padding: 0 16px !important;
  justify-content: flex-start !important;
}

.pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-target span {
  display: none !important;
}

.pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-target em {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #101828 !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 700 !important;
}

.pantools-action-modal .modal-panel.pantools-upload-modal-panel .pantools-upload-list .compact-result {
  min-height: 74px !important;
  max-height: 96px !important;
  padding: 10px 12px !important;
  text-align: left !important;
  line-height: 1.55 !important;
  color: #344054 !important;
  font-size: 13px !important;
}

/* Batch share now runs directly; keep the two remaining action buttons aligned. */
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-action-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 112px) !important;
  justify-content: start !important;
  justify-items: stretch !important;
  align-items: center !important;
  gap: 10px !important;
  width: auto !important;
}

body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page .pantools-share-action-grid > button,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page #netdiskRunOperation,
body.pantools-app-mode .pantools-feature-modal.pantools-feature-netdisk-batch-share .share-mode-page #shareModeExportTableBtn {
  grid-column: auto !important;
  grid-row: auto !important;
  width: 112px !important;
  min-width: 112px !important;
  max-width: 112px !important;
  height: 36px !important;
  min-height: 36px !important;
  margin: 0 !important;
}
