/* LifeDashPro Web · document organizer and editable dashboard widget layout.
   Classic theme maintained; no color-accent overrides. */
/* Desktop widget layout editor (does not affect non-dashboard pages). */
.widget-layout-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px;padding:10px 13px;border:1px solid var(--line);border-radius:15px;background:var(--panel)}
.widget-layout-hint,.widget-layout-feedback{font-size:12px;color:var(--muted)}
.widget-layout-feedback{width:100%;margin:1px 0 0}
.widget-layout-actions{display:flex;flex-wrap:wrap;gap:8px}
.widget-layout-actions button{padding:8px 12px;font-size:12px;min-height:36px}
.widget-layout-edit>.card:not([hidden]){outline:2px dashed color-mix(in srgb,var(--primary2) 50%,transparent);outline-offset:-3px;cursor:grab}
.widget-layout-edit>.card.widget-dragging{opacity:.52;cursor:grabbing}
.widget-move-controls{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin:-6px -5px 10px 0}
.widget-move-controls[hidden]{display:none}
.widget-grip{margin-right:5px;color:var(--primary2);font-size:17px}
.widget-move-btn{width:35px;height:35px;display:grid;place-items:center;border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:9px;cursor:pointer;font-size:15px}
.widget-move-btn:hover{border-color:var(--primary2)}
.widget-move-btn:focus-visible,.widget-layout-actions button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.organizer-hub{display:block;margin-top:17px;padding:22px;border-radius:20px}
.organizer-title{font-size:20px!important}
.organizer-subtitle{margin:5px 0 17px;color:var(--muted);font-size:13px}
.organizer-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.organizer-module{display:flex;align-items:center;gap:10px;min-width:0;text-align:left;border:1px solid var(--line);border-radius:14px;background:var(--panel2);color:var(--text);padding:13px 11px;cursor:pointer;transition:transform .16s ease,border-color .16s ease}
.organizer-module:hover{transform:translateY(-2px);border-color:var(--primary2)}
.organizer-module-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--primary2) 11%,var(--panel));color:var(--primary2);flex:none;font-size:18px}
.organizer-module-copy{display:block;min-width:0;flex:1}
.organizer-module-copy strong,.organizer-module-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.organizer-module-copy strong{font-size:12px}
.organizer-module-copy small{font-size:10px;color:var(--muted);margin-top:4px}
.organizer-module-arrow{color:var(--muted);font-size:17px}

/* Read-only document validity organizer. */
.doc-organizer{background:var(--panel);border:1px solid var(--line);padding:21px;border-radius:20px;margin-bottom:16px;box-shadow:0 8px 23px rgba(30,42,88,.045)}
.doc-organizer-heading h3{font-size:20px;margin:1px 0 5px;letter-spacing:-.02em}
.doc-explainer{font-size:12px;color:var(--muted);margin:0 0 17px;line-height:1.5}
.doc-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}
.doc-summary-tile{display:flex;align-items:center;gap:10px;min-width:0;background:var(--panel2);border:1px solid var(--line);padding:12px;border-radius:14px}
.doc-tile-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:color-mix(in srgb,var(--primary2) 12%,var(--panel));color:var(--primary2);font-weight:800;flex:none}
.doc-summary-tile small,.doc-summary-tile strong{display:block}
.doc-summary-tile small{color:var(--muted);font-size:10px}
.doc-summary-tile strong{font-size:20px;line-height:1.3}
.doc-summary-tile:nth-child(3) .doc-tile-icon{color:var(--danger)}
.doc-controls{display:flex;flex-wrap:wrap;align-items:end;gap:10px}
.doc-filter-field{display:flex;flex-direction:column;gap:7px;flex:1 1 170px;min-width:150px}
.doc-filter-field>span{font-size:11px;font-weight:750;color:var(--muted)}
.doc-select{height:42px;width:100%;border:1px solid var(--line);border-radius:11px;padding:8px 12px;background:var(--panel2);color:var(--text);font:inherit;cursor:pointer}
.doc-reset{height:42px;min-width:90px}
.doc-filter-caption{margin:12px 0 0;font-size:11px;color:var(--muted)}
.doc-validity-chip{display:inline-flex;max-width:100%;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:10px;font-weight:750;padding:4px 8px;margin-top:7px}
.doc-validity-chip.doc-expired{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,var(--line))}
.doc-validity-chip.doc-soon{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 35%,var(--line))}
.doc-validity-chip.doc-valid{color:var(--good)}
.data-row[data-doc-filtered="true"]{display:none!important}
.finance-recurring-note{display:flex;flex-wrap:wrap;gap:4px 9px;align-items:center;margin:0 0 14px;border:1px solid var(--line);border-left:3px solid var(--primary2);border-radius:12px;padding:11px 13px;color:var(--muted);background:var(--panel);font-size:11px;line-height:1.5}
.finance-recurring-note strong{color:var(--text);font-size:12px}
@media(max-width:1050px){
 .organizer-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .doc-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){
 .widget-layout-toolbar{display:none}
 .widget-layout-edit>.card:not([hidden]){outline:0;cursor:default}
 .organizer-hub{padding:17px}
 .organizer-module-grid{gap:9px}
 .doc-organizer{padding:15px}
 .doc-summary{gap:8px}
 .doc-summary-tile{padding:10px}
 .doc-summary-tile strong{font-size:18px}
}
@media(max-width:380px){
 .organizer-module-grid{grid-template-columns:1fr}
 .doc-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
 .doc-summary-tile{gap:6px}
 .doc-tile-icon{width:30px;height:30px}
 .doc-summary-tile small{font-size:9px}
}
@media(prefers-reduced-motion:reduce){.organizer-module{transition:none}}
