/* Shared record dialog, a separate presentation pass. Field contracts stay intact. */
:root #modalRoot .modal { border-color: var(--line); border-radius: var(--radius); background: var(--panel); box-shadow: none; }
:root #modalRoot .modal-header { gap: var(--ui-space); padding: var(--ui-space); background: var(--panel); border-color: var(--line); }
:root #modalRoot .modal-header h2 { margin: 0; font-size: var(--ui-title); font-weight: 600; line-height: 1.1; letter-spacing: -.02em; }
:root #modalRoot .modal-header p { max-width: var(--ui-reading); margin-top: var(--ui-gap); color: var(--muted); font-size: var(--ui-small); line-height: var(--ui-line-height); }
:root #modalRoot .modal-body { padding: var(--ui-space); font-size: var(--ui-base); line-height: var(--ui-line-height); }
:root #modalRoot .form-grid { gap: var(--ui-space); }
:root #modalRoot .field { gap: var(--ui-gap); }
:root #modalRoot .movement-firm-custom label { display: block; margin-bottom: var(--ui-gap); }
:root #modalRoot .entry-playbook-checklist { min-width: 0; margin: var(--ui-gap) 0 0; padding: var(--ui-space); border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel-2); }
:root #modalRoot .entry-playbook-checklist legend { padding: 0 var(--ui-gap); color: var(--text); font-size: var(--ui-base); font-weight: 500; }
:root #modalRoot .entry-playbook-checklist .field-help { margin: 0 0 var(--ui-gap); }
:root #modalRoot :is(.field label, .field-label) { color: var(--muted); font-size: var(--ui-base); font-weight: 500; }
:root #modalRoot :is(.field input, .field select, .field textarea, .search-input) { min-height: var(--ui-control); max-width: 100%; padding: var(--ui-gap) var(--ui-inset); border-color: var(--line); border-radius: var(--radius); background: var(--panel-2); color: var(--text); font-size: var(--ui-base); font-weight: 400; line-height: var(--ui-line-height); box-shadow: none; }
:root #modalRoot :is(input, textarea)::placeholder { color: var(--muted); opacity: 1; }
:root #modalRoot .field input[type="number"] { font-family: var(--ui-mono); font-variant-numeric: tabular-nums; }
:root #modalRoot .field input[type="checkbox"] { min-height: 0; padding: 0; }
:root #modalRoot :is(.field-help, .program-preview small) { color: var(--muted); font-size: var(--ui-small); line-height: var(--ui-line-height); }
:root #modalRoot .check-line { min-height: var(--ui-control); gap: var(--ui-gap); align-items: center; }
:root #modalRoot .check-grid { gap: var(--ui-gap) var(--ui-space); border-color: var(--line); border-radius: var(--radius); background: var(--panel-2); }
:root #modalRoot .check-grid .check-line { color: var(--text); font-size: var(--ui-small); }
:root #modalRoot .program-preview { padding: var(--ui-space); border-color: var(--line); border-radius: var(--radius); background: var(--panel-2); color: var(--text); font-size: var(--ui-base); line-height: var(--ui-line-height); }
:root #modalRoot .program-preview .eyebrow { color: var(--muted); font-size: var(--ui-small); font-weight: 500; }
:root #modalRoot .notice-banner { padding: var(--ui-space); border-color: var(--line); background: var(--panel-2); color: var(--text); font-size: var(--ui-base); line-height: var(--ui-line-height); }
:root #modalRoot .button { display: inline-flex; align-items: center; justify-content: center; min-height: var(--ui-control); padding: var(--ui-gap) var(--ui-space); border-color: var(--line); border-radius: var(--radius); background: var(--panel-2); color: var(--text); font-size: var(--ui-base); font-weight: 500; line-height: var(--ui-line-height); white-space: normal; transition: none; }
:root #modalRoot .button:hover { border-color: var(--orange); background: var(--panel-3); }
:root #modalRoot .button.primary { background: var(--orange); color: var(--bg); border-color: var(--orange); font-weight: 600; }
:root #modalRoot .button.primary:hover { background: var(--orange-2); border-color: var(--orange-2); }
:root #modalRoot .button.danger { color: var(--red); background: var(--panel); }
:root #modalRoot .icon-button { min-width: var(--ui-control); min-height: var(--ui-control); border-color: var(--line); border-radius: var(--radius); background: var(--panel-2); color: var(--text); }
:root #modalRoot :is(button, a, input, select, textarea, [tabindex]):focus-visible { outline: 2px solid var(--orange); outline-offset: var(--ui-unit); box-shadow: none; }
:root #modalRoot .modal-footer { gap: var(--ui-gap); padding-top: var(--ui-space); }
:root #modalRoot .action-grid { gap: var(--ui-space); }
:root #modalRoot .action-tile { padding: var(--ui-space); border-color: var(--line); border-radius: var(--radius); background: var(--panel-2); color: var(--text); }
:root #modalRoot .action-tile:hover { background: var(--panel-3); border-color: var(--orange); }
:root #modalRoot .action-tile b { font-size: var(--ui-base); font-weight: 500; }
:root #modalRoot .action-tile span { margin-top: var(--ui-gap); color: var(--muted); font-size: var(--ui-small); line-height: var(--ui-line-height); }
@media (max-width: 760px) {
  :root #modalRoot .modal-backdrop { padding: var(--ui-gap); }
  :root #modalRoot .action-grid { grid-template-columns: minmax(0, 1fr); }
  :root #modalRoot .modal-footer .button { flex: 1; }
}

