
    :root {
      --ct-ink: #161719;
      --ct-panel: #303236;
      --ct-panel-2: #25272b;
      --ct-panel-line: #505258;
      --ct-page: #fbfbfa;
      --ct-page-soft: #f1f0ec;
      --ct-paper: #ffffff;
      --ct-muted: #75787f;
      --ct-line: #d7d4cc;
      --ct-red: #b62d35;
      --ct-red-soft: #f4dfe1;
      --ct-teal: #14767d;
      --ct-gold: #c9982f;
      --ct-shadow: 0 18px 44px rgba(15, 16, 18, 0.18);
      color-scheme: light;
    }

    * {
      box-sizing: border-box;
    }

    html,
    body {
      min-height: 100%;
      margin: 0;
      background: #ffffff;
      color: var(--ct-ink);
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      letter-spacing: 0;
    }

    body {
      overflow: hidden;
    }

    button,
    input,
    textarea,
    select {
      font: inherit;
      letter-spacing: 0;
    }

    button {
      cursor: pointer;
    }

    button:disabled,
    input:disabled,
    textarea:disabled,
    select:disabled {
      cursor: not-allowed;
      opacity: 0.58;
    }

    .ct-app {
      width: 100vw;
      height: 100vh;
      display: grid;
      grid-template-columns: 286px minmax(0, 1fr);
      background: #ffffff;
      overflow: hidden;
    }

    .ct-app.ct-sidebar-collapsed {
      grid-template-columns: 58px minmax(0, 1fr);
    }

    .ct-sidebar {
      min-width: 0;
      display: grid;
      grid-template-rows: auto minmax(0, 1fr) auto;
      background: var(--ct-panel);
      color: #fbfbfa;
      border-right: 1px solid #1f2023;
      overflow: hidden;
    }

    .ct-sidebar-top {
      display: flex;
      align-items: center;
      gap: 10px;
      min-height: 58px;
      padding: 13px 14px 11px 16px;
      border-bottom: 2px solid #1a1b1e;
    }

    .ct-brand {
      min-width: 0;
      flex: 1;
      display: inline-grid;
      justify-items: center;
      color: var(--ct-brand-primary, #000);
      font-family: "Times New Roman", Times, serif;
      line-height: 0.92;
      white-space: nowrap;
    }

    .ct-brand-primary {
      color: var(--ct-brand-primary, #000);
      font-size: 30px;
      font-weight: 700;
    }

    .ct-brand-secondary {
      color: var(--ct-brand-secondary, #000);
      font-size: 18px;
      font-style: italic;
      font-weight: 700;
    }

    .ct-icon-button,
    .ct-toolbar-button,
    .ct-small-button {
      border: 0;
      color: inherit;
      background: transparent;
    }

    .ct-icon-button {
      width: 34px;
      height: 34px;
      display: inline-grid;
      place-items: center;
      border-radius: 6px;
      color: #f8f7f3;
    }

    .ct-icon-button:hover,
    .ct-toolbar-button:hover,
    .ct-nav-button:hover,
    .ct-small-button:hover {
      background: rgba(255, 255, 255, 0.11);
    }

    .ct-icon {
      width: 18px;
      height: 18px;
      display: block;
      stroke: currentColor;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
      fill: none;
    }

    .ct-sidebar-main {
      min-height: 0;
      overflow: auto;
      padding: 0 10px 14px;
    }

    .ct-sidebar-section {
      padding: 13px 0 10px;
      border-bottom: 2px solid #1a1b1e;
    }

    .ct-sidebar-heading {
      margin: 0 6px 9px;
      font-size: 18px;
      line-height: 1.2;
      font-weight: 800;
    }

    .ct-mode-list,
    .ct-project-list,
    .ct-tree-list {
      display: grid;
      gap: 4px;
      margin: 0;
      padding: 0;
      list-style: none;
    }

    .ct-mode-button,
    .ct-project-button,
    .ct-tree-button,
    .ct-file-button,
    .ct-auth-tab {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: flex-start;
      gap: 8px;
      min-height: 34px;
      padding: 7px 8px;
      border: 0;
      border-radius: 6px;
      background: transparent;
      color: #f7f6f2;
      text-align: left;
      font-weight: 600 !important;
    }

    .ct-mode-button[aria-pressed="true"] {
      background: #f7f6f2;
      color: #232428;
    }

    .ct-mode-button:hover,
    .ct-project-button:hover,
    .ct-tree-button:hover,
    .ct-file-button:hover,
    .ct-auth-tab:hover {
      background: rgba(255, 255, 255, 0.11);
    }

    .ct-project-tools {
      display: grid;
      gap: 8px;
      margin: 10px 6px 10px;
    }

    .ct-input,
    .ct-textarea,
    .ct-select {
      width: 100%;
      border: 1px solid var(--ct-line);
      border-radius: 7px;
      background: #fff;
      color: var(--ct-ink);
      outline: none;
    }

    .ct-input,
    .ct-select {
      min-height: 36px;
      padding: 7px 10px;
    }

    .ct-textarea {
      min-height: 76px;
      max-height: 150px;
      resize: none;
      padding: 9px 10px;
      line-height: 1.4;
    }

    .ct-sidebar .ct-input {
      border-color: #5b5d64;
      background: #222327;
      color: #fff;
    }

    .ct-sidebar .ct-input::placeholder {
      color: #a5a7ad;
    }

    .ct-small-button {
      min-height: 34px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      padding: 7px 9px;
      border-radius: 6px;
      background: #42444a;
      color: #fff;
      font-weight: 750;
    }

    .ct-small-button.ct-primary {
      background: var(--ct-red);
    }

    .ct-google-auth {
      width: 100%;
    }

    .ct-marketing-opt {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: 7px;
      align-items: start;
      color: #e9eaed;
      font-size: 12px;
      line-height: 1.35;
    }

    .ct-marketing-opt input {
      width: 15px;
      height: 15px;
      margin: 1px 0 0;
      accent-color: var(--ct-red);
    }

    .ct-muted-note {
      margin: 7px 6px 0;
      color: #c7c8cc;
      font-size: 12px;
      line-height: 1.35;
    }

    .ct-project-list {
      gap: 2px;
    }

    .ct-project-node {
      display: grid;
      gap: 2px;
    }

    .ct-row-wrap {
      min-width: 0;
      display: flex;
      align-items: center;
      gap: 3px;
      border-radius: 6px;
    }

    .ct-row-wrap.ct-drop-hover {
      background: rgba(201, 152, 47, 0.22);
      outline: 1px solid rgba(201, 152, 47, 0.55);
    }

    .ct-row-wrap[draggable="true"] {
      cursor: grab;
    }

    .ct-row-wrap.ct-dragging {
      opacity: 0.48;
    }

    .ct-project-button {
      flex: 1;
      min-width: 0;
      min-height: 33px;
      padding: 6px 7px;
      border-radius: 7px;
      font-weight: 620;
    }

    .ct-project-children {
      display: grid;
      gap: 2px;
      margin: 1px 0 4px;
    }

    .ct-tree-row {
      min-height: 28px;
      border-radius: 6px;
      font-size: 13px;
      font-weight: 500;
      color: #e9e7df;
    }

    .ct-row-wrap .ct-tree-button,
    .ct-row-wrap .ct-file-button {
      flex: 1;
      min-width: 0;
    }

    .ct-tree-row[aria-pressed="true"] {
      background: rgba(255, 255, 255, 0.15);
      color: #fff;
    }

    .ct-tree-row[data-depth="1"] {
      padding-left: 18px;
    }

    .ct-tree-row[data-depth="2"] {
      padding-left: 34px;
    }

    .ct-tree-row[data-depth="3"] {
      padding-left: 50px;
    }

    .ct-chevron {
      width: 14px;
      flex: 0 0 14px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #bfc1c6;
      font-size: 12px;
    }

    .ct-file-button {
      min-height: 28px;
      margin-left: 0;
      padding: 5px 7px;
      color: #f1efe9;
      font-size: 13px;
      font-weight: 450;
    }

    .ct-file-button[aria-current="true"] {
      background: rgba(255, 255, 255, 0.08);
      box-shadow: none;
    }

    .ct-file-title {
      flex: 1;
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ct-row-action {
      width: 26px;
      height: 26px;
      flex: 0 0 26px;
      display: inline-grid;
      place-items: center;
      border: 0;
      border-radius: 5px;
      background: transparent;
      color: #d9dadf;
      opacity: 0;
    }

    .ct-row-wrap:hover .ct-row-action,
    .ct-row-wrap:focus-within .ct-row-action {
      opacity: 1;
    }

    .ct-row-action:hover {
      background: rgba(255, 255, 255, 0.12);
      color: #fff;
    }

    .ct-spinner {
      width: 16px;
      height: 16px;
      flex: 0 0 auto;
      border: 2px solid rgba(255, 255, 255, 0.34);
      border-top-color: #fff;
      border-radius: 999px;
      animation: ct-spin 0.8s linear infinite;
    }

    .ct-main-spinner {
      width: 58px;
      height: 58px;
      border: 4px solid #dedbd1;
      border-top-color: var(--ct-red);
      border-right-color: var(--ct-teal);
      border-radius: 999px;
      animation: ct-spin 0.9s linear infinite;
    }

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

    .ct-shell {
      min-width: 0;
      height: 100vh;
      display: grid;
      grid-template-rows: 58px minmax(0, 1fr);
      background: #ffffff;
      overflow: hidden;
    }

    .ct-topbar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      min-width: 0;
      padding: 9px 16px;
      background: var(--ct-panel);
      color: #fff;
      border-bottom: 1px solid #202125;
    }

    .ct-nav {
      display: flex;
      align-items: center;
      gap: 8px;
      min-width: 0;
    }

    .ct-nav-button,
    .ct-toolbar-button {
      min-height: 36px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      padding: 7px 10px;
      border: 0;
      border-radius: 6px;
      background: transparent;
      color: #fff;
      font-weight: 760;
      text-decoration: none;
      white-space: nowrap;
    }

    .ct-nav-button[aria-current="page"] {
      background: #f7f6f2;
      color: #232428;
    }

    .ct-toolbar {
      min-width: 0;
      display: flex;
      align-items: center;
      gap: 7px;
      overflow-x: auto;
      scrollbar-width: thin;
    }

    .ct-action-toolbar {
      flex: 0 0 auto;
      overflow: visible;
    }

    .ct-toolbar-group {
      display: inline-flex;
      align-items: center;
      gap: 3px;
      padding-right: 7px;
      border-right: 1px solid rgba(255, 255, 255, 0.22);
    }

    .ct-toolbar-select,
    .ct-toolbar-input {
      min-height: 34px;
      max-width: 150px;
      border: 1px solid rgba(255, 255, 255, 0.22);
      border-radius: 6px;
      background: #25272b;
      color: #fff;
      padding: 6px 8px;
    }

    .ct-toolbar-button {
      min-width: 34px;
      padding: 7px 8px;
    }

    .ct-toolbar-button.ct-download {
      background: rgba(255, 255, 255, 0.11);
    }

    .ct-toolbar-button.ct-danger {
      background: rgba(182, 45, 53, 0.18);
    }

    .ct-download-wrap {
      position: relative;
      display: inline-flex;
    }

    .ct-download-menu {
      position: absolute;
      right: 0;
      top: calc(100% + 7px);
      z-index: 8;
      min-width: 130px;
      display: none;
      padding: 6px;
      border: 1px solid rgba(255, 255, 255, 0.2);
      border-radius: 8px;
      background: #25272b;
      box-shadow: 0 16px 36px rgba(0, 0, 0, 0.32);
    }

    .ct-download-menu[aria-hidden="false"] {
      display: grid;
      gap: 4px;
    }

    .ct-download-option {
      min-height: 32px;
      border: 0;
      border-radius: 5px;
      background: transparent;
      color: #fff;
      text-align: left;
      padding: 6px 8px;
      font-weight: 760;
    }

    .ct-download-option:hover {
      background: rgba(255, 255, 255, 0.12);
    }

    .ct-config-button {
      background: #25272b;
      border: 1px solid rgba(255, 255, 255, 0.16);
    }

    .ct-workspace {
      height: 100%;
      min-height: 0;
      position: relative;
      overflow: hidden;
      background: #ffffff;
    }

    .ct-canvas-wrap {
      height: 100%;
      min-height: 0;
      padding: 0;
      overflow: hidden;
      background: #ffffff;
    }

    .ct-canvas {
      height: 100%;
      min-height: 100%;
      display: flex;
      justify-content: center;
      align-items: stretch;
      background: #ffffff;
    }

    .ct-paper {
      width: 100%;
      height: 100%;
      min-height: 0;
      background: var(--ct-paper);
      border: 0;
      box-shadow: none;
      position: relative;
      overflow: hidden;
    }

    .ct-paper-inner {
      height: 100%;
      min-height: 0;
      display: flex;
      flex-direction: column;
      padding: clamp(16px, 2.7vw, 30px) clamp(24px, 4vw, 52px);
      overflow: hidden;
    }

    .ct-splash {
      text-align: center;
      flex: 0 0 auto;
      margin: -4px auto 14px;
      max-width: 760px;
    }

    .ct-splash-brand {
      font-family: Avenir Next, Trebuchet MS, Arial Black, Arial, sans-serif;
      font-size: clamp(40px, 6vw, 72px);
      line-height: 0.95;
      margin: 0;
    }

    .ct-splash-brand .ct-brand-secondary {
      font-weight: 300;
    }

    .ct-tagline {
      margin: 9px 0 0;
      font-size: clamp(12px, 1.15vw, 15px);
      font-style: italic;
    }

    .ct-version {
      margin: 4px 0 0;
      font-size: 10px;
      font-style: italic;
      color: #2e3035;
    }

    .ct-page-grid {
      display: grid;
      gap: 22px;
      max-width: 900px;
      margin: 0 auto;
    }

    .ct-page-title {
      margin: 0;
      font-size: clamp(30px, 4vw, 48px);
      line-height: 1.05;
      font-weight: 900;
    }

    .ct-page-copy {
      margin: 0;
      color: #41444a;
      line-height: 1.7;
      font-size: 16px;
    }

    .ct-feature-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
    }

    .ct-feature-card {
      min-height: 160px;
      padding: 18px;
      border: 1px solid var(--ct-line);
      border-radius: 8px;
      background: #f8f7f3;
    }

    .ct-feature-card h3 {
      margin: 0 0 10px;
      font-size: 17px;
    }

    .ct-feature-card p {
      margin: 0;
      color: #4f5258;
      line-height: 1.55;
    }

    .ct-quick-setup {
      display: grid;
      gap: 16px;
      max-width: 720px;
      margin: 0 auto;
    }

    .ct-field {
      display: grid;
      gap: 7px;
    }

    .ct-label {
      font-weight: 840;
      color: #2b2d32;
    }

    .ct-help {
      color: var(--ct-muted);
      font-size: 12px;
      line-height: 1.35;
    }

    .ct-side-switch,
    .ct-pill-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .ct-pill {
      min-height: 32px;
      padding: 6px 11px;
      border: 1px solid var(--ct-line);
      border-radius: 999px;
      background: #fff;
      color: var(--ct-ink);
      font-size: 13px;
      font-weight: 820;
    }

    .ct-pill[aria-pressed="true"] {
      background: var(--ct-red);
      border-color: var(--ct-red);
      color: #fff;
    }

    .ct-assisted-results {
      display: grid;
      gap: 10px;
      max-width: 1180px;
      margin: 0 auto;
    }

    .ct-result-card {
      display: grid;
      gap: 8px;
      padding: 13px;
      border: 1px solid var(--ct-line);
      border-radius: 8px;
      background: #ffffff;
    }

    .ct-result-card h3 {
      margin: 0;
      font-size: 16px;
      line-height: 1.25;
    }

    .ct-result-snippet {
      margin: 0;
      color: #4c4f55;
      line-height: 1.45;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
    }

    .ct-result-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .ct-action-button {
      min-height: 36px;
      padding: 8px 12px;
      border: 0;
      border-radius: 6px;
      background: #303236;
      color: #fff;
      font-weight: 800;
    }

    .ct-action-button.ct-secondary {
      background: #e8e4da;
      color: #24262a;
    }

    .ct-reader {
      max-width: 860px;
      margin: 0 auto;
    }

    .ct-reader-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 18px;
    }

    .ct-reader-title {
      margin: 0 0 8px;
      font-size: 28px;
      line-height: 1.15;
    }

    .ct-reader-meta {
      margin: 0 0 18px;
      color: var(--ct-muted);
    }

    .ct-reader-body {
      color: #292c31;
      line-height: 1.7;
      font-size: 16px;
    }

    .ct-loading {
      min-height: calc(100vh - 220px);
      display: grid;
      place-items: center;
      text-align: center;
      gap: 16px;
    }

    .ct-loading-text {
      margin: 0;
      font-size: 18px;
      font-weight: 500;
      color: #4c4f55;
    }

    .ct-editor {
      width: min(100%, 900px);
      min-height: calc(100vh - 205px);
      margin: 0 auto;
      padding: clamp(28px, 5vw, 54px);
      outline: none;
      background: #fff;
      color: #171819;
      font-family: var(--ct-doc-font-family, Calibri, Arial, sans-serif);
      line-height: 1.38;
    }

    .ct-editor h1,
    .ct-editor .ct-document-title {
      text-align: center;
      font-size: var(--ct-doc-title-size, 26pt);
      line-height: 1.1;
      margin: 0 0 18px;
      font-weight: 900;
    }

    .ct-editor .ct-document-subtitle {
      text-align: center;
      font-size: var(--ct-doc-subtitle-size, 12pt);
      margin: 0 0 28px;
      font-style: italic;
    }

    .ct-editor .ct-section-label {
      margin: 20px 0 12px;
      font-size: var(--ct-doc-tag-text-size, 14pt);
      font-weight: 700;
    }

    .ct-editor .ct-section-label strong {
      background: #ff00ff;
      font-size: var(--ct-doc-tag-marker-size, 20pt);
    }

    .ct-editor .ct-card {
      margin: 0 0 28px;
      padding-bottom: 8px;
    }

    .ct-editor .ct-card-name {
      margin: 18px 0 3px;
      font-size: var(--ct-doc-card-name-size, 14pt);
      font-weight: 900;
    }

    .ct-editor .ct-card-citation {
      margin: 0 0 7px;
      font-size: var(--ct-doc-citation-size, 10pt);
    }

    .ct-editor .ct-card-body {
      margin: 0 0 22px;
      font-size: var(--ct-doc-small-size, 6pt);
      white-space: pre-wrap;
    }

    .ct-card-highlight {
      font-weight: 800;
      text-decoration: underline;
      font-size: var(--ct-doc-highlighted-size, 14pt);
    }

    .ct-card-emphasis {
      font-weight: 800;
      text-decoration: underline;
      font-size: var(--ct-doc-underlined-size, 10pt);
    }

    .ct-card-compressed {
      font-size: var(--ct-doc-very-small-size, 2pt);
    }

    .ct-request-panel {
      display: grid;
      gap: 10px;
      width: min(100%, 820px);
      margin: 0 auto;
    }

    .ct-request-panel.ct-is-busy {
      opacity: 0.68;
    }

    .ct-request-row {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
    }

    .ct-minimal-input-block {
      display: grid;
      gap: 7px;
      padding: 10px;
      border: 1px solid #e4e4e1;
      border-radius: 8px;
      background: #f8f8f7;
    }

    .ct-minimal-input-block .ct-textarea {
      min-height: 72px;
      max-height: 118px;
      resize: none;
      background: #fff;
    }

    .ct-setup-grid {
      display: grid;
      gap: 9px;
      width: 100%;
      max-width: 820px;
      margin: 0 auto;
    }

    .ct-resolution-field {
      grid-column: 1 / -1;
    }

    .ct-option-grid {
      display: grid;
      grid-template-columns: minmax(130px, 0.8fr) minmax(160px, 1fr);
      gap: 9px;
      align-items: stretch;
    }

    .ct-option-grid.ct-option-grid-wide {
      grid-template-columns: minmax(130px, 0.7fr) minmax(160px, 0.8fr) minmax(250px, 1.5fr);
    }

    .ct-option-grid.ct-option-grid-deep {
      grid-template-columns: minmax(126px, 0.6fr) minmax(150px, 0.7fr) minmax(260px, 1.35fr) minmax(260px, 1.45fr);
    }

    .ct-wide-field {
      grid-column: span 2;
    }

    .ct-compact-field {
      min-width: 0;
      display: grid;
      gap: 6px;
      align-content: start;
      padding: 8px 9px;
      border: 1px solid #e8e8e5;
      border-radius: 8px;
      background: #ffffff;
    }

    .ct-request-panel .ct-label,
    .ct-setup-grid .ct-label {
      font-size: 13px;
      line-height: 1.25;
    }

    .ct-highlight-row,
    .ct-quality-row {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 8px;
    }

    .ct-color-dot {
      width: 25px;
      height: 25px;
      display: inline-grid;
      place-items: center;
      border: 1px solid #bfc0c4;
      border-radius: 999px;
      background: #fff;
      padding: 3px;
    }

    .ct-color-dot::before {
      content: "";
      width: 16px;
      height: 16px;
      border-radius: 999px;
      background: var(--dot-color, #ffff00);
      box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.14);
    }

    .ct-color-dot[aria-pressed="true"] {
      border-color: #2d3035;
      box-shadow: 0 0 0 2px rgba(45, 48, 53, 0.1);
    }

    .ct-quality-pill {
      min-height: 31px;
      padding: 6px 10px;
      border: 1px solid var(--ct-line);
      border-radius: 999px;
      background: #fff;
      color: var(--ct-ink);
      font-size: 13px;
      font-weight: 820;
    }

    .ct-quality-pill[aria-pressed="true"] {
      background: #303236;
      border-color: #303236;
      color: #fff;
    }

    .ct-action-strip {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 8px;
      flex-wrap: wrap;
    }

    .ct-progress-card,
    .ct-complete-card {
      display: grid;
      gap: 8px;
      padding: 8px 10px;
      border: 1px solid #e4e4e1;
      border-radius: 8px;
      background: #fafafa;
    }

    .ct-run-status {
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .ct-run-status .ct-progress-card {
      width: min(100%, 520px);
    }

    .ct-run-status .ct-complete-card {
      width: fit-content;
      max-width: 100%;
    }

    .ct-complete-card .ct-action-strip {
      align-items: center;
      justify-content: center;
      margin-top: 0;
    }

    .ct-progress-label,
    .ct-complete-label {
      margin: 0;
      color: #44474d;
      font-size: 12px;
      font-weight: 850;
    }

    .ct-complete-label {
      text-align: center;
      line-height: 1.08;
    }

    .ct-complete-word {
      display: block;
    }

    .ct-progress-track {
      height: 6px;
      overflow: hidden;
      border-radius: 999px;
      background: #e3e1dc;
    }

    .ct-progress-fill {
      width: 42%;
      height: 100%;
      border-radius: 999px;
      background: #7d8087;
      animation: ct-progress 1.35s ease-in-out infinite;
    }

    @keyframes ct-progress {
      0% { transform: translateX(-115%); }
      100% { transform: translateX(245%); }
    }

    .ct-inline-download-wrap {
      position: relative;
      display: inline-flex;
    }

    .ct-inline-download-menu {
      position: absolute;
      right: 0;
      top: calc(100% + 7px);
      z-index: 10;
      min-width: 128px;
      display: none;
      padding: 6px;
      border: 1px solid #d7d4cc;
      border-radius: 8px;
      background: #fff;
      box-shadow: 0 14px 34px rgba(18, 19, 22, 0.16);
    }

    .ct-inline-download-menu[aria-hidden="false"] {
      display: grid;
      gap: 4px;
    }

    .ct-inline-download-option {
      min-height: 32px;
      border: 0;
      border-radius: 5px;
      background: transparent;
      color: #25272b;
      text-align: left;
      padding: 6px 8px;
      font-weight: 760;
    }

    .ct-inline-download-option:hover:not(:disabled) {
      background: #f0eee8;
    }

    .ct-queue-panel {
      display: grid;
      gap: 8px;
      align-content: start;
      max-height: 160px;
      overflow: auto;
      padding: 8px;
      border: 1px solid #e1ded6;
      border-radius: 8px;
      background: #fbfaf7;
    }

    .ct-queue-row {
      position: relative;
      overflow: hidden;
      border-radius: 7px;
      background: transparent;
      isolation: isolate;
    }

    .ct-queue-card {
      position: relative;
      z-index: 1;
      transition: opacity 0.18s ease;
    }

    .ct-assisted-paper .ct-paper-inner {
      padding-bottom: 14px;
    }

    .ct-assisted-layout {
      flex: 1 1 auto;
      min-height: 0;
      display: grid;
      gap: 10px;
      width: min(100%, 1180px);
      margin: 0 auto;
    }

    .ct-assisted-sticky {
      position: sticky;
      top: 0;
      z-index: 3;
      display: grid;
      gap: 9px;
      padding-bottom: 4px;
      background: #ffffff;
    }

    .ct-assisted-workbench {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(250px, 330px);
      gap: 10px;
      align-items: stretch;
    }

    .ct-assisted-request {
      min-width: 0;
      display: grid;
      gap: 8px;
    }

    .ct-assisted-queue-slot {
      min-width: 0;
      min-height: 0;
    }

    .ct-assisted-queue-slot .ct-queue-panel {
      height: 100%;
      min-height: 82px;
      max-height: 132px;
      align-content: start;
    }

    .ct-assisted-empty-queue {
      height: 100%;
      min-height: 82px;
      display: grid;
      place-items: center;
      padding: 8px;
      border: 1px dashed #e1e1de;
      border-radius: 8px;
      color: var(--ct-muted);
      background: #fafafa;
      font-size: 12px;
      font-weight: 760;
      text-align: center;
    }

    .ct-assisted-results-shell {
      min-height: 0;
      overflow: visible;
      padding: 10px 0 18px;
    }

    .ct-assisted-results-shell .ct-help {
      max-width: 940px;
      margin: 0 auto 8px;
    }

    .ct-app.ct-assisted-scroll .ct-canvas-wrap {
      overflow: auto;
    }

    .ct-app.ct-assisted-scroll .ct-paper,
    .ct-app.ct-assisted-scroll .ct-paper-inner {
      height: auto;
      min-height: 100%;
      overflow: visible;
    }

    .ct-queue-item {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      gap: 10px;
      padding: 8px 9px;
      border-radius: 7px;
      background: #fff;
      border: 1px solid #ebe8e1;
    }

    .ct-queue-actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 7px;
      flex-wrap: wrap;
    }

    .ct-queue-title {
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      font-size: 13px;
      font-weight: 820;
    }

    .ct-queue-meta {
      margin-top: 4px;
      color: var(--ct-muted);
      font-size: 11px;
      font-weight: 760;
    }

    .ct-complete-marker {
      color: #167548;
      font-size: 12px;
      font-weight: 900;
    }

    .ct-submit {
      min-width: 88px;
      min-height: 40px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 8px 13px;
      border: 0;
      border-radius: 8px;
      background: var(--ct-red);
      color: #fff;
      font-weight: 900;
    }

    .ct-submit.ct-secondary {
      background: #f7f6f2;
      color: #25272b;
    }

    .ct-submit-row {
      display: flex;
      justify-content: flex-end;
      gap: 8px;
      flex-wrap: wrap;
    }

    .ct-upload-trigger {
      width: 36px;
      height: 36px;
      min-height: 36px;
      position: relative;
      display: inline-grid;
      place-items: center;
      padding: 0;
      border: 1px solid #d7d4cc;
      border-radius: 8px;
      color: #303236;
      background: #fff;
      cursor: pointer;
    }

    .ct-upload-trigger:hover,
    .ct-upload-trigger:focus-visible {
      background: #f0eee8;
      border-color: #b9b5aa;
      outline: none;
    }

    .ct-upload-trigger::after {
      content: attr(data-tooltip);
      position: absolute;
      left: 50%;
      bottom: calc(100% + 8px);
      z-index: 8;
      padding: 5px 7px;
      border-radius: 5px;
      background: #111214;
      color: #fff;
      box-shadow: 0 8px 20px rgba(0, 0, 0, 0.28);
      font-size: 12px;
      font-weight: 750;
      line-height: 1;
      white-space: nowrap;
      opacity: 0;
      pointer-events: none;
      transform: translateX(-50%) translateY(4px);
      transition: opacity 0.14s ease, transform 0.14s ease;
    }

    .ct-upload-trigger:hover::after,
    .ct-upload-trigger:focus-visible::after {
      opacity: 1;
      transform: translateX(-50%) translateY(0);
    }

    .ct-upload-input {
      width: 1px;
      height: 1px;
      position: absolute;
      opacity: 0;
      pointer-events: none;
    }

    .ct-file-chips {
      display: flex;
      flex-wrap: wrap;
      gap: 7px;
      justify-content: center;
    }

    .ct-file-chip {
      max-width: min(260px, 100%);
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 5px 7px;
      border-radius: 999px;
      background: #ece9e1;
      color: #25272b;
      font-size: 12px;
      font-weight: 760;
    }

    .ct-file-chip span {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ct-chip-remove {
      width: 20px;
      height: 20px;
      display: inline-grid;
      place-items: center;
      border: 0;
      border-radius: 999px;
      background: rgba(48, 50, 54, 0.1);
      color: #303236;
      line-height: 1;
    }

    .ct-upload-warning,
    .ct-upload-time-warning {
      margin: 0;
      color: #686b72;
      font-size: 12px;
      line-height: 1.35;
      text-align: left;
    }

    .ct-upload-time-warning {
      color: #9d1f27;
      font-style: italic;
      font-weight: 600;
    }

    .ct-error {
      color: #ffced2;
      font-weight: 750;
    }

    .ct-paper .ct-error {
      color: #9d1f27;
    }

    .ct-status {
      min-height: 18px;
      color: #6c3338;
      font-size: 12px;
      font-weight: 750;
    }

    .ct-upload-box {
      display: grid;
      gap: 8px;
      padding: 12px;
      border: 1px dashed #bbb6aa;
      border-radius: 8px;
      background: #fbfaf6;
    }

    .ct-upload-box .ct-input {
      background: #fff;
    }

    .ct-selected-files {
      margin: 0;
      color: #4f5258;
      font-size: 12px;
      line-height: 1.35;
    }

    .ct-sidebar-footer {
      display: grid;
      gap: 9px;
      padding: 12px;
      border-top: 2px solid #1a1b1e;
      background: var(--ct-panel-2);
    }

    .ct-auth-tabs {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 5px;
    }

    .ct-auth-tab {
      justify-content: center;
      border: 1px solid #555861;
      font-size: 13px;
    }

    .ct-auth-tab[aria-pressed="true"] {
      background: #f7f6f2;
      color: #232428;
    }

    .ct-auth-form {
      display: grid;
      gap: 7px;
    }

    .ct-auth-user {
      display: grid;
      gap: 8px;
      color: #f7f6f2;
    }

    .ct-modal-backdrop {
      position: fixed;
      inset: 0;
      z-index: 20;
      display: none;
      place-items: center;
      padding: 24px;
      background: rgba(15, 16, 18, 0.48);
    }

    .ct-modal-backdrop[aria-hidden="false"] {
      display: grid;
    }

    .ct-modal {
      width: min(760px, 92vw);
      max-height: 86vh;
      overflow: auto;
      border-radius: 10px;
      background: #f9f8f4;
      box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
      border: 1px solid #d8d4ca;
    }

    .ct-modal-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding: 16px 18px;
      background: #303236;
      color: #fff;
    }

    .ct-modal-header h2 {
      margin: 0;
      font-size: 20px;
    }

    .ct-modal-body {
      display: grid;
      gap: 18px;
      padding: 18px;
    }

    .ct-config-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
    }

    .ct-config-card {
      display: grid;
      gap: 9px;
      padding: 14px;
      border: 1px solid var(--ct-line);
      border-radius: 8px;
      background: #fff;
    }

    .ct-manage-actions {
      display: flex;
      justify-content: space-between;
      gap: 10px;
      flex-wrap: wrap;
    }

    .ct-danger-button {
      background: var(--ct-red);
      color: #fff;
    }

    .ct-font-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 9px;
    }

    .ct-font-grid label {
      display: grid;
      gap: 5px;
      font-size: 12px;
      font-weight: 800;
    }

    .ct-collapsed-only {
      display: none;
    }

    .ct-app.ct-sidebar-collapsed .ct-expanded-only {
      display: none;
    }

    .ct-app.ct-sidebar-collapsed .ct-brand {
      display: none;
    }

    .ct-app.ct-sidebar-collapsed .ct-collapsed-only {
      display: inline-grid;
    }

    .ct-app.ct-sidebar-collapsed .ct-sidebar {
      overflow: visible;
    }

    .ct-app.ct-sidebar-collapsed .ct-sidebar-top {
      justify-content: center;
      padding: 12px;
    }

    .ct-app.ct-sidebar-collapsed .ct-sidebar-main,
    .ct-app.ct-sidebar-collapsed .ct-sidebar-footer {
      display: none;
    }

    .ct-review-panel {
      position: absolute;
      inset: 0;
      z-index: 12;
      overflow: hidden;
      pointer-events: none;
    }

    .ct-review-panel[data-open="true"] {
      pointer-events: none;
    }

    .ct-review-tab {
      position: absolute;
      top: 8px;
      right: 0;
      width: 38px;
      height: 52px;
      min-height: 52px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 1px solid #202125;
      border-right: 0;
      border-radius: 8px 0 0 8px;
      background: #303236;
      color: #fff;
      font-weight: 900;
      box-shadow: 0 12px 26px rgba(15, 16, 18, 0.2);
      pointer-events: auto;
    }

    .ct-review-panel[data-open="true"] .ct-review-tab {
      right: min(1040px, calc(100% - 46px));
    }

    .ct-review-tab .ct-icon {
      width: 19px;
      height: 19px;
    }

    .ct-review-shell {
      width: min(1040px, calc(100% - 46px));
      height: 100%;
      margin-left: auto;
      display: grid;
      grid-template-rows: auto minmax(0, 1fr);
      background: #f7f6f2;
      border-left: 1px solid #202125;
      box-shadow: -20px 0 46px rgba(15, 16, 18, 0.26);
      overflow: hidden;
      pointer-events: auto;
      transform: translateX(100%);
      transition: transform 0.2s ease;
    }

    .ct-review-panel[data-open="true"] .ct-review-shell {
      transform: translateX(0);
    }

    .ct-review-header {
      min-width: 0;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      min-height: 48px;
      padding: 8px 12px;
      background: var(--ct-panel);
      color: #fff;
      border-bottom: 1px solid #202125;
    }

    .ct-review-heading {
      min-width: 0;
      display: flex;
      align-items: center;
      gap: 8px;
      flex: 1 1 auto;
    }

    .ct-review-title {
      min-width: 0;
      margin: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      font-size: 14px;
      font-weight: 900;
    }

    .ct-review-actions {
      display: flex;
      align-items: center;
      gap: 8px;
      min-width: 0;
    }

    .ct-autosave-status {
      flex: 0 0 auto;
      min-width: 76px;
      color: #cfd1d6;
      font-size: 12px;
      font-weight: 760;
      text-align: right;
    }

    .ct-review-list-button {
      flex: 0 0 auto;
      background: rgba(255, 255, 255, 0.1);
    }

    .ct-review-body {
      min-height: 0;
      overflow: auto;
      padding: 16px;
    }

    .ct-review-body .ct-loading {
      min-height: 340px;
    }

    .ct-review-body .ct-loading-text {
      color: #4c4f55;
    }

    .ct-review-body .ct-editor {
      width: 100%;
      min-height: calc(100vh - 154px);
      padding: clamp(22px, 3vw, 40px);
      border: 1px solid #e1ded6;
      border-radius: 8px;
      box-shadow: none;
    }

    .ct-review-page-viewport {
      width: 100%;
      min-width: 0;
    }

    .ct-review-page-scale {
      width: 100%;
      min-width: 0;
    }

    .ct-review-empty,
    .ct-recent-list {
      display: grid;
      gap: 10px;
      width: min(100%, 620px);
      margin: 42px auto 0;
    }

    .ct-review-empty {
      place-items: center;
      text-align: center;
      color: #53565d;
    }

    .ct-review-empty h2,
    .ct-recent-list h2 {
      margin: 0;
      color: #25272b;
      font-size: 22px;
    }

    .ct-review-empty p {
      margin: 0;
      color: var(--ct-muted);
    }

    .ct-recent-file {
      width: 100%;
      display: grid;
      gap: 4px;
      padding: 12px;
      border: 1px solid #e0ddd5;
      border-radius: 8px;
      background: #fff;
      color: #25272b;
      text-align: left;
    }

    .ct-recent-file:hover {
      background: #f0eee8;
    }

    .ct-recent-file-pending,
    .ct-recent-file-pending:hover {
      background: #fff;
      cursor: default;
    }

    .ct-recent-file-title {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      font-weight: 900;
    }

    .ct-recent-file-pending-title {
      width: min(190px, 54%);
      min-width: 118px;
      display: block;
      padding: 5px 0 4px;
    }

    .ct-recent-pending-track {
      height: 6px;
      display: block;
      overflow: hidden;
      border-radius: 999px;
      background: #dbe3ee;
    }

    .ct-recent-pending-fill {
      width: 42%;
      height: 100%;
      display: block;
      border-radius: 999px;
      background: #123a6b;
      animation: ct-progress 1.35s ease-in-out infinite;
    }

    .ct-recent-file-meta {
      color: var(--ct-muted);
      font-size: 12px;
      font-weight: 760;
    }

    @media (max-width: 860px) {
      body {
        overflow: auto;
      }

      .ct-app {
        min-height: 100vh;
        height: auto;
        grid-template-columns: 1fr;
      }

      .ct-app.ct-sidebar-collapsed {
        min-height: 100vh;
        height: auto;
        grid-template-columns: 58px minmax(0, 1fr);
      }

      .ct-sidebar {
        max-height: none;
      }

      .ct-app.ct-sidebar-collapsed .ct-sidebar {
        display: grid;
      }

      .ct-shell {
        height: auto;
        min-height: 100vh;
      }

      .ct-topbar {
        position: sticky;
        top: 0;
        z-index: 10;
        align-items: flex-start;
        flex-wrap: wrap;
      }

      .ct-paper,
      .ct-paper-inner,
      .ct-editor {
        min-height: 65vh;
      }

      .ct-request-row,
      .ct-queue-item,
      .ct-option-grid,
      .ct-option-grid.ct-option-grid-wide,
      .ct-assisted-workbench {
        grid-template-columns: 1fr;
      }

      .ct-wide-field {
        grid-column: auto;
      }

      .ct-canvas-wrap {
        overflow: auto;
      }

      .ct-paper,
      .ct-paper-inner {
        height: auto;
        overflow: visible;
      }

      .ct-review-panel {
        width: auto;
      }

      .ct-review-shell {
        width: calc(100% - 40px);
      }

      .ct-review-panel[data-open="true"] .ct-review-tab {
        right: calc(100% - 40px);
      }

      .ct-review-actions {
        flex-wrap: wrap;
      }

      .ct-feature-grid,
      .ct-config-grid,
      .ct-font-grid {
        grid-template-columns: 1fr;
      }
    }

    /* Production redesign layer. */
    :root {
      --ct-ink: #0f172a;
      --ct-muted: #5f6673;
      --ct-muted-2: #8a9099;
      --ct-page: #f7f7f5;
      --ct-paper: #ffffff;
      --ct-line: #e0e1e4;
      --ct-line-strong: #d6d9de;
      --ct-navy: #0b2745;
      --ct-navy-hover: #0d3768;
      --ct-navy-active: #071e3b;
      --ct-sidebar-bg: #071323;
      --ct-sidebar-bg-2: #0b1726;
      --ct-sidebar-hover: #111f32;
      --ct-sidebar-active: #123a6b;
      --ct-red: #b4232a;
      --ct-red-soft: #fbefef;
      --ct-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
    }

    html,
    body {
      background: var(--ct-page);
      color: var(--ct-ink);
    }

    .ct-app {
      height: 100vh;
      display: grid;
      grid-template-columns: 300px minmax(0, 1fr);
      grid-template-rows: 68px minmax(0, 1fr);
      background: var(--ct-page);
    }

    .ct-app.ct-sidebar-collapsed {
      grid-template-columns: 58px minmax(0, 1fr);
    }

    .ct-topbar {
      grid-column: 1 / -1;
      grid-row: 1;
      min-height: 68px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 20px;
      padding: 0 28px;
      background: #fff;
      color: var(--ct-ink);
      border-bottom: 1px solid var(--ct-line);
      z-index: 14;
    }

    .ct-topbar-left,
    .ct-topbar-right {
      min-width: 0;
      display: flex;
      align-items: center;
      gap: 22px;
    }

    .ct-topbar-right {
      justify-content: flex-end;
    }

    .ct-menu-button {
      width: 34px;
      height: 34px;
      color: #475569;
      border: 1px solid transparent;
    }

    .ct-menu-button:hover {
      background: #f6f7f8;
      border-color: var(--ct-line);
    }

    .ct-brand {
      flex: 0 0 auto;
      display: inline-grid;
      justify-items: center;
      color: var(--ct-brand-primary, #000);
      font-family: "Times New Roman", Times, serif;
      line-height: 0.92;
      letter-spacing: 0;
      white-space: nowrap;
    }

    .ct-brand-primary {
      color: var(--ct-brand-primary, #000);
      font-size: 30px;
      font-weight: 700;
      letter-spacing: 0;
    }

    .ct-brand-secondary {
      color: var(--ct-brand-secondary, #000);
      font-size: 18px;
      font-style: italic;
      font-weight: 700;
      letter-spacing: 0;
    }

    .ct-app.ct-sidebar-collapsed .ct-topbar .ct-brand {
      display: block;
    }

    .ct-nav {
      display: flex;
      align-items: center;
      gap: 30px;
      min-width: 0;
    }

    .ct-nav-button {
      min-height: 40px;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      color: #111827;
      font-size: 15px;
      font-weight: 600;
    }

    .ct-nav-button:hover {
      background: transparent;
      color: var(--ct-navy);
    }

    .ct-nav-button[aria-current="page"] {
      background: transparent;
      color: #020617;
      box-shadow: inset 0 -2px 0 var(--ct-navy);
    }

    .ct-config-button {
      min-height: 40px;
      padding: 0 18px;
      border: 1px solid var(--ct-line-strong);
      border-radius: 7px;
      background: #fff;
      color: #111827;
      box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
    }

    .ct-config-button:hover {
      background: #f6f7f8;
      border-color: #c7cbd1;
    }

    .ct-sidebar {
      grid-column: 1;
      grid-row: 2;
      display: grid;
      grid-template-rows: minmax(0, 1fr) auto;
      min-height: 0;
      background: var(--ct-sidebar-bg);
      color: #e6eaf0;
      border-right: 1px solid #050d18;
      overflow: hidden;
    }

    .ct-sidebar-main {
      min-height: 0;
      overflow-x: hidden;
      overflow-y: auto;
      padding: 20px 16px 14px;
    }

    .ct-sidebar-section {
      padding: 0 0 20px;
      margin-bottom: 20px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    }

    .ct-sidebar-heading {
      margin: 0 0 14px;
      color: #fff;
      font-size: 15px;
      line-height: 1.3;
      font-weight: 700;
    }

    #ct-project-status {
      margin: -7px 0 14px;
      color: #b3bac5;
      font-size: 12px;
    }

    .ct-mode-list {
      gap: 4px;
    }

    .ct-mode-button,
    .ct-project-button,
    .ct-tree-button,
    .ct-file-button,
    .ct-auth-tab {
      color: #e6eaf0;
      border-radius: 7px;
      font-size: 15px;
      font-weight: 600;
    }

    .ct-mode-button {
      min-height: 42px;
      padding: 10px 12px;
    }

    .ct-mode-button:hover,
    .ct-project-button:hover,
    .ct-tree-button:hover,
    .ct-file-button:hover,
    .ct-auth-tab:hover {
      background: var(--ct-sidebar-hover);
    }

    .ct-mode-button[aria-pressed="true"] {
      background: var(--ct-sidebar-active);
      color: #fff;
    }

    .ct-project-tools {
      margin: 0 0 16px;
    }

    .ct-small-button,
    .ct-sidebar .ct-small-button {
      min-height: 42px;
      border: 1px solid rgba(255, 255, 255, 0.07);
      border-radius: 7px;
      background: rgba(255, 255, 255, 0.1);
      color: #fff;
      font-size: 14px;
      font-weight: 650;
    }

    .ct-small-button:hover {
      background: rgba(255, 255, 255, 0.16);
    }

    .ct-small-button.ct-primary {
      background: rgba(255, 255, 255, 0.12);
    }

    .ct-sidebar .ct-input {
      min-height: 40px;
      border-color: rgba(255, 255, 255, 0.16);
      background: rgba(255, 255, 255, 0.08);
      color: #fff;
    }

    .ct-project-button {
      min-height: 34px;
      padding: 7px 8px;
    }

    .ct-project-node,
    .ct-project-children,
    .ct-tree-section,
    .ct-row-wrap {
      width: 100%;
      min-width: 0;
      max-width: 100%;
      overflow: hidden;
    }

    .ct-row-wrap .ct-project-button,
    .ct-row-wrap .ct-tree-button,
    .ct-row-wrap .ct-file-button {
      flex: 1 1 auto;
      min-width: 0;
      max-width: calc(100% - 31px);
    }

    .ct-row-action {
      flex: 0 0 28px;
      width: 28px;
      height: 28px;
    }

    .ct-tree-row {
      min-height: 29px;
      color: #dfe4ec;
      font-size: 14px;
    }

    .ct-file-button {
      color: #d8dee8;
      font-size: 13px;
      font-weight: 500;
    }

    .ct-file-button[aria-current="true"] {
      background: rgba(255, 255, 255, 0.1);
      box-shadow: none;
      color: #fff;
    }

    .ct-row-action:hover {
      background: rgba(255, 255, 255, 0.13);
    }

    .ct-sidebar-footer {
      padding: 18px 16px;
      border-top: 1px solid rgba(255, 255, 255, 0.12);
      background: transparent;
      align-content: start;
    }

    .ct-auth-user {
      color: #fff;
      font-size: 14px;
    }

    .ct-auth-email {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      font-weight: 500;
    }

    .ct-auth-user .ct-small-button,
    .ct-auth-tab {
      height: 42px;
      min-height: 42px;
    }

    .ct-auth-tabs {
      align-items: start;
    }

    .ct-auth-tab {
      justify-content: center;
      border: 1px solid rgba(255, 255, 255, 0.16);
      font-size: 13px;
    }

    .ct-auth-tab[aria-pressed="true"] {
      background: var(--ct-sidebar-active);
      color: #fff;
    }

    .ct-shell {
      grid-column: 2;
      grid-row: 2;
      height: 100%;
      min-height: 0;
      display: grid;
      grid-template-rows: minmax(0, 1fr);
      background: var(--ct-page);
    }

    .ct-workspace,
    .ct-canvas-wrap,
    .ct-canvas {
      background: var(--ct-page);
    }

    .ct-canvas-wrap {
      padding: 36px 38px;
      overflow: auto;
    }

    .ct-canvas {
      min-height: 100%;
      align-items: flex-start;
      justify-content: center;
    }

    .ct-paper {
      width: min(100%, 1220px);
      height: auto;
      min-height: min(760px, calc(100vh - 140px));
      overflow: visible;
      border: 1px solid var(--ct-line);
      border-radius: 9px;
      background: #fff;
      box-shadow: var(--ct-shadow);
    }

    .ct-paper-inner {
      height: auto;
      min-height: inherit;
      padding: 42px 48px;
      overflow: visible;
    }

    .ct-tool-header {
      margin: 0 0 32px;
    }

    .ct-tool-header h1 {
      margin: 0;
      color: var(--ct-ink);
      font-size: clamp(32px, 4vw, 40px);
      line-height: 1.08;
      font-weight: 750;
    }

    .ct-tool-header p {
      margin: 8px 0 0;
      color: var(--ct-muted);
      font-size: 16px;
      line-height: 1.45;
      font-style: italic;
    }

    .ct-request-panel,
    .ct-setup-grid {
      width: 100%;
      max-width: none;
      gap: 24px;
      margin: 0;
    }

    .ct-request-panel.ct-is-busy {
      opacity: 1;
    }

    .ct-request-row {
      grid-template-columns: minmax(240px, 0.8fr) minmax(0, 1.6fr);
      gap: 28px;
    }

    .ct-option-grid,
    .ct-option-grid.ct-option-grid-wide,
    .ct-option-grid.ct-option-grid-deep {
      grid-template-columns: minmax(220px, 0.8fr) minmax(340px, 1.2fr);
      gap: 28px;
      align-items: start;
    }

    .ct-option-grid.ct-option-grid-wide {
      grid-template-columns: minmax(290px, 1fr) minmax(420px, 1.3fr) minmax(76px, auto);
    }

    .ct-deep-option-grid {
      display: grid;
      position: relative;
      grid-template-columns: minmax(220px, 0.8fr) minmax(340px, 1.2fr);
      gap: 28px;
      align-items: start;
    }

    .ct-deep-request-panel {
      gap: 24px;
    }

    .ct-deep-file-row {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px;
    }

    .ct-deep-file-field {
      display: grid;
      row-gap: 8px;
      align-items: start;
    }

    .ct-deep-input-block {
      gap: 8px;
    }

    .ct-deep-input-label-row {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      align-items: end;
    }

    .ct-deep-input-row {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 10px;
      align-items: stretch;
    }

    .ct-deep-textarea-wrap {
      min-width: 0;
      position: relative;
    }

    .ct-deep-textarea-wrap.ct-has-upload .ct-textarea {
      padding-bottom: 52px;
    }

    .ct-deep-upload-inside {
      position: absolute;
      left: 12px;
      bottom: 12px;
      z-index: 2;
    }

    .ct-deep-upload-inside .ct-upload-trigger {
      width: 30px;
      height: 30px;
      min-height: 30px;
      border-color: transparent;
      border-radius: 6px;
      background: transparent;
      color: var(--ct-accent);
    }

    .ct-deep-upload-inside .ct-upload-trigger:hover,
    .ct-deep-upload-inside .ct-upload-trigger:focus-visible {
      background: color-mix(in srgb, var(--ct-accent) 12%, transparent);
      border-color: transparent;
    }

    .ct-deep-upload-inside .ct-upload-trigger::after {
      left: 0;
      transform: translateY(4px);
    }

    .ct-deep-upload-inside .ct-upload-trigger:hover::after,
    .ct-deep-upload-inside .ct-upload-trigger:focus-visible::after {
      transform: translateY(0);
    }

    .ct-deep-upload-inside .ct-icon {
      width: 19px;
      height: 19px;
    }

    .ct-deep-post-input-row {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 18px;
      align-items: start;
      margin-top: 0;
    }

    .ct-deep-upload-feedback {
      min-width: 0;
      display: grid;
      gap: 7px;
      align-content: start;
    }

    .ct-deep-surprise-button {
      justify-self: start;
    }

    .ct-wide-field {
      grid-column: auto;
    }

    .ct-field {
      gap: 8px;
    }

    .ct-compact-field,
    .ct-minimal-input-block {
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
    }

    .ct-label,
    .ct-request-panel .ct-label,
    .ct-setup-grid .ct-label {
      color: #111827;
      font-size: 14px;
      line-height: 1.25;
      font-weight: 650;
    }

    .ct-input,
    .ct-select {
      height: 48px;
      min-height: 48px;
      padding: 0 15px;
      border: 1px solid var(--ct-line-strong);
      border-radius: 7px;
      background: #fff;
      color: #111827;
      font-size: 15px;
    }

    .ct-textarea,
    .ct-minimal-input-block .ct-textarea {
      min-height: 148px;
      max-height: none;
      padding: 14px 15px;
      border: 1px solid var(--ct-line-strong);
      border-radius: 7px;
      background: #fff;
      color: #111827;
      font-size: 15px;
      line-height: 1.45;
      resize: vertical;
    }

    .ct-input::placeholder,
    .ct-textarea::placeholder {
      color: #9aa1ac;
    }

    .ct-input:focus,
    .ct-select:focus,
    .ct-textarea:focus {
      border-color: var(--ct-navy);
      box-shadow: 0 0 0 3px rgba(11, 39, 69, 0.08);
    }

    .ct-side-switch,
    .ct-pill-row,
    .ct-quality-row,
    .ct-highlight-row {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .ct-pill,
    .ct-quality-pill,
    .ct-swatch-button {
      min-height: 44px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 9px;
      padding: 0 18px;
      border: 1px solid var(--ct-line-strong);
      border-radius: 7px;
      background: #fff;
      color: #111827;
      font-size: 15px;
      font-weight: 650;
    }

    .ct-pill:hover,
    .ct-quality-pill:hover,
    .ct-swatch-button:hover {
      background: #f6f7f8;
    }

    .ct-pill[aria-pressed="true"],
    .ct-quality-pill[aria-pressed="true"] {
      background: var(--ct-navy);
      border-color: var(--ct-navy);
      color: #fff;
      box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
    }

    .ct-quality-pill.ct-quality-disabled,
    .ct-quality-pill.ct-quality-disabled[aria-pressed="true"],
    .ct-quality-pill.ct-quality-disabled:hover {
      position: relative;
      background: #f2f3f5;
      border-color: #d5d8de;
      color: #8b929d;
      box-shadow: none;
      cursor: not-allowed;
    }

    .ct-quality-pill.ct-quality-disabled[data-tooltip]:hover::after,
    .ct-quality-pill.ct-quality-disabled[data-tooltip]:focus-visible::after {
      content: attr(data-tooltip);
      position: absolute;
      left: 50%;
      bottom: calc(100% + 8px);
      z-index: 12;
      padding: 5px 7px;
      border-radius: 5px;
      background: #111214;
      color: #fff;
      font-size: 11px;
      font-weight: 750;
      white-space: nowrap;
      transform: translateX(-50%);
      pointer-events: none;
    }

    .ct-swatch-button[aria-pressed="true"] {
      border-color: var(--ct-navy);
      background: #f3f6f9;
      color: #0f172a;
    }

    .ct-swatch-chip {
      width: 16px;
      height: 16px;
      flex: 0 0 16px;
      border-radius: 4px;
      background: var(--swatch-color);
      box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.14);
    }

    .ct-color-dot {
      width: auto;
      height: auto;
      border-radius: 7px;
    }

    .ct-submit,
    .ct-action-button {
      min-height: 44px;
      padding: 0 22px;
      border: 1px solid var(--ct-navy);
      border-radius: 7px;
      background: var(--ct-navy);
      color: #fff;
      font-size: 15px;
      font-weight: 650;
    }

    .ct-submit:hover,
    .ct-action-button:hover {
      background: var(--ct-navy-hover);
      border-color: var(--ct-navy-hover);
    }

    .ct-submit.ct-secondary,
    .ct-action-button.ct-secondary {
      border-color: var(--ct-line-strong);
      background: #fff;
      color: #111827;
    }

    .ct-submit.ct-secondary:hover,
    .ct-action-button.ct-secondary:hover {
      background: #f6f7f8;
      border-color: #c7cbd1;
    }

    .ct-danger-button,
    .ct-submit.ct-danger-button {
      border-color: var(--ct-red);
      background: var(--ct-red);
      color: #fff;
    }

    .ct-action-strip {
      justify-content: flex-end;
      margin-top: 6px;
    }

    .ct-deep-submit-row {
      align-items: center;
      justify-content: flex-end;
      gap: 14px;
      margin-top: 0;
    }

    .ct-deep-upload-submit-note {
      margin: -6px 0 0;
      color: var(--ct-text-muted);
      font-size: 11px;
      font-style: italic;
      font-weight: 550;
      line-height: 1.3;
      text-align: center;
    }

    .ct-run-status {
      margin: -8px 0 24px;
    }

    .ct-progress-card,
    .ct-complete-card {
      padding: 14px 16px;
      border: 1px solid #cbd5e1;
      border-radius: 8px;
      background: #fff;
      box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
    }

    .ct-run-status .ct-progress-card {
      width: min(100%, 480px);
    }

    .ct-run-status .ct-complete-card {
      width: fit-content;
      max-width: 100%;
    }

    .ct-complete-card .ct-action-strip {
      gap: 14px;
    }

    .ct-progress-label,
    .ct-complete-label {
      color: #0f172a;
      font-size: 15px;
      font-weight: 750;
    }

    .ct-progress-track {
      height: 7px;
      background: #dbe3ee;
    }

    .ct-progress-fill {
      background: #123a6b;
    }

    .ct-queue-panel .ct-progress-card {
      padding: 10px 0 0;
      border: 0;
      background: transparent;
      box-shadow: none;
    }

    .ct-queue-panel .ct-progress-label {
      color: #475569;
      font-size: 12px;
    }

    .ct-queue-panel .ct-progress-track {
      height: 5px;
    }

    .ct-complete-marker {
      color: #157347;
      font-size: 12px;
      font-weight: 700;
    }

    .ct-assisted-paper .ct-paper-inner {
      padding-bottom: 34px;
    }

    .ct-assisted-layout {
      width: 100%;
      max-width: none;
      margin: 0;
      gap: 24px;
      position: relative;
      isolation: isolate;
    }

    @media (min-width: 1061px) {
      .ct-assisted-layout {
        min-width: 842px;
      }
    }

    .ct-assisted-setup-panel {
      gap: 24px;
    }

    .ct-assisted-setup-panel .ct-request-row {
      grid-template-columns: minmax(240px, 0.8fr) minmax(0, 1.6fr);
      gap: 28px;
    }

    .ct-assisted-setup-panel .ct-field {
      gap: 8px;
    }

    .ct-assisted-setup-panel .ct-label {
      line-height: 1.25;
    }

    .ct-assisted-setup-panel .ct-input,
    .ct-assisted-setup-panel .ct-select {
      box-sizing: border-box;
      height: 48px;
      min-height: 48px;
      padding: 0 15px;
    }

    .ct-assisted-sticky {
      top: -1px;
      gap: 14px;
      z-index: 20;
      padding: 0 0 12px;
      background: #fff;
      border-bottom: 1px solid #e5e7eb;
      box-shadow: 0 14px 24px rgba(15, 23, 42, 0.08);
    }

    .ct-assisted-workbench {
      grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
      gap: 18px;
      align-items: stretch;
    }

    .ct-assisted-request {
      gap: 12px;
    }

    .ct-assisted-queue-slot .ct-queue-panel {
      min-height: 136px;
      max-height: 174px;
    }

    .ct-queue-panel {
      gap: 10px;
      padding: 12px;
      border: 1px solid var(--ct-line);
      border-radius: 8px;
      background: #fff;
    }

    .ct-assisted-empty-queue {
      min-height: 136px;
      border: 1px solid var(--ct-line);
      border-radius: 8px;
      background: #fff;
      color: var(--ct-muted);
    }

    .ct-queue-item {
      padding: 11px 12px;
      border: 1px solid var(--ct-line);
      border-radius: 8px;
      background: #fff;
    }

    .ct-queue-title {
      color: #111827;
      font-size: 14px;
      font-weight: 700;
    }

    .ct-queue-meta {
      color: var(--ct-muted);
      font-size: 12px;
      font-weight: 600;
    }

    .ct-assisted-results-shell {
      position: relative;
      z-index: 1;
      padding-top: 18px;
    }

    .ct-app.ct-assisted-scroll .ct-canvas-wrap {
      padding-top: 0;
    }

    .ct-app.ct-assisted-scroll .ct-assisted-sticky {
      top: 0;
      margin-top: 0;
      padding-top: 12px;
    }

    .ct-result-card {
      gap: 8px;
      padding: 16px;
      border: 1px solid var(--ct-line);
      border-radius: 8px;
      background: #fff;
    }

    .ct-result-card h3 {
      color: #111827;
      font-size: 16px;
      font-weight: 700;
    }

    .ct-result-domain {
      margin: -4px 0 0;
      color: var(--ct-muted);
      font-size: 13px;
      font-weight: 500;
    }

    .ct-result-snippet {
      color: #3f4652;
      font-size: 14px;
    }

    .ct-reader {
      max-width: 900px;
    }

    .ct-reader-head {
      margin-bottom: 22px;
    }

    .ct-reader-title {
      color: #111827;
      font-size: 30px;
      font-weight: 750;
    }

    .ct-upload-trigger {
      width: 44px;
      height: 44px;
      min-height: 44px;
      border-color: var(--ct-line-strong);
      color: var(--ct-navy);
    }

    .ct-upload-trigger:hover,
    .ct-upload-trigger:focus-visible {
      background: #f6f7f8;
      border-color: var(--ct-navy);
    }

    .ct-file-chips {
      justify-content: flex-start;
    }

    .ct-file-chip {
      border-radius: 7px;
      background: #f3f4f6;
      color: #111827;
    }

    .ct-status {
      color: #7f1d1d;
      font-size: 13px;
      font-weight: 600;
    }

    .ct-help {
      color: var(--ct-muted);
      font-size: 13px;
    }

    .ct-error {
      color: #b4232a;
    }

    .ct-inline-download-menu,
    .ct-download-menu {
      border: 1px solid var(--ct-line);
      border-radius: 8px;
      background: #fff;
      box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
    }

    .ct-inline-download-option,
    .ct-download-option {
      color: #111827;
      font-size: 14px;
      font-weight: 600;
    }

    .ct-inline-download-option:hover:not(:disabled),
    .ct-download-option:hover {
      background: #f6f7f8;
    }

    .ct-review-panel {
      position: absolute;
      inset: 0;
      z-index: 12;
      pointer-events: none;
    }

    .ct-review-tab {
      top: 8px;
      width: 42px;
      height: 58px;
      min-height: 58px;
      border: 1px solid #111f32;
      border-right: 0;
      border-radius: 9px 0 0 9px;
      background: #071323;
      color: #fff;
      box-shadow: 0 10px 24px rgba(15, 23, 42, 0.16);
    }

    .ct-review-panel[data-open="true"] .ct-review-tab {
      right: min(58vw, calc(100% - 48px));
    }

    .ct-review-shell {
      width: min(58vw, calc(100% - 48px));
      background: #fff;
      border-left: 1px solid var(--ct-line-strong);
      box-shadow: -14px 0 30px rgba(15, 23, 42, 0.12);
      grid-template-rows: auto auto minmax(0, 1fr);
    }

    .ct-review-header {
      min-height: 66px;
      padding: 0 18px 0 22px;
      background: #fff;
      color: var(--ct-ink);
      border-bottom: 1px solid var(--ct-line);
    }

    .ct-review-title {
      color: #111827;
      font-size: 15px;
      font-weight: 700;
    }

    .ct-review-title-input {
      width: min(100%, 520px);
      height: 38px;
      padding: 0 8px;
      border: 1px solid transparent;
      border-radius: 7px;
      background: transparent;
      color: #111827;
      font: inherit;
      cursor: text;
    }

    .ct-review-title-input:hover {
      border-color: #d6d3cc;
      background: #f8f8f6;
    }

    .ct-review-title-input:focus {
      border-color: var(--ct-navy);
      background: #fff;
      box-shadow: 0 0 0 3px rgba(11, 39, 69, 0.08);
      outline: 0;
    }

    .ct-review-actions {
      gap: 10px;
    }

    .ct-autosave-status {
      min-width: 70px;
      color: var(--ct-muted);
      font-size: 13px;
      font-weight: 500;
    }

    .ct-review-list-button,
    .ct-review-header .ct-icon-button,
    .ct-modal-header .ct-icon-button {
      color: #111827;
      background: transparent;
    }

    .ct-review-list-button:hover,
    .ct-review-header .ct-icon-button:hover,
    .ct-modal-header .ct-icon-button:hover {
      background: #f6f7f8;
    }

    .ct-review-toolbar-row {
      min-width: 0;
      display: flex;
      align-items: center;
      min-height: 52px;
      padding: 8px 16px;
      background: #fff;
      border-bottom: 1px solid var(--ct-line);
      overflow-x: auto;
      overflow-y: hidden;
    }

    .ct-toolbar {
      gap: 8px;
    }

    .ct-review-toolbar-row .ct-toolbar {
      flex: 0 0 max-content;
      min-width: max-content;
      overflow: visible;
    }

    .ct-toolbar-group {
      gap: 4px;
      padding-right: 10px;
      border-right: 1px solid var(--ct-line);
    }

    .ct-toolbar-select,
    .ct-toolbar-input {
      min-height: 34px;
      border: 1px solid var(--ct-line-strong);
      border-radius: 6px;
      background: #fff;
      color: #111827;
    }

    .ct-toolbar-input {
      width: 132px;
      padding: 0 9px;
      font: inherit;
    }

    .ct-toolbar-combo,
    .ct-size-control {
      position: relative;
      display: inline-flex;
      align-items: stretch;
      min-height: 34px;
    }

    .ct-toolbar-font-input {
      width: 170px;
      padding-right: 38px;
    }

    .ct-toolbar-size-input {
      width: 88px;
      padding-right: 30px;
    }

    .ct-toolbar-combo-toggle,
    .ct-size-step,
    .ct-size-menu-toggle {
      min-width: 28px;
      border: 0;
      background: transparent;
      color: #111827;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }

    .ct-toolbar-combo-toggle {
      position: absolute;
      right: 2px;
      top: 2px;
      bottom: 2px;
      border-radius: 5px;
    }

    .ct-size-menu-toggle {
      position: absolute;
      right: 2px;
      top: 2px;
      bottom: 2px;
      border-radius: 5px;
    }

    .ct-size-stepper {
      display: inline-flex;
      flex-direction: column;
      margin-left: 3px;
      border: 1px solid var(--ct-line-strong);
      border-radius: 6px;
      overflow: hidden;
      background: #fff;
    }

    .ct-size-step {
      width: 28px;
      min-height: 16px;
      padding: 0;
      border-radius: 0;
    }

    .ct-size-step + .ct-size-step {
      border-top: 1px solid var(--ct-line);
    }

    .ct-size-step-up .ct-icon {
      transform: rotate(180deg);
    }

    .ct-toolbar-menu {
      position: fixed;
      left: var(--ct-toolbar-menu-left, 0);
      top: var(--ct-toolbar-menu-top, 0);
      z-index: 80;
      min-width: 100%;
      max-height: 260px;
      display: none;
      overflow: auto;
      padding: 6px;
      border: 1px solid var(--ct-line-strong);
      border-radius: 8px;
      background: #fff;
      box-shadow: 0 16px 36px rgba(15, 23, 42, 0.18);
    }

    .ct-toolbar-menu[aria-hidden="false"] {
      display: grid;
      gap: 3px;
    }

    .ct-toolbar-option {
      min-height: 30px;
      border: 0;
      border-radius: 5px;
      background: transparent;
      color: #111827;
      text-align: left;
      padding: 5px 8px;
      font: inherit;
      font-weight: 400;
    }

    .ct-toolbar-option:hover,
    .ct-toolbar-option[aria-selected="true"] {
      background: #f1f5f9;
    }

    .ct-toolbar-button {
      min-height: 34px;
      min-width: 34px;
      border: 1px solid transparent;
      border-radius: 6px;
      background: transparent;
      color: #111827;
      font-weight: 650;
    }

    .ct-toolbar-button:hover {
      background: #f6f7f8;
      border-color: var(--ct-line);
    }

    .ct-toolbar-button[aria-pressed="true"] {
      background: #eef2ff;
      border-color: #c7d2fe;
    }

    .ct-toolbar-button.ct-download {
      padding: 0 12px;
      border-color: var(--ct-line-strong);
      background: #fff;
    }

    .ct-toolbar-button.ct-danger {
      color: var(--ct-red);
      background: transparent;
    }

    .ct-review-body {
      padding: 18px;
      background: #f8f8f6;
    }

    .ct-review-body .ct-editor {
      border: 1px solid var(--ct-line);
      border-radius: 8px;
      background: #fff;
      box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
    }

    .ct-review-empty,
    .ct-recent-list {
      width: min(100%, 680px);
      margin: 28px auto 0;
      gap: 12px;
    }

    .ct-recent-file {
      padding: 16px 18px;
      border: 1px solid var(--ct-line);
      border-radius: 8px;
      background: #fff;
    }

    .ct-recent-file:hover {
      background: #f8f8f6;
    }

    .ct-recent-file-title {
      color: #111827;
      font-size: 17px;
      font-weight: 750;
    }

    .ct-recent-file-meta {
      color: var(--ct-muted);
      font-size: 14px;
      font-weight: 600;
    }

    .ct-modal-backdrop {
      background: rgba(0, 0, 0, 0.45);
    }

    .ct-modal {
      width: min(880px, calc(100vw - 48px));
      max-height: 82vh;
      display: grid;
      grid-template-rows: auto minmax(0, 1fr);
      overflow: hidden;
      border: 1px solid #e1e1dd;
      border-radius: 12px;
      background: #fff;
      box-shadow: 0 18px 44px rgba(15, 23, 42, 0.18);
    }

    #ct-manage-modal .ct-modal {
      width: min(700px, calc(100vw - 48px));
    }

    .ct-modal-header {
      min-height: 62px;
      padding: 0 24px;
      background: #fff;
      color: #111827;
      border-bottom: 1px solid #e1e1dd;
    }

    .ct-modal-header h2 {
      font-size: 21px;
      font-weight: 700;
    }

    .ct-modal-body {
      min-height: 0;
      display: grid;
      gap: 0;
      padding: 0;
      overflow: auto;
    }

    #ct-config-body {
      grid-template-rows: minmax(0, 1fr) auto auto;
      overflow: hidden;
    }

    .ct-settings-body {
      display: grid;
      gap: 28px;
      padding: 28px 32px;
    }

    #ct-config-body > .ct-settings-body {
      min-height: 0;
      overflow: auto;
      padding-bottom: 32px;
    }

    .ct-settings-section {
      display: grid;
      gap: 16px;
    }

    .ct-settings-section + .ct-settings-section {
      padding-top: 26px;
      border-top: 1px solid #eceeed;
    }

    .ct-settings-section h3 {
      margin: 0;
      color: #111827;
      font-size: 16px;
      font-weight: 700;
    }

    .ct-settings-control {
      display: grid;
      gap: 8px;
    }

    .ct-checkbox-row {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: 10px;
      align-items: start;
    }

    .ct-checkbox-row input {
      width: 17px;
      height: 17px;
      margin: 2px 0 0;
      accent-color: var(--ct-navy);
    }

    .ct-checkbox-row .ct-checkbox-title {
      color: #111827;
      font-size: 14px;
      font-weight: 650;
    }

    .ct-checkbox-row p {
      margin: 3px 0 0;
      color: var(--ct-muted);
      font-size: 13px;
      line-height: 1.35;
    }

    .ct-font-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px 16px;
    }

    .ct-font-grid label {
      color: #111827;
      font-size: 13px;
      font-weight: 650;
    }

    .ct-modal-footer {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 12px;
      padding: 12px 24px;
      border-top: 1px solid #e1e1dd;
      background: #fff;
    }

    .ct-manage-name-row {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 12px;
      align-items: end;
    }

    .ct-manage-project-fields {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 12px;
    }

    .ct-danger-section {
      width: min(100%, 520px);
      justify-self: start;
      padding: 12px;
      border: 1px solid #f0c9cc;
      border-radius: 8px;
      background: var(--ct-red-soft);
    }

    .ct-danger-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
    }

    .ct-danger-row p {
      margin: 0;
      color: #6b3d42;
      font-size: 13px;
      line-height: 1.45;
    }

    .ct-danger-row .ct-danger-button {
      min-width: auto;
      min-height: 34px;
      padding: 7px 10px;
    }

    .ct-page-grid {
      max-width: 860px;
    }

    .ct-page-title {
      font-size: clamp(30px, 3vw, 40px);
      font-weight: 750;
    }

    .ct-feature-card {
      border-color: var(--ct-line);
      background: #fff;
    }

    @media (max-width: 1060px) {
      .ct-request-row,
      .ct-option-grid,
      .ct-option-grid.ct-option-grid-wide,
      .ct-deep-option-grid,
      .ct-assisted-workbench {
        grid-template-columns: 1fr;
      }

      .ct-deep-file-field {
        grid-template-columns: 1fr;
      }

      .ct-review-shell {
        width: calc(100% - 48px);
      }

      .ct-review-panel[data-open="true"] .ct-review-tab {
        right: calc(100% - 48px);
      }
    }

    @media (max-width: 860px) {
      .ct-app,
      .ct-app.ct-sidebar-collapsed {
        min-height: 100vh;
        height: auto;
        grid-template-columns: 1fr;
        grid-template-rows: auto auto minmax(0, 1fr);
      }

      .ct-topbar {
        position: sticky;
        top: 0;
        grid-column: 1;
        grid-row: 1;
        flex-wrap: wrap;
        padding: 12px 16px;
      }

      .ct-topbar-left {
        width: 100%;
        flex-wrap: wrap;
        gap: 14px;
      }

      .ct-nav {
        order: 2;
        width: 100%;
        flex: 1 0 100%;
        gap: 18px;
        overflow-x: auto;
      }

      .ct-topbar-right {
        width: 100%;
        justify-content: flex-start;
      }

      .ct-sidebar {
        grid-column: 1;
        grid-row: 2;
      }

      .ct-shell {
        grid-column: 1;
        grid-row: 3;
      }

      .ct-app.ct-sidebar-collapsed .ct-sidebar {
        display: none;
      }

      .ct-canvas-wrap {
        padding: 18px;
      }

      .ct-paper-inner {
        padding: 28px 22px;
      }

      .ct-font-grid,
      .ct-manage-name-row {
        grid-template-columns: 1fr;
      }

      .ct-danger-row {
        align-items: flex-start;
        flex-direction: column;
      }
    }

    /* Light/dark mockup theme layer. */
    html[data-theme="light"],
    .ct-app {
      --ct-bg: #ffffff;
      --ct-bg-soft: #f7f9fc;
      --ct-surface: #ffffff;
      --ct-surface-soft: #f8fafc;
      --ct-surface-raised: #ffffff;
      --ct-text: #071323;
      --ct-text-strong: #020617;
      --ct-text-muted: #64748b;
      --ct-text-soft: #94a3b8;
      --ct-border: #dce1e8;
      --ct-border-strong: #cbd5e1;
      --ct-sidebar-surface: #ffffff;
      --ct-sidebar-hover-surface: #f5f8fc;
      --ct-sidebar-active-surface: #f1f6ff;
      --ct-sidebar-active-text: #0b4ea2;
      --ct-primary: #071e3b;
      --ct-primary-hover: #0b2c57;
      --ct-primary-text: #ffffff;
      --ct-accent: #0b63ce;
      --ct-focus: rgba(11, 99, 206, 0.18);
      --ct-danger: #b4232a;
      --ct-danger-surface: #fff1f2;
      --ct-success: #138a45;
      --ct-shadow-soft: 0 12px 28px rgba(15, 23, 42, 0.08);
      --ct-shadow-strong: 0 22px 56px rgba(15, 23, 42, 0.18);
      --ct-overlay: rgba(15, 23, 42, 0.44);
      color-scheme: light;
      background: var(--ct-bg);
      color: var(--ct-text);
    }

    html[data-theme="dark"],
    .ct-app[data-theme="dark"] {
      --ct-bg: #080d17;
      --ct-bg-soft: #0a101b;
      --ct-surface: #0b111d;
      --ct-surface-soft: #0f1724;
      --ct-surface-raised: #111927;
      --ct-text: #f8fafc;
      --ct-text-strong: #ffffff;
      --ct-text-muted: #a8b3c5;
      --ct-text-soft: #77839a;
      --ct-border: #263244;
      --ct-border-strong: #334155;
      --ct-sidebar-surface: #0a101b;
      --ct-sidebar-hover-surface: #111b2b;
      --ct-sidebar-active-surface: #10234a;
      --ct-sidebar-active-text: #ffffff;
      --ct-primary: #1f6ff2;
      --ct-primary-hover: #3b82f6;
      --ct-primary-text: #ffffff;
      --ct-accent: #2f7cff;
      --ct-focus: rgba(47, 124, 255, 0.26);
      --ct-danger: #fb7185;
      --ct-danger-surface: #2a1119;
      --ct-success: #4ade80;
      --ct-shadow-soft: 0 16px 34px rgba(0, 0, 0, 0.28);
      --ct-shadow-strong: 0 28px 70px rgba(0, 0, 0, 0.44);
      --ct-overlay: rgba(0, 0, 0, 0.58);
      color-scheme: dark;
      background: var(--ct-bg);
      color: var(--ct-text);
    }

    html[data-theme="light"],
    html[data-theme="light"] body {
      background: #ffffff;
      color: #071323;
    }

    html[data-theme="dark"],
    html[data-theme="dark"] body {
      background: #080d17;
      color: #f8fafc;
    }

    .ct-app,
    .ct-shell,
    .ct-workspace,
    .ct-canvas-wrap,
    .ct-canvas {
      background: var(--ct-bg);
      color: var(--ct-text);
    }

    .ct-app {
      --ct-sidebar-width: 300px;
      --ct-sidebar-collapsed-width: 58px;
      --ct-topbar-height: 68px;
      grid-template-columns: var(--ct-sidebar-width) minmax(0, 1fr);
      grid-template-rows: var(--ct-topbar-height) minmax(0, 1fr);
    }

    .ct-app.ct-sidebar-collapsed {
      grid-template-columns: var(--ct-sidebar-collapsed-width) minmax(0, 1fr);
    }

    .ct-topbar {
      min-height: var(--ct-topbar-height);
      padding: 0;
      display: grid;
      grid-template-columns: var(--ct-sidebar-width) minmax(0, 1fr) auto;
      align-items: stretch;
      gap: 0;
      background: var(--ct-surface);
      color: var(--ct-text);
      border-bottom: 1px solid var(--ct-border);
      box-shadow: none;
    }

    .ct-app.ct-sidebar-collapsed .ct-topbar {
      grid-template-columns: var(--ct-sidebar-collapsed-width) minmax(0, 1fr) auto;
    }

    .ct-topbar-brand-zone,
    .ct-topbar-nav-zone,
    .ct-topbar-right {
      min-width: 0;
      display: flex;
      align-items: center;
    }

    .ct-topbar-brand-zone {
      position: relative;
      height: 100%;
      display: grid;
      grid-template-columns: var(--ct-sidebar-collapsed-width) minmax(0, 1fr);
      gap: 0;
      padding: 0;
    }

    .ct-topbar-brand-zone::after {
      content: "";
      position: absolute;
      top: 12px;
      right: 0;
      bottom: 12px;
      width: 1px;
      background: var(--ct-border);
      pointer-events: none;
    }

    .ct-app.ct-sidebar-collapsed .ct-topbar-brand-zone {
      grid-template-columns: var(--ct-sidebar-collapsed-width);
    }

    .ct-topbar-nav-zone {
      height: 100%;
      padding: 0 42px;
    }

    .ct-topbar-right {
      height: 100%;
      justify-content: flex-end;
      gap: 14px;
      padding: 0 28px;
    }

    .ct-topbar-left {
      gap: 26px;
    }

    .ct-brand {
      flex: 0 0 auto;
      grid-column: 1 / -1;
      grid-row: 1;
      justify-self: center;
      align-self: center;
      color: var(--ct-text-strong);
      font-size: 28px;
      margin-left: 0;
    }

    .ct-app.ct-sidebar-collapsed .ct-topbar .ct-brand {
      display: none;
    }

    .ct-menu-button,
    .ct-icon-button {
      color: var(--ct-text);
      border-radius: 7px;
    }

    .ct-menu-button {
      grid-column: 1;
      grid-row: 1;
      width: 34px;
      height: 34px;
      justify-self: center;
      align-self: center;
      z-index: 1;
    }

    .ct-menu-button:hover,
    .ct-icon-button:hover {
      background: var(--ct-surface-soft);
      border-color: var(--ct-border);
    }

    .ct-nav {
      height: 100%;
      gap: 34px;
    }

    .ct-nav-button {
      color: var(--ct-text);
      align-self: stretch;
      min-height: var(--ct-topbar-height);
      font-size: 15px;
      font-weight: 600;
    }

    .ct-nav-button:hover {
      color: var(--ct-accent);
      background: transparent;
    }

    .ct-nav-button[aria-current="page"] {
      color: var(--ct-text-strong);
      box-shadow: inset 0 -4px 0 var(--ct-accent);
    }

    .ct-config-button {
      align-self: center;
      min-height: 42px;
      padding: 0 18px;
      border: 1px solid var(--ct-border);
      border-radius: 7px;
      background: var(--ct-surface);
      color: var(--ct-text);
      box-shadow: none;
    }

    .ct-config-button:hover {
      background: var(--ct-surface-soft);
      border-color: var(--ct-border-strong);
    }

    .ct-sidebar {
      background: var(--ct-sidebar-surface);
      color: var(--ct-text);
      border-right: 1px solid var(--ct-border);
    }

    .ct-sidebar-main {
      padding: 28px 24px 18px;
    }

    .ct-sidebar-section {
      margin-bottom: 26px;
      padding-bottom: 26px;
      border-bottom: 1px solid var(--ct-border);
    }

    .ct-sidebar-heading {
      color: var(--ct-text);
      font-size: 15px;
      font-weight: 700;
    }

    #ct-project-status,
    .ct-muted-note,
    .ct-help,
    .ct-page-copy,
    .ct-result-domain,
    .ct-reader-meta,
    .ct-queue-meta,
    .ct-autosave-status,
    .ct-recent-file-meta,
    .ct-checkbox-row p {
      color: var(--ct-text-muted);
    }

    .ct-mode-button,
    .ct-project-button,
    .ct-tree-button,
    .ct-file-button,
    .ct-auth-tab {
      position: relative;
      min-height: 42px;
      border-radius: 7px;
      color: var(--ct-text);
      background: transparent;
      font-weight: 600;
    }

    .ct-project-button,
    .ct-tree-button,
    .ct-file-button {
      min-height: 36px;
    }

    .ct-file-button {
      color: var(--ct-text-muted);
      font-size: 13px;
      font-weight: 500;
    }

    .ct-mode-button:hover,
    .ct-project-button:hover,
    .ct-tree-button:hover,
    .ct-file-button:hover,
    .ct-auth-tab:hover {
      background: var(--ct-sidebar-hover-surface);
      color: var(--ct-text-strong);
    }

    .ct-mode-button[aria-pressed="true"] {
      background: var(--ct-sidebar-active-surface);
      color: var(--ct-sidebar-active-text);
      box-shadow: inset 4px 0 0 var(--ct-accent);
    }

    .ct-file-button[aria-current="true"] {
      background: color-mix(in srgb, var(--ct-shell-text) 10%, transparent);
      color: var(--ct-shell-text);
      box-shadow: none;
      font-weight: 400;
    }

    .ct-row-action,
    .ct-chevron,
    .ct-tree-row {
      color: var(--ct-text-muted);
    }

    .ct-chevron .ct-icon {
      width: 15px;
      height: 15px;
      stroke-width: 2.4;
    }

    .ct-row-action:hover {
      background: var(--ct-sidebar-hover-surface);
      color: var(--ct-text);
    }

    .ct-small-button,
    .ct-sidebar .ct-small-button,
    .ct-auth-tab {
      min-height: 42px;
      border: 1px solid var(--ct-border);
      border-radius: 7px;
      background: var(--ct-surface);
      color: var(--ct-text);
      box-shadow: none;
    }

    .ct-small-button:hover,
    .ct-sidebar .ct-small-button:hover,
    .ct-auth-tab:hover {
      background: var(--ct-surface-soft);
      border-color: var(--ct-accent);
      color: var(--ct-accent);
    }

    .ct-small-button.ct-primary,
    .ct-auth-tab[aria-pressed="true"] {
      background: var(--ct-sidebar-active-surface);
      border-color: var(--ct-accent);
      color: var(--ct-sidebar-active-text);
    }

    .ct-sidebar-footer {
      padding: 28px 24px;
      background: var(--ct-sidebar-surface);
      border-top: 1px solid var(--ct-border);
    }

    .ct-auth-user {
      color: var(--ct-text);
      text-align: center;
      justify-items: stretch;
    }

    .ct-auth-email {
      color: var(--ct-text);
      display: block;
      width: 100%;
      overflow-wrap: anywhere;
    }

    .ct-canvas-wrap {
      padding: 62px 54px 44px;
    }

    .ct-canvas {
      justify-content: flex-start;
    }

    .ct-paper {
      width: min(100%, 1080px);
      min-height: auto;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
    }

    .ct-paper-inner {
      min-height: auto;
      padding: 0 28px 32px;
    }

    .ct-tool-header {
      margin-bottom: 34px;
    }

    .ct-tool-header h1,
    .ct-page-title,
    .ct-reader-title,
    .ct-review-empty h2,
    .ct-recent-list h2 {
      color: var(--ct-text-strong);
      letter-spacing: 0;
    }

    .ct-tool-header h1 {
      font-size: clamp(34px, 4.5vw, 42px);
      line-height: 1.05;
      font-weight: 780;
    }

    .ct-tool-header p {
      color: var(--ct-text-muted);
      font-size: 16px;
      font-style: italic;
    }

    .ct-request-panel,
    .ct-setup-grid,
    .ct-assisted-setup-panel {
      gap: 26px;
    }

    .ct-request-row,
    .ct-option-grid,
    .ct-option-grid.ct-option-grid-deep,
    .ct-deep-option-grid,
    .ct-assisted-setup-panel .ct-request-row {
      grid-template-columns: minmax(220px, 0.8fr) minmax(340px, 1.2fr);
      gap: 32px;
    }

    .ct-field,
    .ct-settings-control {
      gap: 9px;
    }

    .ct-label,
    .ct-request-panel .ct-label,
    .ct-setup-grid .ct-label,
    .ct-font-grid label,
    .ct-checkbox-row .ct-checkbox-title {
      color: var(--ct-text);
      font-size: 14px;
      font-weight: 680;
    }

    .ct-input,
    .ct-select,
    .ct-toolbar-select,
    .ct-toolbar-input,
    .ct-sidebar .ct-input {
      height: 48px;
      min-height: 48px;
      border: 1px solid var(--ct-border);
      border-radius: 7px;
      background: var(--ct-surface);
      color: var(--ct-text);
      box-shadow: none;
    }

    .ct-textarea,
    .ct-minimal-input-block .ct-textarea {
      min-height: 148px;
      border: 1px solid var(--ct-border);
      border-radius: 7px;
      background: var(--ct-surface);
      color: var(--ct-text);
      box-shadow: none;
    }

    .ct-input::placeholder,
    .ct-textarea::placeholder,
    .ct-sidebar .ct-input::placeholder {
      color: var(--ct-text-soft);
    }

    .ct-input:focus,
    .ct-select:focus,
    .ct-textarea:focus,
    .ct-toolbar-select:focus,
    .ct-toolbar-input:focus,
    .ct-review-title-input:focus {
      border-color: var(--ct-accent);
      box-shadow: 0 0 0 3px var(--ct-focus);
      outline: 0;
    }

    .ct-pill,
    .ct-quality-pill,
    .ct-swatch-button,
    .ct-theme-pill {
      min-height: 46px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 9px;
      padding: 0 18px;
      border: 1px solid var(--ct-border);
      border-radius: 7px;
      background: var(--ct-surface);
      color: var(--ct-text);
      font-size: 15px;
      font-weight: 650;
    }

    .ct-pill:hover,
    .ct-quality-pill:hover,
    .ct-swatch-button:hover,
    .ct-theme-pill:hover {
      background: var(--ct-surface-soft);
      border-color: var(--ct-border-strong);
    }

    .ct-pill[aria-pressed="true"],
    .ct-quality-pill[aria-pressed="true"],
    .ct-swatch-button[aria-pressed="true"],
    .ct-theme-pill[aria-pressed="true"] {
      border-color: var(--ct-accent);
      background: var(--ct-sidebar-active-surface);
      color: var(--ct-sidebar-active-text);
      box-shadow: 0 0 0 1px var(--ct-accent);
    }

    .ct-theme-row,
    .ct-side-switch,
    .ct-pill-row,
    .ct-quality-row,
    .ct-highlight-row {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .ct-quality-pill.ct-quality-disabled,
    .ct-quality-pill.ct-quality-disabled[aria-pressed="true"],
    .ct-quality-pill.ct-quality-disabled:hover {
      border-color: var(--ct-border);
      background: var(--ct-surface-soft);
      color: var(--ct-text-soft);
      box-shadow: none;
    }

    .ct-submit,
    .ct-action-button {
      min-height: 46px;
      border: 1px solid var(--ct-primary);
      border-radius: 7px;
      background: var(--ct-primary);
      color: var(--ct-primary-text);
      box-shadow: none;
      font-weight: 680;
    }

    .ct-submit:hover,
    .ct-action-button:hover {
      background: var(--ct-primary-hover);
      border-color: var(--ct-primary-hover);
    }

    .ct-submit.ct-secondary,
    .ct-action-button.ct-secondary,
    .ct-toolbar-button.ct-download {
      border-color: var(--ct-border);
      background: var(--ct-surface);
      color: var(--ct-text);
    }

    .ct-submit.ct-secondary:hover,
    .ct-action-button.ct-secondary:hover,
    .ct-toolbar-button.ct-download:hover {
      background: var(--ct-surface-soft);
      border-color: var(--ct-border-strong);
    }

    .ct-danger-button,
    .ct-submit.ct-danger-button {
      border-color: var(--ct-danger);
      background: var(--ct-danger);
      color: #ffffff;
    }

    .ct-status,
    .ct-error {
      color: var(--ct-danger);
    }

    .ct-progress-card,
    .ct-complete-card,
    .ct-queue-panel,
    .ct-assisted-empty-queue,
    .ct-queue-item,
    .ct-result-card,
    .ct-feature-card,
    .ct-recent-file,
    .ct-inline-download-menu,
    .ct-download-menu {
      border: 1px solid var(--ct-border);
      border-radius: 8px;
      background: var(--ct-surface);
      color: var(--ct-text);
      box-shadow: none;
    }

    .ct-progress-card,
    .ct-complete-card {
      box-shadow: var(--ct-shadow-soft);
    }

    .ct-progress-label,
    .ct-complete-label,
    .ct-queue-title,
    .ct-result-card h3,
    .ct-feature-card h3,
    .ct-recent-file-title,
    .ct-inline-download-option,
    .ct-download-option {
      color: var(--ct-text);
    }

    .ct-result-snippet,
    .ct-feature-card p,
    .ct-reader-body {
      color: var(--ct-text-muted);
    }

    .ct-progress-track,
    .ct-recent-pending-track {
      background: var(--ct-border);
    }

    .ct-progress-fill,
    .ct-recent-pending-fill {
      background: var(--ct-primary);
    }

    .ct-complete-marker {
      color: var(--ct-success);
    }

    .ct-assisted-sticky {
      background: var(--ct-bg);
      border-bottom: 1px solid var(--ct-border);
      box-shadow: none;
    }

    .ct-assisted-empty-queue {
      color: var(--ct-text-muted);
    }

    .ct-app[data-theme="light"] .ct-assisted-sticky {
      background: #ffffff;
      border-bottom: 1px solid var(--ct-border);
      box-shadow: none;
    }

    .ct-app[data-theme="light"] .ct-assisted-workbench,
    .ct-app[data-theme="light"] .ct-assisted-request,
    .ct-app[data-theme="light"] .ct-assisted-queue-slot {
      background: transparent;
      box-shadow: none;
    }

    .ct-app[data-theme="light"] .ct-assisted-queue-slot .ct-queue-panel,
    .ct-app[data-theme="light"] .ct-assisted-empty-queue {
      background: #ffffff;
    }

    .ct-app[data-theme="dark"] .ct-assisted-sticky {
      background: var(--ct-bg);
      border-bottom: 1px solid var(--ct-border);
      box-shadow: none;
    }

    .ct-app[data-theme="dark"] .ct-assisted-workbench,
    .ct-app[data-theme="dark"] .ct-assisted-request,
    .ct-app[data-theme="dark"] .ct-assisted-queue-slot {
      background: transparent;
      box-shadow: none;
    }

    .ct-tool-workspace {
      flex: 1 1 auto;
      min-height: 0;
      display: grid;
      grid-template-columns: minmax(340px, 0.92fr) minmax(420px, 1.08fr);
      gap: 22px;
      align-items: stretch;
    }

    .ct-tool-box {
      min-width: 0;
      min-height: 0;
      display: flex;
      flex-direction: column;
      gap: 22px;
      padding: 24px;
      border: 1px solid var(--ct-border);
      border-radius: 8px;
      background: color-mix(in srgb, var(--ct-surface) 92%, transparent);
      overflow: hidden;
    }

    .ct-tool-box-scroll {
      flex: 1 1 auto;
      min-height: 0;
      display: grid;
      gap: 22px;
      align-content: start;
      overflow: auto;
      padding-right: 2px;
    }

    .ct-tool-box-title {
      margin: 0;
      color: var(--ct-text);
      font-size: 17px;
      font-weight: 760;
      line-height: 1.2;
    }

    .ct-tool-options-box .ct-setup-grid,
    .ct-tool-options-box .ct-request-panel,
    .ct-tool-input-box .ct-request-panel {
      gap: 22px;
    }

    .ct-tool-options-box .ct-request-row,
    .ct-tool-options-box .ct-option-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 22px;
    }

    .ct-tool-options-box .ct-select,
    .ct-tool-options-box .ct-input {
      min-width: 0;
    }

    .ct-tool-options-box .ct-swatch-button {
      width: 48px;
      flex: 0 0 48px;
      padding: 0;
    }

    .ct-tool-queue-slot {
      min-height: 198px;
      display: grid;
      min-width: 0;
    }

    .ct-tool-queue-slot .ct-queue-panel,
    .ct-tool-queue-slot .ct-assisted-empty-queue {
      min-height: 198px;
      max-height: none;
      height: 100%;
    }

    .ct-tool-queue-slot .ct-queue-panel {
      align-content: start;
      overflow: auto;
    }

    .ct-queue-panel {
      gap: 10px;
    }

    .ct-queue-item {
      min-width: 0;
    }

    .ct-queue-item.ct-queue-failed {
      border-color: color-mix(in srgb, var(--ct-danger) 34%, var(--ct-border));
    }

    .ct-queue-actions {
      min-width: 0;
    }

    .ct-queue-actions .ct-submit {
      min-height: 36px;
      padding: 0 12px;
      font-size: 13px;
    }

	    .ct-tool-options-stack,
	    .ct-deep-options-stack {
	      display: grid;
	      gap: 22px;
	    }

	    .ct-deep-option-grid {
	      grid-template-columns: repeat(2, minmax(0, 1fr));
	    }

	    .ct-deep-option-grid .ct-quality-row,
	    .ct-deep-option-grid .ct-deep-file-row {
	      display: grid;
	      grid-template-columns: repeat(2, minmax(0, 1fr));
	      gap: 10px;
	      align-items: stretch;
	    }

	    .ct-deep-file-row .ct-pill,
	    .ct-quality-row .ct-quality-pill {
	      flex: 0 1 auto;
	      max-width: 152px;
	      white-space: normal;
	      line-height: 1.12;
	      text-align: center;
	    }

	    .ct-deep-option-grid .ct-deep-file-row .ct-pill,
	    .ct-deep-option-grid .ct-quality-row .ct-quality-pill {
	      width: 100%;
	      max-width: none;
	      padding-inline: 8px;
	      font-size: 14px;
	    }

	    .ct-deep-left-tools {
	      display: grid;
	      justify-items: start;
	      gap: 12px;
	    }

	    .ct-deep-upload-row {
	      width: 100%;
	      min-width: 0;
	      display: grid;
	      grid-template-columns: max-content minmax(0, 1fr);
	      gap: 14px;
	      align-items: end;
	    }

	    .ct-deep-upload-feedback {
	      min-width: 0;
	      display: grid;
	      gap: 8px;
	      align-content: end;
	    }

	    .ct-deep-left-tools .ct-file-chips,
	    .ct-deep-upload-feedback .ct-file-chips {
	      width: 100%;
	      min-width: 0;
	      justify-content: flex-start;
	    }

	    .ct-deep-left-tools .ct-upload-trigger {
	      width: 52px;
	      height: 52px;
	      min-height: 52px;
	    }

	    .ct-tool-left-submit-row {
	      justify-content: stretch;
	      margin-top: 0;
	    }

	    .ct-tool-left-submit-row .ct-submit {
	      width: 100%;
	    }

	    .ct-deep-input-label-row {
	      display: flex;
	      align-items: center;
	      justify-content: space-between;
	      gap: 12px;
	    }

	    .ct-deep-input-label-row .ct-label {
	      min-width: 0;
	    }

	    .ct-deep-surprise-button {
	      flex: 0 0 auto;
	      min-height: 34px;
	      padding: 0 12px;
	      font-size: 13px;
	      line-height: 1;
	    }

	    .ct-assisted-shell {
	      grid-template-columns: minmax(360px, 0.92fr) minmax(460px, 1.08fr);
	    }

    .ct-assisted-left-body {
      flex: 1 1 auto;
      min-height: 0;
      display: grid;
    }

	    .ct-assisted-search-box {
	      gap: 16px;
	      min-height: 520px;
	      height: min(720px, calc(100vh - 220px));
	    }

    .ct-assisted-search-form {
      display: grid;
      gap: 8px;
      flex: 0 0 auto;
    }

	    .ct-assisted-results-shell {
	      flex: 1 1 auto;
	      min-height: 0;
	      overflow-x: hidden;
	      overflow-y: auto;
	      padding: 0 2px 0 0;
	      box-sizing: border-box;
	    }

	    .ct-assisted-results {
	      width: 100%;
	      max-width: none;
	      min-width: 0;
	      margin: 0;
	      box-sizing: border-box;
	    }

	    .ct-assisted-results .ct-result-card {
	      width: 100%;
	      max-width: 100%;
	      min-width: 0;
	      box-sizing: border-box;
	      overflow: hidden;
	      padding: 13px;
	      gap: 7px;
	    }

	    .ct-assisted-results .ct-result-card h3 {
	      min-width: 0;
	      max-width: 100%;
	      overflow-wrap: anywhere;
	      word-break: break-word;
	      font-size: 15px;
	      line-height: 1.24;
	    }

	    .ct-assisted-results .ct-result-domain {
	      min-width: 0;
	      max-width: 100%;
	      overflow: hidden;
	      overflow-wrap: anywhere;
	      text-overflow: ellipsis;
	      font-size: 12px;
	    }

	    .ct-assisted-results .ct-result-snippet {
	      min-width: 0;
	      max-width: 100%;
	      overflow-wrap: anywhere;
	      word-break: break-word;
	      font-size: 13px;
	      line-height: 1.38;
	    }

	    .ct-assisted-results .ct-result-actions {
	      gap: 7px;
	    }

	    .ct-assisted-results .ct-action-button,
	    .ct-source-reader .ct-action-button {
	      min-height: 34px;
	      padding: 0 12px;
	      font-size: 13px;
	    }

	    .ct-assisted-cut-panel-header {
	      display: flex;
	      align-items: flex-start;
	      justify-content: space-between;
	      gap: 12px;
	    }

	    .ct-assisted-cut-panel-header .ct-label {
	      min-width: 0;
	    }

	    .ct-assisted-cut-close {
	      width: 30px;
	      height: 30px;
	      min-height: 30px;
	      flex: 0 0 30px;
	      color: var(--ct-text-muted);
	    }

    .ct-assisted-results-empty {
      min-height: 260px;
      display: grid;
      place-items: center;
      border: 1px solid var(--ct-border);
      border-radius: 8px;
      color: var(--ct-text-muted);
      text-align: center;
      font-size: 16px;
      font-weight: 650;
    }

    .ct-source-fetching {
      display: grid;
      place-items: center;
      align-content: center;
      gap: 14px;
    }

    .ct-source-fetching .ct-main-spinner {
      width: 38px;
      height: 38px;
      border-width: 3px;
    }

    .ct-assisted-cut-panel,
    .ct-source-reader {
      min-width: 0;
      min-height: 0;
      display: flex;
      flex-direction: column;
      gap: 12px;
      padding: 14px;
      border: 1px solid var(--ct-border);
      border-radius: 8px;
      background: var(--ct-surface);
    }

    .ct-source-reader {
      height: 100%;
    }

    .ct-source-reader-head {
      display: grid;
      gap: 10px;
    }

	    .ct-source-reader-actions {
	      display: flex;
	      flex-wrap: nowrap;
	      gap: 8px;
	      align-items: center;
	      justify-content: space-between;
	    }

    .ct-source-reader-actions-group {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
	      align-items: center;
	    }

	    .ct-source-icon-button {
	      width: 34px;
	      height: 34px;
	      flex: 0 0 34px;
	      border: 1px solid var(--ct-border);
	      background: var(--ct-surface);
	      color: var(--ct-text);
	      text-decoration: none;
	    }

    .ct-source-frame-wrap {
      flex: 1 1 auto;
      min-height: 230px;
      display: grid;
      border: 1px solid var(--ct-border);
      border-radius: 8px;
      overflow: hidden;
      background: var(--ct-surface-soft);
    }

    .ct-source-frame {
      width: 100%;
      height: 100%;
      min-height: 230px;
      border: 0;
      background: #ffffff;
    }

    .ct-source-fallback {
      margin: 0;
      color: var(--ct-text-muted);
      font-size: 12px;
      line-height: 1.35;
    }

	    .ct-source-fallback a {
	      color: var(--ct-primary);
	      font-weight: 760;
	    }

    .ct-reader {
      max-width: 900px;
    }

    .ct-source-expanded-backdrop {
      position: fixed;
      inset: 0;
      z-index: 70;
      display: grid;
      place-items: center;
      padding: 28px;
      background: rgba(3, 8, 18, 0.68);
    }

    .ct-source-expanded {
      width: min(1180px, 100%);
      height: min(780px, calc(100vh - 56px));
      background: var(--ct-surface);
      box-shadow: 0 24px 72px rgba(0, 0, 0, 0.36);
    }

    .ct-source-expanded .ct-source-frame-wrap,
    .ct-source-expanded .ct-source-frame {
      min-height: 0;
    }

    .ct-file-chip {
      border: 1px solid var(--ct-border);
      background: var(--ct-surface-soft);
      color: var(--ct-text);
    }

    .ct-chip-remove {
      color: var(--ct-text-muted);
    }

    .ct-upload-warning,
    .ct-upload-time-warning,
    .ct-selected-files {
      color: var(--ct-text-muted);
    }

    .ct-upload-trigger {
      border-color: var(--ct-border);
      background: var(--ct-surface);
      color: var(--ct-accent);
    }

    .ct-upload-trigger:hover,
    .ct-upload-trigger:focus-visible {
      background: var(--ct-surface-soft);
      border-color: var(--ct-accent);
    }

    .ct-modal-backdrop {
      background: var(--ct-overlay);
    }

    .ct-modal {
      border: 1px solid var(--ct-border);
      border-radius: 10px;
      background: var(--ct-surface);
      color: var(--ct-text);
      box-shadow: var(--ct-shadow-strong);
    }

    .ct-modal-header,
    .ct-modal-footer {
      background: var(--ct-surface);
      color: var(--ct-text);
      border-color: var(--ct-border);
    }

    .ct-modal-header h2,
    .ct-settings-section h3 {
      color: var(--ct-text);
    }

    .ct-settings-section + .ct-settings-section {
      border-top: 1px solid var(--ct-border);
    }

    .ct-checkbox-row input {
      accent-color: var(--ct-accent);
    }

    .ct-danger-section {
      border-color: color-mix(in srgb, var(--ct-danger) 34%, var(--ct-border));
      background: var(--ct-danger-surface);
    }

    .ct-danger-row p {
      color: var(--ct-text-muted);
    }

    .ct-review-tab {
      top: 8px;
      border-color: var(--ct-border);
      background: var(--ct-primary);
      color: var(--ct-primary-text);
      box-shadow: var(--ct-shadow-soft);
    }

    .ct-review-shell {
      background: var(--ct-surface);
      border-left: 1px solid var(--ct-border);
      box-shadow: var(--ct-shadow-strong);
    }

    .ct-review-header,
    .ct-review-toolbar-row {
      background: var(--ct-surface);
      color: var(--ct-text);
      border-color: var(--ct-border);
    }

    .ct-review-title,
    .ct-review-title-input {
      color: var(--ct-text);
    }

    .ct-review-title-input:hover {
      border-color: var(--ct-border);
      background: var(--ct-surface-soft);
    }

    .ct-review-list-button,
    .ct-review-header .ct-icon-button,
    .ct-modal-header .ct-icon-button {
      color: var(--ct-text);
      background: transparent;
    }

    .ct-review-list-button:hover,
    .ct-review-header .ct-icon-button:hover,
    .ct-modal-header .ct-icon-button:hover,
    .ct-toolbar-button:hover,
    .ct-inline-download-option:hover:not(:disabled),
    .ct-download-option:hover,
    .ct-recent-file:hover {
      background: var(--ct-surface-soft);
    }

    .ct-toolbar-group {
      border-right: 1px solid var(--ct-border);
    }

    .ct-toolbar-button {
      color: var(--ct-text);
      border-color: transparent;
      background: transparent;
    }

    .ct-toolbar-button:hover {
      border-color: var(--ct-border);
    }

    .ct-toolbar-button.ct-danger {
      color: var(--ct-danger);
    }

    .ct-toolbar-combo-toggle,
    .ct-size-step,
    .ct-size-menu-toggle {
      color: var(--ct-text);
    }

    .ct-toolbar-menu {
      border-color: var(--ct-border);
      background: var(--ct-surface);
      box-shadow: var(--ct-shadow-soft);
    }

    .ct-toolbar-option {
      color: var(--ct-text);
    }

    .ct-toolbar-option:hover,
    .ct-toolbar-option[aria-selected="true"] {
      background: var(--ct-surface-soft);
    }

    .ct-size-stepper {
      border-color: var(--ct-border);
      background: var(--ct-surface);
    }

    .ct-size-step + .ct-size-step {
      border-top-color: var(--ct-border);
    }

    .ct-toolbar-button[aria-pressed="true"] {
      background: #eef2ff;
      border-color: #c7d2fe;
      color: #111827;
    }

    .ct-review-body {
      background: var(--ct-bg-soft);
    }

    .ct-review-body-recent {
      background: transparent;
    }

    .ct-editor,
    .ct-review-body .ct-editor {
      border: 1px solid #dce1e8;
      border-radius: 8px;
      background: #ffffff;
      color: #111827;
      box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
      color-scheme: light;
    }

    .ct-editor h1,
    .ct-editor .ct-document-title,
    .ct-editor .ct-card-name,
    .ct-editor .ct-section-label {
      color: #111827;
    }

    .ct-editor .ct-document-subtitle,
    .ct-editor .ct-card-citation,
    .ct-editor .ct-card-body {
      color: #111827;
    }

    .ct-review-empty {
      color: var(--ct-text-muted);
    }

    .ct-loading-text,
    .ct-review-body .ct-loading-text {
      background: transparent;
      color: var(--ct-text-muted);
    }

    .ct-main-spinner {
      border-color: var(--ct-border);
      border-top-color: var(--ct-accent);
    }

    .ct-inline-download-menu,
    .ct-download-menu {
      box-shadow: var(--ct-shadow-soft);
    }

    .ct-app[data-theme="light"] .ct-sidebar {
      box-shadow: none;
    }

    .ct-app[data-theme="dark"] .ct-sidebar,
    .ct-app[data-theme="dark"] .ct-topbar {
      border-color: #202a3a;
    }

    .ct-app[data-theme="dark"] .ct-input,
    .ct-app[data-theme="dark"] .ct-select,
    .ct-app[data-theme="dark"] .ct-textarea,
    .ct-app[data-theme="dark"] .ct-toolbar-select,
    .ct-app[data-theme="dark"] .ct-toolbar-input {
      background: #0b111d;
    }

    html[data-theme="dark"] button.ct-toolbar-button[aria-pressed="true"],
    .ct-app[data-theme="dark"] button.ct-toolbar-button[aria-pressed="true"] {
      background: #dbeafe !important;
      border-color: #93c5fd !important;
      color: #071323 !important;
      box-shadow: 0 0 0 1px rgba(147, 197, 253, 0.34) !important;
      transition: none !important;
    }

    .ct-app[data-theme="dark"] .ct-toolbar-button[aria-pressed="true"]:hover {
      background: #bfdbfe;
      border-color: #bfdbfe;
      color: #071323;
    }

    .ct-app[data-theme="dark"] .ct-swatch-button[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-theme-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-quality-pill[aria-pressed="true"] {
      background: #0f2b62;
    }

    /* Global quiet hierarchy polish. */
    html[data-theme="light"],
    .ct-app {
      --ct-bg: #f7f9fc;
      --ct-bg-soft: #eef3f9;
      --ct-surface: #ffffff;
      --ct-surface-soft: #f3f6fa;
      --ct-surface-raised: #ffffff;
      --ct-text: #172033;
      --ct-text-strong: #071323;
      --ct-text-muted: #67758a;
      --ct-text-soft: #9aa7b8;
      --ct-border: #d8e0eb;
      --ct-border-strong: #b8c5d5;
      --ct-sidebar-surface: #ffffff;
      --ct-sidebar-hover-surface: #f2f6fb;
      --ct-sidebar-active-surface: #edf5ff;
      --ct-sidebar-active-text: #0e4d9e;
      --ct-primary: #1375ea;
      --ct-primary-hover: #0d63cc;
      --ct-primary-text: #ffffff;
      --ct-accent: #2f7ff5;
      --ct-focus: rgba(47, 127, 245, 0.16);
      --ct-shadow-soft: 0 10px 24px rgba(15, 31, 54, 0.07);
      --ct-shadow-strong: 0 24px 58px rgba(15, 31, 54, 0.18);
    }

    html[data-theme="dark"],
    .ct-app[data-theme="dark"] {
      --ct-bg: #070c16;
      --ct-bg-soft: #0a111d;
      --ct-surface: #0c1421;
      --ct-surface-soft: #101a2a;
      --ct-surface-raised: #101a2a;
      --ct-text: #dbe5f3;
      --ct-text-strong: #f7fbff;
      --ct-text-muted: #9eacc1;
      --ct-text-soft: #69778d;
      --ct-border: #263348;
      --ct-border-strong: #35465e;
      --ct-sidebar-surface: #0a111d;
      --ct-sidebar-hover-surface: #111d2e;
      --ct-sidebar-active-surface: #102a4d;
      --ct-sidebar-active-text: #f7fbff;
      --ct-primary: #1f82ff;
      --ct-primary-hover: #3b92ff;
      --ct-primary-text: #ffffff;
      --ct-accent: #54a0ff;
      --ct-focus: rgba(84, 160, 255, 0.22);
      --ct-shadow-soft: 0 16px 36px rgba(0, 0, 0, 0.26);
      --ct-shadow-strong: 0 30px 76px rgba(0, 0, 0, 0.48);
    }

    .ct-topbar {
      background: color-mix(in srgb, var(--ct-surface) 96%, var(--ct-bg));
      border-bottom-color: var(--ct-border);
    }

    button:focus {
      outline: none;
    }

    button:focus-visible,
    a:focus-visible {
      outline: 2px solid var(--ct-accent);
      outline-offset: 2px;
    }

    .ct-brand {
      font-size: 27px;
    }

    .ct-nav-button {
      color: var(--ct-text-muted);
      font-weight: 500;
    }

    .ct-nav-button[aria-current="page"] {
      color: var(--ct-text-strong);
      box-shadow: inset 0 -3px 0 var(--ct-accent);
    }

    .ct-config-button,
    .ct-small-button,
    .ct-sidebar .ct-small-button,
    .ct-auth-tab,
    .ct-icon-button,
    .ct-toolbar-button,
    .ct-source-icon-button {
      font-weight: 500;
    }

    .ct-sidebar-heading {
      color: var(--ct-text-muted);
      font-size: 13px;
      font-weight: 600;
      text-transform: none;
    }

    .ct-mode-button,
    .ct-project-button,
    .ct-tree-button,
    .ct-file-button,
    .ct-auth-tab {
      color: var(--ct-text-muted);
      font-weight: 500;
    }

    .ct-mode-button[aria-pressed="true"] {
      color: var(--ct-sidebar-active-text);
      background: var(--ct-sidebar-active-surface);
      box-shadow: inset 3px 0 0 var(--ct-accent);
      font-weight: 600;
    }

    .ct-file-button[aria-current="true"] {
      color: var(--ct-shell-text);
      background: color-mix(in srgb, var(--ct-shell-text) 10%, transparent);
      box-shadow: none;
      font-weight: 400;
    }

    .ct-canvas-wrap {
      background: var(--ct-bg);
      overflow: auto;
      padding-top: 46px;
      padding-bottom: 36px;
    }

    .ct-tool-header {
      margin-bottom: 26px;
    }

    .ct-tool-header h1,
    .ct-page-title,
    .ct-reader-title,
    .ct-review-empty h2,
    .ct-recent-list h2 {
      font-weight: 740;
    }

    .ct-tool-header p {
      color: var(--ct-text-muted);
      font-style: normal;
      font-weight: 400;
    }

    .ct-tool-box {
      border-color: var(--ct-border);
      background: color-mix(in srgb, var(--ct-surface) 94%, transparent);
      box-shadow: none;
      gap: 18px;
      padding: 22px;
    }

    .ct-tool-options-stack,
    .ct-deep-options-stack,
    .ct-tool-box-scroll {
      gap: 18px;
    }

    .ct-request-panel,
    .ct-setup-grid,
    .ct-assisted-setup-panel {
      gap: 22px;
    }

    .ct-tool-options-box .ct-side-switch {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
    }

    .ct-tool-options-box .ct-side-switch .ct-pill {
      width: 100%;
      min-height: 58px;
      font-size: 15px;
    }

    .ct-tool-options-box .ct-highlight-row {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 10px;
    }

    .ct-tool-options-box .ct-swatch-button {
      width: 100%;
      flex-basis: auto;
      min-height: 58px;
    }

    .ct-deep-option-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 18px;
    }

    .ct-deep-option-grid .ct-quality-row,
    .ct-deep-option-grid .ct-deep-file-row {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
    }

    .ct-deep-option-grid .ct-quality-row .ct-quality-pill,
    .ct-deep-option-grid .ct-deep-file-row .ct-pill {
      width: 100%;
      max-width: none;
      min-width: 0;
      min-height: 52px;
      padding: 0 10px;
      font-size: 11px;
      line-height: 1.12;
      white-space: normal;
      overflow-wrap: normal;
      word-break: normal;
      hyphens: none;
    }

    .ct-tool-box-title,
    .ct-label,
    .ct-request-panel .ct-label,
    .ct-setup-grid .ct-label,
    .ct-font-grid label,
    .ct-checkbox-row .ct-checkbox-title,
    .ct-settings-section h3,
    .ct-modal-header h2 {
      color: var(--ct-text-muted);
      font-weight: 600;
    }

    .ct-input,
    .ct-select,
    .ct-textarea,
    .ct-toolbar-select,
    .ct-toolbar-input,
    .ct-sidebar .ct-input {
      border-color: var(--ct-border);
      background: color-mix(in srgb, var(--ct-surface) 94%, var(--ct-bg));
      color: var(--ct-text-strong);
      font-weight: 400;
    }

    .ct-input:disabled,
    .ct-select:disabled,
    .ct-textarea:disabled {
      color: var(--ct-text-muted);
      background: color-mix(in srgb, var(--ct-surface-soft) 86%, var(--ct-bg));
      opacity: 0.78;
    }

    .ct-pill,
    .ct-quality-pill,
    .ct-swatch-button,
    .ct-theme-pill {
      min-height: 46px;
      border-color: var(--ct-border);
      background: color-mix(in srgb, var(--ct-surface) 92%, var(--ct-bg));
      color: var(--ct-text);
      font-weight: 500;
      box-shadow: none;
    }

    .ct-pill:hover,
    .ct-quality-pill:hover,
    .ct-swatch-button:hover,
    .ct-theme-pill:hover {
      background: var(--ct-surface-soft);
      border-color: var(--ct-border-strong);
      color: var(--ct-text-strong);
    }

    .ct-pill[aria-pressed="true"],
    .ct-quality-pill[aria-pressed="true"],
    .ct-swatch-button[aria-pressed="true"],
    .ct-theme-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-swatch-button[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-theme-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-quality-pill[aria-pressed="true"] {
      border-color: var(--ct-accent);
      background: color-mix(in srgb, var(--ct-accent) 12%, var(--ct-surface));
      color: var(--ct-text-strong);
      box-shadow: 0 0 0 1px color-mix(in srgb, var(--ct-accent) 72%, transparent);
      font-weight: 600;
    }

    .ct-quality-pill.ct-quality-disabled,
    .ct-quality-pill.ct-quality-disabled[aria-pressed="true"],
    .ct-quality-pill.ct-quality-disabled:hover {
      color: var(--ct-text-soft);
      background: color-mix(in srgb, var(--ct-surface-soft) 78%, var(--ct-bg));
      border-color: var(--ct-border);
      font-weight: 500;
    }

    .ct-swatch-chip {
      width: 18px;
      height: 18px;
      flex-basis: 18px;
      border-radius: 5px;
    }

    .ct-submit {
      min-height: 48px;
      border-color: var(--ct-primary);
      background: var(--ct-primary);
      color: var(--ct-primary-text);
      font-weight: 760;
      box-shadow: 0 10px 22px color-mix(in srgb, var(--ct-primary) 18%, transparent);
    }

    .ct-submit:hover {
      background: var(--ct-primary-hover);
      border-color: var(--ct-primary-hover);
    }

    .ct-submit.ct-secondary,
    .ct-submit.ct-quiet-action,
    .ct-action-button,
    .ct-action-button.ct-secondary,
    .ct-toolbar-button.ct-download {
      border-color: var(--ct-border);
      background: color-mix(in srgb, var(--ct-surface) 92%, var(--ct-bg));
      color: var(--ct-text);
      box-shadow: none;
      font-weight: 500;
    }

    .ct-submit.ct-secondary:hover,
    .ct-submit.ct-quiet-action:hover,
    .ct-action-button:hover,
    .ct-action-button.ct-secondary:hover,
    .ct-toolbar-button.ct-download:hover {
      border-color: var(--ct-border-strong);
      background: var(--ct-surface-soft);
      color: var(--ct-text-strong);
    }

    .ct-danger-button,
    .ct-submit.ct-danger-button {
      border-color: var(--ct-danger);
      background: var(--ct-danger);
      color: #ffffff;
      font-weight: 700;
    }

    .ct-tool-left-submit-row .ct-submit {
      min-height: 54px;
      font-size: 17px;
      font-weight: 780;
    }

    .ct-submit.ct-deep-surprise-button {
      min-height: 32px;
      padding: 0 10px;
      border-color: transparent;
      background: transparent;
      color: var(--ct-accent);
      font-size: 13px;
      font-weight: 500;
      box-shadow: none;
    }

    .ct-submit.ct-deep-surprise-button:hover {
      border-color: color-mix(in srgb, var(--ct-accent) 24%, transparent);
      background: color-mix(in srgb, var(--ct-accent) 9%, transparent);
      color: var(--ct-accent);
    }

    .ct-result-card,
    .ct-queue-panel,
    .ct-assisted-empty-queue,
    .ct-assisted-cut-panel,
    .ct-source-reader,
    .ct-complete-card,
    .ct-progress-card,
    .ct-recent-file,
    .ct-feature-card,
    .ct-modal,
    .ct-inline-download-menu,
    .ct-download-menu {
      border-color: var(--ct-border);
      background: color-mix(in srgb, var(--ct-surface) 94%, var(--ct-bg));
      box-shadow: none;
    }

    .ct-result-card h3,
    .ct-recent-file-title,
    .ct-queue-title,
    .ct-review-title,
    .ct-feature-card h3 {
      color: var(--ct-text-strong);
      font-weight: 600;
    }

    .ct-result-domain,
    .ct-result-snippet,
    .ct-reader-meta,
    .ct-reader-body,
    .ct-queue-meta,
    .ct-complete-label,
    .ct-progress-label,
    .ct-autosave-status,
    .ct-help,
    .ct-muted-note,
    .ct-status,
    .ct-upload-warning,
    .ct-upload-time-warning,
    .ct-selected-files,
    .ct-feature-card p,
    .ct-checkbox-row p {
      color: var(--ct-text-muted);
      font-weight: 400;
    }

    .ct-status,
    .ct-error {
      color: var(--ct-danger);
      font-weight: 500;
    }

    .ct-progress-fill,
    .ct-recent-pending-fill {
      background: var(--ct-accent);
    }

    .ct-loading-text,
    .ct-review-body .ct-loading-text {
      background: none;
      color: var(--ct-text-muted);
      animation: none;
      font-weight: 500;
    }

    .ct-complete-marker {
      color: var(--ct-success);
      font-weight: 600;
    }

    .ct-modal-header,
    .ct-modal-footer,
    .ct-review-header,
    .ct-review-toolbar-row {
      background: color-mix(in srgb, var(--ct-surface) 94%, var(--ct-bg));
      color: var(--ct-text);
      border-color: var(--ct-border);
    }

    .ct-review-tab {
      background: var(--ct-primary);
      color: var(--ct-primary-text);
      box-shadow: var(--ct-shadow-soft);
    }

    .ct-review-shell {
      background: var(--ct-surface);
      border-left-color: var(--ct-border);
    }

    .ct-review-list-button,
    .ct-review-header .ct-icon-button,
    .ct-modal-header .ct-icon-button,
    .ct-source-icon-button,
    .ct-upload-trigger {
      border-color: var(--ct-border);
      background: color-mix(in srgb, var(--ct-surface) 92%, var(--ct-bg));
      color: var(--ct-text-muted);
    }

    .ct-review-list-button:hover,
    .ct-review-header .ct-icon-button:hover,
    .ct-modal-header .ct-icon-button:hover,
    .ct-source-icon-button:hover,
    .ct-upload-trigger:hover,
    .ct-upload-trigger:focus-visible {
      border-color: var(--ct-border-strong);
      background: var(--ct-surface-soft);
      color: var(--ct-text-strong);
    }

    @media (max-width: 1060px) {
      .ct-request-row,
      .ct-option-grid,
      .ct-option-grid.ct-option-grid-wide,
      .ct-deep-option-grid,
      .ct-assisted-workbench,
      .ct-assisted-setup-panel .ct-request-row,
      .ct-tool-workspace,
      .ct-assisted-shell {
        grid-template-columns: 1fr;
      }

	      .ct-tool-box {
	        min-height: 420px;
	      }

	      .ct-assisted-search-box {
	        height: min(680px, calc(100vh - 160px));
	        min-height: 520px;
	      }

	      .ct-tool-options-box .ct-request-row,
	      .ct-tool-options-box .ct-option-grid {
	        grid-template-columns: 1fr;
	      }

	      .ct-deep-upload-row {
	        grid-template-columns: 1fr;
	      }
	    }

    @media (max-width: 860px) {
      .ct-app,
      .ct-app.ct-sidebar-collapsed {
        min-height: 100vh;
        height: auto;
        grid-template-columns: 1fr;
        grid-template-rows: auto auto minmax(0, 1fr);
      }

      .ct-topbar {
        position: sticky;
        top: 0;
        grid-column: 1;
        grid-row: 1;
        grid-template-columns: 1fr;
        min-height: auto;
        padding: 12px 16px;
      }

      .ct-topbar-brand-zone,
      .ct-topbar-nav-zone,
      .ct-topbar-right {
        width: 100%;
        height: auto;
        gap: 14px;
        padding: 0;
        border-right: 0;
      }

      .ct-topbar-brand-zone {
        display: flex;
      }

      .ct-topbar-brand-zone::after {
        display: none;
      }

      .ct-brand {
        margin-left: 0;
      }

      .ct-topbar-right {
        justify-content: flex-start;
      }

      .ct-nav {
        order: 2;
        width: 100%;
        flex: 1 0 100%;
        gap: 18px;
        overflow-x: auto;
      }

      .ct-nav-button {
        min-height: 40px;
        align-self: center;
      }

      .ct-sidebar {
        grid-column: 1;
        grid-row: 2;
      }

      .ct-shell {
        grid-column: 1;
        grid-row: 3;
      }

      .ct-app.ct-sidebar-collapsed .ct-sidebar {
        display: none;
      }

      .ct-sidebar-main {
        padding: 20px 18px 14px;
      }

      .ct-sidebar-footer {
        padding: 20px 18px;
      }

      .ct-canvas-wrap {
        padding: 28px 18px;
      }

      .ct-paper-inner {
        padding: 0 4px 28px;
      }

	      .ct-tool-header h1 {
	        font-size: 34px;
	      }

	      .ct-deep-input-label-row {
	        align-items: flex-start;
	        flex-wrap: wrap;
	      }

	      .ct-assisted-search-box {
	        height: 68vh;
	        min-height: 500px;
	      }

	      .ct-review-tab {
	        top: 8px;
	      }
	    }

    /* Mockup-match redesign layer. */
    html[data-theme="light"],
    .ct-app {
      --ct-bg: #ffffff;
      --ct-bg-soft: #f4f4f6;
      --ct-surface: #f8f8fa;
      --ct-surface-soft: #f0f2f5;
      --ct-surface-raised: #ffffff;
      --ct-text: #111111;
      --ct-text-strong: #050505;
      --ct-text-muted: #252525;
      --ct-text-soft: #73777d;
      --ct-border: #d4d4d7;
      --ct-border-strong: #b7bcc4;
      --ct-shell-bg: #242526;
      --ct-shell-bg-strong: #1f2021;
      --ct-shell-text: #f8fafc;
      --ct-shell-muted: #f0f3f6;
      --ct-shell-border: #4d5258;
      --ct-sidebar-surface: #292b2c;
      --ct-sidebar-hover-surface: #343638;
      --ct-sidebar-active-surface: #f1f6ff;
      --ct-sidebar-active-text: #101820;
      --ct-panel-bg: #f8f8fa;
      --ct-field-bg: #ffffff;
      --ct-primary: #1f6fd7;
      --ct-primary-hover: #185fbd;
      --ct-primary-text: #ffffff;
      --ct-accent: #2384ee;
      --ct-focus: rgba(35, 132, 238, 0.2);
      --ct-shadow-soft: 0 10px 28px rgba(15, 23, 42, 0.1);
      --ct-shadow-strong: 0 26px 68px rgba(15, 23, 42, 0.2);
      --ct-empty-icon-bg: #ececec;
      --ct-brand-primary: #000000;
      --ct-brand-secondary: #000000;
      --ct-selected-bg: #eaf4ff;
      --ct-selected-text: #0e5ea8;
    }

    html[data-theme="dark"],
    .ct-app[data-theme="dark"] {
      --ct-bg: #030303;
      --ct-bg-soft: #070707;
      --ct-surface: #141414;
      --ct-surface-soft: #1b1b1b;
      --ct-surface-raised: #171717;
      --ct-text: #f2f2f2;
      --ct-text-strong: #ffffff;
      --ct-text-muted: #f1f1f1;
      --ct-text-soft: #a9a9a9;
      --ct-border: #313131;
      --ct-border-strong: #4a4a4a;
      --ct-shell-bg: #030303;
      --ct-shell-bg-strong: #010101;
      --ct-shell-text: #ffffff;
      --ct-shell-muted: #e7e7e7;
      --ct-shell-border: #242424;
      --ct-sidebar-surface: #060606;
      --ct-sidebar-hover-surface: #111111;
      --ct-sidebar-active-surface: #102844;
      --ct-sidebar-active-text: #ffffff;
      --ct-panel-bg: #141414;
      --ct-field-bg: #151515;
      --ct-primary: #075bb0;
      --ct-primary-hover: #0a66c4;
      --ct-primary-text: #ffffff;
      --ct-accent: #1d82ee;
      --ct-focus: rgba(29, 130, 238, 0.28);
      --ct-shadow-soft: 0 16px 38px rgba(0, 0, 0, 0.42);
      --ct-shadow-strong: 0 30px 78px rgba(0, 0, 0, 0.62);
      --ct-empty-icon-bg: #252525;
      --ct-brand-primary: #ffffff;
      --ct-brand-secondary: #ffffff;
      --ct-selected-bg: #1b3452;
      --ct-selected-text: #ffffff;
    }

    html[data-theme="light"],
    html[data-theme="light"] body,
    html[data-theme="dark"],
    html[data-theme="dark"] body {
      background: var(--ct-bg);
    }

    .ct-app {
      --ct-sidebar-width: 300px;
      --ct-sidebar-collapsed-width: 58px;
      --ct-topbar-height: 68px;
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
      background: var(--ct-bg);
      color: var(--ct-text);
    }

    .ct-topbar {
      min-height: var(--ct-topbar-height);
      background: var(--ct-shell-bg-strong);
      border-bottom: 1px solid var(--ct-shell-border);
      color: var(--ct-shell-text);
    }

    .ct-topbar-brand-zone::after {
      top: 0;
      bottom: 0;
      background: var(--ct-shell-border);
    }

    .ct-menu-button,
    .ct-topbar .ct-icon-button {
      color: var(--ct-shell-text);
    }

    .ct-menu-button:hover,
    .ct-topbar .ct-icon-button:hover {
      background: rgba(255, 255, 255, 0.08);
      border-color: transparent;
    }

    .ct-brand {
      margin-left: 26px;
      color: var(--ct-brand-primary);
      display: inline-grid;
      justify-items: center;
      font-family: "Times New Roman", Times, serif;
      line-height: 1;
      letter-spacing: 0;
    }

    .ct-brand-primary {
      color: var(--ct-brand-primary);
      font-size: 30px;
      font-weight: 700;
      line-height: 0.9;
    }

    .ct-brand-secondary {
      color: var(--ct-brand-secondary);
      font-size: 18px;
      font-weight: 700;
      line-height: 0.9;
      font-style: italic;
    }

    .ct-nav {
      gap: 34px;
    }

    .ct-nav-button {
      min-height: var(--ct-topbar-height);
      color: var(--ct-shell-text);
      font-size: 15px;
      font-weight: 600;
    }

    .ct-nav-button:hover {
      color: #ffffff;
    }

    .ct-nav-button[aria-current="page"] {
      color: #ffffff;
      box-shadow: inset 0 -4px 0 var(--ct-accent);
    }

    .ct-config-button {
      min-height: 42px;
      min-width: 106px;
      border-color: var(--ct-shell-border);
      background: transparent;
      color: var(--ct-shell-text);
      font-size: 15px;
      font-weight: 600;
    }

    .ct-config-button:hover,
    .ct-config-button[aria-current="page"] {
      background: rgba(255, 255, 255, 0.06);
      border-color: #646a72;
      color: #ffffff;
      box-shadow: none;
    }

    .ct-sidebar {
      background: var(--ct-sidebar-surface);
      border-right: 1px solid var(--ct-shell-border);
      color: var(--ct-shell-text);
    }

    .ct-sidebar-main {
      padding: 28px 24px 18px;
    }

    .ct-sidebar-section {
      margin-bottom: 26px;
      padding-bottom: 26px;
      border-bottom-color: var(--ct-shell-border);
    }

    .ct-sidebar-heading {
      color: var(--ct-shell-text);
      font-size: 15px;
      font-weight: 500;
      line-height: 1.35;
    }

    .ct-sidebar #ct-project-status {
      margin: -8px 0 8px;
      color: var(--ct-shell-muted);
      font-size: 12px;
      font-weight: 400;
      line-height: 1.25;
    }

    .ct-mode-list,
    .ct-project-list {
      gap: 10px;
    }

    .ct-mode-button,
    .ct-project-button,
    .ct-tree-button,
    .ct-file-button {
      min-height: 42px;
      display: flex;
      align-items: center;
      gap: 12px;
      border-radius: 7px;
      color: var(--ct-shell-text);
      font-size: 15px;
      font-weight: 500;
      padding: 0 10px;
    }

    .ct-mode-button .ct-icon {
      width: 21px;
      height: 21px;
      flex: 0 0 21px;
      stroke-width: 2;
    }

    .ct-mode-button:hover,
    .ct-project-button:hover,
    .ct-tree-button:hover,
    .ct-file-button:hover {
      background: var(--ct-sidebar-hover-surface);
      color: #ffffff;
    }

    .ct-mode-button[aria-pressed="true"] {
      background: var(--ct-sidebar-active-surface);
      color: var(--ct-sidebar-active-text);
      box-shadow: inset 4px 0 0 var(--ct-accent);
      font-weight: 600;
    }

    .ct-file-button[aria-current="true"] {
      background: color-mix(in srgb, var(--ct-shell-text) 10%, transparent);
      color: var(--ct-shell-text);
      box-shadow: none;
      font-weight: 400;
    }

    .ct-project-button,
    .ct-tree-button,
    .ct-file-button {
      min-height: 38px;
      gap: 10px;
      font-size: 15px;
      padding-inline: 6px;
    }

    .ct-file-button {
      font-size: 13px;
      font-weight: 400;
      line-height: 1.25;
    }

    .ct-file-button[aria-current="true"] {
      box-shadow: none;
    }

    .ct-chevron,
    .ct-row-action {
      color: currentColor;
    }

    .ct-sidebar .ct-small-button {
      min-height: 42px;
      width: 100%;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      border-color: var(--ct-shell-border);
      background: transparent;
      color: var(--ct-shell-text);
      font-size: 15px;
      font-weight: 600;
    }

    .ct-sidebar .ct-small-button:hover {
      border-color: #646a72;
      background: rgba(255, 255, 255, 0.05);
      color: #ffffff;
    }

    .ct-sidebar .ct-small-button .ct-icon {
      width: 19px;
      height: 19px;
    }

    .ct-sidebar .ct-project-tools {
      margin: 0 0 12px;
    }

    .ct-sidebar .ct-project-tools .ct-small-button {
      min-height: 36px;
      gap: 8px;
      font-size: 14px;
    }

    .ct-sidebar .ct-project-tools .ct-small-button .ct-icon {
      width: 17px;
      height: 17px;
    }

    .ct-sidebar-footer {
      padding: 28px 24px;
      background: var(--ct-sidebar-surface);
      border-top: 1px solid var(--ct-shell-border);
    }

    .ct-account-bar,
    .ct-account-card {
      width: 100%;
      min-width: 0;
    }

    .ct-account-actions {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 8px;
    }

    .ct-account-card {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr) auto;
      align-items: center;
      gap: 10px;
      min-height: 58px;
      padding: 9px 10px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-md);
      background: var(--surface-2);
      color: var(--text-primary);
      text-align: left;
    }

    .ct-sidebar .ct-account-card {
      border-color: transparent;
      background: transparent;
      color: var(--ct-shell-text);
    }

    .ct-sidebar .ct-account-card:hover,
    .ct-sidebar .ct-account-card:focus-visible {
      border-color: var(--ct-shell-border);
      background: var(--ct-sidebar-hover-surface);
      outline: none;
    }

    .ct-account-meta {
      min-width: 0;
      display: grid;
      gap: 2px;
      align-content: center;
      justify-items: start;
    }

    .ct-account-name,
    .ct-account-tier {
      display: block;
      min-width: 0;
      max-width: 100%;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ct-account-name {
      font-size: 14px;
      font-weight: 700;
      color: var(--text-primary);
    }

    .ct-sidebar .ct-account-name {
      color: var(--ct-shell-text);
    }

    .ct-account-tier {
      color: var(--text-secondary);
      font-size: 12px;
      font-weight: 600;
    }

    .ct-auth-avatar {
      width: 40px;
      height: 40px;
      border-radius: 999px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex: 0 0 40px;
      background: #1871d5;
      color: #ffffff;
      font-size: 16px;
      font-weight: 700;
    }

    .ct-auth-avatar img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
      border-radius: inherit;
    }

    .ct-auth-modal .ct-modal-body {
      display: grid;
      gap: 18px;
      padding: 20px 24px 24px;
    }

    #ct-auth-modal .ct-modal {
      width: min(560px, calc(100vw - 32px));
    }

    .ct-auth-panel,
    .ct-plan-panel,
    .ct-account-panel {
      display: grid;
      gap: 16px;
    }

    .ct-auth-form {
      display: grid;
      gap: 12px;
    }

    .ct-auth-tabs {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
    }

    .ct-auth-tab {
      min-height: 48px;
      justify-content: center;
      border: 1px solid var(--border-soft);
      background: var(--surface-2);
      color: var(--text-secondary);
      text-align: center;
    }

    .ct-auth-tab[aria-pressed="true"] {
      background: var(--selected-bg);
      border-color: var(--accent);
      color: var(--selected-text);
    }

    .ct-google-auth {
      width: 100%;
      min-height: 44px;
      background: var(--surface-1);
      color: var(--text-primary);
      border: 1px solid var(--border-soft);
    }

    .ct-google-mark {
      width: 18px;
      height: 18px;
      flex: 0 0 18px;
    }

    .ct-marketing-opt {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: 8px;
      align-items: center;
      color: var(--text-secondary);
      font-size: 12px;
      line-height: 1.35;
    }

    .ct-marketing-opt input {
      width: 14px;
      height: 14px;
      margin: 0;
      accent-color: var(--accent);
    }

    .ct-auth-status {
      min-height: 18px;
      color: var(--text-primary);
      font-size: 13px;
      line-height: 1.35;
    }

    .ct-auth-status.ct-error {
      color: var(--ct-danger);
    }

    .ct-auth-switch {
      color: var(--text-secondary);
      font-size: 13px;
      line-height: 1.4;
    }

    .ct-auth-switch button {
      color: var(--accent);
      font-weight: 750;
      text-decoration: none;
    }

    .ct-plan-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
    }

    #ct-auth-modal .ct-plan-grid {
      grid-template-columns: minmax(0, 1fr);
    }

    .ct-plan-card {
      min-width: 0;
      display: grid;
      gap: 10px;
      padding: 14px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-md);
      background: var(--surface-1);
      color: var(--text-primary);
      text-align: left;
    }

    .ct-plan-card[aria-pressed="true"],
    .ct-plan-card.ct-current-plan {
      border-color: var(--accent);
      background: var(--selected-bg);
      color: var(--selected-text);
    }

    .ct-plan-card h3,
    .ct-plan-card p {
      margin: 0;
    }

    .ct-plan-price {
      font-weight: 800;
      color: inherit;
    }

    .ct-plan-list {
      display: grid;
      gap: 5px;
      margin: 0;
      padding: 0;
      list-style: none;
      color: inherit;
      font-size: 12px;
      line-height: 1.35;
    }

    .ct-plan-list li::before {
      content: "✓";
      margin-right: 6px;
      color: var(--accent);
      font-weight: 800;
    }

    .ct-plan-card[aria-pressed="true"] .ct-plan-list li::before,
    .ct-plan-card.ct-current-plan .ct-plan-list li::before {
      color: currentColor;
    }

    .ct-sp-coin,
    .ct-up-coin {
      width: 24px;
      height: 24px;
      flex: 0 0 24px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 1px solid #7d8795;
      border-radius: 999px;
      background: #b8c0cc;
      color: #111827;
      box-shadow: none;
      font-family: "Times New Roman", Times, serif !important;
      font-size: 11px;
      font-style: italic !important;
      font-weight: 700 !important;
      letter-spacing: 0;
      line-height: 1;
    }

    .ct-up-coin {
      border-color: #9f7417;
      background: #d4a72c;
      color: #271600;
    }

    .ct-sp-coin span,
    .ct-up-coin span {
      width: 100%;
      height: 100%;
      display: grid;
      place-items: center;
      font-family: "Times New Roman", Times, serif !important;
      font-style: italic !important;
      font-weight: 700 !important;
      line-height: 1;
      text-align: center;
      transform: none;
    }

    .ct-app .ct-sp-coin.ct-sp-coin,
    .ct-app .ct-sp-coin.ct-sp-coin span,
    .ct-app .ct-up-coin.ct-up-coin,
    .ct-app .ct-up-coin.ct-up-coin span {
      font-family: "Times New Roman", Times, serif !important;
      font-style: italic !important;
      font-weight: 700 !important;
    }

    .ct-sp-amount {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      font-weight: 800;
      letter-spacing: 0;
      white-space: nowrap;
    }

    .ct-sp-counter {
      height: 40px;
      min-height: 40px;
      align-self: center;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 0 14px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-sm);
      background: var(--surface-3);
      color: var(--text-primary);
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 1px 1px rgba(0, 0, 0, 0.05);
    }

    .ct-sp-counter:hover,
    .ct-sp-counter:focus-visible {
      border-color: var(--border-strong);
      background: var(--surface-2);
      box-shadow: var(--shadow-soft);
      outline: none;
    }

    .ct-sp-counter .ct-sp-coin,
    .ct-sp-counter .ct-up-coin {
      width: 22px;
      height: 22px;
      flex-basis: 22px;
      font-size: 10px;
    }

    .ct-sp-cost {
      min-height: 0;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      margin: 0;
      color: currentColor;
      font-size: 12px;
      font-weight: 720;
      line-height: 1;
    }

    .ct-sp-cost .ct-sp-coin,
    .ct-sp-cost .ct-up-coin {
      width: 17px;
      height: 17px;
      flex-basis: 17px;
      font-size: 8.5px;
    }

    .ct-result-primary-action {
      display: inline-grid;
      justify-items: center;
      gap: 0;
    }

    .ct-cost-button {
      display: inline-flex;
      flex-direction: row;
      align-items: center;
      justify-content: center;
      gap: 9px;
      text-align: center;
      line-height: 1;
      white-space: nowrap;
    }

    .ct-cost-button-label {
      display: block;
      line-height: 1;
    }

    .ct-cost-button .ct-sp-amount {
      gap: 4px;
    }

    .ct-cost-button .ct-sp-cost {
      opacity: 0.92;
    }

    .ct-submit.ct-cost-button .ct-sp-cost {
      color: rgba(255, 255, 255, 0.9);
    }

    .ct-action-button.ct-cost-button .ct-sp-cost {
      color: color-mix(in srgb, var(--text-primary) 82%, var(--text-secondary));
    }

    .ct-sp-shop-head {
      display: grid;
      gap: 10px;
      max-width: 760px;
    }

    .ct-sp-shop-page {
      width: min(100%, 1080px);
      max-width: 1080px;
      gap: 28px;
    }

    .ct-sp-shop-page .ct-page-title,
    .ct-sp-shop-page .ct-page-copy {
      text-align: center;
    }

    .ct-sp-shop-page .ct-page-copy {
      max-width: 760px;
      margin-inline: auto;
    }

    .ct-sp-shop-page .ct-sp-shop-head {
      justify-items: center;
      margin-inline: auto;
    }

    .ct-sp-purchase-columns {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 22px;
      align-items: stretch;
    }

    .ct-sp-purchase-box {
      display: grid;
      grid-template-rows: auto minmax(0, 1fr);
      gap: 14px;
      align-content: stretch;
    }

    .ct-sp-box-head {
      display: grid;
      gap: 6px;
      text-align: center;
      justify-items: center;
    }

    .ct-sp-box-head h2,
    .ct-sp-box-head p {
      margin: 0;
    }

    .ct-sp-box-head h2 {
      color: var(--ct-text-strong);
      font-size: 22px;
      font-weight: 850;
      line-height: 1.15;
    }

    .ct-sp-box-head p {
      color: var(--text-secondary);
      font-size: 14px;
      font-weight: 650;
    }

    .ct-sp-option-list {
      display: grid;
      grid-auto-rows: minmax(0, 1fr);
      gap: 10px;
      align-content: stretch;
    }

    .ct-sp-balance-card {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      padding: 16px 18px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-md);
      background: var(--surface-2);
    }

    .ct-sp-balance-card p,
    .ct-sp-balance-card h3,
    .ct-sp-section-title,
    .ct-sp-card h3,
    .ct-sp-card p {
      margin: 0;
    }

    .ct-sp-balance-card h3,
    .ct-sp-section-title {
      font-size: 14px;
      color: var(--text-secondary);
      font-weight: 750;
      text-transform: uppercase;
      letter-spacing: 0;
    }

    .ct-sp-balance-card .ct-sp-amount {
      font-size: 22px;
      color: var(--text-primary);
    }

    .ct-points-balance-stack {
      display: inline-flex;
      align-items: center;
      justify-content: flex-end;
      gap: 14px;
      flex-wrap: wrap;
    }

    .ct-sp-shop-section {
      display: grid;
      gap: 12px;
      margin-top: 8px;
    }

    .ct-sp-membership-section {
      gap: 16px;
      margin-top: 2px;
    }

    .ct-sp-membership-head {
      max-width: 780px;
    }

    .ct-sp-membership-section .ct-sp-section-title {
      color: var(--ct-text-strong);
      font-size: 24px;
      font-weight: 850;
      line-height: 1.15;
      text-align: center;
      text-transform: none;
    }

    .ct-sp-shop-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
    }

    .ct-sp-shop-grid.ct-sp-subscription-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ct-sp-card {
      min-width: 0;
      display: grid;
      align-content: start;
      gap: 10px;
      padding: 14px 16px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-md);
      background: var(--surface-1);
      color: var(--text-primary);
      box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04);
    }

    .ct-sp-card.ct-current-plan {
      border-color: var(--accent);
      background: var(--selected-bg);
      color: var(--selected-text);
    }

    .ct-sp-card-title {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
    }

    .ct-sp-card h3 {
      min-width: 0;
      flex: 1 1 auto;
      font-size: 16px;
      font-weight: 850;
      line-height: 1.2;
    }

    .ct-sp-price {
      font-size: 24px;
      font-weight: 900;
      color: inherit;
      line-height: 1.05;
    }

    .ct-sp-meta {
      color: var(--text-secondary);
      font-size: 13px;
      font-weight: 600;
      line-height: 1.4;
    }

    .ct-sp-monthly {
      display: inline-flex;
      align-items: center;
      gap: 4px;
    }

    .ct-sp-monthly .ct-sp-amount {
      font-size: 13px;
      gap: 4px;
    }

    .ct-sp-monthly .ct-sp-coin {
      width: 18px;
      min-width: 18px;
      max-width: 18px;
      height: 18px;
      min-height: 18px;
      max-height: 18px;
      flex: 0 0 18px;
      aspect-ratio: 1 / 1;
      border-radius: 999px;
      font-size: 9px;
      padding: 0;
    }

    .ct-sp-card.ct-current-plan .ct-sp-meta {
      color: currentColor;
    }

    .ct-current-plan-badge {
      flex: 0 0 auto;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 24px;
      padding: 4px 8px;
      border-radius: 999px;
      color: var(--selected-text);
      background: var(--accent);
      font-size: 11px;
      font-weight: 850;
      line-height: 1;
      white-space: nowrap;
    }

    .ct-current-plan-badge {
      color: var(--accent);
      background: color-mix(in srgb, var(--accent) 14%, transparent);
      border: 1px solid color-mix(in srgb, var(--accent) 45%, transparent);
    }

    .ct-sp-reset-copy {
      font-weight: 760;
    }

    .ct-sp-card .ct-small-button {
      width: 100%;
      justify-content: center;
      margin-top: 2px;
    }

    .ct-sp-discount-note {
      color: var(--text-secondary);
      font-size: 13px;
      font-weight: 650;
      line-height: 1.35;
    }

    .ct-payment-placeholder {
      padding: 14px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-md);
      background: var(--surface-2);
      color: var(--text-secondary);
      line-height: 1.45;
    }

    .ct-limit-message {
      margin: 0 0 8px;
      color: var(--ct-danger);
      font-size: 13px;
      font-weight: 650;
      line-height: 1.35;
    }

    @media (max-width: 760px) {
      .ct-plan-grid,
      .ct-sp-shop-grid,
      .ct-sp-shop-grid.ct-sp-subscription-grid,
      .ct-sp-purchase-columns {
        grid-template-columns: minmax(0, 1fr);
      }

      .ct-sp-balance-card {
        align-items: flex-start;
        flex-direction: column;
      }
    }

    .ct-auth-email {
      color: var(--ct-shell-text);
      font-size: 15px;
      font-weight: 500;
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ct-canvas-wrap {
      background: var(--ct-bg);
      padding: 42px 54px 36px;
      overflow: auto;
    }

    .ct-paper {
      width: min(100%, 1120px);
      background: transparent;
    }

    .ct-paper-inner {
      padding: 0 18px 28px;
    }

    .ct-tool-header {
      margin-bottom: 26px;
    }

    .ct-tool-header h1,
    .ct-page-title {
      color: var(--ct-text-strong);
      font-size: 40px;
      line-height: 1.06;
      font-weight: 800;
      letter-spacing: 0;
    }

    .ct-tool-header p,
    .ct-page-copy {
      color: var(--ct-text);
      font-size: 16px;
      line-height: 1.5;
      font-weight: 400;
    }

    .ct-tool-workspace,
    .ct-assisted-shell {
      grid-template-columns: minmax(0, 0.98fr) minmax(0, 1.02fr);
      gap: 14px;
      align-items: stretch;
    }

    .ct-tool-box {
      padding: 22px;
      border: 1px solid var(--ct-border);
      border-radius: 7px;
      background: var(--ct-panel-bg);
      box-shadow: var(--ct-shadow-soft);
      gap: 20px;
    }

    .ct-app[data-theme="dark"] .ct-tool-box,
    .ct-app[data-theme="dark"] .ct-feature-card,
    .ct-app[data-theme="dark"] .ct-modal,
    .ct-app[data-theme="dark"] .ct-review-shell {
      box-shadow: none;
    }

    .ct-deep-workspace .ct-tool-box,
    .ct-quick-workspace .ct-tool-box {
      min-height: min(568px, calc(100vh - 220px));
    }

    .ct-tool-options-stack,
    .ct-deep-options-stack,
    .ct-tool-box-scroll {
      gap: 20px;
    }

    .ct-label,
    .ct-request-panel .ct-label,
    .ct-setup-grid .ct-label,
    .ct-tool-box-title,
    .ct-settings-section h3,
    .ct-modal-header h2,
    .ct-checkbox-row .ct-checkbox-title {
      color: var(--ct-text);
      font-size: 16px;
      font-weight: 650;
      line-height: 1.25;
    }

    .ct-request-row,
    .ct-tool-options-box .ct-request-row,
    .ct-tool-options-box .ct-option-grid,
    .ct-deep-option-grid {
      gap: 32px;
    }

    .ct-input,
    .ct-select,
    .ct-textarea,
    .ct-toolbar-select,
    .ct-toolbar-input,
    .ct-sidebar .ct-input {
      min-height: 52px;
      height: 52px;
      border-color: var(--ct-border);
      border-radius: 6px;
      background: var(--ct-field-bg);
      color: var(--ct-text);
      font-size: 16px;
      font-weight: 400;
    }

    .ct-textarea,
    .ct-minimal-input-block .ct-textarea {
      min-height: 168px;
      line-height: 1.45;
      resize: vertical;
    }

    .ct-input::placeholder,
    .ct-textarea::placeholder {
      color: var(--ct-text-soft);
    }

    .ct-app[data-theme="light"] .ct-input,
    .ct-app[data-theme="light"] .ct-select,
    .ct-app[data-theme="light"] .ct-textarea,
    .ct-app[data-theme="light"] .ct-toolbar-select,
    .ct-app[data-theme="light"] .ct-toolbar-input,
    .ct-app[data-theme="light"] .ct-sidebar .ct-input {
      background: #ffffff;
    }

    .ct-app[data-theme="dark"] .ct-input,
    .ct-app[data-theme="dark"] .ct-select,
    .ct-app[data-theme="dark"] .ct-textarea,
    .ct-app[data-theme="dark"] .ct-toolbar-select,
    .ct-app[data-theme="dark"] .ct-toolbar-input,
    .ct-app[data-theme="dark"] .ct-sidebar .ct-input {
      background: var(--ct-field-bg);
    }

    .ct-tool-options-box .ct-side-switch {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 0;
      overflow: hidden;
      border: 1px solid var(--ct-border);
      border-radius: 6px;
      background: var(--ct-field-bg);
    }

    .ct-tool-options-box .ct-side-switch .ct-pill {
      width: 100%;
      min-height: 52px;
      border: 0;
      border-radius: 0;
      background: transparent;
    }

    .ct-tool-options-box .ct-side-switch .ct-pill + .ct-pill {
      border-left: 1px solid var(--ct-border);
    }

    .ct-tool-options-box .ct-highlight-row {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
    }

    .ct-tool-options-box .ct-swatch-button {
      min-height: 52px;
      border-radius: 6px;
      background: var(--ct-field-bg);
    }

    .ct-swatch-chip {
      width: 24px;
      height: 24px;
      flex-basis: 24px;
      border-radius: 6px;
      box-shadow: 0 1px 4px rgba(0, 0, 0, 0.22);
    }

    .ct-tool-options-box .ct-quality-row,
    .ct-tool-options-box .ct-deep-file-row {
      display: grid;
      grid-template-columns: 1fr;
      gap: 0;
      overflow: hidden;
      border: 1px solid var(--ct-border);
      border-radius: 6px;
      background: var(--ct-field-bg);
    }

    .ct-tool-options-box .ct-quality-row .ct-quality-pill,
    .ct-tool-options-box .ct-deep-file-row .ct-pill {
      max-width: none;
      width: 100%;
      min-height: 50px;
      border: 0;
      border-radius: 0;
      background: transparent;
      font-size: 16px;
      font-weight: 500;
      line-height: 1.2;
    }

    .ct-tool-options-box .ct-quality-row .ct-quality-pill + .ct-quality-pill,
    .ct-tool-options-box .ct-deep-file-row .ct-pill + .ct-pill {
      border-top: 1px solid var(--ct-border);
    }

    .ct-pill,
    .ct-quality-pill,
    .ct-swatch-button,
    .ct-theme-pill {
      border-color: var(--ct-border);
      background: var(--ct-field-bg);
      color: var(--ct-text);
      font-size: 16px;
      font-weight: 500;
    }

    .ct-pill[aria-pressed="true"],
    .ct-quality-pill[aria-pressed="true"],
    .ct-swatch-button[aria-pressed="true"],
    .ct-theme-pill[aria-pressed="true"] {
      border-color: var(--ct-accent);
      background: var(--ct-selected-bg);
      color: var(--ct-selected-text);
      box-shadow: 0 0 0 1px var(--ct-accent);
      font-weight: 650;
    }

    .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"],
    .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"],
    .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"] {
      position: relative;
      z-index: 1;
      background: var(--ct-selected-bg);
      color: var(--ct-selected-text);
      box-shadow: inset 0 0 0 2px var(--ct-accent);
    }

    .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"] + .ct-pill {
      border-left-color: transparent;
    }

    .ct-tool-options-box .ct-side-switch .ct-pill + .ct-pill[aria-pressed="true"] {
      border-left-color: transparent;
    }

    .ct-tool-options-box .ct-quality-row .ct-quality-pill + .ct-quality-pill[aria-pressed="true"],
    .ct-tool-options-box .ct-deep-file-row .ct-pill + .ct-pill[aria-pressed="true"],
    .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"] + .ct-quality-pill,
    .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"] + .ct-pill {
      border-top-color: transparent;
    }

    .ct-app[data-theme="dark"] .ct-swatch-button[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-theme-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-quality-pill[aria-pressed="true"] {
      border-color: var(--ct-border);
      background: var(--ct-selected-bg);
      color: #ffffff;
      box-shadow: none;
      font-weight: 650;
    }

    .ct-app[data-theme="dark"] .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"] {
      border-color: transparent;
      box-shadow: none;
    }

    .ct-quality-pill.ct-quality-disabled,
    .ct-quality-pill.ct-quality-disabled[aria-pressed="true"],
    .ct-quality-pill.ct-quality-disabled:hover {
      color: var(--ct-text-soft);
      background: color-mix(in srgb, var(--ct-field-bg) 72%, var(--ct-bg-soft));
      box-shadow: none;
    }

    .ct-submit {
      min-height: 56px;
      border-radius: 6px;
      border-color: var(--ct-primary);
      background: var(--ct-primary);
      color: var(--ct-primary-text);
      font-size: 17px;
      font-weight: 700;
      box-shadow: none;
    }

    .ct-tool-left-submit-row .ct-submit {
      min-height: 56px;
      font-size: 17px;
    }

    .ct-submit.ct-secondary,
    .ct-submit.ct-quiet-action,
    .ct-action-button,
    .ct-action-button.ct-secondary,
    .ct-toolbar-button.ct-download {
      min-height: 42px;
      border-color: var(--ct-border);
      background: var(--ct-field-bg);
      color: var(--ct-text);
      font-size: 14px;
      box-shadow: none;
    }

    .ct-submit.ct-deep-surprise-button {
      min-height: 34px;
      border-color: transparent;
      background: transparent;
      color: var(--ct-primary);
      font-size: 16px;
      font-weight: 500;
      padding: 0;
    }

    .ct-tool-queue-slot {
      min-height: 264px;
    }

    .ct-tool-queue-slot .ct-assisted-empty-queue,
    .ct-tool-queue-slot .ct-queue-panel,
    .ct-assisted-results-empty {
      min-height: 264px;
      border: 1px solid var(--ct-border);
      border-radius: 6px;
      background: transparent;
    }

    .ct-assisted-empty-queue {
      display: grid;
      place-items: center;
      align-content: center;
      gap: 18px;
      color: var(--ct-text);
      font-size: 16px;
      font-weight: 500;
      text-align: center;
    }

    .ct-empty-queue-icon {
      width: 62px;
      height: 62px;
      border-radius: 999px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: var(--ct-empty-icon-bg);
      color: var(--ct-text);
    }

    .ct-empty-queue-icon .ct-icon {
      width: 28px;
      height: 28px;
    }

    .ct-queue-panel,
    .ct-queue-item,
    .ct-result-card,
    .ct-feature-card,
    .ct-recent-file,
    .ct-assisted-cut-panel,
    .ct-source-reader,
    .ct-progress-card,
    .ct-complete-card,
    .ct-inline-download-menu,
    .ct-download-menu {
      border-color: var(--ct-border);
      background: var(--ct-panel-bg);
      color: var(--ct-text);
    }

    .ct-assisted-search-box {
      min-height: 480px;
      height: min(640px, calc(100vh - 220px));
      max-height: 680px;
      display: flex;
      flex-direction: column;
    }

    .ct-assisted-results-shell {
      flex: 1 1 auto;
      min-height: 0;
      overflow-x: hidden;
      overflow-y: auto;
      padding-right: 2px;
      box-sizing: border-box;
    }

    .ct-assisted-results-empty {
      color: var(--ct-text);
      font-size: 18px;
      font-weight: 650;
    }

    .ct-deep-upload-row {
      grid-template-columns: max-content minmax(0, 1fr);
      align-items: center;
    }

    .ct-upload-trigger {
      width: 56px;
      height: 56px;
      min-height: 56px;
      border-radius: 6px;
      background: var(--ct-field-bg);
      color: var(--ct-primary);
    }

    .ct-file-chip {
      background: var(--ct-field-bg);
      border-color: var(--ct-border);
      color: var(--ct-text);
    }

    .ct-review-tab {
      top: 8px;
      width: 42px;
      height: 58px;
      min-height: 58px;
      border-radius: 8px 0 0 8px;
      background: var(--ct-primary);
      border-color: var(--ct-primary);
      color: #ffffff;
      box-shadow: var(--ct-shadow-soft);
    }

    .ct-review-tab .ct-icon {
      width: 22px;
      height: 22px;
      stroke-width: 2;
    }

    .ct-review-shell,
    .ct-modal {
      border-color: var(--ct-border);
      background: var(--ct-panel-bg);
      color: var(--ct-text);
    }

    .ct-modal-header,
    .ct-modal-footer,
    .ct-review-header,
    .ct-review-toolbar-row,
    .ct-toolbar-menu,
    .ct-size-stepper {
      background: var(--ct-panel-bg);
      border-color: var(--ct-border);
      color: var(--ct-text);
    }

    #ct-manage-body {
      grid-template-rows: minmax(0, 1fr) auto;
      overflow: hidden;
    }

    #ct-manage-body > .ct-settings-body {
      min-height: 0;
      overflow: auto;
    }

    .ct-manage-footer {
      position: relative;
      gap: 10px;
    }

    .ct-manage-save-button {
      min-height: 34px;
      min-width: 90px;
      height: 34px;
      padding: 0 16px;
      font-size: 14px;
    }

    .ct-create-project-submit,
    .ct-config-save-button {
      min-height: 34px;
      min-width: 0;
      padding: 0 18px;
      font-size: 15px;
    }

    .ct-danger-icon-button {
      width: 44px;
      height: 44px;
      border: 1px solid transparent;
      background: transparent;
      color: var(--ct-danger);
      box-shadow: none;
    }

    .ct-danger-icon-button:hover,
    .ct-danger-icon-button:focus-visible {
      border-color: color-mix(in srgb, var(--ct-danger) 38%, var(--ct-border));
      background: color-mix(in srgb, var(--ct-danger) 10%, transparent);
      color: var(--ct-danger);
      outline: none;
    }

    .ct-inline-delete-confirm {
      position: absolute;
      right: 22px;
      bottom: calc(100% + 8px);
      z-index: 2;
      width: min(334px, calc(100% - 44px));
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      gap: 10px;
      padding: 9px 10px 9px 12px;
      border: 1px solid color-mix(in srgb, var(--ct-danger) 26%, var(--ct-border));
      border-radius: 8px;
      background: color-mix(in srgb, var(--ct-danger-surface) 74%, var(--ct-surface) 26%);
      box-shadow:
        0 14px 34px rgba(15, 23, 42, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.18);
      animation: ct-inline-delete-enter 0.18s cubic-bezier(0.22, 1, 0.36, 1);
    }

    .ct-inline-delete-copy {
      min-width: 0;
      display: grid;
      gap: 1px;
    }

    .ct-inline-delete-title {
      margin: 0;
      color: var(--ct-text-strong);
      font-size: 13px;
      line-height: 1.2;
      font-weight: 500;
    }

    .ct-inline-delete-copy span {
      color: var(--ct-text-muted);
      font-size: 11.5px;
      line-height: 1.25;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ct-inline-delete-actions {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      flex: 0 0 auto;
    }

    .ct-inline-delete-button {
      min-width: 72px;
      min-height: 32px;
      padding: 0 12px;
      font-size: 13px;
      box-shadow:
        0 8px 18px color-mix(in srgb, var(--ct-danger) 24%, transparent),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
    }

    .ct-inline-cancel-button {
      width: 32px;
      height: 32px;
      border: 1px solid color-mix(in srgb, var(--ct-border) 74%, transparent);
      background: color-mix(in srgb, var(--ct-field-bg) 70%, transparent);
      color: var(--ct-text-muted);
      box-shadow: none;
    }

    .ct-inline-cancel-button:hover,
    .ct-inline-cancel-button:focus-visible {
      border-color: color-mix(in srgb, var(--ct-border-strong) 70%, transparent);
      background: var(--ct-surface-soft);
      color: var(--ct-text-strong);
      outline: none;
    }

    .ct-review-delete-toolbar {
      overflow: visible;
    }

    .ct-review-delete-confirm.ct-inline-delete-confirm {
      position: static;
      right: auto;
      bottom: auto;
      width: min(320px, calc(100vw - 116px));
      max-width: 100%;
      padding: 8px 8px 8px 12px;
      gap: 8px;
    }

    .ct-review-delete-confirm .ct-inline-delete-title {
      font-size: 12.5px;
    }

    .ct-review-delete-confirm .ct-inline-delete-copy span {
      font-size: 11px;
    }

    @media (max-width: 640px) {
      .ct-review-header-delete-confirm {
        position: relative;
      }

      .ct-review-header-delete-confirm .ct-autosave-status {
        display: none;
      }

      .ct-review-header-delete-confirm .ct-review-heading {
        padding-right: 198px;
      }

      .ct-review-header-delete-confirm .ct-review-actions {
        position: absolute;
        top: 50%;
        right: 8px;
        z-index: 2;
        transform: translateY(-50%);
      }

      .ct-review-delete-confirm.ct-inline-delete-confirm {
        width: min(188px, calc(100vw - 84px));
        padding: 7px 7px 7px 9px;
      }

      .ct-review-delete-confirm .ct-inline-delete-copy {
        gap: 0;
      }

      .ct-review-delete-confirm .ct-inline-delete-copy span {
        display: none;
      }

      .ct-review-delete-confirm .ct-inline-delete-button {
        min-width: 58px;
        padding-inline: 10px;
      }

      .ct-review-delete-confirm .ct-inline-cancel-button {
        width: 30px;
        height: 30px;
      }
    }

    @keyframes ct-inline-delete-enter {
      from {
        opacity: 0;
        transform: translateY(4px) scale(0.985);
      }
      to {
        opacity: 1;
        transform: translateY(0) scale(1);
      }
    }

    .ct-review-body {
      background: var(--ct-bg-soft);
    }

    .ct-editor,
    .ct-review-body .ct-editor {
      background: #ffffff;
      color: #111827;
      border-color: #d4d4d7;
    }

    .ct-feature-card {
      border-radius: 7px;
      padding: 22px;
    }

    .ct-feature-card h3,
    .ct-result-card h3,
    .ct-queue-title,
    .ct-recent-file-title {
      color: var(--ct-text-strong);
      font-weight: 700;
    }

    .ct-feature-card p,
    .ct-result-snippet,
    .ct-result-domain,
    .ct-queue-meta,
    .ct-help,
    .ct-muted-note,
    .ct-reader-meta,
    .ct-reader-body,
    .ct-checkbox-row p {
      color: var(--ct-text-soft);
    }

    .ct-app[data-theme="light"] .ct-feature-card p,
    .ct-app[data-theme="light"] .ct-result-snippet,
    .ct-app[data-theme="light"] .ct-result-domain,
    .ct-app[data-theme="light"] .ct-queue-meta,
    .ct-app[data-theme="light"] .ct-help,
    .ct-app[data-theme="light"] .ct-muted-note,
    .ct-app[data-theme="light"] .ct-reader-meta,
    .ct-app[data-theme="light"] .ct-reader-body,
    .ct-app[data-theme="light"] .ct-checkbox-row p {
      color: #565b63;
    }

    .ct-source-frame-wrap,
    .ct-source-reader,
    .ct-assisted-cut-panel {
      background: var(--ct-panel-bg);
      border-color: var(--ct-border);
    }

    @media (max-width: 1060px) {
      .ct-tool-workspace,
      .ct-assisted-shell {
        grid-template-columns: 1fr;
      }

      .ct-deep-workspace .ct-tool-box,
      .ct-quick-workspace .ct-tool-box,
      .ct-assisted-search-box {
        min-height: auto;
      }
    }

    @media (max-width: 860px) {
      html,
      body {
        overflow: auto;
      }

      .ct-app,
      .ct-app.ct-sidebar-collapsed {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        height: auto;
        min-height: 100vh;
        overflow: visible;
      }

      .ct-topbar {
        padding: 14px 16px;
        background: var(--ct-shell-bg-strong);
      }

      .ct-topbar-brand-zone {
        gap: 14px;
      }

      .ct-brand {
        margin-left: 0;
        font-size: 29px;
      }

      .ct-nav {
        gap: 20px;
      }

      .ct-nav-button {
        min-height: 40px;
        font-size: 15px;
      }

      .ct-config-button {
        min-height: 42px;
      }

      .ct-sidebar-main {
        padding: 22px 18px 16px;
      }

      .ct-sidebar-footer {
        padding: 22px 18px;
      }

      .ct-canvas-wrap {
        padding: 28px 18px;
      }

      .ct-paper-inner {
        padding-inline: 0;
      }

      .ct-tool-header h1,
      .ct-page-title {
        font-size: 34px;
      }

      .ct-request-row,
      .ct-tool-options-box .ct-request-row,
      .ct-tool-options-box .ct-option-grid,
      .ct-deep-option-grid {
        grid-template-columns: 1fr;
        gap: 18px;
      }

      .ct-textarea,
      .ct-minimal-input-block .ct-textarea {
        min-height: 170px;
      }

      .ct-tool-queue-slot,
      .ct-tool-queue-slot .ct-assisted-empty-queue,
      .ct-tool-queue-slot .ct-queue-panel,
      .ct-assisted-results-empty {
        min-height: 240px;
      }

      .ct-review-tab {
        top: 10px;
        width: 44px;
        height: 56px;
      }
    }

    /* Apple-style continuous corner system. */
    :root,
    .ct-app {
      --ct-corner-control: 10px;
      --ct-corner-control-sm: 8px;
      --ct-corner-field: 10px;
      --ct-corner-panel: 8px;
      --ct-corner-modal: 12px;
      --ct-corner-menu: 10px;
      --ct-corner-chip: 9px;
      --ct-corner-swatch: 8px;
      --ct-corner-highlight: 0.24em;
      --ct-corner-side-tab: 10px;
      --ct-corner-segmented: 12px;
    }

    :is(
      .ct-config-button,
      .ct-small-button,
      .ct-sidebar .ct-small-button,
      .ct-auth-tab,
      .ct-icon-button,
      .ct-toolbar-button,
      .ct-source-icon-button,
      .ct-row-action,
      .ct-danger-icon-button,
      .ct-inline-cancel-button,
      .ct-toolbar-combo-toggle,
      .ct-size-menu-toggle,
      .ct-download-option,
      .ct-inline-download-option,
      .ct-toolbar-option
    ) {
      border-radius: var(--ct-corner-control-sm);
    }

    :is(
      .ct-submit,
      .ct-action-button,
      .ct-danger-button,
      .ct-inline-delete-button,
      .ct-upload-trigger,
      .ct-deep-upload-inside .ct-upload-trigger
    ) {
      border-radius: var(--ct-corner-control);
    }

    :is(
      .ct-input,
      .ct-select,
      .ct-textarea,
      .ct-toolbar-select,
      .ct-toolbar-input,
      .ct-review-title-input,
      .ct-sidebar .ct-input
    ) {
      border-radius: var(--ct-corner-field);
    }

    :is(
      .ct-mode-button,
      .ct-project-button,
      .ct-tree-button,
      .ct-file-button
    ) {
      border-radius: var(--ct-corner-control);
    }

    :is(
      .ct-tool-box,
      .ct-minimal-input-block,
      .ct-compact-field,
      .ct-feature-card,
      .ct-result-card,
      .ct-queue-panel,
      .ct-assisted-empty-queue,
      .ct-queue-item,
      .ct-complete-card,
      .ct-progress-card,
      .ct-upload-box,
      .ct-config-card,
      .ct-danger-section,
      .ct-recent-file,
      .ct-assisted-results-empty,
      .ct-assisted-cut-panel,
      .ct-source-reader,
      .ct-source-frame-wrap,
      .ct-editor,
      .ct-review-body .ct-editor
    ) {
      border-radius: var(--ct-corner-panel);
    }

    :is(
      .ct-modal
    ) {
      border-radius: var(--ct-corner-modal);
    }

    :is(
      .ct-download-menu,
      .ct-inline-download-menu,
      .ct-toolbar-menu,
      .ct-inline-delete-confirm
    ) {
      border-radius: var(--ct-corner-menu);
    }

    :is(
      .ct-pill,
      .ct-quality-pill,
      .ct-theme-pill,
      .ct-swatch-button,
      .ct-tool-options-box .ct-swatch-button,
      .ct-file-chip,
      .ct-chip-remove
    ) {
      border-radius: var(--ct-corner-chip);
    }

    :is(
      .ct-swatch-chip
    ) {
      border-radius: var(--ct-corner-swatch);
    }

    :is(
      .ct-tool-options-box .ct-side-switch,
      .ct-tool-options-box .ct-quality-row,
      .ct-tool-options-box .ct-deep-file-row,
      .ct-size-stepper
    ) {
      border-radius: var(--ct-corner-segmented);
    }

    :is(
      .ct-tool-options-box .ct-side-switch .ct-pill,
      .ct-tool-options-box .ct-quality-row .ct-quality-pill,
      .ct-tool-options-box .ct-deep-file-row .ct-pill,
      .ct-size-step
    ) {
      border-radius: 0;
    }

    :is(
      .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"]:first-child
    ) {
      border-radius: var(--ct-corner-segmented) 0 0 var(--ct-corner-segmented);
    }

    :is(
      .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"]:last-child
    ) {
      border-radius: 0 var(--ct-corner-segmented) var(--ct-corner-segmented) 0;
    }

    :is(
      .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"]:only-child
    ) {
      border-radius: var(--ct-corner-segmented);
    }

    :is(
      .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"]:first-child,
      .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"]:first-child
    ) {
      border-radius: var(--ct-corner-segmented) var(--ct-corner-segmented) 0 0;
    }

    :is(
      .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"]:last-child,
      .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"]:last-child
    ) {
      border-radius: 0 0 var(--ct-corner-segmented) var(--ct-corner-segmented);
    }

    :is(
      .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"]:only-child,
      .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"]:only-child
    ) {
      border-radius: var(--ct-corner-segmented);
    }

    .ct-review-tab {
      border-radius: var(--ct-corner-side-tab) 0 0 var(--ct-corner-side-tab);
    }

    .ct-editor .ct-section-label strong {
      border-radius: var(--ct-corner-highlight);
      box-decoration-break: clone;
      -webkit-box-decoration-break: clone;
      padding: 0 0.08em;
    }

    @supports (corner-shape: squircle) {
      :is(
        .ct-config-button,
        .ct-small-button,
        .ct-sidebar .ct-small-button,
        .ct-auth-tab,
        .ct-icon-button,
        .ct-toolbar-button,
        .ct-source-icon-button,
        .ct-row-action,
        .ct-danger-icon-button,
        .ct-inline-cancel-button,
        .ct-toolbar-combo-toggle,
        .ct-size-menu-toggle,
        .ct-download-option,
        .ct-inline-download-option,
        .ct-toolbar-option,
        .ct-submit,
        .ct-action-button,
        .ct-danger-button,
        .ct-inline-delete-button,
        .ct-upload-trigger,
        .ct-deep-upload-inside .ct-upload-trigger,
        .ct-input,
        .ct-select,
        .ct-textarea,
        .ct-toolbar-select,
        .ct-toolbar-input,
        .ct-review-title-input,
        .ct-sidebar .ct-input,
        .ct-mode-button,
        .ct-project-button,
        .ct-tree-button,
        .ct-file-button,
        .ct-tool-box,
        .ct-minimal-input-block,
        .ct-compact-field,
        .ct-feature-card,
        .ct-result-card,
        .ct-queue-panel,
        .ct-assisted-empty-queue,
        .ct-queue-item,
        .ct-complete-card,
        .ct-progress-card,
        .ct-upload-box,
        .ct-config-card,
        .ct-danger-section,
        .ct-recent-file,
        .ct-assisted-results-empty,
        .ct-assisted-cut-panel,
        .ct-source-reader,
        .ct-source-frame-wrap,
        .ct-editor,
        .ct-review-body .ct-editor,
        .ct-modal,
        .ct-download-menu,
        .ct-inline-download-menu,
        .ct-toolbar-menu,
        .ct-inline-delete-confirm,
        .ct-pill,
        .ct-quality-pill,
        .ct-theme-pill,
        .ct-swatch-button,
        .ct-tool-options-box .ct-swatch-button,
        .ct-file-chip,
        .ct-chip-remove,
        .ct-swatch-chip,
        .ct-tool-options-box .ct-side-switch,
        .ct-tool-options-box .ct-quality-row,
        .ct-tool-options-box .ct-deep-file-row,
        .ct-size-stepper
      ) {
        corner-shape: squircle;
      }

      .ct-review-tab {
        corner-shape: squircle square square squircle;
      }

      .ct-editor .ct-section-label strong {
        corner-shape: squircle;
      }

      :is(
        .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"]:first-child
      ) {
        corner-shape: squircle square square squircle;
      }

      :is(
        .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"]:last-child
      ) {
        corner-shape: square squircle squircle square;
      }

      :is(
        .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"]:first-child,
        .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"]:first-child
      ) {
        corner-shape: squircle squircle square square;
      }

      :is(
        .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"]:last-child,
        .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"]:last-child
      ) {
        corner-shape: square square squircle squircle;
      }

      :is(
        .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"]:only-child,
        .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"]:only-child,
        .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"]:only-child
      ) {
        corner-shape: squircle;
      }

      :is(
        .ct-auth-avatar,
        .ct-spinner,
        .ct-main-spinner,
        .ct-empty-queue-icon,
        .ct-color-dot,
        .ct-progress-track,
        .ct-progress-fill,
        .ct-recent-pending-track,
        .ct-recent-pending-fill
      ),
      .ct-color-dot::before {
        corner-shape: round;
      }
    }

    /* Apple glass redesign layer. */
    :root,
    .ct-app {
      --font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", Inter, system-ui, sans-serif;
      --radius-xs: 8px;
      --radius-sm: 12px;
      --radius-md: 16px;
      --radius-lg: 22px;
      --radius-xl: 28px;
      --radius-pill: 999px;
      --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
      --duration-fast: 140ms;
      --duration-normal: 220ms;
      --blue: #235db2;
      --blue-strong: #235db2;
      --blue-soft: rgba(35, 93, 178, 0.16);
      --ct-ultra-purple: #6f2dbd;
      --ct-ultra-purple-hover: #5b21a6;
      --ct-ultra-purple-soft: rgba(111, 45, 189, 0.18);
      --ct-primary-fill: var(--blue-strong);
      --ct-primary-fill-compact: var(--blue-strong);
      --ct-primary-glow: transparent;
      --ct-primary-shadow: transparent;
      --ct-primary-shadow-hover: transparent;
      --ct-selected-border: rgba(10, 132, 255, 0.42);
      --ct-selected-border-soft: rgba(10, 132, 255, 0.22);
      --ct-selected-border-strong: rgba(10, 132, 255, 0.65);
      --ct-selected-inset: rgba(10, 132, 255, 0.62);
      --ct-selected-shadow: transparent;
      --ct-focus-border: rgba(10, 132, 255, 0.65);
      --ct-focus-ring: rgba(10, 132, 255, 0.22);
      --ct-field-focus-ring: rgba(10, 132, 255, 0.14);
      --ct-toolbar-menu-hover-bg: rgba(10, 132, 255, 0.10);
      --ct-toolbar-menu-selected-bg: rgba(10, 132, 255, 0.16);
      --yellow: #ffd60a;
      --cyan: #32d7d7;
      --green: #34c759;
      --page-bg: #f5f5f7;
      --page-fill: #f5f5f7;
      --surface-1: rgba(255, 255, 255, 0.78);
      --surface-2: rgba(255, 255, 255, 0.92);
      --surface-3: rgba(245, 245, 247, 0.84);
      --surface-glass: rgba(255, 255, 255, 0.78);
      --text-primary: #1d1d1f;
      --text-secondary: #6e6e73;
      --text-tertiary: #8e8e93;
      --border-soft: rgba(0, 0, 0, 0.08);
      --border-strong: rgba(0, 0, 0, 0.12);
      --shadow-card: 0 24px 70px rgba(0, 0, 0, 0.08);
      --shadow-soft: 0 8px 24px rgba(0, 0, 0, 0.06);
      --shadow-control: 0 6px 18px rgba(0, 0, 0, 0.07);
      --header-surface: rgba(255, 255, 255, 0.78);
      --sidebar-surface: rgba(255, 255, 255, 0.74);
      --field-bg: rgba(255, 255, 255, 0.72);
      --field-bg-focus: rgba(255, 255, 255, 0.96);
      --segmented-bg: rgba(255, 255, 255, 0.52);
      --segmented-divider: rgba(0, 0, 0, 0.08);
      --selected-bg: rgba(35, 93, 178, 0.22);
      --selected-fill: var(--selected-bg);
      --selected-text: #1d1d1f;
      --empty-bg: rgba(255, 255, 255, 0.28);
      --empty-dash: rgba(0, 0, 0, 0.11);
      --danger-surface-soft: rgba(255, 59, 48, 0.08);
      --danger-border-soft: rgba(255, 59, 48, 0.24);
      --ct-bg: var(--page-bg);
      --ct-bg-soft: rgba(245, 245, 247, 0.72);
      --ct-surface: var(--surface-1);
      --ct-surface-soft: var(--surface-3);
      --ct-surface-raised: var(--surface-2);
      --ct-panel-bg: var(--surface-2);
      --ct-field-bg: var(--field-bg);
      --ct-text: var(--text-primary);
      --ct-text-strong: var(--text-primary);
      --ct-text-muted: var(--text-secondary);
      --ct-text-soft: var(--text-tertiary);
      --ct-border: var(--border-soft);
      --ct-border-strong: var(--border-strong);
      --ct-primary: var(--blue-strong);
      --ct-primary-hover: #0066cc;
      --ct-primary-text: #ffffff;
      --ct-accent: var(--blue);
      --ct-focus: rgba(10, 132, 255, 0.22);
      --ct-shadow-soft: var(--shadow-soft);
      --ct-shadow-strong: var(--shadow-card);
      --ct-empty-icon-bg: rgba(0, 0, 0, 0.055);
      --ct-brand-primary: #000000;
      --ct-brand-secondary: #000000;
      --ct-selected-bg: var(--selected-bg);
      --ct-selected-text: var(--selected-text);
      --ct-shell-bg: var(--header-surface);
      --ct-shell-bg-strong: var(--header-surface);
      --ct-shell-text: var(--text-primary);
      --ct-shell-muted: var(--text-secondary);
      --ct-shell-border: var(--border-soft);
      --ct-sidebar-surface: var(--sidebar-surface);
      --ct-sidebar-hover-surface: rgba(255, 255, 255, 0.55);
      --ct-sidebar-active-surface: var(--selected-fill);
      --ct-sidebar-active-text: var(--selected-text);
      --ct-sidebar-heading-text: #000000;
      --ct-corner-control: var(--radius-md);
      --ct-corner-control-sm: var(--radius-sm);
      --ct-corner-field: var(--radius-md);
      --ct-corner-panel: var(--radius-xl);
      --ct-corner-modal: var(--radius-xl);
      --ct-corner-menu: var(--radius-lg);
      --ct-corner-chip: var(--radius-md);
      --ct-corner-swatch: var(--radius-sm);
      --ct-corner-highlight: 0.34em;
      --ct-corner-side-tab: var(--radius-md);
      --ct-corner-segmented: var(--radius-md);
      color-scheme: light;
    }

    html[data-theme="dark"],
    html[data-theme="dark"] body,
    .ct-app[data-theme="dark"] {
      color-scheme: dark;
    }

    html[data-theme="dark"] {
      --blue: #235db2;
      --blue-strong: #235db2;
      --blue-soft: rgba(35, 93, 178, 0.22);
      --selected-bg: rgba(35, 93, 178, 0.42);
      --selected-fill: var(--selected-bg);
      --selected-text: #ffffff;
      --ct-primary-fill: var(--blue-strong);
      --ct-primary-fill-compact: var(--blue-strong);
      --ct-primary-glow: transparent;
      --ct-primary-shadow: transparent;
      --ct-primary-shadow-hover: transparent;
      --ct-selected-border: rgba(35, 93, 178, 0.58);
      --ct-selected-border-soft: rgba(35, 93, 178, 0.36);
      --ct-selected-border-strong: rgba(76, 128, 202, 0.58);
      --ct-selected-inset: rgba(76, 128, 202, 0.42);
      --ct-selected-shadow: transparent;
      --ct-focus-border: rgba(76, 128, 202, 0.58);
      --ct-focus-ring: rgba(35, 93, 178, 0.30);
      --ct-field-focus-ring: rgba(35, 93, 178, 0.24);
      --ct-toolbar-menu-hover-bg: rgba(35, 93, 178, 0.16);
      --ct-toolbar-menu-selected-bg: rgba(35, 93, 178, 0.26);
    }

    html[data-theme="dark"],
    html[data-theme="dark"] .ct-app,
    .ct-app[data-theme="dark"] {
      --page-bg: #05070b;
      --page-fill: #05070b;
      --blue: #235db2;
      --blue-strong: #235db2;
      --blue-soft: rgba(35, 93, 178, 0.22);
      --ct-primary-fill: var(--blue-strong);
      --ct-primary-fill-compact: var(--blue-strong);
      --ct-primary-glow: transparent;
      --ct-primary-shadow: transparent;
      --ct-primary-shadow-hover: transparent;
      --ct-selected-border: rgba(35, 93, 178, 0.58);
      --ct-selected-border-soft: rgba(35, 93, 178, 0.36);
      --ct-selected-border-strong: rgba(76, 128, 202, 0.58);
      --ct-selected-inset: rgba(76, 128, 202, 0.42);
      --ct-selected-shadow: transparent;
      --ct-focus-border: rgba(76, 128, 202, 0.58);
      --ct-focus-ring: rgba(35, 93, 178, 0.30);
      --ct-field-focus-ring: rgba(35, 93, 178, 0.24);
      --ct-toolbar-menu-hover-bg: rgba(35, 93, 178, 0.16);
      --ct-toolbar-menu-selected-bg: rgba(35, 93, 178, 0.26);
      --surface-1: rgba(18, 24, 34, 0.72);
      --surface-2: rgba(22, 29, 40, 0.86);
      --surface-3: rgba(255, 255, 255, 0.055);
      --surface-glass: rgba(255, 255, 255, 0.045);
      --text-primary: rgba(255, 255, 255, 0.94);
      --text-secondary: rgba(235, 235, 245, 0.68);
      --text-tertiary: rgba(235, 235, 245, 0.45);
      --border-soft: rgba(255, 255, 255, 0.10);
      --border-strong: rgba(255, 255, 255, 0.16);
      --shadow-card: 0 28px 80px rgba(0, 0, 0, 0.38);
      --shadow-soft: 0 12px 32px rgba(0, 0, 0, 0.28);
      --shadow-control: 0 8px 22px rgba(0, 0, 0, 0.28);
      --header-surface: rgba(11, 15, 23, 0.70);
      --sidebar-surface: rgba(14, 20, 30, 0.72);
      --field-bg: rgba(255, 255, 255, 0.045);
      --field-bg-focus: rgba(255, 255, 255, 0.07);
      --segmented-bg: rgba(255, 255, 255, 0.045);
      --segmented-divider: rgba(255, 255, 255, 0.10);
      --selected-bg: rgba(35, 93, 178, 0.42);
      --selected-fill: var(--selected-bg);
      --selected-text: #ffffff;
      --empty-bg: rgba(255, 255, 255, 0.025);
      --empty-dash: rgba(255, 255, 255, 0.16);
      --danger-surface-soft: rgba(255, 69, 58, 0.12);
      --danger-border-soft: rgba(255, 69, 58, 0.32);
      --ct-bg: var(--page-bg);
      --ct-bg-soft: rgba(255, 255, 255, 0.035);
      --ct-surface: var(--surface-1);
      --ct-surface-soft: var(--surface-3);
      --ct-surface-raised: var(--surface-2);
      --ct-panel-bg: var(--surface-2);
      --ct-field-bg: var(--field-bg);
      --ct-text: var(--text-primary);
      --ct-text-strong: var(--text-primary);
      --ct-text-muted: var(--text-secondary);
      --ct-text-soft: var(--text-tertiary);
      --ct-border: var(--border-soft);
      --ct-border-strong: var(--border-strong);
      --ct-primary: var(--blue-strong);
      --ct-primary-hover: #2f67b8;
      --ct-accent: var(--blue);
      --ct-focus: var(--ct-focus-ring);
      --ct-shadow-soft: var(--shadow-soft);
      --ct-shadow-strong: var(--shadow-card);
      --ct-empty-icon-bg: rgba(255, 255, 255, 0.08);
      --ct-brand-primary: #ffffff;
      --ct-brand-secondary: #ffffff;
      --ct-selected-bg: var(--selected-bg);
      --ct-selected-text: var(--selected-text);
      --ct-shell-bg: var(--header-surface);
      --ct-shell-bg-strong: var(--header-surface);
      --ct-shell-text: var(--text-primary);
      --ct-shell-muted: var(--text-secondary);
      --ct-shell-border: var(--border-soft);
      --ct-sidebar-surface: var(--sidebar-surface);
      --ct-sidebar-hover-surface: rgba(255, 255, 255, 0.065);
      --ct-sidebar-active-surface: var(--selected-fill);
      --ct-sidebar-active-text: #ffffff;
      --ct-sidebar-heading-text: #ffffff;
    }

    html[data-theme="light"],
    html[data-theme="light"] body {
      background: #f5f5f7;
      color: #1d1d1f;
    }

    html[data-theme="dark"],
    html[data-theme="dark"] body {
      background: #05070b;
      color: rgba(255, 255, 255, 0.94);
    }

    .ct-app,
    .ct-shell,
    .ct-workspace,
    .ct-canvas-wrap,
    .ct-canvas {
      background: var(--page-fill);
      color: var(--ct-text);
      font-family: var(--font-sans);
      letter-spacing: 0;
    }

    .ct-app {
      --ct-sidebar-width: 300px;
      --ct-sidebar-collapsed-width: 64px;
      --ct-topbar-height: 72px;
      grid-template-columns: var(--ct-sidebar-width) minmax(0, 1fr);
      grid-template-rows: var(--ct-topbar-height) minmax(0, 1fr);
      overflow: hidden;
    }

    .ct-app.ct-sidebar-collapsed {
      grid-template-columns: var(--ct-sidebar-collapsed-width) minmax(0, 1fr);
    }

    .ct-topbar {
      min-height: var(--ct-topbar-height);
      display: grid;
      grid-template-columns: var(--ct-sidebar-width) minmax(0, 1fr) auto;
      gap: 0;
      padding: 0;
      background: var(--header-surface);
      color: var(--ct-shell-text);
      border-bottom: 1px solid var(--border-soft);
      box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.04);
      backdrop-filter: blur(24px) saturate(150%);
      -webkit-backdrop-filter: blur(24px) saturate(150%);
    }

    .ct-app.ct-sidebar-collapsed .ct-topbar {
      grid-template-columns: var(--ct-sidebar-collapsed-width) minmax(0, 1fr) auto;
    }

    .ct-topbar-brand-zone {
      height: 100%;
      grid-template-columns: var(--ct-sidebar-collapsed-width) minmax(0, 1fr);
      background: var(--header-surface);
      border-right: 1px solid var(--border-soft);
      border-bottom: 1px solid var(--border-soft);
      margin-bottom: -1px;
      backdrop-filter: blur(28px) saturate(160%);
      -webkit-backdrop-filter: blur(28px) saturate(160%);
    }

    .ct-topbar-brand-zone::after {
      display: none;
    }

    .ct-topbar-nav-zone {
      height: 100%;
      padding: 0 56px;
    }

    .ct-topbar-right {
      height: 100%;
      padding: 0 32px;
      gap: 14px;
    }

    .ct-topbar-left {
      gap: 24px;
    }

    .ct-brand {
      margin-left: 28px;
      color: var(--ct-brand-primary);
      display: inline-grid;
      justify-items: center;
      font-family: "Times New Roman", Times, serif;
      line-height: 0.9;
      letter-spacing: 0;
    }

    .ct-brand-primary {
      color: var(--ct-brand-primary);
      font-size: 30px;
      font-weight: 700;
      line-height: 0.9;
    }

    .ct-brand-secondary {
      color: var(--ct-brand-secondary);
      font-size: 18px;
      font-weight: 700;
      line-height: 0.9;
      font-style: italic;
    }

    .ct-menu-button,
    .ct-topbar .ct-icon-button {
      width: 36px;
      height: 36px;
      border: 1px solid transparent;
      color: var(--ct-shell-text);
      background: transparent;
    }

    .ct-menu-button:hover,
    .ct-topbar .ct-icon-button:hover {
      background: var(--ct-sidebar-hover-surface);
      border-color: var(--border-soft);
      transform: translateY(-1px);
    }

    .ct-nav {
      height: 100%;
      gap: 34px;
    }

    .ct-nav-button {
      position: relative;
      min-height: var(--ct-topbar-height);
      align-self: stretch;
      padding: 0 4px;
      border: 0;
      border-radius: 0;
      background: transparent;
      color: var(--text-secondary);
      font-size: 15px;
      font-weight: 600;
      letter-spacing: 0;
      box-shadow: none;
    }

    .ct-nav-button:hover,
    .ct-nav-button[aria-current="page"] {
      background: transparent;
      color: var(--text-primary);
      box-shadow: none;
    }

    .ct-nav-button[aria-current="page"]::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      height: 3px;
      border-radius: var(--radius-pill);
      background: var(--blue);
      box-shadow: 0 0 16px var(--ct-primary-glow);
    }

    .ct-config-button {
      min-height: 44px;
      min-width: 120px;
      align-self: center;
      padding: 0 22px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-sm);
      background: var(--surface-3);
      color: var(--text-primary);
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 1px 1px rgba(0, 0, 0, 0.05);
    }

    .ct-config-button::after {
      display: none;
    }

    .ct-config-button:hover,
    .ct-config-button[aria-current="page"] {
      background: var(--surface-2);
      border-color: var(--border-strong);
      color: var(--text-primary);
      box-shadow: var(--shadow-soft);
    }

    .ct-sidebar {
      background: var(--sidebar-surface);
      color: var(--text-primary);
      border-right: 1px solid var(--border-soft);
      box-shadow: inset -1px 0 rgba(255, 255, 255, 0.04);
      backdrop-filter: blur(28px) saturate(160%);
      -webkit-backdrop-filter: blur(28px) saturate(160%);
    }

    .ct-collapsed-mode-list {
      display: none;
    }

    .ct-app.ct-sidebar-collapsed .ct-collapsed-mode-list {
      display: grid;
      align-content: start;
      justify-items: center;
      gap: 10px;
      padding: 24px 8px;
    }

    .ct-collapsed-auth-shell {
      display: none;
    }

    .ct-app.ct-sidebar-collapsed .ct-collapsed-auth-shell {
      grid-row: 3;
      align-self: end;
      display: grid;
      justify-items: center;
      padding: 0 8px 18px;
    }

    .ct-collapsed-auth-stack {
      width: 48px;
      display: grid;
      justify-items: center;
      gap: 10px;
    }

    .ct-collapsed-auth-avatar {
      width: 36px;
      height: 36px;
      border-radius: 50%;
      display: grid;
      place-items: center;
      overflow: hidden;
      border: 1px solid var(--border-soft);
      background: var(--ct-primary-fill-compact);
      color: #ffffff;
      font-size: 14px;
      font-weight: 650;
      line-height: 1;
      box-shadow: 0 8px 18px var(--ct-primary-shadow);
    }

    .ct-collapsed-auth-avatar.ct-empty {
      background: var(--surface-3);
      color: var(--text-secondary);
      box-shadow: none;
    }

    .ct-collapsed-auth-avatar img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
    }

    .ct-collapsed-auth-avatar .ct-icon {
      width: 19px;
      height: 19px;
      margin: 0;
    }

    .ct-collapsed-auth-action {
      width: 40px;
      height: 40px;
      min-width: 40px;
      min-height: 40px;
      padding: 0;
      display: grid;
      place-items: center;
      border: 1px solid transparent;
      border-radius: var(--radius-md);
      background: transparent;
      color: var(--text-secondary);
    }

    .ct-collapsed-auth-action:hover,
    .ct-collapsed-auth-action:focus-visible {
      background: var(--ct-sidebar-hover-surface);
      color: var(--text-primary);
      outline: none;
      transform: translateY(-1px);
    }

    .ct-collapsed-auth-action .ct-icon {
      width: 21px;
      height: 21px;
      margin: 0;
    }

    .ct-collapsed-mode-button.ct-mode-button {
      width: 48px;
      min-height: 48px;
      height: 48px;
      padding: 0;
      display: grid;
      place-items: center;
      border-radius: var(--radius-md);
      color: var(--text-secondary);
      background: transparent;
    }

    .ct-collapsed-mode-button.ct-mode-button span {
      display: none;
    }

    .ct-collapsed-mode-button.ct-mode-button .ct-icon {
      width: 24px;
      height: 24px;
      margin: 0;
      stroke-width: 2;
    }

    .ct-collapsed-mode-button.ct-mode-button:hover,
    .ct-collapsed-mode-button.ct-mode-button:focus-visible {
      background: var(--ct-sidebar-hover-surface);
      color: var(--text-primary);
      outline: none;
      transform: translateY(-1px);
    }

    .ct-collapsed-mode-button.ct-mode-button[aria-pressed="true"] {
      background: var(--ct-sidebar-active-surface);
      color: var(--ct-sidebar-active-text);
      border-color: transparent;
    }

    .ct-collapsed-mode-button[data-tooltip] {
      position: relative;
    }

    .ct-collapsed-mode-button[data-tooltip]::after {
      content: attr(data-tooltip);
      position: absolute;
      left: calc(100% + 10px);
      top: 50%;
      z-index: 18;
      padding: 6px 8px;
      border-radius: var(--radius-xs);
      background: rgba(15, 18, 24, 0.96);
      color: #ffffff;
      box-shadow: 0 10px 24px rgba(0, 0, 0, 0.26);
      font-size: 12px;
      font-weight: 500;
      line-height: 1;
      white-space: nowrap;
      opacity: 0;
      pointer-events: none;
      transform: translateY(-50%) translateX(-4px);
      transition: opacity 0.14s ease, transform 0.14s ease;
    }

    .ct-collapsed-mode-button[data-tooltip]:hover::after,
    .ct-collapsed-mode-button[data-tooltip]:focus-visible::after {
      opacity: 1;
      transform: translateY(-50%) translateX(0);
    }

    .ct-sidebar-main {
      padding: 32px 28px 20px;
    }

    .ct-sidebar-section {
      margin-bottom: 30px;
      padding-bottom: 30px;
      border-bottom: 1px solid var(--border-soft);
    }

    .ct-sidebar-heading {
      margin: 0 0 18px;
      color: var(--ct-sidebar-heading-text);
      font-size: 15px;
      line-height: 1.35;
      font-weight: 560;
    }

    .ct-sidebar #ct-project-status {
      margin: -12px 0 12px;
      color: var(--text-secondary);
      font-size: 13px;
      line-height: 1.3;
      font-weight: 430;
    }

    .ct-mode-list,
    .ct-project-list {
      gap: 10px;
    }

    .ct-mode-button,
    .ct-project-button,
    .ct-tree-button,
    .ct-file-button {
      min-height: 48px;
      padding: 0 14px;
      border: 1px solid transparent;
      border-radius: var(--radius-md);
      color: var(--text-secondary);
      background: transparent;
      font-size: 15px;
      font-weight: 590;
      line-height: 1.2;
      transition:
        background var(--duration-normal) var(--ease-out),
        border-color var(--duration-normal) var(--ease-out),
        color var(--duration-normal) var(--ease-out),
        box-shadow var(--duration-normal) var(--ease-out),
        transform var(--duration-fast) var(--ease-out);
    }

    .ct-mode-button .ct-icon {
      width: 21px;
      height: 21px;
      stroke-width: 2;
    }

    .ct-mode-button:hover,
    .ct-project-button:hover,
    .ct-tree-button:hover,
    .ct-file-button:hover {
      background: var(--ct-sidebar-hover-surface);
      color: var(--text-primary);
      transform: translateY(-1px);
    }

    .ct-mode-button[aria-pressed="true"] {
      background: var(--ct-sidebar-active-surface);
      color: var(--ct-sidebar-active-text);
      border-color: transparent;
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
      font-weight: 680;
    }

    .ct-project-button,
    .ct-tree-button,
    .ct-file-button {
      min-height: 38px;
      padding-inline: 8px;
      gap: 10px;
      font-size: 15px;
    }

    .ct-file-button {
      min-height: 32px;
      color: var(--text-secondary);
      font-size: 13px;
      font-weight: 430;
    }

    .ct-file-button[aria-current="true"] {
      background: var(--surface-3);
      color: var(--text-primary);
      border-color: var(--border-soft);
      box-shadow: none;
      font-weight: 500;
    }

    .ct-chevron,
    .ct-row-action {
      color: currentColor;
    }

    .ct-row-action:hover {
      background: var(--ct-sidebar-hover-surface);
      transform: translateY(-1px);
    }

    .ct-sidebar .ct-small-button,
    .ct-small-button {
      min-height: 44px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-md);
      background: rgba(255, 255, 255, 0.22);
      color: var(--text-primary);
      font-size: 15px;
      font-weight: 600;
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
    }

    .ct-sidebar .ct-small-button:hover,
    .ct-small-button:hover {
      background: var(--surface-3);
      border-color: var(--border-strong);
      color: var(--text-primary);
      transform: translateY(-1px);
    }

    .ct-sidebar .ct-project-tools {
      margin: 0 0 16px;
    }

    .ct-sidebar .ct-project-tools .ct-small-button {
      min-height: 42px;
      font-size: 14px;
    }

    .ct-sidebar-footer {
      padding: 28px 28px 30px;
      border-top: 1px solid var(--border-soft);
      background: transparent;
    }

    .ct-auth-user {
      color: var(--text-primary);
      gap: 14px;
      justify-items: stretch;
    }

    .ct-auth-identity {
      gap: 14px;
    }

    .ct-auth-avatar {
      width: 44px;
      height: 44px;
      flex-basis: 44px;
      background: var(--ct-primary-fill-compact);
      color: #ffffff;
      box-shadow: 0 8px 18px var(--ct-primary-shadow);
    }

    .ct-sidebar .ct-auth-avatar {
      width: 36px;
      height: 36px;
      flex-basis: 36px;
      font-size: 14px;
      box-shadow: 0 6px 14px var(--ct-primary-shadow);
    }

    .ct-auth-email {
      color: var(--text-primary);
      font-size: 15px;
      font-weight: 520;
    }

    .ct-auth-tab {
      min-height: 42px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-md);
      background: var(--surface-3);
      color: var(--text-secondary);
    }

    .ct-auth-tab[aria-pressed="true"] {
      background: var(--ct-sidebar-active-surface);
      color: var(--ct-sidebar-active-text);
      border-color: var(--ct-selected-border-soft);
    }

    .ct-canvas-wrap {
      padding: 36px 64px 30px;
      overflow: auto;
      transition:
        filter var(--duration-normal) var(--ease-out),
        opacity var(--duration-normal) var(--ease-out);
    }

    .ct-paper {
      width: min(100%, 1190px);
      background: transparent;
    }

    .ct-assisted-paper {
      width: min(100%, 1190px);
    }

    .ct-paper-inner {
      padding: 0 0 18px;
    }

    .ct-tool-header {
      margin-bottom: 26px;
    }

    .ct-tool-header h1,
    .ct-page-title,
    .ct-review-empty h2 {
      color: var(--text-primary);
      font-family: var(--font-sans);
      font-size: clamp(34px, 3vw, 46px);
      line-height: 1.08;
      font-weight: 620;
      letter-spacing: 0;
    }

    .ct-tool-header p,
    .ct-page-copy {
      max-width: 760px;
      color: var(--text-secondary);
      font-size: 17px;
      line-height: 1.45;
      font-weight: 430;
      letter-spacing: 0;
    }

    .ct-tool-workspace,
    .ct-assisted-shell {
      grid-template-columns: minmax(520px, 1fr) minmax(460px, 0.95fr);
      gap: 24px;
      align-items: stretch;
    }

    .ct-tool-box,
    .ct-feature-card,
    .ct-modal,
    .ct-review-shell,
    .ct-result-card,
    .ct-queue-panel,
    .ct-queue-item,
    .ct-complete-card,
    .ct-progress-card,
    .ct-recent-file,
    .ct-assisted-cut-panel,
    .ct-source-reader,
    .ct-source-frame-wrap,
    .ct-config-card,
    .ct-danger-section {
      border: 1px solid var(--border-soft);
      background: var(--surface-2);
      color: var(--text-primary);
      box-shadow:
        var(--shadow-card),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
      backdrop-filter: blur(24px) saturate(150%);
      -webkit-backdrop-filter: blur(24px) saturate(150%);
    }

    .ct-tool-box {
      padding: 24px;
      border-radius: var(--radius-xl);
      gap: 20px;
    }

    .ct-deep-workspace .ct-tool-box,
    .ct-quick-workspace .ct-tool-box {
      min-height: min(500px, calc(100vh - 276px));
    }

    .ct-tool-options-stack,
    .ct-deep-options-stack,
    .ct-tool-box-scroll {
      gap: 18px;
    }

    .ct-label,
    .ct-request-panel .ct-label,
    .ct-setup-grid .ct-label,
    .ct-tool-box-title,
    .ct-settings-section h3,
    .ct-modal-header h2,
    .ct-checkbox-row .ct-checkbox-title {
      color: var(--text-primary);
      font-size: 15px;
      font-weight: 500;
      line-height: 1.25;
      letter-spacing: 0;
    }

    .ct-help,
    .ct-muted-note,
    .ct-queue-meta,
    .ct-result-domain,
    .ct-result-snippet,
    .ct-reader-meta,
    .ct-reader-body,
    .ct-checkbox-row p,
    .ct-feature-card p {
      color: var(--text-secondary);
    }

    .ct-request-row,
    .ct-tool-options-box .ct-request-row,
    .ct-tool-options-box .ct-option-grid,
    .ct-deep-option-grid {
      gap: 24px;
    }

    .ct-input,
    .ct-select,
    .ct-textarea,
    .ct-toolbar-select,
    .ct-toolbar-input,
    .ct-sidebar .ct-input,
    .ct-review-title-input {
      min-height: 52px;
      height: 52px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-md);
      background: var(--field-bg);
      color: var(--text-primary);
      font-size: 16px;
      font-weight: 430;
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 1px 1px rgba(0, 0, 0, 0.08);
      transition:
        border-color var(--duration-fast) var(--ease-out),
        box-shadow var(--duration-fast) var(--ease-out),
        background var(--duration-fast) var(--ease-out);
    }

    .ct-textarea,
    .ct-minimal-input-block .ct-textarea {
      min-height: 148px;
      padding: 16px;
      line-height: 1.45;
      resize: vertical;
    }

    .ct-input:focus,
    .ct-select:focus,
    .ct-textarea:focus,
    .ct-toolbar-select:focus,
    .ct-toolbar-input:focus,
    .ct-review-title-input:focus {
      outline: none;
      border-color: var(--ct-focus-border);
      background: var(--field-bg-focus);
      box-shadow:
        0 0 0 4px var(--ct-field-focus-ring),
        inset 0 1px 0 rgba(255, 255, 255, 0.06);
    }

    .ct-input::placeholder,
    .ct-textarea::placeholder {
      color: var(--text-tertiary);
    }

    .ct-minimal-input-block,
    .ct-compact-field {
      border-color: transparent;
      background: transparent;
      box-shadow: none;
    }

    .ct-tool-options-box .ct-side-switch,
    .ct-tool-options-box .ct-quality-row,
    .ct-tool-options-box .ct-deep-file-row,
    .ct-theme-row,
    .ct-size-stepper {
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-md);
      background: var(--segmented-bg);
      overflow: hidden;
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 1px 1px rgba(0, 0, 0, 0.05);
    }

    .ct-tool-options-box .ct-side-switch {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 0;
    }

    .ct-tool-options-box .ct-side-switch .ct-pill,
    .ct-tool-options-box .ct-quality-row .ct-quality-pill,
    .ct-tool-options-box .ct-deep-file-row .ct-pill,
    .ct-theme-pill,
    .ct-size-step {
      width: 100%;
      max-width: none;
      min-height: 48px;
      border: 0;
      border-radius: 0;
      background: transparent;
      color: var(--text-secondary);
      font-size: 16px;
      font-weight: 500;
      line-height: 1.2;
      box-shadow: none;
    }

    .ct-tool-options-box .ct-side-switch .ct-pill + .ct-pill {
      border-left: 1px solid var(--segmented-divider);
    }

    .ct-tool-options-box .ct-quality-row .ct-quality-pill + .ct-quality-pill,
    .ct-tool-options-box .ct-deep-file-row .ct-pill + .ct-pill {
      border-top: 1px solid var(--segmented-divider);
    }

    .ct-pill,
    .ct-quality-pill,
    .ct-swatch-button,
    .ct-theme-pill {
      border: 1px solid var(--border-soft);
      background: var(--field-bg);
      color: var(--text-primary);
      font-size: 16px;
      font-weight: 500;
      transition:
        background var(--duration-normal) var(--ease-out),
        border-color var(--duration-normal) var(--ease-out),
        color var(--duration-normal) var(--ease-out),
        box-shadow var(--duration-normal) var(--ease-out),
        transform var(--duration-fast) var(--ease-out);
    }

    .ct-pill:hover,
    .ct-quality-pill:hover,
    .ct-swatch-button:hover,
    .ct-theme-pill:hover {
      transform: translateY(-1px);
    }

    .ct-pill[aria-pressed="true"],
    .ct-quality-pill[aria-pressed="true"],
    .ct-theme-pill[aria-pressed="true"] {
      background: var(--selected-fill);
      color: var(--selected-text);
      border-color: transparent;
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
      font-weight: 500;
    }

    .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"],
    .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"],
    .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"] {
      position: relative;
      z-index: 1;
      border-color: transparent;
      background: var(--selected-fill);
      color: var(--selected-text);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
    }

    .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"]:first-child {
      border-radius: var(--radius-md) 0 0 var(--radius-md);
    }

    .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"]:last-child {
      border-radius: 0 var(--radius-md) var(--radius-md) 0;
    }

    .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"]:first-child,
    .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"]:first-child {
      border-radius: var(--radius-md) var(--radius-md) 0 0;
    }

    .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"]:last-child,
    .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"]:last-child {
      border-radius: 0 0 var(--radius-md) var(--radius-md);
    }

    .ct-tool-options-box .ct-highlight-row {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 16px;
    }

    .ct-tool-options-box .ct-swatch-button,
    .ct-swatch-button {
      min-height: 58px;
      border-radius: var(--radius-md);
      background: var(--field-bg);
      display: grid;
      place-items: center;
      border: 1px solid var(--border-soft);
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.05),
        0 1px 1px rgba(0, 0, 0, 0.05);
    }

    .ct-swatch-button[aria-pressed="true"] {
      position: relative;
      z-index: 1;
      border-color: transparent;
      background: var(--selected-fill);
      color: var(--selected-text);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
      font-weight: 500;
    }

    .ct-swatch-chip {
      width: 28px;
      height: 28px;
      flex-basis: 28px;
      border-radius: var(--radius-xs);
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.28),
        0 4px 12px rgba(0, 0, 0, 0.22);
    }

    .ct-submit {
      min-height: 48px;
      border: 0;
      border-radius: var(--radius-md);
      background: var(--ct-primary-fill);
      color: #ffffff;
      font-size: 15px;
      font-weight: 500;
      box-shadow: none;
      transition:
        transform var(--duration-fast) var(--ease-out),
        box-shadow var(--duration-fast) var(--ease-out),
        filter var(--duration-fast) var(--ease-out);
    }

    .ct-submit:hover {
      transform: translateY(-1px);
      filter: brightness(1.05);
      box-shadow: none;
    }

    .ct-submit.ct-ultra-submit {
      background: var(--ct-ultra-purple);
    }

    .ct-submit.ct-ultra-submit:hover {
      background: var(--ct-ultra-purple-hover);
      filter: none;
    }

    .ct-ultra-progress .ct-progress-fill {
      background: var(--ct-ultra-purple);
    }

    html[data-theme="dark"] .ct-submit:not(.ct-secondary):not(.ct-quiet-action),
    .ct-app[data-theme="dark"] .ct-submit:not(.ct-secondary):not(.ct-quiet-action),
    html[data-theme="dark"] .ct-review-tab,
    .ct-app[data-theme="dark"] .ct-review-tab,
    html[data-theme="dark"] .ct-auth-avatar,
    .ct-app[data-theme="dark"] .ct-auth-avatar {
      box-shadow: none;
    }

    html[data-theme="dark"] .ct-submit:not(.ct-secondary):not(.ct-quiet-action):hover,
    .ct-app[data-theme="dark"] .ct-submit:not(.ct-secondary):not(.ct-quiet-action):hover {
      box-shadow: none;
    }

    html[data-theme="dark"] .ct-mode-button[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-mode-button[aria-pressed="true"],
    html[data-theme="dark"] .ct-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-pill[aria-pressed="true"],
    html[data-theme="dark"] .ct-quality-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-quality-pill[aria-pressed="true"],
    html[data-theme="dark"] .ct-theme-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-theme-pill[aria-pressed="true"] {
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
    }

    html[data-theme="dark"] .ct-swatch-button[aria-pressed="true"],
    html[data-theme="dark"] .ct-theme-pill[aria-pressed="true"] {
      border-color: transparent;
      background: var(--selected-fill);
      color: #ffffff;
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
    }

    .ct-submit:active,
    .ct-action-button:active,
    .ct-mode-button:active,
    .ct-sidebar .ct-small-button:active {
      transform: scale(0.985);
    }

    .ct-submit.ct-secondary,
    .ct-submit.ct-quiet-action,
    .ct-action-button,
    .ct-action-button.ct-secondary,
    .ct-toolbar-button,
    .ct-toolbar-button.ct-download,
    .ct-source-icon-button,
    .ct-download-option,
    .ct-inline-download-option {
      min-height: 38px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-sm);
      background: var(--surface-3);
      color: var(--text-primary);
      font-size: 14px;
      font-weight: 500;
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 1px 1px rgba(0, 0, 0, 0.05);
    }

    .ct-submit.ct-secondary:hover,
    .ct-submit.ct-quiet-action:hover,
    .ct-action-button:hover,
    .ct-toolbar-button:hover,
    .ct-source-icon-button:hover,
    .ct-download-option:hover,
    .ct-inline-download-option:hover {
      background: var(--surface-2);
      border-color: var(--border-strong);
      transform: translateY(-1px);
      filter: none;
      box-shadow: var(--shadow-soft);
    }

    .ct-submit.ct-deep-surprise-button {
      min-height: 34px;
      padding: 0;
      border: 0;
      background: transparent;
      color: var(--blue-strong);
      box-shadow: none;
      font-size: 15px;
      font-weight: 500;
    }

    .ct-tool-queue-slot {
      min-height: 218px;
    }

    .ct-tool-queue-slot .ct-assisted-empty-queue,
    .ct-tool-queue-slot .ct-queue-panel,
    .ct-assisted-results-empty {
      min-height: 218px;
      border: 1px dashed var(--empty-dash);
      border-radius: var(--radius-lg);
      background: var(--empty-bg);
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        inset 0 0 0 12px rgba(255, 255, 255, 0.018);
    }

    .ct-assisted-empty-queue,
    .ct-assisted-results-empty {
      color: var(--text-primary);
      font-size: 16px;
      font-weight: 500;
      text-align: center;
    }

    .ct-empty-queue-icon {
      width: 58px;
      height: 58px;
      border-radius: 50%;
      background: var(--ct-empty-icon-bg);
      color: var(--text-primary);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    }

    .ct-empty-queue-icon .ct-icon {
      width: 29px;
      height: 29px;
      stroke-width: 1.9;
    }

    .ct-queue-item,
    .ct-result-card,
    .ct-recent-file,
    .ct-complete-card,
    .ct-progress-card {
      border-radius: var(--radius-lg);
      padding: 16px;
    }

    .ct-queue-title,
    .ct-result-card h3,
    .ct-recent-file-title,
    .ct-feature-card h3 {
      color: var(--text-primary);
      font-weight: 500;
      letter-spacing: 0;
    }

    .ct-assisted-search-box {
      min-height: min(500px, calc(100vh - 276px));
      height: min(600px, calc(100vh - 276px));
      max-height: 660px;
      --ct-assisted-box-surface: #fbfbfc;
      --ct-assisted-top-shadow: rgba(15, 23, 42, 0.12);
      background: var(--ct-assisted-box-surface);
    }

    .ct-assisted-results-shell {
      position: relative;
      padding-right: 4px;
      background: transparent;
      box-shadow: none;
      scrollbar-gutter: stable;
    }

    .ct-assisted-results {
      position: relative;
      z-index: 1;
      gap: 14px;
    }

    .ct-assisted-results-shell::before {
      content: "";
      position: sticky;
      top: 0;
      z-index: 2;
      display: block;
      height: 1px;
      margin-bottom: -1px;
      pointer-events: none;
      opacity: 0;
      background: transparent;
      box-shadow: 0 8px 12px 1px var(--ct-assisted-top-shadow);
      transition: opacity 140ms ease;
    }

    .ct-assisted-results-shell.ct-assisted-results-can-scroll {
      box-shadow: none;
    }

    .ct-assisted-results-shell.ct-assisted-results-is-scrolled::before {
      opacity: 1;
    }

    .ct-assisted-results-shell.ct-assisted-results-can-scroll.ct-assisted-results-is-scrolled {
      box-shadow: none;
    }

    .ct-assisted-search-box .ct-assisted-results .ct-result-card {
      background: transparent;
      box-shadow: none;
    }

    html[data-theme="dark"] .ct-assisted-search-box,
    .ct-app[data-theme="dark"] .ct-assisted-search-box {
      --ct-assisted-box-surface: #161d28;
      --ct-assisted-top-shadow: rgba(0, 0, 0, 0.28);
    }

    .ct-result-actions {
      gap: 10px;
    }

    .ct-deep-upload-row {
      grid-template-columns: max-content minmax(0, 1fr);
      align-items: center;
    }

    .ct-upload-trigger,
    .ct-deep-upload-inside .ct-upload-trigger {
      width: 48px;
      height: 48px;
      min-height: 48px;
      border-radius: var(--radius-md);
      border: 1px solid var(--border-soft);
      background: var(--surface-3);
      color: var(--blue-strong);
      box-shadow: var(--shadow-control);
    }

    .ct-file-chip {
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-md);
      background: var(--surface-3);
      color: var(--text-primary);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
    }

    .ct-chip-remove {
      border-radius: var(--radius-xs);
      color: var(--text-secondary);
    }

    .ct-feature-grid {
      gap: 24px;
    }

    .ct-feature-card {
      border-radius: var(--radius-xl);
      padding: 26px;
    }

    .ct-feature-card h3 {
      font-size: 20px;
      line-height: 1.2;
    }

    .ct-feature-card p {
      font-size: 15px;
      line-height: 1.5;
    }

    .ct-app[data-theme="dark"] .ct-tool-box,
    .ct-app[data-theme="dark"] .ct-feature-card,
    .ct-app[data-theme="dark"] .ct-modal,
    .ct-app[data-theme="dark"] .ct-review-shell,
    .ct-app[data-theme="dark"] .ct-result-card,
    .ct-app[data-theme="dark"] .ct-queue-panel,
    .ct-app[data-theme="dark"] .ct-queue-item,
    .ct-app[data-theme="dark"] .ct-complete-card,
    .ct-app[data-theme="dark"] .ct-progress-card,
    .ct-app[data-theme="dark"] .ct-recent-file,
    .ct-app[data-theme="dark"] .ct-assisted-cut-panel,
    .ct-app[data-theme="dark"] .ct-source-reader,
    .ct-app[data-theme="dark"] .ct-source-frame-wrap,
    .ct-app[data-theme="dark"] .ct-config-card,
    .ct-app[data-theme="dark"] .ct-danger-section {
      box-shadow:
        var(--shadow-card),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
    }

    .ct-app[data-theme="dark"] .ct-sidebar .ct-small-button,
    .ct-app[data-theme="dark"] .ct-small-button {
      background: rgba(255, 255, 255, 0.045);
      color: var(--text-primary);
    }

    .ct-app[data-theme="dark"] .ct-sidebar .ct-small-button:hover,
    .ct-app[data-theme="dark"] .ct-small-button:hover {
      background: rgba(255, 255, 255, 0.075);
      border-color: var(--border-strong);
    }

    .ct-app[data-theme="dark"] .ct-swatch-button[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-theme-pill[aria-pressed="true"] {
      border-color: transparent;
      background: var(--selected-fill);
      color: #ffffff;
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
    }

    .ct-app[data-theme="dark"] .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"] {
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
    }

    .ct-modal-backdrop {
      background: rgba(5, 7, 11, 0.38);
      backdrop-filter: blur(18px) saturate(140%);
      -webkit-backdrop-filter: blur(18px) saturate(140%);
    }

    .ct-modal {
      border-radius: var(--radius-xl);
      overflow: hidden;
    }

    #ct-manage-modal .ct-modal {
      max-width: min(660px, calc(100vw - 32px));
    }

    .ct-modal-header,
    .ct-modal-footer,
    .ct-review-header,
    .ct-review-toolbar-row,
    .ct-toolbar-menu,
    .ct-size-stepper {
      background: var(--surface-2);
      border-color: var(--border-soft);
      color: var(--text-primary);
    }

    .ct-modal-header h2 {
      color: var(--text-primary);
      font-size: 22px;
      font-weight: 720;
      letter-spacing: -0.01em;
    }

    html[data-theme="dark"] .ct-modal-backdrop {
      background: rgba(2, 5, 11, 0.66);
    }

    html[data-theme="dark"] .ct-modal {
      background: rgba(17, 24, 36, 0.96);
      border-color: var(--border-strong);
      color: var(--text-primary);
      box-shadow:
        0 28px 80px rgba(0, 0, 0, 0.48),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
    }

    html[data-theme="dark"] .ct-modal-header,
    html[data-theme="dark"] .ct-modal-footer,
    html[data-theme="dark"] .ct-manage-footer {
      background: rgba(19, 27, 40, 0.98);
      border-color: var(--border-soft);
      color: var(--text-primary);
    }

    html[data-theme="dark"] .ct-modal-body {
      background: rgba(9, 13, 21, 0.94);
      color: var(--text-primary);
    }

    html[data-theme="dark"] .ct-settings-section + .ct-settings-section {
      border-top-color: var(--border-soft);
    }

    html[data-theme="dark"] .ct-config-card,
    html[data-theme="dark"] .ct-checkbox-row,
    html[data-theme="dark"] .ct-theme-row,
    html[data-theme="dark"] .ct-swatch-button {
      background: var(--surface-3);
      border-color: var(--border-soft);
      color: var(--text-primary);
    }

    html[data-theme="dark"] .ct-input,
    html[data-theme="dark"] .ct-select,
    html[data-theme="dark"] .ct-textarea {
      background: var(--field-bg);
      border-color: var(--border-soft);
      color: var(--text-primary);
    }

    html[data-theme="dark"] .ct-input:focus,
    html[data-theme="dark"] .ct-select:focus,
    html[data-theme="dark"] .ct-textarea:focus {
      background: var(--field-bg-focus);
      border-color: var(--ct-focus-border);
    }

    html[data-theme="dark"] .ct-label,
    html[data-theme="dark"] .ct-settings-section h3,
    html[data-theme="dark"] .ct-modal-header h2,
    html[data-theme="dark"] .ct-checkbox-row .ct-checkbox-title,
    html[data-theme="dark"] .ct-font-grid label {
      color: var(--text-primary);
    }

    html[data-theme="dark"] .ct-help,
    html[data-theme="dark"] .ct-checkbox-row p {
      color: var(--text-secondary);
    }

    .ct-app.ct-review-open .ct-canvas-wrap {
      filter: blur(14px) saturate(125%);
      opacity: 0.72;
      pointer-events: none;
    }

    .ct-settings-section {
      border-color: var(--border-soft);
    }

    .ct-settings-control {
      gap: 10px;
    }

    .ct-checkbox-row {
      border-radius: var(--radius-lg);
      border-color: var(--border-soft);
      background: var(--surface-3);
    }

    #ct-config-body .ct-theme-row,
    #ct-config-body .ct-quality-row,
    #ct-config-body .ct-checkbox-row {
      background: transparent !important;
      border-color: transparent !important;
      box-shadow: none !important;
    }

    #ct-config-body .ct-theme-row,
    #ct-config-body .ct-quality-row {
      border: 0 !important;
      border-radius: 0;
      overflow: visible;
    }

    #ct-config-body .ct-checkbox-row {
      border-radius: 0;
    }

    .ct-danger-section,
    .ct-inline-delete-confirm {
      border-color: var(--danger-border-soft);
      background: var(--danger-surface-soft);
    }

    .ct-danger-icon-button {
      border-radius: var(--radius-sm);
      background: transparent;
      box-shadow: none;
    }

    .ct-inline-delete-confirm {
      border-radius: var(--radius-md);
      box-shadow:
        0 18px 42px rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.18);
      backdrop-filter: blur(18px) saturate(150%);
      -webkit-backdrop-filter: blur(18px) saturate(150%);
    }

    .ct-submit.ct-inline-delete-button {
      min-width: 72px;
      min-height: 32px;
      height: 32px;
      padding: 0 12px;
      font-size: 13px;
    }

    .ct-submit.ct-manage-save-button {
      min-height: 34px;
      height: 34px;
      padding: 0 16px;
      font-size: 14px;
    }

    .ct-inline-cancel-button {
      background: transparent !important;
      border-color: transparent !important;
      box-shadow: none !important;
      color: var(--text-secondary);
    }

    .ct-inline-cancel-button:hover,
    .ct-inline-cancel-button:focus-visible {
      background: transparent !important;
      border-color: transparent !important;
      color: var(--text-primary);
      transform: scale(1.06);
    }

    html[data-theme="dark"] .ct-inline-delete-confirm,
    .ct-app[data-theme="dark"] .ct-inline-delete-confirm {
      border-color: rgba(255, 105, 97, 0.36);
      background: rgba(45, 18, 26, 0.96);
      box-shadow:
        0 18px 42px rgba(0, 0, 0, 0.36),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
    }

    html[data-theme="dark"] .ct-inline-delete-title,
    .ct-app[data-theme="dark"] .ct-inline-delete-title {
      color: rgba(255, 255, 255, 0.96);
    }

    html[data-theme="dark"] .ct-inline-delete-copy span,
    .ct-app[data-theme="dark"] .ct-inline-delete-copy span {
      color: rgba(255, 219, 224, 0.82);
    }

    .ct-review-toolbar-row {
      min-height: 70px;
      padding: 10px 16px;
      align-items: center;
    }

    .ct-review-toolbar-row .ct-toolbar,
    .ct-review-toolbar-row .ct-toolbar-group {
      align-items: center;
    }

    .ct-toolbar-button,
    .ct-toolbar-button.ct-download {
      min-width: 44px;
      min-height: 44px;
      height: 44px;
    }

    .ct-toolbar-select,
    .ct-toolbar-input,
    .ct-toolbar-combo,
    .ct-size-control {
      min-height: 44px;
      height: 44px;
    }

    .ct-review-toolbar-row .ct-toolbar-select {
      border-radius: var(--radius-sm);
      background: var(--surface-3);
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 1px 1px rgba(0, 0, 0, 0.05);
    }

    .ct-toolbar-select,
    .ct-toolbar-input {
      font-size: 15px;
    }

    .ct-toolbar-combo-toggle,
    .ct-size-menu-toggle {
      top: 4px;
      bottom: 4px;
    }

    .ct-size-stepper {
      width: 36px;
      min-width: 36px;
      min-height: 44px;
      height: 44px;
      align-self: center;
      flex: 0 0 36px;
      border-radius: var(--radius-sm);
    }

    .ct-size-step {
      width: 34px;
      min-width: 34px;
      min-height: 21px;
      height: 21px;
      max-height: 21px;
      padding: 0;
      line-height: 1;
      color: var(--text-primary);
    }

    .ct-size-step .ct-icon {
      width: 15px;
      height: 15px;
    }

    html[data-theme="light"] .ct-toolbar-menu {
      --toolbar-menu-bg: rgba(255, 255, 255, 0.98);
      --toolbar-menu-text: #1d1d1f;
      --toolbar-menu-hover: var(--ct-toolbar-menu-hover-bg);
      --toolbar-menu-selected: var(--ct-toolbar-menu-selected-bg);
    }

    html[data-theme="dark"] .ct-toolbar-menu {
      --toolbar-menu-bg: rgba(22, 29, 40, 0.98);
      --toolbar-menu-text: rgba(255, 255, 255, 0.94);
      --toolbar-menu-hover: rgba(255, 255, 255, 0.08);
      --toolbar-menu-selected: var(--ct-toolbar-menu-selected-bg);
    }

    .ct-toolbar-menu {
      background: var(--toolbar-menu-bg, var(--surface-2));
      color: var(--toolbar-menu-text, var(--text-primary));
    }

    .ct-toolbar-option {
      color: var(--toolbar-menu-text, var(--text-primary));
      font-weight: 400 !important;
    }

    .ct-toolbar-option:hover {
      background: var(--toolbar-menu-hover, var(--surface-3));
    }

    .ct-toolbar-option[aria-selected="true"] {
      background: var(--toolbar-menu-selected, var(--selected-bg));
      color: var(--toolbar-menu-text, var(--text-primary));
    }

    .ct-review-tab {
      top: 20px;
      width: 56px;
      height: 68px;
      min-height: 68px;
      border-radius: var(--radius-md) 0 0 var(--radius-md);
      background: var(--ct-primary-fill-compact);
      border-color: rgba(255, 255, 255, 0.16);
      color: #ffffff;
      box-shadow:
        0 16px 34px var(--ct-primary-shadow-hover),
        inset 0 1px 0 rgba(255, 255, 255, 0.22);
    }

    .ct-review-tab .ct-icon {
      width: 24px;
      height: 24px;
      stroke-width: 1.9;
    }

    .ct-review-shell {
      border-radius: var(--radius-xl) 0 0 var(--radius-xl);
      overflow: hidden;
    }

    .ct-review-title,
    .ct-review-title-input {
      color: var(--text-primary);
      font-weight: 680;
    }

    .ct-review-body {
      background: var(--ct-bg-soft);
    }

    .ct-editor,
    .ct-review-body .ct-editor {
      border-radius: var(--radius-lg);
      background: #ffffff;
      color: #111827;
      border-color: rgba(0, 0, 0, 0.10);
      box-shadow:
        0 12px 30px rgba(0, 0, 0, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.8);
    }

    .ct-download-menu,
    .ct-inline-download-menu,
    .ct-toolbar-menu {
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-lg);
      background: var(--surface-2);
      color: var(--text-primary);
      box-shadow: var(--shadow-soft);
      backdrop-filter: blur(18px) saturate(150%);
      -webkit-backdrop-filter: blur(18px) saturate(150%);
    }

    .ct-app[data-theme="dark"] .ct-toolbar-select,
    .ct-app[data-theme="dark"] .ct-toolbar-input {
      background: rgba(255, 255, 255, 0.055);
      color: rgba(255, 255, 255, 0.94);
      border-color: rgba(255, 255, 255, 0.14);
    }

    .ct-app[data-theme="dark"] .ct-toolbar-combo-toggle,
    .ct-app[data-theme="dark"] .ct-size-menu-toggle,
    .ct-app[data-theme="dark"] .ct-size-step {
      color: rgba(255, 255, 255, 0.94);
    }

    html[data-theme="light"] .ct-toolbar-menu {
      background: rgba(255, 255, 255, 0.98);
      color: #1d1d1f;
    }

    html[data-theme="dark"] .ct-toolbar-menu {
      background: rgba(22, 29, 40, 0.98);
      color: rgba(255, 255, 255, 0.94);
      border-color: rgba(255, 255, 255, 0.14);
    }

    html[data-theme="light"] .ct-toolbar-option {
      color: #1d1d1f;
    }

    html[data-theme="dark"] .ct-toolbar-option {
      color: rgba(255, 255, 255, 0.94);
    }

    html[data-theme="dark"] .ct-toolbar-option:hover,
    html[data-theme="dark"] .ct-toolbar-option[aria-selected="true"] {
      background: var(--ct-toolbar-menu-selected-bg);
    }

    .ct-source-expanded-backdrop {
      background: rgba(5, 7, 11, 0.46);
      backdrop-filter: blur(18px);
      -webkit-backdrop-filter: blur(18px);
    }

    .ct-source-reader,
    .ct-source-frame-wrap,
    .ct-assisted-cut-panel {
      border-radius: var(--radius-lg);
    }

    /* Queue, picker, and responsive fit polish. */
    .ct-canvas-wrap {
      padding-inline: clamp(32px, 5vw, 92px);
    }

    .ct-paper,
    .ct-assisted-paper {
      width: min(100%, 1880px);
      margin-inline: auto;
    }

    .ct-tool-workspace,
    .ct-assisted-shell {
      grid-template-columns: minmax(0, 1.03fr) minmax(0, 0.97fr);
      gap: clamp(22px, 2vw, 34px);
    }

    .ct-deep-workspace .ct-tool-box,
    .ct-quick-workspace .ct-tool-box {
      min-height: clamp(500px, calc(100vh - 280px), 720px);
    }

    .ct-assisted-search-box {
      min-height: clamp(500px, calc(100vh - 280px), 720px);
      height: clamp(500px, calc(100vh - 280px), 720px);
      max-height: 720px;
    }

    html .ct-tool-box.ct-assisted-search-box,
    .ct-app .ct-tool-box.ct-assisted-search-box {
      background: var(--ct-assisted-box-surface);
    }

    html .ct-assisted-search-box .ct-assisted-results-shell,
    html .ct-assisted-search-box .ct-assisted-results,
    .ct-app .ct-assisted-search-box .ct-assisted-results-shell,
    .ct-app .ct-assisted-search-box .ct-assisted-results {
      background: var(--ct-assisted-box-surface);
    }

    html .ct-assisted-search-box .ct-assisted-results .ct-result-card,
    .ct-app .ct-assisted-search-box .ct-assisted-results .ct-result-card {
      background: var(--ct-assisted-box-surface);
      box-shadow: none;
      backdrop-filter: none;
      -webkit-backdrop-filter: none;
    }

    .ct-project-select-wrap {
      position: relative;
      display: block;
      color: var(--text-secondary);
    }

    .ct-project-select-wrap::after {
      content: "";
      position: absolute;
      right: 18px;
      top: 50%;
      width: 11px;
      height: 11px;
      border-right: 2px solid currentColor;
      border-bottom: 2px solid currentColor;
      transform: translateY(-66%) rotate(45deg);
      pointer-events: none;
    }

    .ct-project-select-wrap .ct-project-select {
      width: 100%;
      padding-right: 50px;
      border-radius: var(--radius-md);
      appearance: none;
      -webkit-appearance: none;
      background: var(--field-bg);
    }

    .ct-project-select-wrap .ct-project-select:disabled {
      color: var(--text-tertiary);
    }

    .ct-tool-queue-slot {
      flex: 0 0 auto;
      min-height: 0;
      block-size: clamp(184px, 24vh, 292px);
      max-height: clamp(184px, 24vh, 292px);
    }

    .ct-tool-queue-slot .ct-queue-panel {
      block-size: 100%;
      max-height: 100%;
      align-content: start;
      grid-auto-rows: max-content;
      overflow-x: hidden;
      overflow-y: auto;
      overscroll-behavior: contain;
      scrollbar-gutter: stable;
      border-radius: var(--radius-lg);
      border-style: solid;
      transition: box-shadow 160ms ease;
    }

    .ct-tool-queue-slot .ct-assisted-empty-queue {
      block-size: 100%;
      min-height: 0;
      max-height: 100%;
    }

    .ct-tool-queue-slot .ct-assisted-empty-queue,
    .ct-assisted-queue-slot .ct-assisted-empty-queue,
    .ct-assisted-queue-slot .ct-queue-panel {
      border-style: solid;
      border-color: var(--border-soft);
    }

    .ct-queue-row {
      border-radius: var(--radius-lg);
      background: var(--ct-panel-bg);
      isolation: isolate;
    }

    .ct-queue-panel.ct-queue-can-scroll {
      box-shadow:
        inset 0 -18px 22px -24px rgba(15, 23, 42, 0.46),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
    }

    .ct-queue-panel.ct-queue-is-scrolled {
      box-shadow:
        inset 0 18px 22px -24px rgba(15, 23, 42, 0.56),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
    }

    .ct-queue-panel.ct-queue-can-scroll.ct-queue-is-scrolled {
      box-shadow:
        inset 0 18px 22px -24px rgba(15, 23, 42, 0.56),
        inset 0 -18px 22px -24px rgba(15, 23, 42, 0.46),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
    }

    .ct-queue-row:focus-within,
    .ct-queue-row:has(.ct-inline-download-menu[aria-hidden="false"]) {
      z-index: 20;
      overflow: visible;
    }

    .ct-queue-card {
      border-radius: inherit;
      background: var(--surface-2);
      transition:
        opacity 0.22s ease,
        filter 0.22s ease;
    }

    .ct-queue-item {
      grid-template-columns: minmax(0, 1fr) minmax(250px, 0.76fr);
      align-items: center;
      gap: clamp(10px, 1.4vw, 18px);
      min-height: 78px;
      padding: 12px 14px;
    }

    .ct-queue-item.ct-queue-pending {
      grid-template-columns: minmax(0, max-content) minmax(max-content, 1fr);
      gap: 10px;
      padding-right: 10px;
    }

    .ct-queue-item.ct-queue-confirming {
      grid-template-columns: minmax(0, 1fr) minmax(224px, 0.74fr);
      padding-right: 10px;
    }

    .ct-queue-item.ct-queue-complete {
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
    }

    .ct-queue-item.ct-queue-failed {
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
    }

    .ct-queue-copy {
      min-width: 0;
    }

    .ct-queue-error-note {
      max-width: 190px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      color: var(--ct-danger);
      font-size: 12px;
      font-weight: 700;
    }

    .ct-queue-complete-actions,
    .ct-queue-failed-actions {
      flex-wrap: nowrap;
      gap: 4px;
    }

    .ct-queue-action-buttons {
      min-width: 0;
      display: inline-flex;
      align-items: center;
      gap: 4px;
      flex-wrap: nowrap;
    }

    .ct-queue-pending-actions {
      min-width: 0;
      display: grid;
      grid-template-columns: minmax(max-content, 1fr) 28px;
      gap: 10px;
      align-items: center;
      justify-self: stretch;
    }

    .ct-queue-pending-actions.ct-queue-cancel-active {
      grid-template-columns: minmax(0, 1fr);
      width: min(100%, 282px);
      justify-items: end;
      justify-self: end;
    }

    .ct-queue-cancel-button {
      position: relative;
      width: 28px !important;
      height: 28px !important;
      min-width: 28px !important;
      min-height: 28px !important;
      padding: 0 !important;
      display: inline-grid;
      place-items: center;
      border-radius: var(--radius-sm);
      border-color: transparent !important;
      background: transparent !important;
      color: var(--text-secondary);
      box-shadow: none !important;
      transform: none;
    }

    .ct-queue-cancel-button:hover,
    .ct-queue-cancel-button:focus-visible {
      border-color: var(--danger-border-soft) !important;
      background: var(--danger-surface-soft) !important;
      color: var(--ct-danger);
      transform: none;
      outline: none;
    }

    .ct-queue-cancel-button .ct-icon {
      width: 16px;
      height: 16px;
      stroke-width: 2.15;
    }

    .ct-queue-cancel-button::after {
      content: "cancel";
      position: absolute;
      right: 50%;
      bottom: calc(100% + 6px);
      z-index: 30;
      padding: 4px 7px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-sm);
      background: var(--surface-2);
      color: var(--text-secondary);
      font-size: 11px;
      line-height: 1;
      white-space: nowrap;
      box-shadow: var(--shadow-soft);
      opacity: 0;
      pointer-events: none;
      transform: translateX(50%) translateY(2px);
      transition:
        opacity 0.16s ease,
        transform 0.18s cubic-bezier(0.22, 1, 0.36, 1);
    }

    .ct-queue-cancel-button:hover::after,
    .ct-queue-cancel-button:focus-visible::after {
      opacity: 1;
      transform: translateX(50%) translateY(0);
    }

    .ct-queue-row.ct-queue-cancellable:hover,
    .ct-queue-row.ct-queue-cancellable:focus-within,
    .ct-queue-row.ct-queue-cancel-confirm-open {
      z-index: 20;
      overflow: visible;
    }

    .ct-queue-cancel-confirm.ct-inline-delete-confirm {
      position: static;
      right: auto;
      bottom: auto;
      width: 100%;
      max-width: 100%;
      box-sizing: border-box;
      grid-template-columns: minmax(0, 1fr) auto;
      justify-self: stretch;
      gap: 5px;
      padding: 7px 5px 7px 10px;
      overflow: hidden;
    }

    .ct-queue-cancel-confirm .ct-inline-delete-copy span {
      max-width: 100%;
    }

    .ct-queue-cancel-confirm .ct-inline-delete-button {
      min-width: 58px;
      padding-inline: 11px;
    }

    .ct-queue-cancel-confirm .ct-inline-cancel-button {
      width: 26px !important;
      height: 30px !important;
      min-width: 26px !important;
      min-height: 30px !important;
    }

    .ct-queue-actions .ct-inline-download-wrap {
      display: inline-flex;
    }

    .ct-queue-actions .ct-inline-download-menu {
      right: 0;
      top: calc(100% + 8px);
      z-index: 40;
    }

    .ct-queue-inline-download {
      width: 118px;
      min-width: 118px;
      height: 36px;
      flex: 0 0 118px;
      display: inline-grid;
      align-items: stretch;
    }

    .ct-queue-inline-download > [data-inline-download-source] {
      width: 100%;
      min-width: 0;
      min-height: 36px;
      height: 36px;
      padding-inline: 10px;
      transition:
        opacity 0.18s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.22s cubic-bezier(0.22, 1, 0.36, 1);
    }

    .ct-queue-complete-actions .ct-queue-action-buttons > [data-review-source] {
      min-height: 34px;
      height: 34px;
      padding-block: 0;
      line-height: 1;
    }

    .ct-queue-inline-download.ct-inline-download-open > [data-inline-download-source] {
      opacity: 0;
      pointer-events: none;
      transform: scale(0.985);
    }

    .ct-queue-actions .ct-queue-inline-download .ct-inline-download-menu {
      inset: 0;
      width: 100%;
      min-width: 0;
      height: 100%;
      padding: 0;
      border: 0;
      background: transparent;
      box-shadow: none;
      backdrop-filter: none;
      -webkit-backdrop-filter: none;
    }

    .ct-queue-actions .ct-queue-inline-download .ct-inline-download-menu[aria-hidden="false"] {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 4px;
    }

    .ct-queue-inline-download .ct-inline-download-option {
      width: 100%;
      min-height: 36px;
      height: 36px;
      padding: 0 7px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      font-size: 13px;
      font-weight: 680;
      border-radius: var(--radius-sm);
    }

    .ct-queue-clear-button {
      width: 26px;
      height: 34px;
      min-width: 26px;
      min-height: 34px;
      border-radius: 50%;
      color: var(--text-secondary);
      border-color: transparent !important;
      background: transparent !important;
      box-shadow: none !important;
      transition:
        transform 0.22s cubic-bezier(0.22, 1, 0.36, 1),
        color 0.18s ease,
        opacity 0.18s ease;
    }

    .ct-queue-clear-button:hover,
    .ct-queue-clear-button:focus-visible {
      color: var(--text-primary);
      background: transparent !important;
      transform: scale(1.08);
    }

    .ct-queue-clear-button .ct-icon {
      width: 15px;
      height: 15px;
      stroke-width: 2.25;
    }

    .ct-queue-complete-actions .ct-queue-clear-button,
    .ct-queue-failed-actions .ct-queue-clear-button {
      margin-left: -1px;
      margin-right: -6px;
    }

    .ct-queue-progress {
      min-width: 0;
      width: 100%;
      display: grid;
      gap: 6px;
      align-self: center;
      justify-self: stretch;
      padding: 8px 10px;
      border: 1px solid var(--border-soft);
      border-radius: var(--radius-md);
      background: color-mix(in srgb, var(--surface-3) 84%, transparent);
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.07),
        0 1px 1px rgba(0, 0, 0, 0.06);
    }

    .ct-queue-progress .ct-progress-label {
      margin: 0;
      color: var(--text-secondary);
      font-size: 12.5px;
      line-height: 1.25;
    }

    .ct-progress-card .ct-progress-label,
    .ct-queue-progress .ct-progress-label {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 10px;
      min-width: 0;
      white-space: normal;
      overflow: visible;
      text-overflow: clip;
    }

    .ct-progress-text {
      min-width: 0;
      overflow-wrap: anywhere;
    }

    .ct-progress-timer {
      flex: 0 0 auto;
      white-space: nowrap;
      font-variant-numeric: tabular-nums;
      letter-spacing: 0;
      color: inherit;
      opacity: 0.82;
    }

    .ct-queue-progress .ct-progress-track {
      width: 100%;
      height: 5px;
      background: color-mix(in srgb, var(--text-primary) 14%, transparent);
    }

    .ct-queue-item.ct-queue-failed .ct-status {
      grid-column: 1 / -1;
    }

    @supports (corner-shape: squircle) {
      .ct-project-select-wrap .ct-project-select,
      .ct-queue-row,
      .ct-queue-card,
      .ct-queue-progress {
        corner-shape: squircle;
      }
    }

    @media (max-width: 640px) {
      .ct-queue-item,
      .ct-queue-item.ct-queue-pending {
        grid-template-columns: minmax(0, 1fr);
        gap: 10px;
        padding: 12px;
      }

      .ct-queue-progress .ct-progress-label {
        white-space: normal;
        gap: 8px;
      }

      .ct-queue-item.ct-queue-complete,
      .ct-queue-item.ct-queue-failed {
        grid-template-columns: minmax(0, 1fr);
      }

      .ct-queue-complete-actions,
      .ct-queue-failed-actions {
        justify-content: flex-start;
      }
    }

    button,
    a,
    .ct-tool-box,
    .ct-feature-card,
    .ct-sidebar-item,
    .ct-mode-button,
    .ct-project-button,
    .ct-tree-button,
    .ct-file-button,
    .ct-pill,
    .ct-quality-pill,
    .ct-swatch-button,
    .ct-action-button {
      transition:
        background var(--duration-normal) var(--ease-out),
        border-color var(--duration-normal) var(--ease-out),
        color var(--duration-normal) var(--ease-out),
        box-shadow var(--duration-normal) var(--ease-out),
        transform var(--duration-fast) var(--ease-out),
        filter var(--duration-fast) var(--ease-out);
    }

    html[data-theme="dark"] button.ct-toolbar-button[aria-pressed="true"],
    .ct-app[data-theme="dark"] button.ct-toolbar-button[aria-pressed="true"] {
      background: #dbeafe !important;
      border-color: #93c5fd !important;
      color: #071323 !important;
      box-shadow: 0 0 0 1px rgba(147, 197, 253, 0.34) !important;
      transition: none !important;
    }

    :focus-visible {
      outline: none;
      box-shadow: 0 0 0 4px var(--ct-focus-ring);
    }

    button:focus-visible,
    a:focus-visible,
    .ct-icon-button:focus-visible,
    .ct-action-button:focus-visible,
    .ct-pill:focus-visible,
    .ct-quality-pill:focus-visible,
    .ct-swatch-button:focus-visible {
      outline: none;
      box-shadow: 0 0 0 4px var(--ct-focus-ring);
    }

    .ct-editor .ct-section-label strong {
      border-radius: var(--ct-corner-highlight);
      box-decoration-break: clone;
      -webkit-box-decoration-break: clone;
      padding: 0 0.08em;
    }

    .ct-editor :is(.ct-card-highlight, [data-background-highlighted="true"]) {
      border-radius: 0 !important;
      corner-shape: square !important;
    }

    @media (prefers-reduced-motion: reduce) {
      * {
        transition: none !important;
        animation: none !important;
      }
    }

    @media (max-width: 1100px) {
      .ct-tool-workspace,
      .ct-assisted-shell {
        grid-template-columns: 1fr;
      }

      .ct-canvas-wrap {
        padding: 40px 28px;
      }

      .ct-deep-workspace .ct-tool-box,
      .ct-quick-workspace .ct-tool-box,
      .ct-assisted-search-box {
        min-height: auto;
        height: auto;
      }
    }

    @media (max-width: 860px) {
      html,
      body {
        overflow: auto;
      }

      .ct-app,
      .ct-app.ct-sidebar-collapsed {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        height: auto;
        min-height: 100vh;
        overflow: visible;
      }

      .ct-topbar,
      .ct-app.ct-sidebar-collapsed .ct-topbar {
        grid-column: 1;
        grid-row: 1;
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 14px 16px;
      }

      .ct-topbar-brand-zone {
        grid-template-columns: 42px minmax(0, 1fr);
        border-right: 0;
        border-bottom: 1px solid var(--border-soft);
        padding-bottom: 12px;
      }

      .ct-topbar-nav-zone,
      .ct-topbar-right {
        padding: 0;
        min-height: 40px;
      }

      .ct-brand {
        margin-left: 0;
        font-size: 29px;
      }

      .ct-nav {
        gap: 20px;
        overflow-x: auto;
      }

      .ct-nav-button {
        min-height: 40px;
        white-space: nowrap;
      }

      .ct-config-button {
        min-height: 42px;
      }

      .ct-sidebar {
        grid-column: 1;
        grid-row: 2;
        overflow: visible;
      }

      .ct-app.ct-sidebar-collapsed .ct-sidebar {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-rows: auto;
        align-items: center;
      }

      .ct-app.ct-sidebar-collapsed .ct-collapsed-mode-list {
        grid-column: 1;
        grid-row: 1;
        grid-auto-flow: column;
        grid-template-columns: repeat(3, 48px);
        justify-content: center;
        gap: 12px;
        padding: 12px 16px 14px;
        border-bottom: 0;
      }

      .ct-app.ct-sidebar-collapsed .ct-collapsed-auth-shell {
        grid-column: 2;
        grid-row: 1;
        padding: 10px 16px 10px 0;
      }

      .ct-app.ct-sidebar-collapsed .ct-collapsed-auth-stack {
        width: 42px;
        gap: 7px;
      }

      .ct-app.ct-sidebar-collapsed .ct-collapsed-auth-avatar {
        width: 38px;
        height: 38px;
      }

      .ct-app.ct-sidebar-collapsed .ct-collapsed-auth-action {
        width: 36px;
        height: 36px;
        min-width: 36px;
        min-height: 36px;
      }

      .ct-sidebar-main,
      .ct-sidebar-footer {
        padding-inline: 18px;
      }

      .ct-sidebar-main {
        overflow: visible;
      }

      .ct-shell {
        grid-column: 1;
        grid-row: 3;
        height: auto;
        min-height: auto;
      }

      .ct-workspace,
      .ct-canvas-wrap,
      .ct-canvas {
        height: auto;
        min-height: 0;
        overflow: visible;
      }

      .ct-canvas-wrap {
        padding: 32px 18px;
      }

      .ct-paper-inner {
        padding-inline: 0;
      }

      .ct-tool-header h1,
      .ct-page-title {
        font-size: 36px;
      }

      .ct-tool-header p,
      .ct-page-copy {
        font-size: 16px;
      }

      .ct-request-row,
      .ct-tool-options-box .ct-request-row,
      .ct-tool-options-box .ct-option-grid,
      .ct-deep-option-grid {
        grid-template-columns: 1fr;
        gap: 18px;
      }

      .ct-tool-box {
        padding: 22px;
      }

      .ct-tool-queue-slot,
      .ct-tool-queue-slot .ct-assisted-empty-queue,
      .ct-tool-queue-slot .ct-queue-panel,
      .ct-assisted-results-empty {
        min-height: 240px;
      }

      .ct-review-tab {
        top: 12px;
        width: 48px;
        height: 58px;
        min-height: 58px;
      }
    }

    /* Sitewide minimal polish layer. */
    .ct-app :where(
      p,
      div,
      span,
      label,
      button,
      a,
      h2,
      h3,
      h4,
      li,
      small,
      input,
      select,
      textarea
    ):not(.ct-editor, .ct-editor *) {
      font-weight: 400 !important;
      letter-spacing: 0 !important;
    }

    .ct-modal :where(
      p,
      div,
      span,
      label,
      button,
      h2,
      h3,
      h4,
      li,
      small,
      input,
      select,
      textarea
    ) {
      font-weight: 400 !important;
      letter-spacing: 0 !important;
    }

    .ct-app :where(
      button,
      .ct-label,
      .ct-tool-box-title,
      .ct-settings-section h3,
      .ct-modal-header h2,
      .ct-feature-card h3,
      .ct-result-card h3,
      .ct-queue-title,
      .ct-recent-file-title,
      .ct-checkbox-title,
      .ct-inline-delete-title,
      .ct-auth-email,
      .ct-toolbar-bold-glyph
    ):not(.ct-editor, .ct-editor *) {
      font-weight: 500 !important;
    }

    .ct-modal :where(
      button,
      .ct-label,
      .ct-settings-section h3,
      .ct-modal-header h2,
      .ct-checkbox-title,
      .ct-inline-delete-title
    ) {
      font-weight: 500 !important;
    }

    .ct-tool-header h1,
    .ct-page-title {
      font-size: clamp(34px, 3vw, 46px);
      line-height: 1.08;
      font-weight: 620 !important;
      letter-spacing: 0;
    }

    .ct-tool-header p,
    .ct-page-copy {
      font-size: 16px;
      line-height: 1.45;
      font-weight: 400 !important;
    }

    .ct-brand {
      font-size: 26px;
    }

    .ct-topbar-brand-zone > .ct-menu-button {
      grid-column: 1;
      grid-row: 1;
      justify-self: center;
      align-self: center;
      z-index: 1;
    }

    .ct-topbar-brand-zone > .ct-brand {
      grid-column: 1 / -1;
      grid-row: 1;
      justify-self: center;
      align-self: center;
      margin-left: 0;
      text-align: center;
    }

    @media (max-width: 860px) {
      .ct-topbar-brand-zone {
        display: grid;
        grid-template-columns: 42px minmax(0, 1fr);
      }

      .ct-topbar-brand-zone > .ct-brand {
        grid-column: 1 / -1;
      }
    }

    .ct-nav-button {
      font-size: 14px;
      font-weight: 500 !important;
    }

    .ct-config-button,
    .ct-small-button,
    .ct-sidebar .ct-small-button,
    .ct-auth-tab {
      min-height: 40px;
      padding-inline: 16px;
      font-size: 14px;
      border-radius: var(--radius-sm);
    }

    .ct-sidebar .ct-project-tools .ct-small-button {
      min-height: 38px;
      font-size: 13px;
    }

    .ct-mode-button {
      min-height: 42px;
      padding-inline: 12px;
      font-size: 14px;
    }

    .ct-project-button,
    .ct-tree-button {
      min-height: 34px;
      font-size: 14px;
    }

    .ct-file-button {
      min-height: 30px;
      font-size: 13px;
    }

    .ct-tool-options-box .ct-side-switch .ct-pill,
    .ct-tool-options-box .ct-quality-row .ct-quality-pill,
    .ct-tool-options-box .ct-deep-file-row .ct-pill,
    .ct-theme-pill,
    .ct-size-step {
      min-height: 42px;
      font-size: 14px;
    }

    .ct-pill,
    .ct-quality-pill,
    .ct-swatch-button,
    .ct-theme-pill {
      font-size: 14px;
    }

    .ct-tool-options-box .ct-swatch-button,
    .ct-swatch-button {
      min-height: 44px;
    }

    .ct-swatch-chip {
      width: 24px;
      height: 24px;
      flex-basis: 24px;
    }

    .ct-mode-button[aria-pressed="true"],
    .ct-pill[aria-pressed="true"],
    .ct-quality-pill[aria-pressed="true"],
    .ct-theme-pill[aria-pressed="true"],
    .ct-swatch-button[aria-pressed="true"],
    .ct-tool-options-box .ct-side-switch .ct-pill[aria-pressed="true"],
    .ct-tool-options-box .ct-quality-row .ct-quality-pill[aria-pressed="true"],
    .ct-tool-options-box .ct-deep-file-row .ct-pill[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-swatch-button[aria-pressed="true"],
    .ct-app[data-theme="dark"] .ct-theme-pill[aria-pressed="true"] {
      background: var(--selected-fill) !important;
      font-weight: 500 !important;
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.10);
    }

    .ct-submit:not(.ct-secondary):not(.ct-quiet-action):not(.ct-inline-delete-button):not(.ct-manage-save-button):not(.ct-config-save-button):not(.ct-create-project-submit) {
      min-height: 48px;
      height: 48px;
      padding-inline: 18px;
      font-size: 15px;
      font-weight: 500 !important;
      background: var(--ct-primary-fill);
    }

    .ct-submit.ct-ultra-submit:not(.ct-secondary):not(.ct-quiet-action):not(.ct-inline-delete-button):not(.ct-manage-save-button):not(.ct-config-save-button):not(.ct-create-project-submit) {
      background: var(--ct-ultra-purple) !important;
    }

    .ct-submit.ct-ultra-submit:not(.ct-secondary):not(.ct-quiet-action):not(.ct-inline-delete-button):not(.ct-manage-save-button):not(.ct-config-save-button):not(.ct-create-project-submit):hover {
      background: var(--ct-ultra-purple-hover) !important;
    }

    .ct-submit.ct-secondary,
    .ct-submit.ct-quiet-action,
    .ct-action-button,
    .ct-action-button.ct-secondary,
    .ct-toolbar-button,
    .ct-toolbar-button.ct-download,
    .ct-source-icon-button,
    .ct-download-option,
    .ct-inline-download-option {
      min-height: 38px;
      padding-inline: 12px;
      font-size: 13px;
      font-weight: 500 !important;
    }

    .ct-toolbar-button,
    .ct-toolbar-button.ct-download {
      min-width: 40px;
      min-height: 40px;
      height: 40px;
    }

    .ct-toolbar-select,
    .ct-toolbar-input,
    .ct-toolbar-combo,
    .ct-size-control,
    .ct-size-stepper {
      min-height: 40px;
      height: 40px;
    }

    .ct-review-toolbar-row .ct-toolbar-select {
      border-radius: var(--radius-sm);
      background: var(--surface-3);
    }

    .ct-size-step {
      min-height: 19px;
      height: 19px;
      max-height: 19px;
    }

    .ct-icon-button,
    .ct-menu-button,
    .ct-source-icon-button,
    .ct-danger-icon-button,
    .ct-inline-cancel-button {
      width: 34px;
      height: 34px;
      min-width: 34px;
      min-height: 34px;
    }

    .ct-tool-left-submit-row {
      justify-content: center;
      margin-top: 12px;
    }

    .ct-tool-left-submit-row .ct-submit {
      width: clamp(208px, 52%, 260px);
      max-width: 100%;
    }

    .ct-submit.ct-cost-button:not(.ct-secondary):not(.ct-quiet-action):not(.ct-inline-delete-button):not(.ct-manage-save-button):not(.ct-config-save-button):not(.ct-create-project-submit),
    .ct-tool-left-submit-row .ct-submit.ct-cost-button {
      height: auto;
      min-height: 52px;
      padding-block: 0;
      gap: 10px;
    }

    .ct-action-button.ct-cost-button {
      height: auto;
      min-height: 42px;
      min-width: 94px;
      padding-block: 0;
      gap: 8px;
    }

    .ct-result-primary-action .ct-action-button.ct-cost-button {
      min-width: 96px;
    }

    .ct-cost-button .ct-sp-cost {
      padding: 4px 9px;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.16);
    }

    .ct-action-button.ct-cost-button .ct-sp-cost {
      background: color-mix(in srgb, var(--text-primary) 7%, transparent);
    }

    .ct-submit.ct-deep-surprise-button {
      min-height: 30px;
      height: 30px;
      padding: 0 10px;
      border: 1px solid color-mix(in srgb, var(--blue-strong) 22%, var(--border-soft));
      border-radius: var(--radius-sm);
      background: color-mix(in srgb, var(--blue-strong) 8%, var(--surface-2));
      color: var(--blue-strong);
      box-shadow: none;
      font-size: 13px;
      transform: none;
    }

    .ct-submit.ct-deep-surprise-button:hover,
    .ct-submit.ct-deep-surprise-button:focus-visible {
      border-color: color-mix(in srgb, var(--blue-strong) 32%, var(--border-strong));
      background: color-mix(in srgb, var(--blue-strong) 12%, var(--surface-2));
      color: var(--blue-strong);
      box-shadow: none;
      transform: none;
      outline: none;
    }

    .ct-source-icon-button {
      display: inline-grid;
      place-items: center;
      flex: 0 0 34px;
      padding: 0 !important;
      line-height: 1;
    }

    .ct-source-icon-button .ct-icon {
      width: 18px;
      height: 18px;
      margin: 0;
    }

    .ct-source-icon-button:hover,
    .ct-source-icon-button:focus-visible {
      transform: none;
    }

    .ct-app.ct-sidebar-collapsed .ct-collapsed-mode-list {
      justify-items: center;
    }

    .ct-app.ct-sidebar-collapsed .ct-collapsed-auth-shell {
      justify-items: center;
    }

    .ct-app.ct-sidebar-collapsed .ct-collapsed-mode-button.ct-mode-button {
      display: grid !important;
      place-items: center;
      justify-content: center;
      align-items: center;
      gap: 0;
      width: 48px;
      min-width: 48px;
      max-width: 48px;
      min-height: 48px;
      height: 48px;
      margin-inline: auto;
      padding: 0 !important;
      text-align: center;
    }

    .ct-app.ct-sidebar-collapsed .ct-collapsed-mode-button.ct-mode-button .ct-icon {
      justify-self: center;
      align-self: center;
      flex: 0 0 auto;
      margin: 0;
    }

    .ct-app.ct-sidebar-collapsed .ct-collapsed-auth-avatar,
    .ct-app.ct-sidebar-collapsed .ct-collapsed-auth-action {
      justify-self: center;
      align-self: center;
      margin-inline: auto;
    }

    #ct-config-body [data-config-theme-group].ct-theme-row,
    #ct-config-body [data-config-quality-group].ct-quality-row,
    #ct-config-body .ct-checkbox-row {
      background: transparent !important;
      border: 0 !important;
      box-shadow: none !important;
      overflow: visible;
    }

    .ct-modal-header :is(#ct-config-close, #ct-manage-close) {
      border-color: transparent !important;
      background: transparent !important;
      box-shadow: none !important;
      color: var(--text-secondary);
    }

    .ct-modal-header :is(#ct-config-close, #ct-manage-close):hover,
    .ct-modal-header :is(#ct-config-close, #ct-manage-close):focus-visible {
      border-color: transparent !important;
      background: transparent !important;
      box-shadow: none !important;
      color: var(--text-primary);
      outline: none;
    }

    .ct-submit.ct-inline-delete-button {
      min-width: 60px;
      min-height: 30px;
      height: 30px;
      padding-inline: 9px;
      font-size: 12.5px;
      font-weight: 500 !important;
    }

    .ct-submit.ct-manage-save-button {
      min-height: 34px;
      height: 34px;
      padding-inline: 16px;
      font-size: 14px;
    }

    .ct-config-save-button,
    .ct-create-project-submit {
      min-height: 34px;
      height: 34px;
      padding-inline: 16px;
      font-size: 14px;
    }

    .ct-deep-upload-inside .ct-deep-surprise-button {
      white-space: nowrap;
    }

    html[data-theme="dark"] .ct-deep-upload-inside .ct-upload-trigger,
    html[data-theme="dark"] .ct-deep-upload-inside .ct-upload-trigger:hover,
    html[data-theme="dark"] .ct-deep-upload-inside .ct-upload-trigger:focus-visible,
    html[data-theme="dark"] .ct-deep-upload-inside .ct-deep-surprise-button,
    html[data-theme="dark"] .ct-deep-upload-inside .ct-deep-surprise-button:hover,
    html[data-theme="dark"] .ct-deep-upload-inside .ct-deep-surprise-button:focus-visible,
    .ct-app[data-theme="dark"] .ct-deep-upload-inside .ct-upload-trigger,
    .ct-app[data-theme="dark"] .ct-deep-upload-inside .ct-upload-trigger:hover,
    .ct-app[data-theme="dark"] .ct-deep-upload-inside .ct-upload-trigger:focus-visible,
    .ct-app[data-theme="dark"] .ct-deep-upload-inside .ct-deep-surprise-button,
    .ct-app[data-theme="dark"] .ct-deep-upload-inside .ct-deep-surprise-button:hover,
    .ct-app[data-theme="dark"] .ct-deep-upload-inside .ct-deep-surprise-button:focus-visible {
      color: #ffffff;
    }

    @media (min-width: 861px) {
      #ct-auth-modal .ct-modal,
      #ct-config-modal .ct-modal,
      #ct-manage-modal .ct-modal {
        width: min(520px, calc(100vw - 48px));
        max-width: min(520px, calc(100vw - 48px));
      }

      #ct-config-body .ct-config-grid,
      #ct-config-body .ct-font-grid {
        grid-template-columns: minmax(0, 1fr);
      }
    }

    .ct-review-tab {
      top: calc(var(--radius-xl) + 4px);
      width: 48px;
      height: 60px;
      min-height: 60px;
      background: var(--ct-primary-fill-compact);
    }

    .ct-review-header {
      min-height: 56px;
      padding: 8px 14px;
      gap: 10px;
    }

    .ct-review-title-input {
      min-height: 40px;
      height: 40px;
      max-height: 40px;
      padding: 0 12px;
      border-radius: var(--radius-sm);
      font-size: 15px;
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 1px 1px rgba(0, 0, 0, 0.05);
    }

    .ct-inline-delete-confirm {
      right: 18px;
      width: max-content;
      max-width: calc(100% - 36px);
      grid-template-columns: max-content auto;
      gap: 6px;
      padding: 8px 8px 8px 10px;
    }

    .ct-inline-delete-actions {
      gap: 4px;
    }

    .ct-inline-cancel-button {
      width: 30px;
      height: 30px;
      min-width: 30px;
      min-height: 30px;
    }

    .ct-review-delete-confirm.ct-inline-delete-confirm {
      width: min(262px, calc(100vw - 96px));
      padding: 7px 7px 7px 10px;
      gap: 6px;
    }

    .ct-inline-delete-title {
      display: block;
    }

    .ct-queue-inline-download {
      height: 34px;
    }

    .ct-queue-inline-download > [data-inline-download-source],
    .ct-queue-inline-download .ct-inline-download-option {
      min-height: 34px;
      height: 34px;
    }

    @media (max-width: 860px) {
      .ct-tool-header h1,
      .ct-page-title {
        font-size: 32px;
      }

      .ct-review-tab {
        top: calc(var(--radius-xl) + 2px);
        width: 44px;
        height: 54px;
        min-height: 54px;
      }

      .ct-review-header {
        min-height: 54px;
        padding: 7px 10px;
      }

      .ct-review-header-delete-confirm .ct-review-heading {
        padding-right: 180px;
      }

      .ct-review-title-input {
        min-height: 38px;
        height: 38px;
        max-height: 38px;
      }

      .ct-review-delete-confirm.ct-inline-delete-confirm {
        width: min(170px, calc(100vw - 76px));
        padding: 7px 6px 7px 8px;
      }
    }

    .ct-recent-browser {
      width: 100%;
      max-width: none;
      min-width: 0;
      margin: 0;
      display: grid;
      gap: 12px;
      overflow: visible;
    }

    .ct-recent-browser > * {
      min-width: 0;
    }

    .ct-review-body.ct-review-body-recent {
      background: transparent;
      padding: 0 16px 16px;
      overflow-x: hidden;
    }

    .ct-recent-browser-top {
      position: sticky;
      top: 0;
      z-index: 18;
      min-width: 0;
      max-width: none;
      min-height: 42px;
      width: calc(100% + 32px);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      margin-left: -16px;
      margin-right: -16px;
      padding: 12px 16px 8px;
      box-sizing: border-box;
      background: var(--surface-2, var(--ct-panel-bg, #fff));
      border-bottom: 1px solid var(--border-soft, var(--ct-border));
      backdrop-filter: blur(12px) saturate(1.12);
      -webkit-backdrop-filter: blur(12px) saturate(1.12);
      transition: background 160ms ease, box-shadow 160ms ease, backdrop-filter 160ms ease;
      isolation: isolate;
      overflow: visible;
    }

    .ct-review-body-recent.ct-recent-is-scrolled .ct-recent-browser-top {
      background: rgba(255, 255, 255, 0.96);
      box-shadow: 0 10px 26px rgba(0, 0, 0, 0.07);
      backdrop-filter: blur(18px) saturate(1.22);
      -webkit-backdrop-filter: blur(18px) saturate(1.22);
    }

    .ct-app[data-theme="dark"] .ct-review-body-recent.ct-recent-is-scrolled .ct-recent-browser-top {
      background: rgba(17, 25, 39, 0.94);
      box-shadow: 0 12px 30px rgba(0, 0, 0, 0.28);
    }

    .ct-recent-browser-title {
      min-width: 0;
      display: grid;
      gap: 2px;
    }

    .ct-recent-browser-title h2 {
      margin: 0;
      color: var(--text-primary, #25272b);
      font-size: 22px;
      line-height: 1.12;
      font-weight: 500;
      letter-spacing: 0;
    }

    .ct-recent-count {
      margin: 0;
      color: var(--text-secondary, var(--ct-muted));
      font-size: 13px;
      line-height: 1.25;
      font-weight: 400;
    }

    .ct-recent-controls {
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: nowrap;
      justify-content: flex-end;
      min-width: 0;
      max-width: 100%;
    }

    .ct-recent-filter {
      position: relative;
      min-width: 0;
      display: grid;
    }

    .ct-recent-filter-project {
      width: 164px;
    }

    .ct-recent-filter label {
      position: absolute;
      width: 1px;
      height: 1px;
      overflow: hidden;
      clip: rect(0 0 0 0);
      white-space: nowrap;
    }

    .ct-recent-select {
      width: 100%;
      min-height: 34px;
      height: 34px;
      display: inline-flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      border: 1px solid var(--border-soft, var(--ct-border));
      border-radius: 8px;
      background: var(--surface-3, #fff);
      color: var(--text-primary, #25272b);
      padding: 0 10px;
      font: inherit;
      font-size: 12px;
      font-weight: 500;
      cursor: pointer;
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.05),
        0 1px 1px rgba(0, 0, 0, 0.05);
      appearance: none;
      transition: border-color 0.16s ease, background 0.16s ease, box-shadow 0.16s ease;
    }

    .ct-recent-select:hover,
    .ct-recent-select[aria-expanded="true"],
    .ct-recent-select:focus-visible {
      border-color: var(--border-strong, var(--ct-border-strong));
      background: var(--surface-2, #fff);
      outline: none;
    }

    .ct-recent-select:focus-visible {
      box-shadow: 0 0 0 3px var(--ct-focus, rgba(47, 124, 255, 0.24));
    }

    .ct-recent-select-label {
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ct-recent-select-chevron {
      flex: 0 0 auto;
      display: inline-flex;
      color: currentColor;
      opacity: 0.9;
    }

    .ct-recent-select-chevron .ct-icon {
      width: 16px;
      height: 16px;
    }

    .ct-recent-options {
      position: absolute;
      top: calc(100% + 8px);
      right: 0;
      z-index: 28;
      width: max(100%, 170px);
      max-height: 246px;
      display: grid;
      gap: 3px;
      overflow: auto;
      padding: 7px;
      border: 1px solid var(--border-soft, var(--ct-border));
      border-radius: 12px;
      background: #ffffff;
      box-shadow: var(--shadow-popover, 0 18px 34px rgba(15, 23, 42, 0.18));
    }

    .ct-recent-options[aria-hidden="true"] {
      display: none;
    }

    .ct-recent-option {
      width: 100%;
      min-height: 32px;
      display: flex;
      align-items: center;
      border: 0;
      border-radius: 7px;
      background: transparent;
      color: var(--text-primary, #25272b);
      padding: 0 9px;
      font: inherit;
      font-size: 13px;
      font-weight: 400;
      text-align: left;
      cursor: pointer;
    }

    .ct-recent-option:hover,
    .ct-recent-option[aria-selected="true"] {
      background: color-mix(in srgb, var(--surface-3, #f4f4f2) 88%, var(--selected-fill, #2563eb));
    }

    .ct-recent-filter:not(.ct-recent-filter-project) {
      width: 122px;
    }

    .ct-recent-filter-sort {
      width: 146px;
    }

    .ct-recent-grid {
      width: 100%;
      min-width: 0;
      max-width: 100%;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
    }

    .ct-recent-file {
      position: relative;
      width: 100%;
      max-width: 100%;
      min-width: 0;
      min-height: 264px;
      display: grid;
      grid-template-rows: 148px auto;
      gap: 10px;
      padding: 10px;
      border: 1px solid var(--border-soft, var(--ct-border));
      border-radius: 8px;
      background: var(--surface-2, #fff);
      color: var(--text-primary, #25272b);
      cursor: pointer;
      text-align: left;
      transition: border-color 0.16s ease, background 0.16s ease, transform 0.16s ease;
    }

    .ct-recent-file:hover,
    .ct-recent-file:focus-visible {
      border-color: var(--border-strong, #c8c5bd);
      background: var(--surface-3, #fff);
      transform: translateY(-1px);
      outline: none;
    }

    .ct-recent-file-pending,
    .ct-recent-file-pending:hover,
    .ct-recent-file-pending:focus-visible {
      cursor: default;
      transform: none;
    }

    .ct-recent-preview {
      min-width: 0;
      max-width: 100%;
      overflow: hidden;
      display: grid;
      align-content: start;
      gap: 6px;
      padding: 18px 20px;
      border: 1px solid color-mix(in srgb, var(--border-soft, #dedbd3) 86%, #000);
      border-radius: 6px;
      background: #fff;
      color: #202124;
      box-shadow: inset 0 -1px 0 rgba(15, 23, 42, 0.06);
    }

    .ct-recent-document-preview {
      position: relative;
      display: block;
      padding: 0;
      background: #fff;
    }

    .ct-recent-image-preview {
      position: relative;
      display: block;
      height: 100%;
      padding: 0;
      background: #fff;
    }

    .ct-recent-preview-image {
      width: 100%;
      height: 100%;
      min-height: 100%;
      display: block;
      object-fit: cover;
      object-position: top center;
      opacity: 0;
      transition: opacity 0.14s ease;
    }

    .ct-recent-image-ready .ct-recent-preview-image {
      opacity: 1;
    }

    .ct-recent-image-placeholder {
      position: absolute;
      inset: 18px 20px;
      display: grid;
      align-content: start;
      gap: 7px;
      pointer-events: none;
    }

    .ct-recent-image-ready .ct-recent-image-placeholder {
      display: none;
    }

    .ct-recent-image-placeholder-line {
      height: 8px;
      border-radius: 999px;
      background: #e3e5e8;
    }

    .ct-recent-image-placeholder-line:first-child {
      width: 62%;
      height: 10px;
      margin-inline: auto;
      background: #d8dade;
    }

    .ct-recent-image-placeholder-line:nth-child(2) {
      width: 92%;
      margin-top: 9px;
    }

    .ct-recent-image-placeholder-line:nth-child(3) {
      width: 78%;
    }

    .ct-recent-image-placeholder-line:nth-child(4) {
      width: 88%;
      margin-top: 7px;
    }

    .ct-recent-image-placeholder-line:nth-child(5) {
      width: 70%;
    }

    .ct-recent-preview-scale {
      width: 680px;
      min-height: 900px;
      transform: scale(var(--ct-recent-preview-scale-value, 0.335));
      transform-origin: top left;
      pointer-events: none;
    }

    .ct-recent-mini-editor.ct-editor {
      width: 680px;
      min-height: 900px;
      margin: 0;
      padding: 48px 58px;
      border: 0;
      border-radius: 0;
      box-shadow: none;
    }

    .ct-recent-mini-editor .ct-card {
      margin-bottom: 22px;
    }

    .ct-recent-preview-title {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      font-size: 12px;
      line-height: 1.2;
      font-weight: 700;
      text-align: center;
    }

    .ct-recent-preview-line {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      color: #3f4146;
      font-size: 9px;
      line-height: 1.35;
      font-weight: 400;
    }

    .ct-recent-preview-rule {
      height: 1px;
      margin: 2px 0;
      background: rgba(31, 35, 40, 0.16);
    }

    .ct-recent-file-info {
      position: relative;
      min-width: 0;
      display: grid;
      grid-template-columns: minmax(0, 1fr) 34px;
      gap: 8px;
      align-items: start;
    }

    .ct-recent-file-copy {
      min-width: 0;
      display: grid;
      gap: 5px;
    }

    .ct-recent-file-title {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      color: var(--text-primary, #25272b);
      font-size: 15px;
      line-height: 1.18;
      font-weight: 500;
      letter-spacing: 0;
    }

    .ct-recent-title-input {
      width: 100%;
      min-width: 0;
      height: 24px;
      border: 1px solid var(--border-soft, var(--ct-border));
      border-radius: 7px;
      background: var(--surface-3, #fff);
      color: var(--text-primary, #25272b);
      padding: 0 7px;
      font: inherit;
      font-size: 15px;
      line-height: 1.1;
      font-weight: 500;
    }

    .ct-recent-title-input:focus {
      outline: none;
      border-color: var(--ct-focus-border, var(--border-strong));
      box-shadow: 0 0 0 3px var(--ct-field-focus-ring, rgba(47, 124, 255, 0.18));
    }

    .ct-recent-file-meta,
    .ct-recent-file-date {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      color: var(--text-secondary, var(--ct-muted));
      font-size: 12px;
      line-height: 1.2;
      font-weight: 400;
    }

    .ct-recent-file-action-wrap {
      position: relative;
      justify-self: end;
      z-index: 4;
    }

    .ct-recent-more {
      width: 32px;
      height: 32px;
      min-height: 32px;
      border-radius: 8px;
      color: var(--text-secondary, var(--ct-muted));
    }

    .ct-recent-file-pending .ct-recent-more {
      pointer-events: none;
      opacity: 0.5;
    }

    .ct-recent-card-menu {
      position: absolute;
      right: calc(100% + 6px);
      top: 0;
      z-index: 8;
      min-width: 138px;
      display: grid;
      padding: 6px;
      border: 1px solid var(--border-soft, var(--ct-border));
      border-radius: 8px;
      background: #ffffff;
      box-shadow: var(--shadow-popover, 0 18px 34px rgba(15, 23, 42, 0.16));
    }

    .ct-recent-card-menu[aria-hidden="true"] {
      display: none;
    }

    .ct-recent-card-menu button {
      width: 100%;
      min-height: 34px;
      display: flex;
      align-items: center;
      gap: 8px;
      border: 0;
      border-radius: 6px;
      background: transparent;
      color: var(--text-primary, #25272b);
      padding: 0 9px;
      font-size: 13px;
      text-align: left;
    }

    .ct-recent-card-menu button:hover {
      background: color-mix(in srgb, var(--surface-3, #f4f4f2) 86%, var(--selected-fill, #2563eb));
    }

    .ct-recent-card-menu .ct-danger-menu-item {
      color: var(--ct-danger, #b91c1c);
    }

    .ct-recent-inline-delete {
      position: absolute;
      inset: -3px 0 auto 0;
      z-index: 7;
      min-height: 74px;
      width: 100%;
      max-width: 100%;
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      gap: 6px;
      padding: 8px 6px 8px 10px;
      overflow: hidden;
    }

    .ct-recent-inline-delete .ct-inline-delete-copy {
      min-width: 0;
    }

    .ct-recent-inline-delete .ct-inline-delete-title,
    .ct-recent-inline-delete .ct-inline-delete-copy span {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .ct-recent-inline-delete .ct-inline-delete-button {
      min-width: 58px;
      padding-inline: 10px;
    }

    .ct-recent-inline-delete .ct-inline-cancel-button {
      width: 28px;
      height: 28px;
      min-width: 28px;
      min-height: 28px;
    }

    .ct-recent-pending-line {
      height: 8px;
      border-radius: 999px;
      background: rgba(148, 163, 184, 0.28);
      animation: ct-recent-shimmer 1.35s ease-in-out infinite;
    }

    .ct-recent-pending-line:nth-child(1) {
      width: 50%;
      height: 10px;
      margin: 0 auto 8px;
    }

    .ct-recent-pending-line:nth-child(2) {
      width: 84%;
    }

    .ct-recent-pending-line:nth-child(3) {
      width: 70%;
    }

    .ct-recent-pending-line:nth-child(4) {
      width: 92%;
      margin-top: 10px;
    }

    .ct-recent-pending-line:nth-child(5) {
      width: 64%;
    }

    .ct-recent-pending-preview {
      position: relative;
    }

    .ct-recent-progress-chip {
      width: fit-content;
      max-width: 100%;
      margin-top: 5px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      border-radius: 999px;
      background: color-mix(in srgb, var(--selected-fill, #2563eb) 12%, transparent);
      color: var(--blue-strong, #123a6b);
      padding: 4px 8px;
      font-size: 11px;
      line-height: 1.1;
      font-weight: 500;
    }

    .ct-recent-preview-progress {
      position: absolute;
      left: 50%;
      bottom: 17px;
      max-width: calc(100% - 40px);
      margin: 0;
      transform: translateX(-50%);
      text-align: center;
    }

    .ct-recent-file-pending .ct-recent-preview-progress {
      overflow: hidden;
      background-color: color-mix(in srgb, var(--selected-fill, #2563eb) 11%, transparent);
      box-shadow: 0 0 9px rgba(37, 99, 235, 0.08);
    }

    .ct-recent-file-pending .ct-recent-preview-progress::before {
      content: "";
      position: absolute;
      top: -35%;
      bottom: -35%;
      left: -38%;
      width: 34%;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.18);
      box-shadow: 0 0 16px rgba(37, 99, 235, 0.14), 0 0 10px rgba(255, 255, 255, 0.16);
      filter: blur(3px);
      pointer-events: none;
      transform: translateX(-80%);
      animation: ct-recent-progress-wave 4.2s ease-in-out infinite;
    }

    @media (prefers-reduced-motion: reduce) {
      .ct-recent-file-pending .ct-recent-preview-progress::before {
        animation: none !important;
        opacity: 0;
      }
    }

    .ct-recent-pagination {
      min-height: 38px;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      color: var(--text-secondary, var(--ct-muted));
      font-size: 13px;
    }

    .ct-recent-page-button[disabled] {
      opacity: 0.42;
      pointer-events: none;
    }

    .ct-recent-empty-state {
      min-height: 220px;
      display: grid;
      place-items: center;
      border: 1px dashed var(--empty-dash, var(--border-soft));
      border-radius: 8px;
      background: var(--empty-bg, rgba(255, 255, 255, 0.42));
      color: var(--text-secondary, var(--ct-muted));
      text-align: center;
      padding: 24px;
    }

    .ct-recent-empty-state h2 {
      margin: 0 0 6px;
      color: var(--text-primary, #25272b);
      font-size: 20px;
      font-weight: 500;
    }

    .ct-recent-empty-state p {
      margin: 0;
      font-size: 14px;
      line-height: 1.35;
    }

    html[data-theme="dark"] .ct-recent-preview,
    .ct-app[data-theme="dark"] .ct-recent-preview {
      border-color: rgba(255, 255, 255, 0.14);
      background: #f6f7f9;
      color: #17191d;
    }

    html[data-theme="dark"] .ct-recent-document-preview,
    html[data-theme="dark"] .ct-recent-image-preview,
    .ct-app[data-theme="dark"] .ct-recent-document-preview,
    .ct-app[data-theme="dark"] .ct-recent-image-preview {
      background: #fff;
    }

    html[data-theme="dark"] .ct-recent-progress-chip,
    .ct-app[data-theme="dark"] .ct-recent-progress-chip {
      color: #dbeafe;
    }

    html[data-theme="dark"] .ct-recent-file-pending .ct-recent-preview-progress,
    .ct-app[data-theme="dark"] .ct-recent-file-pending .ct-recent-preview-progress {
      color: #164ea6;
      background-color: rgba(37, 99, 235, 0.18);
      box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.2), 0 7px 18px rgba(15, 23, 42, 0.08);
      font-weight: 600 !important;
    }

    html[data-theme="dark"] .ct-recent-file-pending .ct-recent-preview-progress::before,
    .ct-app[data-theme="dark"] .ct-recent-file-pending .ct-recent-preview-progress::before {
      background: rgba(59, 130, 246, 0.2);
      box-shadow: 0 0 16px rgba(37, 99, 235, 0.18), 0 0 10px rgba(15, 23, 42, 0.08);
    }

    html[data-theme="dark"] .ct-recent-options,
    .ct-app[data-theme="dark"] .ct-recent-options,
    html[data-theme="dark"] .ct-recent-card-menu,
    .ct-app[data-theme="dark"] .ct-recent-card-menu {
      background: #111927;
      border-color: var(--ct-border);
    }

    html[data-theme="dark"] .ct-recent-option,
    .ct-app[data-theme="dark"] .ct-recent-option,
    html[data-theme="dark"] .ct-recent-card-menu button,
    .ct-app[data-theme="dark"] .ct-recent-card-menu button {
      color: var(--ct-text);
    }

    @keyframes ct-recent-shimmer {
      0%, 100% { opacity: 0.52; }
      50% { opacity: 1; }
    }

    @keyframes ct-recent-progress-wave {
      0% {
        opacity: 0;
        transform: translateX(-80%);
      }
      50% {
        opacity: 0.68;
      }
      100% {
        opacity: 0;
        transform: translateX(420%);
      }
    }

    @media (max-width: 980px) {
      .ct-recent-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 620px) {
      .ct-recent-browser {
        margin-top: 0;
      }

      .ct-recent-browser-top {
        align-items: flex-start;
        flex-direction: column;
      }

      .ct-recent-controls {
        width: 100%;
        max-width: 100%;
        justify-content: flex-start;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 2px;
        scrollbar-width: none;
      }

      .ct-recent-controls::-webkit-scrollbar {
        display: none;
      }

      .ct-recent-filter,
      .ct-recent-filter-project,
      .ct-recent-filter-sort {
        width: auto;
        min-width: 134px;
        flex: 0 0 auto;
      }

      .ct-recent-grid {
        width: 100%;
        grid-template-columns: minmax(0, 1fr);
      }
    }

    /* Mobile Matrix UX overhaul. Desktop layout intentionally stays on the existing cascade. */
    .ct-mobile-sidebar-tools,
    .ct-mobile-tool-box,
    .ct-mobile-home-mode-switcher,
    .ct-sidebar-footer-config {
      display: none;
    }

    @media (max-width: 860px) {
      :root {
        --ct-mobile-header-row-height: 64px;
        --ct-mobile-nav-row-height: 42px;
        --ct-mobile-topbar-height: calc(var(--ct-mobile-header-row-height) + var(--ct-mobile-nav-row-height));
        --ct-mobile-sidebar-topbar-height: 64px;
      }

      html,
      body {
        width: 100%;
        min-height: 100%;
        overflow-x: hidden;
      }

      .ct-app,
      .ct-app.ct-sidebar-collapsed {
        grid-template-columns: 1fr;
        grid-template-rows: var(--ct-mobile-topbar-height) auto minmax(0, 1fr);
        min-height: 100svh;
        overflow-x: hidden;
      }

      .ct-topbar,
      .ct-app.ct-sidebar-collapsed .ct-topbar {
        min-height: var(--ct-mobile-topbar-height);
        grid-column: 1;
        grid-row: 1;
        grid-template-columns: 1fr;
        grid-template-rows: var(--ct-mobile-header-row-height) var(--ct-mobile-nav-row-height);
        align-content: start;
        padding: 0;
        gap: 0;
        position: sticky;
        top: 0;
        z-index: 60;
      }

      .ct-app.ct-sidebar-collapsed .ct-topbar {
        position: fixed;
        inset: 0 0 auto 0;
        width: 100%;
      }

      .ct-topbar-brand-zone {
        min-height: var(--ct-mobile-header-row-height);
        display: grid;
        grid-template-columns: 52px minmax(0, 1fr) 52px;
        align-items: center;
        border-right: 0;
        border-bottom: 1px solid var(--border-soft);
        padding: 0 8px;
      }

      .ct-app.ct-sidebar-collapsed .ct-topbar-brand-zone {
        grid-template-columns: 52px minmax(0, 1fr) 52px;
      }

      .ct-topbar-brand-zone > .ct-menu-button {
        grid-column: 1;
        grid-row: 1;
        justify-self: center;
        z-index: 1;
        width: 40px;
        height: 40px;
        min-width: 40px;
        min-height: 40px;
      }

      .ct-topbar-brand-zone > .ct-brand {
        grid-column: 1 / -1;
        grid-row: 1;
        justify-self: center;
        display: inline-grid !important;
        justify-items: center;
        margin: 0;
        opacity: 1;
        pointer-events: none;
        text-align: center;
        visibility: visible;
      }

      .ct-topbar-right {
        display: none !important;
      }

      .ct-app.ct-sidebar-collapsed .ct-topbar .ct-brand,
      .ct-app.ct-sidebar-collapsed .ct-topbar-brand-zone > .ct-brand {
        display: inline-grid !important;
        opacity: 1;
        visibility: visible;
      }

      .ct-app.ct-sidebar-collapsed .ct-topbar-nav-zone {
        grid-column: 1;
        grid-row: 2;
        display: grid !important;
        align-items: stretch;
        height: var(--ct-mobile-nav-row-height);
        min-width: 0;
        padding: 0 10px;
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-topbar {
        min-height: var(--ct-mobile-sidebar-topbar-height);
        grid-template-rows: var(--ct-mobile-sidebar-topbar-height);
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-topbar-brand-zone {
        min-height: var(--ct-mobile-sidebar-topbar-height);
        grid-template-columns: 52px minmax(0, 1fr) 52px;
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-topbar-nav-zone {
        display: none !important;
      }

      .ct-topbar .ct-nav {
        width: 100%;
        height: 100%;
        min-width: 0;
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        align-items: stretch;
        gap: 6px;
      }

      .ct-topbar .ct-nav-button {
        position: relative;
        min-width: 0;
        min-height: 0;
        height: 100%;
        padding: 0 5px;
        border-radius: 9px;
        font-size: 11.5px;
        line-height: 1;
        align-items: center;
        box-shadow: none;
      }

      .ct-topbar .ct-nav-button[aria-current="page"] {
        box-shadow: none;
      }

      .ct-topbar .ct-nav-button[aria-current="page"]::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 3px;
        height: 4px;
        border-radius: 999px;
        background: var(--ct-accent);
        pointer-events: none;
      }

      .ct-brand-primary {
        font-size: 26px;
      }

      .ct-brand-secondary {
        font-size: 16px;
      }

      .ct-app.ct-sidebar-collapsed .ct-sidebar {
        grid-column: 1;
        grid-row: 2;
        display: none;
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 0;
        padding: 10px 16px 12px;
        overflow: visible;
        background: transparent;
        border: 0;
      }

      .ct-app.ct-sidebar-collapsed .ct-sidebar::before {
        content: none;
        display: none;
      }

      .ct-app.ct-sidebar-collapsed .ct-collapsed-mode-list {
        width: min(260px, calc(100vw - 72px));
        display: none !important;
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
        padding: 0;
        border: 1px solid var(--border-soft);
        border-radius: 999px;
        background: color-mix(in srgb, var(--surface-2) 78%, transparent);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
      }

      .ct-app.ct-sidebar-collapsed .ct-collapsed-mode-button.ct-mode-button {
        width: 100%;
        min-width: 0;
        max-width: none;
        height: 42px;
        min-height: 42px;
        border-radius: 999px;
        padding: 0 !important;
        overflow: hidden;
        font-size: 0;
      }

      .ct-app.ct-sidebar-collapsed .ct-collapsed-mode-button.ct-mode-button span {
        display: none;
      }

      .ct-app.ct-sidebar-collapsed .ct-collapsed-mode-button.ct-mode-button .ct-icon {
        width: 20px;
        height: 20px;
      }

      .ct-app.ct-sidebar-collapsed .ct-collapsed-auth-shell,
      .ct-app.ct-sidebar-collapsed .ct-sidebar-main,
      .ct-app.ct-sidebar-collapsed .ct-sidebar-footer {
        display: none !important;
      }

      .ct-app:not(.ct-sidebar-collapsed) {
        height: 100svh;
        min-height: 100svh;
        grid-template-rows: var(--ct-mobile-sidebar-topbar-height) minmax(0, 1fr);
        overflow: hidden;
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-shell,
      .ct-app:not(.ct-sidebar-collapsed) .ct-review-panel {
        display: none !important;
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-sidebar {
        grid-column: 1;
        grid-row: 2;
        height: calc(100svh - var(--ct-mobile-sidebar-topbar-height));
        display: grid;
        grid-template-rows: minmax(0, 1fr) auto;
        overflow: hidden;
        background: var(--ct-sidebar-surface);
        border-top: 1px solid var(--border-soft);
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-sidebar-main {
        min-height: 0;
        display: grid;
        align-content: start;
        gap: 14px;
        overflow: auto;
        padding: 16px;
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-sidebar-main > .ct-sidebar-section:first-child {
        display: none;
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-mobile-sidebar-tools {
        display: grid;
        width: min(260px, 100%);
        justify-self: center;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 8px;
        align-items: center;
      }

      .ct-mobile-sidebar-tools .ct-sp-counter {
        width: 100%;
        min-width: 0;
        min-height: 40px;
        height: 40px;
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-mobile-sidebar-tools + .ct-sidebar-section {
        margin-top: 12px;
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-sidebar-footer {
        display: block;
        padding: 12px 16px calc(14px + env(safe-area-inset-bottom, 0px));
        border-top: 1px solid var(--border-soft);
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-sidebar-footer .ct-sidebar-account-row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 10px;
        align-items: center;
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-sidebar-footer .ct-account-card {
        width: 100%;
        min-width: 0;
      }

      .ct-app:not(.ct-sidebar-collapsed) .ct-sidebar-footer-config {
        display: inline-flex;
        min-width: 92px;
        min-height: 40px;
        height: 40px;
        padding-inline: 12px;
        justify-content: center;
        align-items: center;
        font-size: 12px;
      }

      .ct-shell {
        grid-column: 1;
        grid-row: 3;
        min-height: 0;
      }

      .ct-workspace,
      .ct-canvas-wrap,
      .ct-canvas {
        min-height: 0;
        height: auto;
        overflow: visible;
      }

      .ct-canvas-wrap {
        padding: 18px 14px 28px;
      }

      .ct-paper,
      .ct-assisted-paper {
        width: 100%;
        min-height: 0;
      }

      .ct-paper-inner {
        height: auto;
        min-height: 0;
        padding: 0;
        overflow: visible;
      }

      .ct-tool-header {
        text-align: center;
        margin: 0 auto 18px;
        max-width: 360px;
      }

      .ct-tool-header h1 {
        text-align: center;
        font-size: 30px;
        line-height: 1.08;
      }

      .ct-tool-header p {
        text-align: center;
        font-size: 13px;
        line-height: 1.35;
      }

      .ct-mobile-home-mode-switcher {
        width: min(260px, calc(100vw - 72px));
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
        margin: -6px auto 16px;
        padding: 0;
        border: 1px solid var(--border-soft);
        border-radius: 999px;
        background: color-mix(in srgb, var(--surface-2) 78%, transparent);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
      }

      .ct-mobile-home-mode-switcher .ct-home-mode-button {
        width: 100%;
        min-width: 0;
        max-width: none;
        display: grid !important;
        place-items: center;
        justify-content: center;
        align-items: center;
        gap: 0;
        height: 42px;
        min-height: 42px;
        border-radius: 999px;
        padding: 0 !important;
        overflow: hidden;
        font-size: 0;
      }

      .ct-mobile-home-mode-switcher .ct-home-mode-button .ct-icon {
        width: 20px;
        height: 20px;
        flex: 0 0 auto;
        justify-self: center;
        align-self: center;
        margin: 0;
      }

      .ct-sp-shop-head .ct-page-copy {
        font-size: 12px;
        line-height: 1.32;
      }

      .ct-tool-workspace,
      .ct-assisted-shell {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
      }

      .ct-desktop-tool-box {
        display: none !important;
      }

      .ct-mobile-tool-box {
        display: block;
      }

      .ct-mobile-panel-stack,
      .ct-assisted-mobile-lower-stack {
        display: grid;
        gap: 14px;
      }

      .ct-mobile-tool-primary,
      .ct-mobile-queue-box {
        min-height: auto !important;
        height: auto !important;
        padding: 16px;
      }

      .ct-mobile-queue-box .ct-tool-queue-slot {
        block-size: auto;
        min-height: 132px;
        max-height: none;
      }

      .ct-assisted-mobile-primary .ct-tool-queue-slot {
        block-size: auto;
        min-height: 104px;
      }

      .ct-mobile-queue-box .ct-tool-queue-slot .ct-queue-panel,
      .ct-mobile-queue-box .ct-tool-queue-slot .ct-assisted-empty-queue {
        min-height: 132px;
        max-height: 260px;
      }

      .ct-assisted-mobile-primary .ct-tool-queue-slot .ct-queue-panel,
      .ct-assisted-mobile-primary .ct-tool-queue-slot .ct-assisted-empty-queue {
        min-height: 104px;
        max-height: 220px;
      }

      .ct-assisted-mobile-primary .ct-assisted-empty-queue {
        gap: 10px;
        padding: 18px 16px;
        font-size: 13px;
        line-height: 1.25;
      }

      .ct-assisted-mobile-primary .ct-empty-queue-icon {
        width: 42px;
        height: 42px;
      }

      .ct-assisted-mobile-primary .ct-empty-queue-icon .ct-icon {
        width: 20px;
        height: 20px;
      }

      .ct-assisted-mobile-primary .ct-assisted-results-shell {
        max-height: min(420px, 48svh);
        overflow: auto;
      }

      .ct-assisted-mobile-secondary .ct-assisted-results-shell {
        max-height: min(500px, 54svh);
        overflow: auto;
      }

      .ct-assisted-mobile-secondary .ct-assisted-cut-panel {
        margin-top: 0;
      }

      .ct-assisted-mobile-cut-controls {
        display: grid;
        gap: 12px;
      }

      .ct-request-row,
      .ct-tool-options-box .ct-request-row,
      .ct-tool-options-box .ct-option-grid,
      .ct-deep-option-grid {
        grid-template-columns: 1fr;
        gap: 14px;
      }

      .ct-mobile-deep-model-highlight {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
        align-items: stretch;
      }

      .ct-mobile-deep-model-highlight .ct-highlight-row {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
      }

      .ct-mobile-deep-model-highlight .ct-swatch-button {
        width: auto;
        flex: 0 0 auto;
      }

      .ct-mobile-deep-model-highlight .ct-quality-row {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
      }

      .ct-deep-option-grid.ct-mobile-deep-model-highlight .ct-quality-row .ct-quality-pill,
      .ct-deep-option-grid .ct-mobile-deep-model-highlight .ct-quality-row .ct-quality-pill,
      .ct-tool-options-box .ct-mobile-deep-model-highlight .ct-quality-row .ct-quality-pill,
      .ct-mobile-deep-model-highlight .ct-quality-pill {
        min-width: 0;
        min-height: 52px;
        height: 52px;
        padding: 0 6px;
        font-size: 13.5px;
        line-height: 1.08;
        white-space: normal;
      }

      .ct-queue-item,
      .ct-queue-item.ct-queue-pending {
        grid-template-columns: minmax(96px, 0.4fr) minmax(0, 0.6fr);
        min-height: 58px;
        gap: 8px;
        padding: 9px 10px;
      }

      .ct-queue-item.ct-queue-pending .ct-queue-title {
        display: block;
        max-width: 100%;
        overflow: hidden;
        color: var(--text-primary);
        font-size: 13.5px;
        line-height: 1.08;
        text-overflow: ellipsis;
        white-space: nowrap;
      }

      .ct-queue-item.ct-queue-pending .ct-queue-copy {
        align-self: center;
        min-width: 0;
      }

      .ct-queue-item.ct-queue-pending .ct-queue-meta {
        max-width: 100%;
        margin-top: 3px;
        overflow: hidden;
        color: var(--text-secondary);
        font-size: 10.5px;
        line-height: 1.05;
        text-overflow: ellipsis;
        white-space: nowrap;
      }

      .ct-queue-pending-actions {
        grid-template-columns: minmax(0, 1fr) 30px;
        gap: 7px;
      }

      .ct-queue-progress {
        min-height: 40px;
        padding: 6px 8px;
        gap: 5px;
        border-radius: var(--radius-md);
      }

      .ct-queue-progress .ct-progress-label {
        font-size: 11.5px;
        line-height: 1.15;
        white-space: nowrap;
        overflow: hidden;
      }

      .ct-queue-progress .ct-progress-text {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }

      .ct-queue-progress .ct-progress-track {
        height: 4px;
      }

      .ct-queue-cancel-button {
        width: 30px !important;
        height: 40px !important;
        min-width: 30px !important;
        min-height: 40px !important;
      }

      .ct-queue-item.ct-queue-confirming {
        grid-template-columns: minmax(0, 1fr);
        min-height: 58px;
      }

      .ct-queue-confirm-only {
        width: 100%;
        min-width: 0;
        display: grid;
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 8px;
        align-items: center;
      }

      .ct-queue-confirm-trash {
        width: 34px;
        height: 40px;
        display: inline-grid;
        place-items: center;
        color: var(--danger);
      }

      .ct-queue-confirm-trash .ct-icon {
        width: 22px;
        height: 22px;
      }

      .ct-queue-confirm-only .ct-queue-cancel-confirm {
        width: 100%;
        min-width: 0;
      }

      .ct-queue-item.ct-queue-complete,
      .ct-queue-item.ct-queue-failed,
      .ct-queue-item.ct-queue-confirming {
        grid-template-columns: minmax(0, 1fr);
        min-height: 68px;
      }

      .ct-queue-item.ct-queue-complete {
        grid-template-columns: minmax(0, 1fr) 34px;
        grid-template-areas:
          "copy clear"
          "actions clear";
        gap: 5px 6px;
        align-items: center;
        min-height: 64px;
        padding: 9px 6px 9px 10px;
      }

      .ct-queue-item.ct-queue-complete .ct-queue-copy {
        grid-area: copy;
        align-self: end;
      }

      .ct-queue-item.ct-queue-complete .ct-queue-meta {
        display: none;
      }

      .ct-queue-item.ct-queue-complete .ct-queue-complete-actions {
        display: contents;
      }

      .ct-queue-item.ct-queue-complete .ct-queue-action-buttons {
        grid-area: actions;
        justify-self: start;
      }

      .ct-queue-item.ct-queue-complete .ct-queue-clear-button {
        grid-area: clear;
        align-self: center;
        justify-self: end;
        width: 30px;
        height: 38px;
        min-width: 30px;
        min-height: 38px;
        margin: 0 2px 0 0;
      }

      .ct-queue-item.ct-queue-confirming {
        min-height: 58px;
      }

      .ct-queue-complete-actions,
      .ct-queue-failed-actions {
        justify-content: flex-start;
        align-items: center;
        flex-wrap: wrap;
      }

      .ct-queue-item.ct-queue-complete .ct-queue-complete-actions {
        flex-wrap: nowrap;
      }

      .ct-review-panel {
        position: fixed;
        inset: 0;
        z-index: 80;
        pointer-events: none;
      }

      .ct-review-tab {
        position: fixed;
        top: 12px;
        right: 12px;
        z-index: 90;
        width: 40px;
        height: 40px;
        min-width: 40px;
        min-height: 40px;
        border: 1px solid var(--border-soft);
        border-radius: 12px;
        background: var(--ct-primary-fill-compact);
        color: #ffffff;
      }

      .ct-review-tab .ct-icon {
        width: 20px;
        height: 20px;
      }

      .ct-review-panel[data-open="true"] {
        pointer-events: auto;
        background: var(--ct-bg-soft);
      }

      .ct-review-panel[data-open="true"] .ct-review-tab {
        display: none;
      }

      .ct-review-shell {
        width: 100vw;
        max-width: none;
        height: 100svh;
        margin: 0;
        border-left: 0;
        border-radius: 0;
        box-shadow: none;
        grid-template-rows: auto auto minmax(0, 1fr);
        transform: translateX(100%);
      }

      .ct-review-panel[data-open="true"] .ct-review-shell {
        transform: translateX(0);
      }

      .ct-review-header {
        min-height: 0;
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 8px;
        padding: calc(8px + env(safe-area-inset-top, 0px)) 10px 8px;
      }

      .ct-review-heading {
        min-width: 0;
        display: flex;
        align-items: center;
        gap: 8px;
      }

      .ct-review-actions {
        min-width: 0;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 5px;
        flex-wrap: wrap;
      }

      .ct-review-title,
      .ct-review-title-input {
        min-width: 0;
        max-width: 100%;
        font-size: 14px;
      }

      .ct-review-title-input {
        height: 36px;
        min-height: 36px;
        max-height: 36px;
      }

      .ct-review-toolbar-row {
        min-height: 0;
        padding: 7px 8px;
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: none;
      }

      .ct-review-toolbar-row::-webkit-scrollbar {
        display: none;
      }

      .ct-review-toolbar-row .ct-toolbar {
        width: max-content;
        min-width: 100%;
        display: flex;
        align-items: center;
        gap: 5px;
        flex-wrap: nowrap;
      }

      .ct-review-toolbar-row .ct-toolbar-group {
        flex: 0 0 auto;
        gap: 3px;
        padding-right: 5px;
      }

      .ct-review-toolbar-row .ct-action-toolbar {
        min-width: 0;
      }

      .ct-toolbar-button,
      .ct-toolbar-button.ct-download,
      .ct-toolbar-select,
      .ct-toolbar-input,
      .ct-toolbar-combo,
      .ct-size-control,
      .ct-size-stepper {
        min-height: 38px;
        height: 38px;
      }

      .ct-toolbar-button,
      .ct-toolbar-button.ct-download {
        min-width: 38px;
        padding-inline: 9px;
      }

      .ct-toolbar-select {
        width: 118px;
      }

      .ct-toolbar-font-input {
        width: 126px;
      }

      .ct-toolbar-size-input {
        width: 52px;
      }

      .ct-review-body {
        min-height: 0;
        padding: 12px;
        overflow: auto;
      }

      .ct-review-body.ct-review-body-recent {
        padding: 0 10px 12px;
      }

      .ct-review-body:not(.ct-review-body-recent) {
        padding: 12px 8px 18px;
      }

      .ct-review-body .ct-editor {
        width: 100%;
        min-height: calc(100svh - 156px);
        margin: 0;
        padding: 26px 18px;
        border-radius: 8px;
      }

      .ct-recent-browser {
        width: 100%;
      }

      .ct-recent-browser-top {
        width: calc(100% + 20px);
        margin-left: -10px;
        margin-right: -10px;
        padding-inline: 10px;
      }

      .ct-recent-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
      }

      .ct-review-body-recent .ct-recent-file {
        min-height: 230px;
        grid-template-rows: 130px auto;
        gap: 8px;
        padding: 8px;
      }

      .ct-review-body-recent .ct-recent-preview {
        padding: 12px 10px;
        gap: 4px;
        border-radius: 7px;
      }

      .ct-review-body-recent .ct-recent-image-preview,
      .ct-review-body-recent .ct-recent-document-preview {
        height: 100%;
        padding: 0;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        overflow: hidden;
      }

      .ct-review-body-recent .ct-recent-preview-image {
        width: 100%;
        max-width: 100%;
        height: auto;
        min-height: 0;
        object-fit: contain;
        object-position: top center;
        flex: 0 0 auto;
      }

      .ct-review-body-recent .ct-recent-preview-scale {
        transform-origin: top center;
      }

      .ct-review-body-recent .ct-recent-image-placeholder {
        inset: 12px 10px;
        gap: 5px;
      }

      .ct-review-body-recent .ct-recent-file-info {
        grid-template-columns: minmax(0, 1fr) 30px;
        gap: 5px;
      }

      .ct-review-body-recent .ct-recent-file-copy {
        gap: 4px;
      }

      .ct-review-body-recent .ct-recent-file-title,
      .ct-review-body-recent .ct-recent-title-input {
        font-size: 13px;
        line-height: 1.15;
      }

      .ct-review-body-recent .ct-recent-file-meta,
      .ct-review-body-recent .ct-recent-file-date {
        font-size: 10.5px;
        line-height: 1.16;
      }

      .ct-review-body-recent .ct-recent-more {
        width: 30px;
        height: 30px;
        min-height: 30px;
      }

      .ct-review-page-viewport {
        --ct-review-page-width: 680px;
        --ct-review-page-scale: 1;
        --ct-review-page-scaled-height: auto;
        position: relative;
        width: 100%;
        min-width: 0;
        height: var(--ct-review-page-scaled-height, auto);
        min-height: 0;
        display: block;
        overflow: visible;
      }

      .ct-review-page-scale {
        position: absolute;
        top: 0;
        left: 50%;
        margin-left: calc(var(--ct-review-page-width) * -0.5);
        width: var(--ct-review-page-width);
        min-width: var(--ct-review-page-width);
        transform: scale(var(--ct-review-page-scale));
        transform-origin: top center;
      }

      .ct-review-page-scale > .ct-editor#ct-active-editor {
        width: var(--ct-review-page-width);
        min-height: 0;
        height: auto;
        margin: 0;
        padding: 48px 58px;
        border-radius: 8px;
      }
    }
  