/* Shared workspace rhythm and Settings navigation. */
#exportPage .export-workspace { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,340px); gap:20px; align-items:start; background:#f7fafc; padding:20px; direction:rtl; text-align:right; }
#exportPage .export-step,#exportPage .export-price-box { background:#fff; border:1px solid #dce5ed; border-radius:12px; padding:20px; margin:0; min-width:0; }
#exportPage .export-step h2,#exportPage .export-price-box h3 { font-size:17px; color:#17334d; margin:0 0 18px; }
#exportTypeCard,#exportScopeCard,#exportPage .export-price-box,#exportOptionsCard { grid-column:1; }
#exportReviewCard { grid-column:2; grid-row:1 / span 4; position:sticky; top:100px; }
#exportPage .export-fields { grid-template-columns:1fr; }
#exportPage .export-step > label,#exportPage .export-price-box > label { display:grid; gap:8px; margin:12px 0; }
#exportPage select,#exportPage .report-type-field { width:100%; max-width:none; }
#exportPage .export-fields label,#exportPage .export-price-box > label { max-width:none; }
#exportPage .export-scope-tabs input:focus-visible + span { outline:3px solid #00858c; outline-offset:-3px; }
#exportPage .export-scope-tabs { width:100%; display:flex; }
#exportPage .export-scope-tabs label { flex:1; }
#exportPage .export-price-options { display:flex; flex-wrap:wrap; gap:8px; }
#exportPage .export-price-options label { flex:1; min-width:120px; }
#exportPage #exportOptionsCard .check-row { display:flex; align-items:center; gap:10px; padding:12px; border:1px solid #e3eaf1; border-radius:8px; }
#exportPage input[type=checkbox] { width:18px; height:18px; accent-color:#00858c; flex-shrink:0; }
#exportPage .export-filter-option { background:#edf7f7; }
#exportSummary { line-height:2; color:#475569; }
#exportPreview { margin:16px 0; padding:14px; background:#f5f8fb; border-radius:8px; font-size:13px; line-height:1.8; overflow-wrap:anywhere; }
#exportPreview ol { padding-inline-start:20px; }
#exportPreview small { display:block; color:#64748b; }
#exportPage .export-actions { display:flex; flex-direction:column; gap:12px; margin-top:18px; }
#exportRunButton { width:100%; min-height:46px; }
#exportPage [hidden] { display:none !important; }
@media(max-width:900px) { #exportPage .export-workspace { grid-template-columns:minmax(0,1fr); padding:12px; } #exportReviewCard { grid-column:1; grid-row:auto; position:static; } }
.app-page { min-width:0; }
.app-page .page-hero { padding:22px 24px; border:1px solid #e1e8ef; border-radius:14px; box-shadow:none; margin-bottom:20px; }
.app-page .page-hero h1 { font-size:25px; line-height:1.5; margin:0 0 6px; color:#17334d; }
.app-page .page-hero p { color:#64748b; line-height:1.7; margin:0; }
.app-page .tool-panel { border-radius:14px; border:1px solid #dce5ed; box-shadow:0 4px 16px #17334d05; padding:22px; min-width:0; }
.app-page .tool-panel h2 { font-size:19px; line-height:1.6; color:#17334d; }
.app-page button,.app-page .database-actions .file-pick { border-radius:8px; min-height:40px; font-family:inherit; }
.app-page button:focus-visible,.app-page input:focus-visible,.app-page select:focus-visible,summary:focus-visible { outline:3px solid #00adb570; outline-offset:3px; }
.app-page button:disabled { opacity:.55; cursor:not-allowed; }
.app-page input:not([type=checkbox]):not([type=range]),.app-page select { border-radius:8px; min-height:40px; border:1px solid #cbd5e1; }
#settingsPage.active { display:grid; grid-template-columns:230px minmax(0,1fr); gap:20px; align-items:start; }
#settingsPage > .page-hero { grid-column:1/-1; margin-bottom:0; }
#settingsPage .settings-tabs { display:flex; flex-direction:column; align-items:stretch; position:sticky; top:94px; gap:6px; margin:0; padding:12px; border:1px solid #dce5ed; border-radius:14px; background:white; }
#settingsPage .settings-tabs button { text-align:start; padding:12px; white-space:normal; border:0; background:transparent; color:#475569; line-height:1.6; }
#settingsPage .settings-tabs button.active { background:#e6f5f5; color:#006c73; box-shadow:none; border-inline-start:3px solid #00858c; }
#settingsPage .settings-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:18px; margin:0; }
#settingsPage .settings-panel { grid-column:1; margin:0; }
#settingsPage .settings-panel:not(.active) { display:none; }
.settings-editor-disclosure { border:1px solid #dce5ed; border-radius:10px; margin:16px 0; background:#f8fafc; }
.settings-editor-disclosure > summary { cursor:pointer; padding:14px 16px; font-weight:700; color:#006c73; }
.settings-editor-disclosure[open] > summary { border-bottom:1px solid #dce5ed; }
.settings-editor-disclosure > .inline-editor,.settings-editor-disclosure > .user-editor { padding:18px; margin:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
#settingsPage .permission-picker { grid-column:1/-1; }
#settingsPage .manager-list { max-height:60vh; overflow:auto; overscroll-behavior:contain; padding:4px; }
#settingsPage .manager-list > * { border-radius:10px; padding:14px; border:1px solid #e2e8f0; }
#settingsPage [data-delete-category],#settingsPage [data-delete-user] { color:#b42318; background:#fff7f6; border:1px solid #f1d6d3; }
#settingsPage .database-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
#settingsPage #importDatabaseButton { color:#9a3412; border:1px solid #fed7aa; background:#fff7ed; }
#manageForm .category-manager-panel[hidden] { display:none; }
#manageForm .manage-body { grid-template-columns:minmax(0,1fr); }
@media(max-width:1000px) { #settingsPage.active { grid-template-columns:190px minmax(0,1fr); gap:14px; } #settingsPage .settings-tabs { top:130px; } }
@media(max-width:760px) {
  #settingsPage.active { display:block; }
  #settingsPage .settings-tabs { position:static; display:flex; flex-direction:row; overflow-x:auto; margin:14px 0; }
  #settingsPage .settings-tabs button { flex:0 0 auto; white-space:nowrap; }
  .settings-editor-disclosure > .inline-editor,.settings-editor-disclosure > .user-editor { grid-template-columns:minmax(0,1fr); padding:12px; }
  .app-page .tool-panel,.app-page .page-hero { padding:16px; }
  .app-page .page-hero h1 { font-size:22px; }
  #settingsPage .manager-list { max-height:none; }
}
