.workspace {
  --blue-50: #eef6ff; --blue-100: #dbeafe; --blue-200: #bfdbfe; --blue-500: #2383e2;
  --blue-600: #0b6bdc; --blue-700: #095ab9; --ink-950: #17202a; --ink-900: #202a35;
  --ink-800: #34404d; --ink-700: #4c5967; --ink-600: #667382; --ink-500: #84909d;
  --ink-300: #c8cfd7; --ink-200: #dce1e7; --ink-150: #e8ebef; --ink-100: #f0f2f5;
  --ink-50: #f7f8fa; --paper: #fffefd; --canvas: #f5f6f8; --panel: #fbfcfd;
  --green-700: #1d6a3d; --green-100: #e9f7ef; --red-700: #b4232f; --red-100: #fef2f2;
  --red-200: #fecaca; --amber-800: #704b0c; --amber-700: #9a6205; --amber-200: #f0c977;
  --amber-100: #fff9e9; --shadow-sm: 0 1px 2px rgba(23, 32, 42, .06);
  --shadow-float: 0 16px 44px rgba(23, 32, 42, .16);
  min-width: 240px; min-height: 100vh; color: var(--ink-900); background: var(--canvas);
  font: 14px/1.45 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
.workspace.settings-model-page { padding: 0; }

.workspace *, .workspace *::before, .workspace *::after { box-sizing: border-box; }
.workspace a { color: inherit; text-decoration: none; }
.workspace button, .workspace input, .workspace select, .workspace textarea { font: inherit; }
.workspace :is(button, input, select, textarea, a, summary):focus-visible { outline: 3px solid rgba(35, 131, 226, .27); outline-offset: 2px; }
.workspace [hidden] { display: none !important; }
.workspace .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.workspace h1, .workspace h2, .workspace h3, .workspace p { margin-top: 0; }
.workspace h1 { margin-bottom: 5px; color: var(--ink-950); font-size: 28px; line-height: 1.2; letter-spacing: -.025em; }
.workspace h2 { margin-bottom: 5px; color: var(--ink-950); font-size: 20px; line-height: 1.25; letter-spacing: -.018em; }
.workspace h3 { margin-bottom: 3px; color: var(--ink-900); font-size: 15px; line-height: 1.3; }

.workspace .app-header { height: 64px; border-bottom: 1px solid var(--ink-150); background: rgba(255, 254, 253, .96); }
.workspace .app-header-inner { display: flex; width: min(100% - 40px, 1080px); height: 100%; align-items: center; justify-content: space-between; margin: 0 auto; }
.workspace .brand { display: inline-flex; align-items: center; gap: 10px; color: var(--ink-950); font-size: 16px; font-weight: 680; letter-spacing: -.02em; }
.workspace .brand-mark { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 7px; background: linear-gradient(145deg, #1687ef, #0868d7); box-shadow: inset 0 0 0 1px rgba(0, 71, 160, .18); color: white; }
.workspace .brand-mark svg { width: 18px; height: 18px; }
.workspace .header-actions { display: flex; align-items: center; gap: 9px; }
.workspace .icon { width: 18px; height: 18px; flex: 0 0 auto; }
.workspace .icon-sm { width: 15px; height: 15px; flex: 0 0 auto; }
.workspace .btn { display: inline-flex; min-height: 38px; align-items: center; justify-content: center; gap: 7px; border: 1px solid var(--ink-200); border-radius: 9px; padding: 8px 13px; background: #fff; box-shadow: var(--shadow-sm); color: var(--ink-800); font-weight: 650; line-height: 1.15; cursor: pointer; }
.workspace .ai-model-save { min-height: 44px; }
.workspace .btn:hover { color: var(--ink-950); text-decoration: none; }
.workspace .btn-primary, .workspace .btn-primary:hover { border-color: var(--blue-600); background: var(--blue-600); color: #fff; }
.workspace .btn-quiet { border-color: transparent; background: transparent; box-shadow: none; color: var(--ink-600); }
.workspace .btn-danger-outline { border-color: var(--red-200); background: #fff; color: var(--red-700); box-shadow: none; }
.workspace .btn-wide { min-width: 150px; }
.workspace .icon-btn { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid var(--ink-200); border-radius: 9px; padding: 0; background: #fff; box-shadow: var(--shadow-sm); color: var(--ink-600); }
.workspace .icon-btn.current { border-color: var(--blue-200); background: var(--blue-50); color: var(--blue-700); }
.workspace .avatar { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; background: var(--ink-100); color: var(--ink-700); font-size: 11px; font-weight: 750; }

.workspace .page { width: min(100% - 40px, 1040px); margin: 0 auto; padding: 38px 0 64px; }
.workspace .page-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.workspace .page-actions { display: flex; align-items: center; gap: 9px; }
.workspace .eyebrow { display: block; margin-bottom: 7px; color: var(--blue-700); font-size: 11px; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.workspace .subtitle { margin: 0; color: var(--ink-600); font-size: 14px; }
.workspace .library-summary { display: flex; align-items: center; gap: 9px; margin-top: 14px; color: var(--ink-600); font-size: 12px; }
.workspace .count-pill { border: 1px solid var(--ink-200); border-radius: 999px; padding: 2px 8px; background: #fff; font-weight: 650; }
.workspace .workspace-notice, .workspace .form-notice { display: flex; gap: 8px; margin: 0 0 16px; border: 1px solid #c8e6d3; border-radius: 10px; padding: 10px 12px; background: var(--green-100); color: var(--green-700); font-size: 12px; }
.workspace .trash-notice { display: flex; min-height: 44px; align-items: center; justify-content: space-between; gap: 14px; margin: 0 0 20px; border: 1px solid #c8e6d3; border-radius: 10px; padding: 10px 12px; background: var(--green-100); color: var(--green-700); font-size: 12px; }
.workspace .trash-notice-copy { display: flex; align-items: flex-start; gap: 8px; }
.workspace .trash-notice-copy strong { color: #175832; }
.workspace .trash-notice form { flex: 0 0 auto; }
.workspace .trash-notice-action { border: 0; border-bottom: 1px solid currentColor; padding: 1px 0; background: transparent; color: var(--green-700); font: inherit; font-weight: 750; cursor: pointer; }
.workspace .trash-notice--error { border-color: var(--red-200); background: var(--red-100); color: var(--red-700); }
.workspace .trash-notice--error .trash-notice-copy strong { color: var(--red-700); }
.workspace .trash-notice--error .trash-notice-action { color: var(--red-700); }

.workspace .toolbar { display: grid; grid-template-columns: minmax(280px, 1fr) 118px 170px 160px; gap: 10px; margin-bottom: 10px; }
.workspace .search-field { position: relative; }
.workspace .search-field svg { position: absolute; top: 12px; left: 13px; color: var(--ink-500); }
.workspace .control { width: 100%; min-height: 42px; border: 1px solid var(--ink-200); border-radius: 9px; padding: 9px 12px; background: #fff; color: var(--ink-900); box-shadow: var(--shadow-sm); }
.workspace .control::placeholder { color: var(--ink-500); }
.workspace .control:focus { border-color: var(--blue-500); box-shadow: 0 0 0 3px rgba(35, 131, 226, .1); outline: 0; }
.workspace .search-field .control { padding-left: 39px; }
.workspace .starred-filter { display: flex; width: 100%; min-height: 42px; align-items: center; justify-content: center; gap: 7px; border: 1px solid var(--ink-200); border-radius: 9px; padding: 8px 10px; background: #fff; box-shadow: var(--shadow-sm); color: var(--ink-700); font-weight: 650; cursor: pointer; }
.workspace .starred-filter svg { width: 16px; height: 16px; flex: 0 0 auto; fill: none; color: var(--ink-500); }
.workspace .starred-filter .filter-count { display: grid; min-width: 20px; height: 20px; place-items: center; margin-right: -3px; border-radius: 999px; background: var(--ink-100); color: var(--ink-600); font-size: 10px; }
.workspace .starred-filter.active { border-color: var(--blue-200); background: var(--blue-50); color: var(--blue-700); }
.workspace .starred-filter.active svg { fill: currentColor; color: var(--blue-600); }
.workspace .starred-filter.active .filter-count { background: #fff; color: var(--blue-700); }
.workspace .toolbar-state { min-height: 24px; margin: 0 2px 8px; }
.workspace .result-line { display: flex; min-height: 24px; align-items: center; justify-content: space-between; gap: 14px; color: var(--ink-600); font-size: 12px; }
.workspace .filter-summary { display: flex; min-width: 0; align-items: center; flex-wrap: wrap; gap: 6px; }
.workspace .filter-chip { display: inline-flex; min-height: 22px; max-width: 100%; align-items: center; gap: 5px; overflow-wrap: anywhere; border: 1px solid var(--blue-200); border-radius: 999px; padding: 2px 8px; background: var(--blue-50); color: var(--blue-700); font-size: 10.5px; font-weight: 680; }
.workspace .filter-chip svg { width: 11px; height: 11px; fill: currentColor; }
.workspace .clear-link { color: var(--blue-700); font-weight: 650; }
.workspace .sort-explanation { flex: 0 0 auto; }
.workspace .search-status-slot { margin-bottom: 12px; }
.workspace .search-status { display: flex; min-height: 54px; align-items: center; justify-content: space-between; gap: 16px; border: 1px solid; border-radius: 10px; padding: 9px 11px; font-size: 11.5px; }
.workspace .search-status-copy { display: flex; min-width: 0; align-items: flex-start; gap: 9px; }
.workspace .search-status-copy svg { width: 18px; height: 18px; flex: 0 0 auto; margin-top: 1px; }
.workspace .search-status-copy strong, .workspace .search-status-copy span { display: block; }
.workspace .search-status-copy strong { margin-bottom: 1px; font-size: 12px; }
.workspace .search-status-actions { display: flex; flex: 0 0 auto; gap: 6px; }
.workspace .search-status-actions .btn { min-height: 34px; padding: 7px 11px; box-shadow: none; font-size: 11.5px; }
.workspace .search-status.loading { border-color: var(--blue-200); background: var(--blue-50); color: #315674; }
.workspace .search-status.loading strong { color: #274f78; }
.workspace .search-status.error { border-color: var(--red-200); background: var(--red-100); color: var(--red-700); }
.workspace .search-status.error strong { color: #8f1723; }
.workspace .search-status.error .btn-retry { border-color: var(--red-700); background: var(--red-700); color: #fff; }
.workspace .search-status.error .btn-restore { border-color: #e8aab0; background: #fff; color: var(--red-700); }
.workspace .finder-spinner { width: 17px; height: 17px; flex: 0 0 auto; border: 2px solid var(--blue-200); border-top-color: var(--blue-600); border-radius: 50%; animation: finder-spin .8s linear infinite; }
.workspace .confirmed-note { display: inline-flex; align-items: center; gap: 5px; font-weight: 680; }
.workspace .is-error .confirmed-note { color: var(--red-700); }
.workspace .is-loading .document-list, .workspace .is-loading .pagination, .workspace .is-loading .empty-panel { opacity: .62; }
.workspace .is-loading .control { background-color: var(--panel); }
.workspace .document-list { display: grid; gap: 8px; }
.workspace .document-row { display: grid; min-height: 86px; grid-template-columns: minmax(0, 1fr) 80px; align-items: center; gap: 2px; border: 1px solid var(--ink-150); border-radius: 12px; padding: 0 7px 0 0; background: var(--paper); box-shadow: var(--shadow-sm); }
.workspace .document-row-link { display: grid; min-width: 0; min-height: 84px; grid-template-columns: 42px minmax(0, 1fr) 240px; align-items: center; gap: 15px; padding: 13px 8px 13px 16px; border-radius: 12px; }
.workspace .document-row-link:hover .doc-title { color: var(--blue-700); }
.workspace .doc-icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 10px; background: linear-gradient(145deg, var(--blue-50), var(--blue-100)); color: var(--blue-600); }
.workspace .doc-icon svg { width: 21px; height: 21px; }
.workspace .doc-main { display: block; min-width: 0; }
.workspace .doc-title, .workspace .doc-excerpt { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.workspace .doc-title { margin: 0 0 4px; color: var(--ink-950); font-size: 15px; font-weight: 670; }
.workspace .doc-excerpt { color: var(--ink-600); font-size: 12.5px; }
.workspace .doc-meta { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr) 92px; align-items: center; gap: 10px; color: var(--ink-600); font-size: 11.5px; }
.workspace .doc-updated { text-align: right; }
.workspace .doc-updated span { display: block; }
.workspace .type-badge { display: inline-flex; width: fit-content; max-width: 100%; align-items: center; gap: 5px; overflow: hidden; border: 1px solid var(--ink-150); border-radius: 6px; padding: 3px 7px; background: var(--ink-50); color: var(--ink-700); font-size: 11px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.workspace .type-dot { width: 6px; height: 6px; flex: 0 0 auto; border-radius: 50%; background: var(--blue-500); }
.workspace .document-actions { display: flex; align-items: center; justify-content: flex-end; }
.workspace .document-actions-menu { flex: 0 0 auto; }
.workspace .document-actions-trigger, .workspace .document-star-action { display: grid; width: 40px; height: 40px; min-height: 40px; place-items: center; border: 0; border-radius: 9px; padding: 0; background: transparent; color: var(--ink-500); cursor: pointer; }
.workspace .document-star-action { flex: 0 0 40px; }
.workspace .document-star-action svg { width: 18px; height: 18px; fill: none; }
.workspace .document-star-action:hover, .workspace .document-actions-trigger:hover { background: var(--ink-50); color: var(--ink-700); }
.workspace .document-star-action.is-starred { color: var(--blue-600); }
.workspace .document-star-action.is-starred svg { fill: currentColor; }
.workspace .document-star-action.is-pending { opacity: .62; }
.workspace .document-star-action.failed { color: var(--red-700); box-shadow: 0 0 0 3px rgba(180, 35, 47, .11); }
.workspace .pagination { display: flex; align-items: center; justify-content: space-between; margin-top: 18px; color: var(--ink-600); font-size: 12px; }
.workspace .pagination-actions { display: flex; gap: 7px; }
.workspace .pager { min-width: 40px; min-height: 40px; padding: 6px 9px; }
.workspace .pager.disabled { opacity: .45; cursor: default; }
.workspace .empty-panel { display: grid; min-height: 380px; place-items: center; border: 1px dashed var(--ink-300); border-radius: 16px; padding: 44px 24px; background: rgba(255, 254, 253, .75); text-align: center; }
.workspace .compact-empty { min-height: 260px; }
.workspace .empty-content { max-width: 430px; }
.workspace .empty-mark { display: grid; width: 58px; height: 58px; place-items: center; margin: 0 auto 18px; border-radius: 15px; background: var(--blue-50); color: var(--blue-600); }
.workspace .empty-mark.neutral { background: var(--ink-100); color: var(--ink-600); }
.workspace .empty-mark svg { width: 27px; height: 27px; }
.workspace .empty-content p { margin: 0 auto 21px; color: var(--ink-600); }
.workspace .empty-context { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px; margin-bottom: 21px; }
.workspace .starred-empty .empty-context span { border: 1px solid var(--ink-150); border-radius: 999px; padding: 4px 8px; background: #fff; color: var(--ink-600); font-size: 10.5px; }
.workspace .empty-actions { display: flex; justify-content: center; gap: 8px; }

.workspace .star-error-toast { position: fixed; z-index: 20; right: 28px; bottom: 28px; display: grid; width: min(410px, calc(100% - 28px)); grid-template-columns: 36px minmax(0, 1fr) auto; align-items: center; gap: 11px; border: 1px solid var(--red-200); border-radius: 13px; padding: 12px; background: #fff; box-shadow: var(--shadow-float); }
.workspace .star-error-toast[hidden] { display: none; }
.workspace .star-error-mark { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 9px; background: var(--red-100); color: var(--red-700); }
.workspace .star-error-mark svg { width: 19px; height: 19px; }
.workspace .star-error-copy { min-width: 0; }
.workspace .star-error-copy strong, .workspace .star-error-copy span { display: block; }
.workspace .star-error-copy strong { margin-bottom: 2px; color: var(--ink-950); font-size: 12.5px; }
.workspace .star-error-copy span { color: var(--ink-600); font-size: 11.5px; }
.workspace .star-error-actions { display: flex; align-items: center; gap: 3px; }
.workspace .star-error-retry { min-height: 34px; border: 1px solid var(--red-200); border-radius: 8px; padding: 7px 10px; background: var(--red-100); color: var(--red-700); font-size: 11.5px; font-weight: 700; cursor: pointer; }
.workspace .star-error-close { display: grid; width: 34px; height: 34px; place-items: center; border: 0; border-radius: 8px; background: transparent; color: var(--ink-500); cursor: pointer; }
.workspace .star-error-close svg { width: 15px; height: 15px; }

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

@media (prefers-reduced-motion: reduce) {
  .workspace .finder-spinner { animation: none; }
}

.workspace .trash-page .trash-back-link { margin-bottom: 21px; }
.workspace .trash-page-header { margin-bottom: 18px; }
.workspace .trash-retention-summary { display: inline-flex; align-items: center; gap: 6px; }
.workspace .trash-retention-summary svg { width: 14px; height: 14px; }
.workspace .trash-info { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 16px; border: 1px solid #c7dcf2; border-radius: 10px; padding: 11px 12px; background: var(--blue-50); color: #315674; font-size: 12px; }
.workspace .trash-info svg { width: 17px; height: 17px; flex: 0 0 auto; color: var(--blue-700); }
.workspace .trash-row { min-height: 86px; grid-template-columns: 42px minmax(0, 1fr) 154px 208px; gap: 15px; padding: 12px 14px 12px 16px; }
.workspace .trash-row .doc-icon { background: var(--ink-100); color: var(--ink-600); }
.workspace .trash-document-meta { min-width: 0; color: var(--ink-600); font-size: 11.5px; }
.workspace .trash-document-meta strong { display: block; margin-bottom: 3px; color: var(--ink-800); font-size: 12px; }
.workspace .trash-days-chip { display: inline-flex; width: fit-content; border: 1px solid var(--ink-150); border-radius: 6px; padding: 3px 7px; background: var(--ink-50); color: var(--ink-700); font-size: 11px; font-weight: 650; white-space: nowrap; }
.workspace .trash-days-chip.urgent { border-color: var(--red-200); background: var(--red-100); color: var(--red-700); }
.workspace .trash-row-actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }
.workspace .trash-row-actions form { display: flex; }
.workspace .trash-row-actions .btn { min-width: 92px; }
.workspace .trash-empty { min-height: 390px; }

.workspace .back-link { display: inline-flex; align-items: center; gap: 6px; color: var(--ink-600); font-size: 12.5px; font-weight: 630; }
.workspace .settings-breadcrumb .back-link { margin-bottom: 0; }
.workspace .settings-page { width: min(100% - 40px, 1040px); margin: 0 auto; padding: 28px 0 64px; }
.workspace .settings-breadcrumb { margin-bottom: 23px; }
.workspace .settings-heading { margin-bottom: 24px; }
.workspace .settings-shell { display: grid; grid-template-columns: 218px minmax(0, 1fr); gap: 26px; align-items: start; }
.workspace .settings-nav { position: sticky; top: 20px; display: grid; gap: 4px; }
.workspace .settings-nav-label { margin: 0 10px 8px; color: var(--ink-500); font-size: 10px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.workspace .nav-item { display: grid; min-height: 50px; grid-template-columns: 30px 1fr auto; align-items: center; gap: 9px; border: 1px solid transparent; border-radius: 10px; padding: 7px 9px; color: var(--ink-700); }
.workspace .nav-item.active { border-color: #c7dcf2; background: var(--blue-50); color: var(--blue-700); }
.workspace .nav-icon { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 8px; background: rgba(255, 255, 255, .68); }
.workspace .nav-copy, .workspace .nav-copy strong, .workspace .nav-copy small { display: block; min-width: 0; }
.workspace .nav-copy strong { font-size: 12.5px; }
.workspace .nav-copy small { margin-top: 1px; overflow: hidden; color: var(--ink-500); font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
.workspace .nav-badge { border-radius: 999px; padding: 2px 7px; background: #fff; color: var(--blue-700); font-size: 10px; font-weight: 700; }
.workspace .mobile-settings-tabs { display: none; }
.workspace .panel, .workspace .form-panel { overflow: hidden; border: 1px solid var(--ink-150); border-radius: 16px; background: var(--paper); box-shadow: var(--shadow-sm); }
.workspace .ai-settings-content { min-width: 0; }
.workspace .settings-model-card { width: 100%; max-width: none; min-height: 0; padding: 0; }
.workspace .panel-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; border-bottom: 1px solid var(--ink-150); padding: 21px 22px 18px; }
.workspace .panel-header p { max-width: 540px; margin: 4px 0 0; color: var(--ink-600); font-size: 12.5px; }
.workspace .panel-body, .workspace .form-panel-body { padding: 22px; }
.workspace .panel-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; border-top: 1px solid var(--ink-150); padding: 15px 22px; }
.workspace .panel-actions .btn { width: auto; }
.workspace .ai-model-footer { justify-content: space-between; gap: 14px; }
.workspace .panel-actions-note { display: flex; min-width: 0; align-items: center; gap: 7px; color: var(--ink-500); font-size: 11px; }
.workspace .panel-actions-note svg { width: 15px; height: 15px; flex: 0 0 auto; color: var(--green-700); }
.workspace .ai-model-form.is-pending .panel-actions-note { color: var(--blue-700); }
.workspace .ai-model-form.is-pending .panel-actions-note svg { color: var(--blue-700); }
.workspace .ai-model-form.is-attention .panel-actions-note { color: var(--amber-800); }
.workspace .ai-model-form.is-attention .panel-actions-note svg { color: var(--amber-700); }
.workspace .ai-model-save { min-width: 148px; }
.workspace .ai-model-save:disabled { border-color: #b7c4d0; background: #b7c4d0; color: #fff; cursor: not-allowed; }
.workspace .section-label { display: block; margin: 0 0 8px; color: var(--ink-700); font-size: 11.5px; font-weight: 700; }
.workspace .section-label span { color: var(--ink-500); font-weight: 500; }
.workspace .field-section + .field-section { margin-top: 20px; }
.workspace .status-chip { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 5px; border-radius: 999px; padding: 4px 8px; background: var(--green-100); color: var(--green-700); font-size: 10.5px; font-weight: 700; white-space: nowrap; }
.workspace .status-chip .status-dot { width: 6px; height: 6px; }
.workspace .status-chip .status-spinner { width: 10px; height: 10px; border-width: 1.5px; }
.workspace .status-chip.warning { background: #fff3d8; color: var(--amber-700); }
.workspace .status-chip.unchecked { background: var(--ink-100); color: var(--ink-600); }
.workspace .status-chip.checking { background: var(--blue-50); color: var(--blue-700); }
.workspace .provider-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.workspace .provider-card { display: grid; min-width: 0; min-height: 64px; grid-template-columns: 34px minmax(0, 1fr) 18px; align-items: center; gap: 10px; border: 1px solid var(--ink-200); border-radius: 10px; padding: 10px; background: #fff; color: var(--ink-900); text-align: left; cursor: pointer; }
.workspace .provider-card.selected { border: 2px solid var(--blue-500); padding: 9px; background: var(--blue-50); }
.workspace .provider-card.attention { border-color: #e4c78b; }
.workspace .provider-card.selected.attention { border: 2px solid var(--amber-200); padding: 9px; background: var(--amber-100); }
.workspace .provider-mark { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 9px; background: var(--ink-100); color: var(--ink-700); font-size: 12px; font-weight: 800; }
.workspace .provider-card.selected .provider-mark { background: #fff; color: var(--blue-700); }
.workspace .provider-card.selected.attention .provider-mark { color: var(--amber-800); }
.workspace .provider-copy, .workspace .provider-name { display: block; min-width: 0; }
.workspace .provider-name { font-size: 13px; font-weight: 700; }
.workspace .provider-status { display: flex; align-items: center; gap: 5px; margin-top: 2px; color: var(--ink-500); font-size: 10.5px; }
.workspace .provider-status.available { color: var(--green-700); }
.workspace .provider-status.attention { color: var(--amber-700); }
.workspace .status-dot { width: 7px; height: 7px; flex: 0 0 auto; border-radius: 50%; background: var(--green-700); }
.workspace .status-dot.neutral { background: var(--ink-500); }
.workspace .status-dot.warning { background: #d9840d; }
.workspace .provider-check { width: 17px; height: 17px; color: var(--blue-700); }
.workspace .provider-card:not(.selected) .provider-check { visibility: hidden; }
.workspace .model-list { display: grid; gap: 8px; }
.workspace .model-option { display: grid; min-height: 62px; grid-template-columns: 18px minmax(0, 1fr) auto; align-items: center; gap: 10px; border: 1px solid var(--ink-200); border-radius: 10px; padding: 9px 12px; background: #fff; cursor: pointer; }
.workspace .model-option.selected { border: 2px solid var(--blue-500); padding: 8px 11px; background: var(--blue-50); }
.workspace .model-option:has(.model-radio:disabled) { color: var(--ink-500); background: var(--ink-50); cursor: not-allowed; }
.workspace .model-option.selected:has(.model-radio:disabled) { border-color: var(--ink-300); background: #fff; color: var(--ink-700); }
.workspace .model-radio { width: 18px; height: 18px; margin: 0; accent-color: var(--blue-600); }
.workspace .model-copy, .workspace .model-name, .workspace .model-description { display: block; min-width: 0; }
.workspace .model-name { font-size: 13px; font-weight: 700; }
.workspace .model-description { margin-top: 2px; color: var(--ink-600); font-size: 11px; }
.workspace .model-meta { display: flex; align-items: center; gap: 10px; }
.workspace .model-tier { border-radius: 999px; padding: 3px 7px; background: var(--ink-100); color: var(--ink-600); font-size: 9.5px; font-weight: 700; white-space: nowrap; }
.workspace .model-availability { display: inline-flex; min-width: 78px; align-items: center; justify-content: flex-end; gap: 5px; color: var(--green-700); font-size: 10px; font-weight: 650; }
.workspace .model-availability svg { width: 15px; height: 15px; }
.workspace .model-availability.checking { color: var(--blue-700); }
.workspace .model-availability.unavailable { color: var(--red-700); }
.workspace .model-availability.not-verified { color: var(--ink-500); }
.workspace .ai-model-form.is-attention .model-availability { color: var(--ink-500); }
.workspace .model-availability .status-symbol { display: grid; width: 18px; height: 18px; place-items: center; }
.workspace .model-picker-fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.workspace .models-label { margin-bottom: 8px; }
.workspace .loading-line, .workspace .provider-summary { display: flex; min-height: 42px; align-items: center; justify-content: space-between; gap: 9px; margin-top: 12px; border: 1px solid #c9e7d3; border-radius: 10px; padding: 10px 12px; background: #f0faf4; color: #235f3a; font-size: 11.5px; }
.workspace .loading-line, .workspace .provider-summary.loading, .workspace .provider-summary.neutral { border-color: #c9d9e9; background: #f3f8fc; color: var(--ink-700); }
.workspace .provider-summary.attention { border-color: var(--amber-200); background: var(--amber-100); color: var(--amber-800); }
.workspace .summary-copy { display: flex; min-width: 0; align-items: center; gap: 8px; }
.workspace .summary-icon { width: 17px; height: 17px; flex: 0 0 auto; }
.workspace .summary-icon svg { width: 17px; height: 17px; }
.workspace .summary-action { flex: 0 0 auto; min-height: 30px; border: 0; padding: 4px; background: transparent; color: inherit; font-weight: 680; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }
.workspace .model-access-alert { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 11px; margin: 0 0 16px; border: 1px solid var(--amber-200); border-radius: 10px; padding: 12px; background: var(--amber-100); color: var(--amber-800); }
.workspace .model-access-alert-icon { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; background: #ffedbd; color: var(--amber-700); }
.workspace .model-access-alert-icon svg { width: 17px; height: 17px; }
.workspace .model-access-alert-copy { min-width: 0; }
.workspace .model-access-alert-title { margin: 0 0 3px; color: var(--amber-800); font-size: 13px; line-height: 18px; }
.workspace .model-access-alert-text { margin: 0; color: #79591f; font-size: 12px; line-height: 17px; }
.workspace .model-access-alert-actions { display: flex; gap: 8px; margin-top: 10px; }
.workspace .model-access-alert-actions .btn { min-height: 34px; padding: 6px 10px; font-size: 12px; box-shadow: none; }
.workspace .status-spinner { display: inline-block; width: 15px; height: 15px; border: 2px solid var(--blue-100); border-top-color: var(--blue-500); border-radius: 50%; animation: workspace-spin .8s linear infinite; }

.workspace .help-surface { display: grid; gap: 14px; }
.workspace .help-surface .panel-header p { max-width: 570px; }
.workspace .help-surface .panel-body { padding: 20px 22px 22px; }
.workspace .read-chip { display: inline-flex; flex: 0 0 auto; align-items: center; border-radius: 999px; padding: 4px 8px; background: var(--blue-50); color: var(--blue-700); font-size: 10.5px; font-weight: 700; white-space: nowrap; }
.workspace .trust-note { display: flex; align-items: center; gap: 12px; margin-bottom: 19px; border: 1px solid #c7dcf2; border-radius: 11px; padding: 12px 14px; background: var(--blue-50); color: #315674; }
.workspace .trust-note-icon { display: grid; width: 34px; height: 34px; flex: 0 0 auto; place-items: center; border-radius: 9px; background: #fff; color: var(--blue-700); }
.workspace .trust-note-icon svg { width: 18px; height: 18px; }
.workspace .trust-note strong { display: block; color: #274f78; font-size: 12.5px; }
.workspace .trust-note span { display: block; margin-top: 2px; font-size: 11.5px; }
.workspace .section-kicker { display: block; margin-bottom: 8px; color: var(--ink-700); font-size: 11.5px; font-weight: 700; }
.workspace .workflow-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.workspace .workflow-card { min-width: 0; border: 1px solid var(--ink-150); border-radius: 11px; padding: 13px; background: #fff; }
.workspace .workflow-number { display: grid; width: 28px; height: 28px; place-items: center; margin-bottom: 10px; border: 1px solid var(--blue-200); border-radius: 8px; background: var(--blue-50); color: var(--blue-700); font-size: 11px; font-weight: 800; }
.workspace .workflow-card strong { display: block; margin-bottom: 4px; color: var(--ink-900); font-size: 12.5px; }
.workspace .workflow-card p { margin: 0; color: var(--ink-600); font-size: 11px; line-height: 1.45; }
.workspace .help-columns { display: grid; grid-template-columns: 1.08fr .92fr; gap: 14px; }
.workspace .subpanel { border: 1px solid var(--ink-150); border-radius: 14px; padding: 18px; background: var(--paper); box-shadow: var(--shadow-sm); }
.workspace .subpanel-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 13px; }
.workspace .subpanel-header h2 { margin-bottom: 3px; font-size: 17px; }
.workspace .subpanel-header p { margin: 0; color: var(--ink-600); font-size: 11.5px; }
.workspace .device-label { display: inline-flex; flex: 0 0 auto; border-radius: 999px; padding: 3px 7px; background: var(--ink-100); color: var(--ink-600); font-size: 9.5px; font-weight: 700; }
.workspace .shortcut-list { display: grid; gap: 0; overflow: hidden; border: 1px solid var(--ink-150); border-radius: 10px; }
.workspace .shortcut-row { display: grid; min-height: 49px; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 8px 11px; background: #fff; }
.workspace .shortcut-row + .shortcut-row { border-top: 1px solid var(--ink-150); }
.workspace .shortcut-copy strong, .workspace .shortcut-copy small { display: block; }
.workspace .shortcut-copy strong { color: var(--ink-800); font-size: 11.5px; }
.workspace .shortcut-copy small { margin-top: 1px; color: var(--ink-500); font-size: 10px; }
.workspace .keys { display: flex; align-items: center; gap: 4px; }
.workspace kbd { min-width: 27px; border: 1px solid var(--ink-200); border-bottom-color: var(--ink-300); border-radius: 6px; padding: 3px 6px; background: var(--ink-50); box-shadow: 0 1px 0 #fff inset, 0 1px 1px rgba(23, 32, 42, .07); color: var(--ink-700); font: 650 10px/1.2 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; text-align: center; }
.workspace .recovery-list { display: grid; gap: 8px; }
.workspace .recovery-item { display: grid; grid-template-columns: 30px minmax(0, 1fr); align-items: start; gap: 10px; }
.workspace .recovery-icon { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 8px; background: var(--green-100); color: var(--green-700); }
.workspace .recovery-icon svg { width: 16px; height: 16px; }
.workspace .recovery-item strong { display: block; margin: 1px 0 2px; color: var(--ink-800); font-size: 11.5px; }
.workspace .recovery-item p { margin: 0; color: var(--ink-600); font-size: 10.5px; line-height: 1.42; }
.workspace .recovery-exit { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 15px; border-top: 1px solid var(--ink-150); padding-top: 13px; color: var(--ink-600); font-size: 10.5px; }
.workspace .text-link, .workspace .faq-answer a { color: var(--blue-700); font-weight: 700; }
.workspace .text-link { white-space: nowrap; }
.workspace .faq-panel { padding: 0; }
.workspace .faq-heading { padding: 18px 18px 12px; }
.workspace .faq-heading h2 { margin-bottom: 3px; font-size: 17px; }
.workspace .faq-heading p { margin: 0; color: var(--ink-600); font-size: 11.5px; }
.workspace .faq-list { border-top: 1px solid var(--ink-150); }
.workspace .faq-item { background: var(--paper); }
.workspace .faq-item + .faq-item { border-top: 1px solid var(--ink-150); }
.workspace .faq-item summary { display: grid; min-height: 51px; grid-template-columns: 28px minmax(0, 1fr) 20px; align-items: center; gap: 10px; padding: 8px 16px; cursor: pointer; list-style: none; }
.workspace .faq-item summary::-webkit-details-marker { display: none; }
.workspace .faq-mark { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 8px; background: var(--ink-100); color: var(--ink-700); font-weight: 750; }
.workspace .faq-title { color: var(--ink-800); font-size: 11.8px; font-weight: 680; }
.workspace .faq-chevron { color: var(--ink-500); font-size: 16px; transition: transform .15s ease; }
.workspace .faq-item[open] { background: #fbfdff; }
.workspace .faq-item[open] .faq-mark { background: var(--blue-50); color: var(--blue-700); }
.workspace .faq-item[open] .faq-chevron { transform: rotate(180deg); }
.workspace .faq-answer { margin: -1px 36px 0 54px; border-top: 1px solid var(--ink-150); padding: 12px 0 15px; color: var(--ink-600); font-size: 11.5px; }
.workspace .faq-answer p { margin: 0 0 8px; }
.workspace .faq-answer ol { display: grid; gap: 5px; margin: 0; padding-left: 18px; }
.workspace .faq-answer strong { color: var(--ink-800); }
.workspace .help-footer-note { display: flex; align-items: center; gap: 7px; color: var(--ink-500); font-size: 10.5px; }
.workspace .help-footer-note svg { width: 15px; height: 15px; flex: 0 0 auto; color: var(--green-700); }

.workspace .types-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.workspace .types-summary { max-width: 560px; margin: 0; color: var(--ink-600); font-size: 12px; }
.workspace .inline-notice { display: flex; align-items: flex-start; gap: 9px; margin-bottom: 14px; border: 1px solid #c7dcf2; border-radius: 10px; padding: 10px 12px; background: var(--blue-50); color: #315674; font-size: 11.5px; }
.workspace .inline-notice strong { display: block; margin-bottom: 2px; color: #274f78; }
.workspace .types-list { display: grid; gap: 8px; }
.workspace .type-row { display: grid; grid-template-columns: minmax(0, 1fr) 40px; align-items: center; gap: 8px; border: 1px solid var(--ink-150); border-radius: 12px; padding-right: 8px; background: #fff; }
.workspace .type-row-link { display: grid; min-width: 0; grid-template-columns: minmax(160px, .72fr) minmax(260px, 1.55fr) 96px; align-items: center; gap: 16px; padding: 14px 8px 14px 16px; border-radius: 12px; }
.workspace .type-name, .workspace .type-purpose { display: block; min-width: 0; }
.workspace .type-name strong { display: block; overflow-wrap: anywhere; font-size: 13.5px; }
.workspace .type-name small { display: block; margin-top: 3px; color: var(--ink-500); font-size: 10.5px; }
.workspace .purpose-copy { display: -webkit-box; overflow: hidden; color: var(--ink-700); font-size: 11.5px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.workspace .instruction-summary { display: flex; align-items: center; gap: 5px; overflow: hidden; margin-top: 4px; color: var(--ink-500); font-size: 10.5px; white-space: nowrap; }
.workspace .instruction-summary span:last-child { overflow: hidden; text-overflow: ellipsis; }
.workspace .usage-count { display: block; text-align: right; }
.workspace .usage-count strong, .workspace .usage-count small { display: block; }
.workspace .usage-count strong { color: var(--ink-800); font-size: 13px; }
.workspace .usage-count small { color: var(--ink-500); font-size: 10.5px; }
.workspace .usage-count.zero strong { color: var(--ink-500); }
.workspace .type-actions-menu { position: relative; }
.workspace .type-actions-panel { right: 0; min-width: 170px; }

.workspace .form-layout { display: grid; grid-template-columns: minmax(0, 1fr) 260px; gap: 22px; align-items: start; }
.workspace .form-top { margin-bottom: 20px; }
.workspace .field { margin-bottom: 19px; }
.workspace .field:last-child { margin-bottom: 0; }
.workspace .field-label { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-bottom: 6px; color: var(--ink-900); font-size: 12.5px; font-weight: 680; }
.workspace .optional { color: var(--ink-500); font-size: 10.5px; font-weight: 550; }
.workspace .hint { margin: 6px 0 0; color: var(--ink-600); font-size: 11.5px; }
.workspace .password-policy { display: flex; flex-wrap: wrap; gap: 5px 14px; margin: 7px 0 0; padding: 0; color: var(--ink-600); font-size: 10.5px; list-style: none; }
.workspace .password-policy li::before { margin-right: 5px; color: var(--ink-500); content: "○"; }
.workspace .textarea { min-height: 156px; resize: vertical; line-height: 1.5; }
.workspace .purpose-textarea { min-height: 84px; resize: vertical; }
.workspace .error-control { border-color: #d5626d; box-shadow: 0 0 0 3px rgba(180, 35, 47, .08); }
.workspace .field-error { display: flex; gap: 6px; margin: 6px 0 0; color: var(--red-700); font-size: 11.5px; font-weight: 600; }
.workspace .form-error-summary, .workspace .form-errors { display: flex; align-items: flex-start; gap: 9px; margin: 0 0 18px; border: 1px solid var(--red-200); border-radius: 10px; padding: 11px 12px; background: var(--red-100); color: var(--red-700); font-size: 11.5px; }
.workspace .form-errors ul { margin: 0; padding-left: 18px; }
.workspace .form-error-summary strong { display: block; margin-bottom: 2px; }
.workspace .side-card { border: 1px solid var(--ink-150); border-radius: 12px; padding: 15px; background: rgba(255, 255, 255, .7); }
.workspace .side-card + .side-card { margin-top: 10px; }
.workspace .side-card h3 { margin-bottom: 8px; font-size: 12.5px; }
.workspace .side-card p { margin: 0; color: var(--ink-600); font-size: 11.5px; }
.workspace .side-list { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; color: var(--ink-700); font-size: 11.5px; }
.workspace .side-list li { display: flex; gap: 7px; }
.workspace .check { color: var(--green-700); }
.workspace .impact-number { display: block; margin-bottom: 2px; color: var(--ink-950); font-size: 24px; font-weight: 730; }
.workspace .account-signout { margin-top: 18px; border: 1px solid var(--ink-200); border-radius: 12px; padding: 15px; background: rgba(255, 255, 255, .74); }
.workspace .danger-zone { margin-top: 12px; border: 1px solid var(--red-200); border-radius: 12px; padding: 15px; background: #fffafa; }
.workspace .danger-zone-header, .workspace .account-signout { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.workspace .account-signout strong { color: var(--ink-900); font-size: 13px; }
.workspace .danger-zone h3 { color: var(--red-700); }
.workspace .danger-zone p, .workspace .account-signout p { margin: 3px 0 0; color: var(--ink-600); font-size: 11.5px; }
.workspace .danger-zone .data-note { display: flex; align-items: flex-start; gap: 7px; margin-top: 10px; color: var(--ink-600); font-size: 10.5px; }
.workspace .danger-zone .data-note svg { width: 14px; height: 14px; flex: 0 0 auto; margin-top: 1px; color: var(--red-700); }
.workspace .account-field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 17px 14px; }
.workspace .account-field-grid .field { margin-bottom: 0; }
.workspace .account-field-grid .field.full, .workspace .account-field-grid .password-policy { grid-column: 1 / -1; }
.workspace .account-field-grid .password-policy { margin-top: -8px; }
.workspace .account-content-column, .workspace .active-sessions-frame { display: block; min-width: 0; }
.workspace .active-sessions-frame + .account-form { margin-top: 16px; }
.workspace .sessions-panel-header > div:first-child { min-width: 0; }
.workspace .sessions-panel-header p { max-width: 520px; }
.workspace .session-heading-actions { display: flex; flex: 0 0 auto; align-items: center; gap: 8px; }
.workspace .session-heading-actions .count-pill { color: var(--ink-600); font-size: 10.5px; font-weight: 700; white-space: nowrap; }
.workspace .sessions-panel-body { padding: 0 22px; }
.workspace .session-list { margin: 0; padding: 0; list-style: none; }
.workspace .session-row { display: grid; min-height: 82px; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: 12px; border-bottom: 1px solid var(--ink-150); padding: 14px 0; }
.workspace .session-row:last-child { border-bottom: 0; }
.workspace .device-mark { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 10px; background: var(--ink-100); color: var(--ink-700); }
.workspace .session-row.current .device-mark { background: var(--blue-50); color: var(--blue-700); }
.workspace .device-mark svg { width: 20px; height: 20px; }
.workspace .session-copy, .workspace .session-title-line, .workspace .session-title { min-width: 0; }
.workspace .session-title-line { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.workspace .session-title { color: var(--ink-900); font-size: 13px; font-weight: 700; overflow-wrap: anywhere; }
.workspace .session-chip { display: inline-flex; align-items: center; gap: 4px; border-radius: 999px; padding: 3px 7px; background: var(--blue-50); color: var(--blue-700); font-size: 9.5px; font-weight: 750; }
.workspace .session-chip::before { width: 5px; height: 5px; border-radius: 50%; background: var(--green-700); content: ""; }
.workspace .session-meta { display: flex; min-width: 0; align-items: center; flex-wrap: wrap; gap: 3px 7px; margin-top: 3px; color: var(--ink-600); font-size: 11px; }
.workspace .session-meta > * { min-width: 0; overflow-wrap: anywhere; }
.workspace .session-meta > * + *::before { margin-right: 7px; color: var(--ink-300); content: "•"; }
.workspace .session-revoke-form { display: flex; }
.workspace .session-action { min-width: 86px; min-height: 36px; padding: 7px 11px; box-shadow: none; font-size: 11.5px; }
.workspace .current-label { color: var(--green-700); font-size: 10.5px; font-weight: 700; white-space: nowrap; }
.workspace .session-row.is-pending .session-copy, .workspace .session-row.is-pending .device-mark { opacity: .62; }
.workspace .session-panel-footer { display: flex; min-height: 66px; align-items: center; border-top: 1px solid var(--ink-150); padding: 13px 22px; background: var(--panel); }
.workspace .session-panel-footer p { max-width: 540px; margin: 0; color: var(--ink-500); font-size: 10.5px; line-height: 1.45; }
.workspace .privacy-mark { color: var(--green-700); font-weight: 800; }
.workspace .session-state-banner { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin: 16px 22px 0; border: 1px solid; border-radius: 10px; padding: 10px 11px; font-size: 11.5px; }
.workspace .session-state-copy { display: grid; min-width: 0; flex: 1 1 auto; grid-template-columns: 20px minmax(0, 1fr); align-items: start; gap: 8px; }
.workspace .session-state-copy svg { width: 18px; height: 18px; margin-top: 1px; }
.workspace .session-state-copy strong, .workspace .session-state-copy span { display: block; }
.workspace .session-state-copy strong { margin-bottom: 1px; font-size: 12px; }
.workspace .session-state-banner.pending { border-color: var(--blue-200); background: var(--blue-50); color: #315674; }
.workspace .session-state-banner.error { border-color: var(--red-200); background: var(--red-100); color: var(--red-700); }
.workspace .session-state-banner.success { border-color: #c8e6d3; background: var(--green-100); color: var(--green-700); }
.workspace .session-retry { min-height: 34px; flex: 0 0 auto; border-color: var(--red-700); padding: 7px 11px; background: var(--red-700); box-shadow: none; color: #fff; font-size: 11.5px; }
.workspace .session-spinner { display: inline-block; width: 16px; height: 16px; flex: 0 0 auto; border: 2px solid var(--blue-200); border-top-color: var(--blue-600); border-radius: 50%; animation: workspace-spin .8s linear infinite; }
.workspace .session-empty { display: grid; min-height: 118px; grid-template-columns: 36px minmax(0, 1fr); align-items: center; gap: 12px; border-top: 1px solid var(--ink-150); padding: 16px 0; }
.workspace .session-empty-mark { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 9px; background: var(--green-100); color: var(--green-700); }
.workspace .session-empty-mark svg { width: 18px; height: 18px; }
.workspace .session-empty strong, .workspace .session-empty span { display: block; }
.workspace .session-empty strong { margin-bottom: 2px; color: var(--ink-900); font-size: 12.5px; }
.workspace .session-empty span { color: var(--ink-600); font-size: 11px; }
.session-dialog-open { overflow: hidden; }
.session-dialog-layer { position: fixed; z-index: 1000; inset: 0; display: grid; place-items: center; padding: 24px; background: rgba(23, 32, 42, .5); backdrop-filter: blur(1.5px); }
.session-dialog { width: min(100%, 520px); overflow: hidden; border: 1px solid rgba(255, 255, 255, .6); border-radius: 17px; background: #fffefd; box-shadow: 0 24px 80px rgba(23, 32, 42, .22); }
.session-sheet-handle { display: none; }
.session-dialog-body { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 13px; padding: 22px 22px 19px; }
.session-dialog-mark { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 11px; background: #fef2f2; color: #b4232f; }
.session-dialog-mark svg { width: 22px; height: 22px; }
.session-dialog h2 { margin-bottom: 7px; font-size: 21px; }
.session-dialog p { margin-bottom: 0; color: #667382; font-size: 12.5px; }
.session-dialog-impact { display: flex; align-items: flex-start; gap: 7px; margin-top: 14px; border: 1px solid #e8ebef; border-radius: 10px; padding: 10px 11px; background: #f7f8fa; color: #4c5967; font-size: 11px; }
.session-dialog-impact svg { width: 15px; height: 15px; flex: 0 0 auto; margin-top: 1px; color: #1d6a3d; }
.session-dialog-status { margin-top: 10px; font-size: 11px !important; }
.session-dialog-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; border-top: 1px solid #e8ebef; padding: 14px 22px; background: #fbfcfd; }
.session-dialog-actions .btn { min-width: 104px; }
.workspace .session-dialog-submit, .workspace .session-dialog-submit:hover { border-color: var(--red-700); background: var(--red-700); color: #fff; }
.workspace .session-dialog-spinner { border-color: rgba(255, 255, 255, .38); border-top-color: #fff; }
.workspace .document-form-layout { width: min(100%, 760px); margin: 0 auto; }
.workspace .document-form-layout .page-header > div { width: 100%; min-width: 0; }
.workspace .current-doc { display: flex; width: 100%; max-width: 100%; min-width: 0; align-items: center; gap: 9px; margin-top: 11px; border: 1px solid var(--ink-150); border-radius: 9px; padding: 10px 12px; background: var(--ink-50); color: var(--ink-600); font-size: 11.5px; overflow-wrap: anywhere; }
.workspace .current-doc .type-badge, .workspace .current-doc > span:last-child { min-width: 0; }
.workspace .current-doc .type-badge { flex: 0 1 auto; }
.workspace .current-doc > span:last-child { flex: 1 1 auto; }
.workspace .type-choice-fieldset { min-width: 0; padding: 0; border: 0; }
.workspace .type-choice-hint { margin: -1px 0 10px; }
.workspace .type-choice-list { display: grid; gap: 8px; }
.workspace .type-choice { display: grid; grid-template-columns: 18px minmax(0, 1fr) auto; align-items: center; gap: 11px; border: 1px solid var(--ink-200); border-radius: 10px; padding: 11px 12px; background: #fff; cursor: pointer; }
.workspace .type-choice:has(input:checked) { border: 2px solid var(--blue-500); padding: 10px 11px; background: var(--blue-50); }
.workspace .type-choice input { width: 16px; height: 16px; margin: 0; accent-color: var(--blue-500); }
.workspace .type-choice-copy, .workspace .type-choice-copy strong, .workspace .type-choice-copy small { display: block; min-width: 0; }
.workspace .type-choice-copy strong { font-size: 12.5px; }
.workspace .type-choice-copy small { margin-top: 2px; color: var(--ink-600); font-size: 11px; }
.workspace .shared-tag { border-radius: 999px; padding: 3px 7px; background: #fff; color: var(--blue-700); font-size: 9.5px; font-weight: 700; }
.workspace .type-choice-add { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 9px; border-top: 1px solid var(--ink-150); padding-top: 13px; color: var(--ink-600); font-size: 11.5px; }
.workspace .type-choice-add a { color: var(--blue-700); font-weight: 680; }

.destructive-dialog-open { overflow: hidden; }
.destructive-dialog-open .tipjar-button, .workspace .tipjar-button { display: none !important; }
.destructive-dialog-status { position: fixed; right: 16px; bottom: 16px; z-index: 1002; max-width: 360px; color: #b4232f; }
.destructive-dialog-layer { position: fixed; z-index: 1000; inset: 0; display: grid; place-items: center; padding: 24px; }
.destructive-dialog-backdrop { position: absolute; inset: 0; background: rgba(23, 32, 42, .5); }
.destructive-dialog-layer > turbo-frame { position: relative; z-index: 1; display: block; width: min(100%, 480px); }
.destructive-dialog-layer .document-delete-dialog { width: 100%; overflow: hidden; border: 1px solid rgba(255, 255, 255, .6); border-radius: 16px; background: #fff; box-shadow: 0 24px 60px rgba(23, 32, 42, .18); }
.destructive-dialog-layer .document-delete-body { padding: 25px 25px 20px; }
.destructive-dialog-layer .document-delete-danger-mark { display: grid; width: 44px; height: 44px; place-items: center; margin-bottom: 16px; border: 1px solid #fecaca; border-radius: 12px; background: #fef2f2; color: #b4232f; }
.destructive-dialog-layer .document-delete-danger-mark svg { width: 22px; height: 22px; }
.destructive-dialog-layer .document-delete-title { margin: 0 0 7px; color: #17202a; font-size: 21px; overflow-wrap: anywhere; }
.destructive-dialog-layer .document-delete-copy { margin: 0; color: #667382; font-size: 13px; }
.destructive-dialog-layer .document-delete-impact { display: grid; grid-template-columns: 1fr; gap: 7px; margin-top: 17px; border: 1px solid #e8ebef; border-radius: 10px; padding: 12px; background: #f7f8fa; }
.destructive-dialog-layer .type-delete-dialog .document-delete-impact { grid-template-columns: 38px minmax(0, 1fr); gap: 10px; }
.destructive-dialog-layer .document-delete-impact.safe-impact { background: #e9f7ef; }
.destructive-dialog-layer .document-delete-impact.safe-impact { border-color: #c8e6d3; color: #1d6a3d; }
.destructive-dialog-layer .document-delete-impact-row { display: flex; align-items: center; gap: 8px; color: #4c5967; font-size: 11.5px; }
.destructive-dialog-layer .account-delete-dialog .impact-heading { margin: 0 0 2px; color: #34404d; font-size: 11.5px; font-weight: 700; }
.destructive-dialog-layer .account-delete-dialog .document-delete-impact-row { display: grid; grid-template-columns: 26px minmax(0, 1fr); gap: 9px; }
.destructive-dialog-layer .account-delete-dialog .impact-number, .destructive-dialog-layer .account-delete-dialog .impact-icon { display: grid; width: 26px; height: 26px; place-items: center; border-radius: 7px; background: #fff; color: #b4232f; font-size: 10.5px; font-weight: 750; }
.destructive-dialog-layer .account-delete-dialog .impact-icon svg { width: 14px; height: 14px; }
.destructive-dialog-layer .safe-impact .document-delete-impact-row { color: #1d6a3d; }
.destructive-dialog-layer .document-delete-error { margin: 14px 0 0; color: #b4232f; font-size: 11.5px; font-weight: 650; }
.destructive-dialog-layer .impact-number-small { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 9px; background: #fff7df; color: #8a5c10; }
.destructive-dialog-layer .safe-impact .impact-number-small { background: #fff; color: #1d6a3d; }
.destructive-dialog-layer .document-delete-impact strong, .destructive-dialog-layer .document-delete-impact small { display: block; }
.destructive-dialog-layer .document-delete-impact strong { font-size: 12.5px; }
.destructive-dialog-layer .document-delete-impact small { margin-top: 3px; color: #667382; font-size: 11px; }
.destructive-dialog-layer .modal-field { margin-top: 17px; }
.destructive-dialog-layer .modal-field + .modal-field { margin-top: 13px; }
.destructive-dialog-layer .modal-field .field-label code { color: #4c5967; font-family: inherit; font-size: 11.5px; font-weight: 700; overflow-wrap: anywhere; }
.destructive-dialog-layer .confirmation-check { display: flex; align-items: flex-start; gap: 9px; margin-top: 15px; color: #4c5967; font-size: 11.5px; }
.destructive-dialog-layer .confirmation-check input { width: 17px; height: 17px; flex: 0 0 auto; margin: 0; accent-color: #0b6bdc; }
.destructive-dialog-layer .acknowledgment-error { margin-left: 26px; }
.destructive-dialog-layer .account-delete-error-summary { margin: 15px 0 0; }
.destructive-dialog-layer .document-delete-actions { display: flex; justify-content: flex-end; gap: 8px; border-top: 1px solid #e8ebef; padding: 15px 25px; background: #fbfcfd; }
.destructive-dialog-layer .document-delete-button { display: inline-flex; min-height: 38px; align-items: center; justify-content: center; gap: 7px; border: 1px solid #dce1e7; border-radius: 9px; padding: 8px 13px; background: #fff; color: #34404d; font-weight: 650; }
.destructive-dialog-layer .document-delete-button--cancel:focus { border-color: #b6d7fb; box-shadow: 0 0 0 3px rgba(0, 123, 255, .14); }
.destructive-dialog-layer .document-delete-button--danger { border-color: #b4232f; background: #b4232f; color: #fff; }
.destructive-dialog-layer .account-delete-dialog .document-delete-button--danger { min-width: 132px; }
.destructive-dialog-layer .document-delete-button:disabled { opacity: .5; cursor: not-allowed; }
.destructive-dialog-layer .account-delete-spinner { display: inline-block; width: 14px; height: 14px; border: 2px solid rgba(255, 255, 255, .38); border-top-color: #fff; border-radius: 50%; animation: workspace-spin .8s linear infinite; }
.destructive-dialog-layer .account-delete-spinner[hidden] { display: none; }
.destructive-dialog-layer .document-delete-sheet-handle { display: none; }
.destructive-dialog-layer .permanent-confirm-field { margin-top: 18px; }
.destructive-dialog-layer .permanent-confirm-field .field-label code { color: #4c5967; font-family: inherit; font-size: 11.5px; font-weight: 700; overflow-wrap: anywhere; }
.destructive-dialog-layer .permanent-confirm-help { margin: 6px 0 0; color: #667382; font-size: 11px; }
.destructive-dialog-layer .permanent-delete-warning { margin: 14px 0 0; color: #b4232f; font-size: 11px; font-weight: 650; }

.workspace .first-draft-page { padding-top: 30px; }
.workspace .first-draft-page .dashboard-notice { margin-bottom: 22px; }
.workspace .first-draft-heading { margin-bottom: 22px; }
.workspace .first-draft-heading .subtitle { max-width: 680px; }
.workspace .first-draft-grid { display: grid; grid-template-columns: minmax(0, 1fr) 294px; align-items: start; gap: 20px; }
.workspace .first-draft-panel, .workspace .first-draft-guide { overflow: hidden; border: 1px solid var(--ink-150); border-radius: 16px; background: var(--paper); box-shadow: var(--shadow-sm); }
.workspace .first-draft-panel { box-shadow: 0 8px 30px rgba(23, 32, 42, .055); }
.workspace .first-draft-panel-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--ink-150); padding: 19px 22px 17px; }
.workspace .first-draft-panel-header h2 { margin: 0 0 4px; }
.workspace .first-draft-panel-header p { margin: 0; color: var(--ink-600); font-size: 12.5px; }
.workspace .first-draft-time { display: inline-flex; flex: 0 0 auto; align-items: center; border-radius: 999px; padding: 4px 8px; background: var(--blue-50); color: var(--blue-700); font-size: 10.5px; font-weight: 700; white-space: nowrap; }
.workspace .first-draft-panel-body { padding: 20px 22px 22px; }
.workspace .first-draft-error-summary { margin-bottom: 17px; }
.workspace .first-draft-mode-fieldset { min-width: 0; margin: 0 0 17px; padding: 0; border: 0; }
.workspace .first-draft-mode-label { display: block; width: 100%; margin: 0 0 8px; color: var(--ink-800); font-size: 12.5px; font-weight: 700; }
.workspace .first-draft-mode-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.workspace .first-draft-mode-card { display: grid; min-height: 66px; grid-template-columns: 30px minmax(0, 1fr); align-items: center; gap: 10px; border: 1px solid var(--ink-200); border-radius: 10px; padding: 9px 10px; background: #fff; color: var(--ink-900); text-align: left; cursor: pointer; }
.workspace .first-draft-mode-card.selected { border: 2px solid var(--blue-500); padding: 8px 9px; background: var(--blue-50); }
.workspace .first-draft-mode-icon { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 8px; background: var(--ink-100); color: var(--ink-700); }
.workspace .first-draft-mode-card.selected .first-draft-mode-icon { background: #fff; color: var(--blue-700); }
.workspace .first-draft-mode-icon svg { width: 17px; height: 17px; }
.workspace .first-draft-mode-copy, .workspace .first-draft-mode-copy strong, .workspace .first-draft-mode-copy small { display: block; min-width: 0; }
.workspace .first-draft-mode-copy strong { color: var(--ink-900); font-size: 12px; }
.workspace .first-draft-mode-copy small { margin-top: 2px; color: var(--ink-600); font-size: 10.5px; line-height: 1.28; }
.workspace .first-draft-content-field { margin-top: -2px; }
.workspace .first-draft-textarea { min-height: 138px; resize: vertical; line-height: 1.55; }
.workspace .first-draft-hint { display: flex; min-height: 17px; align-items: flex-start; justify-content: space-between; gap: 16px; margin-top: 6px; color: var(--ink-500); font-size: 10.5px; }
.workspace .first-draft-blank-message { display: flex; gap: 10px; margin: -2px 0 17px; border: 1px solid var(--blue-200); border-radius: 10px; padding: 12px; background: var(--blue-50); color: var(--ink-700); font-size: 11.5px; }
.workspace .first-draft-blank-message svg { width: 18px; height: 18px; flex: 0 0 auto; color: var(--blue-700); }
.workspace .first-draft-blank-message strong { display: block; margin-bottom: 2px; color: var(--ink-900); }
.workspace .first-draft-type-field { margin-bottom: 0; }
.workspace .first-draft-type-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 10px; }
.workspace .first-draft-type-help { display: flex; min-height: 42px; align-items: center; color: var(--ink-500); font-size: 10.5px; white-space: nowrap; }
.workspace .first-draft-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px solid var(--ink-150); padding: 14px 22px; background: var(--panel); }
.workspace .first-draft-save-note { display: flex; min-height: 20px; align-items: center; gap: 6px; color: var(--ink-500); font-size: 10.5px; }
.workspace .first-draft-save-note > span:first-child { color: var(--green-700); font-weight: 800; }
.workspace .first-draft-save-note.is-error { color: var(--red-700); }
.workspace .first-draft-save-note.is-error > span:first-child { color: var(--red-700); }
.workspace .first-draft-submit { min-width: 196px; }
.workspace .first-draft-guide { padding: 19px; }
.workspace .first-draft-guide-kicker { display: flex; align-items: center; gap: 8px; margin-bottom: 14px; color: var(--blue-700); font-size: 10.5px; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.workspace .first-draft-guide-kicker span { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 7px; background: var(--blue-50); font-size: 12px; }
.workspace .first-draft-guide h2 { margin-bottom: 6px; font-size: 18px; }
.workspace .first-draft-guide > p { margin: 0 0 18px; color: var(--ink-600); font-size: 12px; }
.workspace .first-draft-steps { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.workspace .first-draft-steps li { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 10px; }
.workspace .first-draft-steps li > span { display: grid; width: 28px; height: 28px; place-items: center; border: 1px solid var(--blue-200); border-radius: 8px; background: var(--blue-50); color: var(--blue-700); font-size: 11px; font-weight: 800; }
.workspace .first-draft-steps strong, .workspace .first-draft-steps small { display: block; }
.workspace .first-draft-steps strong { margin: 1px 0 2px; color: var(--ink-900); font-size: 12px; }
.workspace .first-draft-steps small { color: var(--ink-600); font-size: 10.8px; line-height: 1.4; }
.workspace .first-draft-trust { margin-top: 18px; border-top: 1px solid var(--ink-150); padding-top: 15px; }
.workspace .first-draft-trust > strong { display: flex; align-items: center; gap: 7px; margin-bottom: 8px; color: var(--ink-800); font-size: 11.5px; }
.workspace .first-draft-trust svg { width: 16px; height: 16px; color: var(--green-700); }
.workspace .first-draft-trust ul { display: grid; gap: 6px; margin: 0; padding: 0; color: var(--ink-600); font-size: 10.7px; list-style: none; }
.workspace .first-draft-trust li { display: flex; gap: 7px; }
.workspace .first-draft-trust li::before { color: var(--green-700); font-weight: 800; content: "✓"; }

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

@media (prefers-reduced-motion: reduce) {
  .workspace *, .workspace *::before, .workspace *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
  .workspace .session-spinner { animation: none; }
}
