:root {
  --ink:#17232c; --slate:#5f6e75; --paper:#f4f6f4; --panel:#fff; --line:#d5ddda;
  --signal:#006e62; --signal-pale:#d9ebe5; --danger:#9d3028;
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
  font-size:14px; color:var(--ink); background:var(--paper);
}
* { box-sizing:border-box; }
[hidden] { display:none !important; }
body { margin:0; min-width:320px; }
a { color:var(--signal); text-underline-offset:3px; }
button,input,select,textarea { font:inherit; }
:focus-visible { outline:3px solid #6fb7ac; outline-offset:3px; }
button { cursor:pointer; }
button:disabled { cursor:default; opacity:.55; }
h1,h2,h3,p { margin-top:0; }
h1 { font-size:24px; line-height:1.4; margin-bottom:4px; font-weight:650; }
h2 { font-size:17px; margin-bottom:12px; }
h3 { font-size:15px; }
p { line-height:1.6; }
small,.muted { font-size:12px; color:var(--slate); }
.eyebrow { display:none; }
.app-sidebar { width:208px; position:fixed; inset:0 auto 0 0; display:flex; flex-direction:column; border-right:1px solid var(--line); background:#ecf1ee; padding:24px 14px 16px; z-index:30; }
.sidebar-brand { display:flex; align-items:center; justify-content:space-between; padding:0 10px 26px; }
.wordmark { color:var(--ink); text-decoration:none; font:600 14px ui-monospace,monospace; letter-spacing:.03em; }
.wordmark small { display:block; font:12px/1.5 -apple-system,BlinkMacSystemFont,sans-serif; margin-top:5px; }
.primary-nav { display:flex; flex-direction:column; gap:4px; overflow:auto; min-height:0; }
.primary-nav a { padding:10px 14px; text-decoration:none; color:var(--slate); border-radius:5px; }
.primary-nav a:hover { background:#e0e9e4; color:var(--ink); }
.primary-nav a[aria-current] { color:var(--signal); background:var(--signal-pale); font-weight:650; box-shadow:inset 3px 0 var(--signal); }
.nav-group-label { font-size:12px; color:var(--slate); padding:24px 14px 6px; }
.account-tools { margin-top:auto; padding:18px 12px 0; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; gap:10px 16px; font-size:12px; }
.account-tools strong { width:100%; font-size:14px; overflow-wrap:anywhere; }
.account-tools a { color:var(--slate); text-decoration:none; }
.account-tools form { margin:0; }
.sidebar-version { display:block; flex-shrink:0; padding:12px 12px 0; overflow-wrap:anywhere; font-size:11px; }
.app-main { margin-left:208px; padding:24px 28px; min-width:0; }
.mobile-bar,.mobile-only { display:none; }
.page-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:20px; }
.page-heading p { color:var(--slate); margin:0; }
.page-heading .admin-nav { display:none; }
h1 + p { margin-top:6px; }
.panel { padding:20px; background:var(--panel); border:1px solid var(--line); border-radius:6px; min-width:0; }
.panel + .panel { margin-top:16px; }
.primary-button,.secondary-button { padding:10px 15px; border-radius:5px; line-height:1.4; font-weight:600; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; gap:6px; }
.primary-button { color:white; background:var(--signal); border:1px solid var(--signal); }
.secondary-button { color:var(--ink); background:white; border:1px solid var(--line); }
.text-button { color:var(--slate); border:0; background:transparent; padding:4px 0; }
.action-row { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.form-stack { display:grid; gap:16px; }
.narrow-form { max-width:540px; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
label { display:grid; gap:7px; font-size:13px; font-weight:600; min-width:0; }
input,select,textarea { width:100%; padding:10px 12px; border:1px solid var(--line); border-radius:4px; color:var(--ink); background:white; min-width:0; }
textarea { resize:vertical; line-height:1.6; }
.check { display:flex; align-items:center; gap:8px; }
.check input { width:auto; }
.notice { padding:12px 16px; border-radius:4px; font-size:13px; margin:0; overflow-wrap:anywhere; }
.notice.error { background:#fff0ef; border-left:3px solid var(--danger); color:#70241f; }
.notice.success { background:var(--signal-pale); border-left:3px solid var(--signal); }
.danger-text { color:var(--danger); }
.visually-hidden { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
details > summary { cursor:pointer; color:var(--signal); padding:10px 0; }
details > form,details > .form-stack { margin-top:12px; }
pre,.history-text { white-space:pre-wrap; overflow-wrap:anywhere; font:12px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace; background:#f0f3f1; padding:14px; border-radius:4px; max-height:48vh; overflow:auto; }
.list-row,.user-row { padding:16px 0; display:flex; justify-content:space-between; gap:20px; border-bottom:1px solid var(--line); align-items:center; min-width:0; }
.list-row:last-child,.user-row:last-child { border-bottom:0; }
.list-row > div,.user-row > div { min-width:0; }
.list-row h2 { font-size:15px; margin-bottom:6px; overflow-wrap:anywhere; }
.list-row p { margin:4px 0; }
.user-row strong,.user-row small { display:block; }
.user-row small { margin-top:6px; }
.user-actions { display:flex; gap:8px; align-items:flex-start; flex-wrap:wrap; }
.user-actions summary { font-size:12px; padding:10px 0; }
.reset-form { display:grid; gap:8px; }
.catalog-row { padding:16px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.catalog-row:last-child { border-bottom:0; }
.row-heading { display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.catalog-row p { margin:8px 0; }
.tag { font-size:12px; color:var(--slate); background:var(--paper); padding:3px 7px; border-radius:4px; }
.pager { display:flex; gap:20px; align-items:center; justify-content:flex-end; margin-top:20px; }
.welcome-actions { margin-bottom:24px; }
.workspace-page { height:100dvh; min-height:620px; display:flex; flex-direction:column; gap:14px; }
.workspace-page .page-heading { margin:0; flex-shrink:0; }
.workspace-controls { flex-shrink:0; background:var(--paper); position:sticky; top:0; z-index:10; padding:0 0 10px; border-bottom:1px solid var(--line); }
.research-submit-row { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.research-actions { margin-left:auto; }
.research-actions select { min-width:250px; max-width:360px; }
.editor-meta { display:flex; gap:8px 18px; flex-wrap:wrap; color:var(--slate); font-size:12px; margin-top:12px; }
.workspace-body { flex:1; min-height:0; display:flex; gap:16px; position:relative; }
.editor-panel { flex:1; min-width:0; display:flex; flex-direction:column; padding:0; overflow:hidden; }
.editor-label { padding:12px 20px 8px; font-size:12px; color:var(--slate); display:flex; justify-content:space-between; gap:10px; }
#prompt-text { width:100%; flex:1; min-height:300px; resize:none; border:0; border-radius:0; padding:12px max(20px,calc((100% - 1000px) / 2)); font-size:16px; line-height:1.65; }
#prompt-text:focus-visible { outline:2px solid #6fb7ac; outline-offset:-2px; }
.feedback-area { flex-shrink:0; max-height:25vh; overflow:auto; }
.feedback-area p { margin:0; }
.feedback-area .action-row { margin-top:10px; }
.context-panel { width:340px; flex-shrink:0; overflow:auto; padding:16px; background:white; border:1px solid var(--line); border-radius:6px; }
.research-list { padding-top:4px; padding-bottom:4px; }
.research-row { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:16px 0; border-bottom:1px solid var(--line); color:var(--ink); text-decoration:none; }
.research-row:last-child { border-bottom:0; }
.research-row > div:first-child { min-width:0; }
.research-row strong { display:block; overflow-wrap:anywhere; }
.research-row p { margin:6px 0 0; }
.research-row-meta { display:grid; justify-items:end; gap:8px; flex:none; font-size:12px; color:var(--slate); }
.status-tag { display:inline-flex; padding:5px 9px; border-radius:999px; font-size:12px; font-weight:650; color:#34504a; background:#e2e9e6; }
.status-running,.status-completed { color:#075e54; background:var(--signal-pale); }
.status-failed,.status-interrupted { color:#792720; background:#f8deda; }
.status-stopping,.status-cancelled { color:#695d37; background:#f2ead2; }
.research-heading { position:sticky; top:0; z-index:10; padding-bottom:12px; background:var(--paper); border-bottom:1px solid var(--line); }
.research-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:16px; align-items:start; }
.research-output-panel { min-height:60vh; }
.output-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.stream-output { max-height:none; min-height:50vh; background:transparent; padding:0; font:14px/1.75 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif; }
.markdown-output { font-size:15px; line-height:1.75; overflow-wrap:anywhere; }
.markdown-output h1 { font-size:22px; margin:24px 0 10px; }
.markdown-output h2 { margin-top:22px; }
.markdown-output h3 { margin-top:18px; }
.markdown-output p { margin:0 0 12px; }
.markdown-output .markdown-list { padding-left:16px; }
.research-evidence { min-width:0; }
.research-evidence .panel + .panel { margin-top:12px; }
.context-heading { display:flex; justify-content:space-between; align-items:center; position:sticky; top:-16px; background:white; z-index:1; padding:6px 0 12px; }
.context-heading h2 { margin:0; }
.history-row { padding:12px 0; border-bottom:1px solid var(--line); }
.history-row p { margin:6px 0; font-size:13px; }
.history-row .secondary-button { padding:6px 9px; font-size:12px; }
.busy-overlay { position:fixed; inset:0; z-index:100; background:rgba(23,35,44,.32); display:grid; place-items:center; padding:20px; }
.busy-card { width:min(400px,100%); text-align:center; background:white; padding:32px; border-radius:10px; box-shadow:0 20px 70px #17232c30; }
.busy-card h2 { margin:18px 0 8px; font-size:20px; }
.busy-card p { color:var(--slate); margin-bottom:10px; }
.busy-elapsed { font-variant-numeric:tabular-nums; font-size:16px; }
.spinner { display:inline-block; width:34px; height:34px; border:3px solid var(--signal-pale); border-top-color:var(--signal); border-radius:50%; animation:spin 1s linear infinite; }
@keyframes spin { to { transform:rotate(360deg); } }
.auth-main { min-height:100dvh; display:grid; place-items:center; padding:24px; }
.login-card { width:min(440px,100%); padding:36px; background:white; border:1px solid var(--line); border-top:4px solid var(--signal); border-radius:6px; }
.login-card h1 { font-size:30px; }
.intro { color:var(--slate); }
.verification { min-height:46px; }
.error-card { max-width:680px; }
.error-card dl { display:grid; grid-template-columns:max-content minmax(0,1fr); gap:8px 16px; }
dd { margin:0; overflow-wrap:anywhere; }
dt { font-weight:600; }
.error-card details { margin:20px 0; }
@media(max-width:1279px) {
  .context-panel { position:absolute; right:0; top:0; bottom:0; z-index:20; box-shadow:-12px 0 36px #17232c24; width:min(360px,100%); }
}
@media(max-width:959px) {
  .app-sidebar { transform:translateX(-100%); width:240px; visibility:hidden; }
  .app-sidebar.is-open { transform:none; visibility:visible; }
  #nav-backdrop { position:fixed; inset:0; background:#17232c55; z-index:25; }
  .mobile-bar { display:flex; align-items:center; gap:14px; padding:8px 16px; height:52px; border-bottom:1px solid var(--line); }
  .mobile-only { display:block; }
  .app-main { margin-left:0; padding:16px; }
  .workspace-page { height:calc(100dvh - 52px); min-height:650px; gap:12px; }
  .page-heading { align-items:flex-start; }
  h1 { font-size:22px; }
  .action-row { gap:8px; }
  .primary-button,.secondary-button { padding:9px 11px; }
  .form-grid { grid-template-columns:1fr; }
  .list-row,.user-row { flex-wrap:wrap; gap:12px; }
  .panel { padding:16px; }
  .editor-panel { padding:0; }
  .editor-label { padding-inline:14px; }
  #prompt-text { padding:12px 14px; }
  .research-layout { grid-template-columns:1fr; }
  .research-heading { top:52px; }
  .research-actions,.research-actions select { width:100%; max-width:none; }
  .research-actions .primary-button { flex:1; }
  .research-row { align-items:flex-start; }
}
@media(prefers-reduced-motion:reduce) { .spinner { animation:none; } }

/* Catalogs prioritize aligned comparisons over per-record cards. */
.catalog-toolbar { padding:12px 16px; }
.catalog-toolbar select { width:auto; min-width:220px; max-width:100%; }
.catalog-toolbar p { margin:8px 0 0; }
.catalog-filters { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:16px 0; }
.catalog-filters input { width:240px; }
.catalog-filters select { width:auto; max-width:240px; }
.catalog-filters > label { display:flex; flex-direction:row; align-items:center; gap:8px; }
.catalog-table-wrap { overflow:auto; border:1px solid var(--line); border-radius:6px; background:var(--panel); }
.catalog-table { width:100%; min-width:950px; border-collapse:collapse; font-size:14px; }
.catalog-table.group-table { min-width:660px; }
.catalog-table th,.catalog-table td { padding:10px 12px; border-bottom:1px solid var(--line); text-align:left; vertical-align:middle; }
.catalog-table thead th { position:sticky; top:0; background:var(--paper); white-space:nowrap; font-weight:600; }
.catalog-table tbody th { font-weight:600; min-width:140px; }
.catalog-table tbody tr:last-child > * { border-bottom:0; }
.catalog-table tbody tr:hover { background:#f4f8f6; }
.catalog-table .status-col { text-align:center; width:56px; white-space:nowrap; }
.catalog-table .number-col { text-align:right; width:64px; }
.catalog-flag { font-size:20px; font-weight:800; line-height:1; }
.catalog-flag.is-on { color:var(--signal); }
.catalog-flag.is-off { color:var(--danger); }
.catalog-note { max-width:300px; overflow-wrap:anywhere; }
.catalog-actions { display:flex; align-items:center; gap:12px; white-space:nowrap; }
.catalog-actions form { margin:0; }
.catalog-actions button { padding:0; }
.catalog-empty { text-align:center!important; padding:28px!important; }
.catalog-legend { font-size:12px; margin-top:10px; }
.catalog-section { min-width:0; margin:0 0 12px; padding:12px 20px 16px; }
.catalog-section legend { font-size:16px; font-weight:600; padding:0 6px; }
.catalog-section .action-row { margin-top:14px; }
.catalog-section p { margin-bottom:0; }
.field-label { display:block; font-size:13px; font-weight:600; margin-bottom:8px; }
.reasoning-config { display:grid; grid-template-columns:minmax(0,2fr) minmax(220px,1fr); gap:14px 24px; margin-top:14px; padding-top:14px; border-top:1px solid var(--line); }
.reasoning-option-list { display:flex; flex-wrap:wrap; gap:7px 14px; }
.reasoning-option-list .check { font-weight:500; }
.reasoning-option-list code,.catalog-table code,.catalog-details code { font-size:12px; }
.reasoning-custom-row { display:grid; grid-template-columns:minmax(180px,1fr) auto; gap:8px; align-items:end; margin-top:12px; max-width:440px; }
.reasoning-custom-row .secondary-button { min-height:41px; }
.reasoning-current p { margin-top:8px; }
.reasoning-change-note:empty { display:none; }
.catalog-save { position:sticky; bottom:0; background:var(--paper); padding:12px 0; border-top:1px solid var(--line); }
.catalog-details { display:grid; grid-template-columns:140px minmax(0,1fr); gap:10px 20px; }
.catalog-details dt { color:var(--slate); }
.catalog-details dd { margin:0; overflow-wrap:anywhere; }
.catalog-full-note { white-space:pre-wrap; overflow-wrap:anywhere; }
#reset-password-dialog { width:min(440px,calc(100vw - 32px)); padding:24px; border:1px solid var(--line); border-radius:6px; }
#reset-password-dialog::backdrop { background:rgb(23 35 44 / 40%); }
.text-button.danger-action { color:var(--danger); font-weight:600; }
.text-button.danger-action:hover { text-decoration:underline; }
.text-button.enable-action { color:var(--signal); }
#confirm-dialog { position:fixed; inset:0; margin:auto; width:min(460px,calc(100vw - 32px)); padding:24px; border:1px solid var(--line); border-radius:6px; }
#confirm-dialog::backdrop { background:rgb(23 35 44 / 40%); }
#confirm-message { line-height:1.7; white-space:pre-wrap; overflow-wrap:anywhere; }
#confirm-accept { background:var(--danger); border-color:var(--danger); }
#confirm-dialog .action-row { justify-content:flex-end; margin-top:20px; }
.research-next-actions { display:grid; gap:10px; }
.research-next-actions h2,.research-next-actions p { margin:0; }
.research-next-actions small { margin-top:-6px; }
.research-origin { margin-bottom:10px; background:var(--signal-pale); }
@media (max-width:959px) { .research-evidence { display:contents; } .research-next-actions { grid-row:1; } }
/* Compact draft workbench: secondary actions yield space before the research group. */
.workspace-page { min-height:0; gap:8px; padding-top:14px; padding-bottom:14px; }
.workspace-heading { gap:12px; align-items:center; }
.workspace-title-line { display:flex; align-items:center; gap:12px; flex-wrap:wrap; min-width:0; }
.workspace-title-line h1 { font-size:20px; margin:0; }
.workspace-title-line > span,.workspace-title-line > a { font-size:12px; color:var(--slate); }
.workspace-info { position:relative; flex-shrink:0; font-size:12px; }
.workspace-info > summary { padding:4px; }
.workspace-info > div { position:absolute; right:0; top:100%; z-index:25; width:280px; display:grid; gap:8px; background:var(--panel); border:1px solid var(--line); border-radius:5px; padding:12px; box-shadow:0 6px 20px #17232c20; }
.workspace-controls { position:relative; padding:0 0 8px; }
.workspace-edit-actions,.secondary-workspace-actions { display:flex; align-items:center; gap:10px; }
.workspace-edit-actions { position:relative; flex-wrap:nowrap; }
.secondary-workspace-actions { padding-left:10px; border-left:1px solid var(--line); }
.workspace-controls button { white-space:nowrap; }
.workspace-controls .primary-button,.workspace-controls .secondary-button { padding:8px 10px; }
.research-actions { display:flex; flex-wrap:nowrap; align-items:center; justify-content:flex-end; gap:8px; margin-left:auto; min-width:0; }
.research-actions select { width:230px; min-width:0; max-width:280px; flex:1 1 230px; text-overflow:ellipsis; }
.research-actions .primary-button { flex:0 0 auto; }
#more-workspace-actions { display:none; }
#prompt-text { min-height:0; padding-top:14px; }
.editor-panel { display:flex; flex-direction:column; gap:10px; }
.research-history { flex:0 0 auto; border:1px solid var(--line); border-radius:5px; background:var(--signal-pale); padding:8px 10px; }
.research-history-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:6px 14px; }
.research-history-toolbar .checkbox-label { margin:0; }
.research-history-actions { display:flex; gap:10px; margin-left:auto; }
.research-history pre { margin:8px 0 0; padding:8px 10px; white-space:pre-wrap; overflow-wrap:anywhere; background:var(--panel); border:1px solid var(--line); }
.research-history.is-compact pre { height:calc(4 * 1.6em + 16px); overflow:auto; }
.research-history.is-full pre { max-height:none; overflow:visible; }
.research-history.is-hidden { padding-bottom:8px; }
.editor-panel:has(.research-history.is-full) { overflow:visible; }
.editor-panel:has(.research-history.is-full) #prompt-text { min-height:18rem; flex:none; }
.workspace-body { min-height:100px; }
@media(max-width:1100px) {
  .research-actions { flex:1 1 320px; max-width:100%; }
}
@media(max-width:700px) {
  .workspace-page { min-height:0; gap:8px; padding:10px; }
  .workspace-title-line { gap:8px; }
  .workspace-title-line h1 { font-size:18px; }
  #more-workspace-actions { display:inline-flex; }
  .secondary-workspace-actions { display:none; }
  .secondary-workspace-actions.is-open { display:grid; position:absolute; top:calc(100% + 6px); left:0; z-index:30; padding:10px 16px; min-width:180px; border:1px solid var(--line); background:var(--panel); box-shadow:0 6px 20px #17232c20; }
  .secondary-workspace-actions button { text-align:left; }
  .research-actions { width:100%; flex-basis:100%; }
  .research-actions select { max-width:none; width:0; }
}
.optimization-action-group { display:flex; align-items:center; gap:8px; min-width:0; }
.optimization-action-group select { width:180px; min-width:0; text-overflow:ellipsis; }
.workspace-edit-actions { flex-wrap:wrap; }
@media(max-width:700px) {
  .workspace-edit-actions { width:100%; }
  .optimization-action-group { width:100%; }
  .optimization-action-group select { width:0; flex:1; }
  .optimization-action-group button { flex-shrink:0; }
}

.record-tabs { margin-bottom:12px; }
.catalog-table.records-table { min-width:680px; }
.records-table .record-summary { width:40%; max-width:480px; overflow-wrap:anywhere; }
.record-time { white-space:nowrap; font-variant-numeric:tabular-nums; }
.notification-form { max-width:820px; display:grid; gap:10px; padding:14px 16px; }
.notification-field { display:grid; grid-template-columns:100px minmax(0,1fr); align-items:center; gap:10px; }
.notification-field > label { margin:0; }
.notification-field small { display:block; margin-top:3px; line-height:1.4; }
.notification-field .inline-options { margin:0; gap:6px 16px; }
.password-input-row,.extension-input-row { display:flex; flex-direction:row; align-items:center; gap:8px; min-width:0; }
.password-input-row input { min-width:0; }
.password-eye { display:flex; align-items:center; justify-content:center; padding:7px 9px; flex-shrink:0; }
.password-eye [data-eye-slash] { display:none; }
.extension-input-row .checkbox-label { margin:0; white-space:nowrap; }
.extension-input-row > input { width:80px; min-width:48px; }
.notification-mail-heading { margin:18px 0 10px; }
.notification-mail-heading h2 { margin:0; }
@media(max-width:500px) {
  .notification-field { grid-template-columns:76px minmax(0,1fr); gap:8px; }
  .extension-input-row { gap:5px; }
  .extension-input-row .checkbox-label { font-size:12px; gap:4px; }
  .extension-input-row > input { width:54px; padding-inline:5px; }
}
.notification-form .catalog-section { padding-inline:0; border:0; }
.inline-options { display:flex; flex-wrap:wrap; gap:10px 20px; margin:8px 0 14px; }
.inline-options label,.checkbox-label { display:flex; flex-direction:row; align-items:center; gap:8px; }
.inline-options input,.checkbox-label input { width:auto; }
.fit-button { width:fit-content; }
.schedule-preview-entry { display:flex; align-items:center; gap:10px; margin:0; }
.schedule-page .page-heading { margin-bottom:10px; }
.schedule-page > .notice { margin-bottom:8px; }
.schedule-form { display:grid; gap:10px; }
.schedule-form > .catalog-section { margin:0; padding:8px 14px 12px; }
.compact-fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:8px 16px; }
.compact-field { display:grid; grid-template-columns:76px minmax(0,1fr); align-items:center; gap:8px; min-width:0; }
.field-label { font-size:13px; font-weight:600; }
.compact-field input,.compact-field select { padding:7px 9px; }
.time-inputs { display:flex; align-items:center; gap:6px; }
.time-inputs select { width:72px; }
.schedule-form .inline-options { display:flex; flex-wrap:wrap; align-items:center; gap:6px 14px; margin:0; }
.schedule-rule-options { margin-top:8px; }
.month-day-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(48px,1fr)); gap:6px; margin:0 0 6px; max-width:800px; }
.month-day-grid .check { justify-content:center; border:1px solid var(--line); border-radius:4px; padding:4px; }
.schedule-preview { display:flex; flex-wrap:wrap; gap:4px 28px; margin:0; padding-left:20px; font-size:12px; color:var(--slate); }
.schedule-mail { margin-top:8px; padding-top:8px; border-top:1px solid var(--line); }
.research-config-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
.field-heading { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 12px; margin:10px 0 6px; }
.field-heading a { margin-left:auto; font-size:12px; }
.schedule-form textarea { display:block; padding:8px 10px; }
.schedule-form #preview-difference { margin:6px 0 0; }
.schedule-actions { position:sticky; bottom:0; z-index:10; padding:8px 0; background:var(--paper); border-top:1px solid var(--line); gap:8px 16px; }
.action-with-hint { display:flex; align-items:center; gap:8px; max-width:100%; }
.action-with-hint button { flex-shrink:0; }
.action-with-hint small { max-width:210px; line-height:1.5; }
.research-schedule-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.date-picker { position:relative; min-width:0; }
.date-picker-panel { position:absolute; top:calc(100% + 4px); right:0; width:300px; max-width:calc(100vw - 48px); padding:12px; background:var(--panel); border:1px solid var(--line); border-radius:5px; box-shadow:0 6px 20px #17232c20; z-index:40; }
.date-picker-entry { display:flex; gap:6px; margin-top:6px; }
.date-picker-entry .secondary-button { padding:7px 10px; flex-shrink:0; }
.date-picker-nav { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-top:8px; }
.date-picker-nav button { padding:6px 8px; }
.date-picker-week,.date-picker-days { display:grid; grid-template-columns:repeat(7,1fr); gap:3px; text-align:center; }
.date-picker-week { margin:6px 0; color:var(--slate); font-size:12px; }
.date-picker-days button { padding:6px 0; border:1px solid transparent; border-radius:3px; background:transparent; color:var(--ink); }
.date-picker-days button:hover { background:var(--signal-pale); }
.date-picker-days button[aria-pressed="true"] { background:var(--signal); color:white; }
.date-picker-days button[aria-current="date"] { border-color:var(--signal); }
.date-picker-panel .danger-text { font-size:12px; margin:6px 0 0; }
@media(max-width:959px) { .research-schedule-actions { grid-row:2; } }
@media(max-width:700px) {
  .research-config-fields { grid-template-columns:1fr; }
  .schedule-form > .catalog-section { padding:8px 10px 10px; }
  .compact-fields { grid-template-columns:1fr; }
  .compact-field { grid-template-columns:68px minmax(0,1fr); gap:6px; }
  .schedule-actions { position:static; }
}
.compact-heading { margin-top:28px; }
.delivery-table { min-width:920px; }
.schedule-detail-page .page-heading { align-items:flex-start; margin-bottom:12px; }
.schedule-detail-page h1 { min-width:0; overflow-wrap:anywhere; }
.schedule-detail-actions { display:flex; align-items:flex-start; flex-wrap:wrap; gap:8px; }
.schedule-detail-actions form { display:grid; justify-items:start; gap:4px; margin:0; }
.schedule-detail-actions .secondary-button { padding:7px 12px; white-space:nowrap; }
.schedule-detail-actions small { line-height:1.5; }
.schedule-detail-page > .notice { margin-bottom:10px; }
.schedule-detail-page > .panel { padding:14px 16px; }
.schedule-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px 24px; margin:0; }
.schedule-meta > div { display:grid; grid-template-columns:84px minmax(0,1fr); gap:8px; align-items:baseline; }
.schedule-meta dt { color:var(--slate); font-size:13px; }
.schedule-meta dd { margin:0; overflow-wrap:anywhere; }
.schedule-current-prompt { margin-top:12px; padding-top:12px; border-top:1px solid var(--line); }
.schedule-current-prompt h2 { margin-bottom:6px; font-size:14px; }
.schedule-current-prompt pre { margin:0; padding:10px 12px; max-height:12rem; font:inherit; line-height:1.6; }
.schedule-history-table { min-width:760px; }
.schedule-history-note { min-width:140px; max-width:320px; white-space:normal; overflow-wrap:anywhere; }
@media(max-width:1150px) { .schedule-meta { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) {
  .schedule-detail-actions { width:100%; }
  .schedule-meta { grid-template-columns:1fr; }
  .schedule-detail-page > .panel { padding:12px; }
}

.catalog-connection label { grid-template-columns:auto minmax(0,1fr); align-items:center; }
.catalog-connection small { display:block; font-weight:400; max-width:10em; }
@media (max-width:600px) {
  .catalog-connection label { grid-template-columns:1fr; }
  .catalog-connection small { max-width:none; }
  .reasoning-config { grid-template-columns:1fr; }
}
