/* ===== Cloud Browser Page ===== */ .cloud-layout { display: flex; width: 100%; height: 100%; overflow: hidden; } /* Date sidebar */ .cloud-sidebar { width: 160px; min-width: 140px; border-right: 1px solid var(--border); display: flex; flex-direction: column; overflow: hidden; background: var(--bg-secondary); } .cloud-sidebar-header { padding: 8px 12px; font-size: 0.8rem; font-weight: 600; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.5px; border-bottom: 1px solid var(--border); display: flex; align-items: center; justify-content: space-between; } .cloud-sidebar-body { flex: 1; overflow-y: auto; } .cloud-date-item { padding: 7px 12px; font-size: 0.82rem; color: var(--text-secondary); cursor: pointer; display: flex; align-items: center; justify-content: space-between; transition: all var(--transition); border-left: 3px solid transparent; } .cloud-date-item:hover { background: var(--bg-hover); } .cloud-date-item.active { background: var(--bg-hover); color: var(--accent); border-left-color: var(--accent); font-weight: 600; } .cloud-date-count { font-size: 0.7rem; color: var(--text-muted); background: var(--bg-input); padding: 1px 5px; border-radius: 8px; } /* Grid area */ .cloud-main { flex: 1; display: flex; flex-direction: column; overflow: hidden; min-width: 0; } .cloud-grid-header { padding: 8px 16px; font-size: 0.8rem; font-weight: 600; color: var(--text-muted); border-bottom: 1px solid var(--border); background: var(--bg-secondary); flex-shrink: 0; display: flex; align-items: center; justify-content: space-between; } .cloud-grid-body { flex: 1; overflow-y: auto; } #cloud-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 4px; padding: 8px; } .cloud-card img { width: 100%; height: 100%; object-fit: cover; } /* Detail panel */ .cloud-detail-panel { width: 360px; display: flex; flex-direction: column; overflow: hidden; border-left: 1px solid var(--border); } /* Cloud save checkbox */ .cloud-save-row { display: flex; align-items: center; gap: 6px; margin-top: 8px; margin-bottom: 4px; } .cloud-save-row input[type="checkbox"] { width: 15px; height: 15px; accent-color: var(--accent); cursor: pointer; } .cloud-save-row label { font-size: 0.82rem; color: var(--text-secondary); cursor: pointer; user-select: none; text-transform: none !important; letter-spacing: 0 !important; font-weight: 500 !important; margin-bottom: 0 !important; } /* Sync button */ .btn-cloud-sync { padding: 3px 8px; font-size: 0.75rem; background: var(--bg-input); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text-secondary); cursor: pointer; transition: all var(--transition); } .btn-cloud-sync:hover { border-color: var(--accent); color: var(--accent); } .btn-cloud-sync:disabled { opacity: 0.5; cursor: not-allowed; } @media (max-width: 900px) { .cloud-layout { flex-direction: column; } .cloud-sidebar { width: 100%; min-width: 0; max-height: 80px; border-right: none; border-bottom: 1px solid var(--border); } .cloud-sidebar-body { display: flex; overflow-x: auto; } .cloud-date-item { white-space: nowrap; border-left: none; border-bottom: 3px solid transparent; } .cloud-date-item.active { border-left-color: transparent; border-bottom-color: var(--accent); } .cloud-detail-panel { width: 100%; height: 40%; max-width: none; min-width: 0; border-left: none; border-top: 1px solid var(--border); } }