/* Resumen diario: secciones legibles y acciones siempre accesibles. */
#modalRoot .modal:has(#recordForm[data-collection="day"]) {width:min(1160px,calc(100vw - 24px));max-height:calc(100dvh - 24px);display:flex;flex-direction:column;overflow:hidden;}
#modalRoot #recordForm[data-collection="day"] {display:flex;flex-direction:column;min-height:0;overflow:hidden;}
#modalRoot #recordForm[data-collection="day"] > .modal-body {display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0;}
#modalRoot #recordForm[data-collection="day"] > .modal-body > .form-grid {overflow-y:auto;min-height:0;padding:24px;display:block;}
#modalRoot #recordForm[data-collection="day"] .modal-footer {flex:none;margin:0;padding:14px 24px;border-top:1px solid var(--line);background:var(--panel);}
#modalRoot .day-editor-section {margin-top:18px;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--panel);}
#modalRoot .day-editor-section > header {display:flex;align-items:flex-start;gap:12px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line);}
#modalRoot .day-editor-section h3 {margin:0 0 5px;font-size:16px;}
#modalRoot .day-editor-section header p {margin:0;color:var(--muted);font-size:13px;line-height:1.5;}
#modalRoot .day-editor-number {display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:11px;background:var(--panel-2);color:var(--accent,var(--text));font-weight:700;font-size:12px;}
#modalRoot .day-editor-section > .form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
@media(max-width:650px){#modalRoot .day-editor-section > .form-grid{grid-template-columns:1fr;}#modalRoot .day-editor-section{padding:14px;}#modalRoot #recordForm[data-collection="day"] > .modal-body > .form-grid{padding:12px;}}

#modalRoot .day-date-refresh {display:flex;align-items:flex-end;gap:10px;min-width:0;}
#modalRoot .day-date-refresh > .field {flex:1;min-width:0;margin:0;}
#modalRoot .day-date-refresh > button {flex:none;min-height:44px;white-space:nowrap;}
#modalRoot .day-date-refresh > button span {font-size:20px;line-height:1;}
@media(max-width:420px){#modalRoot .day-date-refresh{flex-wrap:wrap;}#modalRoot .day-date-refresh > .field{flex-basis:100%;}}
